dcp-design-react 1.11.22 → 1.11.24
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 +1 -1
- package/lib/index.full.js +1 -1
- package/lib/index.js +1 -1
- package/lib/search-tree/style/index.less +3 -4
- package/lib/style/index.css +2 -3
- package/lib/style/index.min.css +1 -1
- package/lib/table/src/hooks/useTableMemo.d.ts +1 -0
- package/lib/tinymce/src/index.d.ts +1 -0
- package/package.json +1 -1
package/lib/index.full.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define("QmDesign",["react"],t):"object"==typeof exports?exports.QmDesign=t(require("react")):e.QmDesign=t(e.React)}("undefined"!=typeof self?self:this,(e=>(()=>{"use strict";var t={442:t=>{t.exports=e}},n={};function r(e){var a=n[e];if(void 0!==a)return a.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};r.r(a),r.d(a,{Affix:()=>R.Affix,Alert:()=>R.Alert,Anchor:()=>R.Anchor,AutoComplete:()=>R.AutoComplete,Avatar:()=>R.Avatar,BackTop:()=>R.BackTop,Badge:()=>R.Badge,Breadcrumb:()=>R.Breadcrumb,Button:()=>R.Button,Calendar:()=>L,Card:()=>R.Card,Carousel:()=>R.Carousel,Cascader:()=>R.Cascader,Checkbox:()=>R.Checkbox,Col:()=>R.Col,Collapse:()=>R.Collapse,Comment:()=>R.Comment,ConfigProvider:()=>R.ConfigProvider,DatePicker:()=>_,DcpAnchor:()=>tn,DcpButton:()=>fe,DcpCollapse:()=>Fe,DcpColorPicker:()=>Tl,DcpConfigProvider:()=>B,DcpCopyToClipboard:()=>xs,DcpCountup:()=>ot,DcpCropper:()=>eu,DcpDivider:()=>Se,DcpDownload:()=>Wt,DcpDrawer:()=>dn,DcpEmpty:()=>dt,DcpForm:()=>_u,DcpGuideTracker:()=>Lm,DcpLazyLoad:()=>qm,DcpModal:()=>yn,DcpPivotGrid:()=>go,DcpPrint:()=>cm,DcpRangeTableHelper:()=>Ec,DcpScrollbar:()=>At,DcpSearchHelper:()=>$s,DcpSearchTree:()=>Mo,DcpSignature:()=>Jm,DcpSpace:()=>be,DcpSpin:()=>mt,DcpSplit:()=>nt,DcpTable:()=>Ds,DcpTabs:()=>on,DcpTinymce:()=>Tu,DcpTour:()=>Bu,DcpTransition:()=>Tt,DcpTreeHelper:()=>ms,DcpTreeTableHelper:()=>ic,DcpUploadFile:()=>Bd,DcpUploadImg:()=>au,DcpVirtualList:()=>rp,DcpWatermark:()=>Am,Descriptions:()=>R.Descriptions,Divider:()=>R.Divider,Drawer:()=>R.Drawer,Dropdown:()=>R.Dropdown,Empty:()=>R.Empty,Form:()=>R.Form,Grid:()=>R.Grid,Image:()=>R.Image,Input:()=>R.Input,InputNumber:()=>R.InputNumber,Layout:()=>R.Layout,List:()=>R.List,Mentions:()=>R.Mentions,Menu:()=>R.Menu,Modal:()=>R.Modal,PageHeader:()=>R.PageHeader,Pagination:()=>R.Pagination,Popconfirm:()=>R.Popconfirm,Popover:()=>R.Popover,Progress:()=>R.Progress,QmAnchor:()=>tn,QmButton:()=>fe,QmCollapse:()=>Fe,QmColorPicker:()=>Tl,QmConfigProvider:()=>B,QmCopyToClipboard:()=>xs,QmCountup:()=>ot,QmCropper:()=>eu,QmDivider:()=>Se,QmDownload:()=>Wt,QmDrawer:()=>dn,QmEmpty:()=>dt,QmForm:()=>_u,QmGuideTracker:()=>Lm,QmLazyLoad:()=>qm,QmModal:()=>yn,QmPivotGrid:()=>go,QmPrint:()=>cm,QmRangeTableHelper:()=>Ec,QmScrollbar:()=>At,QmSearchHelper:()=>$s,QmSearchTree:()=>Mo,QmSignature:()=>Jm,QmSpace:()=>be,QmSpin:()=>mt,QmSplit:()=>nt,QmTable:()=>Ds,QmTabs:()=>on,QmTinymce:()=>Tu,QmTour:()=>Bu,QmTransition:()=>Tt,QmTreeHelper:()=>ms,QmTreeTableHelper:()=>ic,QmUploadFile:()=>Bd,QmUploadImg:()=>au,QmVirtualList:()=>rp,QmWatermark:()=>Am,Radio:()=>R.Radio,Rate:()=>R.Rate,Result:()=>R.Result,Row:()=>R.Row,Segmented:()=>R.Segmented,Select:()=>R.Select,Skeleton:()=>R.Skeleton,Slider:()=>R.Slider,Space:()=>R.Space,Spin:()=>R.Spin,Statistic:()=>R.Statistic,Steps:()=>R.Steps,Switch:()=>R.Switch,Table:()=>R.Table,Tabs:()=>R.Tabs,Tag:()=>R.Tag,TimePicker:()=>q,Timeline:()=>R.Timeline,Tooltip:()=>R.Tooltip,Transfer:()=>R.Transfer,Tree:()=>R.Tree,TreeSelect:()=>R.TreeSelect,Typography:()=>R.Typography,Upload:()=>R.Upload,message:()=>R.message,notification:()=>R.notification,pinyin:()=>Zr,version:()=>ap});var i=r(442),l=r.n(i);const o=(0,i.createContext)({locale:"zh-cn",size:"middle"}),s=require("dayjs");var c=r.n(s);const d={name:"zh-cn",qm:{button:{confirmPrompt:"提示",confirmTitle:"确认执行删除吗?",shortcutKey:"快捷键"},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",countLimit:"数量不能超过 {count} 个",uploadError:"文件上传失败!",downError:"文件下载失败!",text:"点击上传",remove:"删除文件",batchDownload:"批量下载"},uploadCropper:{dragableText:"拖放或点击",pasteText:"Ctrl+V 粘贴",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:"结束位置不能小于起始位置"},tour:{prevStep:"上一步",nextStep:"下一步",finish:"结束引导"},guideTracker:{addButton:"添 加",editButton:"保 存",closeButton:"关 闭",finishButton:"结束并保存",label:"新手引导录入",currentStep:"当前步骤:"},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:"筛选",nullValue:"空值"},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 数据"},areaSelect:{mergeCell:"合并单元格",cancelMerge:"取消合并"},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:"模糊匹配",nullText:"空值",configText:"配置名称",saveButton:"保 存",savedSetting:"保存的高级检索设置",operation:"操作",bracket:"括号",fieldName:"字段名",fieldType:"字段类型",expression:"运算",condition:"条件值",logic:"逻辑",noEmpty:"字段名不能为空"},fastSearch:{text:"数据定位查找",settingTitle:"数据定位查找设置",closeButton:"关 闭",savedSetting:"保存的数据查找设置",queryCondition:"请输入查询条件",notMatch:"没有符合条件的记录!",toTheEnd:"已查找到表格末尾,是否从头开始查找?",toStart:"已查找到表格开始,是否从末尾开始查找",matchCase:"大小写匹配",matchFullchar:"全字符匹配",queryLabel:"查找内容",queryPrev:"查找上一个",queryNext:"查找下一个",queryAll:"查找全部",findTotal:"查找到 {total} 个单元格",cellText:"单元格",valText:"值"},pivotGrid:{text:"多维表",settingTitle:"多维表看板"}},pivotGrid:{saved:{text:"配置",add:"添加配置项",title:"已保存的配置信息"},export:{text:"导出",group:"导出分组",list:"导出列表"},count:{statistic:"统计",records:"记录数",unique:"唯一值",empty:"空值",notEmpty:"非空值",sum:"合计值",max:"最大值",min:"最小值",avg:"平均值"},field:{text:"字段管理",title:"字段自定义设置"},fillColor:{text:"填色",add:"添加条件",title:"设置填色条件",cell:"单元格",row:"整行",col:"整列"},filter:{text:"筛选",title:"设置筛选条件",matchAll:"满足所有条件",matchAny:"满足任一条件"},group:{text:"分组",title:"设置分组条件",foldAll:"折叠所有",unfoldAll:"展开所有",empty:"(内容为空)",ascend:"选项顺序",descend:"选项倒序"},lineHeight:{text:"行高",size:["常规","中等","高"]},search:{text:"查找",title:"设置查找条件"},sorter:{text:"排序",title:"设置排序条件",ascend:"字段升序",descend:"字段降序"},viewMode:{table:"表格视图",gantt:"甘特视图",card:"看板视图"}}}};require("dayjs/locale/zh-cn");let u=d;function m(e,t){return e&&t?e.replace(/\{(\w+)\}/g,((e,n)=>t[n])):e}const p=(...e)=>{const[t,n]=e;let r;const a=t.split(".");let i=u;for(let e=0,t=a.length;e<t;e++){if(r=i[a[e]],e===t-1)return m(r,n);if(!r)return"";i=r}return""},h=(e,t)=>({...e,...Object.keys(t).reduce(((n,r)=>(n[r]=void 0!==t[r]?t[r]:e[r],n)),{})});function f(e,t){((t,n)=>{const r=i.useRef(!0);i.useLayoutEffect((()=>(t=>{if(!t)return e()})(r.current)),n),i.useLayoutEffect((()=>(r.current=!1,()=>{r.current=!0})),[])})(0,t)}const g=require("dayjs/plugin/localeData");var y=r.n(g);const b=require("dayjs/plugin/advancedFormat");var v=r.n(b);const x=require("dayjs/plugin/customParseFormat");var E=r.n(x);const w=require("dayjs/plugin/quarterOfYear");var C=r.n(w);const S=require("dayjs/plugin/weekOfYear");var N=r.n(S);const I=require("dayjs/plugin/weekday");var T=r.n(I);c().extend(y()),c().extend(v()),c().extend(E()),c().extend(C()),c().extend(N()),c().extend(T());const R=require("antd"),O=require("rc-picker/es/generate/dayjs");var k=r.n(O);const P=require("antd/es/calendar/generateCalendar"),L=r.n(P)()(k()),A=require("antd/es/date-picker/generatePicker"),_=r.n(A)()(k());function F(){return F=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},F.apply(null,arguments)}const D=i.forwardRef(((e,t)=>i.createElement(_,F({},e,{picker:"time",mode:void 0,ref:t}))));D.displayName="TimePicker";const H=i.forwardRef(((e,t)=>i.createElement(_.RangePicker,F({},e,{picker:"time",mode:void 0,ref:t}))));H.displayName="RangePicker",D.RangePicker=H;const q=D,$={name:"en",qm:{button:{confirmPrompt:"Prompt",confirmTitle:"Are you sure you want to delete it?",shortcutKey:"Shortcut Key"},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",countLimit:"Quantity cannot exceed {count}",uploadError:"Failed to upload files!",downError:"File download failed!",text:"click and upload",remove:"Delete files",batchDownload:"Batch download"},uploadCropper:{dragableText:"Drop or click",pasteText:"Ctrl+V Paste",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"},tour:{prevStep:"Prev",nextStep:"Next",finish:"Finish"},guideTracker:{addButton:"Add To",editButton:"Save",closeButton:"Close",finishButton:"Finish And Save",label:"Operation guide collection",currentStep:"Current Step: "},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",nullValue:"Null Value"},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"},areaSelect:{mergeCell:"Cell Merge",cancelMerge:"Cancel 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",nullText:"null value",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?",matchCase:"Case matching",matchFullchar:"Full character matching",queryLabel:"Find content",queryPrev:"Find previous",queryNext:"Find next",queryAll:"Find all",findTotal:"Found {total} cells",cellText:"Cell",valText:"Value"},pivotGrid:{text:"Pivot Grid",settingTitle:"Pivot Grid Dashboard"}},pivotGrid:{saved:{text:"Config",add:"Add configuration",title:"Saved configuration list"},export:{text:"Export",group:"Export group",list:"Export list"},count:{statistic:"Statistics",records:"count",unique:"unique",empty:"empty",notEmpty:"not empty",sum:"sum value",max:"max value",min:"min value",avg:"avg value"},field:{text:"Field manage",title:"Field customization settings"},fillColor:{text:"Fill color",add:"Add condition",title:"Set fill color conditions",cell:"Cell",row:"Row",col:"Col"},filter:{text:"Filter",title:"Set filter conditions",matchAll:"Meet all conditions",matchAny:"Meet any conditions"},group:{text:"Group",title:"Set group conditions",foldAll:"Fold all",unfoldAll:"unfold all",empty:"(Empty content)",ascend:"Order ascend",descend:"Order descend"},lineHeight:{text:"Line height",size:["Common size","Middle size","Large size"]},search:{text:"Search",title:"Set search conditions"},sorter:{text:"Sorter",title:"Set sorter conditions",ascend:"Field ascend",descend:"Field descend"},viewMode:{table:"Table view",gantt:"Gantt view",card:"Card view"}}}},M=require("antd/es/locale/zh_CN");var K=r.n(M);const z=require("antd/es/locale/en_GB");var j=r.n(z);const V={[$.name]:{qm:$,antd:j()},[d.name]:{qm:d,antd:K()}},W=e=>{const t=h({locale:"zh-cn",size:"middle"},e),{locale:n,size:r,global:a}=t;l().useMemo((()=>{return e=Object.assign({},V,a?.langPackage)[n].qm,u=e||u,void(u.name&&c().locale(u.name));var e}),[n]);const i=l().useMemo((()=>Object.assign({},V,a?.langPackage)),[a]),[s,d]=l().useState({locale:n,size:r,global:a});return f((()=>{d((e=>Object.assign({},e,{locale:n,size:r})))}),[r,n]),l().createElement(o.Provider,{value:s},l().createElement(R.ConfigProvider,{locale:i[s.locale].antd,componentSize:s.size,autoInsertSpaceInButton:a?.autoInsertSpaceInButton},t.children))};W.displayName="QmConfigProvider";const B=W;function U(){const{locale:e}=i.useContext(o);return{t:p,$locale:e}}function G(e){const t=i.useRef();return t.current=e,i.useCallback(((...e)=>t.current?.(...e)),[])}function Y(e){const{size:t}=i.useContext(o);return{$size:i.useMemo((()=>e.size??t??""),[e.size,t])}}const X=require("lodash-es"),Q="undefined"==typeof window,Z=e=>l().isValidElement(e),J=e=>Z(e)&&e.type===l().Fragment,ee=()=>{},te=()=>!0,ne=async e=>new Promise((t=>setTimeout(t,e))),re=e=>{Promise.resolve().then(e)},ae=e=>e.replace(/-(\w)/g,((e,t)=>t?t.toUpperCase():"")),ie=e=>!!(!e&&0!==e||(0,X.isArray)(e)&&!e.length||(0,X.isPlainObject)(e)&&!Object.keys(e).length),le=(e,t)=>t.split(".").reduce(((e,t)=>e?.[t]),e),oe=(e,t)=>{const n={...e};for(const e of t)delete n[e];return n},se=(e,t=new WeakMap)=>{if((0,X.isPlainObject)(e)||(0,X.isArray)(e)){const n=Array.isArray(e),r=n?[]:{};if(t.get(e))return e;t.set(e,r);const a=n?void 0:Object.keys(e);return function(n){let i=-1;const l=n.length;for(;++i<l;)o=n[i],s=i,a&&(s=o),r[s]=se(e[s],t);var o,s}(a||e),r}return e},ce=e=>(0,X.isNumber)(e)?`${e}px`:e.toString();class de extends Error{constructor(e){super(e),this.name="QmDesignError"}}function ue(e,t){throw new de(`[${e}] ${t}`)}function me(e,t){console.warn(new de(`[${e}] ${t}`))}function pe(){return pe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},pe.apply(null,arguments)}const he=e=>{const{loading:t,shortcutKey:n,authConfig:r,click:a,confirm:i}=e,{t:o}=U(),{$size:s}=Y(e);l().useEffect((()=>(n&&document.addEventListener("keyup",u),()=>document.removeEventListener("keyup",u))),[]);const[c,d]=l().useState(!1),u=G((e=>{const t=n.split("+").map((e=>e.trim().toLowerCase())),r=t.includes("alt"),a=t.includes("ctrl"),i=t.includes("shift"),l=t[t.length-1];r&&!e.altKey||a&&!e.ctrlKey||i&&!e.shiftKey||e.key.toLowerCase()!==l||(e.preventDefault(),p.disabled||p.onClick?.(e))})),m=(0,X.isFunction)(a)?{onClick:async t=>{d(!0);try{await(e.click?.(t))}catch(e){me("Button","`click`方法执行出错")}d(!1)}}:null,p={...oe(e,["shortcutKey","authConfig","click","confirm"]),size:s,loading:c||t||!1,...m};if(r){const{visible:e=1,disabled:t}=r||{};if(!e)return null;t&&(p.disabled=!0)}const h=l().createElement(R.Button,p,e.children);return i?l().createElement(R.Popconfirm,{title:i.title||o("qm.button.confirmTitle"),disabled:p.disabled,onConfirm:e=>{i.onConfirm?.(),p.onClick?.(e)},onCancel:e=>{i.onCancel?.(e)}},l().createElement(R.Button,pe({},p,{onClick:ee}),e.children)):!n||p.disabled?h:l().createElement(R.Tooltip,{placement:"top",title:`${o("qm.button.shortcutKey")}: ${n}`},h)};he.displayName="QmButton";const fe=he;var ge=function(e){return e[e.default=14]="default",e[e.large=12]="large",e[e.middle=10]="middle",e[e.small=8]="small",e}(ge||{});const ye=e=>{const{$size:t}=Y(e),n=(0,X.isNumber)(e.size)?e.size:ge[t||"default"],r={...oe(e,["size"]),size:n};return l().createElement(R.Space,r,e.children)};ye.displayName="QmSpace";const be=ye,ve=require("classnames");var xe=r.n(ve);const Ee=e=>`qm-${e}`,we=require("@ant-design/icons"),Ce=e=>{const{label:t,extra:n,collapse:r,bordered:a=!0,disabled:i,id:o,className:s,style:c,onCollapseChange:d}=e,{$size:u}=Y(e),{t:m}=U(),p=Ee("divider"),h={[p]:!0,[`${p}-borderless`]:!a,[`${p}--lg`]:"large"===u,[`${p}--sm`]:"small"===u};return l().createElement("div",{id:o,className:xe()(h,s),style:c},l().createElement("span",{className:`${p}__title`},t),l().createElement("div",{className:`${p}__extra`},n),void 0!==r&&l().createElement(R.Button,{type:"link",className:`${p}__collapse`,disabled:i,onClick:()=>{d?.(!r)}},m(r?"qm.divider.collect":"qm.divider.spread"),r?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)))};Ce.displayName="QmDivider";const Se=Ce,Ne=()=>({height:0,opacity:0}),Ie=e=>({height:e.scrollHeight,opacity:1}),Te=e=>({height:e?e.offsetHeight:0}),Re=(e,t)=>!0===t?.deadline||"height"===t.propertyName,Oe=require("rc-motion");var ke=r.n(Oe);const Pe=l().forwardRef(((e,t)=>{const{forceRender:n,className:r,style:a,boxStyle:i,isActive:o}=e,[s,c]=l().useState(o||n);if(l().useEffect((()=>{(n||o)&&c(!0)}),[n,o]),!s)return null;const d=Ee("collapse");return l().createElement("div",{ref:t,className:xe()(`${d}-content`,{[`${d}-content-active`]:o,[`${d}-content-inactive`]:!o},r),style:a},l().createElement("div",{className:`${d}-content-box`,style:i},e.children))}));Pe.displayName="PanelContent";const Le=Pe;function Ae(){return Ae=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ae.apply(null,arguments)}const _e=e=>{const{defaultActive:t,label:n,extra:r,className:a,style:i,containerStyle:o,bordered:s,disabled:c,forceRender:d,destroyOnClose:u=!1,onChange:m}=e,[p,h]=l().useState(!!t),f=Ee("collapse"),g=xe()({[`${f}`]:!0,[`${f}-active`]:p,[`${f}-disabled`]:c},a);return l().createElement("div",{className:g,style:i},l().createElement(Se,{label:n,extra:r,collapse:p,bordered:s,disabled:c,onCollapseChange:e=>{h(e),m?.(e)}}),l().createElement(ke(),Ae({visible:p},((e=Ee("motion-collapse"))=>({motionName:e,onAppearStart:Ne,onEnterStart:Ne,onAppearActive:Ie,onEnterActive:Ie,onLeaveStart:Te,onLeaveActive:Ne,onAppearEnd:Re,onEnterEnd:Re,onLeaveEnd:Re,motionDeadline:500}))(),{forceRender:d,removeOnLeave:u}),(({className:t,style:n},r)=>l().createElement(Le,{ref:r,prefixCls:f,className:t,style:n,boxStyle:o,isActive:p,forceRender:d},e.children))))};_e.displayName="QmCollapse";const Fe=_e,De=l().createContext(void 0);function He(e,t){((t,n)=>{const r=i.useRef(!0);i.useEffect((()=>(t=>{if(!t)return e()})(r.current)),n),i.useEffect((()=>(r.current=!1,()=>{r.current=!0})),[])})(0,t)}const qe=(e,t,n)=>{e&&t&&n&&e.addEventListener(t,n,!1)},$e=(e,t,n)=>{e&&t&&n&&e.removeEventListener(t,n,!1)},Me=e=>e.preventDefault(),Ke=(e,t)=>{if(Q||!e||!t)return null;"float"===(t=ae(t))&&(t="cssFloat");try{const n=e.style[t];if(n)return n;const r=window.getComputedStyle(e);return r?r[t]:""}catch(n){return e.style[t]}},ze=(e,t,n)=>{!Q&&e&&t&&((0,X.isPlainObject)(t)?Object.keys(t).forEach((n=>{ze(e,n,t[n])})):(t=ae(t),e.style[t]=n))},je=e=>{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},Ve=(e,t)=>Math.abs(je(e)-je(t)),We=e=>{let t=0,n=0;for(;e;)t+=e.offsetLeft-e.scrollLeft,n+=e.offsetTop-e.scrollTop,e=e.offsetParent;return{x:t,y:n}},Be=(e,t)=>{let n=e;for(;n;){if(n.classList?.contains(t))return n;n=n.parentNode}return null},Ue=(e,t)=>{if(Q||!e||!t)return!1;let n=e;for(;n;){if(n===t)return!0;n=n.parentNode}return!1},Ge=e=>Math.pow(e,3),Ye=e=>e<.5?Ge(2*e)/2:1-Ge(2*(1-e))/2,Xe=e=>{const{minValues:t,onDragChange:n,onDragging:r}=e,{splitRef:a,direction:i}=l().useContext(De),{t:o}=U(),s=l().useRef(Q?null:document.onselectstart),c=l().useMemo((()=>"horizontal"===i),[i]),d=l().useMemo((()=>c?"X":"Y"),[c]),u=l().useRef({startX:0,startY:0,firstElementSizeX:0,firstElementSizeY:0,containerSizeX:0,containerSizeY:0}),m=e=>{u.current=Object.assign({},u.current,e)},p=e=>{if(1!==e.buttons)return h();const n=e[`page${d}`]-u.current[`start${d}`],a=[t[0],u.current[`containerSize${d}`]-t[1]];let i=u.current[`firstElementSize${d}`]+n;i=Math.max(a[0],i),i=Math.min(a[1],i),r(i)},h=()=>{m({startX:0,startY:0,firstElementSizeX:0,firstElementSizeY:0,containerSizeX:0,containerSizeY:0}),n(!1),$e(document,"mousemove",p),$e(document,"mouseup",h),f()},f=()=>{document.onselectstart!==s.current&&(document.onselectstart=s.current)},g=Ee("split"),y={[`${g}__resize-bar`]:!0,vertical:"vertical"===i,horizontal:"horizontal"===i};return l().createElement("div",{className:xe()(y),title:o("qm.split.resize"),onMouseDown:e=>{e.stopPropagation();const t=a.current,r=t.children[0];m({startX:e.pageX,startY:e.pageY,firstElementSizeX:r.offsetWidth,firstElementSizeY:r.offsetHeight,containerSizeX:t.offsetWidth,containerSizeY:t.offsetHeight}),qe(document,"mousemove",p),qe(document,"mouseup",h),n(!0),s.current=document.onselectstart,document.onselectstart=()=>!1}})};Xe.displayName="ResizeBar";const Qe=Xe,Ze=l().forwardRef(((e,t)=>{const{offset:n,className:r,style:a}=e,{direction:i,dragging:o}=l().useContext(De),s="vertical"===i?"height":"width",c=Ee("split-pane"),d={[c]:!0,isLocked:o,horizontal:"horizontal"===i,vertical:"vertical"===i,[r]:!!r},u=void 0!==n?{[s]:ce(n)}:{flex:1,[s]:0};return l().createElement("div",{ref:t,className:xe()(d),style:{...u,...a}},e.children)}));Ze.displayName="SplitPane";const Je=Ze;function et(){return et=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},et.apply(null,arguments)}const tt=e=>{const{direction:t="horizontal",defaultValue:n="50%",uniqueKey:r,className:a,style:i,onDragStart:s,onDrag:c=ee,onDragEnd:d}=e,{global:u}=l().useContext(o),m=l().useRef(null),p=l().useRef(null),h=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),g=e=>{const t=Number.parseInt(e.props?.min||0);return t>=0?t:0},y=l().useMemo((()=>r?`split_${r}`:""),[r]),[b,v]=l().useState(!1),[x,E]=l().useState(h(n));He((()=>{b?s?.(f(x)):(d?.(f(x)),localStorage.setItem(y,x),S(y,x))}),[b]),l().useEffect((()=>{w()}),[]);const w=()=>{if(!y)return;const e=localStorage.getItem(y);e?E(h(e)):C(y).then((e=>{localStorage.setItem(y,h(e||n)),w()})).catch((()=>{}))},C=async e=>{const t=u?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},S=async(e,t)=>{const n=u?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}},N=l().useMemo((()=>({splitRef:m,direction:t,dragging:b})),[t,b]),I=[];l().Children.map(e.children,(e=>{Z(e)&&!J(e)&&"SplitPane"===e.type?.displayName&&I.push(e)}));const[T,R]=I,O=l().useMemo((()=>[g(T),g(R)]),[T,R]),k=Ee("split"),P={[k]:!0,vertical:"vertical"===t};return l().createElement(De.Provider,{value:N},l().createElement("div",{ref:m,className:xe()(P,a),style:i},l().createElement(Je,et({},T.props,{ref:p,offset:x})),l().createElement(Qe,{minValues:O,onDragChange:e=>v(e),onDragging:e=>{E(`${e}px`),c(e)}}),l().createElement(Je,R.props)))};tt.displayName="QmSplit",tt.Pane=Je;const nt=tt,rt=require("react-countup");var at=r.n(rt);function it(){return it=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},it.apply(null,arguments)}const lt=e=>{const{className:t,style:n}=e,{$size:r}=Y(e),a=Ee("countup"),i={[a]:!0,[`${a}--lg`]:"large"===r,[`${a}--sm`]:"small"===r};return l().createElement(at(),it({},e,{className:xe()(i,t),style:n}),e.children)};lt.displayName="QmCountup";const ot=lt;function st(){return st=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},st.apply(null,arguments)}const ct=e=>{const{className:t}=e,{$size:n}=Y(e),r=Ee("empty"),a={...e,image:R.Empty.PRESENTED_IMAGE_SIMPLE},i={[r]:!0,[`${r}--lg`]:"large"===n,[`${r}--sm`]:"small"===n};return l().createElement(R.Empty,st({},a,{className:xe()(i,t)}))};ct.displayName="QmEmpty";const dt=ct,ut=e=>{const t=h({tip:"Loading..."},e),{fullHeight:n,className:r,style:a}=t,i=Ee("spin"),o={[i]:!0,[`${i}-fullHeight`]:!!n},s={wrapperClassName:xe()(o,r),...oe(t,["fullHeight"]),style:{...a,maxHeight:"none"}};return l().createElement(R.Spin,s,t.children)};ut.displayName="QmSpin";const mt=ut,pt=l().createContext(void 0),ht=require("resize-observer-polyfill");var ft=r.n(ht);const gt=new Map,yt=new(ft())((function(e){e.forEach((e=>{const{target:t}=e;gt.get(t)?.forEach((e=>e(t)))}))}));function bt(e,t){gt.has(e)||(gt.set(e,new Set),yt.observe(e)),gt.get(e).add(t)}function vt(e,t){gt.has(e)&&(gt.get(e).delete(t),gt.get(e).size||(yt.unobserve(e),gt.delete(e)))}function xt(e){const[t,n]=i.useState({width:0,height:0});return i.useLayoutEffect((()=>{const t=e.current,r=e=>{n({width:e.offsetWidth,height:e.offsetHeight})};return t&&bt(t,r),()=>{t&&vt(t,r)}}),[e]),t}function Et(e,t){const n=i.useRef(null);return i.useEffect((()=>()=>{clearTimeout(n.current),n.current=null}),[]),i.useCallback(((...r)=>{n.current&&clearTimeout(n.current),n.current=setTimeout((()=>e.apply(this,r)),t)}),[e,t])}const wt=(e,...t)=>l().isValidElement(e)?l().cloneElement(e,...t):null,Ct=["preEnter","entering","entered","preExit","exiting","exited","unmounted"],St=e=>({_s:e,status:Ct[e],isEnter:e<3,isMounted:6!==e,isResolved:2===e||e>4}),Nt=e=>e?6:5,It=(e,t,n,r,a)=>{clearTimeout(r.current);const i=St(e);t(i),n.current=i,a?.({current:i})},Tt=e=>{const{name:t,in:n,timeout:r,preEnter:a=!0,preExit:o}=e,[s,c]=((e={})=>{const{enter:t=!0,exit:n=!0,preEnter:r,preExit:a,timeout:l,initialEntered:o,mountOnEnter:s,unmountOnExit:c,onStateChange:d}=e||{},[u,m]=(0,i.useState)((()=>St(o?2:Nt(s)))),p=(0,i.useRef)(u),h=(0,i.useRef)(),[f,g]=(e=>(0,X.isPlainObject)(e)?[e.enter,e.exit]:[e,e])(l),y=(0,i.useCallback)((()=>{const e=((e,t)=>{switch(e){case 1:case 0:return 2;case 4:case 3:return Nt(t)}})(p.current._s,c);e&&It(e,m,p,h,d)}),[d,c]),b=(0,i.useCallback)((e=>{const i=e=>{switch(It(e,m,p,h,d),e){case 1:f>=0&&(h.current=setTimeout(y,f));break;case 4:g>=0&&(h.current=setTimeout(y,g));break;case 0:case 3:h.current=setTimeout((()=>i(e+1)),0)}},l=p.current.isEnter;"boolean"!=typeof e&&(e=!l),e?!l&&i(t?r?0:1:2):l&&i(n?a?3:4:Nt(c))}),[y,d,t,n,r,a,f,g,c]);return(0,i.useEffect)((()=>()=>clearTimeout(h.current)),[]),[u,b,y]})({timeout:r,preEnter:a,preExit:o,initialEntered:n});return f((()=>{c()}),[n]),l().createElement(l().Fragment,null,l().Children.map(e.children,(e=>l().isValidElement(e)?wt(e,{className:xe()(e.props.className,t,s.status)}):e)))},Rt=6,Ot={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",reverse:"width",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",reverse:"height",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},kt=e=>{const{thumb:t,always:n,className:r,barSize:a=Rt,direction:i="vertical",onDrag:o=ee}=e,{dragging:s,scrollbarElement:c,wrapElement:d}=l().useContext(pt),u=Ot[i],m=l().useRef(t),p=l().useRef(null),h=l().useRef(null),f=l().useRef({}),g=l().useRef(!1),y=l().useRef(!1),b=l().useRef(Q?null:document.onselectstart),[v,x]=l().useState(!1);l().useLayoutEffect((()=>{m.current=t}),[t]),l().useEffect((()=>{const e=c.current;return qe(e,"mousemove",S),qe(e,"mouseleave",N),()=>{C(),$e(document,"mouseup",w),$e(e,"mousemove",S),$e(e,"mouseleave",N)}}),[]);const E=e=>{if(!p.current||!h.current)return;if(!g.current)return;const t=f.current[u.axis];if(!t)return;const n=100*(-1*(p.current.getBoundingClientRect()[u.direction]-e[u.client])-(h.current[u.offset]-t))/p.current[u.offset];d.current[u.scroll]=n*d.current[u.scrollSize]/100,o(!0)},w=()=>{g.current=!1,f.current={[u.axis]:0},$e(document,"mousemove",E),$e(document,"mouseup",w),C(),y.current&&x(!1),o(!1)},C=()=>{document.onselectstart!==b.current&&(document.onselectstart=b.current)},S=()=>{y.current=!1,x(!!m.current.size)},N=()=>{y.current=!0,x(g.current)},I=Ee("scrollbar"),T={[`${I}__bar`]:!0,"is-vertical":"vertical"===i,"is-horizontal":"horizontal"===i},R={[u.reverse]:a},O={[u.size]:t.size,transform:`translate${u.axis}(${t.offset}%)`};return l().createElement(Tt,{name:"fade",in:n||s||v,timeout:300},l().createElement("div",{ref:p,className:xe()(T,r),style:R},l().createElement("div",{ref:h,className:`${I}__thumb`,style:O,onMouseDown:e=>{e.stopPropagation(),qe(document,"mousemove",E),qe(document,"mouseup",w),g.current=!0,b.current=document.onselectstart,document.onselectstart=()=>!1;const t=e.target;t&&(f.current={[u.axis]:t[u.offset]-(e[u.client]-t.getBoundingClientRect()[u.direction])})}})))},Pt=20,Lt=l().forwardRef(((e,t)=>{const{wrapClassName:n,wrapStyle:r,innerStyle:a,barWidth:i,always:o,native:s,showTopScrollbar:c,minSize:d=Pt,onScroll:u}=e,m=l().useRef(null),p=l().useRef(null),h=l().useRef(null),[g,y]=l().useState({size:0,offset:0,ratio:1}),[b,v]=l().useState({size:0,offset:0,ratio:1}),[x,E]=l().useState(!1),w=xt(m),C=xt(h);f((()=>{!s&&S()}),[C.width,C.height,w.width,w.height]);const S=Et((()=>{if(!p.current)return;const e=p.current.offsetHeight-4,t=p.current.offsetWidth-4,n=e**2/p.current.scrollHeight,r=t**2/p.current.scrollWidth,a=Math.max(n,d),i=Math.max(r,d),l=n/(e-n)/(a/(e-a)),o=r/(t-r)/(i/(t-i)),s=a+4<e?a:0,c=i+4<t?i:0,u=100*p.current.scrollTop/e*l,m=100*p.current.scrollLeft/t*o;y(Object.assign({},g,{size:c,ratio:o,offset:m})),v(Object.assign({},b,{size:s,ratio:l,offset:u}))}),5),N=e=>{E(e)},I=(e,t)=>{(0,X.isNumber)(e)?t?((e,t)=>{const n=Date.now(),r=e.scrollTop,a=window.requestAnimationFrame,i=()=>{const l=(Date.now()-n)/500;l<1?(e.scrollTop=r+(t-r)*Ye(l),a(i)):e.scrollTop=t};a(i)})(p.current,e):p.current.scrollTop=e:me("Scrollbar","SET_SCROLL_TOP 参数必须是数值类型")},T=(e,t)=>{(0,X.isNumber)(e)?t?((e,t)=>{const n=Date.now(),r=e.scrollLeft,a=window.requestAnimationFrame,i=()=>{const l=(Date.now()-n)/500;l<1?(e.scrollLeft=r+(t-r)*Ye(l),a(i)):e.scrollLeft=t};a(i)})(p.current,e):p.current.scrollLeft=e:me("Scrollbar","SET_SCROLL_LEFT 参数必须是数值类型")};l().useImperativeHandle(t,(()=>({container:m.current,scrollTop:p.current?.scrollTop||0,scrollLeft:p.current?.scrollLeft||0,SET_SCROLL_TOP:I,SET_SCROLL_LEFT:T})));const R=l().useMemo((()=>({dragging:x,scrollbarElement:m,wrapElement:p})),[x]),O=Ee("scrollbar"),k={[`${O}__wrap`]:!0,[`${O}__wrap--hidden`]:!s};return l().createElement("div",{ref:m,className:xe()(O,e.className),style:e.style},l().createElement("div",{ref:p,className:xe()(k,n),style:r,onScroll:e=>{const{scrollTop:t,scrollLeft:n}=e.target;!s&&(()=>{if(!p.current)return;const e=p.current.offsetHeight-4,t=p.current.offsetWidth-4,n=100*p.current.scrollTop/e*b.ratio,r=100*p.current.scrollLeft/t*g.ratio;y(Object.assign({},g,{offset:r})),v(Object.assign({},b,{offset:n}))})(),u?.({scrollTop:t,scrollLeft:n})}},l().createElement("div",{ref:h,className:`${O}__view`,style:a},e.children)),!s&&l().createElement(pt.Provider,{value:R},c&&l().createElement(kt,{className:"top",direction:"horizontal",thumb:g,barSize:i,always:o,onDrag:N}),l().createElement(kt,{direction:"horizontal",thumb:g,barSize:i,always:o,onDrag:N}),l().createElement(kt,{direction:"vertical",thumb:b,barSize:i,always:o,onDrag:N})))}));Lt.displayName="QmScrollbar";const At=Lt,_t=require("sortablejs");var Ft=r.n(_t);const Dt=(e,t)=>{if(navigator.msSaveBlob)navigator.msSaveBlob(e,decodeURI(t));else{const n=window.URL.createObjectURL(e);let r=document.createElement("a");r.href=n,r.download=decodeURI(t),r.click(),r=null}};function Ht(){return Ht=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ht.apply(null,arguments)}const qt=async(e,{fileName:t,headers:n,params:r})=>{const a=r?new URLSearchParams(r).toString():"",i=a?e.includes("?")?"&":"?":"",l=await fetch(e+`${i+a}`,{method:"GET",headers:n});if(!l.ok)throw new Error(p("qm.download.error"));const o=await l.blob(),s=l.headers.get("content-disposition"),c=t||(s?s.split(";")[1].split("filename=")[1]:e.slice(e.lastIndexOf("/")+1));Dt(o,c)},$t=e=>{const t=e.lastIndexOf(".");return-1!==t?e.substring(0,t):e},Mt=e=>{const t=e.lastIndexOf(".");return-1!==t?e.substring(t+1):""},Kt=e=>{const t=h({name:"file",multiple:!0,showUploadList:{showPreviewIcon:!0,showDownloadIcon:!0,showRemoveIcon:!0}},e),{fileList:n=[],fileDirection:r="vertical",batchDownload:a,draggable:i,editable:o,disabled:s,readOnly:c,button:d={},className:u,onPreview:m,onSortChange:p,onEditChange:f,onDownload:g,onChange:y}=t,{t:b}=U(),{$size:v}=Y(t),x=l().useRef(null),E=l().useRef(null),[w,C]=l().useState({}),S=l().useMemo((()=>s||c),[s,c]);l().useEffect((()=>(T(),()=>E.current?.destroy())),[]);const N=(e,t)=>{C((n=>Object.assign({},n,{[e]:t??!n[e]})))},I=G((e=>{const{oldIndex:t,newIndex:r}=e;if(t!==r){const e=[...n],[a]=e.splice(t,1);e.splice(r,0,a),p?.(e),y?.({file:n[t],fileList:e})}})),T=()=>{i&&(E.current=Ft().create(Be(x.current,Ee("upload-file")).querySelector(".ant-upload-list"),{animation:150,handle:".handle",filter:".ignore",draggable:".ant-upload-list-text-container",onEnd:I}))},O=async e=>{if(g)return void await g(e);const{downloadWithHeaders:n,headers:r}=t;try{e.url&&await qt(e.url,{fileName:e.name,...n?{headers:r}:null})}catch(e){R.message.error(b("qm.download.error"))}},k=Ee("upload-file"),P={[k]:!0,[`${k}--lg`]:"large"===v,[`${k}--sm`]:"small"===v,[`${k}--horizontal`]:"horizontal"===r};return l().createElement(R.Upload,Ht({className:xe()(P,u)},oe(t,["fileTypes","fileSize","fileDirection","batchDownload","draggable","editable","button"]),{beforeUpload:(e,n)=>new Promise((async(r,a)=>{const{fileTypes:i=[],fileSize:l,maxCount:o,fileList:s=[],beforeUpload:c}=t,d=!i.length||i.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),u=!l||e.size/1024/1024<l,m=!(o>1)||s.length<o,p=d&&u&&m;if(d||R.message.warning(b("qm.upload.tooltip",{type:i.join(",")})),u||R.message.warning(b("qm.upload.sizeLimit",{size:l})),m||R.message.warning(b("qm.upload.countLimit",{count:o})),!p)return R.Upload.LIST_IGNORE;if(c){const t=c(e,n);if(!0===t)return r(e);if(!1===t)return a("not upload");if(t&&"function"==typeof t.then)try{r(await t)}catch(e){a(e)}}else r(e)})),disabled:S,onChange:y,onPreview:async e=>{if("function"==typeof m)return m(e,(t=>O(t||e)));s||await O(e)},onDownload:async e=>{await O(e)},itemRender:(e,r,a,c)=>((e,r)=>{const{iconRender:a}=t,{uid:c,name:d,url:u,status:m="done"}=e,p="ant-btn ant-btn-text ant-btn-sm ant-btn-icon-only ant-upload-list-item-card-actions-btn";return l().createElement("div",{className:xe()("ant-upload-list-item",`ant-upload-list-item-${m}`,"ant-upload-list-item-list-type-text",{handle:i})},l().createElement("div",{className:"ant-upload-list-item-info"},l().createElement("span",{className:"ant-upload-span"},l().createElement("div",{className:"ant-upload-text-icon"},a?a(e):l().createElement(we.LinkOutlined,null)),l().createElement("div",{className:"ant-upload-list-item-name"},w[c]?l().createElement(R.Input,{size:"small",autoFocus:!0,defaultValue:$t(d),onBlur:t=>{const{value:r}=t.target;if(r!==$t(d)){const t=Object.assign({},e,{name:`${r}.${Mt(d)}`}),a=n.map((e=>e.uid!==c?e:t));f?.(t,a),y?.({file:t,fileList:a})}N(c,!1)}}):l().createElement("a",{rel:"noreferrer",target:"_blank",title:d,href:u,onClick:e=>{e.preventDefault(),o?S||N(c,!0):r.preview()}},d)),l().createElement("span",{className:"ant-upload-list-item-card-actions"},o&&!S&&l().createElement("button",{type:"button",className:p,onClick:()=>N(c)},w[c]?l().createElement(we.CheckOutlined,null):l().createElement(we.EditOutlined,null)),o&&l().createElement("button",{type:"button",className:xe()(p,"preview"),onClick:()=>r.preview()},l().createElement(we.EyeOutlined,null)),l().createElement("button",{type:"button",className:xe()(p,"download"),disabled:s,onClick:()=>r.download()},l().createElement(we.DownloadOutlined,null)),l().createElement("button",{type:"button",className:xe()(p,"delete"),disabled:S,onClick:()=>r.remove()},l().createElement(we.DeleteOutlined,null))))))})(r,c)}),l().createElement("span",{className:"inner",ref:x},t.children||c&&n.length?t.children:l().createElement(R.Button,{type:d.type??"default",icon:d.icon??l().createElement(we.UploadOutlined,null),disabled:S},d.text||b("qm.upload.text")),a&&!!n.length&&l().createElement(R.Button,{disabled:s,style:{marginLeft:8},onClick:async e=>{if(e.stopPropagation(),"function"==typeof a)await a(n);else for(const e of n)await O(e)}},b("qm.upload.batchDownload"))))};Kt.displayName="QmUploadFile";const zt=Kt;function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jt.apply(null,arguments)}const Vt=e=>{const t=h({icon:l().createElement(we.DownloadOutlined,null),withCredentials:!1},e),{$size:n}=Y(t),{t:r}=U(),[a,i]=l().useState(!1),o=oe(t,["action","fileName","headers","withCredentials","params","beforeDownload","onSuccess","onError"]);return l().createElement(R.Button,jt({},o,{size:n,loading:a,onClick:async()=>{i(!0);try{const{action:e,fileName:n,headers:a,params:i,beforeDownload:l=te,onSuccess:o}=t,s=(0,X.isString)(e)?e:await(async()=>{const e=t.action;if(e.api)try{const t=await e.api(e.params);if(200===t.code)return t.data}catch(e){}return""})();if(!s)return me("Download","参数 `action` 有误!");if(!l(s))return;await qt(s,{fileName:n,headers:a,params:i}),await ne(100),o?.(),R.message.success(r("qm.download.success"))}catch(e){t.onError?.(e),R.message.error(r("qm.download.error"))}i(!1)}}),t.children||r("qm.download.text"))};Vt.displayName="QmDownload";const Wt=Vt,Bt=require("add-dom-event-listener");var Ut=r.n(Bt);const Gt=require("scroll-into-view-if-needed");var Yt=r.n(Gt);function Xt(e,t){const n=i.useRef(null),r=i.useRef(0);return i.useEffect((()=>()=>{clearTimeout(n.current),n.current=null}),[]),i.useCallback(((...n)=>{const a=Date.now();(!r.current||a-r.current>t)&&(e.apply(this,n),r.current=a)}),[e,t])}const Qt=e=>{const{activeKey:t,labels:n,onTabClick:r}=e;return l().createElement(l().Fragment,null,n.map(((e,n)=>{const a={item:!0,actived:n===t};return l().createElement("div",{key:n,className:xe()(a),onClick:e=>r(n,e)},l().createElement("span",null,e))})))},Zt=e=>{const{label:t,showDivider:n,className:r,style:a}=e,i=Ee("anchor-item"),o={[i]:!0};return l().createElement("div",{className:xe()(o,r),style:a},n&&l().createElement(Se,{label:t,style:{marginBottom:10}}),e.children)};Zt.displayName="AnchorItem";const Jt=Zt,en=l().forwardRef(((e,t)=>{const{labelList:n=[],defaultActiveIndex:r,labelWidth:a,tabPosition:i="left",onTabClick:o,className:s,style:c}=e,{$size:d}=Y(e),u=l().useRef(null),m=l().useRef(),p=l().useRef("ready"),h=l().useRef(0),[f,g]=l().useState(r||0),y=l().useMemo((()=>!!n?.length),[n]);l().useEffect((()=>{b();const e=Ut()(u.current,"scroll",x);return()=>{e.remove()}}),[]);const b=()=>{f>0&&(u.current.scrollTop=Ve(v(f),u.current))},v=e=>y?document.getElementById(n[e].id):u.current.children[e],x=Xt((e=>{if("ready"!==p.current)return;const t=(e=>{const t=Math.abs(e),r=(y?n.map((e=>document.getElementById(e.id))):Array.from(u.current?.children||[])).map((e=>Ve(e,u.current)));let a=-1;for(let e=0;e<r.length;e++){const n=r[e],i=r[e+1]||1e4;t>=n-1&&t<i&&(a=e)}return a})(e.target.scrollTop);-1!==t&&g(t)}),60),E=e=>{const t=v(e);t&&(g(e),p.current="stop",m.current&&clearTimeout(m.current),Yt()(t,{block:"start",behavior:"smooth",boundary:u.current}),m.current=setTimeout((()=>p.current="ready"),500))};l().useImperativeHandle(t,(()=>({SCROLL_TO_ITEM:e=>{e=(e=e<0?0:e)>h.current?h.current:e,E(e)}})));const w=Ee("anchor"),C={[w]:!0,[`${w}-left`]:"left"===i,[`${w}-top`]:"top"===i,[`${w}--lg`]:"large"===d,[`${w}--sm`]:"small"===d},S=[];l().Children.map(e.children,(e=>{Z(e)&&!J(e)&&"AnchorItem"===e.type?.displayName&&S.push(e)}));const N=y?n.map((e=>e.label)):S.map((e=>e.props.label)),I=y?n.map((e=>e.id)):S.map(((e,t)=>e.props["data-id"]||t.toString()));return h.current=N.length,l().createElement("div",{className:xe()(C,s),style:c},l().createElement("div",{className:xe()("anchor-nav"),style:{width:a?ce(a):""}},l().createElement(Qt,{activeKey:f,labels:N,onTabClick:(e,t)=>{E(e),o?.({label:N[e],id:I[e]},t)}})),l().createElement("div",{ref:u,className:xe()("anchor-container")},y?e.children:S))}));en.displayName="QmAnchor",en.Item=Jt;const tn=en,nn=e=>l().createElement(R.Tabs.TabPane,e,e.children);nn.displayName="TabPane";const rn=nn;function an(){return an=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},an.apply(null,arguments)}const ln=e=>{const t=h({tabPosition:"top"},e),{items:n,tabPosition:r,tabBarGutter:a,className:i,authConfig:o}=t,{$size:s}=Y(t),c=Ee("tabs"),d={[c]:!0,[`${c}--lg`]:"large"===s,[`${c}--sm`]:"small"===s},u={...oe(t,["items","authConfig"]),size:s,tabBarGutter:a??(["top","bottom"].includes(r)?30:0)},m=[];l().Children.map(t.children,(e=>{Z(e)&&!J(e)&&"TabPane"===e.type?.displayName&&m.push(e)}));const p=n?[...n]:m.map((({key:e,props:t})=>({key:e,label:t.tab,disabled:t.disabled,closable:t.closable,forceRender:t.forceRender,children:t.children})));if(o){const{fieldList:e=[]}=o||{};for(let t=0;t<p.length;t++){const n=p[t],r=e.find((e=>e.dataIndex===n.key)),{visible:a=1,disabled:i}=r||{};a?i&&(n.disabled=!0):(p.splice(t,1),t--)}}return l().createElement(R.Tabs,an({},u,{items:p,className:xe()(d,i)}))};ln.displayName="QmTabs",ln.TabPane=rn;const on=ln;function sn(){return sn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},sn.apply(null,arguments)}const cn=l().forwardRef(((e,t)=>{const n=h({width:"72%",showHeader:!0,showFullScreen:!0,destroyOnClose:!0,footer:null},e),{visible:r,open:a,className:i,loading:s,showHeader:c,showFullScreen:d,maskClosable:u,destroyOnClose:m,onClose:p,onClosed:f,onFullChange:g}=n,{global:y}=l().useContext(o),{$size:b}=Y(n),v=l().useRef(null),x=l().useRef(null),E=l().useRef(!1),[w,C]=l().useState(!1),[S,N]=l().useState(!1),[I,T]=l().useState(!1);He((()=>{(a??r)&&(!m&&E.current||(0,X.isUndefined)(s)&&N(!0))}),[a??r]),He((()=>{x.current&&ze(x.current,w?{width:"100%"}:{width:ce(n.width||"72%")})}),[w]);l().useImperativeHandle(t,(()=>({START_LOADING:()=>T(!0),STOP_LOADING:()=>T(!1)})));const O=Ee("drawer"),k={[O]:!0,"no-header":!c,[`${O}--lg`]:"large"===b,[`${O}--sm`]:"small"===b};return l().createElement(R.Drawer,sn({},oe(n,["visible","size","showFullScreen","loading","maskClosable","onClosed"]),{open:a??r,maskClosable:u??y?.maskClosable??!1,className:xe()(k,i),title:l().createElement(l().Fragment,null,l().createElement("span",{ref:v,className:"text"},c&&n.title),d&&l().createElement("button",{type:"button",className:"full-screen",onClick:()=>{x.current=Be(v.current,"ant-drawer-content-wrapper"),C(!w),g?.(!w)}},l().createElement(w?we.FullscreenExitOutlined:we.FullscreenOutlined))),footer:null,afterOpenChange:e=>{e?(E.current=!0,(0,X.isUndefined)(s)&&setTimeout((()=>N(!1)),100)):(C(!1),f?.())},onClose:p}),n.children,(s||I||S)&&l().createElement(mt,{spinning:!0,className:xe()("spinning")}))}));cn.displayName="QmDrawer";const dn=cn,un=require("react-draggable");var mn=r.n(un);function pn(){return pn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},pn.apply(null,arguments)}const hn="10vh";var fn=function(e){return e[e.large=48]="large",e[e.middle=44]="middle",e[e.small=40]="small",e[e.none=0]="none",e}(fn||{});const gn=l().forwardRef(((e,t)=>{const n=h({width:"60%",showHeader:!0,showFullScreen:!0,destroyOnClose:!0,draggable:!0,footer:null,style:{top:hn}},e),{visible:r,open:a,width:i,height:s,className:c,loading:d,draggable:u,showHeader:m,showFullScreen:p,maskClosable:f,destroyOnClose:g,bodyStyle:y,onFullChange:b,onClose:v,onClosed:x}=n,{global:E}=l().useContext(o),{$size:w}=Y(n),C=l().createRef(),S=l().useRef(!1),N=l().useMemo((()=>`calc(100vh - ${hn} - ${hn} - ${fn[m?w:"none"]}px)`),[w,m]),[I,T]=l().useState(!1),[O,k]=l().useState(!1),[P,L]=l().useState(!1),[A,_]=l().useState(!0),[F,D]=l().useState({left:0,top:0,bottom:0,right:0}),[H,q]=l().useState();He((()=>{if(a??r){if(!g&&S.current||(0,X.isUndefined)(d)&&k(!0),!g&&S.current)return;setTimeout((()=>{S.current=!0,(0,X.isUndefined)(d)&&k(!1)}),400)}}),[a??r]),He((()=>{q(I?{x:0,y:0}:void 0)}),[I]);l().useImperativeHandle(t,(()=>({START_LOADING:()=>L(!0),STOP_LOADING:()=>L(!1)})));const $=Ee("modal"),M={height:s?ce(s):N,maxHeight:"auto"===s?N:"",overflow:"auto"},K={[$]:!0,"no-header":!m,[`${$}--lg`]:"large"===w,[`${$}--sm`]:"small"===w};return l().createElement(R.Modal,pn({},oe(n,["visible","loading","showFullScreen","maskClosable","onClose","onClosed"]),{open:a??r,maskClosable:f??E?.maskClosable??!1,className:xe()(K,c),title:l().createElement("div",{onMouseOver:()=>{A&&_(!1)},onMouseOut:()=>{_(!0)}},l().createElement("span",{className:"text"},m&&n.title),p&&l().createElement("button",{type:"button",className:"full-screen",onClick:e=>{const t=Be(e.target,"ant-modal");if(!t)return;const n=t.querySelector(".ant-modal-body");I?(ze(t,{width:ce(i||"60%"),height:"auto",top:hn}),ze(n,{height:s?ce(s):N,maxHeight:"auto"===s?N:""})):(ze(t,{width:"100%",height:"100%",top:0,maxWidth:"100%"}),ze(n,{height:`calc(100vh - ${fn[m?w:"none"]}px)`,maxHeight:""})),T(!I),b?.(!I)}},l().createElement(I?we.FullscreenExitOutlined:we.FullscreenOutlined))),footer:null,bodyStyle:Object.assign({},M,y),onCancel:v,afterClose:()=>{x?.(),T(!1)},modalRender:e=>l().createElement(mn(),{nodeRef:C,bounds:F,position:H,disabled:!u||A||I,onStart:(e,t)=>((e,t)=>{const{clientWidth:n,clientHeight:r}=window.document.documentElement,a=C.current.getBoundingClientRect();a&&D({left:-a.left+t.x,right:n-(a.right-t.x)-1,top:-a.top+t.y,bottom:r-(a.bottom-t.y)-1})})(0,t)},l().createElement("div",{ref:C},e))}),n.children,(d||P||O)&&l().createElement(mt,{spinning:!0,className:xe()("spinning")}))}));gn.displayName="QmModal";const yn=gn,bn=require("memoize-one");var vn=r.n(bn);const xn=(0,i.createContext)(void 0),En=["&&","||","AND","OR","and","or","like","likes","in","nin","LIKE","LIKES","IN","NIN"],wn={operations:function(e){const t=e.split(" "),n=[];let r=0;n[r]=[];for(let e=0;e<t.length;e++)En.includes(t[e])?(n[r]=n[r].join(" "),r++,n[r]=[]):n[r].push(t[e]);return n[r]=n[r].join(" "),n},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,t=" "){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 n=0,r=(e=Array.isArray(e)?e:[e]).length;n<r;n++)t+="number"==typeof e[n]?e[n]:"'"+e[n]+"'",n<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,n){return e.split(t).join(n)},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 "),this.find_replace(e," NIN "," nin ")}},Cn=["==","<",">","<=",">=","!=","like","likes","in","nin"],Sn=function(e,t){let n="";for(let t=0;t<e.length;t++)"("==e[t]||")"==e[t]?n+=" "+e[t]+" ":n+=e[t];const r=n.split(" ").filter((e=>""!==e));for(let e=0;e<r.length;e++)Cn.includes(r[e])&&("this"!=r[e-1]?r[e-1]=t+"."+r[e-1]:r[e-1]=t),Cn.includes(r[e])&&(r.splice(e-1,3,`__query__(${r[e-1]}, '${r[e]}', ${r[e+1]})`),e-=2);return r.join(" ")},Nn=/(\^|\.|\[|\]|\$|\(|\)|\||\*|\+|\?|\{|\}|\\)/g,In=["string","number","boolean","symbol"],Tn=e=>In.includes(typeof e),Rn=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s+\d{2}:\d{2}:\d{2})?$/.test(e),On=e=>new RegExp(e.replace(/├/g,"(").replace(/┤/g,")").replace(/\^/g," ").toString().replace(Nn,"\\$1"),"i");window.__query__=(...e)=>((e,t,n)=>{e=e??"";let r=!0;switch(t){case"like":r=null!==e.toString().match(On(n));break;case"likes":r=n.split(/,|,/).some((t=>null!==e.toString().match(On(t))));break;case"in":Tn(n)&&(n=[n]),Array.isArray(n)&&(r=Array.isArray(e)?n.every((t=>e.includes(t))):n.includes(e));break;case"nin":Tn(n)&&(n=[n]),Array.isArray(n)&&(r=!(Array.isArray(e)?n.some((t=>e.includes(t))):n.includes(e)));break;case"!=":case"<>":r=(Rn(e)?e.slice(0,10):e)!=n;break;case"<":r=(Rn(e)?e.slice(0,10):e)<n;break;case"<=":r=(Rn(e)?e.slice(0,10):e)<=n;break;case">":r=(Rn(e)?e.slice(0,10):e)>n;break;case">=":r=(Rn(e)?e.slice(0,10):e)>=n;break;default:r=(Rn(e)?e.slice(0,10):e)==n}return r})(e[0],e[1],e[2]);const kn=wn.stringify,Pn=wn.array_format,Ln=function(e){let t=0;const n=e.length;for(let r=0;r<n;r++){const n=e.charAt(r);"("===n&&t++,")"===n&&t--}return 0===t},An=(e,t,n)=>{let r=[];t=wn.replace_symbols(t);try{if(n){const n=new Function("record",`return ${Sn(t,"record")};`);r=fr(e,(e=>n(e)))}else{const n=new Function("array","i",`return ${Sn(t,"array[i]")};`);for(let t=0,a=e.length;t<a;t++)n(e,t)&&r.push(e[t])}}catch(t){me("Table","组件 `initialFilter` 参数有误!"),r=e}return r},_n=e=>{const t=[];return e.forEach((e=>{e.children?t.push(..._n(e.children)):t.push(e)})),t},Fn=e=>e.filter((e=>(e.children&&(e.children=Fn(e.children)),!e.hidden&&!e.noAuth))),Dn=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...Dn(e.children))})),t},Hn=(e,t)=>e.map((e=>(e.children&&(e.children=Hn(e.children,t)),t?.(e),e))),qn=(e,t)=>{for(const n of e){if(n.dataIndex===t)return n;if(n.children){const e=qn(n.children,t);if(e)return e}}return null},$n=e=>{const t=e.children;return t?t[0].children?$n(t[0]):t[0]:e},Mn=e=>{const t=e.children;return t?t[t.length-1].children?Mn(t[t.length-1]):t[t.length-1]:e},Kn=(e,t)=>e.filter((e=>!t.includes(e.dataIndex))),zn=(e,t)=>{for(const n of e){if(n.rowKey===t)return n;if(n.children){const e=zn(n.children,t);if(e)return e}}return null},jn=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...jn(e.children))})),t},Vn=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Vn(e.children,t)),Array.isArray(e.children)&&e.children.length&&n.push(t(e))})),n},Wn=e=>{let t=1;const n=(e,r)=>{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,n(r,e),t+=r.colSpan})),e.colSpan=t}else e.colSpan=e.colSpan??1};e.forEach((e=>{e.level=1,n(e,null)}));const r=[];for(let e=0;e<t;e++)r.push([]);return Dn(e).forEach((e=>{e.children?e.rowSpan=1:e.rowSpan=t-e.level+1,r[e.level-1].push(e)})),r},Bn=e=>Object.assign(e,{__prevent__:!0}),Un=e=>{delete e.__prevent__},Gn=(e,t,n={left:0,top:0})=>{if(e){const r=e.parentNode;if(n.top+=e.offsetTop,n.left+=e.offsetLeft,r&&r!==document.documentElement&&r!==document.body&&(n.top-=r.scrollTop,n.left-=r.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return Gn(e.offsetParent,t,n)}return n},Yn=e=>"number"==typeof e?e:"string"==typeof e?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null,Xn=(e,t)=>(0,X.transform)(e,((e,n,r)=>{(0,X.isEqual)(n,t[r])||(e[r]=(0,X.isPlainObject)(n)&&(0,X.isPlainObject)(t[r])?Xn(n,t[r]):n)})),Qn=(e,t)=>(0,X.get)(e,t)??"",Zn=(e,t,n,r)=>{r>=0&&null!=n&&(n=Number(n).toFixed(r)),(0,X.set)(e,t,n??"")},Jn=(e,t)=>{if(!t.includes("|"))return Qn(e,t);const n=[];return t.split("|").forEach((t=>{t&&n.push(Qn(e,t))})),n.every((e=>!e))?"":n.join(" | ")},er=e=>/^-?\d+(\.\d+)?$/.test(e.toString()),tr=e=>{const t=(e=e.toString()).split("."),n="-"===t[0].charAt(0)?"-":"";let r=n?t[0].slice(1):t[0],a="";for(;r.length>3;)a=`,${r.slice(-3)}${a}`,r=r.slice(0,r.length-3);return r&&(a=r+a),`${n}${a}${t[1]?`.${t[1]}`:""}`},nr=(e,t)=>{const n=e.toString();if(!er(n)||0===t)return e;const r=Number.parseFloat(n).toString(),a=r.indexOf(".");if(-1===a)return r+"."+"0".repeat(t);const i=Math.max(0,t-(r.length-a-1));return r+"0".repeat(i)},rr=(e,t)=>e?c()(e,t):null,ar=(e,t)=>e?c()(e).format(t):"",ir=(e="")=>{let t=(new Date).getTime();return e+"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const n=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"===e?n:3&n|8).toString(16)}))},lr=e=>{const t=[];if(l().isValidElement(e)){const{children:n}=e.props;l().Children.forEach(n,(e=>{t.push(...lr(e))}))}else t.push(e);return t},or=e=>lr(e).join(""),sr=e=>e.filter((e=>!e._group)),cr=(e,t=!1)=>{let n="";if(Array.isArray(e)){let r=0;for(let a=0,i=e.length;a<i;a++){const i=e[a];if(!i.fieldName)continue;const l=Array.isArray(i.condition)?Pn(i.condition):kn(i.condition,"^");n+=`${i.bracketLeft} ${t?`${i.fieldName}|${i.fieldType}`:i.fieldName} ${i.expression} ${l} ${i.bracketRight} ${i.logic} `,r=i.logic.length}n=n.slice(0,-1*r-2)}else{const r=5;for(const r in e){const[a,i]=r.includes("|")?r.split("|"):[r,""],l=e[r];for(const e in l)n+=`${t?`${a}|${i}`:a} ${e} ${Array.isArray(l[e])?Pn(l[e]):kn(l[e],"^")} and `}n=n.slice(0,-1*r)}return n.replace(/\s+/g," ").trim()},dr=(e=[],t=[])=>{const n={};return e.forEach((e=>{const r=JSON.stringify((e=>{const n=[];return t.forEach((t=>n.push(Qn(e,t)))),n})(e));n[r]=n[r]||[],n[r].push(e)})),Object.keys(n).map((e=>n[e]))},ur=(e,t)=>{for(let n=0;n<e.length;n++){if(e[n].dataIndex===t)return[e[n]];if(Array.isArray(e[n].children)){const r=ur(e[n].children,t);if(r)return[e[n],r].flat()}}},mr=(e,t)=>{for(let n=0;n<e.length;n++){if(e[n].rowKey===t)return[t];if(Array.isArray(e[n].children)){const r=mr(e[n].children,t);if(r)return[e[n].rowKey,r].flat()}}},pr=(e,t)=>{for(const n of e){if(Array.isArray(n.children)){const e=pr(n.children,t);if(e)return e}if(t(n))return n}return null},hr=e=>{const t=[];for(let n=0;n<e.length;n++)Array.isArray(e[n].children)&&t.push(...hr(e[n].children)),t.push(e[n].rowKey);return t},fr=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&fr(e.children,t),t(e)||e.children&&e.children.length))),gr=e=>e.map((e=>(delete e.chosen,delete e.selected,e))),yr=(e,t,n=!1)=>{const r=new Set;return function e(t,a,i=1){if(r.has(t))return!1;if(t===a)return!0;if(n&&i>1)return!1;r.add(t);const l=i+1;if(Array.isArray(t)){if(!Array.isArray(a)||t.length!==a.length)return!1;for(let n=0;n<t.length;n++)if(!e(t[n],a[n],l))return!1;return!0}if(t&&a&&"object"==typeof t&&"object"==typeof a){const n=Object.keys(t);return n.length===Object.keys(a).length&&n.every((n=>e(t[n],a[n],l)))}return!1}(e,t)},br=require("prop-types");var vr=r.n(br);const xr=e=>["","small","middle","large"].includes(e),Er=80,wr="1",Cr="0",Sr=400,Nr=["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"],Ir={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};let Tr=function(e){return e.date="date",e.datetime="date",e.exactdate="date",e.week="week",e.month="month",e.quarter="quarter",e.year="year",e}({}),Rr=function(e){return 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",e}({}),Or=function(e){return e.hour="HH",e["hour-minute"]="HH:mm",e["hour-minute-second"]="HH:mm:ss",e}({});const kr={items:vr().arrayOf(vr().shape({type:vr().string.isRequired,fieldName:vr().string.isRequired})),initialValues:vr().object,initialExtras:vr().object,layout:vr().oneOf(["horizontal","vertical"]),size:(e,t,n)=>{if(!xr(e[t]||""))return ue("Form","Invalid prop `"+t+"` supplied to `"+n+"`. Validation failed.")},cols:vr().number,className:vr().string,style:vr().object,compactMode:vr().bool,labelWidth:vr().oneOfType([vr().number,vr().string]),labelAlign:vr().oneOf(["left","right"]),labelWrap:vr().bool,formType:vr().oneOf(["default","search","onlyShow"]),disabled:vr().bool,uniqueKey:vr().string,defaultRows:vr().number,defaultExpand:vr().bool,searchButtonCols:vr().number,scrollToFirstError:vr().bool,authConfig:vr().object,isAutoFocus:vr().bool,isCollapse:vr().bool,isFieldsDefine:vr().bool,isSearchBtn:vr().bool,isSubmitBtn:vr().bool,fieldsChange:vr().func,onValuesChange:vr().func,onFieldsChange:vr().func,onFinish:vr().func,onFinishFailed:vr().func,onReset:vr().func,onCollapse:vr().func},Pr={layout:"horizontal",labelWidth:Er,labelAlign:"right",formType:"default",initialValues:{},initialExtras:{},defaultRows:1,isAutoFocus:!0,isCollapse:!0,isSearchBtn:!0,onValuesChange:ee,onFieldsChange:ee,onFinish:ee,onFinishFailed:ee,onReset:ee,onCollapse:ee},Lr=(e,t)=>{if(!e)return null;if(t===Rr.week){const t=e.match(/^(\d{4})-(\d+)/);return t?c()().year(Number(t[1])).week(Number(t[2])):null}if(t===Rr.quarter){const t=e.match(/^(\d{4})-Q(\d)/);return t?c()().year(Number(t[1])).quarter(Number(t[2])):null}return c()(e,t)},Ar=(e,t)=>e?c()(e).format(t):"",_r=e=>""===e||null==e,Fr=(e,t)=>{if(!e)return"";if(!t.includes("|"))return e[t];const n=t.split("|");let r="";for(let t=0,a=n.length;t<a;t++)r+=(e[n[t].trim()]??"")+(t===a-1?"":" | ");return r},Dr=(e,t,n)=>{for(const r in n)if(Object.keys(t).includes(r)&&t[r]!==n[r])if(t[r].includes("|")){const a=t[r].split("|"),i=n[r].split("|");a.forEach(((t,n)=>e[t]=e[i[n]]))}else e[t[r]]=e[n[r]]},Hr=(e,t,n)=>{for(const r in n)if(Object.keys(t).includes(r)&&t[r]!==n[r])if(t[r].includes("|")){const a=t[r].split("|"),i=n[r].split("|");a.forEach(((t,n)=>e[t]=e[i[n]]))}else e[t[r]]=e[n[r]]},qr=(e,t,n)=>e.map((e=>{const r={value:e[t],text:e[n]};return e.disabled&&(r.disabled=!0),(0,X.isUndefined)(e.isLeaf)||(r.isLeaf=!!e.isLeaf),(0,X.isUndefined)(e.selectable)||(r.selectable=!!e.selectable),Array.isArray(e.children)&&(r.children=qr(e.children,t,n)),r})),$r=(e,t)=>{for(const n of e){if(n.value===t)return n;if(Array.isArray(n.children)){const e=$r(n.children,t);if(e)return e}}return null},Mr=(e,t,n=0)=>{const r=[];return e.forEach((e=>{e.value==t.split(",")[n]&&r.push(e),Array.isArray(e.children)&&r.push(...Mr(e.children,t,n+1))})),r},Kr=e=>Z(e)||"string"==typeof e,zr=e=>Z(e)?lr(e).join(""):e??"",jr=(e,t,n,r)=>{const a={};return a.filters=e.filters?.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}))||[],a.table={columns:e.columns||[],rowKey:e.valueName},a.fieldsDefine={valueKey:e.valueKey||e.valueName},a.fieldAliasMap={[r?"textKey":t]:e.displayName[0],[r?"valueKey":e.valueKey||e.valueName]:e.valueName},e.tableSetting&&(a.table.fetch={api:n(e.tableSetting.api),dataKey:e.tableSetting.dataKey}),e.echoSetting&&(a.echoRequest={fetchApi:n(e.echoSetting.api),formatter:t=>Object.assign({},t,{[e.echoSetting.paramKey]:t.key??t.keys}),dataKey:e.echoSetting.dataKey},e.echoSetting.displayKey&&(a.echoRequest.fieldAliasMap={[r?"textKey":t]:e.echoSetting.displayKey[0]})),e.treeSetting&&(a.tree={fetch:{api:n(e.treeSetting.api),dataKey:e.treeSetting.dataKey,valueKey:e.treeSetting.valueKey,textKey:e.treeSetting.textKey},tableParamsMap:()=>{const t={};return e.treeSetting.relativeTable?.forEach((e=>t[e.tableField]=e.treeField)),t}}),e.emmediateSetting&&(a.columns=e.emmediateSetting.columns,a.request={fetchApi:n(e.emmediateSetting.api),dataKey:e.emmediateSetting.dataKey}),a},Vr={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",""],UNIHANS:["阿","哎","安","肮","凹","八","挀","扳","邦","勹","陂","奔","伻","屄","边","灬","憋","汃","冫","癶","峬","嚓","偲","参","仓","撡","冊","嵾","曽","叉","芆","辿","伥","抄","车","抻","阷","吃","充","抽","出","欻","揣","巛","刅","吹","旾","逴","呲","匆","凑","粗","汆","崔","邨","搓","咑","呆","丹","当","刀","嘚","扥","灯","氐","甸","刁","爹","丁","丟","东","吺","厾","耑","垖","吨","多","妸","诶","奀","鞥","儿","发","帆","匚","飞","分","丰","覅","仏","紑","夫","旮","侅","甘","冈","皋","戈","给","根","刯","工","勾","估","瓜","乖","关","光","归","丨","呙","哈","咍","佄","夯","茠","诃","黒","拫","亨","噷","叿","齁","乎","花","怀","欢","巟","灰","昏","吙","丌","加","戋","江","艽","阶","巾","坕","冂","丩","凥","姢","噘","军","咔","开","刊","忼","尻","匼","肎","劥","空","抠","扝","夸","蒯","宽","匡","亏","坤","扩","垃","来","兰","啷","捞","肋","勒","崚","哩","俩","奁","良","撩","毟","拎","伶","溜","囖","龙","瞜","噜","驴","娈","掠","抡","罗","呣","妈","埋","嫚","牤","猫","么","呅","门","甿","咪","宀","喵","乜","民","名","谬","摸","哞","毪","嗯","拏","腉","囡","囔","孬","疒","娞","恁","能","妮","拈","娘","鸟","捏","囜","宁","妞","农","羺","奴","女","奻","疟","黁","挪","喔","讴","妑","拍","眅","乓","抛","呸","喷","匉","丕","囨","剽","氕","姘","乒","钋","剖","仆","七","掐","千","呛","悄","癿","亲","靑","卭","丘","区","峑","缺","夋","呥","穣","娆","惹","人","扔","日","茸","厹","邚","挼","堧","婑","瞤","捼","仨","毢","三","桒","掻","閪","森","僧","杀","筛","山","伤","弰","奢","申","升","尸","収","书","刷","衰","闩","双","脽","吮","说","厶","忪","捜","苏","狻","夊","孙","唆","他","囼","坍","汤","夲","忑","熥","剔","天","旫","帖","厅","囲","偷","凸","湍","推","吞","乇","穵","歪","弯","尣","危","昷","翁","挝","乌","夕","虲","仙","乡","灱","些","心","星","凶","休","吁","吅","削","坃","丫","恹","央","幺","倻","一","囙","应","哟","佣","优","扜","囦","曰","晕","帀","災","兂","匨","傮","则","贼","怎","増","扎","捚","沾","张","佋","蜇","贞","争","之","中","州","朱","抓","拽","专","妆","隹","宒","卓","乲","宗","邹","租","钻","厜","尊","昨","兙"],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"}};let Wr,Br=null;function Ur(e){return e||null===Br?("object"==typeof Intl&&Intl.Collator?(Wr=new Intl.Collator(["zh-Hans-CN","zh-CN"]),Br=1===Intl.Collator.supportedLocalesOf(["zh-CN"]).length):Br=!1,Br):Br}function Gr(e){const t=Vr.UNIHANS,n=Vr.PINYINS,r=Vr.EXCEPTIONS,a={source:e};if(e in r)return a.type=2,a.target=r[e],a;let i,l=-1;if(e.charCodeAt(0)<256)return a.type=1,a.target=e,a;if(i=Wr.compare(e,"阿"),i<0)return a.type=3,a.target=e,a;if(0===i)a.type=2,l=0;else{if(i=Wr.compare(e,"鿿"),i>0)return a.type=3,a.target=e,a;0===i&&(a.type=2,l=t.length-1)}if(a.type=2,l<0){let n=0,r=t.length-1;for(;n<=r;){l=~~((n+r)/2);const a=t[l];if(i=Wr.compare(e,a),0===i)break;i>0?n=l+1:r=l-1}}return i<0&&l--,a.target=n[l],a.target||(a.type=3,a.target=a.source),a}function Yr(e){return"string"==typeof e&&Ur()?e.split("").map((e=>Gr(e))):e}const Xr={isSupported:Ur,parse:Yr,patchDict:function(e){e&&("function"==typeof e&&(e=[e]),e.forEach&&e.forEach((e=>{"function"==typeof e&&e(Vr)})))},genToken:Gr,convertToPinyin:(e,t,n)=>Yr(e).map((e=>t&&2===e.type?e.target.toLowerCase():e.target)).join(n||"")},Qr={patcher:function(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]="偸"},shouldPatch:function(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}};Xr.isSupported()&&Qr.shouldPatch(Xr.genToken)&&Xr.patchDict(Qr);const Zr=Xr,Jr=e=>{const{value:t,bordered:n}=e;return l().createElement(R.Input,{value:t,title:t,bordered:n,readOnly:!0})};Jr.displayName="FormItemView";const ea=Jr;function ta(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function na(){return na=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},na.apply(null,arguments)}const{Option:ra}=R.Select,aa=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,multiple:a,loading:i,onChange:o,onValuesChange:s}=e,{t:c}=U(),{fieldName:d,options:u={},style:m={},placeholder:p=c("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:f=!0,readOnly:g,disabled:y,onClear:b}=e.option,{itemList:v=[],filterable:x=!0,listHeight:E=Sr,collapseTags:w,maxTagTextLength:C,dropdownStyle:S,openPyt:N=!0}=u,I=ie(v)?r:v,T=e=>I.find((t=>t.value===e))?.text||e?.toString()||"",O=e=>a?e?.map((e=>T(e))).join(",")||"":T(e);return t.isOnlyShow?l().createElement(ea,{value:O(n),bordered:h}):l().createElement(R.Select,na({value:n,mode:a?"multiple":void 0,popupClassName:`form-popper__${d}`,dropdownStyle:S,placeholder:p,style:m,loading:i,bordered:h,allowClear:f,disabled:y,showSearch:x,listHeight:E,maxTagCount:w?"responsive":void 0,maxTagTextLength:C},a?{title:O(n)}:null,{filterOption:(e,t)=>{const n=t?.children?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(N?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{o?.(e),s(e,O(e),I)})(e)},onClear:b}),I.map((e=>l().createElement(ra,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class ia extends i.Component{constructor(...e){super(...e),ta(this,"context",void 0),ta(this,"state",{itemList:[],loading:!1}),ta(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,buttonAfter:p,validateTrigger:h,rules:f=[],onChange:g=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(f)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:f,validateTrigger:h,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(aa,{option:this.props.option,items:t,loading:n,multiple:this.props.multiple,onValuesChange:(t,n,r)=>{g(t,n,r),e.setViewValue(o,n)}}))),p&&l().createElement(R.Col,null,e.renderFormItemButton(o,p)),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}ta(ia,"contextType",xn);const la=ia;function oa(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const sa=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{label:i,options:o={},style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{labelToCheckbox:u,falseValue:m=Cr,trueValue:p=wr}=o,{t:h}=U();return l().createElement(R.Checkbox,{checked:n===p,style:s,disabled:d||t.isOnlyShow,onChange:e=>{const{checked:t}=e.target;(e=>{r?.(e),a(e,h(e===p?"am.form.trueText":"am.form.falseText"))})(t?p:m)}},u?i:null)};class ca extends i.Component{constructor(...e){super(...e),oa(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option,{labelToCheckbox:h}=o;return l().createElement(R.Form.Item,{label:h?" ":e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(sa,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}oa(ca,"contextType",xn);const da=ca,ua=require("react-sortablejs"),ma=e=>{const{uniqueKey:t,items:n,fieldsChange:r}=e,{global:a}=l().useContext(o),{$$form:i}=l().useContext(xn),{$size:s}=Y(e),{t:c}=U(),d=l().useRef(null),[u,m]=l().useState(!1),p=l().useMemo((()=>t?`form_${t}`:""),[t]);l().useLayoutEffect((()=>{f()}),[]);const h=e=>{if(!p)return;const t=e.map((e=>{const t={};return(0,X.isUndefined)(e.hidden)||(t.hidden=e.hidden),{fieldName:e.fieldName,...t}})),n=JSON.parse(localStorage.getItem(p));(0,X.isEqual)(t,n)||(localStorage.setItem(p,JSON.stringify(t)),(async(e,t)=>{const n=a?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(p,t))},f=()=>{const e=(()=>{if(!p)return;const e=JSON.parse(localStorage.getItem(p));return e||(async e=>{const t=a?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}})(p).then((e=>{e?(localStorage.setItem(p,JSON.stringify(e)),f()):a?.getComponentConfigApi&&h(n)})).catch((()=>{})),e?(0,X.xor)(e.map((e=>e.fieldName)),n.map((e=>e.fieldName))).length>0?n.map((t=>{const{fieldName:n}=t,r=e.find((e=>e.fieldName===n));return r?((0,X.isUndefined)(r.hidden)||(t.hidden=r.hidden),t):t})):e.map((e=>({...n.find((t=>t.fieldName===e.fieldName)),...e}))):void 0})();e&&g(e)},g=e=>{r?.([...e])},y=Ee("form-fields-filter"),b={[y]:!0,[`${y}--lg`]:"large"===s,[`${y}--sm`]:"small"===s};return l().createElement(R.Dropdown,{open:u,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","fields-list")},l().createElement("div",{className:"reset"},l().createElement(fe,{type:"text",size:"small",onClick:()=>(e=>{const t=e.map((e=>{const t=n.find((t=>t.fieldName===e.fieldName))||se(e);return Object.assign(t,{hidden:e.hidden})}));g(t),h(t)})(i.getOriginItems())},c("qm.table.columnFilter.reset"))),l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:n,setList:e=>{const t=e.map((e=>e.fieldName)),r=n.map((e=>e.fieldName));if((0,X.isEqual)(t,r))return;i.setExpandHandle(!0);const a=gr(e);g(a),h(a)}},n.map((e=>l().createElement("li",{key:e.fieldName,className:"item",style:e.noAuth?{display:"none"}:void 0},l().createElement(R.Checkbox,{disabled:e.rules?.findIndex((e=>e.required))>-1,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,g(n),h(n)}}),l().createElement(we.HolderOutlined,{className:"handle",title:c("qm.form.draggable")}),l().createElement("span",{className:"title"},i.getFormItemLabel(e.label))))))),overlayClassName:xe()(b),placement:"bottomRight",overlayStyle:{minWidth:160},getPopupContainer:()=>d.current,onOpenChange:e=>{m(e)}},l().createElement("a",{ref:d,style:{padding:"5px 0"}},l().createElement(we.UnorderedListOutlined,null)))};ma.displayName="FieldsFilter";const pa=ma;function ha(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const fa=l().forwardRef(((e,t)=>{const{$$form:n}=l().useContext(xn),{value:r,onChange:a,onValuesChange:i}=e,{t:o}=U(),{options:s={},style:c={},placeholder:d=o("qm.form.inputPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h,onFocus:f,onBlur:g,onEnter:y,onClear:b}=e.option,{prefix:v,suffix:x,password:E,maxLength:w,pattern:C,toUpper:S,toTrim:N,autoFocus:I,autoComplete:T,secretType:O}=s,k=O&&(p||h),P=l().useRef(),L=l().useRef(!1);l().useEffect((()=>{const e=()=>b?.(),t=P.current?.input.parentNode.querySelector("span[class*='clear-icon']");return m&&t&&t.addEventListener("click",e),()=>{t?.removeEventListener("click",e)}}),[]);const A=e=>{a?.(e),i(e)},_=E?R.Input.Password:R.Input,F=k?((e="",t)=>(e=e.toString(),"finance"===t&&(e=(e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","))(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))(r,O):r;return n.isOnlyShow?l().createElement(ea,{value:(e=>e&&E?new Array(e.length).fill("*").join(""):e)(F),bordered:u}):l().createElement(_,{ref:e=>{P.current=e,"function"==typeof t&&t(e)},value:F,autoComplete:E?"new-password":T,autoFocus:I,placeholder:d,style:c,title:E?"":F,prefix:v,suffix:x,maxLength:w,bordered:u,allowClear:m,readOnly:p,disabled:h,onFocus:e=>{f?.(e.target.value,e)},onBlur:t=>{let n=t.target.value??"";if(N){const e=n.trim();n!==e&&(n=e,A(n))}(t=>{const{onBlur:n}=e;n?.(t)})(n),g?.(n,t)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;y?.(t,e),n.isFilterType&&(n.SUBMIT_FORM(),P.current?.blur())}},onCompositionStart:()=>{L.current=!0},onCompositionEnd:()=>{L.current=!1},onChange:e=>{let t=e.target.value;(0,X.isRegExp)(C)&&(t=C.test(t)?t:r??""),S&&!L.current&&(t=t.toUpperCase()),A(t)}})}));fa.displayName="VInput";class ga extends i.Component{constructor(...e){super(...e),ha(this,"context",void 0),ha(this,"focus",(()=>{const{type:e}=this.props.option;this[e].focus()}))}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(fa,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:t=>{h(t),e.setViewValue(a,t)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(a,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}ha(ga,"contextType",xn);const ya=ga;function ba(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const va=e=>{const{$$form:t}=l().useContext(xn),{value:n=[],onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},placeholder:s=i("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:m}=e.option,{prefix:p,suffix:h,maxLength:f}=o,g=e=>{const t=e.every((e=>!e))?[]:e;r?.(t),a(t,y(t))},y=e=>e.join(" - ");return t.isOnlyShow?l().createElement(ea,{value:y(n),bordered:c}):l().createElement(R.Input.Group,null,l().createElement(R.Input,{value:n[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:s[0],prefix:p,suffix:h,maxLength:f,allowClear:d,bordered:c,readOnly:u,disabled:m,onChange:e=>{const{value:t}=e.target;g([t,n[1]])}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:m,readOnly:!0}),l().createElement(R.Input,{value:n[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:s[1],prefix:p,suffix:h,maxLength:f,bordered:c,allowClear:d,readOnly:u,disabled:m,onChange:e=>{const{value:t}=e.target;g([n[0],t])}}))};class xa extends i.Component{constructor(...e){super(...e),ba(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:m=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(s),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(o)},required:e.getFormItemRequired(u)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(va,{option:this.props.option,onValuesChange:(t=[],n)=>{m(t),e.setViewValue(a,n)}}))),c&&l().createElement(R.Col,{flex:ce(c.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...c}))))}}ba(xa,"contextType",xn);const Ea=xa,wa=require("big.js");var Ca=r.n(wa);function Sa(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Na=l().forwardRef(((e,t)=>{const{$$form:n}=l().useContext(xn),{value:r,onChange:a,onValuesChange:i}=e,{t:o}=U(),{options:s={},style:c={},placeholder:d=o("qm.form.inputPlaceholder"),bordered:u=!0,readOnly:m,disabled:p,onFocus:h,onBlur:f,onEnter:g}=e.option,{step:y=1,min:b,max:v,precision:x,autoFocus:E,stringMode:w,textAlign:C="left",controls:S=!0,formatter:N,parser:I}=s,T=l().useRef(),O=l().useRef(r),k=e=>{const t=_r(e)?"":(0,X.isNumber)(e)?e.toFixed(x):new(Ca())(e).toFixed(x);return"function"==typeof N?N(t):t},P={[C]:!0,controls:S};return n.isOnlyShow?l().createElement(ea,{value:k(r),bordered:u}):l().createElement(R.InputNumber,{ref:e=>{T.current=e,"function"==typeof t&&t(e)},value:r,className:xe()(P),placeholder:d,style:{width:"100%",...c},step:y,min:b,max:v,controls:S,precision:x,autoFocus:E,stringMode:w,formatter:N,parser:I,bordered:u,readOnly:m,disabled:p,onFocus:e=>{h?.(e.target.value,e)},onBlur:t=>{re((()=>{(t=>{const{onBlur:n}=e;n?.(t)})(O.current),f?.(O.current,t)}))},onKeyUp:e=>{13===e.keyCode&&(g?.(r,e),n.isFilterType&&(n.SUBMIT_FORM(),T.current?.blur()))},onChange:e=>{const t=e??"";!w&&(Number(t)>Number.MAX_SAFE_INTEGER||Number(t)<Number.MIN_SAFE_INTEGER)||(e=>{O.current=e,a?.(e),i(e,k(e))})(t)}})}));Na.displayName="VInputNumber";class Ia extends i.Component{constructor(...e){super(...e),Sa(this,"context",void 0),Sa(this,"focus",(()=>{const{type:e}=this.props.option;this[e].focus()}))}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Na,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:(t,n)=>{h(t),e.setViewValue(a,n)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(a,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Sa(Ia,"contextType",xn);const Ta=Ia;function Ra(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Oa=e=>{const{$$form:t}=l().useContext(xn),{value:n=[],onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},placeholder:s=i("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:m}=e.option,{step:p=1,min:h=0,max:f,textAlign:g="left",controls:y=!0,precision:b,formatter:v,parser:x}=o,E=e=>{e.every((e=>null!==e))&&e[0]>e[1]&&(e[1]=e[0]),w(e)},w=e=>{const t=e.every((e=>null===e))?[]:[...e];r?.(t),a(t,C(t))},C=e=>_r(e)?"":e.map((e=>_r(e)?"":Number(e).toFixed(b))),S={[g]:!0,controls:y};return t.isOnlyShow?l().createElement(ea,{value:C(n),bordered:c}):l().createElement(R.Input.Group,null,l().createElement(R.InputNumber,{value:n[0],className:xe()("site-input-left",S),style:{width:"calc(50% - 5px)",display:"table-cell",float:"left"},placeholder:s[0],step:p,min:h,max:f,controls:y,precision:b,formatter:v,parser:x,bordered:c,readOnly:u,disabled:m,onChange:e=>{w([e,n[1]])},onBlur:()=>{E(n)}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:m,readOnly:!0}),l().createElement(R.InputNumber,{value:n[1],className:xe()("site-input-right",S),style:{width:"calc(50% - 5px)"},placeholder:s[1],step:p,min:h,max:f,controls:y,precision:b,formatter:v,parser:x,bordered:c,readOnly:u,disabled:m,onChange:e=>{w([n[0],e])},onBlur:()=>{E(n)}}))};class ka extends i.Component{constructor(...e){super(...e),Ra(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:m=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(s),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(o)},required:e.getFormItemRequired(u)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Oa,{option:this.props.option,onValuesChange:(t=[],n)=>{m(t),e.setViewValue(a,n)}}))),c&&l().createElement(R.Col,{flex:ce(c.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...c}))))}}Ra(ka,"contextType",xn);const Pa=ka;let La=function(e){return e[e.large=40]="large",e[e.middle=32]="middle",e[e.small=24]="small",e}({});const Aa=(0,i.createContext)(void 0),_a={dataIndex:vr().string.isRequired,title:vr().string.isRequired,description:vr().string,colSpan:vr().number,width:vr().number,minWidth:vr().number,fixed:vr().oneOf(["left","right"]),align:vr().oneOf(["left","center","right"]),theadAlign:vr().oneOf(["left","center","right"]),printFixed:vr().bool,hidden:vr().bool,noAuth:vr().bool,noFixed:vr().bool,ellipsis:vr().bool,className:vr().string,theadClassName:vr().string,children:vr().array,sorter:vr().oneOfType([vr().bool,vr().func]),filter:vr().shape({type:vr().oneOf(["text","textarea","checkbox","radio","number","date","tree"]).isRequired,items:vr().arrayOf(vr().shape({text:vr().string,value:vr().oneOfType([vr().string,vr().number])})),style:vr().object}),precision:vr().number,displayPrecision:vr().number,formatType:vr().oneOf(["date","datetime","dateShortTime","finance","percent","secret-name","secret-phone","secret-IDnumber","secret-bankNumber"]),required:vr().bool,canCopy:vr().bool,editRender:vr().func,dictItems:vr().arrayOf(vr().shape({text:vr().string,value:vr().oneOfType([vr().string,vr().number])})),summation:vr().shape({sumBySelection:vr().bool,displayWhenNotSelect:vr().bool,dataKey:vr().string,unit:vr().string,render:vr().func}),groupSummary:vr().shape({dataKey:vr().string,unit:vr().string,render:vr().func}),shouldCellUpdate:vr().func,headRender:vr().func,render:vr().func},Fa=(vr().arrayOf(vr().shape(_a)).isRequired,vr().func,vr().array,vr().oneOfType([vr().string,vr().func]).isRequired,vr().number,vr().bool,vr().bool,vr().shape({api:vr().func.isRequired,params:vr().object.isRequired,formatter:vr().func,beforeFetch:vr().func,afterFetch:vr().func,stopToFirst:vr().bool,dataKey:vr().string,callback:vr().func}),vr().bool,vr().bool,vr().string,vr().string,vr().object,vr().bool,vr().bool,vr().bool,vr().oneOfType([vr().object,vr().func]),vr().oneOfType([vr().object,vr().func]),vr().array,vr().func,vr().bool,vr().object,vr().object,vr().shape({type:vr().oneOf(["checkbox","radio"]).isRequired,defaultSelectedRowKeys:vr().array,selectedRowKeys:vr().array,hideSelectAll:vr().bool,checkStrictly:vr().bool,filterable:vr().bool,selectByClickRow:vr().bool,selectFirstRowOnChange:vr().bool,clearableAfterFetched:vr().bool,selectAllOnCurrentPage:vr().bool,fetchSelectedRows:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),fetchAllRowKeys:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),disabled:vr().func,onChange:vr().func,onSelect:vr().func,onSelectAll:vr().func}),vr().shape({currentRowKey:vr().oneOfType([vr().number,vr().string]),disabled:vr().func,onChange:vr().func}),vr().shape({virtual:vr().bool,overscan:vr().number,doubleXScrollbar:vr().bool}),vr().shape({expandIconColumn:vr().string}),vr().shape({defaultExpandAllRows:vr().bool,defaultExpandedRowKeys:vr().array,expandedRowKeys:vr().array,hideExpandAll:vr().bool,rowExpandable:vr().func,expandedRowClassName:vr().string,expandedRowRender:vr().func,onExpand:vr().func,onChange:vr().func}),vr().shape({cellMerge:vr().bool,onCellMerge:vr().func,onSelectChange:vr().func}),vr().shape({groupItems:vr().arrayOf(vr().shape({dataIndex:vr().string.isRequired,titleIndex:vr().string,color:vr().string,backgroundColor:vr().string})),fetch:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),onChange:vr().func}),vr().func,vr().bool,vr().bool,vr().bool,vr().bool,vr().shape({current:vr().number,pageSize:vr().number,pageSizeOptions:vr().array,showSizeChanger:vr().bool,showQuickJumper:vr().bool}),vr().shape({fileName:vr().string,fetch:vr().shape({api:vr().func.isRequired,params:vr().object}),beforeExport:vr().func,cellStyle:vr().bool,hideIcon:vr().bool}),vr().shape({showLogo:vr().bool}),vr().shape({fetch:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),fieldList:vr().arrayOf(vr().object)}),vr().shape({position:vr().oneOf(["top","bottom"]),hideAlert:vr().bool,hideClearButton:vr().bool}),vr().oneOf(["left","right"]),vr().func,vr().func,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,{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}),Da=10,Ha="1",qa="0",$a="YYYY-MM-DD",Ma="YYYY-MM-DD HH:mm:ss",Ka="YYYYMMDDHHmmss",za={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};let ja=function(e){return e.left="flex-start",e.right="flex-end",e}({});const Va={...i}.useId;let Wa=0;const Ba=Va?function(e){const t=Va();return e||t}:function(e){const[t]=i.useState(`qm_unique_${Wa}`);return i.useEffect((()=>{Wa+=1}),[]),e||t};let Ua=[];const Ga={_getInstance:function(e){return Ua.find((t=>t.id===e))??null},getFocusInstance:function(){return Ua[0]??null},focus:function(e){const t=this._getInstance(e);t&&0!==Ua.findIndex((e=>e===t))&&(this.deregister(e),Ua=[t,...Ua])},register:function(e,t){e&&t&&(null!==this._getInstance(e)&&this.deregister(e),Ua=[{id:e,vm:t},...Ua])},deregister:function(e){e&&(Ua=Ua.filter((t=>t.id!==e)))}};function Ya(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Xa=class{constructor(){Ya(this,"state",{required:[],validate:[],edited:[],inserted:[],updated:[],removed:[]}),Ya(this,"addToRequired",(e=>{-1===this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.required.push(e)})),Ya(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)})),Ya(this,"addToValidate",(e=>{-1===this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.validate.push(e)})),Ya(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)})),Ya(this,"addToEdited",(e=>{-1===this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.edited.push(e)})),Ya(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)})),Ya(this,"addToInserted",(e=>{-1===this.state.inserted.findIndex((t=>t===e))&&this.state.inserted.push(e)})),Ya(this,"removeFromInserted",(e=>{const t=this.state.inserted.findIndex((t=>t===e));t<0||this.state.inserted.splice(t,1)})),Ya(this,"addToUpdated",(e=>{-1===this.state.updated.findIndex((t=>t===e))&&this.state.updated.push(e)})),Ya(this,"removeFromUpdated",(e=>{const t=this.state.updated.findIndex((t=>t===e));t<0||this.state.updated.splice(t,1)})),Ya(this,"addToRemoved",(e=>{-1===this.state.removed.findIndex((t=>t===e))&&this.state.removed.push(e)})),Ya(this,"removeFromRemoved",(e=>{const t=this.state.removed.findIndex((t=>t===e));t<0||this.state.removed.splice(t,1)})),Ya(this,"clearAllLog",(()=>{this.state.required=[],this.state.validate=[],this.state.edited=[],this.state.inserted=[],this.state.updated=[],this.state.removed=[]}))}destroy(){for(const e in this)Object.prototype.hasOwnProperty.call(this,e)&&(this[e]=null)}},Qa={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",virtualScrollX:50,virtualScrollY:100,sorterFieldName:"tsortby",filterFieldName:"twhere",currentPageName:"currentPage",pageSizeName:"pageSize",showFilterType:!0,printWidth:1040,operationColumn:"__action__",selectionColumn:"__selection__",expandableColumn:"__expandable__",summaryIgnore:"sumIgnored",popupClassName:"table-editable__popper"};function Za(e){return void 0!==e}function Ja(e,t){const{defaultValue:n,value:r,onChange:a,postState:l}=t||{},[o,s]=i.useState((()=>Za(r)?r:Za(n)?"function"==typeof n?n():n:"function"==typeof e?e():e)),c=Za(r)?r:o,d=l?l(c):c,u=G(a),[m,p]=i.useState([c]);return f((()=>{const e=m[0];o!==e&&u(o,e)}),[m]),f((()=>{Za(r)||s(r)}),[r]),[d,G((e=>{s(e),p([c])}))]}const ei=e=>e.map((e=>{const t={...e};return t.children&&(t.children.forEach((e=>{t.fixed?e.fixed=t.fixed:delete e.fixed})),t.children=ei(t.children)),t})),ti=(e,t)=>{const{fetch:n,columns:r,border:a,rowSelection:i,summation:o,expandable:s,treeConfig:c,webPagination:d,scrollPagination:u,showSuperSearch:m,showFastSearch:p,showGroupSummary:h,showTableImport:f,showClipboard:g,showSelectCollection:y,showPivotGrid:b,footRender:v}=e,{tableRef:x,getRowKey:E,tableFullData:w,tableFlatData:C,selectionKeys:S,sorter:N,filters:I,superFilters:T,pagination:R,mergedTdCells:O}=t,{selectionRows:k,summaries:P}=x.current,{expandIconColumn:L=""}=c||{},{t:A}=U(),_=(e,t,n,r,a)=>{const i=`${t},${n}`;e.has(i)||e.set(i,{row:t,col:n,rowSpan:r,colSpan:a})},F=l().useMemo((()=>!!n?.api),[n?.api]),D=l().useMemo((()=>!F&&!!d),[F,d]),H=l().useMemo((()=>F&&!!u),[F,u]),q=l().useMemo((()=>(F||D)&&!H),[F,D,H]),$=l().useMemo((()=>(e=>{const t=(e=>{const t=[],n=[],r=[];for(let a=0;a<e.length;a++){const i=e[a];"left"===i.fixed?t.push(i):"right"===i.fixed?n.push(i):r.push(i)}return[...t,...r,...n]})(ei(e)),n=(e=>{if(!e)return null;const{type:t}=e;return{dataIndex:Qa.selectionColumn,title:"radio"===t?A("qm.table.config.selectionText"):"",width:Qa.selectionColumnWidth,fixed:"left",type:t}})(i),r=(a=s,a?.expandedRowRender?{dataIndex:Qa.expandableColumn,title:"",width:Qa.selectionColumnWidth,fixed:"left",type:"expand"}:null);var a;return n&&t.unshift(n),r&&t.unshift(r),Fn(t)})(r)),[r]),M=l().useMemo((()=>_n($)),[$]),K=l().useMemo((()=>M.filter((e=>"function"==typeof e.editRender))),[M]),z=l().useMemo((()=>M.filter((e=>!!e.summation))),[M]),j=l().useMemo((()=>M.filter((e=>"left"===e.fixed))),[M]),V=l().useMemo((()=>M.filter((e=>"right"===e.fixed))),[M]),W=l().useMemo((()=>(e=>{const t=new Map;return e.forEach((e=>{const n=C.findIndex((t=>E(t,t.index)===e.rowKey)),r=M.findIndex((t=>t.dataIndex===e.dataIndex));if(!(n<0||r<0)){_(t,n,r,e.rowSpan,e.colSpan);for(let a=0;a<e.rowSpan;a++)for(let i=0;i<e.colSpan;i++)0===a&&0===i||_(t,n+a,r+i,0,0)}})),Array.from(t.values()).sort(((e,t)=>e.row-t.row||e.col-t.col))})(O)),[O,M,w]),B=l().useMemo((()=>{const e=M.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(e.dataIndex)));return L&&e.some((e=>e.dataIndex===L))?L:e[0]?.dataIndex??""}),[M,L]),G=l().useMemo((()=>z.length>0),[z]),Y=l().useMemo((()=>!!v||G),[v,G]),X=l().useMemo((()=>Wn($).length>1),[$]),Q=l().useMemo((()=>a||X),[a,X]),Z=l().useMemo((()=>M.some((e=>e.sorter))),[M]),J=l().useMemo((()=>M.some((e=>e.filter))),[M]),ee=l().useMemo((()=>z.some((e=>!!e.summation.dataKey))),[z]),te=l().useMemo((()=>!F&&!!f),[F,f]),ne=l().useMemo((()=>!!g&&K.length>0),[g,K]),re=l().useMemo((()=>!!y&&"checkbox"===i?.type),[y,i]),ae=l().useMemo((()=>!!m&&J),[m,J]),ie=l().useMemo((()=>!F&&!!p),[F,p]),le=l().useMemo((()=>!F&&!!b),[F,b]),oe=l().useMemo((()=>!!h&&M.some((e=>!!e.groupSummary))),[M]),se=l().useMemo((()=>!!o?.groupItems?.length),[o]),ce=l().useMemo((()=>!C.length),[C]),de=l().useMemo((()=>(()=>{const e={};return z.forEach((t=>{const{dataIndex:n,precision:r,displayPrecision:a,summation:i}=t,{sumBySelection:l,displayWhenNotSelect:o,unit:s}=i,c=se?sr(x.current.tableFullData):x.current.tableFullData,d=!k.length&&!!o;let u=(!l||d?c:k).reduce(((e,t)=>{if(t?.[Qa.summaryIgnore])return e;const r=Qn(t,n);return er(r)?e.plus(r):e}),new(Ca())(0));!Object.keys(P).includes(n)||l&&!d||(u=new(Ca())(Qn(P,n))),Zn(e,n,u.toNumber());let m=r>=0?u.toFixed(r):u.toString();a>=0&&""!==m&&(m=nr(m,a)),m=tr(m),Zn(e,`${n}_text`,s?`${m} ${s}`:m)})),[e]})()),[C,S,P]),ue=l().useMemo((()=>(e=>e.filter((e=>e.summation.dataKey)).map((e=>`sum|${e.dataIndex}`)).join(","))(z)),[z]),me=l().useMemo((()=>{const e=(e=>{const t=[];return Object.keys(e).forEach((n=>{null!==e[n]&&t.push(`${n}|${e[n]}`)})),t.join(",")})(N),t=((e,t)=>{const n=[];if(Object.keys(e).length)for(const t in e){const[r,a]=Qa.showFilterType?t.split("|"):[t,""],i=e[t];Object.keys(i).forEach((e=>{n.push({type:a,bracketLeft:"",fieldName:r,expression:e,value:i[e],bracketRight:"",logic:"and"})}))}return t.length&&t.forEach((e=>{n.push({type:Qa.showFilterType?e.fieldType:"",bracketLeft:e.bracketLeft,fieldName:e.fieldName,expression:e.expression,value:e.condition,bracketRight:e.bracketRight,logic:e.logic})})),n.length&&(n[n.length-1].logic=""),n})(I,T);return{...e?{[Qa.sorterFieldName]:e}:null,...t.length?{[Qa.filterFieldName]:t}:null,...ue?{[Qa.groupSummary.summaryFieldName]:ue,usedJH:1}:null,...n?.params??null,[Qa.currentPageName]:R.current,[Qa.pageSizeName]:R.pageSize}}),[n?.params,R.current,R.pageSize,N,I,T,ue]);return{isFetch:F,isWebPagination:D,isScrollPagination:H,showPagination:q,tableColumns:$,flattenColumns:M,editableColumns:K,summationColumns:z,leftFixedColumns:j,rightFixedColumns:V,derivedMergeCells:W,treeExpandIndex:B,showSummary:G,showFooter:Y,isHeadGroup:X,bordered:Q,isHeadSorter:Z,isHeadFilter:J,isServiceSummation:ee,isSelectCollection:re,isTableImport:te,isTableClipboard:ne,isSuperSearch:ae,isFastSearch:ie,isPivotGrid:le,isGroupSummary:oe,isGroupSubtotal:se,isTableEmpty:ce,summationRows:de,fetchParams:me}},ni=(e,t)=>{const{rowKey:n,height:r,dataSource:a,summation:i,fetch:o,initialSorter:s,initialFilter:c,rowSelection:d,expandable:u,tableConfig:m,authConfig:p,ignorePageIndex:h,columnsChange:g,onChange:y,onDataChange:b,onDataLoad:v,onScrollEnd:x,onFetchError:E}=e,{getRowKey:w,tableRef:C,tableElementRef:S,tableBodyRef:N,$size:I,tableColumns:T,flattenColumns:R,tableFullData:O,pagination:k,layout:P,filters:L,sorter:A,superFilters:_,fetchParams:F,selectionKeys:D,rowExpandedKeys:H,highlightKey:q,summationColumns:$,isFetch:M,isWebPagination:K,isScrollPagination:z,isServiceSummation:j,isGroupSubtotal:V,doLayout:W,setTableFullData:B,setTableOriginData:Y,setTableFlatData:Q,setAllTableData:Z,setDeriveRowKeys:J,setPagination:ee,setPingRight:ne,setPingLeft:re,setSpinning:ae,setSorter:le,setFilters:se,setSuperFilters:ce,setSelectionKeys:de,setRowExpandedKeys:ue,setHighlightKey:pe,setSelectionRows:he,setScrollXLoad:fe,setScrollYLoad:ge,setFieldAuth:ye,setResizeState:be,setSummaries:ve,setPermission:xe,setRecordsMap:Ee,resetTableScroll:we,clearElementStore:Ce,clearRecordsMap:Se}=t,{t:Ne}=U(),{store:Ie}=C.current,Te=l().useRef({...F}),Re=l().useRef(!1),Oe=xt(S);f((()=>{_e(),W()}),[T]),f((()=>{ke()}),[Oe.width,Oe.height,I,r,P.tableAutoHeight]),He((()=>{ot(),st(),ct(),M||(K&&et(),Ge(a)),s&&le(s),c&&se(c)}),[a,o?.params]),He((()=>{const e=Ve(F,Te.current);e||M&&d?.clearableAfterFetched&&dt(),!e&&F[Qa.currentPageName]>1&&!o?.stopToFirst?et():M&&Be(),Te.current=F}),[F]),He((()=>{K&&rt(),z||we(),Ke()}),[k.current,k.pageSize]),He((()=>{M||Pe(O.length),W()}),[O]),He((()=>{C.current.isTreeTable&&rt()}),[H]);const ke=()=>{const{scrollBarRef:e,resizeState:t}=C.current,{width:n,height:r}=Oe;W(),P.tableBodyWidth>n&&ne(!0),e.current.scrollLeft>0&&re(!0),be(Object.assign({},t,{width:n,height:r}))},Pe=e=>{e!==k.total&&ee((t=>Object.assign({},t,{total:e})))},Le=e=>{Re.current=e},Ae=Et((e=>{Qe(),x?.(e)})),_e=()=>{fe(R.length>Qa.virtualScrollX)},Fe=(e=[])=>{let t=e.length>Qa.virtualScrollY;C.current.isTreeTable&&(t=!0),m?.virtual&&(t=!0),ge(t)},De=e=>V?qe($e(e,0)):e,qe=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...qe(e.children)),delete e.children,t.push(e)})),t},$e=(e,t)=>{const r=i.groupItems?.[t];return r?dr(e,[r.dataIndex]).map((e=>{const a={children:$e(e,t+1),_group:r.dataIndex};return"function"!=typeof n&&Zn(a,n.toString(),ir()),r.titleIndex&&Zn(a,r.titleIndex,Qn(e[0],r.titleIndex)),Zn(a,r.dataIndex,Qn(e[0],r.dataIndex)),$.forEach((e=>{const{dataIndex:t}=e,n=a.children?.reduce(((e,n)=>{if(n[Qa.summaryIgnore])return e;const r=Number(Qn(n,t));return Number.isNaN(r)?e:e+r}),0);Zn(a,t,n)})),a})):(e.forEach(((t,n)=>{t._rowSpan=0===n?e.length:0,t._colSpan=1})),e)},Me=e=>{de(e),he((e=>{const{selectionRows:t,recordsMap:n}=C.current,r=new Map;t.forEach((e=>r.set(w(e,e.index),e)));const a=[];for(let t=0,i=e.length;t<i;t++){const i=r.get(e[t])||n.get(e[t]);i&&a.push(i)}return a})(e))},Ke=Et((()=>{y?.(k,je(L),ze(A),_,{currentDataSource:nt()})})),ze=e=>{const t={};for(const n in e)null!==e[n]&&(t[n]=e[n]);return t},je=e=>{const t={};for(const n in e){if(!n.includes("|"))continue;const[r,a]=n.split("|");t[Qa.showFilterType?`${r}|${a}`:r]=e[n]}return t},Ve=(e,t)=>{const n=Object.keys(Xn(e,t));return 1===n.length&&(n.includes(Qa.currentPageName)||n.includes(Qa.pageSizeName))},We=G((async()=>{if(!o)return;const{formatter:e=e=>e,beforeFetch:t=te,afterFetch:n,callback:r}=o;if(!t(F))return;const a=!!i?.fetch?.api;ae(!0);try{const[t,l]=a?await Promise.all([o.api(e(F)),i.fetch.api(e(F))]):[await o.api(e(F))];if(C.current.unMounted)return;if(a?200===t.code&&200===l.code:200===t.code){const e=o.dataKey??Qa.dataKey;let a=(0,X.get)(t.data,e)??[];a="function"==typeof n?await n(a):a;const i=(0,X.get)(t.data,e.replace(/[^.]+$/,Qa.totalKey))||a.length||0,s=Math.max(Math.ceil(i/k.pageSize),1);if(F[Qa.currentPageName]>s)return Ze({...k,current:s});Ge(Re.current?C.current.tableFullData.concat(a):a),Pe(i),Ye(l?.data||t.data),r?.(t.data,t)}}catch(e){E?.(e)}var l;l=o,Object.prototype.hasOwnProperty.call(l,"stopToFirst")&&(o.stopToFirst=!1),ae(!1),Le(!1)})),Be=Et(We),Ue=e=>e.map(((e,t)=>(Array.isArray(e.children)&&(e.children=Ue(e.children)),e.index=t,h||(e.pageIndex=(e=>{const{current:t,pageSize:n}=k;return!M||z?e:(t-1)*n+e})(t)),e))),Ge=e=>{const t=De(Ue(e));at(t),it(t),Me((e=>{const{type:t,checkStrictly:n=!0}=d||{},r=Array.isArray(e)?e:D;let a=[];return C.current.isTreeTable&&!n&&r.forEach((e=>{a.push(...((e,t)=>{const{disabled:n}=d||{},{deriveRowKeys:r,recordsMap:a}=C.current,i=zn(r,e);let l=[];if(!i)return l;let o=hr(i?.children||[]);return n&&(o=o.filter((e=>!a.has(e)||!n(a.get(e))))),l=[...new Set([...t,...o])],(mr(r,e)?.slice(0,-1).reverse()||[]).forEach((e=>{const t=zn(r,e),n=t?.children?.every((e=>l.includes(e.rowKey)));l=n?[...l,e]:l.filter((t=>t!==e))})),l})(e,r))})),a="radio"===t?r.slice(0,1):[...new Set([...r,...a])],a})()),ue((e=>{const{isTreeTable:t,allRowKeys:n,allParentRowKeys:r,deriveRowKeys:a,recordsMap:i}=C.current,{defaultExpandAllRows:l,rowExpandable:o,expandedRowRender:s}=u||{};let c=Array.isArray(e)?e:[...H];if(l)c=t?r:n;else if(t){s&&me("Table","树结构表格不能再设置展开行的 `expandedRowRender` 参数");const e=[...D];q&&e.unshift(q),e.forEach((e=>{const t=mr(a,e)||[];c.push(...t.length>1?t.slice(0,-1).reverse():t)})),c=[...new Set(c)]}return o&&c.filter((e=>{const t=i.get(e);return!!t&&o(t)})),c})()),Xe(),v?.(t)},Ye=e=>{if(!j)return;const t=i?.fetch?.dataKey??Qa.summationKey,n=(t?(0,X.get)(e,t):e)??{},r={};$.filter((e=>!!e.summation.dataKey)).forEach((e=>{Zn(r,e.dataIndex,Number(Qn(n,e.summation.dataKey)))})),ve(r)},Xe=()=>{const{type:e,selectFirstRowOnChange:t}=d||{};if("radio"===e&&t){const e=nt();if(e.length){const t=w(e[0],e[0].index);Me([t])}else Me([])}},Qe=()=>{if(!z)return;const e=Je();Re.current||k.current>=e||(Le(!0),Ze({...k,current:k.current+1}))},Ze=({current:e,pageSize:t})=>{ee((n=>Object.assign({},n,{current:e,pageSize:t})))},Je=()=>{const{pageSize:e,total:t}=k;return Math.ceil(t/e)||1},et=()=>{Ze(Object.assign({},k,{current:1}))},tt=()=>{const{current:e,pageSize:t}=k;return C.current.tableFullData.slice((e-1)*t,e*t)},nt=()=>K?tt():C.current.tableFullData,rt=()=>{const{allTableData:e,isTreeTable:t}=C.current,n=K?jn(tt()):e,r=t?(e=>{const t=new Map,n=[];return e.forEach((e=>{const r=w(e,e.index);if(!e._parentRowKey)return n.push(e),t.set(r,!0);H.includes(e._parentRowKey)&&t.get(e._parentRowKey)&&(n.push(e),t.set(r,!0))})),t.clear(),n})(n):n;Fe(r),Q(r)},at=e=>{B(e),Z(e),J(e),lt(),rt()},it=e=>{Y(e)},lt=()=>{Se(),C.current.allTableData.forEach((e=>Ee(w(e,e.index),e)))},ot=()=>{le({})},st=()=>{se({})},ct=()=>{ce([])},dt=()=>{Me([])};return{initialTable:()=>{(async()=>{if(!p)return;let t=oe(p,["fetch"]);if(p.fetch){const{api:e,params:n,dataKey:r}=p.fetch;try{const a=await e(n);200===a.code&&(t=(r?(0,X.get)(a.data,r):a.data)??{})}catch(e){}}if(Object.keys(t).length){const{isExport:e=1,isImport:n=1,isPrint:r=1}=t;xe((t=>Object.assign({},t,{export:!!e,import:!!n,print:!!r})))}if(Array.isArray(t.fieldList)){const n=Hn(e.columns,(e=>{const{dataIndex:n}=e,r=t.fieldList.find((e=>e.dataIndex===n));if(r){const{visible:t=1,disabled:a,secretName:i}=r,l=qn(C.current.originColumns,n);ye(n,{visible:t,disabled:a,secretName:i}),t||(e.noAuth=!0,l.noAuth=!0),i&&(e.formatType=`secret-${i}`,l.formatType=`secret-${i}`)}}));g?.(n)}})(),q&&N.current.setClickedValues([q,""]),"radio"===d?.type&&D.length&&N.current.setClickedValues([D[0],""]),_e(),Fe(),M?We():Ge(a)},checkDataIndex:()=>{const e=R.map((e=>e.dataIndex));[...new Set(e)].length!==e.length&&me("Table","配置项 dataIndex 属性是唯一的,不能重复")},createTableFullData:at,getTableData:We,createTableList:nt,createTableData:Ge,createGroupData:De,setSelectionKeysEffect:Me,doFieldValidate:(e,t,n,r,a)=>{if(!Array.isArray(e))return me("Table","可编辑单元格的校验规则 `rules` 配置不正确");e.length&&(Ie.removeFromRequired({x:n,y:r}),Ie.removeFromValidate({x:n,y:r}),e.forEach((e=>{e.required&&ie(t)&&Ie.addToRequired({x:n,y:r,text:e.message||a+Ne("qm.form.requiredTips")}),"function"!=typeof e.validator||e.validator?.(t)||Ie.addToValidate({x:n,y:r,text:e.message})})))},getTableLog:()=>{const{required:e,validate:t,inserted:n,updated:r,removed:a}=Ie.state,i=(0,X.intersection)(n,a),l=e=>e.map((e=>({rowKey:e.x,dataIndex:e.y,text:e.text})));return{required:l(e),validate:l(t),inserted:n.filter((e=>!i.includes(e))),updated:r.filter((e=>![...(0,X.intersection)(r,n),...(0,X.intersection)(r,a)].includes(e))),removed:a.filter((e=>!i.includes(e)))}},dataChange:()=>{b?.(C.current.tableFullData)},tableChange:Ke,toLastPage:()=>{const e=Je();k.current!==e&&Ze(Object.assign({},k,{current:e}))},toFirstPage:et,getPageCount:Je,pagerChangeHandle:Ze,scrollBottomDebouncer:Ae,clearTableSorter:ot,clearTableFilter:st,clearSuperFilters:ct,clearRowSelection:dt,clearRowHighlight:()=>{pe("")},clearTableLog:()=>{Ie.clearAllLog()},destroy:()=>{const{tableManager:e,uid:t}=C.current;Ce(),Ie.destroy(),e.deregister(t)}}};function ri({handler:e,delay:t=0}){const n=Xt(e,t),r=G(t>0?n:e);i.useEffect((()=>(window.addEventListener("resize",r),()=>window.removeEventListener("resize",r))),[r])}const ai=e=>{const{total:t}=e,{tableRef:n,prefixCls:r,selectionKeys:a,isHeadSorter:i,isHeadFilter:o,clearTableSorter:s,clearTableFilter:c,clearSuperFilters:d,clearRowSelection:u,clearRowHighlight:m,setActivedCell:p}=l().useContext(Aa),{infoBarConfig:h,rowSelection:f,rowHighlight:g}=n.current.props,{allTableData:y,invalidRowKeys:b}=n.current,{hideAlert:v,hideClearButton:x}=h||{},{t:E}=U(),w=l().useMemo((()=>!v),[v]),C=l().useMemo((()=>!x&&!!(i||o||f||g)),[x,i,o,f,g]),S={[`${r}__alert`]:!0};return w?l().createElement("div",{className:xe()(S)},l().createElement("i",{className:"svgicon icon"},l().createElement(we.InfoCircleFilled,null)),l().createElement("span",null,E("qm.table.alert.total",{total:n.current.isTreeTable?y.length:t}),f?`,${E("qm.table.alert.selected",{total:Math.max(a.length-b.length,0)})}`:""),C&&l().createElement("em",{onClick:()=>{c(),d(),u(),m(),re((()=>s())),p({})}},E("qm.table.alert.clear"))):null},ii=l().forwardRef(((e,t)=>{const{isFullScreen:n,open:r=!0}=e,{prefixCls:a,setFullScreen:i}=l().useContext(Aa),{t:o}=U(),s=()=>{i(!n)};return l().useImperativeHandle(t,(()=>({clickHandle:s}))),r?l().createElement("span",{className:`${a}-full-screen`,title:o(n?"qm.table.screen.cancelFull":"qm.table.screen.full"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},n?l().createElement(we.FullscreenExitOutlined,null):l().createElement(we.FullscreenOutlined,null))):null}));ii.displayName="FullScreen";const li=ii,oi=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,getTableData:a}=l().useContext(Aa),{t:i}=U(),o=()=>{a()};return l().useImperativeHandle(t,(()=>({clickHandle:o}))),n?l().createElement("span",{className:`${r}-reload`,title:i("qm.table.refresh.text"),onClick:()=>o()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.ReloadOutlined,null))):null}));oi.displayName="Reload";const si=oi,ci=()=>{const e={dateFormat:e=>{const t=e?c()(e).format($a):"";return t.startsWith("1900-01-01")?"":t},datetimeFormat:e=>{const t=e?c()(e).format(Ma):"";return t.startsWith("1900-01-01")?"":t},dateShortTimeFormat:e=>{const t=e?c()(e).format(Ma.slice(0,-3)):"";return t.startsWith("1900-01-01")?"":t},percentFormat:e=>er(e)?(100*Number(e)).toFixed(2)+"%":e,financeFormat:e=>tr(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")},t=(t,n,r)=>{const{dictItems:a,precision:i,displayPrecision:l,formatType:o,editRender:s}=n,c=a||s?.(r,n)?.items||[];let d=c.find((e=>e.value==t))?.text??t??"";if(Array.isArray(t)&&(d=t.map((e=>c.find((t=>t.value==e))?.text??e)).join(",")),i>=0&&""!==d&&(d=er(d)?new(Ca())(d).toFixed(i):d),l>=0&&""!==d&&(d=nr(d,l)),o){const t=e[`${ae(o)}Format`];t?d=t(d):me("Table","字段的格式化类型 `formatType` 配置不正确")}return d},n=e=>Z(e)?lr(e).join(""):e??"";return{renderText:t,getTitleFromCellNode:n,getTitleFromCellValue:(e,r,a,i)=>{const l=Qn(e,r.dataIndex),o=r.render?r.render(l,e,r,a,i):t(l,r,e);return n(o)}}},di=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{global:a}=l().useContext(o),{tableRef:i,prefixCls:s,flattenColumns:c,summationRows:d,showSummary:u,getSpan:m}=l().useContext(Aa),{tablePrint:p,showHeader:h}=i.current.props,{t:f}=U(),{getTitleFromCellValue:g}=ci(),y=a?.print?.leftLogo??"",b=a?.print?.rightLogo??"",v=!(!y&&!b),x=l().useMemo((()=>se(Kn(n,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn]))),[n]),E=l().useMemo((()=>se(Kn(c,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn]))),[c]),w=l().useMemo((()=>se(n.filter((e=>e.printFixed)))),[n]),C=e=>{const t=Object.assign({},ur(x,e.dataIndex).slice(0,-1).reverse()[0]);return t.children=[e],t.level&&t.level>1?C(t):t},S=(e,t)=>(0,X.map)((0,X.groupBy)((0,X.flatten)(e),t),(0,X.spread)(((...e)=>(0,X.mergeWith)(...e,((e,n)=>{if(Array.isArray(e))return S(e.concat(n),t)}))))),N=()=>{const e=(e=>{const t=[];let n=[],r=0,a=0;for(;a<e.length;){const i=e[a];r+=i.width||i.renderWidth,r<=Qa.printWidth?(n.push(i),a===e.length-1&&t.push(n),a++):a>0?(e.splice(0,a),w.length&&e.unshift(...w),t.push(n),n=[],r=0,a=0):(i.width=Qa.printWidth,n.push(i),t.push(n),a++)}return t})([...E]),t=(e=>{const t=[];return e.forEach((e=>{let n=[];e.forEach((e=>{1===e.level?n.push(e):n.push(C(e))})),n=(e=>[...new Set(e.map((e=>e.dataIndex)))].map((t=>{const n=e.filter((e=>e.dataIndex===t));return n.length<=1?n[0]:S(n,"dataIndex")[0]})))(n),t.push(Wn(n))})),t})(e);let n=["<!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>\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</style>","</head>","<body>"].join("");for(let r=0;r<e.length;r++)n+=I(t[r],e[r],i.current.tableFullData),n+='<div class="page-break"></div>';return n+"</body></html>"},I=(e,t,n)=>{const{showLogo:r=!0}=p;let a='<table class="table--print" width="100%" border="0" cellspacing="0" cellpadding="0">';return a+=`<colgroup>${t.map((({width:e,renderWidth:t})=>`<col style="width:${e||t}px">`)).join("")}</colgroup>`,h&&(a+=["<thead>",r&&v?`<tr><th colspan="${t.length}" style="border: 0">${['<table class="no-border" width="100%" border="0" cellspacing="0" cellpadding="0">',"<tr>",'<td width="50%" align="left">',y?`<img src="${y}" 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:n}=e;return 0===n?null:`<th colspan="${n}" rowspan="${t}">${or(e.title)}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),n.length&&(a+=`<tbody>${jn(n).map((e=>`<tr>${t.map(((t,r)=>{const{rowSpan:a,colSpan:i}=m(e,t,e.index,r,n);return a&&i?`<td rowspan="${a}" colspan="${i}">${0===r&&e._level?`<span style="padding-left:${e._level*Qa.treeTable.textIndent}px"></span>`:""}${g(e,t,e.index,r)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),u&&d.length&&(a+=["<tfoot>",d.map((e=>`<tr>${t.map(((t,r)=>{const{dataIndex:a,summation:i}=t,l=i?.render?i.render(n):Qn(e,`${a}_text`);return`<td>${0===r&&""===l?f("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),a+="</table>",a},T=()=>{((e,t)=>{const{filename:n,type:r,isDownload:a}={filename:"print",type:"html",isDownload:!1},i=`${n}.${r}`;if(window.Blob){const e=new Blob([t],{type:`text/${r}`});if(!a)return Promise.resolve({type:r,content:t,blob:e});Dt(e,i)}})(0,N())?.then((({content:e,blob:t})=>{let n=document.createElement("iframe");n.setAttribute("frameborder","0"),n.setAttribute("width","100%"),n.setAttribute("height","0"),n.style.display="none",document.body.appendChild(n),i.current.isIE?(n.contentDocument.write(e),n.contentDocument.execCommand("print"),n.parentNode.removeChild(n),n=null):(n.onload=e=>{e.target.src&&e.target.contentWindow.print(),setTimeout((()=>{n.parentNode.removeChild(n),n=null}))},n.src=URL.createObjectURL(t))}))};return l().useImperativeHandle(t,(()=>({clickHandle:T}))),r?l().createElement("span",{className:`${s}-print`,title:f("qm.table.print.text"),onClick:()=>T()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.PrinterOutlined,null))):null}));di.displayName="TablePrint";const ui=di,mi=require("exceljs");var pi=r.n(mi);const hi="606060",fi="thin",gi="d4d4d4",yi=(e,t)=>{t&&(e.height=Math.floor(.75*t))},bi=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},vi=()=>({top:{style:fi,color:{argb:gi}},left:{style:fi,color:{argb:gi}},bottom:{style:fi,color:{argb:gi}},right:{style:fi,color:{argb:gi}}}),xi=e=>{const{children:t}=e;return t&&t.length?xi(t[0]):e},Ei=e=>{const{precision:t,formatType:n}=e,r=t>=0&&t?`.${"0".repeat(t)}`:"";return"percent"===n?{numFmt:r?`0${r}%`:"0%"}:"finance"===n?{numFmt:r?`#,##0${r}`:"#,##0"}:r?{numFmt:`0${r}`}:null},wi=()=>{const{tableRef:e,getSpan:t,showSummary:n,isHeadGroup:r}=l().useContext(Aa),{spanMethod:a,showHeader:i}=e.current.props,{t:o}=U(),s=(e,t)=>e.find((e=>e.text==t))?.value??t??"";return{exportXLSX:async(l,s,c,d)=>{const{columns:u,footSummation:m}=l,{rowHeight:p}=e.current,h=_n(u),f=Wn(u),g=[],y=[],b=[],v=[];let x=0;const E={};h.forEach((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;E[t]=or(e.title),b.push({key:t,width:(n||r||Qa.defaultColumnWidth)/8})})),i&&(r?f.forEach(((e,t)=>{const n={};e.forEach((e=>{const{colSpan:r,rowSpan:a}=e,i=xi(e),l=h.findIndex((({dataIndex:e})=>e===i.dataIndex));n[i.dataIndex]=or(e.title),0!==r&&(r>1||a>1)&&v.push({s:{r:t,c:l},e:{r:t+a-1,c:l+r-1}})})),g.push(n)})):(h.forEach(((e,t)=>{const{colSpan:n,rowSpan:r}=e;(n>1||r>1)&&v.push({s:{r:x,c:t},e:{r:x+r-1,c:t+n-1}})})),g.push(E)),x+=g.length);const w=jn(s).map(((e,n)=>{const r={};return h.forEach(((i,l)=>{if("function"==typeof a){const{rowSpan:r,colSpan:a}=t(e,i,n,l,s);(a>1||r>1)&&v.push({s:{r:n+x,c:l},e:{r:n+x+r-1,c:l+a-1}})}const o=["percent","finance"].includes(i.formatType);r[i.dataIndex]=o?Qn(e,i.dataIndex):d(e,n,i,l)})),r._level=e._level,r}));x+=w.length,n&&m&&c(h,s).forEach(((e,t)=>{const n={};h.forEach(((t,r)=>{const{dataIndex:a,summation:i}=t,l=i?.render?i.render(s):Qn(e,a);n[a]=0===r&&""===l?o("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l})),y.push(n)}));const{sheetName:C,useStyle:S}=l,N=new(pi().Workbook),I=N.addWorksheet(C);I.columns=b,i&&I.addRows(g).forEach((e=>{S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),n=qn(u,t.key),{align:r,theadAlign:a}=n;bi(e,a||r),S&&Object.assign(e,{font:{bold:!0,color:{argb:hi}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:"f5f5f5"}},border:vi()})}))})),I.addRows(w).forEach(((e,t)=>{const{_level:n}=w[t];S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),r=qn(u,t.key),{align:a}=r;bi(e,a),Object.assign(e,Ei(r)),S&&Object.assign(e,{font:{color:{argb:hi}},border:vi()}),1===Number(e.col)&&n&&(e.alignment={...e.alignment,indent:n})}))})),n&&m&&I.addRows(y).forEach((e=>{S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),n=qn(u,t.key),{align:r}=n;bi(e,r),Object.assign(e,Ei(n)),S&&Object.assign(e,{font:{color:{argb:hi}},border:vi()})}))})),v.forEach((({s:e,e:t})=>{I.mergeCells(e.r+1,e.c+1,t.r+1,t.c+1)}));const T=await N.xlsx.writeBuffer();return new Blob([T],{type:"application/octet-stream"})},exportCSV:(e,t)=>{const n=e=>{let t=e;const n=-1!==e.indexOf(",")||-1!==e.indexOf("\r")||-1!==e.indexOf("\n"),r=-1!==e.indexOf('"');return r&&(t=t.replace(/"/g,'""')),(n||r)&&(t='"'+t+'"'),t},r="\ufeff"+(e=>{let t,r,a,i,l="";for(t=0;t<e.rows.length;t+=1){for(a=e.rows[t],r=0;r<a.cells.length;r+=1)i=a.cells[r],l=l+(r?",":"")+n(i.textContent.trim());l+="\r\n"}return l})((e=>{const t=document.createElement("div");return t.innerHTML=e,t.firstChild})(t));var a;return((e,t,n)=>{t=t||"",n=n||512;const r=window.atob(e),a=[];let i;for(i=0;i<r.length;i+=n){const e=r.slice(i,i+n),t=new Array(e.length);let l;for(l=0;l<e.length;l+=1)t[l]=e.charCodeAt(l);const o=new window.Uint8Array(t);a.push(o)}return new window.Blob(a,{type:t})})((a=r,window.btoa(unescape(encodeURIComponent(a)))),"application/csv")},importXLSX:(e,t)=>{const{columns:n,file:r}=e,a=_n(n),i=new FileReader;i.onerror=()=>{R.message.error(o("qm.table.import.error"))},i.onload=e=>{const n=a.map((e=>or(e.title))),r=new(pi().Workbook),i=e.target;i?r.xlsx.load(i.result).then((e=>{const r=e.worksheets[0];if(r){const e=r.getSheetValues(),i=e.findIndex((e=>e&&e.length>0)),l=e[i],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(n,l);if(c){const r=e.slice(i+1).map((e=>{const t={};e.forEach(((e,n)=>{let r=e;Array.isArray(r?.richText)&&(r=r.richText.map((e=>e.text)).join("")),(0,X.isPlainObject)(r)&&"text"in r&&(r=r.text),(0,X.isDate)(r)&&(r=ar(r,Ma)),r?.formula&&(r=r.result??r.value),t[l[n]]=r}));const r={};return n.forEach(((e,n)=>{const{dataIndex:i,dictItems:l}=a[n];Array.isArray(l)&&(t[e]?.toString().includes(",")?t[e]=t[e].split(",").map((e=>s(l,e))).filter((e=>""!==e)):t[e]=s(l,t[e])),Zn(r,i,t[e])})),r}));t?.(r)}else R.message.error(o("qm.table.import.error"))}else R.message.error(o("qm.table.import.error"))})):R.message.error(o("qm.table.import.error"))},i.readAsArrayBuffer(r)}}},Ci=e=>{const{fileType:t,onChange:n}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U();let i,o;const s=e=>{const t=e.name,n=t.lastIndexOf("."),r=t.substring(n+1,t.length);return{filename:t.substring(0,n),type:r}};return l().createElement(fe,{onClick:()=>(async()=>{try{const e=await(e=>{const t=Object.assign({},e);return i||(i=document.createElement("form"),o=document.createElement("input"),i.className=`${r}--file-form`,o.name="file",o.type="file",i.appendChild(o),document.body.appendChild(i)),new Promise(((e,n)=>{const r=!t.type;o.multiple=!!t.multiple,o.accept=r?"":`.${t.type}`,o.onchange=l=>{const{files:c}=l.target,d=c[0];let u="";if(!r)for(let e=0;e<c.length;e++){const{type:n}=s(c[e]);if(t.type!==n){u=n;break}}u?(R.message.warning(a("qm.upload.notType",{type:u})),n()):e(d),document.body.removeChild(i),i=null,o=null},i.reset(),o.click()}))})({type:t});n?.(e.name,e)}catch(e){}})()},a("qm.upload.text"))},Si=e=>{const{columns:t,onClose:n}=e,{tableRef:r,prefixCls:a,createTableData:i,dataChange:o}=l().useContext(Aa),{beforeTableImport:s}=r.current.props,{t:c}=U(),{importXLSX:d}=wi(),u=l().useRef(null),[m,p]=l().useState(!1),[h,f]=l().useState(!0),g=e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))),y={posIndex:"条"},[b,v]=l().useState([{type:"INPUT",label:c("qm.table.export.fileName"),fieldName:"fileName",render:(e,t)=>{const{fileName:n}=t.GET_FIELDS_VALUE(["fileName"]);return l().createElement(l().Fragment,null,n?l().createElement("span",null,n):l().createElement(Ci,{fileType:t.state.formData.fileType,onChange:(e,n)=>{t.SET_FIELDS_VALUE({fileName:e,file:n}),n&&f(!1)}}))}},{type:"SELECT",label:c("qm.table.export.fileType"),fieldName:"fileType",allowClear:!1,options:{itemList:[{text:"xlsx",value:"xlsx"}]}},{type:"SELECT",label:c("qm.table.import.importType"),fieldName:"importType",allowClear:!1,options:{itemList:[{text:c("qm.table.import.fillText"),value:"fill"},{text:c("qm.table.import.addText"),value:"add"},{text:c("qm.table.import.insertText"),value:"insert"}]},onChange:e=>{b.find((e=>"posIndex"===e.fieldName)).hidden="insert"!==e,"insert"===e&&u.current.SET_FIELDS_EXTRA(y),v([...b])}},{type:"INPUT_NUMBER",label:c("qm.table.import.insertPos"),fieldName:"posIndex",hidden:!0,rules:[{required:!0}],options:{min:0,max:r.current.tableFullData.length,formatter:e=>`第 ${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","),parser:e=>e.replace(/第\s?|(,*)/g,"")},extra:{labelWidth:50}}]);return l().createElement("div",{className:`${a}-import__setting`},l().createElement(_u,{ref:u,initialValues:{fileType:"xlsx",importType:"fill"},initialExtras:y,items:b,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},c("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:m,disabled:h,onClick:()=>(async()=>{const[e,a]=await u.current.GET_FORM_DATA();e||(p(!0),d({columns:g(t),file:a.file},(async e=>{const{tableFullData:t,store:l}=r.current;if(e=Array.from(e).map((e=>e||{})),"function"==typeof s)try{e=await s(e)}catch(e){}if("fill"===a.importType&&i(e),"add"===a.importType&&i([...t,...e]),"insert"===a.importType){const n=a.posIndex,r=t.slice(0,n).concat(e).concat(t.slice(n));i(r)}e.forEach((e=>{l.addToInserted(e)})),o(),R.message.success(c("qm.table.import.success",{total:e.length})),p(!1),n()})))})()},c("qm.table.import.text"))))},Ni=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{prefixCls:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:c})));const d={[`${a}-import`]:!0},u={visible:o,title:i("qm.table.import.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:xe()(d),title:i("qm.table.import.textNoSpace"),onClick:()=>c()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.ImportOutlined,null))),l().createElement(yn,u,l().createElement(Si,{columns:n,onClose:()=>s(!1)})))}));Ni.displayName="TableImport";const Ii=Ni,Ti=require("rc-trigger");var Ri=r.n(Ti);const Oi=e=>{const{columns:t,onChange:n}=e,{prefixCls:r,$size:a}=l().useContext(Aa),{t:i}=U(),o=l().useRef([]),[s,c]=l().useState(!1),[d,u]=l().useState(t);He((()=>{p()}),[d]),l().useEffect((()=>{m()}),[t]);const m=()=>{const e=[];t.forEach(((n,r)=>{const a=n.colSpan;a>1&&t.slice(r+1,r+a).every((({colSpan:e})=>0===e))&&e.push(t.slice(r,r+a))})),o.current=e},p=()=>{const e=[];d.forEach((t=>{const{colSpan:n,dataIndex:r}=t;if(0===n)return;if(1===n)return e.push(t);const a=o.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===a)return e.push(t);e.push(...o.current[a].map((({dataIndex:e},n)=>{const r=d.find((t=>t.dataIndex===e));return n>0&&void 0!==t.hidden&&(r.hidden=t.hidden),r})))})),n?.(e)},h={[`${r}__popper`]:!0,"column-filter__popper":!0,[`${r}--lg`]:"large"===a,[`${r}--sm`]:"small"===a},f=[`${r}-column-filter`,{selected:s}];return l().createElement(Ri(),{action:["click"],popupVisible:s,popup:l().createElement("div",{className:"column-filter--wrap",style:{overflowY:"auto",maxHeight:"calc(100vh - 10px)"}},l().createElement("div",{className:"main"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:d,setList:e=>{const t=e.map((e=>e.dataIndex)),n=d.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||u(gr(e))}},d.map((e=>(e=>{const{colSpan:t}=e;if(0===t)return l().createElement("li",{key:e.dataIndex,style:{display:"none"}});const n=["svgicon","handle","main-handle"];return l().createElement("li",{key:e.dataIndex,className:"item"},l().createElement(R.Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:n}=t.target;e.hidden=!n,u([...d])}}),l().createElement("i",{className:xe()(n),title:i("qm.table.columnFilter.draggable")},l().createElement(we.HolderOutlined,null)),l().createElement("span",{className:"text"},or(e.title)))})(e)))))),popupClassName:xe()(h),popupStyle:{minWidth:150},onPopupVisibleChange:e=>{c(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("span",{className:xe()(f),title:i("qm.table.columnFilter.text")},l().createElement("i",{className:"svgicon icon"},l().createElement(we.SettingOutlined,null)),l().createElement("span",null,i("qm.table.columnFilter.text"))))},ki=e=>{const{defaultValue:t,onClose:n,onOk:r}=e,{tableRef:a,prefixCls:i,selectionKeys:o,pagination:s,showSummary:d}=l().useContext(Aa),{rowSelection:u}=a.current.props,{t:m}=U(),p=l().useRef(null),[h,f]=l().useState(!1),g=l().useMemo((()=>Object.assign({},{fileName:`${c()().format(Ka)}.xlsx`,fileType:"xlsx",sheetName:"sheet1",exportType:o.length?"selected":"all","startIndex|endIndex":[1,s.total],footSummation:d?1:0,useStyle:0},t,{columns:se(t.columns||[])})),[]),[y,b]=l().useState([{type:"INPUT",label:m("qm.table.export.fileName"),fieldName:"fileName"},{type:"SELECT",label:m("qm.table.export.fileType"),fieldName:"fileType",options:{itemList:[{text:"xlsx",value:"xlsx"},{text:"csv",value:"csv"}]}},{type:"INPUT",label:m("qm.table.export.sheetName"),fieldName:"sheetName"},{type:"RANGE_INPUT_NUMBER",fieldName:"startIndex|endIndex",label:{type:"SELECT",fieldName:"exportType",options:{itemList:[{text:m("qm.table.export.all"),value:"all"},{text:m("qm.table.export.selected"),value:"selected",disabled:"checkbox"!==u?.type},{text:m("qm.table.export.custom"),value:"custom"}]},onChange:e=>{y.find((e=>"startIndex|endIndex"===e.fieldName)).disabled="custom"!==e,b([...y])}},options:{min:1},disabled:!0},{type:"INPUT",label:m("qm.table.columnFilter.text"),fieldName:"columns",render:(e,t)=>l().createElement(Oi,{columns:t.state.formData.columns,onChange:e=>{t.SET_FIELDS_VALUE({columns:e})}})},{type:"CHECKBOX",label:m("qm.table.export.footSummation"),fieldName:"footSummation",disabled:!d,options:{trueValue:1,falseValue:0}},{type:"CHECKBOX",label:m("qm.table.export.useStyle"),fieldName:"useStyle",options:{trueValue:1,falseValue:0}}]);return l().createElement("div",{className:`${i}-export__setting`},l().createElement(_u,{ref:p,initialValues:g,items:y,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},m("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:h,onClick:()=>(async()=>{const[e,t]=await p.current.GET_FORM_DATA();if(!e){f(!0);for(const e in t)"footSummation"!==e&&"useStyle"!==e||(t[e]=!!t[e]);r(t),await ne(1e3),f(!1),n()}})()},m("qm.table.export.text"))))},Pi=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{global:a}=l().useContext(o),{tableRef:i,prefixCls:s,flattenColumns:d,pagination:u,fetchParams:m,isFetch:p,isGroupSubtotal:h,showSummary:f,getSpan:g}=l().useContext(Aa),{exportExcel:y,fetch:b,showHeader:v}=i.current.props,{t:x}=U(),{getTitleFromCellValue:E}=ci(),[w,C]=l().useState(!1),[S,N]=l().useState(!1),I=l().useMemo((()=>!!y?.fetch?.api),[y]),T=l().useMemo((()=>!u.total||S),[u.total,S]),O=l().useMemo((()=>Kn(n,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn])),[n]),k=l().useMemo((()=>Kn(d,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn])),[d]),P=(e,t="",n=0)=>e.map(((e,r)=>{const a={...e,index:r,pageIndex:r},i=t?`${t}.${a.index+1}`:`${a.index+1}`;return a.indexPath=i,a._level=n,Array.isArray(e.children)&&(a.children=P(e.children,i,n+1)),k.forEach((e=>{const{dataIndex:t}=e;"index"!==t&&"pageIndex"!==t&&"indexPath"!==t&&Zn(a,t,Qn(a,t))})),a})),L=(e,t)=>{const n={};return e.filter((e=>!!e.summation)).forEach((e=>{const{dataIndex:r}=e,a=(h?sr(t):t).reduce(((e,t)=>{if(t?.[Qa.summaryIgnore])return e;const n=Number(Qn(t,r));return Number.isNaN(n)?e:e+n}),0);Zn(n,r,a)})),[n]},A=(e,t,n,r)=>{const{precision:a,formatType:i}=n;let l=E(e,n,t,r);return a>=0&&!i&&""!==l&&(l=Number(l)),l},{exportXLSX:_,exportCSV:F}=wi(),D=async e=>{const{api:t,formatter:n=e=>e,afterFetch:r,dataKey:a}=b;let i=[];try{N(!0);const l=await t({...n(m),[Qa.currentPageName]:1,[Qa.pageSizeName]:e??u.total});if(200===l.code){let e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,a)??[];e="function"==typeof r?await r(e):e,i=P(e)}}catch(e){}return N(!1),i},H=e=>{const t=a?.table?.recordExportLog;try{t?.({fileName:e})}catch(e){}},q=y?.fileName??`${c()().format(Ka)}.xlsx`,$=q.slice(q.lastIndexOf(".")+1).toLowerCase(),M=()=>{if(T)return R.message.warning(x("qm.table.export.warnText"));I?(async e=>{N(!0);try{const{api:t,params:n}=y.fetch,r=await t({columns:k.map((e=>{const{title:t,dataIndex:n,hidden:r}=e,{type:a}=e.filter||{};return{title:t,dataIndex:n,type:a,hidden:r}})),...m,...n,tsortby:void 0,tsummary:void 0,tgroupby:void 0,[Qa.currentPageName]:void 0,[Qa.pageSizeName]:void 0});r.data&&(Dt(r.data,e),H(e))}catch(e){}N(!1)})(q):C(!0)};l().useImperativeHandle(t,(()=>({clickHandle:M})));const K={[`${s}-export`]:!0},z={visible:w,title:x("qm.table.export.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>C(!1)},j={fileName:q.slice(0,q.lastIndexOf(".")),fileType:$,columns:O,useStyle:y?.cellStyle?1:0};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:xe()(K),title:x("qm.table.export.textNoSpace"),onClick:()=>M()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.DownloadOutlined,null))),l().createElement(yn,z,l().createElement(ki,{defaultValue:j,onClose:()=>C(!1),onOk:e=>{(async e=>{const{fileName:t,fileType:n,exportType:r,startIndex:a=1,endIndex:l}=e,{tableFullData:o,selectionRows:s}=i.current;let c=[];if(p?("all"===r&&(c=await D()),"custom"===r&&(c=await D(l),c=c.slice(a-1))):("all"===r&&(c=o.slice(0)),"custom"===r&&(c=o.slice(a-1,l||void 0))),"selected"===r&&(c=s.slice(0).sort(((e,t)=>e.pageIndex-t.pageIndex))),"function"==typeof y?.beforeExport)try{c=y?.beforeExport(c)}catch(e){}if("xlsx"===n){const n=await _(e,c,L,A);Dt(n,`${t}.xlsx`),H(`${t}.xlsx`)}if("csv"===n){const n=F(e,((e,t)=>{const{columns:n,footSummation:r}=e,a=Wn(n),i=_n(n);let l='<table width="100%" border="0" cellspacing="0" cellpadding="0">';return l+=`<colgroup>${i.map((({width:e,renderWidth:t})=>`<col style="width:${e||t}px">`)).join("")}</colgroup>`,v&&(l+=["<thead>",a.map((e=>`<tr>${e.map((e=>{const{rowSpan:t,colSpan:n}=e;return 0===n?null:`<th colspan="${n}" rowspan="${t}">${or(e.title)}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),t.length&&(l+=`<tbody>${jn(t).map((e=>`<tr>${i.map(((n,r)=>{const{rowSpan:a,colSpan:i}=g(e,n,e.index,r,t);return a&&i?`<td rowspan="${a}" colspan="${i}">${A(e,e.index,n,r)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),f&&r&&(l+=["<tfoot>",L(i,t).map((e=>`<tr>${i.map(((n,r)=>{const{dataIndex:a,summation:i}=n,l=i?.render?i.render(t):Qn(e,a);return`<td>${0===r&&""===l?x("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),l+="</table>",l})(e,c));Dt(n,`${t}.csv`),H(`${t}.csv`)}})(Object.assign({},e,{columns:Fn(e.columns)}))}})))}));Pi.displayName="TableExport";const Li=Pi,Ai=e=>{const{columns:t,onClose:n}=e,{tableRef:r,tableBodyRef:a,prefixCls:i,dataChange:o}=l().useContext(Aa),{beforeClipboard:s}=r.current.props,{t:c}=U(),d=l().useRef(null),[u,m]=l().useState([{type:"INPUT_NUMBER",label:c("qm.table.clipboard.rowIndex"),fieldName:"rowIndex",options:{min:1},extra:{labelWidth:50},rules:[{required:!0}]},{type:"SELECT",label:c("qm.table.clipboard.colIndex"),fieldName:"colIndex",options:{itemList:t.map(((e,t)=>({value:t,text:or(e.title)})))},rules:[{required:!0}],extra:{labelWidth:50}},{type:"TEXT_AREA",label:c("qm.table.clipboard.content"),fieldName:"content",placeholder:c("qm.table.clipboard.placeholder"),options:{autoSize:{minRows:4}},rules:[{required:!0}]}]),[p,h]=l().useState(!1);return l().createElement("div",{className:`${i}-clipboard__setting`},l().createElement("h3",{className:"info"},c("qm.table.clipboard.supportText")),l().createElement(_u,{ref:d,initialValues:{},initialExtras:{rowIndex:"行",colIndex:"列"},items:u,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},c("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:p,onClick:()=>(async()=>{const[e,i]=await d.current.GET_FORM_DATA();if(e)return;const{tableFullData:l,store:u,fieldAuth:m}=r.current;h(!0);const p=i.content.trim().replace(/(\r|\n)$/,"");let f=p.replace(/"[^"]+"/g,"^");(p.match(/"[^"]+"/g)?.map((e=>e.replace(/"/g,"").replace(/\r|\n/g," ")))||[]).forEach((e=>{f=f.replace(/\^/,e)}));let g=f.split(/\r|\n/).map((e=>e.split(/\t/)));if("function"==typeof s)try{g=await s(g,g[0].map(((e,n)=>t[i.colIndex+n].dataIndex)))}catch(e){}g.forEach(((e,n)=>{e.forEach(((e,r)=>{const a=l[i.rowIndex-1+n],o=t[i.colIndex+r];if(a&&o){let t=!1;if(o.editRender){const e=o.editRender(a,o);t=!(e.disabled||e.extra?.disabled||m[o.dataIndex]?.disabled)}t&&o.dictItems&&(t=o.dictItems.some((t=>t.value==e))),t&&(Zn(a,o.dataIndex,e),u.addToUpdated(a))}}))})),a.current.forceUpdate(),o(),R.message.success(c("qm.table.clipboard.success",{total:g.length})),h(!1),n()})()},c("qm.table.clipboard.text"))))},_i=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,flattenColumns:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=l().useMemo((()=>(e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))(a)),[a]),d=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:d})));const u={[`${r}-clipboard`]:!0},m={visible:o,title:i("qm.table.clipboard.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:xe()(u),title:i("qm.table.clipboard.textNoSpace"),onClick:()=>d()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.CopyOutlined,null))),l().createElement(yn,m,l().createElement(Ai,{columns:c,onClose:()=>s(!1)})))}));_i.displayName="TableClipboard";const Fi=_i,Di=e=>{const{columns:t,onClose:n}=e,{tableRef:r,$size:a,selectionKeys:i,setSelectionKeysEffect:o}=l().useContext(Aa),{rowKey:s,rowSelection:c}=r.current.props,{t:d}=U(),u=l().useRef(null),m=xt(u),p=e=>e.map((e=>{const t={dataIndex:e.dataIndex,title:e.title,width:e.width,minWidth:e.minWidth,precision:e.precision,dictItems:e.dictItems??[],render:e.render};return Array.isArray(e.children)&&(t.children=p(e.children)),t})),[h,g]=l().useState([{title:d("qm.table.groupSummary.index"),dataIndex:"index",width:80,render:e=>e+1},...p(t.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))]),[y]=l().useState((()=>{const{disabled:e}=c||{},t=r.current.selectionRows.map((e=>({...e,children:void 0})));return e?t.filter((t=>!e(t))):t})()),[b,v]=l().useState(300),x=Et((()=>{const e=u.current;v(e.offsetHeight-2*La[a]-30)}),5);return f((()=>{x()}),[m.width]),l().createElement("div",{ref:u,style:{height:"100%"}},l().createElement(Fs,{size:a,columns:h,dataSource:y,rowKey:s,height:b,rowSelection:{type:"checkbox",selectedRowKeys:i,onChange:e=>o(e)},webPagination:!0,ignorePageIndex:!0,showFastSearch:!1,showTableImport:!1,showSelectCollection:!1,showClipboard:!1,showFullScreen:!1,showColumnDefine:!1,columnsChange:e=>g(e)}),l().createElement("div",{style:{height:10}}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n()},d("qm.table.selectCollection.closeButton"))))},Hi=l().forwardRef(((e,t)=>{const{columns:n,open:r=!0}=e,{tableRef:a,getRowKey:i,prefixCls:o,selectionKeys:s,isFetch:c,isTableEmpty:d,setSelectionKeysEffect:u,setSelectionRows:m}=l().useContext(Aa),{rowSelection:p}=a.current.props,{t:h}=U(),[f,g]=l().useState(!1),y=l().useRef(!1);He((()=>{!y.current&&b()}),[d]);const b=async()=>{const{fetchSelectedRows:e,disabled:t=e=>!1}=p;if(c&&e)try{const n=await e.api(Object.assign({},{selectedKeys:s},e.params));if(200===n.code){let r=Array.isArray(n.data)?n.data:(0,X.get)(n.data,e.dataKey)??[];r=r.filter((e=>!t(e))),u(r.map(((e,t)=>i(e,t)))),m(r),y.current=!0}}catch(e){}},v=()=>{g(!0)};l().useImperativeHandle(t,(()=>({clickHandle:v})));const x={visible:f,title:h("qm.table.selectCollection.settingTitle"),loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>g(!1)};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:`${o}-select-collection`,title:h("qm.table.selectCollection.text"),onClick:()=>v()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.CheckSquareOutlined,null))),l().createElement(yn,x,l().createElement(Di,{columns:n,onClose:()=>g(!1)})))}));Hi.displayName="SelectCollection";const qi=Hi,$i=require("localforage");var Mi=r.n($i);const Ki=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,getRowKey:a,prefixCls:i,$size:s,tableFlatData:c,flattenColumns:d,setActivedCell:u,scrollXToColumn:m,scrollYToRecord:p}=l().useContext(Aa),{uniqueKey:h}=r.current.props,{t:f}=U(),{getTitleFromCellValue:g}=ci(),y=l().useRef(""),[b,v]=l().useState(""),[x,E]=l().useState([]),[w,C]=l().useState(0),[S,N]=l().useState(!1),[I,T]=l().useState({case:0,fullchar:0}),O=l().useMemo((()=>`${x.length>0?w+1:w}/${x.length}`),[w,x]);He((()=>{_(x[w])}),[w,x]);const k=e=>{T(Object.assign({},I,e))},P=(e,t,n)=>new Promise(((r,a)=>{R.Modal.confirm({title:f("qm.button.confirmPrompt"),content:e,onOk:()=>{t(),r()},onCancel:()=>{n(),r()}})})),L=G((async e=>{if(!b)return y.current=b,A();const t=((e,t)=>{const n=new RegExp(I.fullchar?`^${t}$`:t,I.case?"":"i"),r=[];return e.forEach(((e,t)=>{d.forEach(((i,l)=>{const{dataIndex:o}=i;if([Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(o))return;const s=g(e,i,e.index,l);n.test(s)&&r.push({value:s,rowKey:a(e,e.index),dataIndex:o,rowIndex:t,colIndex:l})}))})),r})(c,b);if(!t.length)return R.Modal.warning({title:f("qm.button.confirmPrompt"),content:f("qm.table.fastSearch.notMatch")});if(E(t),"all"===e&&N(!0),b!==y.current)return y.current=b,C(0);if("next"===e){const e=w+1;e>t.length-1?await P(f("qm.table.fastSearch.toTheEnd"),(()=>C(0)),(()=>{})):C(e)}if("prev"===e){const e=w-1;e<0?await P(f("qm.table.fastSearch.toStart"),(()=>C(t.length-1)),(()=>{})):C(e)}})),A=()=>{C(0),E([]),u({})},_=e=>{e&&(p(e.rowKey),m(e.dataIndex),u(e))},F=l().useMemo((()=>h?`fastSearch_${h}`:""),[h]),[D,H]=l().useState([]),[q,$]=l().useState(""),[M,K]=l().useState("");He((()=>{if(M){const{input:e,config:t}=D.find((e=>e.value===M)).condition;v(e),T(t),setTimeout((()=>L()))}}),[M]),l().useEffect((()=>{z()}),[]);const z=async()=>{if(!F)return;let e=await Mi().getItem(F);e||(e=await j(F),Array.isArray(e)&&await Mi().setItem(F,e)),Array.isArray(e)&&e.length&&H(e)},j=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},V=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}};return l().createElement("div",{className:`${i}-fast-search__setting`},l().createElement("div",{className:"main"},l().createElement("div",{className:"container"},l().createElement("div",{className:"search-box"},l().createElement("span",{className:"label"},f("qm.table.fastSearch.queryLabel"),":"),l().createElement(R.Input,{value:b,placeholder:f("qm.table.fastSearch.queryCondition"),allowClear:!0,style:{width:"100%"},onChange:e=>v(e.target.value)})),l().createElement("div",{className:"condition"},l().createElement(R.Checkbox,{checked:!!I.case,onChange:e=>k({case:e.target.checked})},f("qm.table.fastSearch.matchCase")),l().createElement(R.Checkbox,{checked:!!I.fullchar,onChange:e=>k({fullchar:e.target.checked})},f("qm.table.fastSearch.matchFullchar"))),l().createElement("div",{className:"all-list"},S&&l().createElement("table",{className:"rtable",tabIndex:-1,cellSpacing:"0",cellPadding:"0"},l().createElement("thead",null,l().createElement("tr",null,l().createElement("th",{style:{width:40,minWidth:40}},"#"),l().createElement("th",{style:{width:130,minWidth:130}},f("qm.table.fastSearch.cellText")),l().createElement("th",null,f("qm.table.fastSearch.valText")))),l().createElement("tbody",null,x.map(((e,t)=>l().createElement("tr",{key:t,className:xe()({active:w===t}),onClick:()=>C(t)},l().createElement("td",null,t+1),l().createElement("td",null,"Row:",e.rowIndex+1,", Col:",e.colIndex+1),l().createElement("td",null,e.value)))))))),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:s,value:q,placeholder:f("qm.table.highSearch.configText"),disabled:!b,onChange:e=>{const{value:t}=e.target;$(t)}}),l().createElement(fe,{type:"primary",disabled:!q||!b,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!F)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");if(!b)return;const e=ir(),t=[...D,{text:q,value:e,condition:{input:b,config:I}}];H(t),$(""),await Mi().setItem(F,t),await V(F,t)})()},f("qm.table.highSearch.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[s]}px`}},l().createElement("span",null,f("qm.table.fastSearch.savedSetting"))),l().createElement("ul",null,D.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===M}),title:e.text,onClick:()=>{return t=e.value,void K(t!==M?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:f("qm.table.highSearch.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=D.filter((t=>t.value!==e));H(t),await Mi().setItem(F,t),await V(F,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!D.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement("div",{className:"bottom-bar",style:{position:"absolute",left:0,bottom:0,right:0,height:`${La[s]+20}px`,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",boxSizing:"border-box"}},l().createElement("div",null,f("qm.table.fastSearch.findTotal",{total:O})),l().createElement("div",null,l().createElement(fe,{onClick:()=>L("all"),style:{marginRight:8}},f("qm.table.fastSearch.queryAll")),l().createElement(fe,{type:"primary",onClick:()=>L("prev"),style:{marginRight:8}},f("qm.table.fastSearch.queryPrev")),l().createElement(fe,{type:"primary",onClick:()=>L("next"),style:{marginRight:8}},f("qm.table.fastSearch.queryNext")),l().createElement(fe,{onClick:()=>t()},f("qm.table.fastSearch.closeButton")))))},zi=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,$size:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:c})));const d={visible:o,title:i("qm.table.fastSearch.settingTitle"),width:650,loading:!1,bodyStyle:{paddingBottom:`${La[a]+20}px`},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-super-search`,title:i("qm.table.fastSearch.text"),onClick:()=>c()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.MonitorOutlined,null))),l().createElement(yn,d,l().createElement(Ki,{onClose:()=>s(!1)})))}));zi.displayName="FastSearch";const ji=zi,Vi={selectionColumnDefine:{title:"",dataIndex:"__selection__",width:80,fixed:"left"},indentWidth:16,groupMargin:15,separator:"^"},Wi=e=>[Vi.selectionColumnDefine,...e].filter((e=>!e.hidden)),Bi=e=>e.some((e=>Array.isArray(e.children))),Ui=e=>void 0!==e._groupLevel,Gi=(e,t)=>t.split(Vi.separator).reduce(((e,t)=>e?.[t]),e),Yi=e=>Array.isArray(e)?0:"object"==typeof e&&null!==e?1+Math.max(0,...Object.values(e).map(Yi)):0,Xi=(e,t="")=>Array.isArray(e)?[]:Object.keys(e).reduce(((n,r)=>{const a=t?`${t}${Vi.separator}${r}`:r;if(n.push(a),Array.isArray(e[r]))return n;const i=Xi(e[r],a);return n.concat(i)}),[]),Qi={sum:e=>tr(e.reduce(((e,t)=>e+t),0)),avg:e=>e.length>0?(e.reduce(((e,t)=>e+t),0)/e.length).toFixed(2):0,max:e=>e.length>0?Math.max(...e):void 0,min:e=>e.length>0?Math.min(...e):void 0,count:e=>tr(e.length),unique:e=>new Set(e).size,empty:e=>e.filter((e=>ie(e))).length,notEmpty:e=>e.filter((e=>!ie(e))).length},Zi=l().createContext(void 0),Ji=e=>{const{prefixCls:t,pivotProps:n,size:r,getRowKey:a,flatColumns:i,tableData:o}=e,{initialGroup:s,initialCount:c}=n,d=e=>{const t=new Map;return jn(e).forEach((e=>t.set(a(e,e.index),e))),t},u=l().useRef({props:n,originGridData:o,flatGroupData:[],isTree:Bi(o),keyRecordMap:d(o)}),[m,p]=l().useState({pivotRef:u,prefixCls:t,size:r,viewMode:"table",columns:i,gridData:o,groupGridData:[],groupList:s?(e=>{const t=[],n=i.map((e=>e.dataIndex));return e.forEach((e=>{n.includes(e.fieldName)&&["ascend","descend"].includes(e.order)&&t.push(e)})),t})(s):[],filterList:[],sorterList:[],colorList:[],expandedKeys:[],searchResults:[],switchIndex:0,fillColorCells:new Map,countMethod:c?(e=>{const t=["count","unique","empty","notEmpty","sum","max","min","avg"],n=i.map((e=>e.dataIndex)),r={};for(const a in e)n.includes(a)&&t.includes(e[a])&&(r[a]=e[a]);return r})(c):{},summationData:{}}),h=e=>{p((t=>{const n={...t};let r=!1;return Object.keys(e).forEach((a=>{const i=a;Object.is(t[i],e[i])||(n[i]=e[i],r=!0)})),r?n:t}))};f((()=>{b(o),g("originGridData",o),g("isTree",Bi(o)),g("keyRecordMap",d(o))}),[o]),f((()=>{y(i)}),[i]),f((()=>{h({size:r})}),[r]);const g=(e,t)=>{m.pivotRef.current[e]=t};g("props",n);const y=e=>{h({columns:e})},b=e=>{h({gridData:e})},v=e=>{h({groupGridData:e})},x=e=>{h({groupList:e})},E=e=>{h({filterList:e})},w=e=>{h({sorterList:e})},C=e=>{h({colorList:e})},S=e=>{h({expandedKeys:e})},N=e=>{h({searchResults:e})},I=e=>{h({switchIndex:e})},T=e=>{const t=new Map;e.forEach((e=>t.set(`${e.rowKey}|${e.dataIndex}`,e.color))),h({fillColorCells:t})},R=e=>{var t;h({countMethod:(t=Object.assign({},m.countMethod,e),Object.fromEntries(Object.entries(t).filter((([e,t])=>void 0!==t))))})},O=e=>{h({summationData:e})},k=l().useMemo((()=>({...m,setContext:h,getRowKey:a,setPivotGridRef:g,setColumns:y,setGridData:b,setGroupGridData:v,setGroupList:x,setFilterList:E,setSorterList:w,setColorList:C,setExpandedKeys:S,setSearchResults:N,setSwitchIndex:I,setFillColor:T,setCountMethod:R,setSummationData:O})),[m]);return l().createElement(Zi.Provider,{value:k},e.children)},el=()=>l().useContext(Zi),tl=()=>{const{prefixCls:e,pivotRef:t,groupList:n,columns:r,gridData:a,setGroupList:i,setExpandedKeys:o,setGroupGridData:s,setPivotGridRef:c}=el(),{originGridData:d}=t.current,{onGroupChange:u,onDataChange:m}=t.current.props,{t:p}=U(),h=l().useRef([]),f=l().useRef([]),g=l().useMemo((()=>n.filter((e=>e.fieldName&&e.order))),[n]),y=l().useMemo((()=>r.map((e=>({label:or(e.title),value:e.dataIndex,disabled:n.some((t=>t.fieldName===e.dataIndex))})))),[n,r]),b=l().useMemo((()=>{const e=g.map((e=>({[e.fieldName]:e.order})));return(0,X.isEqual)(e,h.current)?h.current:(h.current=e,e)}),[g]),v=[{label:p("qm.pivotGrid.group.ascend"),value:"ascend"},{label:p("qm.pivotGrid.group.descend"),value:"descend"}];l().useEffect((()=>{o(f.current)}),[b,d]),l().useLayoutEffect((()=>{const e=((e,t=[],n)=>{const r=(e,t)=>{if(0===t.length)return e;const[{[Object.keys(t[0])[0]]:a}]=t,i=Object.keys(t[0])[0],l=t.slice(1),o=Object.groupBy(e,(e=>n(e,i))),s=Object.keys(o).sort(((e,t)=>{const n=(r=e,i=t,Number.isNaN(r-i)?r.toString().localeCompare(i.toString()):r-i);var r,i;return"ascend"===a?n:-n})),c={};return s.forEach((e=>{c[`#${e}`]=r(o[e],l)})),c};return r(e,t)})(a,b,((e,t)=>{let n=Qn(e,t);return(0,X.isPlainObject)(n)&&(n=Object.values(n)),Array.isArray(n)&&(n=n.join(",")),ie(n)?p("qm.pivotGrid.group.empty"):n}));var t;s(e),t=Xi(e),f.current=t,c("flatGroupData",((e,t=[])=>{const n=[];return function e(r,a,i=""){if(Array.isArray(r))r.forEach(((e,t)=>{e._varIndex=t,i?e._parentRowKey=i:delete e._parentRowKey})),n.push(...jn(r));else for(const l in r){const o=i?`${i}${Vi.separator}${l}`:l,s=Object.keys(t[a])[0];n.push({id:o,_fieldName:s,_groupLevel:a}),e(r[l],a+1,o)}}(e,0),n})(e,b))}),[b,a]),He((()=>{u?.(g)}),[b]),He((()=>{m?.(a)}),[a]);const x=()=>{i([...n,{fieldName:"",order:"ascend"}])},E=(e,t,r)=>{Object.assign(t,{[e]:r}),i([...n])};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,p("qm.pivotGrid.group.title")),!!g.length&&l().createElement("div",null,l().createElement("button",{className:"button-icon no-hover-bg",onClick:()=>o([])},p("qm.pivotGrid.group.foldAll")),l().createElement("button",{className:"button-icon no-hover-bg",onClick:()=>o(f.current)},p("qm.pivotGrid.group.unfoldAll")))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:n,setList:e=>{const t=e.map((e=>e.fieldName)),r=n.map((e=>e.fieldName));(0,X.isEqual)(t,r)||i(e)}},n.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(r=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(R.Select,{value:r.fieldName||void 0,placeholder:p("qm.table.editable.selectPlaceholder"),options:y,style:{width:160,margin:"0 10px"},onChange:e=>E("fieldName",r,e)}),l().createElement(R.Select,{value:r.order,options:v,placeholder:p("qm.table.editable.selectPlaceholder"),style:{width:100},onChange:e=>E("order",r,e)}),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(n.filter((t=>t!==e)))})(r)}))));var r})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:x},l().createElement(we.PlusOutlined,{className:"icon"}),p("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!g.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.FolderOpenOutlined,{className:"icon"}),p("qm.pivotGrid.group.text"),g.length?`(${g.length})`:null))},nl=()=>{const{prefixCls:e,pivotRef:t,columns:n,filterList:r,setFilterList:a,setGridData:i}=el(),{originGridData:o,isTree:s}=t.current,{onFilterChange:c}=t.current.props,{t:d}=U(),u=l().useRef([]),m=l().useMemo((()=>r.filter((e=>e.fieldName&&("nil"===e.expression||!ie(e.value))))),[r]),p=l().useMemo((()=>n.map((e=>({label:or(e.title),value:e.dataIndex})))),[n]),[h,f]=l().useState("and"),g=l().useMemo((()=>{const e=m.map((e=>`${e.fieldName},${e.expression},${e.value??""}`));return(0,X.isEqual)(e,u.current)?u.current:(u.current=e,e)}),[m]);He((()=>{a(r.map((e=>({...e,logic:h}))))}),[h]),He((()=>{y(),c?.(m)}),[g]);const y=Et((()=>{const e=cr(m.map((e=>({...oe(e,["value"]),expression:"nil"!==e.expression?e.expression:"==",condition:e.value}))));i(e?An(o,e,s):o)}),200),b=[{label:d("qm.pivotGrid.filter.matchAll"),value:"and"},{label:d("qm.pivotGrid.filter.matchAny"),value:"or"}],v=()=>{a([...r,{type:"",bracketLeft:"",fieldName:"",expression:"",value:null,bracketRight:"",logic:h}])},x=(e,t,i)=>{if(Object.assign(t,{[e]:i}),"fieldName"===e){const e=n.find((e=>e.dataIndex===i)).filter?.type||"text";Object.assign(t,{type:e,expression:E(e)[0].value,value:""})}"expression"===e&&"nil"===i&&Object.assign(t,{value:""}),a([...r])},E=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",label:d("qm.table.highSearch.gtText")},{value:"<",label:d("qm.table.highSearch.ltText")},{value:">=",label:d("qm.table.highSearch.gteText")},{value:"<=",label:d("qm.table.highSearch.lteText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",label:d("qm.table.highSearch.inText")},{value:"nin",label:d("qm.table.highSearch.ninText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",label:d("qm.table.highSearch.likeText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")},{value:"nil",label:d("qm.table.highSearch.nullText")}]}return t},w=e=>{switch(e.type){case"number":return l().createElement(R.InputNumber,{defaultValue:e.value,style:{width:150},onChange:t=>{x("value",e,ie(t)?"":t)}});case"date":return l().createElement(_,{popupClassName:Qa.popupClassName,defaultValue:rr(e.value,"YYYY-MM-DD")??void 0,picker:"date",allowClear:!0,style:{width:150},onChange:t=>{x("value",e,ar(t,"YYYY-MM-DD"))}});case"checkbox":case"radio":{const t=n.find((t=>t.dataIndex===e.fieldName))?.dictItems||[];return l().createElement(R.Select,{mode:"checkbox"===e.type?"multiple":void 0,defaultValue:e.value||void 0,placeholder:d("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:t=>{x("value",e,t)}},t.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))}default:return l().createElement(R.Input,{value:e.value,style:{width:150},disabled:"nil"===e.expression,onChange:t=>{x("value",e,t.target.value)}})}};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,d("qm.pivotGrid.filter.title")),!!m.length&&l().createElement(R.Select,{value:h,options:b,style:{width:130},onChange:e=>f(e)})),l().createElement("div",{className:"list"},r.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(R.Select,{value:n.fieldName||void 0,options:p,placeholder:d("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:e=>x("fieldName",n,e)}),l().createElement(R.Select,{value:n.expression||void 0,placeholder:d("qm.table.editable.selectPlaceholder"),options:E(n.type),style:{width:100,margin:"0 10px"},onChange:e=>x("expression",n,e)}),w(n),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{a(r.filter((t=>t!==e)))})(n)}))));var n}))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:v},l().createElement(we.PlusOutlined,{className:"icon"}),d("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!m.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.FilterOutlined,{className:"icon"}),d("qm.pivotGrid.filter.text"),m.length?`(${m.length})`:null))},rl=()=>{const{prefixCls:e,pivotRef:t,columns:n,gridData:r,sorterList:a,setSorterList:i,setGridData:o}=el(),{onSorterChange:s}=t.current.props,{t:c}=U(),d=l().useMemo((()=>a.filter((e=>e.fieldName&&e.order))),[a]),u=l().useMemo((()=>n.map((e=>({label:or(e.title),value:e.dataIndex,disabled:a.some((t=>t.fieldName===e.dataIndex))})))),[a,n]);He((()=>{h(),s?.(d)}),[l().useMemo((()=>d.map((e=>Object.values(e).join(":"))).join(",")),[d])]);const m=[{label:c("qm.pivotGrid.sorter.ascend"),value:"ascend"},{label:c("qm.pivotGrid.sorter.descend"),value:"descend"}],p=(e,t)=>"number"==typeof e&&"number"==typeof t?e-t:"string"==typeof e&&"string"==typeof t?e.localeCompare(t):e instanceof Date&&t instanceof Date?e.getTime()-t.getTime():0,h=()=>{var e;o((e=d,r.sort(((t,n)=>{for(const r of e){const{fieldName:e,order:a}=r,i=Qn(t,e),l=Qn(n,e),o=p(i,l);if(0!==o)return"ascend"===a?o:-o}return 0})).slice(0)))},f=()=>{i([...a,{fieldName:"",order:"ascend"}])},g=(e,t,n)=>{Object.assign(t,{[e]:n}),i([...a])};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.sorter.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:a,setList:e=>{const t=e.map((e=>e.fieldName)),n=a.map((e=>e.fieldName));(0,X.isEqual)(t,n)||i(e)}},a.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(R.Select,{value:n.fieldName||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),options:u,style:{width:160,margin:"0 10px"},onChange:e=>g("fieldName",n,e)}),l().createElement(R.Select,{value:n.order,options:m,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:100},onChange:e=>g("order",n,e)}),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(a.filter((t=>t!==e)))})(n)}))));var n})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:f},l().createElement(we.PlusOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!d.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.SortAscendingOutlined,{className:"icon"}),c("qm.pivotGrid.sorter.text"),d.length?`(${d.length})`:null))},al=()=>{const{prefixCls:e,getRowKey:t,gridData:n,columns:r,searchResults:a,switchIndex:i,setSearchResults:o,setSwitchIndex:s}=el(),{t:c}=U(),{getTitleFromCellValue:d}=ci(),[u,m]=l().useState(!1),p=l().useMemo((()=>a.length),[a]);He((()=>{u||setTimeout((()=>{s(0),o([])}),200)}),[u]);const h=(e,n)=>{const a=[];return e.forEach(((e,i)=>{r.forEach(((r,l)=>{const o=d(e,r,i,l)+"";o.includes(n)&&a.push({value:o,rowKey:t(e,e.index),dataIndex:r.dataIndex})})),Array.isArray(e.children)&&a.push(...h(e.children,n))})),a},f=Et((e=>{const t=e.target.value.trim();s(0),o(t?h(n,t):[])}),200),g=e=>{const{keyCode:t}=e;e.preventDefault(),13===t&&y()},y=()=>{p&&s((i+1)%p)};return l().createElement(R.Dropdown,{open:u,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.search.title")),l().createElement("button",{className:"button-icon",onClick:()=>m(!1)},l().createElement(we.CloseOutlined,null))),l().createElement("div",{className:"list search",style:{margin:"10px 0"}},l().createElement(R.Input,{autoFocus:!0,style:{width:280},suffix:l().createElement("div",{className:"search-switch"},l().createElement("button",{className:"button-icon",onClick:()=>{p&&s((i-1+p)%p)}},l().createElement(we.LeftOutlined,null)),l().createElement("span",{className:"num"},p>0?i+1:i,"/",p),l().createElement("button",{className:"button-icon",onClick:()=>y()},l().createElement(we.RightOutlined,null))),onChange:f,onKeyUp:g}))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300},destroyPopupOnHide:!0},l().createElement("span",{onClick:()=>m(!u)},l().createElement(we.MonitorOutlined,{className:"icon"}),c("qm.pivotGrid.search.text")))},il=(e,t)=>e.map((e=>(e.children&&(e.children=il(e.children,t)),t(e)))),ll=()=>{const{prefixCls:e,pivotRef:t,columns:n,setColumns:r}=el(),{uniqueKey:a,onColumnsChange:i}=t.current.props,{t:o}=U(),s=l().useMemo((()=>a?`grid_field_${a}`:""),[a]);l().useLayoutEffect((()=>{c()}),[]),He((()=>{u(n)}),[n]);const c=()=>{const e=m();e&&i?.(e)},d=e=>e.map((e=>{const t={};return Array.isArray(e.children)&&(t.children=d(e.children)),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),{dataIndex:e.dataIndex,...t}})),u=e=>{if(!s)return;const t=d(e),n=JSON.parse(localStorage.getItem(s));(0,X.isEqual)(t,n)||localStorage.setItem(s,JSON.stringify(t))},m=()=>{if(!s)return;const e=JSON.parse(localStorage.getItem(s));return e?(0,X.xor)(e.map((e=>e.dataIndex)),n.map((e=>e.dataIndex))).length>0?il(n,(t=>{const n=e.find((e=>e.dataIndex===t.dataIndex));return n&&(void 0!==n.hidden&&(t.hidden=n.hidden),void 0!==n.fixed&&(t.fixed=n.fixed),void 0!==n.width&&(t.width=n.width),void 0!==n.renderWidth&&(t.renderWidth=n.renderWidth)),t})):il(e,(e=>{const t=n.find((t=>t.dataIndex===e.dataIndex));return t&&void 0===e.fixed&&delete t.fixed,Object.assign({},t,e)})):void 0},p=l().useMemo((()=>{let e=0;for(let t=0;t<n.length-1&&("left"!==n[t].fixed||n[t+1].fixed||(e=t+1),!(e>0));t++);const t=[];for(let r=0;r<n.length;r++)r===e&&t.push({title:"",dataIndex:"__divider__"}),t.push(n[r]);return t}),[n]);return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container","scroll-y"),style:{padding:5}},l().createElement("div",{className:"label",style:{padding:"6px 15px 10px"}},l().createElement("span",null,o("qm.pivotGrid.field.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".handle",tag:"ul",animation:200,list:p,setList:e=>{const t=e.map((e=>e.dataIndex)),n=p.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||(e=>{const t=e.findIndex((e=>"__divider__"===e.dataIndex)),n=[];for(let r=0;r<e.length;r++){const a=e[r];r<t?a.fixed="left":delete a.fixed,r!==t&&n.push(a)}r(n),i?.(n)})(gr(e))}},p.map((e=>"__divider__"!==e.dataIndex?l().createElement("li",{key:e.dataIndex,className:"ant-dropdown-menu-item sort-item"},l().createElement(we.HolderOutlined,{className:"handle"}),l().createElement("span",{className:"label"},l().createElement("span",{className:"title"},or(e.title)),l().createElement("button",{className:"button-icon",onClick:()=>(e=>{e.hidden=!e.hidden;const t=[...n];r(t),i?.(t)})(e)},e.hidden?l().createElement(we.EyeInvisibleOutlined,null):l().createElement(we.EyeOutlined,null)))):l().createElement("li",{key:e.dataIndex,className:"divider"})))))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:240}},l().createElement("span",null,l().createElement(we.SettingOutlined,{className:"icon"}),o("qm.pivotGrid.field.text")))},ol=()=>{const{prefixCls:e,size:t,setContext:n}=el(),{t:r}=U(),a=[{label:r("qm.pivotGrid.lineHeight.size")[0],value:"small"},{label:r("qm.pivotGrid.lineHeight.size")[1],value:"middle"},{label:r("qm.pivotGrid.lineHeight.size")[2],value:"large"}];return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"list"},a.map((e=>l().createElement("li",{key:e.value,className:xe()("ant-dropdown-menu-item check-item",{active:t===e.value}),onClick:()=>n({size:e.value})},l().createElement("span",{className:"label"},e.label),l().createElement("i",{className:"icon"},l().createElement(we.CheckOutlined,null))))))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:160}},l().createElement("span",null,l().createElement(we.ColumnHeightOutlined,{className:"icon"}),r("qm.pivotGrid.lineHeight.text")))},sl="606060",cl="thin",dl="d4d4d4",ul=(e,t)=>{t&&(e.height=Math.floor(.75*t))},ml=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},pl=()=>({top:{style:cl,color:{argb:dl}},left:{style:cl,color:{argb:dl}},bottom:{style:cl,color:{argb:dl}},right:{style:cl,color:{argb:dl}}}),hl=e=>{const{precision:t,formatType:n}=e,r=t>=0&&t?`.${"0".repeat(t)}`:"";return"percent"===n?{numFmt:r?`0${r}%`:"0%"}:"finance"===n?{numFmt:r?`#,##0${r}`:"#,##0"}:r?{numFmt:`0${r}`}:null},fl=()=>{const{prefixCls:e,pivotRef:t,columns:n,countMethod:r,summationData:a}=el(),{t:i}=U(),{exportXLSX:o}=(()=>{const{size:e}=el(),{t}=U(),{rowHeightMaps:n}=Qa,r=(e,t)=>e.find((e=>e.text==t))?.value??t??"";return{exportXLSX:async(r,a,i,l)=>{const{columns:o,footSummation:s}=r,c=n[e],d=_n(o),u=[],m=[],p=[];let h=0;const f={};d.forEach((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;f[t]=or(e.title),p.push({key:t,width:(n||r)/8})})),u.push(f),h+=u.length;const g=a.map(((e,t)=>{const n={};return d.forEach(((r,a)=>{const i=["percent","finance"].includes(r.formatType);n[r.dataIndex]=i?Qn(e,r.dataIndex):l(e,t,r,a)})),n._level=e._level,n._groupLevel=e._groupLevel,n}));h+=g.length,s&&i(d,a).forEach(((e,n)=>{const r={};d.forEach(((n,i)=>{const{dataIndex:l,summation:o}=n,s=o?.render?o.render(a):Qn(e,l);r[l]=0===i&&""===s?t("qm.table.config.summaryText"):Z(s)?lr(s).join(""):s})),m.push(r)}));const{sheetName:y,useStyle:b}=r,v=new(pi().Workbook),x=v.addWorksheet(y);x.columns=p,x.addRows(u).forEach((e=>{b&&ul(e,c),e.eachCell((e=>{const t=x.getColumn(e.col),n=qn(o,t.key),{align:r,theadAlign:a}=n;ml(e,a||r),b&&Object.assign(e,{font:{bold:!0,color:{argb:sl}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:"f5f5f5"}},border:pl()})}))})),x.addRows(g).forEach(((e,t)=>{const{_level:n,_groupLevel:r}=g[t];b&&ul(e,c),e.eachCell(((e,t)=>{const a=x.getColumn(e.col),i=qn(o,a.key),{align:l}=i;ml(e,1===t||void 0===r?l:"right"),Object.assign(e,hl(i)),b&&Object.assign(e,{font:{color:{argb:sl}},border:pl()}),1===Number(e.col)&&n&&(e.alignment={...e.alignment,indent:n})}))})),s&&x.addRows(m).forEach((e=>{b&&ul(e,c),e.eachCell(((e,t)=>{const n=x.getColumn(e.col),r=qn(o,n.key),{align:a}=r;ml(e,1===t?a:"right"),Object.assign(e,hl(r)),b&&Object.assign(e,{font:{color:{argb:sl}},border:pl()})}))})),[].forEach((({s:e,e:t})=>{x.mergeCells(e.r+1,e.c+1,t.r+1,t.c+1)}));const E=await v.xlsx.writeBuffer();return new Blob([E],{type:"application/octet-stream"})},importXLSX:(e,n)=>{const{columns:a,file:i}=e,l=_n(a),o=new FileReader;o.onerror=()=>{R.message.error(t("qm.table.import.error"))},o.onload=e=>{const a=l.map((e=>or(e.title))),i=new(pi().Workbook),o=e.target;o?i.xlsx.load(o.result).then((e=>{const i=e.worksheets[0];if(i){const e=i.getSheetValues(),o=e.findIndex((e=>e&&e.length>0)),s=e[o],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(a,s);if(c){const t=e.slice(o+1).map((e=>{const t={};e.forEach(((e,n)=>{let r=e;Array.isArray(r?.richText)&&(r=r.richText.map((e=>e.text)).join("")),(0,X.isPlainObject)(r)&&"text"in r&&(r=r.text),(0,X.isDate)(r)&&(r=ar(r,Ma)),r?.formula&&(r=r.result??r.value),t[s[n]]=r}));const n={};return a.forEach(((e,a)=>{const{dataIndex:i,dictItems:o}=l[a];Array.isArray(o)&&(t[e]?.toString().includes(",")?t[e]=t[e].split(",").map((e=>r(o,e))).filter((e=>""!==e)):t[e]=r(o,t[e])),Zn(n,i,t[e])})),n}));n?.(t)}else R.message.error(t("qm.table.import.error"))}else R.message.error(t("qm.table.import.error"))})):R.message.error(t("qm.table.import.error"))},o.readAsArrayBuffer(i)}}})(),{getTitleFromCellValue:s}=ci(),d=[{text:i("qm.pivotGrid.count.records"),value:"count"},{text:i("qm.pivotGrid.count.unique"),value:"unique"},{text:i("qm.pivotGrid.count.empty"),value:"empty"},{text:i("qm.pivotGrid.count.notEmpty"),value:"notEmpty"},{text:i("qm.pivotGrid.count.sum"),value:"sum"},{text:i("qm.pivotGrid.count.max"),value:"max"},{text:i("qm.pivotGrid.count.min"),value:"min"},{text:i("qm.pivotGrid.count.avg"),value:"avg"}],u={columns:Fn(n),fileName:c()().format(Ka),fileType:"xlsx",sheetName:"sheet1",footSummation:!1,useStyle:!1},m=(e,t,n,r)=>{const{dataIndex:a,precision:i,formatType:l}=n;if(Ui(e))return Qn(e,a);let o=s(e,n,t,r);return i>=0&&!l&&""!==o&&(o=Number(o)),o},p=()=>{if(!r||!Object.keys(r).length)return[];const e={};return u.columns.map((e=>e.dataIndex)).forEach(((t,n)=>{if(n>0){let n="";r?.[t]&&(n=d.find((e=>e.value===r[t])).text+" "+a.total[t]),Zn(e,t,n)}})),[e]},h=async e=>{const t=await o({...u,footSummation:!!Object.keys(r).length},e,p,m);Dt(t,`${c()().format(Ka)}.xlsx`)},f=[{key:"1",label:l().createElement(l().Fragment,null,l().createElement(we.FolderOutlined,{style:{marginRight:4}})," ",i("qm.pivotGrid.export.group")),onClick:()=>{h((()=>{const e=[];let i=0;return t.current.flatGroupData.forEach((t=>{const l={...t};Ui(t)?(l._level=t._groupLevel,u.columns.map((e=>e.dataIndex)).forEach(((e,i)=>{if(0===i)Zn(l,e,s(t._record,n.find((e=>e.dataIndex===t._fieldName)),0,0));else{let n="";r?.[e]&&(n=d.find((t=>t.value===r[e])).text+" "+Gi(a,t.id).subtotal[e]),Zn(l,e,n)}})),i=t._groupLevel):i>0&&(l._level=t._level+i+1),e.push(l)})),e})())}},{key:"2",label:l().createElement(l().Fragment,null,l().createElement(we.BarsOutlined,{style:{marginRight:4}})," ",i("qm.pivotGrid.export.list")),onClick:()=>{h(Array.from(t.current.keyRecordMap.values()))}}];return l().createElement(R.Dropdown,{trigger:["click"],menu:{items:f},className:xe()("action-btn"),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:140}},l().createElement("span",null,l().createElement(we.DownloadOutlined,{className:"icon"}),i("qm.pivotGrid.export.text")))},gl=()=>{const{prefixCls:e,pivotRef:t,groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o,setContext:s}=el(),{uniqueKey:d}=t.current.props,{t:u}=U(),m=l().useMemo((()=>d?`grid_conf_${d}`:""),[d]),p=l().useRef({}),[h,f]=l().useState([]),[g,y]=l().useState({}),[b,v]=l().useState(""),x=(e,t)=>{y((n=>Object.assign({},n,{[e]:t??!n[e]})))};l().useLayoutEffect((()=>{E()}),[]),He((()=>{w()}),[h]);const E=async()=>{try{if(!m)return;const e=await Mi().getItem(m);Array.isArray(e)&&(f(e),y(e.reduce(((e,t)=>(t.id&&(e[t.id]=!1),e)),{})))}catch(e){}},w=async()=>{try{if(!m)return;await Mi().setItem(m,h)}catch(e){}},C=()=>{const e=ir();f([{id:e,label:c()().format(Ka),value:{groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o}},...h]),re((()=>x(e,!0)))};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"label",style:{padding:"6px 15px 10px"}},l().createElement("span",null,u("qm.pivotGrid.saved.title"))),l().createElement("div",{className:"list"},l().createElement("ul",null,h.map((e=>l().createElement("li",{key:e.id,className:xe()("ant-dropdown-menu-item sort-item",{active:e.id===b}),onClick:()=>(e=>{if(g[e.id])return;const t=b!==e.id,n=t?e.value:p.current;s({groupList:n.groupList,filterList:n.filterList,sorterList:n.sorterList,colorList:n.colorList,countMethod:n.countMethod}),v(t?e.id:"")})(e)},l().createElement("div",{className:"label",style:{width:200}},g[e.id]?l().createElement(R.Input,{size:"small",autoFocus:!0,defaultValue:e.label,style:{width:"100%",marginLeft:-8},onBlur:t=>{const{value:n}=t.target;n!==e.label&&(e.label=n,f([...h])),x(e.id,!1)}}):l().createElement("span",null,e.label)),l().createElement("button",{className:"button-icon",onClick:t=>{t.stopPropagation(),x(e.id)}},g[e.id]?l().createElement(we.CheckOutlined,null):l().createElement(we.EditOutlined,null)),l().createElement("button",{className:"button-icon",style:{marginLeft:4},onClick:t=>{var n;t.stopPropagation(),n=e.id,f(h.filter((e=>e.id!==n)))}},l().createElement(we.CloseOutlined,null))))))),l().createElement("div",{className:"add-record",style:{padding:10}},l().createElement("span",{className:"insert",onClick:C},l().createElement(we.PlusOutlined,{className:"icon"}),u("qm.pivotGrid.saved.add")))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomRight",overlayStyle:{minWidth:280},onOpenChange:e=>{var t;t=e?{groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o}:{},p.current=t}},l().createElement("span",null,l().createElement(we.SaveOutlined,{className:"icon"}),u("qm.pivotGrid.saved.text")))},yl=()=>{const{gridData:e}=el(),{t}=U();return l().createElement("div",{className:"alert-info"},l().createElement(we.InfoCircleOutlined,{className:"icon"}),t("qm.table.alert.total",{total:(()=>{let t=0;return function e(n){n.forEach((n=>{Array.isArray(n.children)&&e(n.children),t+=1}))}(e),t})()}))},bl={left:{points:["cr","cl"]},right:{points:["cl","cr"]},top:{points:["bc","tc"]},bottom:{points:["tc","bc"]},topLeft:{points:["bl","tl"]},leftTop:{points:["tr","tl"]},topRight:{points:["br","tr"]},rightTop:{points:["tl","tr"]},bottomRight:{points:["tr","br"]},rightBottom:{points:["bl","br"]},bottomLeft:{points:["tl","bl"]},leftBottom:{points:["br","bl"]}},vl={topLeft:{points:["bl","tc"]},leftTop:{points:["tr","cl"]},topRight:{points:["br","tc"]},rightTop:{points:["tl","cr"]},bottomRight:{points:["tr","bc"]},rightBottom:{points:["bl","cr"]},bottomLeft:{points:["tl","bc"]},leftBottom:{points:["br","cl"]}},xl=new Set(["topLeft","topRight","bottomLeft","bottomRight","leftTop","leftBottom","rightTop","rightBottom"]);function El(e){const{arrowWidth:t,autoAdjustOverflow:n,arrowPointAtCenter:r,offset:a,borderRadius:i,visibleFirst:l}=e,o=t/2,s={};return Object.keys(bl).forEach((e=>{const c={...r&&vl[e]||bl[e],offset:[0,0],dynamicInset:!0};switch(s[e]=c,xl.has(e)&&(c.autoArrow=!1),e){case"top":case"topLeft":case"topRight":c.offset[1]=-o-a;break;case"bottom":case"bottomLeft":case"bottomRight":c.offset[1]=o+a;break;case"left":case"leftTop":case"leftBottom":c.offset[0]=-o-a;break;case"right":case"rightTop":case"rightBottom":c.offset[0]=o+a}const d=function(e){const{contentRadius:t,limitVerticalRadius:n}=e,r=t>12?t+2:12;return{arrowOffsetHorizontal:r,arrowOffsetVertical:n?8:r}}({contentRadius:i,limitVerticalRadius:!0});if(r)switch(e){case"topLeft":case"bottomLeft":c.offset[0]=-d.arrowOffsetHorizontal-o;break;case"topRight":case"bottomRight":c.offset[0]=d.arrowOffsetHorizontal+o;break;case"leftTop":case"rightTop":c.offset[1]=2*-d.arrowOffsetHorizontal+o;break;case"leftBottom":case"rightBottom":c.offset[1]=2*d.arrowOffsetHorizontal-o}c.overflow=function(e,t,n,r){if(!1===r)return{adjustX:!1,adjustY:!1};const a=r&&"object"==typeof r?r:{},i={};switch(e){case"top":case"bottom":i.shiftX=2*t.arrowOffsetHorizontal+n,i.shiftY=!0,i.adjustY=!0;break;case"left":case"right":i.shiftY=2*t.arrowOffsetVertical+n,i.shiftX=!0,i.adjustX=!0}const l={...i,...a};return l.shiftX||(l.adjustX=!0),l.shiftY||(l.adjustY=!0),l}(e,d,t,n),l&&(c.htmlRegion="visibleFirst")})),s}const wl=require("@rc-component/trigger");var Cl=r.n(wl);const Sl=require("@rc-component/color-picker");var Nl=r.n(Sl);const Il=e=>{const{value:t,defaultValue:n,disabled:r,disabledAlpha:a,className:i,style:o,onChange:s,onChangeComplete:c}=e,[d,u]=Ja("",{value:t,defaultValue:n}),m=e=>({hex:e.toHexString(),rgb:e.toRgbString(),hsb:e.toHsbString()}),p=El({offset:0,arrowWidth:16,borderRadius:6}),h=Ee("color-picker");return l().createElement(Cl(),{action:["click"],prefixCls:h,popupPlacement:"bottomLeft",builtinPlacements:p,popup:()=>l().createElement(Nl(),{prefixCls:h,value:d,disabled:r,disabledAlpha:a,onChange:(e,t)=>{u(e.toRgbString()),s?.(m(e),t)},onChangeComplete:(e,t)=>{c?.(m(e),t)}})},l().createElement("div",{className:xe()(`${h}-btn`,i),style:o},l().createElement(Sl.ColorBlock,{color:d,prefixCls:h})))};Il.displayName="ColorPicker";const Tl=Il,Rl=()=>{const{prefixCls:e,pivotRef:t,getRowKey:n,columns:r,colorList:a,setColorList:i,setFillColor:o}=el(),{flatGroupData:s}=t.current,{t:c}=U(),d=l().useRef([]),u=l().useMemo((()=>a.filter((e=>e.fieldName&&e.color&&("nil"===e.expression||!ie(e.value)||"col"===e.mode)))),[a]),m=l().useMemo((()=>r.map((e=>({label:or(e.title),value:e.dataIndex})))),[r]),p=l().useMemo((()=>Wi(r)),[r]),h=[{label:c("qm.pivotGrid.fillColor.cell"),value:"cell"},{label:c("qm.pivotGrid.fillColor.row"),value:"row"},{label:c("qm.pivotGrid.fillColor.col"),value:"col"}];He((()=>{f()}),[l().useMemo((()=>{const e=u.map((e=>({[e.color]:`${e.mode},${e.fieldName},${e.expression},${e.value??""}`})));return(0,X.isEqual)(e,d.current)?d.current:(d.current=e,e)}),[u])]);const f=Et((()=>{const e=[];u.forEach((t=>{const r=cr([{...oe(t,["value"]),expression:"nil"!==t.expression?t.expression:"==",condition:t.value}]),a=An(s.filter((e=>!Ui(e))),r);if("cell"===t.mode||"col"===t.mode)for(let r=0;r<a.length;r++)e.push({color:t.color,rowKey:n(a[r],a[r].index),dataIndex:t.fieldName});if("row"===t.mode)for(let r=0;r<a.length;r++){const i=n(a[r],a[r].index);for(let n=0;n<p.length;n++)e.push({color:t.color,rowKey:i,dataIndex:p[n].dataIndex})}})),o(e)}),200),g=()=>{i([...a,{type:"",bracketLeft:"",fieldName:"",expression:"",value:null,bracketRight:"",logic:"and",color:"",mode:"cell"}])},y=(e,t,n)=>{if(Object.assign(t,{[e]:n}),"fieldName"===e){const e=r.find((e=>e.dataIndex===n)).filter?.type||"text";Object.assign(t,{type:e,expression:b(e)[0].value,value:""})}"expression"===e&&"nil"===n&&Object.assign(t,{value:""}),i([...a])},b=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",label:c("qm.table.highSearch.gtText")},{value:"<",label:c("qm.table.highSearch.ltText")},{value:">=",label:c("qm.table.highSearch.gteText")},{value:"<=",label:c("qm.table.highSearch.lteText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",label:c("qm.table.highSearch.inText")},{value:"nin",label:c("qm.table.highSearch.ninText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",label:c("qm.table.highSearch.likeText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")},{value:"nil",label:c("qm.table.highSearch.nullText")}]}return t};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.fillColor.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:a,setList:e=>{const t=e.map((e=>e.fieldName)),n=a.map((e=>e.fieldName));(0,X.isEqual)(t,n)||i(e)}},a.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(Tl,{defaultValue:n.color,style:{marginLeft:5},onChangeComplete:e=>y("color",n,e.hex)}),l().createElement(R.Select,{value:n.mode,options:h,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:90,marginLeft:10,marginRight:20},onChange:e=>y("mode",n,e)}),l().createElement(R.Select,{value:n.fieldName||void 0,options:m,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:e=>y("fieldName",n,e)}),"col"!==n.mode&&l().createElement(R.Select,{value:n.expression||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),options:b(n.type),style:{width:100,margin:"0 10px"},onChange:e=>y("expression",n,e)}),"col"!==n.mode&&(e=>{switch(e.type){case"number":return l().createElement(R.InputNumber,{defaultValue:e.value,style:{width:150},onChange:t=>{y("value",e,ie(t)?"":t)}});case"date":return l().createElement(_,{popupClassName:Qa.popupClassName,defaultValue:rr(e.value,"YYYY-MM-DD")??void 0,picker:"date",allowClear:!0,style:{width:150},onChange:t=>{y("value",e,ar(t,"YYYY-MM-DD"))}});case"checkbox":case"radio":{const t=r.find((t=>t.dataIndex===e.fieldName))?.dictItems||[];return l().createElement(R.Select,{mode:"checkbox"===e.type?"multiple":void 0,defaultValue:e.value||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:t=>{y("value",e,t)}},t.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))}default:return l().createElement(R.Input,{value:e.value,style:{width:150},disabled:"nil"===e.expression,onChange:t=>{y("value",e,t.target.value)}})}})(n),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(a.filter((t=>t!==e)))})(n)}))));var n})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:g},l().createElement(we.PlusOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!u.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.BgColorsOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.text"),u.length?`(${u.length})`:null))},Ol=()=>l().createElement("div",{className:"top-bar"},l().createElement(be,{size:4},l().createElement(yl,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(ll,null),l().createElement(tl,null),l().createElement(nl,null),l().createElement(rl,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(ol,null),l().createElement(Rl,null),l().createElement(al,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(fl,null)),l().createElement(be,{size:4},l().createElement(gl,null))),kl=l().createContext(void 0),Pl=e=>{const{scrollbar:t}=e,{pivotRef:n,getRowKey:r,columns:a,groupGridData:i,setPivotGridRef:o}=el(),{rowSelection:s,treeExpandable:c,rowHighlight:d}=n.current.props,u=c?.defaultExpandAllRows??!0,m=l().useRef({bodyEl:null,rowVirtualizer:null}),[p,h]=l().useState({gridRef:m,scrollbarRef:t,selectionKeys:s?.defaultSelectedRowKeys??[],treeExpandKeys:u?Vn(n.current.originGridData,(e=>r(e,e.index))):[],highlightKey:"",checkedColumnKey:"",updateLayout:0,clicked:[],isPingLeft:!1}),f=l().useMemo((()=>Math.max(0,Yi(i)-1)),[i]),g=e=>{h((t=>{const n={...t};let r=!1;return Object.keys(e).forEach((a=>{const i=a;Object.is(t[i],e[i])||(n[i]=e[i],r=!0)})),r?n:t}))},y=(e,t)=>{p.gridRef.current[e]=t};l().useLayoutEffect((()=>{N(),w()}),[a]),l().useLayoutEffect((()=>{s?.selectedRowKeys&&g({selectionKeys:s.selectedRowKeys})}),[s?.selectedRowKeys]),l().useLayoutEffect((()=>{void 0!==d?.currentRowKey&&g({highlightKey:d.currentRowKey})}),[d?.currentRowKey]);const b=e=>{Array.isArray(s?.selectedRowKeys)||g({selectionKeys:e})},v=e=>{g({treeExpandKeys:e})},x=e=>{void 0===d?.currentRowKey&&g({highlightKey:e})},E=e=>{g({checkedColumnKey:e})},w=()=>{g({updateLayout:p.updateLayout+1})},C=e=>{yr(e,p.clicked,!0)||g({clicked:e})},S=e=>{g({isPingLeft:e})},N=()=>{const e=t.current.container.clientWidth,{defaultColumnWidth:n}=Qa,r=[];let i=0;if(a.forEach((e=>{"number"==typeof e.width?(e.renderWidth=e.width,i+=e.width):(e.renderWidth=void 0,r.push(e))})),r.length>0){const t=a.reduce(((e,t)=>e+(t.width||t.minWidth||n)),0);if(t<=e){const a=e-t;if(1===r.length)r[0].renderWidth=(r[0].minWidth||n)+a;else{const e=a/r.reduce(((e,t)=>e+(t.minWidth||n)),0);let t=0;r.forEach(((r,a)=>{if(0===a)return;const i=Math.floor((r.minWidth||n)*e);t+=i,r.renderWidth=(r.minWidth||n)+i})),r[0].renderWidth=(r[0].minWidth||n)+a-t}}else r.forEach((e=>{e.renderWidth=e.minWidth||n}))}else i=a.reduce(((e,t)=>e+(t.renderWidth=t.width||t.minWidth||n)),0)},I=l().useMemo((()=>({...p,indentDepth:f,setContext:g,setGridLayoutRef:y,setSelectionKeys:b,setTreeExpandKeys:v,setHighlightKey:x,setCheckColumnKey:E,forceUpdateLayout:w,setClicked:C,setPingLeft:S,updateColumnsWidth:N})),[p,f]);return l().createElement(kl.Provider,{value:I},e.children)},Ll=()=>l().useContext(kl),Al=require("@rc-component/portal");var _l=r.n(Al);const Fl=e=>{const{column:t}=e,{columns:n,setColumns:r}=el(),{scrollbarRef:a}=Ll(),i=l().useRef(null),[o,s]=l().useState(!1),c=l().useRef(document.onselectstart),d=l().useRef({startX:0,originSizeX:0,columnWidth:0}),u=e=>{d.current=Object.assign({},d.current,e)},m=e=>{if(1!==e.buttons)return p();const n=e.clientX-d.current.startX,r=(t.width||t.renderWidth)+n;r<(t.minWidth||Qa.defaultColumnWidth)||(u({columnWidth:r}),i.current.style.left=`${d.current.originSizeX+n}px`)},p=()=>{a.current.container.style.cursor="",t.width=d.current.columnWidth,r([...n]),re((()=>s(!1))),$e(document,"mousemove",m),$e(document,"mouseup",p),u({startX:0,originSizeX:0,columnWidth:0}),h()},h=()=>{document.onselectstart!==c.current&&(document.onselectstart=c.current)};return l().createElement(l().Fragment,null,l().createElement("div",{className:"resize-bar",onMouseDown:e=>{e.preventDefault(),a.current.container.style.cursor="col-resize";const n=Gn(e.target,a.current.container).left-a.current.scrollLeft+3;u({startX:e.clientX,originSizeX:n,columnWidth:t.width||t.renderWidth||0}),qe(document,"mousemove",m),qe(document,"mouseup",p),s(!0),re((()=>i.current.style.left=`${n}px`)),c.current=document.onselectstart,document.onselectstart=()=>!1}}),l().createElement(_l(),{open:o,getContainer:a.current?.container},l().createElement("div",{ref:i,className:"resize-line"})))},Dl=e=>{const{left:t}=e,{scrollbarRef:n,isPingLeft:r,setPingLeft:a}=Ll(),i=G((e=>{a(e.target.scrollLeft>1)}));return l().useEffect((()=>{const e=n.current.container.children[0];return e.addEventListener("scroll",i),()=>{e.removeEventListener("scroll",i)}}),[]),l().createElement(_l(),{open:!0,getContainer:n.current?.container},l().createElement("div",{className:xe()("fixed-line",{active:r}),style:{left:t}}))},Hl=()=>{const{pivotRef:e,columns:t}=el(),{indentDepth:n,updateLayout:r,checkedColumnKey:a,selectionKeys:i,setSelectionKeys:o,setCheckColumnKey:s}=Ll(),{rowSelection:c}=e.current.props,{selectionColumn:d}=Qa,{indentWidth:u,selectionColumnDefine:m}=Vi,p=l().useMemo((()=>Wi(t)),[t]),h=l().useMemo((()=>p.filter((e=>"left"===e.fixed))),[p]),f=l().useMemo((()=>p.filter((e=>"left"!==e.fixed))),[p]),g=l().useMemo((()=>"radio"!==c?.type),[c]),y=l().useMemo((()=>h.reduce(((e,t,r)=>e+(t.width||t.renderWidth||0)+(1===r?n*u:0)),0)),[n,r,h]),b=l().useMemo((()=>i.length>0&&i.length===e.current.keyRecordMap.size),[i]),v=l().useMemo((()=>i.length>0&&i.length<e.current.keyRecordMap.size),[i]),x=(t,r)=>l().createElement("div",{className:xe()(r?"fixed-left":"no-fixed"),style:{width:r?y:""}},t.map(((i,p)=>{const{dataIndex:h,title:f,align:y,width:x,renderWidth:E}=i,w={"selection-column":h===d,"col--center":"center"===y,"col--right":"right"===y,"col--checked":a===h},C=r&&1===p||!r&&p===t.length-1?n*u:0,S={width:`${(x||E||0)+C}px`,minWidth:`${(x||E||0)+C}px`};return l().createElement("div",{key:h,className:xe()("table-cell",w),style:S,onClick:()=>{return e=h,void([m.dataIndex].includes(e)||s(a!==e?e:""));var e}},h!==d?l().createElement("span",{className:"cell"},f):c&&g?l().createElement(R.Checkbox,{checked:b,indeterminate:v,onChange:t=>(t=>{const n=t?Array.from(e.current.keyRecordMap.keys()):[];o(n),c?.onChange?.(n,t?Array.from(e.current.keyRecordMap.values()):[])})(t.target.checked)}):"#",h!==d&&l().createElement(Fl,{column:i}))})));return l().createElement("div",{className:"header"},x(h,!0),(e=>x(e))(f),l().createElement(Dl,{left:y}))},ql=require("react-dom");function $l(e,t,n){let r,a=n.initialDeps??[];function i(){let i;n.key&&n.debug?.()&&(i=Date.now());const l=e(),o=l.length!==a.length||l.some(((e,t)=>a[t]!==e));if(!n.noCache?.()&&!o)return r;let s;if(a=l,n.key&&n.debug?.()&&(s=Date.now()),r=t(...l),n.key&&n.debug?.()){const e=Math.round(100*(Date.now()-i))/100,t=Math.round(100*(Date.now()-s))/100,r=t/16,a=(e,t)=>{for(e=String(e);e.length<t;)e=" "+e;return e};console.info(`%c⏱ ${a(t,5)} / ${a(e,5)} ms`,`\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(0,Math.min(120-120*r,120))}deg 100% 31%);`,n?.key)}return n?.onChange?.(r),r}return i.updateDeps=e=>{a=e},i}function Ml(e,t){if(void 0===e)throw new Error("Unexpected undefined"+(t?`: ${t}`:""));return e}const Kl=(e,t,n)=>{let r;return function(...a){e.clearTimeout(r),r=e.setTimeout((()=>t.apply(this,a)),n)}};function zl(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const jl=e=>e,Vl=e=>{const t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},Wl=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=e.targetWindow;if(!r)return;const a=e=>{const{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(a(n.getBoundingClientRect()),!r.ResizeObserver)return()=>{};const i=new r.ResizeObserver((e=>{const t=e[0];if(t?.borderBoxSize){const e=t.borderBoxSize[0];if(e)return void a({width:e.inlineSize,height:e.blockSize})}a(n.getBoundingClientRect())}));return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},Bl={passive:!0},Ul="undefined"==typeof window||"onscrollend"in window,Gl=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=e.targetWindow;if(!r)return;let a=0;const i=e.options.useScrollendEvent&&Ul?()=>{}:Kl(r,(()=>{t(a,!1)}),e.options.isScrollingResetDelay),l=r=>()=>{const{horizontal:l,isRtl:o}=e.options;a=l?n.scrollLeft*(o?-1:1):n.scrollTop,i(),t(a,r)},o=l(!0),s=l(!1);return s(),n.addEventListener("scroll",o,Bl),n.addEventListener("scrollend",s,Bl),()=>{n.removeEventListener("scroll",o),n.removeEventListener("scrollend",s)}},Yl=(e,t,n)=>{if(t?.borderBoxSize){const e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?"inlineSize":"blockSize"])}return Math.round(e.getBoundingClientRect()[n.options.horizontal?"width":"height"])},Xl=(e,{adjustments:t=0,behavior:n},r)=>{const a=e+t;r.scrollElement?.scrollTo?.({[r.options.horizontal?"left":"top"]:a,behavior:n})};class Ql{constructor(e){zl(this,"unsubs",[]),zl(this,"options",void 0),zl(this,"scrollElement",null),zl(this,"targetWindow",null),zl(this,"isScrolling",!1),zl(this,"scrollToIndexTimeoutId",null),zl(this,"measurementsCache",[]),zl(this,"itemSizeCache",new Map),zl(this,"pendingMeasuredCacheIndexes",[]),zl(this,"scrollRect",null),zl(this,"scrollOffset",null),zl(this,"scrollDirection",null),zl(this,"scrollAdjustments",0),zl(this,"shouldAdjustScrollPositionOnItemSizeChange",void 0),zl(this,"elementsCache",new Map),zl(this,"observer",(()=>{let e=null;const t=()=>e||(this.targetWindow&&this.targetWindow.ResizeObserver?e=new this.targetWindow.ResizeObserver((e=>{e.forEach((e=>{this._measureElement(e.target,e)}))})):null);return{disconnect:()=>{t()?.disconnect(),e=null},observe:e=>t()?.observe(e,{box:"border-box"}),unobserve:e=>t()?.unobserve(e)}})()),zl(this,"range",null),zl(this,"setOptions",(e=>{Object.entries(e).forEach((([t,n])=>{void 0===n&&delete e[t]})),this.options={debug:!1,noCache:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:jl,rangeExtractor:Vl,onChange:()=>{},measureElement:Yl,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!0,...e}})),zl(this,"notify",(e=>{this.options.onChange?.(this,e)})),zl(this,"maybeNotify",$l((()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null])),(e=>{this.notify(e)}),{key:!1,noCache:()=>this.options.noCache,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]})),zl(this,"cleanup",(()=>{this.unsubs.filter(Boolean).forEach((e=>e())),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null})),zl(this,"_didMount",(()=>()=>{this.cleanup()})),zl(this,"_willUpdate",(()=>{const e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e)return void this.maybeNotify();this.scrollElement=e,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach((e=>{this.observer.observe(e)})),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,(e=>{this.scrollRect=e,this.maybeNotify()}))),this.unsubs.push(this.options.observeElementOffset(this,((e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()<e?"forward":"backward":null,this.scrollOffset=e,this.isScrolling=t,this.maybeNotify()})))}})),zl(this,"getSize",(()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0))),zl(this,"getScrollOffset",(()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??("function"==typeof this.options.initialOffset?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0))),zl(this,"getFurthestMeasurement",((e,t)=>{const n=new Map,r=new Map;for(let a=t-1;a>=0;a--){const t=e[a];if(n.has(t.lane))continue;const i=r.get(t.lane);if(null==i||t.end>i.end?r.set(t.lane,t):t.end<i.end&&n.set(t.lane,!0),n.size===this.options.lanes)break}return r.size===this.options.lanes?Array.from(r.values()).sort(((e,t)=>e.end===t.end?e.index-t.index:e.end-t.end))[0]:void 0})),zl(this,"getMeasurementOptions",$l((()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled]),((e,t,n,r,a)=>(this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:a})),{key:!1})),zl(this,"getMeasurements",$l((()=>[this.getMeasurementOptions(),this.itemSizeCache]),(({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:a},i)=>{if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),[];0===this.measurementsCache.length&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((e=>{this.itemSizeCache.set(e.key,e.size)})));const l=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const o=this.measurementsCache.slice(0,l);for(let a=l;a<e;a++){const e=r(a),l=1===this.options.lanes?o[a-1]:this.getFurthestMeasurement(o,a),s=l?l.end+this.options.gap:t+n,c=i.get(e),d="number"==typeof c?c:this.options.estimateSize(a),u=s+d,m=l?l.lane:a%this.options.lanes;o[a]={index:a,start:s,size:d,end:u,key:e,lane:m}}return this.measurementsCache=o,o}),{key:!1,debug:()=>this.options.debug})),zl(this,"calculateRange",$l((()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset()]),((e,t,n)=>this.range=e.length>0&&t>0?function({measurements:e,outerSize:t,scrollOffset:n}){const r=e.length-1,a=Zl(0,r,(t=>e[t].start),n);let i=a;for(;i<r&&e[i].end<n+t;)i++;return{startIndex:a,endIndex:i}}({measurements:e,outerSize:t,scrollOffset:n}):null),{key:!1,debug:()=>this.options.debug})),zl(this,"getVirtualIndexes",$l((()=>{let e=null,t=null;const n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]}),((e,t,n,r,a)=>null===r||null===a?[]:e({startIndex:r,endIndex:a,overscan:t,count:n})),{key:!1,debug:()=>this.options.debug})),zl(this,"indexFromElement",(e=>{const t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)})),zl(this,"_measureElement",((e,t)=>{const n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;const a=r.key,i=this.elementsCache.get(a);i!==e&&(i&&this.observer.unobserve(i),this.observer.observe(e),this.elementsCache.set(a,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))})),zl(this,"resizeItem",((e,t)=>{const n=this.measurementsCache[e];if(!n)return;const r=t-(this.itemSizeCache.get(n.key)??n.size);0!==r&&((void 0!==this.shouldAdjustScrollPositionOnItemSizeChange?this.shouldAdjustScrollPositionOnItemSizeChange(n,r,this):n.start<this.getScrollOffset()+this.scrollAdjustments)&&this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=r,behavior:void 0}),this.pendingMeasuredCacheIndexes.push(n.index),this.itemSizeCache=new Map(this.itemSizeCache.set(n.key,t)),this.notify(!1))})),zl(this,"measureElement",(e=>{e?this._measureElement(e,void 0):this.elementsCache.forEach(((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))}))})),zl(this,"getVirtualItems",$l((()=>[this.getVirtualIndexes(),this.getMeasurements()]),((e,t)=>{const n=[];for(let r=0,a=e.length;r<a;r++){const a=t[e[r]];n.push(a)}return n}),{key:!1,debug:()=>this.options.debug})),zl(this,"getVirtualItemForOffset",(e=>{const t=this.getMeasurements();if(0!==t.length)return Ml(t[Zl(0,t.length-1,(e=>Ml(t[e]).start),e)])})),zl(this,"getOffsetForAlignment",((e,t)=>{const n=this.getSize(),r=this.getScrollOffset();"auto"===t&&e>=r+n&&(t="end"),"end"===t&&(e-=n);const a=this.options.horizontal?"scrollWidth":"scrollHeight",i=(this.scrollElement?"document"in this.scrollElement?this.scrollElement.document.documentElement[a]:this.scrollElement[a]:0)-n;return Math.max(Math.min(i,e),0)})),zl(this,"getOffsetForIndex",((e,t="auto")=>{e=Math.max(0,Math.min(e,this.options.count-1));const n=this.measurementsCache[e];if(!n)return;const r=this.getSize(),a=this.getScrollOffset();if("auto"===t)if(n.end>=a+r-this.options.scrollPaddingEnd)t="end";else{if(!(n.start<=a+this.options.scrollPaddingStart))return[a,t];t="start"}const i=n.start-this.options.scrollPaddingStart+(n.size-r)/2;switch(t){case"center":return[this.getOffsetForAlignment(i,t),t];case"end":return[this.getOffsetForAlignment(n.end+this.options.scrollPaddingEnd,t),t];default:return[this.getOffsetForAlignment(n.start-this.options.scrollPaddingStart,t),t]}})),zl(this,"isDynamicMode",(()=>this.elementsCache.size>0)),zl(this,"cancelScrollToIndex",(()=>{null!==this.scrollToIndexTimeoutId&&this.targetWindow&&(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),this.scrollToIndexTimeoutId=null)})),zl(this,"scrollToOffset",((e,{align:t="start",behavior:n}={})=>{this.cancelScrollToIndex(),"smooth"===n&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})})),zl(this,"scrollToIndex",((e,{align:t="auto",behavior:n}={})=>{e=Math.max(0,Math.min(e,this.options.count-1)),this.cancelScrollToIndex(),"smooth"===n&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");const r=this.getOffsetForIndex(e,t);if(!r)return;const[a,i]=r;this._scrollToOffset(a,{adjustments:void 0,behavior:n}),"smooth"!==n&&this.isDynamicMode()&&this.targetWindow&&(this.scrollToIndexTimeoutId=this.targetWindow.setTimeout((()=>{if(this.scrollToIndexTimeoutId=null,this.elementsCache.has(this.options.getItemKey(e))){const[a]=Ml(this.getOffsetForIndex(e,i));t=a,r=this.getScrollOffset(),Math.abs(t-r)<1||this.scrollToIndex(e,{align:i,behavior:n})}else this.scrollToIndex(e,{align:i,behavior:n});var t,r})))})),zl(this,"scrollBy",((e,{behavior:t}={})=>{this.cancelScrollToIndex(),"smooth"===t&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})})),zl(this,"getTotalSize",(()=>{const e=this.getMeasurements();let t;return t=0===e.length?this.options.paddingStart:1===this.options.lanes?e[e.length-1]?.end??0:Math.max(...e.slice(-this.options.lanes).map((e=>e.end))),Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)})),zl(this,"_scrollToOffset",((e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)})),zl(this,"measure",(()=>{this.itemSizeCache=new Map,this.notify(!1)})),this.setOptions(e)}}const Zl=(e,t,n,r)=>{for(;e<=t;){const a=(e+t)/2|0,i=n(a);if(i<r)e=a+1;else{if(!(i>r))return a;t=a-1}}return e>0?e-1:0},Jl="undefined"!=typeof document?l().useLayoutEffect:l().useEffect,eo=e=>(e=>{const t=l().useReducer((()=>({})),{})[1],n={...e,onChange:(n,r)=>{r?(0,ql.flushSync)(t):t(),e.onChange?.(n,r)}},[r]=l().useState((()=>new Ql(n)));return r.setOptions(n),Jl((()=>r._didMount()),[]),Jl((()=>r._willUpdate())),r})({observeElementRect:Wl,observeElementOffset:Gl,scrollToFn:Xl,...e}),to=e=>(e=>null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE)(e)?e.ownerDocument:document,no=(e,t)=>!t.map((e=>Array.from(document.querySelectorAll(e)))).flat().some((t=>t?.contains(e.target))),ro=(e,t)=>{const n=e.target;return!("button"in e&&e.button>0||n&&!to(n).contains(n)||t.current?.contains(n))};function ao({ref:e,handler:t,enabled:n=!0,omitClassNames:r=[]}){const a=G(t),l=i.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1});i.useEffect((()=>{if(!n)return;const i=t=>{ro(t,e)&&(l.current.isPointerDown=!0)},o=n=>{l.current.ignoreEmulatedMouseEvents?l.current.ignoreEmulatedMouseEvents=!1:t&&l.current.isPointerDown&&ro(n,e)&&no(n,r)&&(l.current.isPointerDown=!1,a(n))},s=n=>{l.current.ignoreEmulatedMouseEvents=!0,t&&l.current.isPointerDown&&ro(n,e)&&no(n,r)&&(l.current.isPointerDown=!1,a(n))},c=to(e.current);return c.addEventListener("mousedown",i,!0),c.addEventListener("mouseup",o,!0),c.addEventListener("touchstart",i,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",i,!0),c.removeEventListener("mouseup",o,!0),c.removeEventListener("touchstart",i,!0),c.removeEventListener("touchend",s,!0)}}),[t,e,a,l,n])}const io=e=>{const{column:t,keyPath:n,type:r}=e,{prefixCls:a,countMethod:i,summationData:o,setCountMethod:s}=el(),{t:c}=U(),{dataIndex:d,filter:u}=t,[m,p]=l().useState(!1),h=l().useMemo((()=>{const e=[{text:c("qm.pivotGrid.count.records"),value:"count",fn:Qi.count},{text:c("qm.pivotGrid.count.unique"),value:"unique",fn:Qi.unique},{text:c("qm.pivotGrid.count.empty"),value:"empty",fn:Qi.empty},{text:c("qm.pivotGrid.count.notEmpty"),value:"notEmpty",fn:Qi.notEmpty},{text:c("qm.pivotGrid.count.sum"),value:"sum",fn:Qi.sum},{text:c("qm.pivotGrid.count.max"),value:"max",fn:Qi.max},{text:c("qm.pivotGrid.count.min"),value:"min",fn:Qi.min},{text:c("qm.pivotGrid.count.avg"),value:"avg",fn:Qi.avg}];return"number"===u?.type?e:e.slice(0,-4)}),[]),f=l().useMemo((()=>{const e=i[d];return e?`${h.find((t=>t.value===e)).text} ${(t=o,a=n,a?Gi(t,a):t)?.[r]?.[d]??""}`:c("qm.pivotGrid.count.statistic");var t,a}),[o,i]);return l().createElement(R.Dropdown,{open:m,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"list"},h.map((e=>{const t=e.value===i[d];return l().createElement("li",{key:e.value,className:xe()("ant-dropdown-menu-item check-item",{active:t}),onClick:()=>{s({[d]:t?void 0:e.value}),p(!1)}},l().createElement("span",{className:"label"},e.text),l().createElement("i",{className:"icon"},l().createElement(we.CheckOutlined,null)))})))),className:xe()("count-select",{show:!!i[d]}),overlayClassName:`${a}__popper`,placement:"bottomRight",overlayStyle:{minWidth:140},onOpenChange:e=>p(e)},l().createElement("span",null,f," ",l().createElement(we.CaretDownOutlined,{className:"icon"})))},lo=(e,t)=>{const{pivotRef:n,columns:r,expandedKeys:a,searchResults:i,switchIndex:o,fillColorCells:s,setExpandedKeys:c}=el(),{gridRef:d,indentDepth:u,highlightKey:m,checkedColumnKey:p,selectionKeys:h,treeExpandKeys:f,setSelectionKeys:g,setTreeExpandKeys:y,setHighlightKey:b,setClicked:v}=Ll(),{keyRecordMap:x,isTree:E}=n.current,{bodyEl:w,rowVirtualizer:C}=d.current,{rowSelection:S,treeExpandable:N,rowHighlight:I,onRowEdit:T,onRowClick:O}=n.current.props,{t:k}=U(),{renderText:P,getTitleFromCellNode:L}=ci(),{selectionColumn:A,treeTable:_}=Qa,{indentWidth:F}=Vi,D=l().useMemo((()=>t?0:Wi(r).length-e.length),[r,e]),H=l().useMemo((()=>"radio"!==S?.type),[S]),q=(e,t)=>{const n=H?e?[...h,t]:h.filter((e=>e!==t)):[t];g(n),S?.onSelect?.(e,x.get(t)),S?.onChange?.(n,$(n))},$=e=>{const t=[];return e.forEach((e=>t.push(x.get(e)))),t},M=(e,t)=>i[o]?.rowKey===e&&i[o]?.dataIndex===t,K=(e,t)=>{const n=w.querySelectorAll(`li.table-row[data-row-key='${e}']`);Array.from(n).forEach((e=>{e.classList[t&&!C?.isScrolling?"add":"remove"]("row--hover")}))},z=(e,t,n,i)=>{const{dataIndex:o,width:s,renderWidth:d}=e,m={"expandable-column":o===A},p=1===t?(u-n._groupLevel)*F:0,h={width:`${(s||d||0)+p}px`,minWidth:`${(s||d||0)+p}px`};return l().createElement("div",{key:o,className:xe()("label-cell",m),style:h},o!==A?l().createElement(l().Fragment,null,1===t&&l().createElement("span",{className:"title"},(e=>{const{_record:t,_fieldName:n}=e,a=Qn(t,n),i=r.find((e=>e.dataIndex===n));return ie(a)||!i?l().createElement("span",{className:"empty"},k("qm.pivotGrid.group.empty")):i.render?i.render(a,t,i,0,0):P(a,i,t)})(n)),l().createElement(io,{column:e,keyPath:n.id,type:"subtotal"})):(e=>l().createElement("button",{className:xe()("button-icon",{expand:a.includes(e.id)}),onClick:()=>{return t=e.id,void c(a.includes(t)?a.filter((e=>e!==t)):[...a,t]);var t}},l().createElement(we.CaretRightOutlined,null)))(n))},j=(e,t,n,r,a)=>{const{dataIndex:i,width:o,renderWidth:c,align:d,render:u}=e,m=Qn(n,i),g=u?u(m,n,e,n.index,t):P(m,e,n),w=L(g),C=h.includes(a),k={"selection-column":i===A,"col--center":"center"===d,"col--right":"right"===d,"col--checked":p===i,active:M(a,i)},F={width:`${o||c||0}px`,minWidth:`${o||c||0}px`,backgroundColor:s.get(`${a}|${i}`)};return l().createElement("div",{key:i,"data-col-index":t,title:w,className:xe()("table-cell",k),style:F,onClick:t=>{i!==A&&(v([a,i]),I&&!I.disabled?.(n)&&(b(a),I.onChange?.(a,n)),O?.(n,e,t))}},i!==A?l().createElement(l().Fragment,null,E&&1===t&&l().createElement(l().Fragment,null,(D=n._level)?l().createElement("span",{key:D,className:`cell--indent indent-level-${D}`,style:{paddingLeft:D*_.textIndent+"px"}}):null,((e,t)=>{const n=N?.rowExpandable?.(e);return l().createElement(we.DownOutlined,{className:xe()("cell--expand",{fold:!f.includes(t),disabled:n}),style:{visibility:e.children?.length>0?"visible":"hidden"},onClick:()=>{n||(e=>{const t=f.includes(e),n=t?f.filter((t=>t!==e)):[...f,e];y(n),N?.onExpand?.(!t,x.get(e)),N?.onChange?.(n)})(t)}})})(n,a)),l().createElement("span",{className:"cell"},g)):l().createElement("div",{className:"action"},l().createElement("span",{className:"drag-icon"}),l().createElement("div",{className:"middle"},l().createElement("span",{className:"order"},((e,t)=>E?0===e._level?e._varIndex+1:null:t+1)(n,r)),S&&l().createElement(l().Fragment,null,H?l().createElement(R.Checkbox,{className:"checkbox",checked:C,disabled:S?.disabled?.(n),onChange:e=>q(e.target.checked,a)}):l().createElement(R.Radio,{className:"checkbox",checked:C,disabled:S?.disabled?.(n),onChange:e=>q(e.target.checked,a)}))),l().createElement("span",{className:"expand-icon",onClick:()=>T?.(n,r)},T?l().createElement(we.ExpandAltOutlined,null):null)));var D};return{renderGroupRow:(t,n)=>l().createElement("div",{className:"label-row"},e.map(((e,n)=>z(e,D+n,t)))),renderRow:(t,n,r)=>{const a={"row--selection":h.includes(r),"row--highlight":m===r};return l().createElement("li",{key:r,"data-row-key":r,className:xe()("table-row",a),onMouseEnter:()=>K(r,!0),onMouseLeave:()=>K(r)},e.map(((e,a)=>j(e,D+a,t,n,r))))}}},oo=e=>{const{tbodyColumns:t,layout:n,displayList:r,virtualRows:a,notGroup:i}=e,{indentDepth:o,updateLayout:s}=Ll(),{indentWidth:c}=Vi,d=l().useMemo((()=>t.filter((e=>"left"===e.fixed))),[t]),u=l().useMemo((()=>d.reduce(((e,t,n)=>e+(t.width||t.renderWidth||0)+(1===n?o*c:0)),0)),[o,s,d]),{renderGroupRow:m,renderRow:p}=lo(d,!0);return l().createElement("div",{className:"left-panel",style:{width:u}},l().createElement("div",{className:xe()("container",{"no-group":i})},a.map((e=>{const t=e.index,a=n[t],i=r[t];if(Ui(i))return l().createElement("div",{key:i.id,className:xe()("group-label",`level${i._groupLevel}`),style:{top:a.top,left:a.left,right:0,height:a.height}},m(i,a.key));const o=t===n.length-1||Ui(r[t+1]);return l().createElement("div",{key:a.key,className:xe()("row-item",{last:o}),style:{top:a.top,left:a.left,right:0,height:a.height}},p(i,i._varIndex,a.key))}))))},so=e=>{const{tbodyColumns:t,layout:n,displayList:r,virtualRows:a,notGroup:i}=e,{pivotRef:o}=el(),s=l().useMemo((()=>t.filter((e=>"left"!==e.fixed))),[t]),{renderGroupRow:c,renderRow:d}=lo(s);return l().createElement("div",{className:"main-panel"},l().createElement("div",{className:xe()("container",{"no-group":i})},a.map((e=>{const t=e.index,a=n[t],i=r[t];if(Ui(i))return l().createElement("div",{key:i.id,className:xe()("group-label",`level${i._groupLevel}`),style:{top:a.top,left:0,right:a.right,height:a.height}},c(i,a.key));const o=t===n.length-1||Ui(r[t+1]);return l().createElement("div",{key:a.key,className:xe()("row-item",{last:o}),style:{top:a.top,left:0,right:a.right,height:a.height}},d(i,i._varIndex,a.key))}))))},co=()=>{const{pivotRef:e,getRowKey:t,prefixCls:n,size:r,columns:a,groupGridData:i,expandedKeys:o,searchResults:s,switchIndex:c}=el(),{scrollbarRef:d,treeExpandKeys:u,setGridLayoutRef:m}=Ll(),{flatGroupData:p}=e.current,{contextMenues:h}=e.current.props,{groupMargin:f}=Vi,{rowHeightMaps:g}=Qa,y=l().useRef(null),b=l().useMemo((()=>Wi(a)),[a]),v=l().useMemo((()=>Array.isArray(i)),[i]),{contextMenu:x,closeMenu:E}=(({ref:e,popup:t,getTriggerContainer:n,prevent:r,prefixCls:a="",enabled:i=!0})=>{const o=l().useRef(null),s=l().useRef(null),c=e=>{s.current=e},[d,u]=l().useState(!1),[m,p]=l().useState(null),h={width:150,height:200,zIndex:9999};ao({ref:o,handler:()=>f()});const f=()=>{u(!1),p(null),c(null)},g=G((e=>{if(e.preventDefault(),r?.(e.target))return f();c(e),u(!0),re((()=>{const{width:t,height:n}=o.current?.getBoundingClientRect()||h,r=t,a=n,i=window.innerWidth,l=window.innerHeight;let s=e.clientX,c=e.clientY;s+r>i&&(s=Math.max(s-r,0)),c+a>l&&(c=Math.max(c-a,0)),p({x:s,y:c})}))}));l().useEffect((()=>{const t=n?.(e.current)||e.current;return i&&t&&t.addEventListener("contextmenu",g),()=>{t&&t.removeEventListener("contextmenu",g)}}),[e]);const y={position:"fixed",top:`${m?.y||0}px`,left:`${m?.x||0}px`,zIndex:h.zIndex};return{contextMenu:l().createElement(_l(),{open:d},l().createElement("div",{ref:o,className:`${a}__context-menu`,style:y},s.current?t(s.current):null)),closeMenu:f}})({ref:y,prevent:e=>e.offsetParent.classList.contains("group-label"),prefixCls:n,enabled:!!h,popup:e=>{const n=Be(e.target,"table-cell"),r=n?.parentNode?.getAttribute("data-row-key")||"",a=p.find((e=>t(e,e.index)==r)),i=Number(n?.getAttribute("data-col-index")||-1),o=b[i];return l().createElement("ul",{className:"ant-dropdown-menu",style:{padding:5}},h.map((e=>{const t=e.disabled?.(a,o)||!1;return l().createElement("li",{key:e.key,className:xe()("ant-dropdown-menu-item",{"ant-dropdown-menu-item-disabled":t}),onClick:()=>{t||(re((()=>E())),e.onClick?.(a,o))}},e.prefix&&l().createElement("span",{className:"prefix"},e.prefix),l().createElement("span",{className:"label"},e.label),e.suffix&&l().createElement("span",{className:"suffix"},e.suffix))})))}}),w=e=>{const t=p[e];for(let n=e+1;n<p.length;n++)if(p[n]._parentRowKey?.startsWith(t.id)){Object.assign(t,{_record:p[n]});break}},C=l().useMemo((()=>{const e=new Map,n=[];return p.forEach(((r,a)=>{if(Ui(r)){if(0===r._groupLevel)return e.set(r.id,o.includes(r.id)),w(a),void n.push(r);const t=r.id.slice(0,r.id.lastIndexOf(Vi.separator));return void(o.includes(t)&&e.get(t)&&(e.set(r.id,o.includes(r.id)),w(a),n.push(r)))}const i=t(r,r.index);r._parentRowKey&&!e.get(r._parentRowKey)||(e.set(i,u.includes(i)),n.push(r))})),e.clear(),n}),[i,o,u]),S=l().useMemo((()=>((e,{getRowKey:t,rowHeight:n})=>{const r=[],a=[],i=n,l=Vi.indentWidth,o=Vi.groupMargin;let s=o;for(e.forEach((e=>{if(void 0!==e._groupLevel){for(;a.length>0&&a[a.length-1]._level>=e._groupLevel;){const e=a.pop();if(e.height=e._childHeight+i,r[e._index].height=e.height,a.length>0){const t=a[a.length-1];t._childHeight+=e.height+o,t._subGroupCount+=1}s+=o}a[a.length-1];const t={key:e.id,top:s,left:l*e._groupLevel,right:l*e._groupLevel,height:i,_childHeight:0,_subGroupCount:0,_index:r.length,_level:e._groupLevel};r.push(t),a.push(t),s+=i}else{const n=a[a.length-1]||{left:0,right:0},l={key:t(e,e.index),top:s,left:n.left,right:n.right,height:i};r.push(l),s+=i,a.length>0&&(n._childHeight+=i)}}));a.length>0;){const e=a.pop();if(e.height=e._childHeight+i,r[e._index].height=e.height,a.length>0){const t=a[a.length-1];t._childHeight+=e.height+o,t._subGroupCount+=1}s+=o}return r})(C,{getRowKey:t,rowHeight:g[r]})),[C,r]);(e=>{const{pivotRef:t,getRowKey:n,size:r}=el(),{scrollbarRef:a,clicked:i,setHighlightKey:o,setClicked:s}=Ll(),{flatGroupData:c}=t.current,{rowHighlight:d}=t.current.props,u=l().useMemo((()=>2*Qa.rowHeightMaps[r]),[r]),m=l().useMemo((()=>c.filter((e=>!Ui(e)))),[c]),p=G((t=>{const{keyCode:r}=t;if(!ie(i)&&(27===r&&(o(""),s([])),38===r||40===r)){Me(t);const l=m.length;let c=m.findIndex((e=>n(e,e.index)===i[0]));const p=38===r?(--c+l)%l:++c%l,h=m[p],f=n(h,h.index);d&&!d.disabled?.(h)&&(o(f),d.onChange?.(f,h)),((t,n,r)=>{const i=m.length,l=e.find((e=>e.key===r)),o=a.current.scrollTop,s=a.current.container.offsetHeight,c=l.top,d=l.height;"top"===t?c<o?a.current.SET_SCROLL_TOP(c):n===i-1&&a.current.SET_SCROLL_TOP(c-(s-d)):c+d>o+(s-u)?a.current.SET_SCROLL_TOP(c-(s-u-d)):0===n&&a.current.SET_SCROLL_TOP(c)})(38===r?"top":"bottom",p,f),s([f,i[1]])}}));l().useLayoutEffect((()=>(window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p))),[])})(S);const N=l().useMemo((()=>{if(v)return S.reduce(((e,t)=>e+t.height),0)+2*f;const e=S.filter((e=>0===e._level));return e.reduce(((e,t)=>e+t.height),0)+(e.length-1)*f+2*f}),[v,S]),{rowVirtualizer:I,virtualRows:T}=(e=>{const{layout:t,isGroup:n}=e,{size:r}=el(),{scrollbarRef:a}=Ll(),{rowHeightMaps:i}=Qa,o=l().useMemo((()=>a.current?.container.children[0]??null),[a.current]),s=eo({count:t.length,getScrollElement:()=>o,estimateSize:e=>t[e].height,overscan:1,noCache:n,rangeExtractor:e=>{if(!n)return Vl(e);const l=a.current.scrollTop,c=s.scrollElement?.offsetHeight||o.offsetHeight,d=[];for(let e=0;e<t.length;e++){const n=t[e];l>n.top+n.height+i[r]||l+c+i[r]<n.top||d.push(e)}return d}}),c=s.getVirtualItems();return{rowVirtualizer:s,virtualRows:c}})({layout:S,isGroup:!v});He((()=>{const e=p.findIndex((e=>t(e,e.index)===s[c]?.rowKey));e>=0&&d.current.SET_SCROLL_TOP(e*g[r]);const n=b.findIndex((e=>e.dataIndex===s[c]?.dataIndex));if(n>=0){const e=b.slice(0,n).filter((e=>"left"!==e.fixed)).reduce(((e,t)=>e+(t.width||t.renderWidth)),0);d.current.SET_SCROLL_LEFT(e)}}),[c,s]),l().useLayoutEffect((()=>{m("bodyEl",y.current),m("rowVirtualizer",I)}),[]);const R={tbodyColumns:b,layout:S,displayList:C,virtualRows:T,notGroup:v};return l().createElement("div",{ref:y,className:"body",style:{height:N}},l().createElement(oo,R),l().createElement(so,R),x)},uo=()=>{const{columns:e,groupGridData:t,countMethod:n,setSummationData:r}=el(),{indentDepth:a,updateLayout:i}=Ll(),{selectionColumn:o}=Qa,{indentWidth:s}=Vi,c=l().useMemo((()=>Wi(e)),[e]),d=l().useMemo((()=>c.filter((e=>"left"===e.fixed))),[c]),u=l().useMemo((()=>c.filter((e=>"left"!==e.fixed))),[c]),m=l().useMemo((()=>d.reduce(((e,t,n)=>e+(t.width||t.renderWidth||0)+(1===n?a*s:0)),0)),[a,i,d]);He((()=>{r(((e,t)=>{const n=[],r=e=>{const n={};for(const r in t){const a=e.map((e=>le(e,r)||0));n[r]=t[r](a)}return n},a=e=>{if(Array.isArray(e))return n.push(...e),{total:r(e)};const i={},l={};Object.keys(t).forEach((e=>{l[e]=[]}));for(const r in e){const o=e[r];if(Array.isArray(o)){n.push(...o);const e={};for(const n in t){const r=o.map((e=>le(e,n)||0));e[n]=t[n](r),l[n].push(...r)}i[r]={subtotal:e}}else{const e=a(o);i[r]=e;for(const n in t){const t=e.subtotal[n];void 0!==t&&l[n].push(t)}}}if(0===n.length)return i;const o={};for(const e in t)o[e]=t[e](l[e]);return i.subtotal=o,i},i=Array.isArray(e)?{total:r(e)}:a(e);return n.length>0&&(i.total=r(n)),delete i.subtotal,i})(t,(e=>{const t={};for(const n in e)e[n]&&Object.assign(t,{[n]:Qi[e[n]]});return t})(n)))}),[n,t]);const p=(e,t)=>l().createElement("div",{className:xe()(t?"fixed-left":"no-fixed"),style:{width:t?m:""}},e.map(((n,r)=>{const{dataIndex:i,width:c,renderWidth:d}=n,u={"selection-column":i===o,"col--right":!0},m=t&&1===r||!t&&r===e.length-1?a*s:0,p={width:`${(c||d||0)+m}px`,minWidth:`${(c||d||0)+m}px`};return l().createElement("div",{key:i,className:xe()("table-cell",u),style:p},i!==o?l().createElement(io,{column:n,keyPath:"",type:"total"}):null)})));return l().createElement("div",{className:"footer"},p(d,!0),(e=>p(e))(u))},mo=()=>{const{prefixCls:e,size:t}=el(),n=l().useRef(null);return l().createElement(Pl,{scrollbar:n},l().createElement(At,{ref:n,className:xe()(`${e}__layout`,t)},l().createElement(Hl,null),l().createElement(co,null),l().createElement(uo,null)))},po=()=>l().createElement("div",{className:"wrapper"},l().createElement(mo,null)),ho={rowKey:"id",columns:[],dataSource:[]},fo=e=>{const t=h(ho,e),{rowKey:n,fromTable:r,columns:a,dataSource:i,height:o,maxHeight:s,className:c,style:d}=t,{$size:u}=Y(t),m=G(((e,t)=>{const r="function"==typeof n?n(e,t):e?.[n];return void 0===r?(me("PivotGrid","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):r})),p=(e,t="",n=0)=>e.map(((e,r)=>{const a=m(e,e.index);return e.index=r,e._level=n,Array.isArray(e.children)&&(e.children=p(e.children,a,n+1)),t?Object.assign(e,{_parentRowKey:t}):e})),f=l().useMemo((()=>(e=>{let t=!1;const n=(e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))(e).map((e=>{"left"===e.fixed&&(t=!0);const n={...e,fixed:"left"===e.fixed?"left":void 0,editRender:void 0};return r&&(void 0===n.fixed&&delete n.fixed,delete n.editRender),n}));return!t&&n.length&&(n[0].fixed="left",me("PivotGrid","至少需要有一项 `fixed: left` 的固定列")),n})(a)),[a]),g=l().useMemo((()=>p(i)),[i]),y=Ee("pivot-grid"),b={[y]:!0,"is-from-table":r},v={height:o,maxHeight:o||s?s:500},x={prefixCls:y,size:u,getRowKey:m,flatColumns:f,tableData:g,pivotProps:oe(t,["columns","dataSource","rowKey","size","height","maxHeight","className","style"])};return l().createElement("div",{className:xe()(b,c),style:{...d,...v}},l().createElement(Ji,x,l().createElement(Ol,null),l().createElement(po,null)))};fo.displayName="PivotGrid";const go=fo,yo=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{tableRef:r,prefixCls:a,flattenColumns:i}=l().useContext(Aa),{rowKey:o,uniqueKey:s}=r.current.props,{t:c}=U(),{tableFullData:d}=r.current,[u,m]=l().useState(!1),p=()=>{m(!0)};l().useImperativeHandle(t,(()=>({clickHandle:p})));const h={visible:u,title:c("qm.table.pivotGrid.settingTitle"),width:"80vw",loading:!1,bodyStyle:{padding:0},onClose:()=>m(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${a}-pivot-grid`,title:c("qm.table.pivotGrid.text"),onClick:()=>p()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.LineChartOutlined,null))),l().createElement(yn,h,l().createElement(go,{fromTable:!0,rowKey:o,uniqueKey:s,columns:i,dataSource:d})))}));yo.displayName="PivotGrid";const bo=yo,vo=e=>{const{columns:t,group:n,summary:r}=e,{tableRef:a,$size:i,pagination:o,fetchParams:s,isFetch:d}=l().useContext(Aa),{fetch:u}=a.current.props,{t:m}=U(),p=e=>{const n=t.find((t=>t.dataIndex===e));return{title:n.title,precision:n.precision,dictItems:n.dictItems??[]}},h=n.map((e=>({dataIndex:e.group,...p(e.group)}))),f=r.map((e=>e.summary===Qa.groupSummary.total.value?{dataIndex:e.summary,title:Qa.groupSummary.total.text,formula:e.formula}:{dataIndex:e.summary,...p(e.summary),formula:e.formula})),g=l().useMemo((()=>Object.assign({},s,{[Qa.sorterFieldName]:void 0,[Qa.groupSummary.summaryFieldName]:r.map((e=>`${e.formula}|${e.summary}`)).join(","),[Qa.groupSummary.groupbyFieldName]:n.map((e=>e.group)).join(","),usedJH:2,[Qa.currentPageName]:1})),[s,n,r]),[y,b]=l().useState(((e,n)=>[{title:m("qm.table.groupSummary.index"),dataIndex:"pageIndex",width:80,render:e=>e+1},...e.map((e=>({title:e.title,dataIndex:e.dataIndex,dictItems:e.dictItems}))),...n.map((e=>{const n=t.find((t=>t.dataIndex===e.dataIndex))?.groupSummary;let r=n?{summation:n}:null;return e.dataIndex===Qa.groupSummary.total.value&&(r={dataIndex:Qa.groupSummary.recordTotalIndex,summation:{render:()=>o.total}}),{...e,..."count"===e.formula||"sum"===e.formula?r:null}}))])(h,f)),[v]=l().useState(d?[]:(e=>{const t=dr(e,n.map((e=>e.group))),a=[];return t.forEach((e=>{const t={};y.forEach((n=>{const{dataIndex:r}=n;"index"!==r&&Zn(t,r,Qn(e[0],r))})),r.forEach((n=>{const r=n.summary!==Qa.groupSummary.total.value?n.summary:Qa.groupSummary.recordTotalIndex,a=n.formula;"count"===a&&Zn(t,r,e.length),"sum"===a&&Zn(t,r,(0,X.sumBy)(e,r)),"max"===a&&Zn(t,r,(0,X.maxBy)(e,r)[r]),"min"===a&&Zn(t,r,(0,X.minBy)(e,r)[r]),"avg"===a&&Zn(t,r,((0,X.sumBy)(e,r)/e.length).toFixed(2))})),a.push(t)})),a})(a.current.tableFullData)),x={size:i,height:400,...d?{fetch:{api:u.api,params:g,dataKey:u?.dataKey}}:{dataSource:v},columns:y,rowKey:e=>e.index,showFastSearch:!1,showTableImport:!1,exportExcel:{fileName:`${c()().format(Ka)}.xlsx`},tablePrint:{showLogo:!0},columnsChange:e=>b(e)};return l().createElement(Fs,x)},xo=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,prefixCls:a,$size:i,flattenColumns:s}=l().useContext(Aa),{uniqueKey:c}=r.current.props,{t:d}=U(),u=l().useRef(null),m=l().useRef(null),[p,h]=l().useState(!1),[f,g]=l().useState([]),[y,b]=l().useState(""),[v,x]=l().useState("");He((()=>{if(v){const{group:e,summary:t}=f.find((e=>e.value===v)).list;T(e),L(t)}else{const e=D();T(e?.group||[]),L(e?.summary||[])}}),[v]),l().useEffect((()=>{H()}),[]);const E=l().useMemo((()=>c?`summary_${c}`:""),[c]),w=l().useMemo((()=>s.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex)))),[s]),C=w.filter((e=>!e.groupSummary)).map((e=>({text:or(e.title),value:e.dataIndex}))),S=[Qa.groupSummary.total,...w.filter((e=>!!e.groupSummary)).map((e=>({text:or(e.title),value:e.dataIndex})))],N=[{text:d("qm.table.groupSummary.sumText"),value:"sum"},{text:d("qm.table.groupSummary.maxText"),value:"max"},{text:d("qm.table.groupSummary.minText"),value:"min"},{text:d("qm.table.groupSummary.avgText"),value:"avg"},{text:d("qm.table.groupSummary.countText"),value:"count"}],[I,T]=l().useState([]),[O,k]=l().useState([{title:d("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{u.current.REMOVE_RECORDS(t)}},d("qm.table.groupSummary.removeText")))},{dataIndex:"group",title:d("qm.table.groupSummary.groupItem"),minWidth:200,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:C.map((e=>({...e,disabled:I.findIndex((t=>t.group===e.value))>-1})))})}]),[P,L]=l().useState([]),[A,_]=l().useState([{title:d("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{m.current.REMOVE_RECORDS(t)}},d("qm.table.groupSummary.removeText")))},{dataIndex:"summary",title:d("qm.table.groupSummary.summaryColumn"),minWidth:200,editRender:e=>({type:"select",editable:!0,items:S.map((e=>({...e,disabled:P.findIndex((t=>t.summary===e.value))>-1}))),extra:{cornerSign:!1},onChange:t=>{e.formula=""}})},{dataIndex:"formula",title:d("qm.table.groupSummary.calcFormula"),width:140,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:e.summary===Qa.groupSummary.total.value?N.slice(N.length-1):N})}]),F=l().useMemo((()=>{const e=I.length&&I.every((e=>Object.values(e).every((e=>""!==e)))),t=P.length&&P.every((e=>Object.values(e).every((e=>""!==e))));return!(e&&t)}),[I,P]),D=()=>{if(!E)return;const e=sessionStorage.getItem(E);return e?JSON.parse(e):null},H=async()=>{if(!E)return;const e=D();if(e){const{group:t,summary:n}=e;T(t),L(n)}let t=await Mi().getItem(E);t||(t=await q(E),Array.isArray(t)&&await Mi().setItem(E,t)),Array.isArray(t)&&t.length&&(g(t),!e&&x(t[0].value))},q=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},$=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}},M={visible:p,title:d("qm.table.groupSummary.resultText"),loading:!1,onClose:()=>h(!1)};return l().createElement("div",{className:`${a}-group-summary__setting`},l().createElement("div",{className:"main"},l().createElement("div",{style:{width:"30%"}},l().createElement(Fs,{ref:u,size:i,columns:O,dataSource:I,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>k(e),onDataChange:e=>{T(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{u.current.INSERT_RECORDS({})},style:{marginRight:0}}))),l().createElement("div",{className:"container line"},l().createElement(Fs,{ref:m,size:i,columns:A,dataSource:P,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>_(e),onDataChange:e=>{L(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{m.current.INSERT_RECORDS({})},style:{marginRight:0}}))),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:i,value:y,placeholder:d("qm.table.groupSummary.configText"),disabled:F,onChange:e=>{const{value:t}=e.target;b(t)}}),l().createElement(fe,{type:"primary",disabled:!y||F,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!E)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=ir(),t=[...f,{text:y,value:e,list:{group:I.filter((e=>!!e.group)),summary:P.filter((e=>!!e.summary))}}];g(t),x(e),b(""),await Mi().setItem(E,t),await $(E,t)})()},d("qm.table.groupSummary.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[i]}px`}},l().createElement("span",null,d("qm.table.groupSummary.savedSetting"))),l().createElement("ul",null,f.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===v}),title:e.text,onClick:()=>{return t=e.value,void x(t!==v?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:d("qm.table.groupSummary.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=f.filter((t=>t.value!==e));g(t),e===v&&x(""),await Mi().setItem(E,t),await $(E,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!f.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement(yn,M,l().createElement(vo,{columns:w,group:I,summary:P})),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>t(),style:{marginRight:8}},d("qm.table.groupSummary.closeButton")),l().createElement(fe,{type:"primary",disabled:F,onClick:()=>(E&&sessionStorage.setItem(E,JSON.stringify({group:I.filter((e=>!!e.group)),summary:P.filter((e=>!!e.summary))})),void h(!0))},d("qm.table.groupSummary.confirmButton"))))},Eo=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U(),[i,o]=l().useState(!1),s=()=>{o(!0)};l().useImperativeHandle(t,(()=>({clickHandle:s})));const c={visible:i,title:a("qm.table.groupSummary.settingTitle"),loading:!1,width:"65%",bodyStyle:{paddingBottom:"52px"},onClose:()=>o(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-group-summary`,title:a("qm.table.groupSummary.text"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.PieChartOutlined,null))),l().createElement(yn,c,l().createElement(xo,{onClose:()=>o(!1)})))}));Eo.displayName="GroupSummary";const wo=Eo,Co=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,$size:a,prefixCls:i,flattenColumns:s,setSuperFilters:c,clearTableFilter:d}=l().useContext(Aa),{uniqueKey:u}=r.current.props,{t:m}=U(),p=l().useRef(null),[h,f]=l().useState([]),[g,y]=l().useState([]),[b,v]=l().useState(""),[x,E]=l().useState("");He((()=>{f(x?g.find((e=>e.value===x)).list:D()||[])}),[x]),l().useEffect((()=>{H()}),[]);const w=l().useMemo((()=>u?`superSearch_${u}`:""),[u]),C=l().useMemo((()=>s.filter((e=>!!e.filter))),[s]),S=cr(h),N=l().useMemo((()=>!(S&&Ln(S))),[S]),I=l().useMemo((()=>!!h.length&&N),[h,N]),T=[{value:"and",text:m("qm.table.highSearch.andText")},{value:"or",text:m("qm.table.highSearch.orText")}],O=s.filter((e=>!!e.filter)).map((e=>({value:e.dataIndex,text:or(e.title)}))),k=e=>["in","nin"].includes(e),P=(e,t)=>{let n;switch(e){case"number":n="number";break;case"date":n="date";break;case"checkbox":case"radio":n=t?"select-multiple":"select";break;default:n="text"}return n},L=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",text:m("qm.table.highSearch.gtText")},{value:"<",text:m("qm.table.highSearch.ltText")},{value:">=",text:m("qm.table.highSearch.gteText")},{value:"<=",text:m("qm.table.highSearch.lteText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",text:m("qm.table.highSearch.inText")},{value:"nin",text:m("qm.table.highSearch.ninText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",text:m("qm.table.highSearch.likeText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}]}return t},[A,_]=l().useState([{title:m("qm.table.highSearch.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{p.current.REMOVE_RECORDS(t)}},m("qm.table.highSearch.removeText")))},{title:m("qm.table.highSearch.bracket"),dataIndex:"bracketLeft",align:"right",width:80,render:(e,t)=>l().createElement("span",{style:{fontSize:"20px"}},e)},{title:m("qm.table.highSearch.fieldName"),dataIndex:"fieldName",width:160,required:!0,dictItems:O,editRender:e=>({type:"select",editable:!0,rules:[{required:!0,message:m("qm.table.highSearch.noEmpty")}],extra:{cornerSign:!1},onChange:t=>{const n=Object.values(t)[0],r=C.find((e=>e.dataIndex===n))?.filter.type,a=L(r);e.fieldType=r,e.expression=n?a[0]?.value:"",e.condition=k(e.expression)?[]:"",n||(e.bracketLeft=e.bracketRight="")}})},{title:m("qm.table.highSearch.fieldType"),dataIndex:"fieldType",width:100,hidden:!0},{title:m("qm.table.highSearch.expression"),dataIndex:"expression",width:120,required:!0,editRender:e=>{const t=C.find((t=>t.dataIndex===e.fieldName))?.filter.type;return{type:"select",editable:!0,items:L(t),extra:{disabled:!e.fieldName,cornerSign:!1},onChange:()=>{e.condition=k(e.expression)?[]:""}}}},{title:m("qm.table.highSearch.condition"),dataIndex:"condition",minWidth:200,editRender:e=>{const t=C.find((t=>t.dataIndex===e.fieldName)),n=t?.filter.type,r=t?.filter?.items??t?.dictItems??[];return{type:P(n,k(e.expression)),editable:!0,items:r,extra:{disabled:!e.fieldName,cornerSign:!1}}}},{title:m("qm.table.highSearch.bracket"),dataIndex:"bracketRight",width:80,render:(e,t)=>l().createElement("span",{style:{fontSize:"20px"}},e)},{title:m("qm.table.highSearch.logic"),dataIndex:"logic",width:100,required:!0,dictItems:T,editRender:e=>({type:"select",editable:!0,extra:{disabled:!e.fieldName,cornerSign:!1}})}]),F=()=>{w&&sessionStorage.setItem(w,JSON.stringify(h.filter((e=>!!e.fieldName))))},D=()=>{if(!w)return;const e=sessionStorage.getItem(w);return e?JSON.parse(e):null},H=async()=>{if(!w)return;const e=D();e&&f(e);let t=await Mi().getItem(w);t||(t=await q(w),Array.isArray(t)&&await Mi().setItem(w,t)),Array.isArray(t)&&t.length&&(y(t),!e&&E(t[0].value))},q=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},$=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}};return l().createElement("div",{className:`${i}-super-search__setting`},l().createElement("div",{className:"main"},l().createElement("div",{className:"container"},l().createElement(Fs,{ref:p,size:a,columns:A,dataSource:h,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>_(e),onRowClick:(e,t)=>{const{dataIndex:n}=t;e.fieldName&&["bracketLeft","bracketRight"].includes(n)&&("bracketLeft"===n&&(e[n]=e[n]?"":"("),"bracketRight"===n&&(e[n]=e[n]?"":")"),f([...h]))},onDataChange:e=>{f(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{p.current.INSERT_RECORDS({bracketLeft:"",bracketRight:"",logic:"and"})},style:{marginRight:0}})),Qa.highSearch.showSQL&&S&&l().createElement("code",{className:"lang-js"},S)),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:a,value:b,placeholder:m("qm.table.highSearch.configText"),disabled:N,onChange:e=>{const{value:t}=e.target;v(t)}}),l().createElement(fe,{type:"primary",disabled:!b||N,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!w)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=ir(),t=[...g,{text:b,value:e,list:h.filter((e=>!!e.fieldName))}];y(t),E(e),v(""),await Mi().setItem(w,t),await $(w,t)})()},m("qm.table.highSearch.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[a]}px`}},l().createElement("span",null,m("qm.table.highSearch.savedSetting"))),l().createElement("ul",null,g.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===x}),title:e.text,onClick:()=>{return t=e.value,void E(t!==x?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:m("qm.table.highSearch.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=g.filter((t=>t.value!==e));y(t),e===x&&E(""),await Mi().setItem(w,t),await $(w,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!g.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>t(),style:{marginRight:8}},m("qm.table.highSearch.closeButton")),l().createElement(fe,{type:"primary",disabled:I,onClick:()=>(d(),c(h.map((e=>oe(e,["index","pageIndex"])))),F(),void t())},m("qm.table.highSearch.searchButton"))))},So=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U(),[i,o]=l().useState(!1),s=()=>{o(!0)};l().useImperativeHandle(t,(()=>({clickHandle:s})));const c={visible:i,title:a("qm.table.highSearch.settingTitle"),loading:!1,width:"70%",bodyStyle:{paddingBottom:"52px"},onClose:()=>o(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-super-search`,title:a("qm.table.highSearch.text"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.FunnelPlotOutlined,null))),l().createElement(yn,c,l().createElement(Co,{onClose:()=>o(!1)})))}));So.displayName="SuperSearch";const No=So,Io=l().forwardRef(((e,t)=>{const{tableColumns:n,showFullScreen:r,showReload:a,showPrint:i,showImport:s,showExport:c,showClipboard:d,showCollection:u,showFastSearch:m,showSuperSearch:p,showPivotGrid:h,showGroupSummary:f,showToolBox:g}=e,{global:y}=l().useContext(o),{tableRef:b,$size:v,prefixCls:x,isFullScreen:E}=l().useContext(Aa),{uniqueKey:w,exportExcel:C}=b.current.props,{t:S}=U(),N=l().useRef(null),I=l().useRef(null),T=l().useRef(null),O=l().useRef(null),k=l().useRef(null),P=l().useRef(null),L=l().useRef(null),A=l().useRef(null),_=l().useRef(null),F=l().useRef(null),D=l().useRef(null),H=l().useRef(!1),q=l().useMemo((()=>w?`toolBox_${w}`:""),[w]),[$,M]=l().useState({fullScreen:!1,reload:!1,print:!1,import:!1,export:!1,clipboard:!1,collection:!1,fastSearch:!1,superSearch:!1,pivotGrid:!1,groupSummary:!1}),K={fullScreen:r,reload:a,print:i,import:s,export:c&&!C?.hideIcon,clipboard:d,collection:u,fastSearch:m,superSearch:p,pivotGrid:h,groupSummary:f},[z,j]=l().useState(!1);He((()=>{H.current&&(W(),H.current=!1)}),[$]),l().useEffect((()=>{V()}),[]),l().useImperativeHandle(t,(()=>({exportHandle:()=>{if(!k.current)return me("Table","执行导出需要配置 `exportExcel` 参数");k.current.clickHandle()}})));const V=()=>{if(!q||!g)return;const e=JSON.parse(localStorage.getItem(q));e||B(q).then((e=>{e&&(M(Object.assign({},$,e)),localStorage.setItem(q,JSON.stringify(e)))})).catch((()=>{})),e&&M(Object.assign({},$,e))},W=()=>{if(!q||!g)return;const e={};for(const t in $)$[t]&&(e[t]=$[t]);localStorage.setItem(q,JSON.stringify(e)),G(q,e)},B=async e=>{const t=y?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},G=async(e,t)=>{const n=y?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}},Y=async e=>{j(!1),await ne(100),e.current.clickHandle()},X=(e,t)=>{H.current=!0,M(Object.assign({},$,{[t]:e}))},Q={"top-toolbox__popper":!0,[`${x}--lg`]:"large"===v,[`${x}--sm`]:"small"===v};return l().createElement(l().Fragment,null,r&&l().createElement(li,{ref:N,isFullScreen:E,open:!g||$.fullScreen}),a&&l().createElement(si,{ref:I,open:!g||$.reload}),i&&l().createElement(ui,{ref:T,tableColumns:n,open:!g||$.print}),s&&l().createElement(Ii,{ref:O,tableColumns:n,open:!g||$.import}),c&&l().createElement(Li,{ref:k,tableColumns:n,open:(!g||$.export)&&!C?.hideIcon}),d&&l().createElement(Fi,{ref:P,open:!g||$.clipboard}),u&&l().createElement(qi,{ref:L,columns:n,open:!g||$.collection}),m&&l().createElement(ji,{ref:A,open:!g||$.fastSearch}),h&&l().createElement(bo,{ref:_,open:!g||$.pivotGrid}),f&&l().createElement(wo,{ref:F,open:!g||$.groupSummary}),p&&l().createElement(No,{ref:D,open:!g||$.superSearch}),g&&l().createElement(R.Dropdown,{open:z,trigger:["click"],placement:"bottomRight",dropdownRender:()=>(()=>{const e=[{key:"fullScreen",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.fullScreen,style:{marginRight:6},onChange:e=>X(e.target.checked,"fullScreen"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.screen.full"))),onClick:()=>Y(N)},{key:"reload",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.reload,style:{marginRight:6},onChange:e=>X(e.target.checked,"reload"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.refresh.text"))),onClick:()=>Y(I)},{key:"print",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.print,style:{marginRight:6},onChange:e=>X(e.target.checked,"print"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.print.text"))),onClick:()=>Y(T)},{key:"import",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.import,style:{marginRight:6},onChange:e=>X(e.target.checked,"import"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.import.textNoSpace"))),onClick:()=>Y(O)},{key:"export",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.export,style:{marginRight:6},onChange:e=>X(e.target.checked,"export"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.export.textNoSpace"))),onClick:()=>Y(k)},{key:"clipboard",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.clipboard,style:{marginRight:6},onChange:e=>X(e.target.checked,"clipboard"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.clipboard.textNoSpace"))),onClick:()=>Y(P)},{key:"collection",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.collection,style:{marginRight:6},onChange:e=>X(e.target.checked,"collection"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.selectCollection.text"))),onClick:()=>Y(L)},{key:"fastSearch",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.fastSearch,style:{marginRight:6},onChange:e=>X(e.target.checked,"fastSearch"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.fastSearch.text"))),onClick:()=>Y(A)},{key:"pivotGrid",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.pivotGrid,style:{marginRight:6},onChange:e=>X(e.target.checked,"pivotGrid"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.pivotGrid.text"))),onClick:()=>Y(_)},{key:"groupSummary",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.groupSummary,style:{marginRight:6},onChange:e=>X(e.target.checked,"groupSummary"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.groupSummary.text"))),onClick:()=>Y(F)},{key:"superSearch",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.superSearch,style:{marginRight:6},onChange:e=>X(e.target.checked,"superSearch"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.highSearch.text"))),onClick:()=>Y(D)}];return l().createElement(R.Menu,{items:e.filter((e=>K[e.key]))})})(),overlayClassName:xe()(Q),overlayStyle:{minWidth:120},onOpenChange:e=>{j(e)}},l().createElement("span",{className:`${x}-toolbox`,title:S("qm.table.toolbox.text")},l().createElement("i",{className:"svgicon icon"},l().createElement(we.AppstoreAddOutlined,null)))))}));Io.displayName="ToolBox";const To=Io,Ro=(e,t)=>e.map((e=>(e.children&&(e.children=Ro(e.children,t)),t(e)))),Oo=l().forwardRef(((e,t)=>{const{columns:n}=e,{global:r}=l().useContext(o),{tableRef:a,prefixCls:i,$size:s}=l().useContext(Aa),{showColumnDefine:c,uniqueKey:d,onlyShowIcon:u,columnsChange:m}=a.current.props,{t:p}=U(),h=l().useRef([]),[f,g]=l().useState(!1),y=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&"left"===e.fixed)))(n)),[n]),b=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&"right"===e.fixed)))(n)),[n]),v=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&!e.fixed)))(n)),[n]),x=l().useMemo((()=>d?`table_${d}`:""),[d]);He((()=>{w(n)}),[n]),l().useLayoutEffect((()=>{C()}),[]),l().useImperativeHandle(t,(()=>({initialHandler:C})));const E=e=>e.map((e=>{const t={};return Array.isArray(e.children)&&(t.children=E(e.children)),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),{dataIndex:e.dataIndex,...t}})),w=e=>{if(!x)return;const t=E(e),n=JSON.parse(localStorage.getItem(x));a.current.columnsDefined&&!(0,X.isEqual)(t,n)&&(localStorage.setItem(x,JSON.stringify(t)),(async(e,t)=>{const n=r?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(x,t))},C=()=>{const e=(()=>{if(!x)return;const e=JSON.parse(localStorage.getItem(x));return e||(async e=>{const t=r?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}})(x).then((e=>{e?(localStorage.setItem(x,JSON.stringify(e)),C()):r?.getComponentConfigApi&&w(n)})).catch((()=>{})),e?(0,X.xor)(Dn(e).map((e=>e.dataIndex)),Dn(n).map((e=>e.dataIndex))).length>0?Ro(n,(t=>{const n=qn(e,t.dataIndex);return n&&(void 0!==n.hidden&&(t.hidden=n.hidden),void 0!==n.fixed&&(t.fixed=n.fixed),void 0!==n.width&&(t.width=n.width),void 0!==n.renderWidth&&(t.renderWidth=n.renderWidth)),t})):Ro(e,(e=>{const t=qn(n,e.dataIndex);return void 0===e.fixed&&delete t.fixed,Object.assign({},t,e)})):void 0})();var t;e&&(t=S(e),h.current=t,m?.(e))},S=e=>{const t=[];return e.filter((e=>!e.noAuth)).forEach(((n,r)=>{const a=n.colSpan;a>1&&e.slice(r+1,r+a).every((({colSpan:e})=>0===e))&&t.push(e.slice(r,r+a))})),t},N=e=>{const t=[];e.forEach((n=>{const{colSpan:r,dataIndex:a}=n;if(0===r)return;if(1===r)return t.push(n);const i=h.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(a)));if(-1===i)return t.push(n);t.push(...h.current[i].map((({dataIndex:t},r)=>{const a=e.find((e=>e.dataIndex===t));return r>0&&(void 0!==n.hidden&&(a.hidden=n.hidden),void 0!==n.fixed?a.fixed=n.fixed:a.fixed&&delete a.fixed),a})))})),n.forEach(((e,n)=>{e.noAuth&&t.findIndex((t=>t.dataIndex===e.dataIndex))<0&&t.splice(n,0,e)})),m?.(t)},I=(e,t)=>{e.noFixed||(t?e.fixed=t:delete e.fixed,N(n))},T=(e,t)=>{const{colSpan:r,noFixed:a}=e;if(0===r)return l().createElement("li",{key:e.dataIndex,style:{display:"none"}});const i=or(e.title),o=["svgicon","handle",`${t}-handle`],s=l().createElement("li",{key:e.dataIndex,className:"item"},l().createElement(R.Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,N(n)}}),l().createElement("i",{className:xe()(o),title:p("qm.table.columnFilter.draggable")},l().createElement(we.HolderOutlined,null)),l().createElement("span",{className:"text",title:i},i),"main"===t?l().createElement("span",{className:xe()("fixed",a?"disabled":"")},l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.fixedLeft"),onClick:()=>I(e,"left")},l().createElement(we.StepBackwardOutlined,null)),l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.fixedRight"),onClick:()=>I(e,"right")},l().createElement(we.StepForwardOutlined,null))):"sub"!==t?l().createElement("span",{className:xe()("fixed",a?"disabled":"")},l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.cancelFixed"),onClick:()=>I(e)},l().createElement(we.CloseCircleOutlined,null))):null);return!e.hidden&&e.children?.length?l().createElement(R.Popover,{key:e.dataIndex,trigger:["hover"],placement:"leftTop",overlayClassName:"column-item__popper",content:O(e.children,e.dataIndex)},s):s},O=(e,t)=>l().createElement("div",{className:"column-filter--wrap"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".sub-handle",tag:"ul",animation:200,list:e,setList:r=>{const a=r.map((e=>e.dataIndex)),i=e.map((e=>e.dataIndex));(0,X.isEqual)(a,i)||((e,t)=>{qn(n,t).children=e,m?.([...n])})(gr(r),t)}},e.map((e=>T(e,"sub"))))),k={[`${i}__popper`]:!0,"column-filter__popper":!0,[`${i}--lg`]:"large"===s,[`${i}--sm`]:"small"===s},P=[`${i}-column-filter`,{selected:f}];return c?l().createElement(Ri(),{action:["click"],popupVisible:f,popup:l().createElement("div",{className:"column-filter--wrap",style:{maxHeight:"calc(100vh - 10px)"}},l().createElement("div",{className:"reset"},l().createElement(fe,{type:"text",size:"small",onClick:()=>{const e=t=>t.map((t=>{const r=qn(n,t.dataIndex)||se(t);return t.children&&(r.children=e(t.children)),Object.assign(r,{hidden:t.hidden,fixed:t.fixed,width:t.width})}));m?.(e(a.current.originColumns))}},p("qm.table.columnFilter.reset"))),l().createElement("div",{className:"left"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".left-handle",tag:"ul",animation:200,list:y,setList:e=>{const t=e.map((e=>e.dataIndex)),n=y.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...gr(e),...v,...b])}},y.map((e=>T(e,"left"))))),l().createElement("div",{className:"divider"}),l().createElement("div",{className:"main"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:v,setList:e=>{const t=e.map((e=>e.dataIndex)),n=v.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...y,...gr(e),...b])}},v.map((e=>T(e,"main"))))),l().createElement("div",{className:"divider"}),l().createElement("div",{className:"right"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".right-handle",tag:"ul",animation:200,list:b,setList:e=>{const t=e.map((e=>e.dataIndex)),n=b.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...y,...v,...gr(e)])}},b.map((e=>T(e,"right")))))),popupClassName:xe()(k),popupStyle:{minWidth:160},onPopupVisibleChange:e=>{g(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},l().createElement("span",{className:xe()(P),title:u?p("qm.table.columnFilter.text"):void 0},l().createElement("i",{className:"svgicon icon"},l().createElement(we.SettingOutlined,null)),!u&&l().createElement("span",null,p("qm.table.columnFilter.text")))):null}));Oo.displayName="ColumnFilter";const ko=Oo,Po=(e,t,n)=>{let r;for(let a=0;a<e.length;a++){const i=e[a];if(i.children)if(i.children.some((e=>e[n]===t)))r=i[n];else{const e=Po(i.children,t,n);e&&(r=e)}}return r},Lo=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&Lo(e.children,t),t(e)||e.children&&e.children.length))),Ao=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Ao(e.children,t)),t(e)&&n.push(e)})),n},_o=(e,t)=>{let n=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(n=_o(e[r].children,t)),n)return n;if(t(e[r]))return e[r]}return n},Fo=(e,t,n,r)=>e.map((e=>e[n]===t?{...e,children:r}:e.children?{...e,children:Fo(e.children,t,n,r)}:e)),Do=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Do(e.children,t)),Array.isArray(e.children)&&e.children.length&&n.push(e[t])})),n},Ho=(e,t,n)=>{for(let r=0;r<e.length;r++){if(e[r][n]===t)return[t];if(Array.isArray(e[r].children)){const a=Ho(e[r].children,t,n);if(a)return[e[r][n],a].flat()}}},qo=(e,t)=>{const n=e.children?.map((e=>e[t]))||[];return Array.isArray(e.children)&&e.children.forEach((e=>n.push(...qo(e,t)))),n},$o=l().forwardRef(((e,t)=>{const{className:n,style:r,filterable:a=!0,multiple:i,draggable:o,dataSource:s,fetch:c,autoFocus:d,asyncLoad:u,checkStrictly:m,checkStrategy:p="SHOW_CHILD",placeholder:h,fieldsDefine:g,value:y,height:b,defaultSelectedKeys:v=[],defaultExpandedKeys:x=[],defaultExpandAll:E=!0,showSearchBar:w=!0,showCollapse:C=!0,onSelectChange:S,onCheckChange:N,onDragStart:I,onDragChange:T,onExpand:O}=e,{$size:k}=Y(e),{t:P}=U(),L=g?.valueKey||"value",A=g?.textKey||"text",_=l().useRef(null),F=l().useRef(null),D=xt(_),[H,q]=l().useState(b),[$,M]=l().useState(!1),K=Et((()=>{q(_.current.offsetHeight-re.current.offsetHeight-10)}),5);f((()=>{b||K()}),[D.height]);const[z,j]=l().useState([]),[V,W]=l().useState({}),[B,G]=l().useState([]),[Q,Z]=l().useState([]),[J,ee]=l().useState(""),[te,ne]=l().useState(E),re=l().useRef(null),ae=l().useRef([]),le=l().useRef([]);l().useEffect((()=>{Array.isArray(s)&&(oe(s),G(se(s)),W({}))}),[s]),l().useEffect((()=>{ue(),d&&F.current?.focus()}),[]),He((()=>{ue()}),[c?.params]),He((()=>{Z(de())}),[V]),l().useImperativeHandle(t,(()=>({INSERT_RECORD:(e,t)=>{const n=Array.isArray(t)?t:[t],r=_o(z,(t=>e===t[L]));r&&(Array.isArray(r.children)?r.children.push(...n):r.children=[...n],oe([...z]))},REMOVE_RECORD:e=>{const t=Po(z,e,L);if(void 0===t&&z.find((t=>t[L]===e)))oe(z.filter((t=>t[L]!==e)));else{const n=_o(z,(e=>t===e[L]));if(!n)return;const r=n.children?.findIndex((t=>e===t[L]));r>=0&&(n.children.splice(r,1),oe([...z]))}},UPDATE_RECORD:(e,t)=>{const n=_o(z,(t=>e===t[L]));n&&((0,X.merge)(n,t),oe([...z]))}})));const oe=e=>{j(e),ae.current=e,le.current=Do(e,L)},se=e=>{if(i)return v;const t=Ao(e,(e=>v.includes(e[A])));return 1===t.length?[t[0][L]]:[]},ce=e=>Ho(z,e,L)?.slice(0,-1)||[],de=()=>{if(E)return le.current;const e=[];return B.forEach((t=>{if(i){if("SHOW_ALL"===p&&!le.current.includes(t)&&e.push(...ce(t)),"SHOW_CHILD"===p&&e.push(...ce(t)),"SHOW_PARENT"===p){const n=$r(z,t);if(n){const r=ce(t),a=qo(n,L);e.push(...r,...[t,...a].filter((e=>le.current.includes(e))))}}}else e.push(...ce(t))})),[...new Set([...x,...e])]},ue=async()=>{if(!c)return;const{api:e,params:t,dataKey:n,afterFetch:r,callback:a}=c;try{M(!0);const i=await e(t);if(200===i.code){let e=Array.isArray(i.data)?i.data:(0,X.get)(i.data,n)??[];e="function"==typeof r?await r(e):e,oe(e),G(se(e)),W({}),a?.(e)}}catch(e){}M(!1)},me=e=>`${e}|${Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,pe=Ee("search-tree"),he={[pe]:!0,[`${pe}--lg`]:"large"===k,[`${pe}--sm`]:"small"===k};return l().createElement("div",{ref:_,className:xe()(he,n),style:r},l().createElement("div",{ref:re,className:"topper"},w&&l().createElement(R.Input,{ref:F,value:J,size:k,placeholder:h||P("qm.form.inputPlaceholder"),suffix:l().createElement(we.SearchOutlined,null),allowClear:!0,onChange:e=>(e=>{if(!a)return;const t=Lo(ae.current,(t=>{if(!e)return!0;const n=t[A]||"";return-1!==me(n).indexOf(e)}));ee(e),j(t),Z(E||e?Do(t,L):de())})(e.target.value)}),C&&l().createElement("a",{className:"trigger",onClick:()=>{ne(!te),Z(te?[]:le.current)}},te?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)," ",P(te?"qm.form.collect":"qm.form.spread"))),l().createElement(mt,{spinning:$},l().createElement(R.Tree,{fieldNames:{title:A,key:L,children:"children"},multiple:i,draggable:o,blockNode:o,checkable:i,selectable:!i,height:H,disabled:e.disabled,checkStrictly:m,selectedKeys:y??B,checkedKeys:y??B,expandedKeys:Q,treeData:z,loadData:u?async({key:e,children:t})=>{if(!c||t)return;const{api:n,params:r,dataKey:a,formatter:i=e=>e,afterFetch:l}=c;try{const t=await n(i({...r,[L]:e}));if(200===t.code){let n=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[];n="function"==typeof l?await l(n):n;const r=Fo(ae.current,e,L,n);oe(r)}}catch(e){}}:void 0,titleRender:e.titleRender,filterTreeNode:e=>{if(!J)return!1;const t=e[A]||"";return-1!==me(t).indexOf(J)},onDragStart:I,onDragEnter:e=>{Z(e.expandedKeys)},onDrop:e=>{const t=e.node.key,n=e.dragNode.key,r=e.node.pos.split("-"),a=e.dropPosition-Number(r[r.length-1]),i=(e,t,n)=>{for(let r=0;r<e.length;r++){if(e[r][L]===t)return n(e[r],r,e);e[r].children&&i(e[r].children,t,n)}},l=[...z];let o;if(i(l,n,((e,t,n)=>{n.splice(t,1),o=e})),e.dropToGap)if((e.node.children||[]).length>0&&e.node.expanded&&1===a)i(l,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));else{let e,n=[];i(l,t,((t,r,a)=>{n=a,e=r})),-1===a?n.splice(e,0,o):n.splice(e+1,0,o)}else i(l,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));oe(l)},onDragEnd:e=>{T?.(e,z)},onExpand:(e,t)=>{ie(e)&&ne(!1),le.current.every((t=>e.includes(t)))&&ne(!0),Z(e),O?.(e,t)},onSelect:e=>{G(e);const t=Ao(ae.current,(t=>e.includes((0,X.get)(t,L))));S?.(i?t:t[0])},onCheck:e=>{m&&(e=e.checked),G(e),m||("SHOW_CHILD"===p&&(e=e.filter((e=>!le.current.includes(e)))),"SHOW_PARENT"===p&&(e=e.filter(((e,t,n)=>!n.includes(Po(z,e,L))))));const t=Ao(ae.current,(t=>e.includes((0,X.get)(t,L))));N?.(i?t:t[0])}})))}));$o.displayName="QmSearchTree";const Mo=$o,Ko=()=>l().createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"filter",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"}));function zo(){return zo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},zo.apply(null,arguments)}const jo=e=>{const{column:t,filters:n}=e,{$size:r,prefixCls:a,setFilters:i,clearSuperFilters:o}=l().useContext(Aa),{t:s}=U(),c=l().useRef(null),d=l().useRef(null),u=l().useRef(null),[m,p]=l().useState(!1),[h,f]=l().useState(!1),[g,y]=l().useState({}),b=l().useMemo((()=>{const{dataIndex:e,filter:n}=t;return`${e}|${n.type}`}),[t]),v=l().useMemo((()=>{let e=!1;for(const t in n[b])if(!ie(n[b][t])||h){e=!0;break}return e}),[b,n,h]);l().useLayoutEffect((()=>{m&&setTimeout((()=>x()),20)}),[m]),l().useEffect((()=>{(0,X.isEqual)(g[b],n[b])||y({[b]:n[b]||{}}),f(""===n[b]?.["=="])}),[n]);const x=()=>{switch(t.filter.type){case"text":c.current.focus();break;case"number":d.current.focus();break;case"textarea":u.current.focus()}},E=e=>{e&&y(e),o(),i((e=>{for(const t in e){for(const n in e[t])if(ie(e[t][n])){if(["text","textarea"].includes(t.split("|")[1])&&null!==e[t][n])continue;delete e[t][n]}Object.keys(e[t]).length||delete e[t]}return e})({...n,...g,...e})),p(!1)},w={text:e=>l().createElement(l().Fragment,null,l().createElement(R.Input,{ref:c,size:r,placeholder:s("qm.table.filter.searchText",{text:or(e.title)}),style:{width:"180px"},value:g[b]?.like??"",disabled:h,onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{like:t||null}})))},onKeyDown:e=>{13===e.keyCode&&E()}}),l().createElement("div",{style:{marginTop:8}},l().createElement(R.Checkbox,{checked:h,onChange:e=>{const{checked:t}=e.target,n=t?"":null;y((e=>Object.assign({},e,{[b]:{"==":n,like:null}}))),f(t)}},s("qm.table.filter.nullValue")))),textarea:e=>l().createElement(l().Fragment,null,l().createElement(R.Input.TextArea,{ref:u,size:r,placeholder:s("qm.table.filter.searchAreaText",{text:or(e.title)}),style:{width:"220px"},value:g[b]?.likes??"",disabled:h,onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{likes:t||null}})))},onKeyDown:e=>{13!==e.keyCode||e.shiftKey||(e.preventDefault(),E())}}),l().createElement("div",{style:{marginTop:8}},l().createElement(R.Checkbox,{checked:h,onChange:e=>{const{checked:t}=e.target,n=t?"":null;y((e=>Object.assign({},e,{[b]:{"==":n,like:null}}))),f(t)}},s("qm.table.filter.nullValue")))),number:e=>{const t=e=>({value:g[b]?.[e]??"",size:r,onChange:t=>{t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER||y((n=>Object.assign({},n,{[b]:Object.assign({},n[b],{[e]:t})})))},onKeyDown:e=>{13===e.keyCode&&E()}});return l().createElement("ul",null,l().createElement("li",null,l().createElement("span",null,"> "),l().createElement(R.InputNumber,zo({ref:d},t(">"),{placeholder:s("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"< "),l().createElement(R.InputNumber,zo({},t("<"),{placeholder:s("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"= "),l().createElement(R.InputNumber,zo({},t("=="),{placeholder:s("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"!="),l().createElement(R.InputNumber,zo({},t("!="),{placeholder:s("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},date:e=>{const t=e=>({value:rr(g[b]?.[e],$a),format:$a,size:r,onChange:t=>{y((n=>Object.assign({},n,{[b]:Object.assign({},n[b],{[e]:ar(t,$a)})})))},onKeyDown:e=>{13===e.keyCode&&E()}});return l().createElement("ul",null,l().createElement("li",null,l().createElement("span",null,"> "),l().createElement(_,zo({},t(">"),{placeholder:s("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"< "),l().createElement(_,zo({},t("<"),{placeholder:s("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"= "),l().createElement(_,zo({},t("=="),{placeholder:s("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"!="),l().createElement(_,zo({},t("!="),{placeholder:s("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},radio:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("ul",null,l().createElement(R.Radio.Group,{style:{width:"100%"},value:g[b]?.["=="],onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{"==":t}})))}},r.map((e=>l().createElement("li",{key:e.value},l().createElement(R.Radio,{value:e.value,disabled:e.disabled},e.text))))))},checkbox:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("ul",null,l().createElement(R.Checkbox.Group,{style:{width:"100%"},value:g[b]?.in,onChange:e=>{y((t=>Object.assign({},t,{[b]:{in:e}})))}},r.map((e=>l().createElement("li",{key:e.value},l().createElement(R.Checkbox,{value:e.value,disabled:e.disabled},e.text))))))},tree:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("div",{style:{height:200,...t.style}},l().createElement(Mo,{multiple:!0,value:g[b]?.in||[],dataSource:r,onCheckChange:e=>{const t=e.map((e=>e.value));y((e=>Object.assign({},e,{[b]:{in:t}})))}}))}},C={"head-filter__popper":!0,[`${a}--lg`]:"large"===r,[`${a}--sm`]:"small"===r},S=["cell--filter",{selected:m,actived:v}];return l().createElement(Ri(),{action:["click"],popupVisible:m,popup:(()=>{const e=t.filter.type,n=w[e];return n?l().createElement("div",{className:"head-filter--wrap",onClick:e=>e.stopPropagation()},l().createElement("div",null,n(t)),l().createElement(R.Space,{style:{width:"100%",marginTop:8,justifyContent:"flex-end"}},l().createElement(fe,{size:r,onClick:()=>(E({[b]:{}}),void f(!1))},s("qm.table.filter.reset")),l().createElement(fe,{type:"primary",size:r,onClick:()=>E()},s("qm.table.filter.search")))):(me("Table","表头筛选的类型 `type` 配置不正确"),null)})(),popupClassName:xe()(C),popupStyle:{minWidth:150},onPopupVisibleChange:e=>{p(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},l().createElement("div",{className:xe()(S),title:s("qm.table.filter.text"),onClick:e=>e.stopPropagation()},l().createElement("span",{className:"svgicon icon"},l().createElement(Ko,null))))},Vo=e=>{const{column:t}=e,{tableRef:n,bordered:r}=l().useContext(Aa),{columns:a,resizable:i,columnsChange:o=ee}=n.current.props,s=l().useMemo((()=>Mn(t)),[t]),c={resizable:!0,"is--line":i&&!r};return l().createElement("div",{className:xe()(c),onMouseDown:e=>{e.preventDefault();const t=e.target,{elementStore:r,scrollBarRef:i}=n.current,l=r.$resizableBar,c=t.offsetWidth/2,d=e.clientX,u=Gn(t,r.$table).left-i.current.scrollLeft+c;r.$table.classList.add("c--resize"),l.style.left=`${u}px`,l.style.display="block";const m=s.width||s.renderWidth;let p=m;return document.onmousemove=function(e){if("number"!=typeof m)return;const t=e.clientX-d,n=m+t;n<(s.minWidth||Qa.defaultColumnWidth)||(p=Math.floor(n),l.style.left=`${t+u}px`)},document.onmouseup=function(){r.$table.classList.remove("c--resize"),l.style.display="none",this.onmousemove=null,this.onmouseup=null,"number"==typeof p&&(qn(a,s.dataIndex).width=p,o([...a]))},!1}})},Wo=e=>{const{selectionKeys:t}=e,{tableRef:n,getRowKey:r,fetchParams:a,createTableList:i,setSelectionKeysEffect:o,setInvalidRowKeys:s,setSpinning:c,isFetch:d,isWebPagination:u}=l().useContext(Aa),{rowSelection:m}=n.current.props,{fetchAllRowKeys:p,selectAllOnCurrentPage:h,filterable:f,onSelectAll:g}=m,{t:y}=U(),b=l().useRef([]),v=l().useMemo((()=>d&&!!p),[d,p]),x=l().useMemo((()=>!v&&!!h),[v,h]),E=l().useMemo((()=>(f??!0)&&!x),[f,x]),w=()=>{const{selectionRows:e}=n.current,{disabled:t}=m;return(t?e.filter((e=>!t(e))):e).map((e=>r(e,e.index)))},C=(()=>{const{recordsMap:e,allRowKeys:t}=n.current,{disabled:a}=m;if(v)return b.current.length?b.current:(0,X.union)(t,w());if(!x)return a?t.filter((t=>!a(e.get(t)))):t;const l=a?i().filter((e=>!a(e))).map((e=>r(e,e.index))):i().map((e=>r(e,e.index)));return(0,X.union)(l,w())})(),S=t.filter((e=>!C.includes(e))),N=t.length-S.length,I=N>0&&N<C.length,T=!!N&&N===C.length;s(S);const O=async()=>{const e=p;let t=[];c(!0);try{const n=await e.api(a);if(200===n.code){t=Array.isArray(n.data)?n.data:(0,X.get)(n.data,e.dataKey)??[];const{disabled:a}=m;a&&(t=(0,X.xor)(t,i().filter((e=>a(e))).map((e=>r(e,e.index))))),b.current=t}}catch(e){}return c(!1),t},k=async e=>{let t=[];t=v?e?await O():[]:e?C.slice(0):[],t=[...new Set([...t,...S])],o(t),g?.(e,t)};return l().createElement("div",{className:"cell--selection"},l().createElement(R.Checkbox,{checked:T,indeterminate:I,disabled:!C.length,onChange:e=>k(e.target.checked)}),E&&l().createElement(R.Dropdown,{overlayClassName:"all-selection__popper",dropdownRender:()=>(()=>{const e=[{key:1,label:y("qm.table.selection.all"),onClick:()=>{k(!0)}},{key:2,label:y("qm.table.selection.invert"),onClick:()=>(async()=>{let e=[];e=v?(0,X.xor)(t,await O()):(0,X.xor)(t,C),e=[...new Set([...e,...S])],o(e)})()},{key:3,label:y("qm.table.selection.clear"),onClick:()=>{k(!1)}}];return l().createElement(R.Menu,{items:e})})()},l().createElement(we.DownOutlined,{className:"svgicon icon"})),x&&l().createElement(R.Tooltip,{placement:"top",title:y("qm.table.selection.currentPage")},l().createElement(we.InfoCircleOutlined,{className:"info"})))},Bo=e=>{const{style:t}=e,{tableRef:n,setRowExpandedKeys:r}=l().useContext(Aa),{expandable:a}=n.current.props,[i,o]=l().useState(a?.defaultExpandAllRows||!1);He((()=>{r(i?[...n.current.allParentRowKeys]:[])}),[i]);const s=Ee("expand"),c={[`${s}--icon`]:!0,expanded:i,collapsed:!i};return l().createElement("span",{className:xe()(c),title:"",onClick:e=>{e.stopPropagation(),o(!i)},style:t})},Uo=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-up",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"})),Go=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-down",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"})),Yo=e=>{const{tableColumns:t}=e,{tableRef:n,prefixCls:r,layout:a,flattenColumns:i,sorter:o,filters:s,superFilters:c,selectionKeys:d,isFetch:u,isGroupSubtotal:m,treeExpandIndex:p,tableChange:h,setSorter:f,setElementStore:g,resetTableScroll:y,getStickyLeft:b,getStickyRight:v,createGroupData:x,createTableFullData:E}=l().useContext(Aa),{ellipsis:w,resizable:C,multipleSort:S,rowSelection:N,expandable:I}=n.current.props,[T,O]=Qa.sortDirections,{tableOriginData:k}=n.current,{t:P}=U(),L=l().useRef(null),A=l().useMemo((()=>k.some((e=>Array.isArray(e.children)))),[k]),_=l().useMemo((()=>!u),[u]),F=l().useMemo((()=>!u),[u]),D=l().useMemo((()=>!I?.hideExpandAll),[I]),H=l().useMemo((()=>!(!N||(u?!N.selectAllOnCurrentPage&&!N.fetchAllRowKeys:N.hideSelectAll))),[u,N]);He((()=>{j(),h(),y()}),[o]),He((()=>{G(),h(),y()}),[s]),He((()=>{G(),h(),y()}),[c]),l().useEffect((()=>{!ie(o)&&re((()=>j())),!ie(s)&&re((()=>G()))}),[]),l().useLayoutEffect((()=>{q()}),[]);const q=()=>{g("$header",L.current)},$=e=>{const{dataIndex:t,type:r,sorter:a,title:i,description:s}=e;if(t===Qa.selectionColumn&&"checkbox"===r){if("checkbox"===r)return l().createElement("div",{className:"cell"},H?l().createElement(Wo,{selectionKeys:d}):P("qm.table.config.selectionText"));if("radio"===r)return l().createElement("div",{className:"cell"},i)}const c=[];return c.push(l().createElement("div",{key:0,className:"cell",title:or(i)},n.current.isTreeTable&&t===p&&D?l().createElement(Bo,null):null,t===Qa.expandableColumn&&D?l().createElement(Bo,null):i)),s&&c.push(l().createElement(R.Tooltip,{key:1,placement:"top",title:s},l().createElement(we.InfoCircleOutlined,{className:"tip"}))),a&&c.push(M(o[t])),c},M=e=>{const t=["svgicon cell--sorter__asc",{actived:e===T}],n=["svgicon cell--sorter__desc",{actived:e===O}];return l().createElement("div",{key:2,className:"cell--sorter",title:P("qm.table.sorter.text")},l().createElement("span",{className:xe()(t)},l().createElement(Uo,null)),l().createElement("span",{className:xe()(n)},l().createElement(Go,null)))},K=e=>l().createElement(jo,{column:e,filters:s}),z=(e,t)=>{const{sorter:n,dataIndex:r}=t;if(n){const e=o[r],t=e?e===O?null:O:T;S?(delete o[r],f(Object.assign({},o,{[r]:t}))):f(Object.assign({},{[r]:t}))}},j=()=>{_&&V()},V=e=>{const t=(0,X.pickBy)(o,(e=>null!==e));B(t),e||Object.keys(t).length||B({index:T})},W=(e,t)=>Number.isNaN(e-t)?e.toString().localeCompare(t.toString()):e-t,B=e=>{const{tableFullData:t}=n.current,r=((e,t)=>e.sort(((e,n)=>{for(const r in t){const a=i.find((e=>e.dataIndex===r)),l=t[r],o=Qn(e,r),s=Qn(n,r),c="function"!=typeof a?.sorter?W(o,s):a.sorter(e,n);if(0!==c)return"ascend"===l?c:-c}return 0})).slice(0))(m?x(sr(t)):t,e);E(r)},G=()=>{F&&Y()},Y=()=>{const e=c.length?cr(c):cr(s),t=""!==e?m?x(An(sr(k),e,A)):An(k,e,A):k;E(t),V(!0)},Q=Wn(t),{tableBodyWidth:Z}=a;return l().createElement("div",{ref:L,className:`${r}--header-wrapper`},l().createElement("table",{className:`${r}--header`,cellSpacing:"0",cellPadding:"0",style:{width:Z?`${Z}px`:""}},l().createElement("colgroup",null,i.map((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;return l().createElement("col",{key:t,style:{width:`${n||r}px`,minWidth:`${n||r}px`}})}))),l().createElement("thead",null,(e=>e.map(((e,t)=>l().createElement("tr",{key:t,className:"header--row"},e.map(((t,r)=>((e,t,r)=>{const{dataIndex:a,colSpan:i,rowSpan:s,fixed:c,align:d,theadAlign:u,theadClassName:m="",sorter:p,filter:h,required:f,headRender:g}=e;if(0===i)return null;const y=u||d,x=["header--column",{"col--ellipsis":e.ellipsis??w,"col--center":"center"===y,"col--right":"right"===y,"column--required":!!f,"column-has-sorter":p,"column-has-filter":h,"column--sort":!!o[a],"cell-fix-left":"left"===c,"cell-fix-right":"right"===c,"cell-fix-left-last":"left"===c&&!r[t+(i??1)]?.fixed,"cell-fix-right-first":"right"===c&&!r[t-1]?.fixed,[m]:!!m}],E={left:"left"===c?`${b(a)}px`:"",right:"right"===c?`${v(a,"thead")}px`:""},S=C&&![Qa.expandableColumn,Qa.selectionColumn].includes(a);return l().createElement("th",{key:a,className:xe()(x),colSpan:i,rowSpan:s,style:{...E},onClick:t=>z(t,e)},l().createElement("div",{className:"cell--wrapper"},g?l().createElement("div",{className:"cell--text cell"},g(e,n.current.tableFullData)):l().createElement(l().Fragment,null,l().createElement("div",{className:"cell--text"},$(e)),h?K(e):null)),S&&l().createElement(Vo,{column:e}))})(t,r,e)))))))(Q))))},Xo=l().createContext([]),Qo=(e,t,n,r,a,i,l,o,s,c)=>{const{clientX:d,clientY:u}=e,{top:m,height:p}=e.target.getBoundingClientRect(),h=((a?.x||0)-d-12)/r,f=s.filter((e=>o[e]?.children?.length));let g=Zo(o,n.eventKey);if(u<m+p/2){const e=l.findIndex((e=>e===g.key)),t=l[e<=0?0:e-1];g=Zo(o,t)}const y=g.key,b=g,v=g.key;let x=0,E=0;if(!f.includes(y))for(let e=0;e<h&&es(g);e+=1)g=g.parent,E+=1;const w=t.data,C=g.node;let S=!0;return ts(g)&&0===g.level&&u<m+p/2&&i({dragNode:w,dropNode:C,dropPosition:-1})&&g.key===n.eventKey?x=-1:(b.children||[]).length&&f.includes(v)?i({dragNode:w,dropNode:C,dropPosition:0})?x=0:S=!1:0===E?h>-1.5?i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1:i({dragNode:w,dropNode:C,dropPosition:0})?x=c?1:0:i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1:i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1,{dropPosition:x,dropLevelOffset:E,dropTargetKey:g.key,dropTargetPos:g.pos,dragOverNodeKey:v,dropContainerKey:0===x?null:g.parent?.key||null,dropAllowed:S}},Zo=(e,t)=>e[t],Jo=e=>e.split("-"),es=e=>{if(e.parent){const t=Jo(e.pos);return Number(t[t.length-1])===e.parent.children.length-1}return!1},ts=e=>{const t=Jo(e.pos);return 0===Number(t[t.length-1])},ns=(e,{dragOverNodeKey:t,dropPosition:n,keyEntities:r})=>{const a=Zo(r,e);return{eventKey:e,pos:a?a.pos:"",dragOver:t===e&&0===n,dragOverGapTop:t===e&&-1===n,dragOverGapBottom:t===e&&1===n}},rs=({openDragSort:e})=>{const{tableRef:t,getRowKey:n,rowExpandedKeys:r,setRowExpandedKeys:a,createTableFullData:i,dataChange:o}=l().useContext(Aa),{tableFullData:s,allRowKeys:c,isTreeTable:d}=t.current,u=te,m=l().useRef(null),p=l().useRef(null),h=l().useRef(null),f=l().useRef(),[g,y]=l().useState({}),[b,v]=l().useState(null),[x,E]=l().useState([]),[w,C]=l().useState(0),[S,N]=l().useState({dropPosition:null,dropLevelOffset:null,dropContainerKey:null,dropTargetKey:null,dropTargetPos:null,dropAllowed:!0,dragOverNodeKey:null}),I=e=>{N((t=>Object.assign({},t,e)))};l().useLayoutEffect((()=>{e&&y((e=>{const t={},r=(e,a=null,i=0)=>{const l=[];return e.forEach(((e,o)=>{const s=n(e,e.index),c={index:o,key:s,level:i,node:e,parent:a,pos:(d=a?.pos||"0",u=o,`${d}-${u}`),nodes:[...a?.nodes||[],e]};var d,u;Array.isArray(e.children)&&(c.children=r(e.children,c,i+1)),t[s]=c,l.push(c)})),l};return r(e),t})(s))}),[s]),l().useEffect((()=>()=>{window.removeEventListener("dragend",O)}),[]);const T=()=>{I({dragOverNodeKey:null,dropPosition:null,dropLevelOffset:null,dropTargetKey:null,dropContainerKey:null,dropTargetPos:null,dropAllowed:!1})},R=()=>{null!==b&&(v(null),I({dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null})),p.current=null,h.current=null},O=e=>{k(e,null,!0),window.removeEventListener("dragend",O)},k=(e,t,n)=>{I({dragOverNodeKey:null}),R(),m.current=null,window.removeEventListener("dragend",O)};return{onNodeDragStart:(e,t)=>{const{eventKey:n}=t;m.current=t,p.current={x:e.clientX,y:e.clientY};const i=((e,t)=>{if(!e)return[];const n=e.slice(),r=n.indexOf(t);return r>=0&&n.splice(r,1),n})(r,n);v(n),E(((e,t)=>{const n=[];return function e(t=[]){t.forEach((({key:t,children:r})=>{n.push(t),e(r)}))}(Zo(t,e).children),n})(n,g)),C(2*Qa.treeTable.textIndent),a(i),window.addEventListener("dragend",O)},onNodeDragEnter:(e,t)=>{const{eventKey:n}=t;if(h.current!==n&&(h.current=n),!m.current)return void T();const{dropPosition:i,dropLevelOffset:l,dropTargetKey:o,dropContainerKey:s,dropTargetPos:y,dropAllowed:v,dragOverNodeKey:E}=Qo(e,m.current,t,w,p.current,u,c,g,r,!d);-1===x.indexOf(o)&&v?(f.current||(f.current={}),Object.keys(f.current).forEach((e=>{clearTimeout(f.current[e])})),m.current.eventKey!==n&&(e.persist(),f.current[n]=window.setTimeout((()=>{if(null===b)return;let e=[...r];const t=Zo(g,n);t&&t.children?.length&&(e=((e,t)=>{const n=(e||[]).slice();return-1===n.indexOf(t)&&n.push(t),n})(r,n)),a(e)}),800)),m.current.eventKey!==o||0!==l?I({dragOverNodeKey:E,dropPosition:i,dropLevelOffset:l,dropTargetKey:o,dropContainerKey:s,dropTargetPos:y,dropAllowed:v}):T()):T()},onNodeDragOver:(e,t)=>{if(!m.current)return;const{dropPosition:n,dropLevelOffset:a,dropTargetKey:i,dropContainerKey:l,dropAllowed:o,dropTargetPos:s,dragOverNodeKey:h}=Qo(e,m.current,t,w,p.current,u,c,g,r,!d);-1===x.indexOf(i)&&o&&(m.current.eventKey===i&&0===a?null===S.dropPosition&&null===S.dropLevelOffset&&null===S.dropTargetKey&&null===S.dropContainerKey&&null===S.dropTargetPos&&!1===S.dropAllowed&&null===S.dragOverNodeKey||T():n===S.dropPosition&&a===S.dropLevelOffset&&i===S.dropTargetKey&&l===S.dropContainerKey&&s===S.dropTargetPos&&o===S.dropAllowed&&h===S.dragOverNodeKey||I({dropPosition:n,dropLevelOffset:a,dropTargetKey:i,dropContainerKey:l,dropTargetPos:s,dropAllowed:o,dragOverNodeKey:h}))},onNodeDragLeave:(e,t)=>{h.current!==t.eventKey||e.currentTarget.contains(e.relatedTarget)||(T(),h.current=null)},onNodeDragEnd:k,onNodeDrop:(e,t,r=!1)=>{const{dropPosition:a,dropTargetKey:l,dropTargetPos:c,dropAllowed:d,dragOverNodeKey:u}=S;if(!d)return;if(I({dragOverNodeKey:null}),R(),null===l)return;const p={...ns(l,{dropPosition:a,dragOverNodeKey:u,keyEntities:g}),data:Zo(g,l).node};-1!==x.indexOf(l)&&me("Table Draggable","无法拖放到 `dragNode` 的子节点");const h=Jo(c),f={event:e,node:p,dragNode:m.current,dragNodesKeys:[m.current.eventKey].concat(x),dropToGap:0!==a,dropPosition:a+Number(h[h.length-1])};r||(e=>{const t=e.node.eventKey,r=e.dragNode.eventKey,a=e.node.pos.split("-"),l=e.dropPosition-Number(a[a.length-1]),c=(e,t,r)=>{for(let a=0;a<e.length;a++){if(n(e[a],e[a].index)===t)return r(e[a],a,e);e[a].children&&c(e[a].children,t,r)}},d=[...s];let u;if(c(d,r,((e,t,n)=>{n.splice(t,1),u=e})),e.dropToGap){let e,n=[];c(d,t,((t,r,a)=>{n=a,e=r})),-1===l?n.splice(e,0,u):n.splice(e+1,0,u)}else c(d,t,(e=>{e.children=e.children||[],e.children.unshift(u)}));i(d),o()})(f),m.current=null},indent:w,dropOptions:S}};function as(){const[,e]=i.useReducer((e=>e+1),0);return e}const is=l().forwardRef(((e,t)=>{const{rowKey:n,rowIndex:r,row:a,className:i,style:o,indent:s,filter:c,dropOption:d,onNodeDragStart:u,onNodeDragEnter:m,onNodeDragOver:p,onNodeDragLeave:h,onNodeDragEnd:f,onNodeDrop:g}=e,y=l().useRef({eventKey:n,data:a,props:e}),b=l().useRef(!1),[v,x]=l().useState(!1),{dropPosition:E,dropLevelOffset:w,dragOverNodeKey:C,dropTargetKey:S,dropContainerKey:N}=d,I=C===n&&0===E,T=C===n&&-1===E,R=C===n&&1===E,O=a._level||0,k={};switch(E){case-1:Object.assign(k,{top:0,left:-w*s+O*s});break;case 1:Object.assign(k,{bottom:0,left:-w*s+O*s});break;case 0:Object.assign(k,{bottom:0,left:s+O*s})}const P={"body--row-draggable":!0,"body--row-dragging":v,"drop-target":S===n,"drop-container":N===n,"drag-over":I,"drag-over-gap-top":T,"drag-over-gap-bottom":R};return l().createElement("tr",{ref:t,"data-row-key":n,"data-row-index":r,className:xe()(i,P),style:o,draggable:!0,onMouseDown:e=>{var t;c&&(t=e.target.matches(c),b.current=t)},onDragStart:e=>{if(e.stopPropagation(),b.current)return e.preventDefault();x(!0),u(e,y.current);try{e.dataTransfer.setData("text/plain","")}catch(e){}},onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),m(e,y.current)},onDragOver:e=>{e.preventDefault(),e.stopPropagation(),p(e,y.current)},onDragLeave:e=>{e.stopPropagation(),h(e,y.current)},onDrop:e=>{e.preventDefault(),e.stopPropagation(),x(!1),g(e,y.current)},onDragEnd:e=>{e.stopPropagation(),x(!1),f(e,y.current)}},e.children,C===n&&null!==E&&null!==w&&l().createElement("td",{className:"drop-indicator",style:k}))}));is.displayName="DraggableTr";const ls=is,os=e=>{const{selectionKeys:t,column:n,record:r,rowKey:a}=e,{tableRef:i}=l().useContext(Aa),{rowSelection:o}=i.current.props,s=l().useMemo((()=>n.type||""),[n.type]),c=e=>{const n=o.checkStrictly??!0;if(!i.current.isTreeTable||n)return!1;const r=zn(i.current.deriveRowKeys,e);return((e,t)=>{const n=new Set(t);let r=!1,a=!1;for(const t of e)if(n.has(t)?r=!0:a=!0,r&&a)break;return r&&a})(hr(r?.children??[]),t)};return"radio"===s?(()=>{const e=o.disabled,n=e?.(r),i=!n&&t[0]===a;return l().createElement(R.Radio,{checked:i,disabled:n})})():(()=>{const e=o.disabled,n=e?.(r),i=!!t.includes(a);return l().createElement(R.Checkbox,{checked:i,indeterminate:c(a),disabled:n})})()},ss=e=>{const{record:t,rowKey:n,style:r}=e,{tableRef:a,rowExpandedKeys:i,setRowExpandedKeys:o}=l().useContext(Aa),{expandable:s={}}=a.current.props,[c]=l().useState("function"==typeof s.rowExpandable&&!s.rowExpandable(t)),d=l().useMemo((()=>i.includes(n)),[i,n]);He((()=>{s.onExpand?.(d,t)}),[d]);const u=Ee("expand"),m={[`${u}--icon`]:!0,expanded:d,collapsed:!d,disabled:c};return l().createElement("span",{className:xe()(m),title:"",onClick:e=>{if(e.stopPropagation(),c)return;const t=d?i.filter((e=>e!==n)):[...i,n];o(t)},style:r})},cs=l().forwardRef(((e,t)=>{const{size:n,defaultValue:r,value:a,min:i,max:o,prefix:s,suffix:c,placeholder:d,maxLength:u,precision:m,stringMode:p,allowClear:h,readOnly:f,disabled:g,formatter:y=e=>e.toString(),parser:b=e=>e,onFocus:v}=e,x=e=>{let t=e.toString();return"."!==t.charAt(t.length-1)&&"-"!==t||(t=t.slice(0,-1)),t&&Number(t)>o&&(t=o.toString()),t&&Number(t)<i&&(t=i.toString()),m>=0&&""!==t&&(t=new(Ca())(t).toFixed(m)),t},E=void 0!==a,[w,C]=l().useState(r??""),S=y(E?a:w),N=b(S);return He((()=>{e.onChange?.(N)}),[w]),l().createElement(R.Input,{ref:t,size:n,value:S,maxLength:u,prefix:s,suffix:c,placeholder:d,allowClear:h,readOnly:f,disabled:g,onChange:t=>{const n=b(t.target.value.replace(/\s+/g,""));let r=/^-?\d*(\.\d*)?$/.test(n)||""===n||"-"===n;if(0===m&&n.includes(".")&&(r=!1),i>=0&&n.startsWith("-")&&(r=!1),r){if(!p&&(Number(n)>Number.MAX_SAFE_INTEGER||Number(n)<Number.MIN_SAFE_INTEGER))return;(t=>{E?e.onChange?.(t):C(t)})(n)}},onFocus:v,onBlur:()=>{const t=x(N);e.onBlur?.(t,N)},onKeyUp:t=>{13===t.keyCode&&e.onEnter?.(x(N),N)}})}));cs.displayName="InputNumber";const ds=cs,us=e=>{const{multiple:t,tree:n={},defaultSelectedKeys:r,className:a,style:i,onClose:o}=e,{$size:s}=Y(e),{t:c}=U(),[d,u]=l().useState(),[m]=l().useState(n.fetch?.params),p=Ee("tree-helper"),h={[`${p}--wrapper`]:!0},f=n.fetch?{...oe(n.fetch,["params","valueKey","textKey"]),params:m}:void 0;return l().createElement("div",{className:xe()(h,a),style:i},l().createElement(Mo,{multiple:t,fetch:f,fieldsDefine:{valueKey:n.fetch?.valueKey,textKey:n.fetch?.textKey},autoFocus:!0,asyncLoad:n.asyncLoad,checkStrictly:n.checkStrictly,checkStrategy:n.checkStrategy,defaultSelectedKeys:r,defaultExpandAll:n.defaultExpandAll,onSelectChange:e=>u(e),onCheckChange:e=>u(e)}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[s]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>o(null),style:{marginRight:8}},c("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!d,onClick:()=>o(d)},c("qm.dialog.confirm"))))};us.displayName="TreeHelper";const ms=us;function ps(){return ps=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ps.apply(null,arguments)}const{Search:hs}=R.Input,fs=l().forwardRef(((e,t)=>{const{column:n,record:r,rowKey:a,columnKey:i}=e,{tableRef:o,tableBodyRef:s,$size:c,flattenColumns:d,updateTableFlatData:u,doFieldValidate:m,dataChange:p}=l().useContext(Aa),h=l().useContext(Xo),{t:f}=U(),g=as(),{store:y,fieldAuth:b}=o.current,v=n.editRender?.(r,n)||{},x=l().useRef(null),E=l().useRef(null),w=l().useRef(null),C=l().useRef(null),S=l().useRef(null),N=l().useRef(!1),I=l().useRef({}),T=l().useRef({}),O=l().useRef([]),[k,P]=l().useState(!1),[L,A]=l().useState(!1),[F,D]=l().useState(v.items||[]),[H,$]=l().useState(),M=(v.editable||(0,X.isEqual)(h,[a,i]))&&!v.disabled&&!b[i]?.disabled,K=`${a}|${i}`,z=2===h.length?`${h[0]}|${h[1]}`:"",j=![...y.state.required,...y.state.validate].some((({x:e,y:t})=>e===a&&t===i)),V=y.state.required.find((({x:e,y:t})=>e===a&&t===i))?.text||"",W=y.state.validate.find((({x:e,y:t})=>e===a&&t===i))?.text||"",B=y.state.edited.some((({x:e,y:t})=>e===a&&t===i)),G=M||!j||k||L,Y=!!v.helper?.combinedDataIndex&&("search-helper"===v.type||"tree-helper"===v.type),Q=v.type?.endsWith("multiple");l().useLayoutEffect((()=>{G&&z===K&&ee()}),[h]),l().useLayoutEffect((()=>{const{items:e}=v;Q&&e&&J(e.map((e=>({[T.current.valueKey]:e.value,[T.current.textKey]:e.text}))))}),[]);const Z=()=>{u(),p()},J=e=>{O.current=e},ee=()=>{const{type:e}=v;switch(e){case"text":E.current?.focus();break;case"number":w.current?.select();break;case"search-helper":C.current?.focus();break;case"tree-helper":S.current?.focus()}},ne=()=>{const{type:e}=v;switch(e){case"text":E.current?.blur();break;case"number":w.current?.blur();break;case"search-helper":C.current?.blur();break;case"tree-helper":S.current?.blur()}};l().useImperativeHandle(t,(()=>({focus:ee,blur:ne,isEditable:()=>!v.disabled,isOpening:()=>k})));const ae=(e,t,n)=>{const{cornerSign:r=!0}=v.extra||{};y.addToUpdated(e),r&&y.addToEdited({x:t,y:n})},ie=e=>e?(e=>/^[+-]?\d+(\.\d+)?[eE][+-]?\d+$/.test(e.toString()))(Number(e))?e:Number(e):"",le={text:(e,t,n)=>{const{dataIndex:r}=t,{type:o,extra:s={},rules:d=[],onInput:u,onChange:p,onEnter:h,onBlur:y}=v,b=Qn(e,r),x=Object.assign({},{minRows:1,maxRows:4},s.autoSize),w=n?{rows:x.minRows,autoSize:x}:null,C=s.password?R.Input.Password:n?R.Input.TextArea:R.Input;return l().createElement(C,ps({ref:E,size:c,value:b,maxLength:s.maxLength,showCount:s.showCount},w,{autoComplete:s.password?"new-password":"off",placeholder:s.placeholder??f("qm.table.editable.inputPlaceholder"),allowClear:s.allowClear,readOnly:s.readOnly,disabled:s.disabled,suffix:s.suffix,onChange:n=>{const l=n.target.value??"";Zn(e,r,l),m(d,l,a,i,or(t.title)),g(),u?.({[K]:l}),N.current=!0},onBlur:t=>{const n=t.target.value??"";N.current&&(N.current=!1,ae(e,a,i),p?.({[K]:n},e),y?.({[K]:n},e),Z())},onKeyUp:t=>{if(13===t.keyCode&&!t.shiftKey){const n=t.target.value??"";h?.({[K]:n},e)}},onKeyDown:e=>{n&&13===e.keyCode&&!e.shiftKey&&h&&e.preventDefault()}}))},textarea:(e,t)=>le.text(e,t,!0),number:(e,t)=>{const{dataIndex:n,precision:r,formatType:o}=t,{type:s,extra:d={},rules:u=[],onInput:p,onChange:h,onEnter:y,onBlur:b}=v,x=Qn(e,n);let E,C;return"finance"===o&&(E=e=>{const t=e.toString().split(".");return`${t[0].replace(/\B(?=(\d{3})+(?!\d))/g,",")}${void 0!==t[1]?`.${t[1]}`:""}`},C=e=>e.replace(/\$\s?|(,*)/g,"")),"percent"===o&&(E=e=>"."===(e+="").charAt(e.length-1)||"-"===e||""===e?e:`${new(Ca())(e).times(100).toNumber()}`,C=e=>"."===e.charAt(e.length-1)||"-"===e||""===e?e:new(Ca())(e).times(.01).toString()),l().createElement(ds,{ref:w,size:c,value:x,min:d.min,max:d.max,precision:r,stringMode:d.stringMode,prefix:d.prefix,suffix:d.suffix??("percent"===o?"%":void 0),placeholder:d.placeholder??f("qm.table.editable.inputPlaceholder"),maxLength:d.maxLength,allowClear:d.allowClear,readOnly:d.readOnly,disabled:d.disabled,formatter:E,parser:C,onChange:r=>{Zn(e,n,r),m(u,r,a,i,or(t.title)),g(),p?.({[K]:r}),N.current=!0},onBlur:(t,r)=>{if(!N.current)return;N.current=!1;let l=d.stringMode?t:ie(t);"percent"===o&&"."===r.charAt(r.length-1)&&(l=Number(t)/100),Zn(e,n,l),ae(e,a,i),h?.({[K]:l},e),b?.({[K]:l},e),Z()},onEnter:(t,n)=>{let r=d.stringMode?t:ie(t);"percent"===o&&"."===n.charAt(n.length-1)&&(r=Number(t)/100),y?.({[K]:r},e)}})},select:(e,t,n)=>{const{dataIndex:r,dictItems:o=[]}=t,{type:s,extra:d={},rules:u=[],items:p,onChange:h,onEnter:g}=v,y=p||o,b=Qn(e,r);let x=b;return l().createElement(R.Select,{mode:n?"multiple":void 0,size:c,popupClassName:Qa.popupClassName,value:b||void 0,placeholder:d.placeholder??f("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:d.filterable??!0,filterOption:(e,t)=>{const n=t?.children?.toString()||"";return`${n}|${Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`.toLowerCase().indexOf(e.toLowerCase())>=0},onDropdownVisibleChange:e=>P(e),onChange:n=>{Zn(e,r,n),m(u,n,a,i,or(t.title)),ae(e,a,i),h?.({[K]:n},e),Z()},onSelect:e=>{x=e},onInputKeyDown:t=>{13===t.keyCode&&re((()=>g?.({[K]:x},e)))}},y.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))},"select-multiple":(e,t)=>le.select(e,t,!0),date:(e,t,n)=>{const{dataIndex:r}=t,{type:o,extra:s={},rules:d=[],onChange:u}=v,p=n||"exactdate",h=Qn(e,r);return l().createElement(_,{size:c,popupClassName:Qa.popupClassName,value:rr(h,Rr[p])??void 0,picker:Tr[p],format:s.format,showTime:"datetime"===p,disabledDate:e=>(e=>{const{minDateTime:t,maxDateTime:n}=s;return t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day")})(e),placeholder:s.placeholder,allowClear:s.allowClear,disabled:s.disabled,style:{width:"100%"},onChange:n=>{const l=ar(n,Rr[p]);Zn(e,r,l),m(d,l,a,i,or(t.title)),ae(e,a,i),u?.({[K]:l},e),Z()}})},datetime:(e,t)=>le.date(e,t,"datetime"),month:(e,t)=>le.date(e,t,"month"),year:(e,t)=>le.date(e,t,"year"),time:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:d}=v,u="HH:mm:ss",p=Qn(e,n);return l().createElement(q,{size:c,popupClassName:Qa.popupClassName,value:rr(p,u)??void 0,format:o.format||u,placeholder:o.placeholder,allowClear:o.allowClear,disabled:o.disabled,style:{width:"100%"},onChange:r=>{const l=ar(r,u);Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),d?.({[K]:l},e),Z()}})},checkbox:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:c}=v,{trueValue:d=Ha,falseValue:u=qa,disabled:p}=o,h=Qn(e,n);return l().createElement(R.Checkbox,{checked:h===d,disabled:p,onChange:r=>{const l=r.target.checked?d:u;Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),c?.({[K]:l},e),Z()}})},switch:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:c}=v,{trueValue:d=Ha,falseValue:u=qa,disabled:p}=o,h=Qn(e,n);return l().createElement(R.Switch,{checked:h===d,disabled:p,onChange:r=>{const l=r?d:u;Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),c?.({[K]:l},e),Z()}})},"search-helper":(e,t)=>{const{dataIndex:n,precision:r}=t,{type:o,extra:s={},rules:u=[],helper:p={},onInput:h,onChange:g,onEnter:y}=v,b=Jn(e,Y?p.combinedDataIndex:n),x=p.fieldAliasMap;x||me("Table","helper 需要配置 `fieldAliasMap` 选项");const E="function"==typeof x?x():x||{};Object.keys(E).includes(n)||me("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值"),Y&&(p.combinedDataIndex.split("|").every((e=>Object.keys(E).includes(e)))||me("Table","所有出现在 `combinedDataIndex` 里的数据字段,在 `fieldAliasMap` 中必须做对应的映射配置"),E[n].includes("|")&&me("Table","配置了 `combinedDataIndex` 参数后,在 `fieldAliasMap` 中自身 `dataIndex` 值不能再使用分隔符"));const w=e=>{const{filterAliasMap:t}=p,r=""!==e?e:void 0,a=("function"==typeof t?t():t)||[],i={[n]:r};return(Array.isArray(a)?a:[a]).forEach((e=>{if((0,X.isPlainObject)(e))for(const t in e)i[t]="function"==typeof e[t]?e[t](r):r;else i[e]=r})),i},S=e=>{const{autoQueryAssign:t=!0}=p;t&&(I.current=w(e)),P(!0)},T=(n,r)=>{const{beforeOpen:a}=p,i=(a??te)({[K]:b},e,t);i?.then?i.then((()=>{S(n),r?.()})).catch((()=>{})):!1!==i&&(S(n),r?.())},R=e=>{const t={};for(const r in E){const a=E[r];r!==n&&(t[r]=Jn(e,a))}const r=E[n]?Jn(e,E[n]):"";L(r,t);const{closed:a}=p;P(!1),a?.(e)},O=()=>{const{onlySelect:e=!0}=p;N.current&&L(e?"":b),P(!1)},L=(l="",o)=>{if((0,X.isPlainObject)(o)&&Object.keys(o).length)for(const t in o){const n=o[t],r=d.find((e=>e.dataIndex===t));if(r){Zn(e,t,n,r.precision);const i=r.editRender?.(e,r);i&&Array.isArray(i.rules)&&m(i.rules,n,a,t,or(r.title))}else Zn(e,t,n)}Y&&!l&&((e,t)=>{if(!t.includes("|"))return Zn(e,t,"",void 0);const n="".split("|")||[];t.split("|").forEach(((t,r)=>{t&&Zn(e,t,n[r]?.trim())}))})(e,p.combinedDataIndex),Zn(e,n,l,r),m(u,l,a,i,or(t.title)),ae(e,a,i),g?.({[K]:l},e),Z(),I.current={},N.current=!1,$(void 0)},_={visible:k,title:f("qm.searchHelper.text"),width:p.width??"60%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{O()}},F={...p,size:c,initialValue:Object.assign({},I.current,p.initialValue),onClose:e=>{e?R(e):O()}};return l().createElement(l().Fragment,null,l().createElement(hs,{ref:C,value:H??b,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:s.allowClear,readOnly:s.readOnly,disabled:s.disabled,onBlur:e=>{const{value:t}=e.target,{onlySelect:r=!0,table:a}=p;if(N.current&&!k)return t&&r&&a?.fetch?.api?(e=>{const{table:t,initialValue:n={}}=p,{beforeFetch:r=te}=t.fetch;return new Promise((async(a,i)=>{const l=(0,X.merge)({},t.fetch.params,{...n,...w(e)},{currentPage:1,pageSize:500});if(!r(l))return i();A(!0);try{const e=await t.fetch.api(l);200===e.code?a(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[]):i()}catch(e){i(e)}finally{re((()=>A(!1)))}}))})(t).then((e=>((e=[],t)=>{const r=e.filter((e=>Jn(e,E[n]).toString().includes(t)));if(1===r.length)return R(r[0]);T(t)})(e,t))).catch((()=>L(""))):void L(t)},onChange:e=>{const{value:t}=e.target;h?.({[K]:t}),N.current=!0,$(t)},onKeyDown:e=>{if(13===e.keyCode){const t=e.target.value??"";!k&&T(t)}},onDoubleClick:e=>{const{value:t}=e.target;T(t)},onSearch:(e,t)=>{"click"===t?.type&&"INPUT"!==t.target.tagName&&T(e)}}),l().createElement(yn,_,l().createElement($s,F)))},"search-helper-multiple":(e,t)=>{const{dataIndex:n}=t,{type:r,items:o=[],extra:s={},rules:d=[],helper:u={},onInput:p,onChange:h,onEnter:g}=v,y=Qn(e,n),b=u.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes("valueKey")&&Object.keys(x).includes("textKey")||me("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`"),T.current=x;const E=n=>{const{beforeOpen:r}=u,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=r=>{Zn(e,n,r),m(d,r,a,i,or(t.title)),ae(e,a,i),h?.({[K]:r},e,O.current),Z()},S={visible:k,title:f("qm.searchHelper.text"),width:u.width??"60%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},N={...u,size:c,multiple:!0,initialValue:(0,X.merge)({},u.initialValue),defaultSelectedKeys:y,onClose:(e,t)=>{e?((e,t)=>{const{textKey:n,valueKey:r}=x;J((0,X.uniqBy)([...O.current.filter((e=>t.includes(e[r]))),...e],r));const a=O.current.map((e=>({text:e[n],value:e[r]}))),i=(0,X.uniqBy)([...a,...o],"value").filter((e=>t.includes(e.value)));D(i),C(i.map((e=>e.value)));const{closed:l}=u;P(!1),l?.(O.current)})(e,t):w()}};return l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{className:"ant-input-wrapper ant-input-group"},l().createElement(R.Select,{mode:"multiple",open:!1,value:y,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:s.allowClear,maxTagCount:s.collapseTags?"responsive":void 0,maxTagTextLength:s.maxTagTextLength,disabled:s.disabled,style:{width:"100%"},onKeyDown:e=>{13===e.keyCode&&!k&&E()},onDoubleClick:()=>{s.disabled||E()},onChange:e=>{const{valueKey:t}=x;J(O.current.filter((n=>e.includes(n[t])))),C(e)}},F.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text)))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:s.disabled,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{E()}})))),l().createElement(yn,S,l().createElement($s,N)))},"tree-helper":(e,t)=>{const{dataIndex:n,precision:r}=t,{type:o,extra:s={},rules:u=[],helper:p={},onChange:h,onEnter:g}=v,y=Jn(e,Y?p.combinedDataIndex:n),b=p.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes(n)||me("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值"),Y&&(p.combinedDataIndex.split("|").every((e=>Object.keys(x).includes(e)))||me("Table","所有出现在 `combinedDataIndex` 里的数据字段,在 `fieldAliasMap` 中必须做对应的映射配置"),x[n].includes("|")&&me("Table","配置了 `combinedDataIndex` 参数后,在 `fieldAliasMap` 中自身 `dataIndex` 值不能再使用分隔符"));const E=n=>{const{beforeOpen:r}=p,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=(l="",o)=>{if((0,X.isPlainObject)(o)&&Object.keys(o).length)for(const t in o){const n=o[t],r=d.find((e=>e.dataIndex===t));if(r){Zn(e,t,n,r.precision);const i=r.editRender?.(e,r);i&&Array.isArray(i.rules)&&m(i.rules,n,a,t,or(r.title))}else Zn(e,t,n)}Zn(e,n,l,r),m(u,l,a,i,or(t.title)),ae(e,a,i),h?.({[K]:l},e),Z()},N={visible:k,title:f("qm.searchHelper.text"),width:p.width??"40%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},I={...p,defaultSelectedKeys:[y],size:c,onClose:e=>{e?(e=>{const t={};for(const r in x){const a=x[r];r!==n&&(t[r]=Jn(e,a))}const r=x[n]?Jn(e,x[n]):"";C(r,t);const{closed:a}=p;P(!1),a?.(e)})(e):w()}};return l().createElement(l().Fragment,null,l().createElement(hs,{ref:S,value:y,allowClear:s.allowClear??!0,readOnly:s.readOnly,disabled:s.disabled,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),onChange:e=>{const{value:t}=e.target},onKeyDown:e=>{13===e.keyCode&&(e.target.value,!k&&E())},onDoubleClick:()=>{E()},onSearch:(e,t)=>{"click"===t?.type&&("INPUT"!==t.target.tagName?E():C(""))}}),l().createElement(yn,N,l().createElement(ms,I)))},"tree-helper-multiple":(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},items:s=[],rules:d=[],helper:u={},onInput:p,onChange:h,onEnter:g}=v,y=Qn(e,n),b=u.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes("valueKey")&&Object.keys(x).includes("textKey")||me("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`"),T.current=x;const E=n=>{const{beforeOpen:r}=u,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=r=>{Zn(e,n,r),m(d,r,a,i,or(t.title)),ae(e,a,i),h?.({[K]:r},e,O.current),Z()},S={visible:k,title:f("qm.searchHelper.text"),width:u.width??"40%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},N={...u,size:c,multiple:!0,initialValue:(0,X.merge)({},u.initialValue),defaultSelectedKeys:y,onClose:e=>{e?(e=>{const{textKey:t,valueKey:n}=x;J(e);const r=O.current.map((e=>({text:e[t],value:e[n]})));D(r),C(r.map((e=>e.value)));const{closed:a}=u;P(!1),a?.(O.current)})(e):w()}};return l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{className:"ant-input-wrapper ant-input-group"},l().createElement(R.Select,{mode:"multiple",open:!1,value:y,placeholder:o.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,maxTagCount:o.collapseTags?"responsive":void 0,maxTagTextLength:o.maxTagTextLength,disabled:o.disabled,style:{width:"100%"},onKeyDown:e=>{13===e.keyCode&&!k&&E()},onDoubleClick:()=>{o.disabled||E()},onChange:e=>{const{valueKey:t}=x;J(O.current.filter((n=>e.includes(n[t])))),C(e)}},F.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text)))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:o.disabled,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{E()}})))),l().createElement(yn,S,l().createElement(ms,N)))},custom:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],render:c,onChange:d}=v;if(!c)return me("Table","单元格编辑的自定义渲染,必须设置 `render` 参数"),null;const u=Qn(e,n),p=r=>{Zn(e,n,r),m(s,r,a,i,or(t.title)),ae(e,a,i),d?.({[K]:r},e),Z()},h=c(e,t,p);return l().isValidElement(h)?l().cloneElement(h,{value:u,disabled:o.disabled,readOnly:o.readOnly,popupClassName:Qa.popupClassName,onChange:p}):null}};return l().createElement(l().Fragment,null,G?(()=>{const{type:e}=v,t=le[e];if(!t)return me("Table","单元格编辑的类型 `type` 配置不正确"),null;const a=["cell--edit",{"is-error":!j}];return l().createElement("div",{ref:x,className:xe()(a)},t(r,n),!j&&l().createElement("div",{className:"cell-error"},V||W))})():(()=>{const{disabled:t,extra:n={}}=v,{disabledColor:r,disabledBgColor:a}=n,i=["cell--show",{"is-cell-bg":t&&a}];return l().createElement(l().Fragment,null,l().createElement("span",{className:xe()(i),style:{color:t?r:""}},e.children),t&&a&&l().createElement("i",{className:"cell--bg",style:{background:a}}))})(),B&&l().createElement("i",{className:"cell--sign"}))}));fs.displayName="CellEdit";const gs=fs,ys=require("copy-to-clipboard");var bs=r.n(ys);const vs=e=>{const{text:t,options:n,showMessage:r=!0,onCopy:a}=e,{t:i}=U();return wt(e.children,{onClick:o=>{const s=l().Children.only(e.children),c=bs()(t,n);a?.(t,c),c&&r&&R.message.success(i("qm.clipboard.success")),s&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(o)}})};vs.displayName="QmCopyToClipboard";const xs=vs,Es=l().forwardRef(((e,t)=>{const{column:n,row:r,rowIndex:a,columnIndex:o,rowKey:s,showTitle:c}=e,{tableRef:d,selectionKeys:u,treeExpandIndex:m,updateMark:p}=l().useContext(Aa),{dataIndex:h,canCopy:f,render:g,editRender:y,shouldCellUpdate:b}=n,{t:v}=U(),{renderText:x,getTitleFromCellNode:E}=ci(),w=l().useRef(null),C=Qn(r,h),[S,N]=function(e,c){const d=i.useRef({});return"value"in d.current&&!((e,t)=>{if(b){const[,n]=e,[,a]=t;return b(a,n,r)}return!yr(e,t,!0)})(d.current.condition,c)||(d.current.value=(()=>{const e=g?g(C,r,n,a,o):x(C,n,r);return[e,y?l().createElement(gs,{ref:t,column:n,record:r,rowKey:s,columnKey:h},e):null]})(),d.current.condition=c),d.current.value}(0,[p,r,C,g,y]);l().useEffect((()=>{if([Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(h))return;const e=w.current.parentNode;c?e.title=E(S):e.removeAttribute("title")}),[c,S]);const I=e=>Array.isArray(e.children);return l().createElement("div",{ref:w,className:"cell"},(()=>{if(h===Qa.expandableColumn)return l().createElement(ss,{record:r,rowKey:s});if(h===Qa.selectionColumn)return l().createElement(os,{selectionKeys:u,column:n,record:r,rowKey:s});if(N)return N;if(d.current.isTreeTable&&h===m)return l().createElement(l().Fragment,null,(e=r._level)?l().createElement("span",{key:e,className:`cell--indent indent-level-${e}`,style:{paddingLeft:e*Qa.treeTable.textIndent+"px"}}):null,l().createElement(ss,{key:"expand",record:r,rowKey:s,style:I(r)?{}:{visibility:"hidden"}}),S);var e;if(f){const e=E(S);return l().createElement("div",{className:"cell--copy"},l().createElement("span",{className:"text"},S),e&&l().createElement(xs,{text:e},l().createElement(we.CopyOutlined,{className:"icon",title:v("qm.table.config.copyText"),onClick:e=>e.stopPropagation()})))}return S})())}));Es.displayName="Cell";const ws=Es,Cs={open:!1,offsetX:0,offsetY:0},Ss=l().forwardRef(((e,t)=>{const{rowVirtualize:n}=e,{tableRef:r,getRowKey:a,prefixCls:i,tableFlatData:o,flattenColumns:s,mergedTdCells:c,setMergedCells:d}=l().useContext(Aa),{areaSelection:u={}}=r.current.props,{elementStore:m,scrollYLoad:p}=r.current,{t:h}=U(),f=l().useRef(document.onselectstart),g=l().useRef(null),y=l().useRef(null),b=l().useRef(null),v=e=>{b.current=e},[x,E]=l().useState(null),[w,C]=l().useState(null),[S,N]=l().useState(null),I=e=>{if(!e)return N(null);let t=!1;for(const n in e)if(S?.[n]!==e[n]){t=!0;break}t&&N(Object.assign({},S,e))};ao({ref:g,handler:()=>z()}),l().useEffect((()=>{const e=Ut()(m.$tableBody,"mousedown",D),t=Ut()(m.$tableBody,"contextmenu",_),n=Ut()(document,"keydown",F);return()=>{e.remove(),t.remove(),n.remove()}}),[]);const T=()=>{E(null),I(null),v(null),C(null)};l().useImperativeHandle(t,(()=>({blur:T})));const R=e=>{let t=e;for(;t;){if(!m.$tableBody.contains(t))return null;if("TD"===t.tagName.toUpperCase())return t;t=t.parentNode}return null},O=e=>({rowIndex:parseInt(e.parentNode.getAttribute("data-row-index"),10),colIndex:parseInt(e.getAttribute("data-col-index"),10),rowspan:Number(e.getAttribute("rowspan")||1),colspan:Number(e.getAttribute("colspan")||1),l:e.offsetLeft,t:e.offsetTop,w:e.offsetWidth,h:e.offsetHeight}),k=e=>({colStart:e.colIndex,colEnd:e.colIndex+e.colspan,rowStart:e.rowIndex,rowEnd:e.rowIndex+e.rowspan}),P=e=>{let[t,n,r,a]=[1/0,-1/0,1/0,-1/0];for(const i of e)t=Math.min(t,i.rowStart),n=Math.max(n,i.rowEnd),r=Math.min(r,i.colStart),a=Math.max(a,i.colEnd);return{rowStart:t,rowEnd:n,colStart:r,colEnd:a}},L=Et((e=>{let t=P([k(e),b.current]);c.forEach((e=>{const n=o.findIndex((t=>a(t,t.index)===e.rowKey)),r=s.findIndex((t=>t.dataIndex===e.dataIndex)),i={rowStart:n,rowEnd:n+e.rowSpan,colStart:r,colEnd:r+e.colSpan};var l,c;c=i,(l=t).rowEnd<=c.rowStart||l.rowStart>=c.rowEnd||l.colEnd<=c.colStart||l.colStart>=c.colEnd||(t=P([t,i]))})),I(t)}),5),A=e=>{d(e),u.onCellMerge?.(e),re((()=>T()))},_=G((e=>{u.cellMerge&&x&&M(e.clientX,e.clientY)?(e.preventDefault(),K(e)):w?.open&&z()})),F=G((e=>{27===e.keyCode&&T()})),D=G((e=>{e.stopPropagation();const t=R(e.target);if(1!==e.buttons||!t)return;z();const n=O(t);E(n);const r=k(n);v(r),I(r),document.addEventListener("mousemove",H),document.addEventListener("mouseup",q),f.current=document.onselectstart,document.onselectstart=()=>!1})),H=G((e=>{const t=R(e.target);t&&L(O(t))})),q=G((()=>{u.onSelectChange?.((()=>{const e=[];if(!x||!S)return e;for(let t=S.rowStart;t<S.rowEnd;t++)for(let n=S.colStart;n<S.colEnd;n++)e.push({rowKey:a(o[t],o[t].index),dataIndex:s[n].dataIndex,cellValue:Qn(o[t],s[n].dataIndex)});return e})()),document.removeEventListener("mousemove",H),document.removeEventListener("mouseup",q),$()})),$=()=>{document.onselectstart!==f.current&&(document.onselectstart=f.current)},M=(e,t)=>{const{top:n,left:r}=m.$tableBody.parentNode.getBoundingClientRect(),[a,i]=[e-r,t-n],{el:l,et:o,ew:s,eh:c}=Y();return!(a<l||a>l+s||i<o||i>o+c)},K=e=>{const{top:t,left:n,height:r}=y.current.getBoundingClientRect();C({open:!0,offsetX:e.clientX-n,offsetY:-1*(r-(e.clientY-t))})},z=()=>{C((e=>({...e,open:!1})))},j=e=>({rowIndex:o.findIndex((t=>a(t,t.index)===e.rowKey)),colIndex:s.findIndex((t=>t.dataIndex===e.dataIndex)),rowSpan:e.rowSpan,colSpan:e.colSpan}),V=()=>{if(!x||!S||(t=S,(e=x).rowIndex===t.rowStart&&e.colIndex===t.colStart&&e.rowspan===t.rowEnd-t.rowStart&&e.colspan===t.colEnd-t.colStart))return T();var e,t;const n={rowKey:a(o[S.rowStart],o[S.rowStart].index),dataIndex:s[S.colStart].dataIndex,rowSpan:S.rowEnd-S.rowStart,colSpan:S.colEnd-S.colStart};A([...c.filter((e=>!((e,t)=>{const n=j(e),r=j(t),[a,i,l,o]=[n.rowIndex,n.colIndex,n.rowIndex+n.rowSpan-1,n.colIndex+n.colSpan-1],[s,c,d,u]=[r.rowIndex,r.colIndex,r.rowIndex+r.rowSpan-1,r.colIndex+r.colSpan-1];return a<=s&&i<=c&&l>=d&&o>=u||s<=a&&c<=i&&d>=l&&u>=o})(e,n))),n])},W=()=>{const e=a(o[S.rowStart],o[S.rowStart].index),t=s[S.colStart].dataIndex;A(c.filter((n=>!(n.rowKey===e&&n.dataIndex===t))))},B=e=>{if(p)return n.measurementsCache.slice(0,e).map((e=>e.size)).reduce(((e,t)=>e+t),0);if(e>=o.length)return m.$tableBody.parentNode.offsetHeight;const t=a(o[e],o[e].index),i=m.$tableBody.querySelector(`tbody > tr[data-row-key="${t}"]`);return i?i.offsetTop:r.current.rowHeight*e},Y=()=>{const{w:e,h:t,l:n,t:r}=x,a=s.slice(0,S.colStart).reduce(((e,t)=>e+(t.width||t.renderWidth)),0),i=B(S.rowStart);return{sl:n,st:r,sw:e,sh:t,el:a,et:i,ew:s.slice(0,S.colEnd).reduce(((e,t)=>e+(t.width||t.renderWidth)),0)-a,eh:B(S.rowEnd)-i}};return l().createElement("div",{className:`${i}--area-select`},(()=>{if(!x||!S)return null;const{sl:e,st:t,sw:n,sh:r,el:a,et:i,ew:o,eh:s}=Y(),{open:c,offsetX:d,offsetY:u}=w||Cs,m=l().createElement("ul",{ref:g,className:"ant-dropdown-menu"},l().createElement("li",{className:"ant-dropdown-menu-item",onClick:V},h("qm.table.areaSelect.mergeCell")),l().createElement("li",{className:"ant-dropdown-menu-item",onClick:W},h("qm.table.areaSelect.cancelMerge")));return l().createElement(l().Fragment,null,l().createElement("div",{className:"active-area",style:{left:e,top:t,width:n,height:r}}),l().createElement(Ri(),{popupVisible:c,popup:m,action:[],popupPlacement:"bottomLeft",prefixCls:"ant-dropdown",popupClassName:Qa.popupClassName,builtinPlacements:{bottomLeft:{points:["tl","bl"],offset:[d+4,u+4],overflow:{adjustX:1,adjustY:1}}}},l().createElement("div",{ref:y,className:"checked-area",style:{left:a,top:i,width:o,height:s}})))})())}));Ss.displayName="AreaSelect";const Ns=Ss,Is=l().forwardRef(((e,t)=>{const{tableRef:n,getRowKey:r,prefixCls:a,tableFlatData:i,flattenColumns:o,editableColumns:s,leftFixedColumns:c,rightFixedColumns:d,derivedMergeCells:u,sorter:m,layout:p,showFooter:h,selectionKeys:f,rowExpandedKeys:g,highlightKey:y,activedCell:b,isPingLeft:v,isPingRight:x,isTableEmpty:E,isGroupSubtotal:w,setElementStore:C,setSelectionKeysEffect:S,setHighlightKey:N,setActivedCell:I,getStickyLeft:T,getStickyRight:R,setPingLeft:O,setPingRight:k,setFullScreen:P,scrollBottomDebouncer:L}=l().useContext(Aa),{height:A,minHeight:_,maxHeight:F,rowHeight:D,rowSelection:H,rowHighlight:q,expandable:$,stripe:M,summation:K,rowStyle:z,cellStyle:j,spanMethod:V,tableConfig:W,areaSelection:B,ellipsis:U,showHeader:Y,rowDraggable:Q,onRowClick:Z,onRowDblclick:J,onRowContextmenu:ne,onRowEnter:re}=n.current.props,ae=l().useRef(null),ie=l().useRef({}),le=l().useRef(null),oe=l().useRef({prevST:0,prevSL:0}),{onNodeDragStart:se,onNodeDragEnter:ce,onNodeDragOver:de,onNodeDragLeave:ue,onNodeDragEnd:me,onNodeDrop:pe,indent:he,dropOptions:fe}=rs({openDragSort:Q}),{rowVirtualizer:ge,columnVirtualizer:ye,virtualRows:be,virtualColumns:ve,resetItemXSize:Ee,getYIndexes:we,virtualTranslateY:Ce,virtualTranslateX:Se,calcVirtualYSize:Ne,calcVirtualXSize:Ie,scrollToYIndex:Te}=((e,t)=>{const{tableRef:n}=l().useContext(Aa),{props:r,scrollBarRef:a,rowHeight:i}=n.current,o=r.tableConfig?.overscan||1,s=l().useMemo((()=>a.current?.container.children[0]??null),[a.current]),c=l().useMemo((()=>{const e=[],n=[];return t.forEach(((t,r)=>{"left"===t.fixed&&e.push(r),"right"===t.fixed&&n.push(r)})),[e,n]}),[t]),d=eo({count:e.length,getScrollElement:()=>s,estimateSize:()=>i,indexAttribute:"data-row-index",overscan:o,enabled:n.current.scrollYLoad}),u=d.getVirtualItems(),m=eo({horizontal:!0,count:t.length,getScrollElement:()=>s,estimateSize:e=>t[e].width||t[e].renderWidth||0,indexAttribute:"data-col-index",overscan:o,enabled:n.current.scrollXLoad,rangeExtractor:e=>[...new Set([...c[0],...Vl(e),...c[1]])]}),p=m.getVirtualItems();return{rowVirtualizer:d,columnVirtualizer:m,virtualRows:u,virtualColumns:p,resetItemXSize:e=>{e.forEach(((e,t)=>{m.resizeItem(t,e.width||e.renderWidth||Qa.defaultColumnWidth)}))},getYIndexes:()=>d.getVirtualIndexes()||[],getXIndexes:()=>m.getVirtualIndexes()||[],virtualTranslateY:()=>u[0]?.start??0,virtualTranslateX:()=>{const e=c[0].length;return e?p[e]?.index===e?p[0]?.start??0:(p[e]?.start??0)-p.slice(0,e).reduce(((e,t)=>e+t.size),0):p[0]?.start??0},calcVirtualYSize:()=>d.getTotalSize()||void 0,calcVirtualXSize:()=>m.getTotalSize()||void 0,scrollToYIndex:e=>{d.scrollToIndex(e)},scrollToXIndex:e=>{m.scrollToIndex(e)}}})(i,o),Re=we(),Oe=e=>{if(e&&!U)return ge.measureElement(e)},ke=l().useMemo((()=>u.length&&n.current.scrollYLoad?((e,t)=>{const n=[],r=new Set(t);return e.forEach((({row:e,col:t,rowSpan:a,colSpan:i})=>{const l=e+a-1,o=[];for(let t=e;t<=l;t++)r.has(t)&&o.push(t);if(0===o.length)return;const s=o.length;o.forEach(((e,r)=>{0===r&&n.push({row:e,col:t,rowSpan:s,colSpan:i});for(let a=t;a<t+i;a++)0===r&&a===t||n.push({row:e,col:a,rowSpan:0,colSpan:0})}))})),n})(u,Re):u),[u,Re.join(",")]),[Pe,Le]=l().useState([]),Ae=as();ao({ref:ae,omitClassNames:[`.${Qa.popupClassName}`],handler:()=>{Ge([]),le.current?.blur()}}),l().useImperativeHandle(t,(()=>({setClickedValues:Ge,createFocus:ze,forceUpdate:Ae,resetItemXSize:Ee,scrollToYIndex:Te}))),He((()=>{Pe.length&&n.current.tableManager.focus(n.current.uid)}),[Pe]),l().useLayoutEffect((()=>{Ke();const e=Ut()(document,"keydown",De);return()=>e.remove()}),[]);const _e=l().useMemo((()=>{const{headerHeight:e,viewportHeight:t,footerHeight:n,tableFullHeight:r,tableAutoHeight:a}=p,i={};return E&&Object.assign(i,{minHeight:"100px"}),_&&Object.assign(i,{minHeight:Yn(_)-e-n+"px"}),F&&Object.assign(i,{maxHeight:Yn(F)-e-n+"px"}),A||r||a?{...i,maxHeight:"",minHeight:"",height:`${t}px`}:i}),[A,F,_,E,p]),Fe=G((e=>{const{elementStore:t}=n.current,{prevST:r,prevSL:a}=oe.current,{scrollTop:i,scrollLeft:l}=e;if(l!==a){Y&&(t.$header.scrollLeft=l),h&&(t.$footer.scrollLeft=l);const e=l>0,n=Math.ceil(l)+p.tableWidth<p.tableBodyWidth;v!==e&&O(e),x!==n&&k(n)}i!==r&&Math.ceil(i)+p.viewportHeight>=ae.current.parentNode.offsetHeight&&L({type:"scroll",target:e,preventDefault:ee,stopPropagation:ee}),oe.current={prevST:i,prevSL:l}})),De=G((e=>{const{keyCode:t}=e;if(n.current.uid===n.current.tableManager.getFocusInstance()?.id&&(27===t&&(Ge([]),N(""),I({}),P(!1)),Pe.length&&(Ue(document.activeElement,ae.current)||"INPUT"!==document.activeElement?.tagName))){if(13===t&&("radio"===H?.type||q)){const t=f[0]??y??null,n=i.find((e=>r(e,e.index)===t))??null;n&&re?.(n,e)}if(!We(Pe[0],Pe[1])){if(38===t||40===t){Me(e);const n=i.length;let a=i.findIndex((e=>r(e,e.index)===Pe[0]));const l=38===t?(--a+n)%n:++a%n,o=i[l],s=r(o,o.index),c=Ve(s,Pe[1]);"radio"!==H?.type||H.disabled?.(o)||c||S([s]),!q||q.disabled?.(o)||c||N(s),qe(38===t?"top":"bottom",l),je(...Pe),Ge([s,Pe[1]])}if(9===t||e.shiftKey&&9===t){if(Me(e),!s.length)return Ge([]);const n=s.length;let r=s.findIndex((e=>e.dataIndex===Pe[1]));const a=e.shiftKey&&9===t?(--r+n)%n:++r%n;je(...Pe),$e(e.shiftKey&&9===t?"left":"right",a),Ge([Pe[0],s[a].dataIndex])}}}})),qe=(e,t)=>{const{scrollBarRef:r,scrollYLoad:a}=n.current;if(a)return ge.scrollToIndex(t);const l=i.length,o=t,s=ae.current.querySelectorAll("tbody > tr"),c=i.map(((e,t)=>t)).slice(0,o).reduce(((e,t)=>e+s[t].offsetHeight),0),d=s[o].offsetHeight;"top"===e?c<r.current.scrollTop?r.current.SET_SCROLL_TOP(c):t===l-1&&r.current.SET_SCROLL_TOP(c-(p.viewportHeight-d)):c+d>r.current.scrollTop+p.viewportHeight?r.current.SET_SCROLL_TOP(c-(p.viewportHeight-d)):0===t&&r.current.SET_SCROLL_TOP(c)},$e=(e,t)=>{const{scrollBarRef:r}=n.current,a=s.length,i=o.findIndex((e=>e.dataIndex===s[t].dataIndex)),l=o.slice(0,i).reduce(((e,t)=>e+(t.width||t.renderWidth)),0),u=o[i].width||o[i].renderWidth,m=c.reduce(((e,t)=>e+(t.width||t.renderWidth)),0),h=d.reduce(((e,t)=>e+(t.width||t.renderWidth)),0);"left"===e?l<r.current.scrollLeft+m?r.current.SET_SCROLL_LEFT(l-m):t===a-1&&r.current.SET_SCROLL_LEFT(l-(p.tableWidth-u)+h):l+u>r.current.scrollLeft+(p.tableWidth-h)?r.current.SET_SCROLL_LEFT(l-(p.tableWidth-u)+h):0===t&&r.current.SET_SCROLL_LEFT(l-m)},Ke=()=>{C("$tableBody",ae.current)},ze=(e,t)=>{ie.current[`${e}-${t}`]?.focus()},je=(e,t)=>{ie.current[`${e}-${t}`]?.blur()},Ve=(e,t)=>ie.current[`${e}-${t}`]?.isEditable()??!1,We=(e,t)=>ie.current[`${e}-${t}`]?.isOpening()??!1,Be=e=>{const t=K.groupItems.findIndex((t=>t.dataIndex===e));return{[`body--row-group_${t+1}`]:t>=0}},Ge=e=>{(0,X.isEqual)(e,Pe)||Le(e)},Ye=(e,t,n)=>n?[...t,e]:t.filter((t=>t!==e)),Xe=(e,t,r)=>{const{disabled:a}=H||{},{deriveRowKeys:i,recordsMap:l}=n.current,o=zn(i,e);let s=[],c=hr(o?.children||[]);return a&&(c=c.filter((e=>!l.has(e)||!a(l.get(e))))),s=r?[...new Set([...t,e,...c])]:t.filter((t=>![e,...c].includes(t))),(mr(i,e)?.slice(0,-1).reverse()||[]).forEach((e=>{const t=zn(i,e),n=t?.children?.every((e=>s.includes(e.rowKey)));s=n?[...s,e]:s.filter((t=>t!==e))})),s},Qe=(e,t,a,i,o)=>{const{dataIndex:s,fixed:u,align:p,className:h=""}=e,{rowSpan:g,colSpan:y}=Ze(a,e,i,t);if(!g||!y)return null;const v=e.ellipsis??U,x=["body--column",{"col--ellipsis":v,"col--center":"center"===p,"col--right":"right"===p,"col-active":b.rowKey===o&&b.dataIndex===s,"column--sort":!!m[s],"cell-fix-left":"left"===u,"cell-fix-right":"right"===u,"cell-fix-left-last":"left"===u&&c[c.length-y]?.dataIndex===s,"cell-fix-right-first":"right"===u&&d[0]?.dataIndex===s,[h]:!!h}],E={left:"left"===u?`${T(s)}px`:"",right:"right"===u?`${R(s)}px`:""},C=z?"function"==typeof z?z(a,i):z:null,I=j?"function"==typeof j?j(a,e,i,t):j:null,O=w?(e=>{const{backgroundColor:t,color:n}=K.groupItems.find((t=>t.dataIndex===e))??{};return{backgroundColor:t,color:n}})(a._group):null,k=Object.assign({},E,{height:D},O,C,I);return l().createElement("td",{key:s,"data-col-index":t,rowSpan:g>1?g:void 0,colSpan:y>1?y:void 0,className:xe()(x),style:k,onClick:t=>((e,t,a)=>{const{dataIndex:i}=a;if([Qa.expandableColumn,Qa.operationColumn].includes(i))return;const l=r(t,t.index);Ge([l,i]);const o=Ve(l,i),{type:s,selectByClickRow:c=!0,disabled:d=ee}=H||{};!s||d(t)||o||(c||i===Qa.selectionColumn)&&((e,t)=>{const{type:r,checkStrictly:a=!0,onSelect:i}=H||{};if("radio"===r&&S([e]),"checkbox"===r){const r=!f.includes(e),l=n.current.isTreeTable&&!a?Xe(e,f,r):Ye(e,f,r);S(l),i?.(r,t,l)}})(l,t),[Qa.selectionColumn].includes(i)||(!q||q.disabled?.(t)||o||N(l),Z?.(t,a,e))})(t,a,e),onDoubleClick:t=>((e,t,n)=>{const{dataIndex:r}=n;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(r)||J?.(t,n,e)})(t,a,e),onContextMenu:t=>((e,t,n)=>{const{dataIndex:r}=n;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(r)||ne?.(t,n,e)})(t,a,e)},l().createElement(ws,{ref:e=>ie.current[`${o}-${s}`]=e,row:a,column:e,rowIndex:i,columnIndex:t,rowKey:o,showTitle:v}))},Ze=(e,t,n,r)=>{let a=1,l=1;const o=V;if("function"==typeof o){const s=o({row:e,column:t,rowIndex:n,columnIndex:r,tableData:i});Array.isArray(s)?(a=s[0],l=s[1]):(0,X.isPlainObject)(s)&&(a=s.rowSpan,l=s.colSpan);const c=Re[0]??0;if(e===i[c]&&0===a)for(let e=c;e<i.length;e++){const n=o({row:i[e],column:t,rowIndex:e,columnIndex:r,tableData:i});if((Array.isArray(n)?n[0]:n.rowSpan)>0)break;a++}}if(ke.length>0){const e=ke.find((e=>e.row===n&&e.col===r));e&&(a=e.rowSpan,l=e.colSpan)}return{rowSpan:a,colSpan:l}};return l().createElement(l().Fragment,null,l().createElement(At,{ref:n.current.scrollBarRef,wrapClassName:`${a}--body-wrapper`,wrapStyle:_e,innerStyle:{height:Ne(),width:Ie()},showTopScrollbar:W?.doubleXScrollbar,onScroll:Fe},l().createElement(Xo.Provider,{value:Pe},l().createElement("table",{ref:ae,style:{width:0,marginTop:Ce(),marginLeft:Se()},className:xe()(`${a}--body`,{"virtual-container":n.current.scrollYLoad||n.current.scrollXLoad}),tabIndex:-1,cellSpacing:"0",cellPadding:"0"},(()=>{const{scrollXLoad:e}=n.current;return l().createElement("colgroup",null,(e?ve:o).map((t=>{const{dataIndex:n,width:r,renderWidth:a}=e?o[t.index]:t;return l().createElement("col",{key:n,style:{width:`${r||a}px`,minWidth:`${r||a}px`}})})))})(),l().createElement("tbody",null,(e=>{const{scrollYLoad:t,scrollXLoad:a}=n.current,s=[];return(t?e:i).forEach(((e,c)=>{const d=t?i[e.index]:e,u=t?e.index:c,m=r(d,d.index);if(s.push(((e,t,r)=>{const{scrollXLoad:a}=n.current,{disabled:i}=H||{},s=["body--row",{"body--row-striped":M&&t%2!=0,"body--row-selected":f.includes(r)&&!i?.(e),"body--row-current":y===r,...w?Be(e._group):null}],c=(a?ve:o).map(((n,i)=>Qe(a?o[n.index]:n,a?n.index:i,e,t,r)));return Q?l().createElement(ls,{key:r,ref:Oe,className:xe()(s),rowKey:r,rowIndex:t,row:e,indent:he,filter:".cell--edit input",dropOption:fe,onNodeDragStart:se,onNodeDragEnter:ce,onNodeDragOver:de,onNodeDragLeave:ue,onNodeDragEnd:me,onNodeDrop:pe},c):l().createElement("tr",{key:r,ref:Oe,"data-row-key":r,"data-row-index":t,className:xe()(s)},c)})(d,u,m)),$?.expandedRowRender){const{expandedRowClassName:e,rowExpandable:t=te}=$;g.includes(m)&&t(d)&&s.push(l().createElement("tr",{key:`expand_${m}`,className:"body--row-expanded"},l().createElement("td",{colSpan:(a?ve:o).length,className:"body--column",style:{paddingLeft:H?2*Qa.selectionColumnWidth:Qa.selectionColumnWidth}},l().createElement("div",{className:xe()("cell",e)},$.expandedRowRender(d,u)))))}})),s})(be)))),!!B&&l().createElement(Ns,{ref:le,rowVirtualize:ge})))}));Is.displayName="TableBody";const Ts=Is,Rs=()=>{const{tableRef:e,prefixCls:t,sorter:n,layout:r,flattenColumns:a,leftFixedColumns:i,rightFixedColumns:o,summationRows:s,setElementStore:c,getStickyLeft:d,getStickyRight:u}=l().useContext(Aa),{footRender:m}=e.current.props,{t:p}=U(),h=l().useRef(null);l().useLayoutEffect((()=>{f()}),[]);const f=()=>{c("$footer",h.current)},{tableBodyWidth:g}=r;return l().createElement("div",{ref:h,className:`${t}--footer-wrapper`},m?m(a,e.current.tableFullData):l().createElement("table",{className:`${t}--footer`,cellSpacing:"0",cellPadding:"0",style:{width:g?`${g}px`:""}},l().createElement("colgroup",null,a.map((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;return l().createElement("col",{key:t,style:{width:`${n||r}px`,minWidth:`${n||r}px`}})}))),l().createElement("tfoot",null,s.map(((t,r)=>l().createElement("tr",{key:r,className:"footer--row"},a.map(((r,a)=>((t,r,a)=>{const{dataIndex:s,fixed:c,align:m,summation:h}=t,f=["footer--column","col--ellipsis",{"col--center":"center"===m,"col--right":"right"===m,"column--sort":!!n[s],"cell-fix-left":"left"===c,"cell-fix-right":"right"===c,"cell-fix-left-last":"left"===c&&i[i.length-1]?.dataIndex===s,"cell-fix-right-first":"right"===c&&o[0]?.dataIndex===s}],g={left:"left"===c?`${d(s)}px`:"",right:"right"===c?`${u(s)}px`:""},y=h?.render?h.render(e.current.tableFullData):Qn(r,`${s}_text`),b=0===a&&""===y?p("qm.table.config.summaryText"):y;return l().createElement("td",{key:s,title:b,className:xe()(f),style:{...g}},l().createElement("div",{className:"cell"},b))})(r,t,a)))))))))};var Os=function(e){return e.small="small",e.middle="default",e.large="default",e}(Os||{});const ks=e=>{const{current:t,pageSize:n,total:r,onChange:a}=e,{global:i}=l().useContext(o),{tableRef:s,prefixCls:c,$size:d,setElementStore:u}=l().useContext(Aa),{uniqueKey:m,paginationConfig:p,infoBarConfig:h}=s.current.props,f=l().useRef(null),g=l().useMemo((()=>m?`tablePager_${m}`:""),[m]);l().useLayoutEffect((()=>{y(),E()}),[]);const y=()=>{u("$pager",f.current)},b=p?.showSizeChanger??Qa.pagination.showSizeChanger,v=p?.showQuickJumper??Qa.pagination.showQuickJumper,x=p?.pageSizeOptions||i?.table?.pagination?.pageSizeOptions||Qa.pagination.pageSizeOptions,E=async()=>{if(!g)return;const e=await w(g);e&&e!==n&&(a(t,e),localStorage.setItem(g,e.toString()))},w=async e=>{const t=i?.getComponentConfigApi;if(t&&!localStorage.getItem(g))try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},C={[`${c}-pager`]:!0};return l().createElement("div",{ref:f,className:xe()(C)},l().createElement("div",{className:"pager-alert"},"bottom"===h?.position&&l().createElement(ai,{total:r})),l().createElement(R.Pagination,{size:Os[d],showSizeChanger:b,showQuickJumper:v,pageSizeOptions:x,current:t,pageSize:n,total:r,onChange:(e,t)=>{a(e,t)},onShowSizeChange:(e,t)=>{g&&((async(e,t)=>{const n=i?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(g,t),localStorage.setItem(g,`${t}`))}}))},Ps=()=>{const{prefixCls:e,layout:t}=l().useContext(Aa),n=l().useMemo((()=>{const{headerHeight:e,viewportHeight:n}=t;return{top:`${e}px`,height:`${n}px`}}),[t]);return l().createElement("div",{className:`${e}--empty`,style:n},l().createElement(dt,null))},Ls=()=>{const{prefixCls:e,setElementStore:t}=l().useContext(Aa),n=l().useRef(null);l().useLayoutEffect((()=>{r()}),[]);const r=()=>{t("$resizableBar",n.current)};return l().createElement("div",{ref:n,className:`${e}--resizable-bar`})};function As(){return As=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},As.apply(null,arguments)}const _s=l().forwardRef(((e,t)=>{const n=h(Fa,e),{rowKey:r,columns:a,loading:i,resizable:s,customClass:c,areaSelection:d,tablePrint:u,exportExcel:m,infoBarConfig:p,topSpaceAlign:f,showTableInfo:g,showFullScreen:y,showRefresh:b,showToolBox:v,showHeader:x,className:E,style:w}=n,{$size:C}=Y(n),S=l().useRef(null),N=l().useRef(null),I=l().useRef(null),T=l().useRef(null),R=l().useRef(null),O=Ee("table"),k=G(((e,t)=>{const n="function"==typeof r?r(e,t):e?.[r];return void 0===n?(me("Table","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):n})),{tableRef:P,tableFullData:L,setElementStore:A,setOriginColumns:_,setTableFullData:F,setTableOriginData:D,setAllTableData:H,setDeriveRowKeys:q,setInvalidRowKeys:$,setFieldAuth:M,setColumnsDefined:K,setScrollXLoad:z,setScrollYLoad:j,setResizeState:V,setHandleState:W,setSummaries:B,setSelectionRows:U,setRecordsMap:Z,setUnMounted:J,clearElementStore:ee,clearRecordsMap:te}=((e,{getRowKey:t,$size:n})=>{const{rowHeight:r,dynamicThead:a}=e,i=l().useRef({props:e,uid:Ba(),tableManager:Ga,elementStore:{},originColumns:[],tableFullData:[],tableOriginData:[],allTableData:[],allRowKeys:[],allParentRowKeys:[],deriveRowKeys:[],invalidRowKeys:[],fieldAuth:{},columnsDefined:!a,scrollBarRef:l().createRef(),rowHeight:r||Qa.rowHeightMaps[n],store:new Xa,resizeState:{width:0,height:0,winHeight:window.innerHeight},handleState:{insert:null,remove:!1},summaries:{},isTreeTable:!1,scrollXLoad:!1,scrollYLoad:!1,selectionRows:[],recordsMap:new Map,unMounted:!1,isIE:!Q&&/MSIE|Trident/.test(navigator.userAgent)});var o;o=e,i.current.props=o;const s=(e,n,r="",a=0)=>e.map((e=>{const i=t(e,e.index),l=r?`${r}.${e.index+1}`:`${e.index+1}`,o={level:a,rowKey:i,indexPath:l};return e.indexPath=l,e._level=a,e._parentRowKey=a?n:null,Array.isArray(e.children)&&(o.children=s(e.children,i,l,a+1)),n?Object.assign(o,{parentRowKey:n}):o}));return{tableRef:i,...i.current,setElementStore:(e,t)=>{i.current.elementStore[e]=t},setOriginColumns:e=>{i.current.originColumns=e},setTableFullData:e=>{i.current.tableFullData=e},setTableOriginData:e=>{i.current.tableOriginData=e},setAllTableData:e=>{const n=jn(e);i.current.allTableData=n,i.current.allRowKeys=n.map((e=>t(e,e.index)))},setDeriveRowKeys:e=>{const n=e.some((e=>Array.isArray(e.children)));i.current.isTreeTable=n,i.current.deriveRowKeys=n?s(e,""):[],i.current.allParentRowKeys=n?Vn(e,(e=>t(e,e.index))):[]},setInvalidRowKeys:e=>{i.current.invalidRowKeys=e},setFieldAuth:(e,t)=>{i.current.fieldAuth[e]=t},setColumnsDefined:e=>{i.current.columnsDefined=e},setResizeState:e=>{i.current.resizeState=e},setHandleState:e=>{i.current.handleState=e},setSummaries:e=>{i.current.summaries=e},setScrollXLoad:e=>{i.current.scrollXLoad=e},setScrollYLoad:e=>{i.current.scrollYLoad=e},setSelectionRows:e=>{i.current.selectionRows=e},setRecordsMap:(e,t)=>{i.current.recordsMap.set(e,t)},setUnMounted:e=>{i.current.unMounted=e},clearElementStore:()=>{for(const e in i.current.elementStore)i.current.elementStore[e]=null},clearRecordsMap:()=>{i.current.recordsMap.clear()}}})(n,{getRowKey:k,$size:C}),{tableFlatData:ae,setTableFlatData:ie,filters:le,setFilters:oe,sorter:ce,setSorter:de,superFilters:ue,setSuperFilters:pe,pagination:he,setPagination:fe,selectionKeys:ge,setSelectionKeys:ye,rowExpandedKeys:be,setRowExpandedKeys:ve,highlightKey:we,setHighlightKey:Ce,updateMark:Se,forceUpdate:Ne,activedCell:Ie,setActivedCell:Te,mergedTdCells:Re,setMergedCells:Oe,layout:ke,setLayout:Pe,permission:Le,setPermission:Ae,spinning:_e,setSpinning:Fe,isPingLeft:De,setPingLeft:qe,isPingRight:$e,setPingRight:Me,isFullScreen:Ke,setFullScreen:ze,updateTableFlatData:je}=(e=>{const{uniqueKey:t,initialSorter:n={},initialFilter:r={},paginationConfig:a,rowSelection:i,expandable:s,rowHighlight:c,mergedCells:d}=e,{global:u}=l().useContext(o),m={current:a?.current??Qa.pagination.current,pageSize:(()=>{if(t)return Number(localStorage.getItem(`tablePager_${t}`))||void 0})()??a?.pageSize??u?.table?.pagination?.pageSize??Qa.pagination.pageSize,total:0},p=i?.selectedRowKeys??i?.defaultSelectedRowKeys??[],h=s?.expandedRowKeys??s?.defaultExpandedRowKeys??[],[f,g]=l().useState([]),[y,b]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),r),[v,x]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),n),[E,w]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),[]),[C,S]=l().useState(m),[N,I]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),p),[T,R]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),h),[O,k]=l().useState(c?.currentRowKey??""),[P,L]=l().useReducer((e=>e+1),0),[A,_]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),{}),[F,D]=Ja([],{value:d}),[H,q]=l().useState({gutterWidth:0,tableWidth:0,tableBodyWidth:0,tableBodyHeight:0,viewportHeight:0,headerHeight:0,footerHeight:0,tableAutoHeight:0,tableFullHeight:0}),[$,M]=l().useState({export:!0,import:!0,print:!0}),[K,z]=l().useState(!1),[j,V]=l().useState(!1),[W,B]=l().useState(!1),[U,G]=l().useState(!1);return{tableFlatData:f,setTableFlatData:g,filters:y,setFilters:b,sorter:v,setSorter:x,superFilters:E,setSuperFilters:w,pagination:C,setPagination:S,selectionKeys:N,setSelectionKeys:I,rowExpandedKeys:T,setRowExpandedKeys:R,highlightKey:O,setHighlightKey:k,updateMark:P,forceUpdate:L,activedCell:A,setActivedCell:_,mergedTdCells:F,setMergedCells:D,layout:H,permission:$,setPermission:M,setLayout:q,spinning:K,setSpinning:z,isPingLeft:j,setPingLeft:V,isPingRight:W,setPingRight:B,isFullScreen:U,setFullScreen:G,updateTableFlatData:()=>g([...f])}})(n),{isFetch:Ve,isWebPagination:We,isScrollPagination:Be,showPagination:Ue,tableColumns:Ge,flattenColumns:Ye,editableColumns:Xe,summationColumns:Qe,leftFixedColumns:Ze,rightFixedColumns:Je,derivedMergeCells:et,treeExpandIndex:tt,showSummary:nt,showFooter:rt,isHeadGroup:at,bordered:it,isHeadSorter:lt,isHeadFilter:ot,isServiceSummation:st,isSelectCollection:ct,isTableImport:dt,isTableClipboard:ut,isSuperSearch:pt,isFastSearch:ht,isPivotGrid:ft,isGroupSummary:gt,isGroupSubtotal:yt,isTableEmpty:bt,summationRows:vt,fetchParams:xt}=ti(n,{getRowKey:k,tableRef:P,tableFullData:L,tableFlatData:ae,sorter:ce,filters:le,superFilters:ue,selectionKeys:ge,pagination:he,mergedTdCells:Re}),{createElementStore:Et,tableStyles:wt,getSpan:Ct,getStickyLeft:St,getStickyRight:Nt,scrollXToColumn:It,scrollYToRecord:Tt,calcTableHeight:Rt,resetTableScroll:Ot,doLayout:kt}=((e,t)=>{const{height:n,minHeight:r,maxHeight:a,ellipsis:i,showHeader:o,spanMethod:s}=e,{getRowKey:c,tableRef:d,topElementRef:u,tableElementRef:m,tableBodyRef:p,$size:h,tableColumns:f,flattenColumns:g,leftFixedColumns:y,derivedMergeCells:b,tableFlatData:v,layout:x,showFooter:E,showPagination:w,isFullScreen:C,setLayout:S,setElementStore:N}=t,I=l().useMemo((()=>{const{tableFullHeight:e,tableAutoHeight:t}=x,i={};return r&&Object.assign(i,{minHeight:`${Yn(r)}px`}),a&&Object.assign(i,{maxHeight:`${Yn(a)}px`}),C?{...i,maxHeight:"",minHeight:"",height:`${e}px`}:n?{...i,height:"auto"!==n?`${Yn(n)}px`:`${t}px`}:i}),[n,a,r,C,x]),T=(e,t)=>{const{scrollBarRef:n,scrollYLoad:r,rowHeight:a}=d.current;if(void 0!==t&&t>=0)if(t<v.length)if(r)p.current.scrollToYIndex(t);else{const e=R(c(v[t],v[t].index));e&&n.current.SET_SCROLL_TOP(e.offsetTop)}else n.current.SET_SCROLL_TOP(t*a);else if(r){const t=v.findIndex((t=>e===c(t,t.index)));t>=0&&p.current.scrollToYIndex(t)}else{const t=R(e);t&&n.current.SET_SCROLL_TOP(t.offsetTop)}},R=e=>d.current.elementStore.$tableBody.querySelector(`tbody > tr[data-row-key="${e}"]`);return{createElementStore:()=>{N("$toper",u.current),N("$table",m.current)},tableStyles:I,getSpan:(e,t,n,r,a)=>{let i=1,l=1;if("function"==typeof s){const o=s({row:e,column:t,rowIndex:n,columnIndex:r,tableData:a});Array.isArray(o)?(i=o[0],l=o[1]):(0,X.isPlainObject)(o)&&(i=o.rowSpan,l=o.colSpan)}if(b.length>0){const e=b.find((e=>e.row===n&&e.col===r));e&&(i=e.rowSpan,l=e.colSpan)}return{rowSpan:i,colSpan:l}},getStickyLeft:e=>{if(g.findIndex((t=>t.dataIndex===e))<0){const t=qn(f,e);e=t?$n(t).dataIndex:""}let t=0;for(let n=0;n<g.length;n++){const r=g[n];if(r.dataIndex===e)break;t+=r.width||r.renderWidth||0}return t},getStickyRight:(e,t)=>{if(g.findIndex((t=>t.dataIndex===e))<0){const t=qn(f,e);e=t?Mn(t).dataIndex:""}const n="thead"===t?(e=>{if(!e.some((e=>e.colSpan>0)))return e;const t=[];let n=[];return e.forEach((e=>{e.colSpan>0&&n.length>0&&(t.push(n),n=[]),n.push(e)})),n.length>0&&t.push(n),t.map((e=>{const[t,n]=e.reduce(((e,t)=>(t.colSpan>0?e[0].push(t):e[1].push(t),e)),[[],[]]);return[...n,...t.reverse()]})).flat()})(g):g;let r=0;for(let t=n.length-1;t>=0;t--){const a=n[t];if(a.dataIndex===e)break;r+=a.width||a.renderWidth||0}return r},scrollXToColumn:(e,t)=>{const n=void 0===t?g.findIndex((t=>t.dataIndex===e)):t;if(n<0)return;const{scrollBarRef:r}=d.current,a=y.reduce(((e,t)=>e+(t.width||t.renderWidth)),0),i=g.slice(0,n).reduce(((e,t)=>e+(t.width||t.renderWidth)),0);r.current.SET_SCROLL_LEFT(i-a)},scrollYToRecord:T,calcTableHeight:()=>{if("auto"!==n)return;const{elementStore:e,resizeState:t}=d.current;try{const n=t.winHeight-e.$table.getBoundingClientRect().top-(w?La["small"!==h?"middle":h]+Da:0)-Da;S((e=>Object.assign({},e,{tableAutoHeight:n})))}catch(e){}},resetTableScroll:()=>{T("",0)},doLayout:()=>{(()=>{const{elementStore:e,scrollXLoad:t}=d.current,n=e.$table.clientWidth,{defaultColumnWidth:r}=Qa,a=[];let i=0;if(g.forEach((e=>{"number"==typeof e.width?(e.renderWidth=e.width,i+=e.width):(e.renderWidth=void 0,a.push(e))})),a.length>0){const e=g.reduce(((e,t)=>e+(t.width||t.minWidth||r)),0);if(e<=n){const t=n-e;if(1===a.length)a[0].renderWidth=(a[0].minWidth||r)+t;else{const e=t/a.reduce(((e,t)=>e+(t.minWidth||r)),0);let n=0;a.forEach(((t,a)=>{if(0===a)return;const i=Math.floor((t.minWidth||r)*e);n+=i,t.renderWidth=(t.minWidth||r)+i})),a[0].renderWidth=(a[0].minWidth||r)+t-n}}else a.forEach((e=>{e.renderWidth=e.minWidth||r}));S((t=>({...t,tableBodyWidth:Math.max(e,n)})))}else i=g.reduce(((e,t)=>e+(t.renderWidth=t.width||t.minWidth||r)),0),S((e=>({...e,tableBodyWidth:i})));S((e=>({...e,tableWidth:n}))),t&&p.current.resetItemXSize(g)})(),re((()=>(()=>{const{elementStore:e,scrollYLoad:t,resizeState:n}=d.current;if(!e.$table.offsetParent)return;const r=e.$table.offsetHeight,a=o?e.$header.offsetHeight:x.headerHeight,i=E?e.$footer.offsetHeight:x.footerHeight,l=r-a-i,s=e.$tableBody.offsetHeight;let c=0;if(C){const t=e.$toper?e.$toper.offsetHeight+Da:0,r=e.$pager?e.$pager.offsetHeight+Da:0;c=n.winHeight-t-r-20}S((e=>Object.assign({},e,{headerHeight:a,footerHeight:i,viewportHeight:l,tableBodyHeight:s,tableFullHeight:c})))})()))}}})(n,{getRowKey:k,tableRef:P,topElementRef:S,tableElementRef:N,tableBodyRef:I,$size:C,tableColumns:Ge,flattenColumns:Ye,leftFixedColumns:Ze,derivedMergeCells:et,tableFlatData:ae,layout:ke,showFooter:rt,showPagination:Ue,isFullScreen:Ke,setLayout:Pe,setElementStore:A}),{initialTable:Pt,checkDataIndex:Lt,createTableFullData:At,getTableData:_t,createTableList:Ft,createTableData:Dt,createGroupData:Ht,setSelectionKeysEffect:qt,doFieldValidate:$t,getTableLog:Mt,dataChange:Kt,tableChange:zt,toLastPage:jt,toFirstPage:Vt,getPageCount:Wt,pagerChangeHandle:Bt,scrollBottomDebouncer:Ut,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearRowSelection:Qt,clearRowHighlight:Zt,clearTableLog:Jt,destroy:en}=ni(n,{getRowKey:k,tableRef:P,tableElementRef:N,tableBodyRef:I,$size:C,tableColumns:Ge,flattenColumns:Ye,tableFullData:L,pagination:he,layout:ke,filters:le,sorter:ce,superFilters:ue,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,summationColumns:Qe,isFetch:Ve,isWebPagination:We,isScrollPagination:Be,isServiceSummation:st,isGroupSubtotal:yt,doLayout:kt,setTableFlatData:ie,setTableFullData:F,setTableOriginData:D,setAllTableData:H,setDeriveRowKeys:q,setPagination:fe,setPingRight:Me,setPingLeft:qe,setSpinning:Fe,setSorter:de,setFilters:oe,setSuperFilters:pe,setSelectionKeys:ye,setRowExpandedKeys:ve,setHighlightKey:Ce,setSelectionRows:U,setScrollXLoad:z,setScrollYLoad:j,setFieldAuth:M,setResizeState:V,setSummaries:B,setPermission:Ae,setRecordsMap:Z,resetTableScroll:Ot,clearElementStore:ee,clearRecordsMap:te});((e,t)=>{const{columns:n,summation:r,rowSelection:a,expandable:i,rowHighlight:o}=e,{tableRef:s,tableBodyRef:c,$size:d,pagination:u,selectionKeys:m,rowExpandedKeys:p,highlightKey:h,summationRows:f,showSummary:g,isWebPagination:y,isScrollPagination:b,checkDataIndex:v,toLastPage:x,toFirstPage:E,getPageCount:w,setHandleState:C,scrollYToRecord:S,setSelectionKeysEffect:N,setOriginColumns:I,setRowExpandedKeys:T,setHighlightKey:R,setResizeState:O,setUnMounted:k,calcTableHeight:P,initialTable:L,destroy:A}=t,_=l().useRef(f);He((()=>{if(!a)return;const{onChange:e}=a;"radio"===a.type&&c.current.setClickedValues(m.length?[m[0],""]:[]),m.__prevent__||e?.(m,s.current.selectionRows),Un(m)}),[m]),He((()=>{if(!i)return;const{onChange:e}=i;p.__prevent__||e?.(p,p.map((e=>s.current.recordsMap.get(e)))),Un(p)}),[p]),He((()=>{o&&(c.current.setClickedValues(h?[h,""]:[]),o.onChange?.(h,s.current.recordsMap.get(h)??null))}),[h]),He((()=>{(0,X.isEqual)(f,_.current)||(_.current=f,g&&r&&r.onChange?.(f))}),[f]),He((()=>{const e=a.selectedRowKeys||[];(0,X.isEqual)(e,m)||N(Bn(e))}),[a?.selectedRowKeys]),He((()=>{const e=i.expandedRowKeys||[];(0,X.isEqual)(e,p)||T(Bn(e))}),[i?.expandedRowKeys]),He((()=>{const{currentRowKey:e}=o;e!==h&&R(e??"")}),[o?.currentRowKey]),He((()=>{const{insert:e,remove:t}=s.current.handleState;e&&(y&&("after"===e?x():E()),S("","after"===e?1e5:0)),t&&u.current>w()&&x(),(e||t)&&C({insert:null,remove:!1})}),[u.total]),He((()=>{P()}),[d]),He((()=>{(s.current.scrollYLoad||b)&&(e.height||e.maxHeight||me("Table","必须设置组件参数 `height` 或 `maxHeight`"))}),[s.current.scrollYLoad,b]),ri({handler:()=>{const{resizeState:e}=s.current,{winHeight:t}=e,n=window.innerHeight;n!==t&&(O(Object.assign({},e,{winHeight:n})),P())},delay:16}),l().useEffect((()=>(I(se(n)),L(),v(),re((()=>P())),()=>{A(),k(!0)})),[])})(n,{tableRef:P,tableBodyRef:I,$size:C,pagination:he,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,showSummary:nt,summationRows:vt,isWebPagination:We,isScrollPagination:Be,checkDataIndex:Lt,toLastPage:jt,toFirstPage:Vt,getPageCount:Wt,setHandleState:W,scrollYToRecord:Tt,setOriginColumns:_,setSelectionKeysEffect:qt,setRowExpandedKeys:ve,setHighlightKey:Ce,setResizeState:V,setUnMounted:J,calcTableHeight:Rt,initialTable:Pt,destroy:en});const tn=l().useMemo((()=>({getRowKey:k,tableRef:P,tableBodyRef:I,prefixCls:O,$size:C,tableFlatData:ae,flattenColumns:Ye,editableColumns:Xe,leftFixedColumns:Ze,rightFixedColumns:Je,treeExpandIndex:tt,sorter:ce,filters:le,superFilters:ue,layout:ke,bordered:it,showFooter:rt,showSummary:nt,summationRows:vt,pagination:he,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,activedCell:Ie,mergedTdCells:Re,derivedMergeCells:et,updateMark:Se,isFetch:Ve,isPingLeft:De,isPingRight:$e,isHeadSorter:lt,isHeadFilter:ot,isFullScreen:Ke,isTableEmpty:bt,isHeadGroup:at,isGroupSubtotal:yt,isWebPagination:We,dataChange:Kt,tableChange:zt,getTableData:_t,setElementStore:A,createTableList:Ft,createTableFullData:At,updateTableFlatData:je,setSorter:de,setFilters:oe,setSuperFilters:pe,setHighlightKey:Ce,setRowExpandedKeys:ve,setSelectionRows:U,setSelectionKeysEffect:qt,setInvalidRowKeys:$,setActivedCell:Te,setMergedCells:Oe,getSpan:Ct,getStickyLeft:St,getStickyRight:Nt,scrollXToColumn:It,scrollYToRecord:Tt,setPagination:fe,setPingLeft:qe,setPingRight:Me,setSpinning:Fe,setFullScreen:ze,doFieldValidate:$t,createTableData:Dt,createGroupData:Ht,scrollBottomDebouncer:Ut,resetTableScroll:Ot,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearRowSelection:Qt,clearRowHighlight:Zt})),[C,ae,Ye,ce,le,ue,ke,it,rt,nt,vt,he,xt,ge,be,we,Ie,et,Se,Ve,De,$e,lt,ot,Ke,bt,at,yt,We]);((e,t)=>{const{getRowKey:n,tableRef:r,toolBoxRef:a,tableBodyRef:i,columnFilterRef:o,flattenColumns:s,editableColumns:c,pagination:d,fetchParams:u,selectionKeys:m,rowExpandedKeys:p,highlightKey:h,isFetch:f,dataChange:g,getTableData:y,createTableData:b,createTableFullData:v,calcTableHeight:x,scrollXToColumn:E,scrollYToRecord:w,doFieldValidate:C,setTableOriginData:S,setHandleState:N,setColumnsDefined:I,setSelectionKeysEffect:T,setRowExpandedKeys:R,setHighlightKey:O,setSelectionRows:k,setOriginColumns:P,forceUpdate:L,getTableLog:A,clearRowSelection:_,clearRowHighlight:F,clearTableSorter:D,clearTableFilter:H,clearSuperFilters:q,clearTableLog:$}=t,{columns:M,columnsChange:K}=r.current.props,z=(e,t,r)=>e.filter((e=>{const a=n(e,e.index);e.children&&(e.children=z(e.children,t,r));const i=t.includes(a);return i&&r?.(e,a),!i}));l().useImperativeHandle(e,(()=>({CALCULATE_HEIGHT:()=>{x()},DO_REFRESH:async e=>{f&&(await ne(0),await y(),e?.())},GET_LOG:()=>A(),GET_FETCH_PARAMS:()=>{const e={};for(const t in u)Object.keys(d).includes(t)||(e[t]=u[t]);return e},CLEAR_TABLE_DATA:()=>{f||(_(),F(),D(),H(),q(),$(),b([]))},CLEAR_LOG:()=>{$(),L()},CREATE_FOCUS:(e,t)=>{i.current.createFocus(e,t)},FORCE_UPDATE:()=>{L()},DO_EXPORT:()=>{a.current.exportHandle()},SCROLL_TO_RECORD:e=>{w(e)},SCROLL_TO_COLUMN:e=>{E(e)},SET_SELECTION:(e,t)=>{T(t?Bn([...e]):e)},SET_EXPANDABLE:(e,t)=>{R(t?Bn([...e]):e)},SET_HIGHLIGHT:e=>{O(e)},SET_SELECTION_ROWS:e=>{k(e)},SET_TABLE_DATA:e=>{v(e)},DEFINE_INITIAL_COLUMNS:e=>{P(e),I(!0),o.current.initialHandler()},SET_TABLE_COLUMN:(e,t,n)=>{const r=qn(M,e);if(!r)return me("Table","SET_TABLE_COLUMN 方法参数 `dataIndex` 的值不正确");if(!(0,X.isPlainObject)(t))return me("Table","SET_TABLE_COLUMN 方法参数 `option` 的值不正确");if(r.noAuth)return me("Table","SET_TABLE_COLUMN 方法不能操作受权限控制的列");for(const e in t)e&&(0,X.set)(r,e,t[e]);n&&(K?K([...M]):me("Table","需要设置 `columnsChange` 参数"),L())},INSERT_RECORDS:(e,t)=>{const{store:a,tableFullData:i}=r.current,l=(Array.isArray(e)?e:[e]).filter((e=>(0,X.isPlainObject)(e)));if(!l.length)return;l.forEach((e=>{s.forEach((t=>{const{dataIndex:n}=t;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(n)||Zn(e,n,Qn(e,n))})),a.addToInserted(e)}));const o="before"===t?.mode,c=void 0===t?.parentRowKey,d=i;if(c)o?d.unshift(...l):d.push(...l);else{const e=pr(i,(e=>t.parentRowKey===n(e,e.index)));e&&(Array.isArray(e.children)?o?e.children.unshift(...l):e.children.push(...l):e.children=l)}c&&N(Object.assign({},r.current.handleState,{insert:o?"before":"after"})),b(d),g()},REMOVE_RECORDS:e=>{const{store:t,tableFullData:a}=r.current,i=(Array.isArray(e)?e:[e]).map((e=>(0,X.isPlainObject)(e)?n(e,e.index):e));if(!i.length)return;let l=!1;const o=z(a,i,((e,n)=>{t.addToRemoved(e),c.forEach((r=>{const{dataIndex:a,editRender:i}=r,l=i?.(e,r);if(!l)return;const{rules:o=[],disabled:s}=l;!s&&o.length&&(t.removeFromRequired({x:n,y:a}),t.removeFromValidate({x:n,y:a}),t.removeFromEdited({x:n,y:a}))})),l=!0}));l&&(N(Object.assign({},r.current.handleState,{remove:!0})),v(o),T(m.filter((e=>!i.includes(e)))),i.includes(h)&&F(),R(p.filter((e=>!i.includes(e)))),g(),re((()=>{S(z(r.current.tableOriginData,i))})))},VALIDATE_FIELDS:(e,t)=>{r.current.allTableData.forEach((r=>{c.forEach((a=>{const{dataIndex:i,title:l,editRender:o}=a,s=o?.(r,a);if(!s)return;const c=n(r,r.index);if(e&&!e.includes(c))return;if(t&&!t.includes(i))return;const{rules:d=[],disabled:u}=s;u||C(d,Qn(r,i),c,i,or(l))}))}));const{required:a,validate:i}=A(),l=[...a,...i];return l.length&&w(l[0].rowKey),L(),{required:a,validate:i}}})))})(t,{getRowKey:k,tableRef:P,toolBoxRef:T,tableBodyRef:I,columnFilterRef:R,flattenColumns:Ye,editableColumns:Xe,pagination:he,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,isFetch:Ve,dataChange:Kt,getTableData:_t,createTableData:Dt,createTableFullData:At,calcTableHeight:Rt,scrollXToColumn:It,scrollYToRecord:Tt,doFieldValidate:$t,setTableOriginData:D,setHandleState:W,setColumnsDefined:K,setSelectionKeysEffect:qt,setRowExpandedKeys:ve,setHighlightKey:Ce,setSelectionRows:U,setOriginColumns:_,forceUpdate:Ne,getTableLog:Mt,clearRowSelection:Qt,clearRowHighlight:Zt,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearTableLog:Jt}),l().useLayoutEffect((()=>{Et(),P.current.tableManager.register(P.current.uid,t??{current:null})}),[]);const nn={[`${O}--wrapper`]:!0,[`${O}--lg`]:"large"===C,[`${O}--sm`]:"small"===C,[`${O}--maximize`]:Ke,[c]:!!c},rn={[O]:!0,"is--border":it,"is--fixed":Ze.length||Je.length,"is--sortable":lt,"is--filterable":ot,"is--head-group":at,"is--area-select":!!d,"is--ping-left":De,"is--ping-right":$e};return l().createElement(Aa.Provider,{value:tn},l().createElement("div",{className:xe()(nn,E),style:w},g&&l().createElement("div",{ref:S,className:`${O}-top`},l().createElement("div",{className:`${O}-top__space`},"bottom"!==p?.position&&l().createElement(ai,{total:he.total}),l().createElement("div",{className:`${O}-top__space-slot`,style:{justifyContent:ja[f]}},n.children)),l().createElement("div",{className:`${O}-top__actions`},l().createElement(To,{ref:T,showFullScreen:y,showReload:b&&Ve,showPrint:Le.print&&!!u,showImport:Le.import&&dt,showExport:Le.export&&!!m,showClipboard:ut,showCollection:ct,showFastSearch:ht,showSuperSearch:pt,showPivotGrid:ft,showGroupSummary:gt,showToolBox:v,tableColumns:Ge}),l().createElement(ko,{ref:R,columns:a}))),l().createElement(mt,{spinning:i??_e},l().createElement("div",{ref:N,className:xe()(rn),style:wt},l().createElement("div",{className:`${O}--main-wrapper`},x&&l().createElement(Yo,{tableColumns:Ge}),l().createElement(Ts,{ref:I}),rt&&l().createElement(Rs,null)),it&&l().createElement("div",{className:`${O}--border-line`}),bt&&l().createElement(Ps,null),s&&l().createElement(Ls,null))),Ue&&l().createElement(ks,As({},he,{onChange:(e,t)=>Bt({current:e,pageSize:t})}))))}));_s.displayName="QmTable";const Fs=_s,Ds=Fs;function Hs(){return Hs=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hs.apply(null,arguments)}const qs=e=>{const{uniqueKey:t,multiple:n,initialValue:r,selectionRows:a,defaultSelectedKeys:i=[],filters:o=[],table:s={},className:c,style:d,onClose:u}=e,{$size:m}=Y(e),{t:p}=U(),h=l().useRef(null),g=l().useRef(null),y=l().useRef(null),b=xt(h),[v,x]=l().useState(s),[E,w]=l().useState(),[C,S]=l().useState(i),[N,I]=l().useState(!1),[T,R]=l().useState(300),[O,k]=l().useState(o),[P,L]=l().useState([{title:p("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},...s.columns||[]]),[A,_]=l().useState((0,X.merge)({},s.fetch?.params,r)),[F,D]=l().useState([]),H=()=>{const e=h.current,t=e.querySelector(".form-wrap");R(e.offsetHeight-t.offsetHeight-2*La[m]-30)},q=Et(H,5);f((()=>{q()}),[b.width]),He((()=>{(0,X.isEqual)(o,O)||k(o)}),[o]),l().useEffect((()=>{$()}),[A]),l().useEffect((()=>{a&&y.current.SET_SELECTION_ROWS(a)}),[a]),l().useEffect((()=>{r&&g.current?.SET_FIELDS_VALUE(r)}),[]);const $=async()=>{const{webPagination:e,fetch:t}=v;if(!e||!t?.api)return;const{api:r,dataKey:a,beforeFetch:i=te}=t;if(i(A)){I(!0);try{const e=await r(A);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[];n||(S([]),await ne(0)),D(t)}}catch(e){}I(!1)}},M=e=>{n||(w(e),u(e))},K=e=>{_(Object.assign({},A,e))},z=Ee("search-helper"),j={[`${z}--wrapper`]:!0},V=v.webPagination?{dataSource:F,loading:N,webPagination:!0}:{fetch:{...v.fetch,params:A}};return l().createElement("div",{ref:h,className:xe()(j,c),style:d},l().createElement("div",{className:"form-wrap"},O.length?l().createElement(_u,{ref:g,items:O,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>k(e),onCollapse:()=>H(),onFinish:e=>K(e),onReset:async()=>{const[e,t]=await g.current.GET_FORM_DATA();e||K(t)}}):null),l().createElement("div",null,l().createElement(Ds,Hs({ref:y,uniqueKey:t,height:T,columns:P,rowKey:v.rowKey||"pageIndex"},V,{rowSelection:{type:n?"checkbox":"radio",clearableAfterFetched:!n,selectFirstRowOnChange:!0,selectAllOnCurrentPage:!0,selectedRowKeys:C,onChange:(e,t)=>{S(e),w(n?t:t[0])}},topSpaceAlign:"left",paginationConfig:v.paginationConfig,columnsChange:e=>L(e),onRowDblclick:M,onRowEnter:M}),v.topBarExtra)),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[m]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>u(null),style:{marginRight:8}},p("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!E,onClick:()=>u(E,n?C:void 0)},p("qm.dialog.confirm"))))};qs.displayName="QmSearchHelper";const $s=qs;function Ms(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const{Search:Ks}=R.Input;class zs extends i.Component{constructor(e){super(e),Ms(this,"context",void 0),Ms(this,"deriveParams",void 0),Ms(this,"valueKey",void 0),Ms(this,"_is_change",!1),Ms(this,"_record",void 0),Ms(this,"_prevValue",null),Ms(this,"state",{visible:!1,loading:!1}),Ms(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),Ms(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),Ms(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),Ms(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e}=this.props.option,{fieldAliasMap:t,fieldsDefine:n,echoRequest:r}=this.searchHelper;if(t||me("Form","SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),n){const e=["valueKey","displayKey","extraKey"];for(const t in n)e.includes(t)&&(this[t]=n[t])}Object.keys(this.alias).includes(e)||me("Form","SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),r&&!this.valueKey&&me("Form","SEARCH_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),Ms(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),Ms(this,"getDerivedSearchHelper",(()=>this.searchHelper)),Ms(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d)){this.setState({loading:!0});try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e),this.searchHelperChangeHandle(e)}a?.([t])}}}catch(e){}this.setState({loading:!1})}})),Ms(this,"todoOpen",(e=>{const{autoQueryAssign:t=!0}=this.searchHelper;t&&(this.deriveParams=this.createFilters(e)),this.setVisible(!0)})),Ms(this,"createFilters",(e=>{const{fieldName:t}=this.props.option,{filterAliasMap:n}=this.searchHelper,r=""!==e?e:void 0,a=("function"==typeof n?n():n)||[],i={[t]:r};return(Array.isArray(a)?a:[a]).forEach((e=>{if((0,X.isPlainObject)(e))for(const t in e)i[t]="function"==typeof e[t]?e[t](r):r;else i[e]=r})),i})),Ms(this,"getSearchHelperTableData",(e=>{const{table:t,initialValue:n={}}=this.searchHelper,{beforeFetch:r=te,formatter:a=e=>e}=t.fetch;return new Promise((async(i,l)=>{const o=(0,X.merge)({},this.searchHelper.table.fetch.params,{...n,...a(this.createFilters(e))},{currentPage:1,pageSize:500});if(!r(o))return l();this.setState({loading:!0});try{const e=await t.fetch.api(o);200===e.code?i(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[]):l()}catch(e){l(e)}finally{re((()=>this.setState({loading:!1})))}}))})),Ms(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;for(const r in this.alias){const a=Fr(e,this.alias[r]);void 0!==a&&(t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a))}for(const n in this.extras){const r=Fr(e,this.extras[n]);void 0!==r&&t.SET_FIELDS_EXTRA({[n]:r})}})),Ms(this,"resetSearchHelperValue",(async(e=[],t)=>{const{fieldName:n}=this.props.option,r=e.filter((e=>Fr(e,this.alias[n])?.toString().toLowerCase().includes(t.toLowerCase())));if(1===r.length)return this.closeSearchHelper(r[0]);this.openSearchHelper(t)})),Ms(this,"openSearchHelper",(async(e,t)=>{await this.props.waiting();const{$$form:n}=this.context,{beforeOpen:r}=this.searchHelper,a=(r??te)(n.state.formData);a?.then?a.then((()=>{this.todoOpen(e),t?.()})).catch((()=>{})):!1!==a&&(this.todoOpen(e),t?.())})),Ms(this,"closeSearchHelper",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){if(r===n)continue;const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])});const r=Fr(e,this.alias[n]);this.triggerChange(r),this.searchHelperChangeHandle(r);const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(e)),200)}))})),Ms(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)})),Ms(this,"clearSearchHelperValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;if(this.triggerChange(""),null!==this._record){for(const n in this.alias)n!==t&&(e.SET_FIELDS_VALUE({[n]:void 0}),n===this.valueKey&&(this._prevValue=null));for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.searchHelperChangeHandle("")}})),Ms(this,"searchHelperChangeHandle",(e=>{const{onChange:t}=this.props.option;this.deriveParams={},this._is_change=!1,t?.(e,this._record)})),Ms(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e)})),Ms(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),Ms(this,"focus",(()=>{const{type:e}=this.props.option;this[`${e}_Ref`].focus({cursor:"end"})})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(){this.echoSearchHelper()}render(){const{$$form:e}=this.context,{visible:t,loading:n}=this.state,{value:r}=this.props,{type:a,fieldName:i,options:o={},searchHelper:s={},style:c={},placeholder:d=p("qm.form.inputPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:h,disabled:f}=this.props.option,{prefix:g,suffix:y,maxLength:b}=o,v={visible:t,title:p("qm.searchHelper.text"),width:s.width??"60%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},x={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:Object.assign({},this.deriveParams,s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}};return e.isOnlyShow?l().createElement(ea,{value:r,bordered:u}):l().createElement(l().Fragment,null,l().createElement(Ks,{ref:e=>this[`${a}_Ref`]=e,value:r,title:r,loading:n,placeholder:d,style:c,prefix:g,suffix:y,maxLength:b,bordered:u,allowClear:m,readOnly:h,disabled:f,onBlur:e=>{const{value:n}=e.target,{onlySelect:r=!0,table:a}=this.searchHelper;this.triggerBlur(n),this._is_change&&!t&&(n?r?a?.fetch?.api&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e,n))).catch((()=>this.clearSearchHelperValue())):this.searchHelperChangeHandle(n):this.clearSearchHelperValue())},onKeyDown:e=>{if(13===e.keyCode){e.preventDefault();const{value:n}=e.target;!t&&this.openSearchHelper(n)}},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"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper(e):re((()=>this.clearSearchHelperValue())))}}),l().createElement(yn,v,l().createElement($s,x)))}}Ms(zs,"contextType",xn);class js extends i.Component{constructor(e,{$$form:t}){super(e),Ms(this,"context",void 0),Ms(this,"promiseRef",void 0),Ms(this,"searchRef",void 0),Ms(this,"state",{searchHelper:{}}),Ms(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),Ms(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[]}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(zs,{ref:e=>this.searchRef=e,option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t="")=>{e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Ms(js,"contextType",xn);const Vs=js;function Ws(){return Ws=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ws.apply(null,arguments)}function Bs(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Us=e=>{class t extends i.Component{constructor(...e){super(...e),Bs(this,"startClick",void 0),Bs(this,"event1",null),Bs(this,"event2",null),Bs(this,"$el",null),Bs(this,"omitClassNames",[]),Bs(this,"state",{clickOutside:!1}),Bs(this,"mousedownHandler",(e=>{this.startClick=e})),Bs(this,"mouseupHandler",(e=>{this.documentHandler(e,this.startClick)})),Bs(this,"documentHandler",((e,t)=>{const n=e.target,r=t?.target,a=!n||!r,i=this.$el?.contains(n)||this.$el?.contains(r),l=this.$el===n,o=this.omitClassNames.map((e=>Array.from(document.querySelectorAll(e)))).flat(),s=o.some((e=>e?.contains(n)))||o.includes(r);let c;c=!(a||i||l||s),this.setState({clickOutside:c})})),Bs(this,"setCurrentElement",(e=>{e&&(this.$el=e)})),Bs(this,"setOmitClassNames",((e=[])=>{this.omitClassNames=e}))}componentDidMount(){this.event1=Ut()(document,"mousedown",this.mousedownHandler),this.event2=Ut()(document,"mouseup",this.mouseupHandler)}componentWillUnmount(){this.event1?.remove(),this.event2?.remove()}render(){const{forwardedRef:t}=this.props,{clickOutside:n}=this.state;return l().createElement(e,Ws({ref:t},this.props,{clickOutside:n,setCurrentElement:this.setCurrentElement,setOmitClassNames:this.setOmitClassNames}))}}return Bs(t,"displayName",`OutsideClick(${e.displayName||e.name})`),l().forwardRef(((e,n)=>l().createElement(t,Ws({},e,{forwardedRef:n}))))};var Gs,Ys;function Xs(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let Qs=Us((Ys=class extends i.Component{constructor(e){super(e),Xs(this,"context",void 0),Xs(this,"searchRef",l().createRef()),Xs(this,"_records",[]),Xs(this,"state",{visible:!1,visible2:!1,loading:!1,itemList:[]}),Xs(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),Xs(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","MULTIPLE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","MULTIPLE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),Xs(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),Xs(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),Xs(this,"setItemList",(e=>{this.setState({itemList:e})})),Xs(this,"setRecords",(e=>{this._records=e})),Xs(this,"recordsToDict",(()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))))),Xs(this,"setViewValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;t.setViewValue(n,this.createViewText(e))})),Xs(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),Xs(this,"closeSearchHelper",((e,t=[])=>{const{valueKey:n}=this.alias;this.setRecords((0,X.uniqBy)([...this._records.filter((e=>t.includes(e[n]))),...e],n));const r=this.recordsToDict();this.setItemList(r),this.triggerChange(r.map((e=>e.value)));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),Xs(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),t?.(e),n(e,this.createViewText(e),this._records)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:n=[]}=e,{value:r=[],clickOutside:a}=this.props;(0,X.isEqual)(n,r)||(0,X.isEqual)(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),a&&t.visible2&&this.setState({visible2:!1})}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,callback:l,fieldAliasMap:o}=this.searchHelper.echoRequest||this.props.option.searchHelper?.request||{},s="function"==typeof o?o():o||{},{value:c}=this.props;if(n){if(ie(c))return this.setRecords([]);this.setState({loading:!0});try{const o=await n(a({...r,keys:c}));if(200===o.code){let n=Array.isArray(o.data)?o.data:(0,X.get)(o.data,i)??[];n.forEach((n=>{s?.valueKey&&s.valueKey!==t&&(n[t]=n[s.valueKey]),s?.textKey&&s.textKey!==e&&(n[e]=n[s.textKey])})),n=n.filter((e=>c.includes(e[t])));const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setViewValue(c),l?.(n)}}catch(e){}this.setState({loading:!1})}}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){const{$$form:e}=this.context,{visible:t,visible2:n,loading:r,itemList:a}=this.state,{value:i}=this.props,{fieldName:o,options:s={},searchHelper:c={},style:d={},placeholder:u=p("qm.form.selectPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{collapseTags:y,maxTagTextLength:b}=s,v={visible:t,title:p("qm.searchHelper.text"),width:c.width??"60%",wrapClassName:`form-popper__${o}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,multiple:!0,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${o}`:"",initialValue:(0,X.merge)({},c.initialValue),defaultSelectedKeys:i,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}},E=a.filter((e=>i?.includes(e.value))),w=l().createElement("ul",{className:"ant-dropdown-menu"},E.length?E.map((e=>l().createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):l().createElement("li",{className:"ant-dropdown-menu-item"},p("qm.table.config.emptyText"))),C=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=Ee("form-multiple-search-helper"),{size:N}=e.context,I={[S]:!0,[`${S}--lg`]:"large"===N,[`${S}--sm`]:"small"===N};this.props.setOmitClassNames?.([`.${S}`]);const T=a.filter((e=>i?.includes(e.value))).map((e=>e.text)).join(",");return e.isOnlyShow?l().createElement(ea,{value:T,bordered:m}):l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},l().createElement(Ri(),{popupVisible:!g&&n,popup:w,popupClassName:xe()(I),popupStyle:{minWidth:C},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement(R.Select,{mode:"multiple",maxTagCount:y?"responsive":void 0,maxTagTextLength:b,open:!1,value:i,placeholder:u,loading:r,bordered:m,allowClear:h,disabled:g,style:{width:"100%",...d},title:T,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{const t=e.target;t.classList.contains("ant-select-selection-overflow-item-rest")&&(this.props.setCurrentElement?.(t),this.setState({visible2:!0}))},onDoubleClick:()=>{g||this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},a.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:g,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),l().createElement(yn,v,l().createElement($s,x)))}},Xs(Ys,"contextType",xn),Gs=Ys))||Gs;class Zs extends i.Component{constructor(e,{$$form:t}){super(e),Xs(this,"context",void 0),Xs(this,"promiseRef",void 0),Xs(this,"state",{searchHelper:{}}),Xs(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),Xs(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Qs,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{f(t,r),e.setViewValue(i,n)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Xs(Zs,"contextType",xn);const Js=Zs;function ec(){return ec=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ec.apply(null,arguments)}const tc=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...tc(e.children)),e.children&&t.push(e.value)})),t},nc=(e,t)=>{let n=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(n=nc(e[r].children,t)),n)return n;if(t(e[r]))return e[r]}return n},rc=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&rc(e.children,t),t(e)||e.children&&e.children.length))),ac=e=>{const{uniqueKey:t,multiple:n,initialValue:r,selectionRows:a,defaultSelectedKeys:i=[],filters:o=[],table:s={},tree:c={},className:d,style:u,onClose:m}=e,{$size:p}=Y(e),{t:h}=U(),g=l().useRef(null),y=l().useRef(null),b=l().useRef(null),v=xt(g),[x,E]=l().useState(s),[w,C]=l().useState(),[S,N]=l().useState(i),[I,T]=l().useState(!1),[O,k]=l().useState(300),[P,L]=l().useState(300),[A,_]=l().useState(o),[F,D]=l().useState([{title:h("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},...s.columns||[]]),[H,q]=l().useState((0,X.merge)({},s.fetch?.params,r)),[$,M]=l().useState([]),K=()=>{const e=g.current,t=e.querySelector(".form-wrap"),n=e.querySelector(".input-wrap");k(e.offsetHeight-n.offsetHeight-10),L(e.offsetHeight-t.offsetHeight-2*La[p]-30)},z=Et(K,5);f((()=>{z()}),[v.width]),He((()=>{(0,X.isEqual)(o,A)||_(o)}),[o]),l().useEffect((()=>{j()}),[H]),l().useEffect((()=>{a&&b.current.SET_SELECTION_ROWS(a)}),[a]),l().useEffect((()=>{r&&y.current?.SET_FIELDS_VALUE(r),ie()}),[]);const j=async()=>{const{webPagination:e,fetch:t}=x;if(!e||!t?.api)return;const{api:r,dataKey:a,beforeFetch:i=te}=t;if(i(H)){T(!0);try{const e=await r(H);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[];n||(N([]),await ne(0)),M(t)}}catch(e){}T(!1)}},V=e=>{n||(C(e),m(e))},W=e=>{q(Object.assign({},H,e))},[B,G]=l().useState([]),[Q,Z]=l().useState([]),[J,ee]=l().useState(""),re=l().useRef(B),ae=l().useRef([]);He((()=>{Z(tc(B))}),[B]);const ie=async()=>{if(!c.fetch)return;const{api:e,params:t,dataKey:n,valueKey:r="value",textKey:a="text"}=c.fetch;try{const i=await e(t);if(200===i.code){const e=Array.isArray(i.data)?i.data:(0,X.get)(i.data,n)??[],t=qr(e,r,a);G(t),re.current=t,ae.current=e}}catch(e){}},le=e=>`${e}|${Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,oe=Ee("tree-table-helper"),se={[`${oe}--wrapper`]:!0},ce=x.webPagination?{dataSource:$,loading:I,webPagination:!0}:{fetch:{...x.fetch,params:H}};return l().createElement("div",{ref:g,className:xe()(se,d),style:u},l().createElement(nt,{defaultValue:200,style:{height:"100%"}},l().createElement(nt.Pane,{min:100,style:{overflowY:"auto"}},l().createElement(R.Input,{className:"input-wrap",value:J,style:{marginBottom:8},placeholder:h("qm.form.inputPlaceholder"),suffix:l().createElement(we.SearchOutlined,null),allowClear:!0,onChange:e=>(e=>{const t=rc(re.current,(t=>{if(!e)return!0;const n=t.text||"";return-1!==le(n).indexOf(e)}));ee(e),G(t)})(e.target.value)}),l().createElement(R.Tree,{fieldNames:{title:"text",key:"value",children:"children"},height:O,defaultExpandAll:!0,expandedKeys:Q,treeData:B,filterTreeNode:e=>{if(!J)return!1;const t=e.text||"";return-1!==le(t).indexOf(J)},onExpand:e=>{Z(e)},onSelect:e=>{const{valueKey:t="value"}=c.fetch;(e=>{if(!c.tableParamsMap)return me("TreeTableHelper","需要配置 `tree.tableParamsMap` 选项");const t="function"==typeof c.tableParamsMap?c.tableParamsMap():c.tableParamsMap,n={};for(const r in t)n[r]=(0,X.get)(e,t[r]);W(n)})(nc(ae.current,(n=>(0,X.get)(n,t)===e[0]))||{})}})),l().createElement(nt.Pane,{className:"split-pane"},l().createElement("div",{className:"form-wrap"},A.length?l().createElement(_u,{ref:y,items:A,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>_(e),onCollapse:()=>K(),onFinish:e=>W(e),onReset:async()=>{const[e,t]=await y.current.GET_FORM_DATA();e||W(t)}}):null),l().createElement("div",null,l().createElement(Ds,ec({ref:b,uniqueKey:t,height:P,columns:F,rowKey:x.rowKey||"pageIndex"},ce,{rowSelection:{type:n?"checkbox":"radio",clearableAfterFetched:!n,selectFirstRowOnChange:!0,selectAllOnCurrentPage:!0,selectedRowKeys:S,onChange:(e,t)=>{N(e),C(n?t:t[0])}},topSpaceAlign:"left",paginationConfig:x.paginationConfig,columnsChange:e=>D(e),onRowDblclick:V,onRowEnter:V}),x.topBarExtra)))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[p]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>m(null),style:{marginRight:8}},h("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!w,onClick:()=>m(w,n?S:void 0)},h("qm.dialog.confirm"))))};ac.displayName="TreeTableHelper";const ic=ac;function lc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const{Search:oc}=R.Input;class sc extends i.Component{constructor(e){super(e),lc(this,"context",void 0),lc(this,"valueKey",void 0),lc(this,"_record",void 0),lc(this,"_prevValue",null),lc(this,"state",{visible:!1,loading:!1}),lc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),lc(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),lc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),lc(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e}=this.props.option,{fieldAliasMap:t,fieldsDefine:n,echoRequest:r}=this.searchHelper;if(t||me("Form","TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),n){const e=["valueKey","displayKey","extraKey"];for(const t in n)e.includes(t)&&(this[t]=n[t])}Object.keys(this.alias).includes(e)||me("Form","TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),r&&!this.valueKey&&me("Form","TREE_TABLE_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),lc(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),lc(this,"getDerivedSearchHelper",(()=>this.searchHelper)),lc(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d)){this.setState({loading:!0});try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e)}a?.([t])}}}catch(e){}this.setState({loading:!1})}})),lc(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;for(const r in this.alias){const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])})})),lc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),lc(this,"closeSearchHelper",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){if(r===n)continue;const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])});const r=Fr(e,this.alias[n]);this.triggerChange(r);const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(e)),200)}))})),lc(this,"clearSearchHelperValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;for(const n in this.alias)n!==t&&(e.SET_FIELDS_VALUE({[n]:void 0}),n===this.valueKey&&(this._prevValue=null));for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.triggerChange("")})),lc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this._record)})),lc(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(){this.echoSearchHelper()}render(){const{$$form:e}=this.context,{visible:t,loading:n}=this.state,{value:r=""}=this.props,{type:a,fieldName:i,options:o={},searchHelper:s={},style:c={},placeholder:d=p("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:h,disabled:f}=this.props.option,{prefix:g,suffix:y,maxLength:b}=o,v={visible:t,title:p("qm.searchHelper.text"),width:s.width??"65%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:(0,X.merge)({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.setVisible(!1)}};return e.isOnlyShow?l().createElement(ea,{value:r,bordered:u}):l().createElement(l().Fragment,null,l().createElement(oc,{ref:e=>this[`${a}_Ref`]=e,value:r,title:r,loading:n,placeholder:d,style:c,prefix:g,suffix:y,maxLength:b,bordered:u,allowClear:m,readOnly:h,disabled:f,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"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper():this.clearSearchHelperValue())}}),l().createElement(yn,v,l().createElement(ic,x)))}}lc(sc,"contextType",xn);class cc extends i.Component{constructor(e,{$$form:t}){super(e),lc(this,"context",void 0),lc(this,"promiseRef",void 0),lc(this,"state",{searchHelper:{}}),lc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),lc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(sc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n)=>{f(t,n),e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}lc(cc,"contextType",xn);const dc=cc;var uc,mc;function pc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let hc=Us((mc=class extends i.Component{constructor(e){super(e),pc(this,"context",void 0),pc(this,"searchRef",l().createRef()),pc(this,"_records",[]),pc(this,"state",{visible:!1,visible2:!1,loading:!1,itemList:[]}),pc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),pc(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","MULTIPLE_TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","MULTIPLE_TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),pc(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),pc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),pc(this,"setItemList",(e=>{this.setState({itemList:e})})),pc(this,"setRecords",(e=>{this._records=e})),pc(this,"recordsToDict",(()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))))),pc(this,"setViewValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;t.setViewValue(n,this.createViewText(e))})),pc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),pc(this,"closeSearchHelper",((e,t=[])=>{const{valueKey:n}=this.alias;this.setRecords((0,X.uniqBy)([...this._records.filter((e=>t.includes(e[n]))),...e],n));const r=this.recordsToDict();this.setItemList(r),this.triggerChange(r.map((e=>e.value)));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),pc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),t?.(e),n(e,this.createViewText(e),this._records)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:n=[]}=e,{value:r=[],clickOutside:a}=this.props;(0,X.isEqual)(n,r)||(0,X.isEqual)(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),a&&t.visible2&&this.setState({visible2:!1})}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,fieldAliasMap:l}=this.searchHelper.echoRequest||this.props.option.searchHelper?.request||{},o="function"==typeof l?l():l||{},{value:s}=this.props;if(n){if(ie(s))return this.setRecords([]);this.setState({loading:!0});try{const l=await n(a({...r,keys:s}));if(200===l.code){let n=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];n.forEach((n=>{o?.valueKey&&o.valueKey!==t&&(n[t]=n[o.valueKey]),o?.textKey&&o.textKey!==e&&(n[e]=n[o.textKey])})),n=n.filter((e=>s.includes(e[t])));const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setViewValue(s)}}catch(e){}this.setState({loading:!1})}}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){const{$$form:e}=this.context,{visible:t,visible2:n,loading:r,itemList:a}=this.state,{value:i}=this.props,{fieldName:o,options:s={},searchHelper:c={},style:d={},placeholder:u=p("qm.form.selectPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{collapseTags:y,maxTagTextLength:b}=s,v={visible:t,title:p("qm.searchHelper.text"),width:c.width??"65%",wrapClassName:`form-popper__${o}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,multiple:!0,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${o}`:"",initialValue:(0,X.merge)({},c.initialValue),defaultSelectedKeys:i,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}},E=a.filter((e=>i?.includes(e.value))),w=l().createElement("ul",{className:"ant-dropdown-menu"},E.length?E.map((e=>l().createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):l().createElement("li",{className:"ant-dropdown-menu-item"},p("qm.table.config.emptyText"))),C=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=Ee("form-multiple-tree-table-helper"),{size:N}=e.context,I={[S]:!0,[`${S}--lg`]:"large"===N,[`${S}--sm`]:"small"===N};this.props.setOmitClassNames?.([`.${S}`]);const T=a.filter((e=>i?.includes(e.value))).map((e=>e.text)).join(",");return e.isOnlyShow?l().createElement(ea,{value:T,bordered:m}):l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},l().createElement(Ri(),{popupVisible:!g&&n,popup:w,popupClassName:xe()(I),popupStyle:{minWidth:C},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement(R.Select,{mode:"multiple",maxTagCount:y?"responsive":void 0,maxTagTextLength:b,open:!1,value:i,placeholder:u,loading:r,bordered:m,allowClear:h,disabled:g,style:{width:"100%",...d},title:T,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{const t=e.target;t.classList.contains("ant-select-selection-overflow-item-rest")&&(this.props.setCurrentElement?.(t),this.setState({visible2:!0}))},onDoubleClick:()=>{g||this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},a.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:g,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),l().createElement(yn,v,l().createElement(ic,x)))}},pc(mc,"contextType",xn),uc=mc))||uc;class fc extends i.Component{constructor(e,{$$form:t}){super(e),pc(this,"context",void 0),pc(this,"promiseRef",void 0),pc(this,"state",{searchHelper:{}}),pc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),pc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(hc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{f(t,r),e.setViewValue(i,n)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}pc(fc,"contextType",xn);const gc=fc;function yc(){return yc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},yc.apply(null,arguments)}const bc="_startSign",vc="_endSign",xc=e=>{const{uniqueKey:t,initialValue:n,filters:r=[],table:a={},onClose:i}=e,{$size:o}=Y(e),{t:s}=U(),c=l().useRef(null),d=l().useRef(null),u=l().useRef(null),m=xt(c),[p,h]=l().useState(a),[g,y]=l().useState(!1),[b,v]=l().useState([]),[x,E]=l().useState(300),[w,C]=l().useState(r),[S,N]=l().useState([{title:s("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},{title:s("qm.form.rangeSearchHelper")[0],dataIndex:bc,width:80,align:"right",render:(e,t)=>l().createElement("span",{className:"icon-sign"},e)},...a.columns||[],{title:s("qm.form.rangeSearchHelper")[1],dataIndex:vc,fixed:"right",width:80,render:(e,t)=>l().createElement("span",{className:"icon-sign"},e)}]),[I,T]=l().useState((0,X.merge)({},a.fetch?.params,n)),[O,k]=l().useState([]),P=l().useMemo((()=>b.map((e=>e?.pageIndex))),[b]),L=l().useMemo((()=>2===P.length&&P.every((e=>void 0!==e))),[P]),A=()=>{const e=c.current.parentNode.children[0],t=e.querySelector(".form-wrap");E(e.offsetHeight-t.offsetHeight-2*La[o]-30)},_=Et(A,5);f((()=>{_()}),[m.width]),He((()=>{(0,X.isEqual)(r,w)||C(r)}),[r]),l().useEffect((()=>{F()}),[I]);const F=async()=>{const{webPagination:e,fetch:t}=p;if(!e||!t?.api)return;const{api:n,dataKey:r,beforeFetch:a=te}=t;if(a(I)){y(!0);try{const e=await n(I);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[];k(t)}}catch(e){}y(!1)}},D=(e,t)=>{delete e[t]},H=()=>{b.forEach((e=>{e&&(D(e,bc),D(e,vc))})),v([])},q=e=>{H(),T(Object.assign({},I,e))},$=Ee("range-helper"),M=p.webPagination?{dataSource:O,loading:g,webPagination:!0}:{fetch:{...p.fetch,params:I}};return l().createElement("div",{ref:c,className:`${$}--wrapper`},l().createElement("div",{className:"form-wrap"},w.length?l().createElement(_u,{ref:d,items:w,initialValues:n,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>C(e),onCollapse:()=>A(),onFinish:e=>q(e),onReset:async()=>{const[e,t]=await d.current.GET_FORM_DATA();e||q(t)}}):null),l().createElement("div",null,l().createElement(Ds,yc({ref:u,height:x,columns:S,rowKey:p.rowKey||"pageIndex",rowStyle:e=>e.pageIndex>=P[0]&&e.pageIndex<=P[1]?{backgroundColor:"#f5f5f5"}:{}},M,{columnsChange:e=>N(e),onRowClick:(e,t)=>{const{dataIndex:n}=t;[bc,vc].includes(n)&&(n===bc&&(e[n]?(D(e,n),v([void 0,b[1]])):e.pageIndex>P[1]?R.message.warning(s("qm.searchHelper.rangeStartTip")):(b[0]&&D(b[0],n),e[n]="[",v([e,b[1]]))),n===vc&&(e[n]?(D(e,n),v([b[0],void 0])):e.pageIndex<P[0]?R.message.warning(s("qm.searchHelper.rangeEndTip")):(b[1]&&D(b[1],n),e[n]="]",v([b[0],e]))),u.current.FORCE_UPDATE())},onDataLoad:e=>{e.forEach((e=>{e.pageIndex===P[0]&&(e[bc]="["),e.pageIndex===P[1]&&(e[vc]="]")}))}}),l().createElement(fe,{type:"primary",icon:l().createElement(we.ClearOutlined,null),title:s("qm.table.alert.clear"),onClick:()=>H()}))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[o]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>i(null),style:{marginRight:8}},s("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!L,onClick:()=>i(b.map((e=>(e=>{const t={};for(const n in e)[bc,vc].includes(n)||(t[n]=e[n]);return t})(e))))},s("qm.dialog.confirm"))))};xc.displayName="RangeTableHelper";const Ec=xc;function wc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Cc=new Array(2).fill("");class Sc extends i.Component{constructor(e){super(e),wc(this,"context",void 0),wc(this,"_is_change",!1),wc(this,"_ceho_data",void 0),wc(this,"_records",[]),wc(this,"_is_clear",!1),wc(this,"state",{visible:!1,loading:!1,itemList:[],textValue:Cc}),wc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),wc(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","RANGE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","RANGE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),wc(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),wc(this,"setItemList",(e=>{this.setState({itemList:e})})),wc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),wc(this,"setTextValue",(e=>{this.setState({textValue:e})})),wc(this,"setRecords",(e=>{this._records=e})),wc(this,"setViewValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;e.setViewValue(t,this.createViewText())})),wc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;this._is_change=!1,t?.(e),n(e,this.createViewText(),this._records)})),wc(this,"clearSearchHelperValue",(()=>{this.setRecords([]),this.setTextValue(Cc),this.triggerChange([])})),wc(this,"closeSearchHelper",(e=>{const{valueKey:t,textKey:n}=this.alias,r=e.map((e=>({value:e[t],text:e[n]})));this.setRecords(e),this.setItemList(r),this.setTextValue(r.map((e=>e.text??""))),this.triggerChange(e.map((e=>e[t])));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),wc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),wc(this,"createFilters",(e=>{const{fieldName:t}=this.props.option,n=ie(e)?void 0:e;return{[t]:n}})),wc(this,"getSearchHelperTableData",(e=>{const{table:t,initialValue:n={}}=this.searchHelper,{beforeFetch:r=te,formatter:a=e=>e}=t.fetch;return new Promise((async(i,l)=>{const o=(0,X.merge)({},this.searchHelper.table.fetch.params,{...n,...a(this.createFilters(e))},{currentPage:1,pageSize:500});try{if(!r(o))return l();this.setState({loading:!0});const e=await t.fetch.api(o);if(re((()=>this.setState({loading:!1}))),200===e.code)return i(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[])}catch(e){this.setState({loading:!1})}l()}))})),wc(this,"resetSearchHelperValue",(async(e=[])=>{const{textValue:t}=this.state,{textKey:n}=this.alias,r=e.filter((e=>{const r=e[n]?.toString().toLowerCase();return t.some((e=>r?.includes(e.toLowerCase())))}));if(2===r.length)return this.closeSearchHelper(r);this.openSearchHelper()})),wc(this,"closeButNotSelect",(()=>{this._is_change&&this.clearSearchHelperValue(),this.setVisible(!1)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e){const{value:t=[]}=e,{value:n=[]}=this.props;(0,X.isEqual)(t,n)||(0,X.isEqual)(n,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList();const{echo_data:r}=this.context,{fieldName:a}=this.props.option;if(!(0,X.isEqual)(r[a],this._ceho_data)&&(this._ceho_data=r[a],this.setItemList(r[a]),n.length)){const e=Cc.map(((e,t)=>r[a].find((e=>e.value===n[t]))?.text??""));this.setTextValue(e)}}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,fieldAliasMap:l}=this.searchHelper.echoRequest||{},o="function"==typeof l?l():l||{},{value:s}=this.props;if(n){if(ie(s))return this.setRecords([]);this.setState({loading:!0});try{const l=await n(a({...r,keys:s}));if(200===l.code){let n=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];n.forEach((n=>{o?.valueKey&&o.valueKey!==t&&(n[t]=n[o.valueKey]),o?.textKey&&o.textKey!==e&&(n[e]=n[o.textKey])})),n=n.filter((e=>s.includes(e[t]))).slice(0,2);const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setTextValue(r.map((e=>e.text??""))),this.setViewValue()}}catch(e){}this.setState({loading:!1})}}createViewText(){const{textKey:e}=this.alias;return this._records.map((t=>t[e])).join(" - ")}render(){const{$$form:e}=this.context,{value:t=[]}=this.props,{visible:n,loading:r,textValue:a}=this.state,{fieldName:i,options:o={},searchHelper:s={},placeholder:c=p("qm.form.rangeInputNumberPlaceholder"),bordered:d=!0,readOnly:u,disabled:m}=this.props.option,{onlySelect:h=!0}=this.searchHelper||s,f=a.every((e=>_r(e)))?"":a.join(" - "),g={visible:n,title:p("qm.searchHelper.text"),width:s.width??"65%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},y={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:(0,X.merge)({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}};return e.isOnlyShow?l().createElement(ea,{value:f,bordered:d}):l().createElement(l().Fragment,null,l().createElement(R.Input.Group,null,l().createElement(R.Input,{value:a[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:c[0],allowClear:!1,bordered:d,readOnly:u,disabled:m,onBlur:e=>{const{value:t}=e.target;this._is_change&&!n&&(t?a.every((e=>!!e))&&this.searchHelper.table?.fetch?.api&&this.getSearchHelperTableData(a).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):a.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;h||(this._is_change=!0,this.setTextValue([t,a[1]]))}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:d,disabled:m,readOnly:!0}),l().createElement(R.Input.Search,{value:a[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:c[1],loading:r,bordered:d,allowClear:!0,readOnly:u,disabled:m,onBlur:e=>{const{value:t}=e.target;this._is_change&&!n&&(t?a.every((e=>!!e))&&this.searchHelper.table?.fetch?.api&&this.getSearchHelperTableData(a).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):a.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;this._is_clear?this._is_clear=!1:h||(this._is_change=!0,this.setTextValue([a[0],t]))},onSearch:(e,t)=>{"click"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper():(this._is_clear=!0,this.clearSearchHelperValue()))}})),l().createElement(yn,g,l().createElement(Ec,y)))}}wc(Sc,"contextType",xn);class Nc extends i.Component{constructor(e,{$$form:t}){super(e),wc(this,"context",void 0),wc(this,"promiseRef",void 0),wc(this,"state",{searchHelper:{}}),wc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),wc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(c),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Sc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{h(t,r),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(i,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...d}))))}}wc(Nc,"contextType",xn);const Ic=Nc;function Tc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Rc=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,onChange:a,onValuesChange:i}=e,{options:o={},style:s={},bordered:c=!1,readOnly:d,disabled:u}=e.option,{itemList:m=[]}=o,p=ie(m)?r:m,h=e=>p.filter((t=>e.includes(t.value))).map((e=>e.text)).join(",");return t.isOnlyShow?l().createElement(ea,{value:h(n),bordered:c}):l().createElement(R.Checkbox.Group,{value:n,style:{width:"100%",...s},disabled:u,onChange:e=>{(e=>{a?.(e),i(e,h(e))})(e)}},p.map((e=>l().createElement(R.Checkbox,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class Oc extends i.Component{constructor(...e){super(...e),Tc(this,"context",void 0),Tc(this,"state",{itemList:[]})}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}async getItemList(){const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t)try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Rc,{option:this.props.option,items:t,onValuesChange:(t,n)=>{h(t),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Tc(Oc,"contextType",xn);const kc=Oc;function Pc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Lc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},style:o={},allowClear:s=!0,readOnly:c,disabled:d=t.isFormDisabled}=e.option,{allowHalf:u,count:m=5,tooltips:p}=i;return l().createElement(R.Rate,{value:n,count:m,style:o,allowHalf:u,allowClear:s,tooltips:p,disabled:d||t.isOnlyShow,onChange:e=>{(e=>{var t;r?.(e),a(e,(t=e,p?p[Math.ceil(t)-1]:t.toString()))})(e)}})};class Ac extends i.Component{constructor(...e){super(...e),Pc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Lc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Pc(Ac,"contextType",xn);const _c=Ac;function Fc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Dc=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,onChange:a,onValuesChange:i}=e,{options:o={},style:s={},bordered:c=!1,readOnly:d,disabled:u=t.isFormDisabled}=e.option,{itemList:m=[]}=o,p=ie(m)?r:m,h=e=>p.find((t=>t.value===e))?.text??"";return t.isOnlyShow?l().createElement(ea,{value:h(n),bordered:c}):l().createElement(R.Radio.Group,{value:n,style:{width:"100%",...s},disabled:u||t.isOnlyShow,onChange:e=>{const{value:t}=e.target;(e=>{a?.(e),i(e,h(e))})(t)}},p.map((e=>l().createElement(R.Radio,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class Hc extends i.Component{constructor(...e){super(...e),Fc(this,"context",void 0),Fc(this,"state",{itemList:[]}),Fc(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t)try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Dc,{option:this.props.option,items:t,onValuesChange:(t,n)=>{h(t),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Fc(Hc,"contextType",xn);const qc=Hc;function $c(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Mc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{label:i,options:o={},style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{labelToSwitch:u,falseValue:m=Cr,trueValue:p=wr}=o,{t:h}=U();return l().createElement(l().Fragment,null,l().createElement(R.Switch,{checked:n===p,style:s,disabled:d||t.isOnlyShow,checkedChildren:l().createElement(we.CheckOutlined,null),unCheckedChildren:l().createElement(we.CloseOutlined,null),onChange:e=>{(e=>{r?.(e),a(e,h(e===p?"am.form.trueText":"am.form.falseText"))})(e?p:m)}}),u?l().createElement("span",{style:{verticalAlign:"middle",marginLeft:8}},i):null)};class Kc extends i.Component{constructor(...e){super(...e),$c(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option,{labelToSwitch:h}=o;return l().createElement(R.Form.Item,{label:h?" ":e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Mc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}$c(Kc,"contextType",xn);const zc=Kc;function jc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Vc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},style:s={},placeholder:c=i("qm.form.inputPlaceholder"),bordered:d=!0,allowClear:u,readOnly:m,disabled:p,onFocus:h,onBlur:f,onEnter:g}=e.option,{showCount:y,maxLength:b,autoSize:v}=o,x=Object.assign({},{minRows:1,maxRows:3},v);return l().createElement(R.Input.TextArea,{value:n,placeholder:c,style:s,maxLength:b,showCount:y,autoSize:x,bordered:d,allowClear:u,readOnly:m||t.isOnlyShow,disabled:p,onFocus:e=>{h?.(e.target.value,e)},onBlur:t=>{const{value:n}=t.target;(t=>{const{onBlur:n}=e;n?.(t)})(n),f?.(n,t)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;g?.(t,e)}},onChange:e=>{const{value:t}=e.target;(e=>{r?.(e),a(e)})(t)}})};class Wc extends i.Component{constructor(...e){super(...e),jc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Vc,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}jc(Wc,"contextType",xn);const Bc=Wc;function Uc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Gc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:d={},placeholder:u=i("qm.form.datePlaceholder"),bordered:m=!0,allowClear:p=!0,readOnly:h,disabled:f}=e.option,{dateType:g="date",format:y,disabledDate:b,minDateTime:v,maxDateTime:x,shortCuts:E=!0}=s,w=l().createRef(),C=e=>{e&&"date"===g&&(e=e.slice(0,10)+" 00:00:00"),r?.(e),a(e,S(e))},S=e=>_r(e)?"":["date","exactdate"].includes(g)?e.slice(0,10):e,N=e=>{let t=Ar(c()().subtract(e,"day"),Rr[g]);"date"===g&&(t=t.slice(0,10)),C(t),w.current.blur(),w.current.focus()};return t.isOnlyShow?l().createElement(ea,{value:S(n),bordered:m}):l().createElement(_,{ref:w,style:{width:"100%",...d},popupClassName:`form-popper__${o}`,picker:Tr[g],format:y,bordered:m,showToday:!1,showTime:"datetime"===g&&{defaultValue:c()("00:00:00","HH:mm:ss")},allowClear:p,disabled:f,inputReadOnly:h,disabledDate:b??(e=>((e,[t,n])=>t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day"))(e,[v,x])),renderExtraFooter:E&&g.includes("date")?()=>"function"==typeof E?E():l().createElement(l().Fragment,null,l().createElement(R.Tag,{color:"processing",onClick:()=>N(0)},i("qm.form.datePickers")[0]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(1)},i("qm.form.datePickers")[1]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(7)},i("qm.form.datePickers")[2]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(30)},i("qm.form.datePickers")[3])):void 0,value:Lr(n,Rr[g]),onChange:(e,t)=>{C(Ar(e,Rr[g]))}})};class Yc extends i.Component{constructor(...e){super(...e),Uc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Gc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Uc(Yc,"contextType",xn);const Xc=Yc;function Qc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Zc=e=>[c()().subtract(e,"day"),c()()],Jc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:d={},placeholder:u=i("qm.form.daterangePlaceholder"),bordered:m=!0,allowClear:p=!0,readOnly:h,disabled:f=t.isFormDisabled}=e.option,{dateType:g="date",format:y,disableds:b=[!1,!1],allowEmpty:v,disabledDate:x,minDateTime:E,maxDateTime:w,shortCuts:C=!0}=s,S={[i("qm.form.dateRangePickers")[0]]:Zc(7),[i("qm.form.dateRangePickers")[1]]:Zc(30),[i("qm.form.dateRangePickers")[2]]:Zc(90),[i("qm.form.dateRangePickers")[3]]:Zc(180)},N=e=>_r(e)?"":e.map((e=>["date","exactdate"].includes(g)?e?.slice(0,10):e)).join(" - ");return t.isOnlyShow?l().createElement(ea,{value:N(n),bordered:m}):l().createElement(_.RangePicker,{style:{width:"100%",...d},popupClassName:`form-popper__${o}`,picker:Tr[g],format:y,bordered:m,showTime:"datetime"===g&&{defaultValue:[c()("00:00:00","HH:mm:ss"),c()("23:59:59","HH:mm:ss")]},allowClear:p,allowEmpty:v,disabled:f?[!0,!0]:b,inputReadOnly:h,disabledDate:x??(e=>((e,[t,n])=>t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day"))(e,[E,w])),ranges:C&&g.includes("date")?S:void 0,value:ie(n)?null:[Lr(n?.[0],Rr[g]),Lr(n?.[1],Rr[g])],onChange:(e,t)=>{(e=>{"date"===g&&(e=e.map(((e,t)=>e?0===t?e.slice(0,10)+" 00:00:00":e.slice(0,10)+" 23:59:59":e))),e.every((e=>!e))&&(e=[]),r?.(e),a(e,N(e))})([Ar(e?.[0],Rr[g]),Ar(e?.[1],Rr[g])])}})};class ed extends i.Component{constructor(...e){super(...e),Qc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Jc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Qc(ed,"contextType",xn);const td=ed;function nd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const rd=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.timePlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h}=e.option,{timeType:f="hour-minute-second",hourStep:g=1,minuteStep:y=1,secondStep:b=1}=s;return t.isOnlyShow?l().createElement(ea,{value:n,bordered:u}):l().createElement(q,{style:{width:"100%",...c},popupClassName:`form-popper__${o}`,bordered:u,showNow:!0,hourStep:g,minuteStep:y,secondStep:b,allowClear:m,disabled:h,inputReadOnly:p,format:Or[f],value:Lr(n,Or[f]),onChange:(e,t)=>{(e=>{const t=Ar(e,Or[f]);r?.(t),a(t)})(e)}})};class ad extends i.Component{constructor(...e){super(...e),nd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(rd,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}nd(ad,"contextType",xn);const id=ad;function ld(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const od=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.timerangePlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h=t.isFormDisabled}=e.option,{timeType:f="hour-minute-second",disableds:g=[!1,!1],allowEmpty:y,hourStep:b=1,minuteStep:v=1,secondStep:x=1}=s,E=e=>_r(e)?"":e.join(" - ");return t.isOnlyShow?l().createElement(ea,{value:E(n),bordered:u}):l().createElement(q.RangePicker,{style:{width:"100%",...c},popupClassName:`form-popper__${o}`,bordered:u,showNow:!1,hourStep:b,minuteStep:v,secondStep:x,allowClear:m,allowEmpty:y,disabled:h?[!0,!0]:g,inputReadOnly:p,format:Or[f],value:ie(n)?null:[Lr(n?.[0],Or[f]),Lr(n?.[1],Or[f])],onChange:(e,t)=>{(e=>{const t=[Ar(e?.[0],Or[f]),Ar(e?.[1],Or[f])];r?.(t),a(t,E(t))})(e)}})};class sd extends i.Component{constructor(...e){super(...e),ld(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(od,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}ld(sd,"contextType",xn);const cd=sd;function dd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ud extends i.Component{constructor(e){super(e),dd(this,"context",void 0),dd(this,"searchRef",l().createRef()),dd(this,"valueKey",void 0),dd(this,"_clicking",!1),dd(this,"_record",void 0),dd(this,"_prevValue",null),dd(this,"state",{itemList:[],visible:!1,loading:!1,activeIndex:0,inputText:void 0}),dd(this,"getSearchHelper",vn()(((e,t)=>Object.assign({},this.props.helperConfig,e,t)))),dd(this,"paramsChangeHandler",(async(e,t)=>{await this.props.waiting(),(0,X.isEqual)(e,t)||this.getItemList()})),dd(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),dd(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e,options:t,searchHelper:n}=this.props.option,{fieldAliasMap:r,fieldsDefine:a,echoRequest:i}=this.searchHelper;if(r||me("Form","IMMEDIATE 需要配置 `fieldAliasMap` 选项"),a){const e=["valueKey","displayKey","extraKey"];for(const t in a)e.includes(t)&&(this[t]=a[t])}Object.keys(this.alias).includes(e)||me("Form","IMMEDIATE 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),i&&!this.valueKey&&me("Form","IMMEDIATE 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用"),t&&!n&&me("Form","IMMEDIATE 的 `options` 选项即将在下一个大版本中废弃,请使用 `searchHelper` 参数")})),dd(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),dd(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d))try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e)}a?.([t])}}}catch(e){}})),dd(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])})})),dd(this,"fetchHandle",(0,X.debounce)(this.getItemList,200)),dd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),dd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this._record)})),dd(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),dd(this,"clickHandle",((e,t)=>{const{$$form:n}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias){if(t===r)continue;const a=Fr(e,this.alias[t]);n.SET_FIELDS_VALUE({[t]:a}),t===this.valueKey&&(this._prevValue=e?a:null)}for(const t in this.extras)n.SET_FIELDS_EXTRA({[t]:Fr(e,this.extras[t])});this.searchRef.current.focus({cursor:"end"}),this._record=e;const a=Fr(e,this.alias[r]);this.triggerChange(a),this.setState({inputText:void 0}),t&&t()})),this.initialHandle()}get searchHelper(){return this.getSearchHelper(this.props.option.options,this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(e){const t=e.option.searchHelper?.request?.params||e.option.request?.params,n=this.props.option.searchHelper?.request?.params||this.props.option.request?.params;this.paramsChangeHandler(n,t),this.echoSearchHelper()}async getItemList(e){const{fieldName:t}=this.props.option,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i}=this.searchHelper.request||this.props.option.request||{};if(n){this.setState({loading:!0});try{const l=await n(a({...r,[t]:e}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];this.setState({itemList:e,activeIndex:0})}}catch(e){}this.setState({loading:!1})}}render(){const{$$form:e}=this.context,{visible:t,loading:n,itemList:r,inputText:a}=this.state,{value:i}=this.props,{fieldName:s,options:c={},style:d={},placeholder:u=p("qm.form.inputPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{listHeight:y=Sr}=c,{hideHeader:b,onlySelect:v=!0}=this.searchHelper||c,x=this.searchHelper.columns||[],E=Ee("form-immediate"),w=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,C=l().createElement(R.Spin,{spinning:n},r.length?l().createElement("table",{cellSpacing:0,cellPadding:0,className:xe()("table")},!b&&l().createElement("thead",null,l().createElement("tr",null,x.filter((e=>!e.hidden)).map((e=>l().createElement("th",{key:e.dataIndex,style:{width:`${e.width}px`,backgroundColor:"#f0f0f0"}},e.title))))),l().createElement("tbody",null,r.map(((e,t)=>l().createElement("tr",{key:t,className:this.state.activeIndex===t?"active":"",onMouseEnter:()=>{this.setState({activeIndex:t})},onMouseDown:()=>{this._clicking=!0},onMouseUp:()=>{this._clicking=!1},onClick:()=>{this.clickHandle(e,(()=>this.handleVisibleChange(!1)))}},x.filter((e=>!e.hidden)).map((t=>l().createElement("td",{key:t.dataIndex},(0,X.get)(e,t.dataIndex))))))))):l().createElement(dt,null));return l().createElement(o.Consumer,null,(n=>{const o={[E]:!0,[`${E}--lg`]:"large"===n?.size,[`${E}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:i,bordered:m}):l().createElement(Ri(),{action:g?[]:["click"],popupVisible:!g&&t,popup:C,popupClassName:xe()(o,`form-popper__${s}`),popupStyle:{minWidth:w,maxHeight:y},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:u,allowClear:h,bordered:m,readOnly:f,disabled:g,style:{width:"100%",...d},value:a??i,title:i,onFocus:()=>{!r.length&&this.fetchHandle(i)},onBlur:e=>{v&&!this._clicking&&a!==i&&this.setState({inputText:void 0}),this.triggerBlur(e.target.value)},onKeyDown:e=>{if(27===e.keyCode&&this.handleVisibleChange(!1),13===e.keyCode&&this.clickHandle(r[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 n=40===e.keyCode?++t%r.length:(--t+r.length)%r.length;this.setState({activeIndex:n})}},onChange:e=>{const{value:t}=e.target;this.fetchHandle(t),v?this.setState({inputText:t}):t&&this.triggerChange(t),t?this.handleVisibleChange(!0):this.clickHandle(null)}})))}))}}dd(ud,"contextType",xn);class md extends i.Component{constructor(e,{$$form:t}){super(e),dd(this,"context",void 0),dd(this,"promiseRef",void 0),dd(this,"state",{searchHelper:{}}),dd(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),dd(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("immediate","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(ud,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t="",n)=>{f(t,n),e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}dd(md,"contextType",xn);const pd=md;function hd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class fd extends i.Component{constructor(...e){super(...e),hd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,fieldName:r,className:a,style:i={},collapse:o={}}=this.props.option,{expand:s}=e.state,{showLimit:c,remarkItems:d=[],onCollapse:u=ee}=o,m=[];if(d.length){const t=e.getBlockDerivedItems().find((e=>e[0].fieldName===r))??[],n=c??t.length-1;t.slice(n+1).forEach((t=>{const n=d.find((e=>e.fieldName===t.fieldName));if(!n)return;const r=n.showLabel?`${t.label}:`:"",a=e.getViewValue(t.fieldName)??"";""!==a&&m.push({...t,text:`${r}${a}`})}))}return l().createElement(R.Form.Item,{labelCol:{span:0},wrapperCol:{span:24}},l().createElement(Se,{id:r,label:n,className:a,extra:m.map((e=>e.text)).join(" | "),style:{...i},collapse:s[r],onCollapseChange:t=>{e.setState((e=>({expand:Object.assign({},e.expand,{[r]:t})}))),u(t)}}))}}hd(fd,"contextType",xn);const gd=fd;function yd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bd(){return bd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bd.apply(null,arguments)}const vd=(e,t,n,r)=>e.map((e=>e[n]===t?{...e,children:r}:e.children?{...e,children:vd(e.children,t,n,r)}:e)),xd=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,multiple:a,loading:i,onChange:o,onValuesChange:s}=e,{t:c}=U(),{fieldName:d,options:u={},style:m={},placeholder:p=c("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:f=!0,asyncLoad:g,readOnly:y,disabled:b}=e.option,{itemList:v,filterable:x=!0,listHeight:E=Sr,checkStrictly:w,checkStrategy:C="SHOW_CHILD",collapseTags:S,echoRequest:N,defaultExpandAll:I=!g,defaultExpandedKeys:T,dropdownStyle:O,openPyt:k=!0}=u,[P,L]=l().useState(ie(v)?r:v),[A,_]=l().useState([]),[F,D]=l().useState(!1),[H,q]=l().useState(!1),$=l().useRef(null),M=l().useRef(null),K=l().useRef(P),z=l().useRef(H),j=l().useRef(null),V=e=>{q(e),z.current=e};ao({ref:M,handler:()=>V(!1)}),l().useEffect((()=>{n!==j.current&&(G(),j.current=n),M.current=$.current?.querySelector(".ant-select-selection-overflow-item-rest")||null}),[n]),He((()=>{const e=ie(v)?r:v;g?(0,X.isEqual)(e,K.current)||(L((t=>[...e,...t.filter((e=>!!e.style))])),K.current=e):L(e)}),[v,r]),He((()=>{L((e=>[...e,...A.filter((t=>!e.some((e=>e.value===t.value))))]))}),[A]);const W=e=>$r(P,e)?.text||e?.toString()||"",B=e=>(w&&Array.isArray(n)&&n.every((e=>(0,X.isPlainObject)(e)))&&(e=e.map((e=>e.value))),a?e?.map((e=>W(e))).join(",")||"":W(e)),G=async()=>{if(!N)return;if(!g)return me("Form","TREE_SELECT 的 echoRequest 选项必须组合 `asyncLoad` 一起使用");const{fetchApi:e,params:t,dataKey:r,callback:a,formatter:i=e=>e}=N||{},{textKey:l="text",valueKey:o="value"}=g;if(e&&!ie(n))try{const s=await e(i({...t,[o]:n}));if(200===s.code){const e=Array.isArray(s.data)?s.data:(0,X.get)(s.data,r)??[];if(e.length){const t=qr(e,o,l);_(t.map((e=>({...e,style:{display:"none"}})))),a?.(e)}}}catch(e){}};return t.isOnlyShow?l().createElement(ea,{value:B(n),bordered:h}):l().createElement(Ri(),{popupVisible:!b&&H,popup:(()=>{if(!a)return null;const e=n?.map((e=>W(e)))||[];return l().createElement("ul",{className:"ant-dropdown-menu"},e.length?e.map(((e,t)=>l().createElement("li",{key:`${e}-${t}`,className:"ant-dropdown-menu-item"},e))):l().createElement("li",{className:"ant-dropdown-menu-item"},c("qm.table.config.emptyText")))})(),popupStyle:{minWidth:$.current?.offsetWidth},onPopupVisibleChange:e=>V(e),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",{ref:$,style:{width:"100%"}},l().createElement(R.TreeSelect,bd({open:F,fieldNames:{label:"text",value:"value",children:"children"},value:n,multiple:a,treeCheckable:a,treeCheckStrictly:w,showCheckedStrategy:R.TreeSelect[C],popupClassName:`form-popper__${d}`,dropdownStyle:O,placeholder:p,listHeight:E,style:m,loading:i,bordered:h,allowClear:f,disabled:b,treeDefaultExpandAll:I,treeDefaultExpandedKeys:T,showSearch:x,maxTagCount:S?"responsive":void 0,loadData:g?async({key:e,children:t})=>{if(!g||t)return;const{fetchApi:n,params:r,dataKey:a,textKey:i="text",valueKey:l="value",callback:o,formatter:s=e=>e}=g;if(n)try{const t=await n(s({...r,[l]:e}));if(200===t.code){const n=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[],r=vd(P,e,l,qr(n,l,i));L(r),o?.(n)}}catch(e){}}:void 0,treeData:P},a?{title:B(n)}:null,{filterTreeNode:(e,t)=>{const n=t?.text?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(k?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0},onMouseDown:e=>{e.target.classList.contains("ant-select-selection-overflow-item-rest")&&(V(!0),D(!1))},onDropdownVisibleChange:e=>{if(!e)return D(e);re((()=>{z.current||D(e)}))},onChange:e=>{(e=>{o?.(e),s(e,B(e),P)})(e),j.current=e}}))))};class Ed extends i.Component{constructor(...e){super(...e),yd(this,"context",void 0),yd(this,"state",{itemList:[],loading:!1}),yd(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=qr(t,a,i);this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(xd,{option:this.props.option,items:t,loading:n,multiple:this.props.multiple,onValuesChange:(t,n,r)=>{f(t,n,r),e.setViewValue(o,n)}}))),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}yd(Ed,"contextType",xn);const wd=Ed;function Cd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sd(){return Sd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Sd.apply(null,arguments)}const Nd=e=>{const{$$form:t}=l().useContext(xn),{value:n,multiple:r,items:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:m=!0,asyncLoad:p,readOnly:h,disabled:f}=e.option,{itemList:g,changeOnSelect:y,checkStrictly:b,checkStrategy:v="SHOW_PARENT",filterable:x=!0,dropdownStyle:E,openPyt:w=!0}=s,[C,S]=l().useState(ie(g)?a:g),N=l().useRef(C);He((()=>{const e=ie(g)?a:g;p?(0,X.isEqual)(e,N.current)||(S(e),N.current=e):S(e)}),[g,a]);const I=e=>Mr(C,e??"").map((e=>e.text)).join("/"),T=e=>r?e?.map((e=>I(e))).join(",")||"":I(e);return t.isOnlyShow?l().createElement(ea,{value:T(n),bordered:u}):l().createElement(R.Cascader,Sd({value:(e=>ie(e)?[]:r?e.map((e=>e.split(","))):e.split(","))(n),fieldNames:{label:"text",value:"value",children:"children"},options:C,multiple:r,maxTagCount:"responsive",changeOnSelect:y||b,showCheckedStrategy:R.Cascader[v],popupClassName:`form-popper__${o}`,dropdownStyle:E,placeholder:d,style:c,bordered:u,allowClear:m,disabled:f,showSearch:x&&!p&&{filter:(e,t)=>t.some((t=>{const n=t?.text?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(w?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0}))},loadData:p?async e=>{const t=e[e.length-1];if(!p||t.children)return;const{fetchApi:n,params:r,dataKey:a,textKey:i="text",valueKey:l="value",callback:o,formatter:s=e=>e}=p;if(n)try{const e=await n(s({...r,[l]:t.value}));if(200===e.code){const n=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[],r=vd(C,t.value,l,qr(n,l,i));S(r),o?.(n)}}catch(e){}}:void 0},r?{title:T(n)}:null,{onChange:t=>{(t=>{const{onChange:n,onValuesChange:r}=e;n?.(t),r(t,T(t),C)})(((e=[])=>r?e.map((e=>e.join(","))):e.join(","))(t))}}))};class Id extends i.Component{constructor(...e){super(...e),Cd(this,"context",void 0),Cd(this,"state",{itemList:[],loading:!1}),Cd(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=qr(t,a,i);this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{multiple:t}=this.props,{itemList:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(Nd,{option:this.props.option,multiple:t,items:n,onValuesChange:(t,n,r)=>{f(t,n,r),e.setViewValue(o,n)}}))),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}Cd(Id,"contextType",xn);const Td=Id,Rd=require("china-area-data");var Od=r.n(Rd);function kd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Pd=["110000","120000","310000","500000"],Ld=["810000","820000"],Ad=[{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"}],_d=[{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"}],Fd=e=>Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join(""),Dd=(e,t,n=1)=>{if(!(n>2)&&e[t])return("86"===t?Object.keys(e[t]).filter((e=>![...Pd,...Ld].includes(e))):Object.keys(e[t])).map((r=>({l:Fd(e[t][r].slice(0,1)).toUpperCase(),n:e[t][r],c:r,p:t,children:Dd(e,r,n+1)})))},Hd=(e,t)=>t.map((t=>({l:Fd(e[86][t].slice(0,1)).toUpperCase(),n:e[86][t],c:t,p:"86",children:void 0})));class qd extends i.Component{constructor(e){super(e),kd(this,"context",void 0),kd(this,"searchRef",l().createRef()),kd(this,"scrollRef",l().createRef()),kd(this,"zxsAndGa",void 0),kd(this,"provinces",void 0),kd(this,"allCities",void 0),kd(this,"letterCities",void 0),kd(this,"state",{visible:!1,select_type:"0",active_key:""}),kd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),kd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(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(){this.searchRef.current?.input.setAttribute("readonly","readonly")}scrollHandle(e){this.setState({active_key:e}),Yt()(this[`${e}Ref`],{block:"start",behavior:"smooth",boundary:this.scrollRef.current})}clickHadnle(e){this.triggerChange(e)}createTextValue(e){return this.allCities.find((t=>t.c===e))?.n||""}createZxsAndGa(){return[{l:"Z1",n:"直辖市",c:"",p:"",children:Hd(Od(),Pd)},{l:"Z2",n:"港澳",c:"",p:"",children:Hd(Od(),Ld)}]}createProvince(){return(Dd(Od(),"86")??[]).concat(this.zxsAndGa)}createAllCity(){const e=[];return this.provinces.forEach((t=>e.push(...t.children))),e}createCity(){return _d.filter((e=>"Z1"!==e.value&&"Z2"!==e.value)).map((e=>({l:e.value,n:e.text,c:"",p:"",children:this.allCities.filter((e=>![...Pd,...Ld].includes(e.c))).filter((t=>t.l===e.value))}))).concat(this.zxsAndGa)}renderType(){const{select_type:e}=this.state;return l().createElement(R.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}))}},l().createElement(R.Radio.Button,{value:"0"},p("qm.form.citySelectType.0")),l().createElement(R.Radio.Button,{value:"1"},p("qm.form.citySelectType.1")))}renderLetter(){const{active_key:e,select_type:t}=this.state;return("0"===t?Ad:_d).map((t=>l().createElement("li",{key:t.value,className:xe()({tag:!0,actived:t.value===e}),onClick:()=>this.scrollHandle(t.value.toString())},t.text)))}renderSelect(){const{value:e}=this.props;return l().createElement(R.Select,{size:"small",placeholder:p("qm.form.selectPlaceholder"),style:{width:"200px"},showSearch:!0,filterOption:(e,t)=>(t?.children?.toString()||"").toLowerCase().indexOf(e.toLowerCase())>=0,value:e||void 0,onChange:e=>{this.triggerChange(e)}},this.allCities.map((e=>l().createElement(R.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,n)=>l().createElement("div",{key:n},l().createElement("dt",{ref:e=>this[`${t.l}Ref`]=e},t.n,":"),l().createElement("dd",null,t.children?.map((t=>l().createElement("li",{key:t.c,className:xe()({actived:t.c===e}),onClick:()=>this.clickHadnle(t.c)},t.n)))))))}render(){const{$$form:e}=this.context,{visible:t}=this.state,{value:n}=this.props,{fieldName:r,options:a={},style:i={},placeholder:s=p("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:m}=this.props.option,h=Ee("form-city-select"),f=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,g=this.createTextValue(n),y=l().createElement("div",{className:"container",style:{...i}},l().createElement("div",{className:"city-drop"},l().createElement("div",{className:"city-drop-toper"},l().createElement("div",{className:"city-drop-toper__type"},this.renderType()),l().createElement("div",{className:"city-drop-toper__search"},this.renderSelect())),l().createElement("div",{className:"city-drop-letter"},this.renderLetter()),l().createElement("div",{ref:this.scrollRef,className:"city-drop-list"},l().createElement("dl",null,this.renderCity(n)))));return l().createElement(o.Consumer,null,(n=>{const a={[h]:!0,[`${h}--lg`]:"large"===n?.size,[`${h}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:g,bordered:c}):l().createElement(Ri(),{action:m?[]:["click"],popupVisible:!m&&t,popup:y,popupClassName:xe()(a,`form-popper__${r}`),popupStyle:{minWidth:f},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:s,allowClear:d,bordered:c,readOnly:u,disabled:m,style:{width:"100%",...i},value:g,title:g,onChange:e=>{const{value:t}=e.target;this.triggerChange(t)}})))}))}}kd(qd,"contextType",xn);class $d extends i.Component{constructor(...e){super(...e),kd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(qd,{option:this.props.option,onValuesChange:(t,n)=>{p(t,n),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}kd($d,"contextType",xn);const Md=$d;function Kd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const zd=(e,t)=>{if(e[t])return Object.keys(e[t]).map((n=>({text:e[t][n],value:n,children:zd(e,n)})))};class jd extends i.Component{constructor(e){super(e),Kd(this,"context",void 0),Kd(this,"searchRef",l().createRef()),Kd(this,"prevText",void 0),Kd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),Kd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this.createTextValue(e)),this.handleVisibleChange(!1)}));const t=zd(Od(),"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:n}=this.props;t!==n&&this.state.values.join(",")!==(n??"")&&this.initial()}get isFetch(){return!!this.props.option.request?.fetchApi}get level(){let{selectLevel:e=0}=this.props.option.options||{};return(e<1||e>3)&&(e=3),this.isFetch?4:e}setInputReadonly(){this.searchRef.current?.input.setAttribute("readonly","readonly")}createTextValue(e){return(e?e.split(","):[]).map(((e,t)=>this.state.tabs[t]?.find((t=>t.value===e))?.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 n=this.state.tabs.slice(0,1);for(let r=0;r<t.length;r++){const a=$r(e,t[r]);if(a&&ie(a.children)){this.isFetch&&this.getStreetList(t[r]);break}Array.isArray(a?.children)&&(n[r+1]=a?.children.map((e=>({text:e.text,value:e.value}))))}this.setState({tabs:n})}async getStreetList(e){const{request:t={}}=this.props.option,{fetchApi:n,formatter:r=e=>e,dataKey:a,valueKey:i="value",textKey:l="text"}=t;if(n)try{const t=await n(r({code:e}));if(200===t.code){const e=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[];this.setState((t=>({tabs:[...t.tabs,e.map((e=>({text:e[l],value:e[i]})))]})))}}catch(e){}}renderTabs(){const{values:e}=this.state,t=this.state.tabs.map(((t,n)=>{const r=t.find((t=>t.value===e[n]))?.text||`${p("qm.form.selectPlaceholder").replace("...","")}(${p("qm.form.regionSelectLabel")[n]})`;return l().createElement(on.TabPane,{key:n.toString(),tab:r},l().createElement("div",{className:"region-box"},t.map((t=>l().createElement("span",{key:t.value,className:xe()({"region-box__item":!0,actived:e.includes(t.value.toString())}),title:t.text,onClick:()=>{let{values:e}=this.state;e[n]=t.value.toString(),e=e.slice(0,n+1),this.setState({values:e},(()=>{const t=(e=>["810000","820000"].includes(e[0]))(e)?this.level<3?this.level:this.level-1:this.level;if(n+1>=t)return this.triggerChange(e.join(","));this.createTabs(),this.createActiveName(n+1)}))}},t.text)))))}));return t.length?l().createElement(on,{size:"small",activeKey:this.state.activeName,onChange:e=>{this.createActiveName(e)}},t):l().createElement(dt,null)}render(){const{$$form:e}=this.context,{visible:t}=this.state,{value:n}=this.props,{fieldName:r,options:a={},style:i={},placeholder:s=p("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:m}=this.props.option,h=Ee("form-region-select"),f=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,g=l().createElement("div",{className:"container"},this.renderTabs());let y=this.prevText;if(!t){const e=this.createTextValue(n);(""===e||e.split("/").every((e=>""!==e)))&&(y=e,this.prevText=y)}return l().createElement(o.Consumer,null,(n=>{const a={[h]:!0,[`${h}--lg`]:"large"===n?.size,[`${h}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:y,bordered:c}):l().createElement(Ri(),{action:m?[]:["click"],popupVisible:!m&&t,popup:g,popupClassName:xe()(a,`form-popper__${r}`),popupStyle:{minWidth:f},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:s,allowClear:d,bordered:c,style:{width:"100%",...i},readOnly:u,disabled:m,value:y,title:y,onChange:e=>{const{value:t}=e.target;this.triggerChange(t),!t&&re((()=>this.initial()))}})))}))}}Kd(jd,"contextType",xn);class Vd extends i.Component{constructor(...e){super(...e),Kd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(jd,{option:this.props.option,onValuesChange:(t,n)=>{p(t,n),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Kd(Vd,"contextType",xn);const Wd=Vd,Bd=zt;function Ud(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Gd=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o={},disabled:s,readOnly:c}=e.option,{multiple:d=!0,maxCount:u=1,fileTypes:m,fileSize:p,draggable:h,editable:f,batchDownload:g,fileDirection:y,onPreview:b,onDownload:v,onRemove:x,onSortChange:E,onEditChange:w}=i,{action:C,headers:S,params:N,withCredentials:I=!1,dataKey:T="",downloadWithHeaders:O,fieldAliasMap:k,beforeUpload:P,button:L}=o,A="function"==typeof k?k():k||{},{t:_}=U();return l().createElement(Bd,{name:"file",action:C,multiple:d,headers:S,data:N,withCredentials:I,downloadWithHeaders:O,beforeUpload:P,maxCount:u,fileTypes:m,fileSize:p,draggable:h,editable:f,batchDownload:g,fileDirection:y,disabled:s||t.props.disabled,readOnly:t.isOnlyShow||c,button:L,showUploadList:{showDownloadIcon:!0,downloadIcon:l().createElement(we.DownloadOutlined,null)},fileList:n,onChange:({fileList:e})=>{(e=>{const t=e.map((e=>{const t=e.response||{},n={};for(const r in A)n[r]=e[r]||t.data?.[A[r]]||"";return e.response&&200!==t.code&&R.message.error(t.message||_("qm.uploadCropper.uploadError")),{uid:e.uid,name:e.name,...n,url:e.url||(T?(0,X.get)(t.data,T):t.data)||"",status:e.status}}));r?.(t),t.every((e=>"done"===e.status&&e.url))&&a(t)})(e)},onPreview:b,onDownload:v,onRemove:x,onSortChange:E,onEditChange:w})};class Yd extends i.Component{constructor(...e){super(...e),Ud(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Gd,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,"")}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Ud(Yd,"contextType",xn);const Xd=Yd,Qd=require("cropperjs");var Zd=r.n(Qd);const Jd=l().forwardRef(((e,t)=>{const n=h({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},e),{className:r,style:a,src:i,alt:o,imgStyle:s,...c}=n,d=l().useRef(null),u=l().useRef(null);l().useEffect((()=>{const e={};for(const t in c)void 0!==n[t]&&(e[t]=n[t]);return u.current=new(Zd())(d.current,e),()=>{v(),u.current=null}}),[]);const m=()=>u.current?.reset(),p=()=>u.current?.clear(),f=()=>u.current?.crop(),g=(e,t=!1)=>u.current?.replace(e,t),y=()=>u.current?.enable(),b=()=>u.current?.disable(),v=()=>u.current?.destroy(),x=(e,t)=>u.current?.move(e,t),E=(e,t=e)=>u.current?.moveTo(e,t),w=(e,t)=>u.current?.zoom(e),C=(e,t)=>u.current?.zoomTo(e,t),S=e=>u.current?.rotate(e),N=e=>u.current?.rotateTo(e),I=e=>u.current?.scaleX(e),T=e=>u.current?.scaleY(e),R=(e,t=e)=>u.current?.scale(e,t),O=(e=!1)=>u.current?.getData(e),k=e=>u.current?.setData(e),P=()=>u.current?.getContainerData(),L=()=>u.current?.getImageData(),A=()=>u.current?.getCanvasData(),_=e=>u.current?.setCanvasData(e),F=()=>u.current?.getCropBoxData(),D=e=>u.current?.setCropBoxData(e),H=(e={})=>u.current?.getCroppedCanvas(e),q=e=>u.current?.setAspectRatio(e),$=e=>u.current?.setDragMode(e);l().useImperativeHandle(t,(()=>({reset:m,clear:p,initCrop:f,replace:g,enable:y,disable:b,destroy:v,move:x,moveTo:E,relativeZoom:w,zoomTo:C,rotate:S,rotateTo:N,scaleX:I,scaleY:T,scale:R,getData:O,setData:k,getContainerData:P,getImageData:L,getCanvasData:A,setCanvasData:_,getCropBoxData:F,setCropBoxData:D,getCroppedCanvas:H,setAspectRatio:q,setDragMode:$})));const M=Ee("cropper"),K={[M]:!0};return l().createElement("div",{className:xe()(K,r),style:a},l().createElement("img",{ref:d,src:i,alt:o,style:{maxWidth:"100%",...s}}))}));Jd.displayName="Cropper";const eu=Jd,tu=e=>{const{fileTypes:t=[],fileSize:n,fixedSize:r,quality:a,beforeCrop:i,className:o}=e,{t:s}=U(),c=l().useRef(null),d=l().useRef(),u=l().useRef(),m=l().useRef(),p=l().useRef(),[h,f]=l().useState(""),g=e=>{c.current.relativeZoom(e)},y=e=>{c.current.rotate(e)},b=()=>{f("")},v=Ee("cropper-preview");return l().createElement(l().Fragment,null,(()=>{const t=Array.isArray(e.children)?e.children[0]:e.children;if(!t)return null;const{beforeUpload:n,...r}=t.props;return d.current=n,l().createElement(t.type,{...r,beforeUpload:(e,t)=>new Promise((async(n,r)=>{const a=()=>n(R.Upload.LIST_IGNORE);if(i&&!await i(e,t))return void a();u.current=e,m.current=n,p.current=a;const l=new FileReader;l.onload=()=>{f(l.result),l.onload=null},l.readAsDataURL(e)}))})})(),h&&l().createElement(R.Modal,{open:!0,wrapClassName:xe()(v,o),title:s("qm.uploadCropper.cropper"),width:790,bodyStyle:{padding:10},onOk:()=>{(async()=>{const{type:e,name:n,uid:r}=u.current;c.current.getCroppedCanvas({maxWidth:1920,fillColor:"image/png"===e?"transparent":"#fff",imageSmoothingEnabled:!1,imageSmoothingQuality:"high"}).toBlob((async a=>{let i=new File([a],n,{type:e});if(Object.assign(i,{uid:r}),t.length&&!t.includes(i.name.slice(i.name.lastIndexOf(".")+1).toLowerCase()))return R.message.warning(s("qm.upload.tooltip",{type:t.join(",")})),p.current("file type is error");if("function"!=typeof d.current)return m.current(i);const l=d.current(i,[i]);if("boolean"==typeof l||l){if(!0===l)return m.current(i);if(!1===l)return p.current("not upload");if(l&&"function"==typeof l.then)try{const e=await l,t=Object.prototype.toString.call(e);"[object File]"!==t&&"[object Blob]"!==t||(i=e),m.current(i)}catch(e){p.current(e)}}else me("CropperPreview","`beforeUpload` 必须返回 `boolean` 或 `Promise` 类型")}),e,a),await ne(100),b()})()},onCancel:b,maskClosable:!1,destroyOnClose:!0},(()=>{const e={width:"380px",height:r?`calc(380px * ${r[1]/r[0]})`:"auto"};return l().createElement("div",{className:"cropper-preview"},l().createElement("div",{className:"cropper-area"},l().createElement("div",{className:"img-cropper"},l().createElement(eu,{ref:c,aspectRatio:r?r[0]/r[1]:r,src:h,dragMode:"move",preview:".preview"})),l().createElement("div",{className:"actions"},l().createElement(R.Space,{size:"small"},l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.ZoomInOutlined,null),onClick:()=>g(.2)},s("qm.uploadCropper.zoomIn")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.ZoomOutOutlined,null),onClick:()=>g(-.2)},s("qm.uploadCropper.zoomOut")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.RotateRightOutlined,null),onClick:()=>y(90)},s("qm.uploadCropper.rotatePlus")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.RotateLeftOutlined,null),onClick:()=>y(-90)},s("qm.uploadCropper.rotateSubtract"))))),l().createElement("div",{className:"preview-area"},l().createElement("div",{className:"preview",style:e})))})()))};function nu(){return nu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nu.apply(null,arguments)}const ru=e=>{const t=h({name:"file",multiple:!0,accept:"image/*",listType:"picture-card"},e),{fileList:n=[],openCropper:r=!0,fixedSize:a,quality:i=1,fileTypes:o,fileSize:s,maxCount:c,draggable:d,disabled:u,readOnly:m,className:p,popupClassName:f,beforeCrop:g,onSortChange:y,onChange:b}=t,{t:v}=U(),{$size:x}=Y(t),E=l().useRef(null),w=l().useRef(null),C=l().useRef(!1),[S,N]=l().useState(!1),[I,T]=l().useState(0),O=l().useMemo((()=>u||m),[u,m]),k=l().useMemo((()=>!c||n.length<c),[n,c]);l().useEffect((()=>(L(),document.addEventListener("paste",_),()=>{w.current?.destroy(),document.removeEventListener("paste",_)})),[]),He((()=>{k||(C.current=!1)}),[n]);const P=G((e=>{const{oldIndex:t,newIndex:r}=e;if(t!==r){const e=[...n],[a]=e.splice(t,1);e.splice(r,0,a),y?.(e),b?.({file:n[t],fileList:e})}})),L=()=>{d&&(w.current=Ft().create(Be(E.current,Ee("upload-img")).querySelector(".ant-upload-list"),{animation:150,handle:".handle",filter:".ignore",draggable:".ant-upload-list-picture-card-container",onEnd:P}))},A=(e,n)=>new Promise((async(r,a)=>{const{fileTypes:i=[],fileSize:l,beforeUpload:o}=t,s=!i.length||i.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),c=!l||e.size/1024/1024<l,d=s&&c;if(s||R.message.warning(v("qm.upload.tooltip",{type:i.join(",")})),c||R.message.warning(v("qm.upload.sizeLimit",{size:l})),!d)return R.Upload.LIST_IGNORE;if(o){const t=o(e,n);if(!0===t)return r(e);if(!1===t)return a("not upload");if(t&&"function"==typeof t.then)try{r(await t)}catch(e){a(e)}}else r(e)})),_=G((async e=>{const{action:r,data:a,headers:i}=t;if(C.current&&k&&r)for(const t of e.clipboardData.items)if("file"===t.kind&&t.type.startsWith("image/")){const e=t.getAsFile(),l=Date.now(),o=new File([e],`screenshot-${l}.png`,{type:e.type});Object.assign(o,{uid:`rc-upload-${l}`});try{await A(o,[...n,o]);const e=new FormData;if(e.append("file",o),a)for(const t in a)e.append(t,a[t]);const t="string"==typeof r?r:await r(o),l=await fetch(t,{method:"POST",body:e,headers:i});if(!l.ok)throw new Error(v("qm.upload.uploadError"));const s=await l.json();b?.({file:o,fileList:[...n,{uid:o.uid,lastModified:o.lastModified,lastModifiedDate:o.lastModifiedDate,name:o.name,type:o.type,size:o.size,response:s,status:"done",percent:100,originFileObj:o}]})}catch(e){}}})),F=Ee("upload-img"),D={[F]:!0,[`${F}--lg`]:"large"===x,[`${F}--sm`]:"small"===x},H=l().createElement(R.Upload,nu({className:xe()(D,p)},oe(t,["fileTypes","fileSize","fixedSize","quality","openCropper","draggable","popupClassName"]),{beforeUpload:A,disabled:O,onPreview:e=>{const t=n.findIndex((t=>t.url===e.url));t<0||(T(t),N(!0))},showUploadList:{showRemoveIcon:!1,showDownloadIcon:!1},itemRender:(e,t,n,r)=>l().createElement("div",{className:xe()("upload-item",{handle:d})},e,!O&&l().createElement(we.CloseOutlined,{title:v("qm.upload.remove"),className:"icon",onClick:()=>r.remove()}))}),l().createElement("span",{className:"inner",ref:E},k&&!(m&&n.length)&&l().createElement(l().Fragment,null,l().createElement("p",{className:"ant-upload-drag-icon"},l().createElement(we.InboxOutlined,null)),l().createElement("p",{className:"ant-upload-text"},v("qm.uploadCropper.dragableText")),l().createElement("button",{className:xe()("ant-upload-button",{disabled:O}),onClick:e=>{e.stopPropagation(),e.preventDefault()},onFocus:()=>{C.current=!0},onBlur:()=>{C.current=!1}},v("qm.uploadCropper.pasteText")))));return l().createElement(l().Fragment,null,r?l().createElement(tu,{className:f,fixedSize:a,quality:i,fileTypes:o,fileSize:s,beforeCrop:g},H):H,l().createElement("div",{style:{display:"none"}},l().createElement(R.Image.PreviewGroup,{key:n.map((e=>e.uid||"")).join(","),preview:{visible:S,current:I,rootClassName:f,onVisibleChange:e=>N(e)}},n.map(((e,t)=>l().createElement(R.Image,{key:e.uid||t,src:e.url,alt:""}))))))};ru.displayName="QmUploadImg";const au=ru;function iu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const lu=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o={},disabled:s,readOnly:c}=e.option,{multiple:d=!0,maxCount:u=1,fixedSize:m,quality:p,openCropper:h,fileTypes:f,fileSize:g,draggable:y,onRemove:b,onSortChange:v}=i,{action:x,headers:E,params:w,withCredentials:C=!1,dataKey:S="",popupClassName:N,fieldAliasMap:I,beforeUpload:T}=o,O="function"==typeof I?I():I||{},{t:k}=U();return l().createElement(au,{name:"file",action:x,multiple:d,headers:E,data:w,withCredentials:C,popupClassName:N,beforeUpload:T,maxCount:u,fixedSize:m,quality:p,openCropper:h,fileTypes:f,fileSize:g,draggable:y,disabled:s||t.props.disabled,readOnly:t.isOnlyShow||c,fileList:n,onChange:({fileList:e})=>{(e=>{const t=e.map((e=>{const t=e.response||{},n={};for(const r in O)n[r]=e[r]||t.data?.[O[r]]||"";return e.response&&200!==t.code&&R.message.error(t.message||k("qm.uploadCropper.uploadError")),{uid:e.uid,name:e.name,...n,url:e.url||(S?(0,X.get)(t.data,S):t.data)||"",status:e.status}}));r?.(t),t.every((e=>"done"===e.status&&e.url))&&a(t)})(e)},onRemove:b,onSortChange:v})};class ou extends i.Component{constructor(...e){super(...e),iu(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(lu,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,"")}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}iu(ou,"contextType",xn);const su=ou,cu={onActivate:br.func,onAddUndo:br.func,onBeforeAddUndo:br.func,onBeforeExecCommand:br.func,onBeforeGetContent:br.func,onBeforeRenderUI:br.func,onBeforeSetContent:br.func,onBeforePaste:br.func,onBlur:br.func,onChange:br.func,onClearUndos:br.func,onClick:br.func,onContextMenu:br.func,onCommentChange:br.func,onCopy:br.func,onCut:br.func,onDblclick:br.func,onDeactivate:br.func,onDirty:br.func,onDrag:br.func,onDragDrop:br.func,onDragEnd:br.func,onDragGesture:br.func,onDragOver:br.func,onDrop:br.func,onExecCommand:br.func,onFocus:br.func,onFocusIn:br.func,onFocusOut:br.func,onGetContent:br.func,onHide:br.func,onInit:br.func,onKeyDown:br.func,onKeyPress:br.func,onKeyUp:br.func,onLoadContent:br.func,onMouseDown:br.func,onMouseEnter:br.func,onMouseLeave:br.func,onMouseMove:br.func,onMouseOut:br.func,onMouseOver:br.func,onMouseUp:br.func,onNodeChange:br.func,onObjectResizeStart:br.func,onObjectResized:br.func,onObjectSelected:br.func,onPaste:br.func,onPostProcess:br.func,onPostRender:br.func,onPreProcess:br.func,onProgressState:br.func,onRedo:br.func,onRemove:br.func,onReset:br.func,onSaveContent:br.func,onSelectionChange:br.func,onSetAttrib:br.func,onSetContent:br.func,onShow:br.func,onSubmit:br.func,onUndo:br.func,onVisualAid:br.func,onSkinLoadError:br.func,onThemeLoadError:br.func,onModelLoadError:br.func,onPluginLoadError:br.func,onIconsLoadError:br.func,onLanguageLoadError:br.func},du={apiKey:br.string,id:br.string,inline:br.bool,init:br.object,initialValue:br.string,onEditorChange:br.func,value:br.string,tagName:br.string,cloudChannel:br.string,plugins:br.oneOfType([br.string,br.array]),toolbar:br.oneOfType([br.string,br.array]),disabled:br.bool,textareaName:br.string,tinymceScriptSrc:br.string,rollback:br.oneOfType([br.number,br.oneOf([!1])]),scriptLoading:br.shape({async:br.bool,defer:br.bool,delay:br.number}),...cu},uu=e=>"function"==typeof e,mu=e=>e in cu,pu=e=>e.substr(2),hu=(e,t,n,r,a)=>((t,n,r,a,i,l,o)=>{const s=Object.keys(i).filter(mu),c=Object.keys(l).filter(mu),d=s.filter((e=>void 0===l[e])),u=c.filter((e=>void 0===i[e]));d.forEach((e=>{const t=pu(e),n=o[t];r(t,n),delete o[t]})),u.forEach((r=>{const a=((t,n)=>r=>t(n)?.(r,e))(t,r),i=pu(r);o[i]=a,n(i,a)}))})(a,e.on.bind(e),e.off.bind(e),0,t,n,r);let fu=0;const gu=e=>{const t=Date.now(),n=Math.floor(1e9*Math.random());return fu++,e+"_"+n+fu+String(t)},yu=e=>null!==e&&("textarea"===e.tagName.toLowerCase()||"input"===e.tagName.toLowerCase()),bu=e=>void 0===e||""===e?[]:Array.isArray(e)?e:e.split(" "),vu=(e,t)=>{void 0!==e&&(null!=e.mode&&"object"==typeof e.mode&&"function"==typeof e.mode.set?e.mode.set(t):e.setMode(t))},xu=()=>({listeners:[],scriptId:gu("tiny-script"),scriptLoading:!1,scriptLoaded:!1}),Eu=(()=>{let e=xu();return{load:(t,n,r,a,i,l)=>{const o=()=>((t,n,r,a,i)=>{const l=n.createElement("script");l.referrerPolicy="origin",l.type="application/javascript",l.id=t,l.src=r,l.async=a,l.defer=i;const o=()=>{l.removeEventListener("load",o),e.listeners.forEach((e=>e())),e.scriptLoaded=!0};l.addEventListener("load",o),n.head&&n.head.appendChild(l)})(e.scriptId,t,n,r,a);e.scriptLoaded?l():(e.listeners.push(l),e.scriptLoading||(e.scriptLoading=!0,i>0?setTimeout(o,i):o()))},reinitialize:()=>{e=xu()}}})(),wu=e=>{const t=e;return t&&t.tinymce?t.tinymce:null};function Cu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Su extends i.Component{constructor(e){super(e),Cu(this,"editor",void 0),Cu(this,"id",void 0),Cu(this,"elementRef",void 0),Cu(this,"inline",void 0),Cu(this,"currentContent",void 0),Cu(this,"boundHandlers",void 0),Cu(this,"rollbackTimer",void 0),Cu(this,"valueCursor",void 0),Cu(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})),Cu(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){}})),Cu(this,"handleBeforeInputSpecial",(e=>{"Enter"!==e.key&&"Backspace"!==e.key&&"Delete"!==e.key||this.handleBeforeInput(e)})),Cu(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))}})),Cu(this,"handleEditorChangeSpecial",(e=>{"Backspace"!==e.key&&"Delete"!==e.key||this.handleEditorChange(e)})),Cu(this,"initialise",((e=0)=>{const t=this.elementRef.current;if(!t)return;if(!(e=>{if(!("isConnected"in Node.prototype)){let t=e,n=e.parentNode;for(;null!=n;)t=n,n=t.parentNode;return t===e.ownerDocument}return e.isConnected})(t)){if(0===e)setTimeout((()=>this.initialise(1)),1);else{if(!(e<100))throw new Error("tinymce can only be initialised when in a document");setTimeout((()=>this.initialise(e+1)),100)}return}const n=wu(this.view);if(!n)throw new Error("tinymce should have been loaded into global scope");const r={...this.props.init,selector:void 0,target:t,readonly:this.props.disabled,inline:this.inline,plugins:(a=this.props.init?.plugins,i=this.props.plugins,bu(a).concat(bu(i))),toolbar:this.props.toolbar??this.props.init?.toolbar,setup:e=>{this.editor=e,this.bindHandlers({}),this.inline&&!yu(t)&&e.once("PostRender",(t=>{e.setContent(this.getInitialValue(),{no_events:!0})})),this.props.init&&uu(this.props.init.setup)&&this.props.init.setup(e)},init_instance_callback:e=>{const t=this.getInitialValue();this.currentContent=this.currentContent??e.getContent(),this.currentContent!==t&&(this.currentContent=t,e.setContent(t),e.undoManager.clear(),e.undoManager.add(),e.setDirty(!1));const n=this.props.disabled??!1;vu(this.editor,n?"readonly":"design"),this.props.init&&uu(this.props.init.init_instance_callback)&&this.props.init.init_instance_callback(e)}};var a,i;this.inline||(t.style.visibility=""),yu(t)&&(t.value=this.getInitialValue()),n.init(r)})),this.id=this.props.id||gu("tiny-react"),this.elementRef=i.createRef(),this.inline=this.props.inline??this.props.init?.inline??!1,this.boundHandlers={}}get view(){return this.elementRef.current?.ownerDocument.defaultView??window}componentDidUpdate(e){if(this.rollbackTimer&&(clearTimeout(this.rollbackTimer),this.rollbackTimer=void 0),this.editor&&(this.bindHandlers(e),this.editor.initialized)){if(this.currentContent=this.currentContent??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 n=this.valueCursor;if(e.setContent(this.props.value),!this.inline||e.hasFocus())for(const r of[t,n])if(r)try{e.selection.moveToBookmark(r),this.valueCursor=r;break}catch(e){}}))}if(this.props.disabled!==e.disabled){const e=this.props.disabled??!1;vu(this.editor,e?"readonly":"design")}}}componentDidMount(){null!==wu(this.view)?this.initialise():this.elementRef.current&&this.elementRef.current.ownerDocument&&Eu.load(this.elementRef.current.ownerDocument,this.getScriptSrc(),this.props.scriptLoading?.async??!1,this.props.scriptLoading?.defer??!1,this.props.scriptLoading?.delay??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(){const e=wu(this.view)?.Env?.browser?.isIE();return e?"change keyup compositionend setcontent CommentChange":"change input compositionend setcontent CommentChange"}beforeInputEvent(){return window.InputEvent&&"function"==typeof InputEvent.prototype.getTargetRanges?"beforeinput SelectionChange":"SelectionChange"}renderInline(){const{tagName:e="div"}=this.props;return i.createElement(e,{ref:this.elementRef,id:this.id})}renderIframe(){return i.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){hu(this.editor,e,this.props,this.boundHandlers,(e=>this.props[e]));const t=e=>void 0!==e.onEditorChange||void 0!==e.value,n=t(e),r=t(this.props);!n&&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)):n&&!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))}}}Cu(Su,"propTypes",du),Cu(Su,"defaultProps",{cloudChannel:"6"});var Nu=function(e){return e["zh-cn"]="zh_CN",e["zh-tw"]="zh_TW",e.en="en",e}(Nu||{});const Iu=e=>{const{className:t,style:n,tinymce:r={},upload:a={},thresholdSize:i=.5,tinymceScriptSrc:s,disabled:c,value:d,onResizeEditor:u,onChange:m}=e,{global:p}=l().useContext(o),{$size:h}=Y(e),{$locale:f,t:g}=U(),y={height:r.height||400,plugins:r.plugins||"preview importcss searchreplace autolink save directionality code visualblocks visualchars fullscreen image link media template codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap quickbars emoticons",toolbar:r.toolbar||"undo redo | blocks fontfamily fontsize | bold italic underline strikethrough | align numlist bullist | link image | table media | lineheight outdent indent| forecolor backcolor removeformat | charmap emoticons | code fullscreen preview | save print | pagebreak anchor codesample | ltr rtl",menubar:r.menubar||"file edit view insert format tools table help",font_family_formats:"微软雅黑=Microsoft YaHei,Helvetica Neue,PingFang SC,sans-serif;苹果苹方=PingFang SC,Microsoft YaHei,sans-serif;宋体=simsun,serif;仿宋体=FangSong,serif;黑体=SimHei,sans-serif;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",font_size_formats:"10px 12px 14px 16px 18px 20px 24px 36px 48px 56px 72px",language:Nu[f],skin:"tinymce-5",...oe(r,["height","plugins","toolbar","menubar"]),images_upload_handler:e=>new Promise((async(t,n)=>{const{action:r,headers:l,dataKey:o}=a,s=`data:image/jpeg;base64,${e.base64()}`,c=new FormData;c.append("file",e.blob(),e.filename());const d=e.blob().size;if(r&&d/1024/1024>i)try{const e=await fetch(r,{method:"POST",body:c,headers:l});if(!e.ok)throw new Error(g("qm.upload.uploadError"));const n=await e.json();200===n.code&&t(o?(0,X.get)(n.data,o):n.data)}catch(e){R.message.error(g("qm.uploadCropper.uploadError"))}else t(s)})),setup:e=>{e.on("ResizeEditor",(t=>{const{offsetWidth:n,offsetHeight:r}=e.editorContainer;u?.({width:n,height:r},t)}))}},b=Ee("tinymce"),v={[b]:!0,[`${b}--lg`]:"large"===h,[`${b}--sm`]:"small"===h},x={init:y,value:d,disabled:c,tinymceScriptSrc:s||p?.tinymce?.scriptSrc||void 0,onEditorChange:(e,t)=>{m?.(t.getContent(),t)}};return l().createElement("div",{className:xe()(v,t),style:n},l().createElement(Su,x))};Iu.displayName="QmTinymce";const Tu=Iu;function Ru(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Ou=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o,style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{tinymce:u,thresholdSize:m,onResizeEditor:p}=i;return l().createElement(Tu,{value:n,tinymce:u,upload:o,thresholdSize:m,style:{width:"100%",...s},disabled:d||c||t.isOnlyShow,onResizeEditor:p,onChange:e=>{(e=>{r?.(e),a(e)})(e)}})};class ku extends i.Component{constructor(...e){super(...e),Ru(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Ou,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Ru(ku,"contextType",xn);const Pu=ku;function Lu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Au extends i.Component{constructor(e){super(e),Lu(this,"context",void 0),Lu(this,"provide",{$$form:this,echo_data:{}}),Lu(this,"_initialValues",void 0),Lu(this,"_initialOthers",void 0),Lu(this,"_initialExtras",void 0),Lu(this,"_fieldAuth",{}),Lu(this,"wrapperRef",l().createRef()),Lu(this,"formRef",l().createRef()),Lu(this,"originItems",[]),Lu(this,"state",{formData:{},viewData:{},other:{},extra:{},expand:{},flexCols:this.props.cols??4,collapse:!!this.props.defaultExpand}),Lu(this,"resizeObserveHandler",(()=>{const e=this.wrapperRef.current?.offsetWidth;if(void 0===e||0===e||this.props.cols>0)return;let t=Math.floor(e/300);t=24%t==0?t:t-1,t=t<1?1:t,t=t>8?8:t,t!==this.state.flexCols&&this.setState({flexCols:t})})),Lu(this,"resizeListenerHandle",(0,X.debounce)(this.resizeObserveHandler,10)),Lu(this,"getFormItems",vn()((e=>e.filter((e=>!e.noAuth&&!e.hidden))))),Lu(this,"getFlattenItems",vn()((e=>{const t=[];return e.filter((e=>e.fieldName&&"DIVIDER"!==e.type)).forEach((e=>{(0,X.isPlainObject)(e.label)&&e.label.fieldName&&t.push(e.label),t.push(e)})),t}))),Lu(this,"valuesChangeHandle",((e,t)=>{this.props.onValuesChange?.(e,this._initialValues)})),Lu(this,"fieldsChangeHandle",((e,t)=>{this.props.onFieldsChange?.(e,t)})),Lu(this,"finishHandle",(e=>{this.props.onFinish?.(Object.assign({},this.get_fields_other(),this.formatFormValue(e)))})),Lu(this,"finishFailedHandle",(({values:e,errorFields:t})=>{this.props.onFinishFailed?.(t)})),Lu(this,"openValidateInfo",(e=>{const t=l().createElement("ul",null,e.map((e=>{const{label:t}=this.formItems.find((t=>t.fieldName===e.name[0]));return l().createElement("li",{key:e.name[0],style:{color:"#ff4d4f"}},"[",("string"==typeof t?`${t}: `:"")+e.errors.join(","),"]")})));R.notification.error({message:p("qm.form.validatePrompt"),description:t,duration:10})})),Lu(this,"scrollToField",(e=>{if(!e)return;const t=this.wrapperRef.current.querySelector(`.${e}`);t&&Yt()(t,{scrollMode:"if-needed",block:"nearest",behavior:"smooth"})})),this.createOriginItems(),this.createInitialValues(),this.createInitialOthers(),this.createInitialExtras(),this.createFormAuth()}get $size(){return this.props.size??this.context.size??""}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 isFormDisabled(){return this.props.disabled}get isCompactMode(){const e=this.context.global;return this.props.compactMode??("small"===this.$size&&!!e?.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(){bt(this.wrapperRef.current,this.resizeListenerHandle)}removeResizeEvent(){vt(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&&me("Form","配置项 fieldName 属性是唯一的,不能重复")}getFormItemRequired(e=[]){return e.some((e=>e.required))}createOtherValue(e){const t=this.flattenItems.map((e=>e.fieldName)),n={};for(const r in e)t.includes(r)||(n[r]=e[r]);return Object.assign({},n)}createExtraValue(e){const t={};return this.flattenItems.filter((e=>(0,X.isPlainObject)(e.extra))).forEach((n=>{t[n.fieldName]=e[n.fieldName]??""})),Object.assign({},t)}createDividerExpand(){const e={};return this.dividers.filter((e=>(0,X.isPlainObject)(e.collapse))).forEach((t=>{e[t.fieldName]=t.collapse.defaultExpand??!1})),Object.assign({},e)}getInitialValue(e,t){const{type:n,options:r}=e;return t=t??void 0,Nr.includes(n)&&(t=t??[]),"CHECKBOX"!==n&&"SWITCH"!==n||(t=t??r?.falseValue??Cr),t}createFormValue(e){const t={};return this.flattenItems.forEach((n=>{t[n.fieldName]=this.getInitialValue(n,e[n.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)}createOriginItems(){this.originItems=se(this.props.items)}getOriginItems(){return this.originItems}setViewValue(e,t=""){t!==this.getViewValue(e)&&this.setState((n=>({viewData:Object.assign({},n.viewData,{[e]:t})})))}getViewValue(e){return this.state.viewData[e]??""}setExpandHandle(e){e!==this.state.collapse&&(this.setState({collapse:e}),this.props.onCollapse?.(e),re((()=>this.props.onCollapse?.(e))))}createInputFocus(){const{isAutoFocus:e}=this.props;if(!e||this.isOnlyShow)return;const{type:t,fieldName:n}=this.formItems.filter((e=>e.fieldName))[0]||{};"INPUT"!==t&&"INPUT_NUMBER"!==t||!n||setTimeout((()=>this.CREATE_FOCUS(n)))}getFormItemLabel(e){if(Kr(e))return zr(e);if((0,X.isPlainObject)(e)){const{fieldName:t,label:n,options:r={}}=e;if(Kr(n))return zr(n);const{itemList:a=[]}=r,i=this.formRef.current?.getFieldsValue([t])[t]??this._initialValues[t]??a[0]?.value;return a.find((e=>e.value===i))?.text||""}return""}getBlockDerivedItems(){const e=[];for(let t=0,n=this.dividers.length;t<n;t++){const n=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(n,r).map((e=>({label:e.label,fieldName:e.fieldName}))))}return e}getFormItemDisplay({type:e,fieldName:t}){if("DIVIDER"===e)return!0;const n=this.getBlockDerivedItems();for(let e=0,r=n.length;e<r;e++){const r=n[e],a=this.dividers.find((e=>e.fieldName===r[0].fieldName)),i=a?.collapse?.showLimit??r.length-1;for(let e=1;e<r.length;e++)if(r[e].fieldName===t&&e>i)return this.state.expand[r[0].fieldName]}return!0}formatFormValue(e){for(const t in e){const n=e[t];if(_r(n)&&(e[t]=""),Array.isArray(n)&&n.forEach(((n,r)=>{_r(n)&&(e[t][r]="")})),t.includes("|")&&Array.isArray(n)){const[r,a]=t.split("|");e[r]=n[0]??"",e[a]=n[1]??""}}if(this.isFilterType)for(const t in e)ie(e[t])&&(e[t]=void 0);return e}setFieldAuth(e,t){this._fieldAuth[e]=t}async createFormAuth(){const{authConfig:e}=this.props;if(!e)return;let t=oe(e,["fetch"]);if(e.fetch){const{api:n,params:r,dataKey:a}=e.fetch;try{const e=await n(r);200===e.code&&(t=(a?(0,X.get)(e.data,a):e.data)??{})}catch(e){}}if(Array.isArray(t.fieldList)){const e=this.props.items.map((e=>{const{fieldName:n}=e,r=t.fieldList.find((e=>e.dataIndex===n));if(r){const t=this.originItems.find((e=>e.fieldName===n)),{visible:a=1,disabled:i,secretName:l}=r;a||(e.noAuth=!0,t.noAuth=!0),i&&(e.disabled=!0,t.disabled=!0),l&&(e.options?e.options.secretType=l:e.options={secretType:l},t.options=Object.assign({},t.options,{secretType:l})),this.setFieldAuth(n,{visible:a,disabled:i,secretName:l})}return e}));this.props.fieldsChange?.(e)}}INPUT(e){return l().createElement(ya,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT(e){return l().createElement(Ea,{option:e})}INPUT_NUMBER(e){return l().createElement(Ta,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT_NUMBER(e){return l().createElement(Pa,{option:e})}SEARCH_HELPER(e){return l().createElement(Vs,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}MULTIPLE_SEARCH_HELPER(e){return l().createElement(Js,{option:e})}TREE_TABLE_HELPER(e){return l().createElement(dc,{option:e})}MULTIPLE_TREE_TABLE_HELPER(e){return l().createElement(gc,{option:e})}RANGE_SEARCH_HELPER(e){return l().createElement(Ic,{option:e})}CHECKBOX(e){return l().createElement(da,{option:e})}MULTIPLE_CHECKBOX(e){return l().createElement(kc,{option:e})}RATE(e){return l().createElement(_c,{option:e})}RADIO(e){return l().createElement(qc,{option:e})}SWITCH(e){return l().createElement(zc,{option:e})}TEXT_AREA(e){return l().createElement(Bc,{option:e})}DATE(e){return l().createElement(Xc,{option:e})}RANGE_DATE(e){return l().createElement(td,{option:e})}TIME(e){return l().createElement(id,{option:e})}RANGE_TIME(e){return l().createElement(cd,{option:e})}SELECT(e){return l().createElement(la,{option:e})}MULTIPLE_SELECT(e){return l().createElement(la,{option:e,multiple:!0})}IMMEDIATE(e){return l().createElement(pd,{option:e})}DIVIDER(e){return l().createElement(gd,{option:e})}TREE_SELECT(e){return l().createElement(wd,{option:e})}MULTIPLE_TREE_SELECT(e){return l().createElement(wd,{option:e,multiple:!0})}CASCADER(e){return l().createElement(Td,{option:e})}MULTIPLE_CASCADER(e){return l().createElement(Td,{option:e,multiple:!0})}CITY_SELECT(e){return l().createElement(Md,{option:e})}REGION_SELECT(e){return l().createElement(Wd,{option:e})}UPLOAD_FILE(e){return l().createElement(Xd,{option:e})}UPLOAD_IMG(e){return l().createElement(su,{option:e})}TINYMCE(e){return l().createElement(Pu,{option:e})}renderFormLabel(e){if(Kr(e)||!(0,X.isPlainObject)(e))return e;const{type:t,fieldName:n,label:r,options:a={},onChange:i=ee}=e,{itemList:o=[]}=a;return"SELECT"===t?l().createElement(R.Form.Item,{name:n,noStyle:!0},l().createElement(aa,{option:e,items:o,loading:!1,onValuesChange:(e,t)=>i(e,t)})):"CHECKBOX"===t?l().createElement(l().Fragment,null,l().createElement("span",{style:{paddingRight:5}},r),l().createElement(R.Form.Item,{name:n,noStyle:!0},l().createElement(sa,{option:e,onValuesChange:e=>i(e)}))):null}renderFormItemExtra(e){const{fieldName:t,isTooltip:n,style:r={},render:a}=e,{extra:i}=this.state;if(n)return l().createElement(R.Tooltip,{className:"extra-tooltip",title:i[t]},l().createElement(we.ExclamationCircleOutlined,{style:{marginLeft:4}}));const o=this.formItems.find((e=>e.fieldName===t));return l().createElement("div",{className:"extra-text",title:a?"":i[t],style:r},l().createElement("span",{className:"extra-overflow-cut"},a?a(o,this):i[t]))}renderFormItemButton(e,t){const n=this.formItems.find((t=>t.fieldName===e)),r="function"==typeof t?t(n):t;return this.isOnlyShow?null:r}renderFormItem(e){const{label:t,fieldName:n,invisible:r,tooltip:a,className:i,labelWidth:o=this.props.labelWidth,validateTrigger:s,rules:c=[],style:d={},render:u}=e;return l().createElement(R.Form.Item,{label:this.renderFormLabel(t),name:n,rules:c,tooltip:a,hidden:r,className:xe()(i),style:{width:"100%",...d},labelCol:{flex:this.verticalLayout?"initial":ce(o)},validateTrigger:s,messageVariables:{label:this.getFormItemLabel(t)}},this.formRef.current?u(e,this):l().createElement(l().Fragment,null))}createFormItem(e){return(0,X.isFunction)(this[e.type])?e.render?this.renderFormItem(e):this[e.type](e):(me("Form",`配置项 ${e.fieldName} 的 type 类型错误`),null)}createFormLayout(){const{flexCols:e}=this.state,{formType:t,defaultRows:n,isFieldsDefine:r}=this.props,a=[];this.formItems.forEach((e=>{const{offsetLeft:t=0,offsetRight:n=0}=e;for(let e=0;e<t;e++)a.push({});a.push(e);for(let e=0;e<n;e++)a.push({})}));const i=24/e,o=[],s=a.reduce(((e,t)=>{const{selfCol:n=1}=t,r=e+n;return o.push(r),r}),0),c=n>Math.ceil(s/e)?Math.ceil(s/e):n,d=[],u=a.map(((t,n)=>{let{selfCol:r=1}=t;const{type:a,fieldName:s}=t;r=r>=24||"DIVIDER"===a||"TINYMCE"===a?e:r;const u=!(!this.state.collapse&&this.showFilterCollapse)||o[n]<c*e,m=!this.showDividerCollapse||this.getFormItemDisplay(t);return u&&d.push(o[n]),l().createElement(R.Col,{key:s??n,className:s,span:r*i,style:this.isFilterType?{display:!this.showFilterCollapse||u?"block":"none"}:{display:m?"block":"none"}},a?this.createFormItem(se(t)):null)}));return r&&"default"===t&&u.push(l().createElement("div",{className:"form-fields__define"},this.createFieldsDefine())),[...u,this.createSearchButtonLayout(d[d.length-1])]}createSearchButtonLayout(e=0){const{flexCols:t,collapse:n}=this.state,{searchButtonCols:r,isSearchBtn:a,isFieldsDefine:i=!0}=this.props;if(!this.isFilterType)return null;const o=24/t,s=r||1,c=t-e%t-s;return a?l().createElement(R.Col,{key:"-",span:s*o,offset:c*o,style:{textAlign:"right"}},l().createElement(R.Space,{style:{marginBottom:12}},l().createElement(fe,{type:"primary",size:this.$size,icon:l().createElement(we.SearchOutlined,null),onClick:()=>this.SUBMIT_FORM()},p("qm.form.search")),l().createElement(fe,{size:this.$size,icon:l().createElement(we.ReloadOutlined,null),onClick:()=>this.RESET_FORM()},p("qm.form.reset")),i?this.createFieldsDefine():null,this.showFilterCollapse&&l().createElement("a",{onClick:()=>this.setExpandHandle(!n)},n?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)," ",p(n?"qm.form.collect":"qm.form.spread")))):null}createFormButtonLayout(){const{flexCols:e}=this.state,{formType:t,isSubmitBtn:n}=this.props;if(this.isFilterType)return null;const r=24/e;return n&&"default"===t?l().createElement(R.Row,{gutter:0},l().createElement(R.Col,{key:"-",span:r},l().createElement(R.Form.Item,null,l().createElement(R.Space,{style:{marginBottom:12}},l().createElement(fe,{type:"primary",size:this.$size,onClick:()=>this.SUBMIT_FORM()},p("qm.form.save")),l().createElement(fe,{size:this.$size,onClick:()=>this.RESET_FORM()},p("qm.form.reset")))))):null}createFieldsDefine(){const{uniqueKey:e,items:t,fieldsChange:n}=this.props;return l().createElement(pa,{uniqueKey:e,items:t,fieldsChange:n})}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((async(e,t)=>{const[n,r]=await this.VALIDATE_FIELDS(),a=this.formItems.filter((e=>"SEARCH_HELPER"===e.type)).filter((e=>this[`${e.fieldName}_Ref`]?.searchRef._is_change)).map((e=>({name:[e.fieldName],errors:[p("qm.form.searchHelperTips")],warnings:[]})));n||a.length?t((n||[]).concat(a)):e(r)}))}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))}async GET_FORM_DATA(){try{const e=await 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]}}async VALIDATE_FIELDS(e){try{return[null,await 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)}async SUBMIT_FORM(){try{await this.formValidate(),this.formRef.current.submit()}catch(e){this.isFilterType&&this.setExpandHandle(!0)}}RESET_FORM(){const e=this.flattenItems.filter((e=>e.noReset)).map((e=>e.fieldName)),t=this.flattenItems.map((e=>e.fieldName)).filter((t=>!e.includes(t)));t.length&&this.formRef.current.resetFields(t),this.setState((e=>{const t=Object.keys(e.other),n=Object.keys(this._initialOthers),r=t.filter((e=>!n.includes(e))),a={};return r.forEach((e=>a[e]=void 0)),{other:Object.assign({},this._initialOthers,a)}})),this.setState({extra:Object.assign({},this._initialExtras)}),this.props.onReset?.()}CREATE_FOCUS(e){try{this[`${e}_Ref`].focus()}catch(e){me("Form","参数 `fieldName` 的值不正确或者该表单项不支持获得焦点")}}SET_FORM_ITEM(e,t,n){const{items:r,fieldsChange:a}=this.props,i=r.find((t=>t.fieldName===e));if(!i)return me("Form","SET_FORM_ITEM 方法参数 `fieldName` 的值不正确");if(!(0,X.isPlainObject)(t))return me("Form","SET_FORM_ITEM 方法参数 `option` 的值不正确");if(i.noAuth)return me("Form","SET_FORM_ITEM 方法不能操作受权限控制的表单项");for(const n in t)n&&(Object.keys(this._fieldAuth).includes(e)&&"disabled"===n||(0,X.set)(i,n,t[n]));n&&(a?a([...r]):me("Form","需要设置 `fieldsChange` 参数"))}render(){const{className:e,style:t,layout:n,disabled:r,labelWidth:a,labelAlign:i,labelWrap:o,customClass:s}=this.props,c=Ee("form"),d={required:"${label}"+p("qm.form.requiredTips")},u={[c]:!0,[`${c}--lg`]:"large"===this.$size,[`${c}--sm`]:"small"===this.$size,[`${c}__only-show`]:this.isOnlyShow,[`${c}__compact`]:this.isCompactMode,[s]:!!s};return l().createElement("div",{ref:this.wrapperRef,className:xe()(u,e),style:t},l().createElement(R.Form,{ref:this.formRef,size:this.$size,initialValues:this._initialValues,layout:n,labelAlign:i,labelWrap:o,colon:!1,disabled:r,labelCol:{flex:this.verticalLayout?"initial":ce(a)},validateMessages:d,onValuesChange:this.valuesChangeHandle,onFieldsChange:this.fieldsChangeHandle,onFinish:this.finishHandle,onFinishFailed:this.finishFailedHandle},l().createElement(xn.Provider,{value:this.provide},l().createElement(R.Row,{gutter:this.verticalLayout?20:0},this.createFormLayout()),this.createFormButtonLayout())))}}Lu(Au,"contextType",o),Lu(Au,"propTypes",kr),Lu(Au,"defaultProps",Pr);const _u=Au,Fu=e=>null!=e;function Du(e,t,n,r){const[a,i]=l().useState(void 0);l().useLayoutEffect((()=>{const t="function"==typeof e?e():e;i(t||null)}));const[o,s]=l().useState(null),c=()=>{if(a){!(e=>{const t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:r,right:a,bottom:i,left:l}=e.getBoundingClientRect();return r>=0&&l>=0&&a<=t&&i<=n})(a)&&t&&a.scrollIntoView(r);const{left:e,top:n,width:i,height:l}=a.getBoundingClientRect(),o={left:e,top:n,width:i,height:l,radius:0};s((e=>JSON.stringify(e)!==JSON.stringify(o)?o:e))}else s(null)};return l().useLayoutEffect((()=>{c()}),[a,t]),ri({handler:c}),[l().useMemo((()=>{if(!o)return o;const e=n?.offset||6,t=n?.radius||2;return{left:o.left-e,top:o.top-e,width:o.width+2*e,height:o.height+2*e,radius:t}}),[o,n]),a]}function Hu(){return Hu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hu.apply(null,arguments)}const qu={fill:"transparent",pointerEvents:"auto"},$u=e=>{const{prefixCls:t,rootClassName:n,pos:r,showMask:a,style:i={},fill:o="rgba(0,0,0,0.5)",open:s,animated:c,zIndex:d}=e,u=`${t}-mask-${Ba()}`,m="object"==typeof c?c?.placeholder:c;return l().createElement(_l(),{open:s,autoLock:!0},l().createElement("div",{className:xe()(`${t}-mask`,n),style:{position:"fixed",left:0,right:0,top:0,bottom:0,zIndex:d,pointerEvents:"none",...i}},a?l().createElement("svg",{style:{width:"100%",height:"100%"}},l().createElement("defs",null,l().createElement("mask",{id:u},l().createElement("rect",{x:"0",y:"0",width:"100vw",height:"100vh",fill:"white"}),r&&l().createElement("rect",{x:r.left,y:r.top,rx:r.radius,width:r.width,height:r.height,fill:"black",className:m?`${t}-placeholder-animated`:""}))),l().createElement("rect",Hu({},r?null:qu,{x:"0",y:"0",width:"100%",height:"100%",fill:o,mask:`url(#${u})`})),r&&l().createElement(l().Fragment,null,l().createElement("rect",Hu({},qu,{x:"0",y:"0",width:"100%",height:`${r.top}px`})),l().createElement("rect",Hu({},qu,{x:"0",y:"0",width:r.left,height:"100%"})),l().createElement("rect",Hu({},qu,{x:"0",y:r.top+r.height,width:"100%",height:`calc(100vh - ${r.top+r.height}px)`})),l().createElement("rect",Hu({},qu,{x:r.left+r.width,y:"0",width:`calc(100vw - ${r.left+r.width}px)`,height:"100%"})))):null))},Mu=e=>{const{prefixCls:t,zIndex:n,open:r,onPause:a,onPlay:i}=e,[o,s]=Ja(void 0,{value:r,postState:e=>e??!0}),c=l().useRef(null),d=l().useRef(!1),u=G((e=>{m(e),e.shiftKey&&32===e.keyCode&&p()}));l().useEffect((()=>{const e=Ut()(document,"keyup",u);return()=>e.remove()}),[]);const m=e=>{e.stopPropagation(),e.preventDefault()},p=()=>{d.current?d.current=!1:(s(!o),o?a?.():i?.())};return l().createElement("div",{ref:c,className:`${t}-control`,style:{zIndex:n+1},onMouseDown:e=>{m(e);const t=c.current,n=t.offsetWidth,r=t.offsetHeight,a=window.innerWidth,i=window.innerHeight,l=e.clientX-We(t).x,o=e.clientY-We(t).y;return document.onmousemove=e=>{let s=e.clientX-l,c=e.clientY-o;s<0&&(s=0),s>a-n-1&&(s=a-n-1),c<0&&(c=0),c>i-r-1&&(c=i-r-1),ze(t,{left:`${s}px`,top:`${c}px`}),d.current=!0},document.onmouseup=function(){this.onmousemove=null,this.onmouseup=null},!1},onClick:()=>p()},o?l().createElement(we.PauseOutlined,null):l().createElement(we.CaretRightOutlined,null))},Ku=e=>{const{prefixCls:t,current:n,total:r=0,cover:a,title:i,description:o,helper:s={},type:c,zIndex:d,onClose:u,onPrev:m,onNext:p,onFinish:h,className:f,indicatorsRender:g}=e,{t:y}=U(),b="primary"!==c?"primary":"default",v=G((e=>{C(e),40===e.keyCode&&(n<r-1?p?.():h?.()),38===e.keyCode&&n>0&&m?.()}));l().useEffect((()=>{const e=Ut()(document,"keyup",v);return()=>e.remove()}),[]);const x=Fu(a)?l().createElement("div",{className:`${t}-cover`},a):null,E=Fu(o)?l().createElement("div",{className:`${t}-description`},o):null;let w;w=g?g(n,r):[...Array.from({length:r}).keys()].map(((e,r)=>l().createElement("span",{key:e,className:xe()(r===n&&`${t}-indicator-active`,`${t}-indicator`)})));const C=e=>{e.stopPropagation(),e.preventDefault()};return l().createElement("div",{className:xe()(`${t}-content`,f)},l().createElement("div",{className:`${t}-inner`},l().createElement(we.CloseOutlined,{className:`${t}-close`,onClick:u}),s.content&&l().createElement(R.Popover,{placement:"bottom",overlayStyle:{width:360,zIndex:d},content:s.content,title:s.title},l().createElement(we.QuestionCircleOutlined,{className:xe()(`${t}-close`,"help-icon")})),x,l().createElement("div",{className:`${t}-header`},l().createElement("div",{className:`${t}-title`},i)),E,l().createElement("div",{className:`${t}-footer`},r>1&&l().createElement("div",{className:`${t}-indicators`},w),l().createElement(be,{className:`${t}-buttons`},0!==n?l().createElement(fe,{className:`${t}-prev-btn`,size:"small",onMouseDown:C,onClick:m},y("qm.tour.prevStep")):null,n===r-1?l().createElement(fe,{className:`${t}-finish-btn`,type:b,size:"small",onClick:h},y("qm.tour.finish")):l().createElement(fe,{className:`${t}-next-btn`,type:b,size:"small",onMouseDown:C,onClick:p},y("qm.tour.nextStep"))))))},zu=e=>{const{current:t,renderPanel:n}=e;return l().createElement(l().Fragment,null,"function"==typeof n?n(e,t):l().createElement(Ku,e))};function ju(){return ju=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ju.apply(null,arguments)}const Vu={left:"50%",top:"50%",width:1,height:1},Wu=l().forwardRef(((e,t)=>{const{steps:n=[],defaultCurrent:r,current:a,onChange:i,onClose:o,onFinish:s,open:c,type:d="default",mask:u=!0,arrow:m=!0,control:p=!0,overlayClassName:h,overlayStyle:f,placement:g,helper:y,zIndex:b,renderPanel:v,indicatorsRender:x,gap:E,animated:w=!0,scrollIntoViewOptions:C=!0,...S}=e,N=l().useRef(),[I,T]=Ja(0,{value:a,defaultValue:r}),[R,O]=Ja(void 0,{value:c,postState:e=>!(I<0||I>=n.length)&&(e??!1)}),[k,P]=Ja(1051,{value:b,defaultValue:b}),[L,A]=l().useState(),_=l().useRef(R);l().useLayoutEffect((()=>{R&&!_.current&&T(0),_.current=R,A(R)}),[R]),l().useImperativeHandle(t,(()=>({OPEN:()=>O(!0),CLOSE:()=>O(!1),SET_ZINDEX:e=>P(e)})));const{target:F,type:D,placement:H,trigger:q,delay:$,style:M,arrow:K,className:z,mask:j,scrollIntoViewOptions:V,zIndex:W,action:B}=n[I]||{},U=W||k,G=D||d,Y=R&&(j??u),X=V??C,[Q,Z]=Du(F,!!c,E,X),J=((e,t,n)=>n??t??(null===e?"center":"bottom"))(Z,g,H),ee=!!Z&&(void 0===K?m:K),te="object"==typeof ee&&ee.pointAtCenter;l().useLayoutEffect((()=>{N.current?.forceAlign()}),[te,I]),He((()=>{R&&(ie(),B?.(Z,I))}),[R,Z]);const re=e=>{T(e),i?.(e)},ae=()=>{O(!1),o?.(I)},ie=()=>{if(!Z)return;const e=[];!function t(n){if(1===n.nodeType){var r;"INPUT"!==n.tagName&&"TEXTAREA"!==n.tagName||"none"===Ke(r=n,"display")||"hidden"===Ke(r,"visibility")||"0"===Ke(r,"opacity")||e.push(n);for(const e of Array.from(n.childNodes))t(e)}}(Z),e.length&&e[0].focus()};if(void 0===Z)return null;const le=async()=>{if(!q||!Z)return;const{left:e,top:t}=Z.getBoundingClientRect(),n=Z.offsetWidth,r=Z.offsetHeight,[a,i]=[e+n/2,t+r/2],l=new MouseEvent(q,{bubbles:!0,cancelable:!0,button:0,clientX:a,clientY:i}),o=document.elementFromPoint(a,i);o&&(o.dispatchEvent(l),await ne($??320))},oe="boolean"==typeof Y?Y:!!Y,se="boolean"==typeof Y?void 0:Y,ce=Object.assign({},f,M),de=Ee("tour"),ue=[{[`${de}-primary`]:"primary"===G},h,z],me=El({arrowPointAtCenter:te,autoAdjustOverflow:!0,offset:6,arrowWidth:16,borderRadius:8});return l().createElement(l().Fragment,null,l().createElement($u,{zIndex:U,prefixCls:de,pos:Q,showMask:oe,style:se?.style,fill:se?.color,open:L,animated:w,rootClassName:h}),l().createElement(_l(),{open:L,autoLock:!0},l().createElement(Cl(),ju({ref:N},S,{zIndex:U,builtinPlacements:me,popupStyle:ce,popupPlacement:J,popupVisible:L,popupClassName:xe()(ue),prefixCls:de,popup:()=>l().createElement(zu,ju({key:"content",arrow:ee,prefixCls:de,total:n.length,helper:y,renderPanel:v,indicatorsRender:x,onPrev:async()=>{await le(),re(I-1)},onNext:async()=>{await le(),re(I+1)},onClose:ae,current:I,onFinish:()=>{ae(),s?.()}},Object.assign({},n[I],{zIndex:U,type:G}))),arrow:!!ee,getTriggerDOMNode:e=>e||Z||document.body,forceRender:!1,destroyPopupOnHide:!0}),l().createElement("div",{className:xe()(h,`${de}-target-placeholder`),style:{...Q||Vu,position:"fixed",pointerEvents:"none"}}))),p&&l().createElement(_l(),{open:R},l().createElement(Mu,{zIndex:U,prefixCls:de,onPause:()=>A(!1),onPlay:()=>A(!0)})))}));Wu.displayName="QmTour";const Bu=Wu,Uu={previewWidth:1100,defaultDistance:.45,logoHeight:60},Gu=(0,i.createContext)(void 0);var Yu=null;function Xu(){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),n=e.match(/MSIE\D?\d+/i),r=e.match(/OPR\D?\d+/i),a=e.match(/Firefox\D?\d+/i),i=e.match(/x64/i);if(!t&&!n&&i)return!0;if(a){if((a=a[0].match(/\d+/))[0]>=41||i)return!0}else if(r){if((r=r[0].match(/\d+/))[0]>=32)return!0}else if(!t&&!n){var l=e.match(/Chrome\D?\d+/i);if(l&&(l=l[0].match(/\d+/))[0]>=41)return!0}return!1}catch(e){return!0}}function Qu(e,t){var n;try{var r=navigator.userAgent,a=!!r.match(/MSIE/i)||!!r.match(/Trident/i);if(Xu()){try{n=getCLodop()}catch(e){}if(!n&&"complete"!==document.readyState)return void R.message.warning("打印组件还没有加载完毕,请稍等一下再操作");if(!n)return;CLODOP.CVERSION,t&&t.parentNode&&t.parentNode.removeChild(t),e&&e.parentNode&&e.parentNode.removeChild(e)}else if(a&&r.match(/x64/i),e||t?n=a?e:t:Yu?n=Yu:((n=document.createElement("object")).setAttribute("width",0),n.setAttribute("height",0),n.setAttribute("style","position:absolute;left:0px;top:-100px;width:0px;height:0px;"),a?n.setAttribute("classid","clsid:2105C259-1E0C-4534-8141-A753534CB4CA"):n.setAttribute("type","application/x-print-lodop"),document.documentElement.appendChild(n),Yu=n),!n||!n.VERSION)return r.indexOf("Chrome"),r.indexOf("Firefox"),n;return n.VERSION<"6.2.2.6"&&Xu(),n}catch(e){R.message.error("getLodop 出错:"+e)}}Xu();const Zu=e=>{const t=e/25.4*(()=>{const e=[],{deviceXDPI:t,deviceYDPI:n}=window.screen;if(t&&n)e[0]=t,e[1]=n;else{let t=document.createElement("DIV");t.style.cssText="width: 1in; height: 1in; position: absolute; left: 0px; top: 0px; z-index: -1; visibility: hidden;",document.body.appendChild(t),e[0]=parseInt(t.offsetWidth.toString()),e[1]=parseInt(t.offsetHeight.toString()),t.parentNode?.removeChild(t),t=null}return e})()[0];return Math.ceil(t)},Ju=l().forwardRef(((e,t)=>{const{templateRender:n,directPrint:r}=e,{global:a}=l().useContext(o),{$$preview:i}=l().useContext(Gu),{state:s,isWindowsPrinter:c,pageSize:d}=i,u=l().useRef(null),m=l().useRef({}),p=l().useRef([]),h=l().useRef([]),f=l().useRef([]),[g,y]=l().useState(!0);l().useImperativeHandle(t,(()=>({createPreviewDom:k,createExportHtml:L,createPrintHtml:P,SHOW_PREVIEW:A,DIRECT_PRINT:_}))),He((()=>{O()}),[s.form.printerType,s.form.setting.direction,s.form.setting.distance,s.form.setting.fixedLogo]),l().useEffect((()=>{m.current.templateEl=u.current.querySelector(".origin-template").children[0],m.current.previewEl=u.current.querySelector(".workspace")}),[]);const b=l().useMemo((()=>{const{form:{setting:{direction:e}}}=s,t=c?10*Uu.defaultDistance+10*Uu.defaultDistance:0;return("vertical"===e?d[0]:d[1])-t}),[s,c,d]),v=l().useMemo((()=>{const{form:{setting:{direction:e}}}=s,t=c?10*Uu.defaultDistance+10*Uu.defaultDistance:0;return("vertical"===e?d[1]:d[0])-t}),[s,c,d]),x=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return Zu(b-10*(e.left-Uu.defaultDistance)-10*(e.right-Uu.defaultDistance))}),[s,b]),E=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return Zu(v-10*(e.top-Uu.defaultDistance)-10*(e.bottom-Uu.defaultDistance))}),[s,v]),w=s.form.scale,C=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return{left:Zu(10*e.left),right:Zu(10*e.right),top:Zu(10*e.top),bottom:Zu(10*e.bottom)}}),[s]),S=l().useMemo((()=>{const{form:{printerType:e}}=s,{left:t,right:n,top:r,bottom:a}=C,i=x+t+n,l=Uu.previewWidth-i<=0?0:(Uu.previewWidth-i)/2,o=Math.abs((1-w)*i/2);let c=0;return w>1&&(c=o>l?-1*l:-1*o),w<1&&(c=i-2*o>Uu.previewWidth?0:l>0?o:(Uu.previewWidth-(i-2*o))/2),{width:`${x}px`,height:"stylus"===e?"auto":E+"px",paddingLeft:`${t}px`,paddingRight:`${n}px`,paddingTop:`${r}px`,paddingBottom:`${a}px`,transform:`translateX(${c}px) scale(${w})`,opacity:g?0:1}}),[s,g,C,w,E,x]),N=(p.current.some((e=>/^<tr[^>]+type="page-break"[^>]+><\/tr>$/.test(e))),()=>{const e=a?.print?.leftLogo??"",t=a?.print?.rightLogo??"";return[`<tr style="height: ${Uu.logoHeight}px;">`,'<td colspan="8" align="left" style="vertical-align: top;">',e?`<img src="${e}" border="0" height="46" />`:"","</td>",'<td colspan="16" align="right" style="vertical-align: top;">',t?`<img src="${t}" border="0" height="46" />`:"","</td>","</tr>"].join("")}),I=()=>{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");var t,n;e.setAttribute("type","template-cols"),e.style.height="0",e.innerHTML=I().replace(/<tr[^>]+>/,"").replace(/<\/tr>/,""),t=e,(n=m.current.templateEl.children[0]).children[0]?n.insertBefore(t,n.children[0]):n.appendChild(t),e=null},R=()=>{const e=m.current.templateEl.children[0].children,t=[],n=[];for(let r=0;r<e.length;r++){if("template-cols"===e[r].getAttribute("type"))continue;const a=e[r].clientHeight;e[r].style.height=a+"px",n.push(a),t.push(e[r].outerHTML)}h.current=n,p.current=t},O=()=>{if(!p.current.length)return;const{form:{setting:e,printerType:t}}=s;if(r)return f.current.push([I(),N(),...p.current]);const n=e.fixedLogo?E-Uu.logoHeight:E;let a=[];if(f.current=[],"stylus"===t)f.current.push([I(),...e.fixedLogo?[N()]:[],...p.current]);else{let t=0;for(let r=0,i=h.current.length;r<i;r++){const l=p.current[r],o=h.current[r];e.fixedLogo||0!==r||(t+=Uu.logoHeight),t+=o,t<=n?a.push(l):(f.current.push([I(),...e.fixedLogo?[N()]:[],...a]),a=[],t=0,r-=1),r===i-1&&a.length&&f.current.push([I(),...e.fixedLogo?[N()]:[],...a])}}e.fixedLogo||f.current[0]?.splice(1,0,N());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>');i.setState({currentPage:1,totalPage:f.current.length}),k()},k=()=>{const{currentPage:e}=s;let t=`<table cellspacing="0" cellpadding="0" border="0" class="${m.current.templateEl.className}">`;t+=f.current[e-1]?.join("")??"",t+="</table>",m.current.previewEl.innerHTML=t,m.current.previewEl.parentNode.scrollTop=0},P=e=>{let t=`<table cellspacing="0" cellpadding="0" border="0" class="${m.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},L=()=>{const e=[];for(let t=0;t<p.current.length;t++)e[t]=p.current[t].replace(/\s+/g," ").replace(/(<td[^>]+>)\s+/,"$1").replace(/\s+(<\/td>)/,"$1");return"<table>"+N()+I()+e.join("")+"</table>"},A=async()=>{if("TABLE"!==m.current.templateEl?.tagName)return F();m.current.previewEl.innerHTML||(T(),await ne(0),R(),O(),y(!1))},_=async()=>{if("TABLE"!==m.current.templateEl?.tagName)return F();T(),await ne(0),R(),O(),y(!1),i.doPrint(P()),await ne(0),i.doClose()},F=()=>{me("Print","[PrintTemplate] 打印模板组件的根元素必须是 `table` 节点")},D=Ee("print-container"),H={[D]:!0,"no-visible":r};return l().createElement("div",{ref:u,className:xe()(H)},l().createElement(mt,{wrapperClassName:"spin",spinning:g,tip:"Loading..."},l().createElement("div",{className:"preview"},l().createElement("div",{className:"origin-template",style:{width:`${x}px`,marginLeft:`-${Math.floor(x/2)}px`}},n?.()),l().createElement("div",{className:"workspace",style:S}))))}));Ju.displayName="Container";const em=Ju;function tm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class nm extends i.Component{constructor(...e){super(...e),tm(this,"context",void 0),tm(this,"formRef",l().createRef()),tm(this,"createFormList",(()=>[{type:"DIVIDER",fieldName:"_1",label:p("qm.print.setPanel.printParameter")},{type:"SELECT",label:p("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:p("qm.print.setPanel.carbonPaper"),value:"241*280"}]}},{type:"RADIO",label:p("qm.print.setPanel.printDirection"),fieldName:"direction",options:{itemList:[{text:p("qm.print.setPanel.vertical"),value:"vertical"},{text:p("qm.print.setPanel.horizontal"),value:"horizontal"}]}},{type:"CHECKBOX",fieldName:"doubleSide",label:{type:"SELECT",fieldName:"doubleSideType",options:{itemList:[{text:p("qm.print.setPanel.autoDoublePrint"),value:"auto"},{text:p("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:p("qm.print.setPanel.fixedLogo"),fieldName:"fixedLogo",options:{trueValue:1,falseValue:0}},{type:"DIVIDER",fieldName:"_2",label:p("qm.print.setPanel.printMargin")},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.leftMargin"),fieldName:"disleft",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.rightMargin"),fieldName:"disright",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.topMargin"),fieldName:"distop",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.bottomMargin"),fieldName:"disbottom",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]}])),tm(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})})),tm(this,"getInitialExtra",(()=>({disleft:p("qm.print.setPanel.sizeUnit"),disright:p("qm.print.setPanel.sizeUnit"),distop:p("qm.print.setPanel.sizeUnit"),disbottom:p("qm.print.setPanel.sizeUnit")}))),tm(this,"state",{formList:this.createFormList()}),tm(this,"confirmHandle",(async()=>{const[e,t]=await 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())})),tm(this,"cancelHandle",(()=>{this.props.onClose()}))}render(){const{formList:e}=this.state;return l().createElement(l().Fragment,null,l().createElement(_u,{ref:this.formRef,items:e,initialValues:this.getInitialvalue(),initialExtras:this.getInitialExtra(),labelWidth:120,cols:2}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>this.cancelHandle(),style:{marginRight:8}},p("qm.dialog.close")),l().createElement(fe,{type:"primary",onClick:()=>this.confirmHandle()},p("qm.dialog.confirm"))))}}tm(nm,"contextType",o);const rm=nm;function am(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class im extends i.Component{constructor(...e){super(...e),am(this,"context",void 0),am(this,"provide",{$$preview:this}),am(this,"containRef",l().createRef()),am(this,"state",{visible:!1,form:{printerName:-1,printerType:this.props.defaultConfig?.printerType||"laser",copies:this.props.defaultConfig?.copies||1,scale:1,setting:{distance:{left:Uu.defaultDistance,right:Uu.defaultDistance,top:Uu.defaultDistance,bottom:Uu.defaultDistance},pageSize:"210*297",direction:this.props.defaultConfig?.direction||"vertical",doubleSide:0,doubleSideType:"auto",fixedLogo:0}},printPage:void 0,currentPage:1,totalPage:0}),am(this,"pageChangeHandle",(e=>{this.setState({currentPage:e},(()=>{this.containRef.current.createPreviewDom()}))})),am(this,"exportClickHandle",(()=>{this.doExport(this.containRef.current.createExportHtml())})),am(this,"printClickHandle",(async()=>{if(this.doPrint(this.containRef.current.createPrintHtml(this.state.printPage)),this.props.uniqueKey)try{const e={...this.state.form,printerName:this.printerItems.find((e=>e.value===this.state.form.printerName)).text};await Mi().setItem(this.printerKey,e),await this.savePrintConfig(this.printerKey,e)}catch(e){}})),am(this,"doClose",(()=>{this.props.onClose?.()})),am(this,"getPrintConfig",(async e=>{const t=this.context.global,n=t?.getComponentConfigApi;if(n)try{const t=await n({key:e});if(200===t.code)return t.data}catch(e){}})),am(this,"savePrintConfig",(async(e,t)=>{const n=this.context.global,r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}})),am(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 ')),am(this,"doPrint",(e=>{const t=Qu();if(!t)return;const{uniqueKey:n,closeAfterPrint:r}=this.props,{form:{setting:a,printerName:i,printerType:l,copies:o}}=this.state,{pageSize:s}=this,{defaultDistance:c}=Uu,{left:d,right:u,top:m,bottom:h}=a.distance;t.PRINT_INIT(n??Math.random().toString().slice(2)),t.SET_PRINTER_INDEX(i),t.SET_PRINT_COPIES(o),a.doubleSide&&("auto"===a.doubleSideType?(t.SET_PRINT_MODE("PRINT_DUPLEX",2),t.SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1)):t.SET_PRINT_MODE("DOUBLE_SIDED_PRINT",1)),t.SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW",1),"laser"===l&&("vertical"===a.direction&&t.SET_PRINT_PAGESIZE(1),"horizontal"===a.direction&&(t.SET_PRINT_PAGESIZE(2),t.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1))),"stylus"===l&&t.SET_PRINT_PAGESIZE(3,10*s[0],100*h*2,""),t.ADD_PRINT_TABLE(10*(m-c)+"mm",10*(d-c)+"mm",`RightMargin: ${10*(u-c)}mm`,`BottomMargin: ${"stylus"!==l?10*(h-c):0}mm`,this.createStyle()+e),t.On_Return=(e,t)=>{t?r&&this.doClose():R.message.error(p("qm.print.printError"))},t.PRINT()})),am(this,"doExport",(e=>{const t=Qu();if(!t)return;const{uniqueKey:n,closeAfterPrint:r}=this.props,{form:{setting:a}}=this.state;t.PRINT_INIT(n??Math.random().toString().slice(2)),t.On_Return=(e,t)=>{t?r&&this.doClose():R.message.error(p("qm.print.exportError"))},t.ADD_PRINT_TABLE(0,0,"RightMargin: 0","BottomMargin: 0",this.createStyle()+e),t.SET_SAVE_MODE("Orientation","vertical"===a.direction?1:2),t.SAVE_TO_FILE(`${c()().format("YYYYMMDDHHmmss")}.xlsx`)}))}get printerTypeItems(){return[{text:p("qm.print.laserPrinter"),value:"laser"},{text:p("qm.print.stylusPrinter"),value:"stylus"}]}get printerItems(){const e=Qu(),t=[{text:p("qm.print.defaultPrinter"),value:-1}];try{const n=e.GET_PRINTER_COUNT();for(let r=0;r<n;r++)t.push({text:e.GET_PRINTER_NAME(r),value:r})}catch(e){me("Print","[ClientPrint]: 请安装 LODOP 打印插件")}return t}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}`:""}async componentDidMount(){if(this.props.uniqueKey)try{let e=await Mi().getItem(this.printerKey);e||(e=await this.getPrintConfig(this.printerKey),(0,X.isPlainObject)(e)&&await Mi().setItem(this.printerKey,e)),(0,X.isPlainObject)(e)&&Object.keys(e).length&&(0,X.merge)(this.state.form,{...e,printerName:this.printerItems.find((t=>t.text===e.printerName))?.value??-1})}catch(e){}}render(){const{preview:e,templateRender:t}=this.props,{visible:n,form:r,currentPage:a,totalPage:i,printPage:o}=this.state,s=Ee("print-preview"),c={visible:n,title:p("qm.print.pageSetting"),width:"50%",loading:!1,containerStyle:{paddingBottom:"52px"},onClose:()=>{this.setState({visible:!1})}},d={[s]:!0};return e?l().createElement(l().Fragment,null,l().createElement("div",{className:xe()(d)},l().createElement("div",{className:"outer"},l().createElement("div",{className:"header"},l().createElement("span",null,p("qm.print.printer"),":",l().createElement(R.Select,{value:r.printerName,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{printerName:e}})))},style:{width:"120px"}},this.printerItems.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",null,p("qm.print.type"),":",l().createElement(R.Select,{value:r.printerType,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{printerType:e,setting:{pageSize:"stylus"===e?"241*280":"210*297"}}})))},style:{width:"120px"}},this.printerTypeItems.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",null,p("qm.print.copies"),":",l().createElement(R.InputNumber,{value:r.copies,min:1,precision:0,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{copies:e??1}})))},style:{width:"50px"}})),l().createElement("span",null,p("qm.print.printPage.0"),l().createElement(R.InputNumber,{value:o,min:1,max:i,precision:0,onChange:e=>{this.setState({printPage:e??void 0})},style:{width:"50px",marginLeft:"4px",marginRight:"4px"}}),p("qm.print.printPage.1")),l().createElement("span",null,l().createElement(R.Pagination,{size:"small",current:a,pageSize:1,total:i,onChange:this.pageChangeHandle})),l().createElement("span",null,l().createElement(fe,{type:"text",icon:l().createElement(we.SettingOutlined,null),className:"text-btn",onClick:()=>this.setState({visible:!0})},p("qm.print.setting"))),l().createElement("span",null,l().createElement(fe,{type:"text",icon:l().createElement(we.DownloadOutlined,null),className:"text-btn",onClick:()=>this.exportClickHandle()},p("qm.print.export"))),l().createElement("span",null,l().createElement(fe,{icon:l().createElement(we.PrinterOutlined,null),type:"primary",onClick:this.printClickHandle},p("qm.print.print")))),l().createElement("div",{className:"main"},l().createElement(Gu.Provider,{value:this.provide},l().createElement(em,{ref:this.containRef,templateRender:t,directPrint:!1}))),l().createElement("div",{className:"footer"},l().createElement("span",null,p("qm.print.scale"),":",l().createElement(R.Slider,{value:r.scale,step:.1,min:.5,max:1.5,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{scale:e}})))}}),l().createElement("em",{className:"scale-text"},`${Math.floor(100*r.scale)}%`)),l().createElement("span",null,p("qm.print.paper"),":",this.pageSize[0],"mm * ",this.pageSize[1],"mm"),l().createElement("span",null,p("qm.print.pageNumber"),":",p("qm.print.pagination",{currentPage:a,totalPage:i}))))),l().createElement(yn,c,l().createElement(rm,{setting:r.setting,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{setting:e}})))},onClose:()=>{this.setState({visible:!1})}}))):l().createElement(Gu.Provider,{value:this.provide},l().createElement(em,{ref:this.containRef,templateRender:t,directPrint:!0}))}}am(im,"contextType",o);const lm=im;function om(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class sm extends i.Component{constructor(...e){super(...e),om(this,"context",void 0),om(this,"previewRef",l().createRef()),om(this,"state",{visible:!1,loading:!1}),om(this,"clickHandle",(async()=>{this.setState({loading:!0});try{const e=await(this.props.click?.());if(this.setState({loading:!1}),"boolean"==typeof e&&!e)return;await this.DO_PRINT()}catch(e){}this.setState({loading:!1})})),om(this,"createRender",(()=>{const{visible:e}=this.state,{templateRender:t,uniqueKey:n,defaultConfig:r,preview:a,closeAfterPrint:i}=this.props,o={visible:e,title:p("qm.print.preview"),width:`${Uu.previewWidth}px`,loading:!1,onClose:()=>{this.setState({visible:!1})}},s={ref:this.previewRef,templateRender:t,uniqueKey:n,defaultConfig:r,preview:a,closeAfterPrint:i,onClose:()=>{this.setState({visible:!1})}};return a?l().createElement(yn,o,l().createElement(lm,s)):e?l().createElement(lm,s):null})),om(this,"DO_PRINT",(async()=>{const{preview:e}=this.props;await ne(0),this.setState({visible:!0}),await ne(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:n,type:r,disabled:a,shape:i}=this.props,o={size:t||this.context.size||"",type:r,shape:i,icon:n,loading:e,disabled:a,click:this.clickHandle};return l().createElement(l().Fragment,null,this.props.children&&l().createElement(fe,o,this.props.children),this.createRender())}}om(sm,"propTypes",{size:(e,t,n)=>{if(!xr(e[t]||""))return ue("Print","Invalid prop `"+t+"` supplied to `"+n+"`. Validation failed.")},templateRender:vr().elementType}),om(sm,"defaultProps",{preview:!0,type:"primary",icon:l().createElement(we.PrinterOutlined,null)}),om(sm,"contextType",o);const cm=sm;function dm(e){return e.ownerDocument?e.ownerDocument.defaultView:null}function um(e){const t=dm(e);return t?t.frameElement:null}function mm(e){const t=fm(e);return pm([e.getBoundingClientRect(),{top:t.borderTop,left:t.borderLeft,bottom:t.borderBottom,right:t.borderRight,width:0,height:0}])}function pm(e){return e.reduce(((e,t)=>null==e?t:{top:e.top+t.top,left:e.left+t.left,width:e.width,height:e.height,bottom:e.bottom+t.bottom,right:e.right+t.right}))}function hm(e,t){const n=um(e);if(n&&n!==t){const r=[e.getBoundingClientRect()];let a=n,i=!1;for(;a;){const e=mm(a);if(r.push(e),a=um(a),i)break;a&&dm(a)===t&&(i=!0)}return pm(r)}return e.getBoundingClientRect()}function fm(e){const t=window.getComputedStyle(e);return{borderLeft:parseInt(t.borderLeftWidth,10),borderRight:parseInt(t.borderRightWidth,10),borderTop:parseInt(t.borderTopWidth,10),borderBottom:parseInt(t.borderBottomWidth,10),marginLeft:parseInt(t.marginLeft,10),marginRight:parseInt(t.marginRight,10),marginTop:parseInt(t.marginTop,10),marginBottom:parseInt(t.marginBottom,10),paddingLeft:parseInt(t.paddingLeft,10),paddingRight:parseInt(t.paddingRight,10),paddingTop:parseInt(t.paddingTop,10),paddingBottom:parseInt(t.paddingBottom,10)}}function gm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const ym=Object.assign;class bm{constructor(e,t){gm(this,"node",void 0),gm(this,"border",void 0),gm(this,"padding",void 0),gm(this,"content",void 0),this.node=e.createElement("div"),this.border=e.createElement("div"),this.padding=e.createElement("div"),this.content=e.createElement("div"),this.border.style.borderColor=wm.border,this.padding.style.borderColor=wm.padding,this.content.style.backgroundColor=wm.background,ym(this.node.style,{borderColor:wm.margin,pointerEvents:"none",position:"fixed"}),this.node.style.zIndex="10000000",this.node.appendChild(this.border),this.border.appendChild(this.padding),this.padding.appendChild(this.content),t.appendChild(this.node)}remove(){this.node.parentNode&&this.node.parentNode.removeChild(this.node)}update(e,t){Em(t,"margin",this.node),Em(t,"border",this.border),Em(t,"padding",this.padding),ym(this.content.style,{height:e.height-t.borderTop-t.borderBottom-t.paddingTop-t.paddingBottom+"px",width:e.width-t.borderLeft-t.borderRight-t.paddingLeft-t.paddingRight+"px"}),ym(this.node.style,{top:e.top-t.marginTop+"px",left:e.left-t.marginLeft+"px"})}}class vm{constructor(e,t){gm(this,"tip",void 0),gm(this,"nameSpan",void 0),gm(this,"dimSpan",void 0),this.tip=e.createElement("div"),ym(this.tip.style,{display:"flex",flexFlow:"row nowrap",backgroundColor:"#333740",borderRadius:"2px",fontFamily:'"SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace',fontWeight:"bold",padding:"3px 5px",pointerEvents:"none",position:"fixed",fontSize:"12px",whiteSpace:"nowrap"}),this.nameSpan=e.createElement("span"),this.tip.appendChild(this.nameSpan),ym(this.nameSpan.style,{color:"#ee78e6",borderRight:"1px solid #aaaaaa",paddingRight:"0.5rem",marginRight:"0.5rem"}),this.dimSpan=e.createElement("span"),this.tip.appendChild(this.dimSpan),ym(this.dimSpan.style,{color:"#d7d7d7"}),this.tip.style.zIndex="10000000",t.appendChild(this.tip)}remove(){this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip)}updateText(e,t,n){this.nameSpan.textContent=e,this.dimSpan.textContent=Math.round(t)+"px × "+Math.round(n)+"px"}updatePosition(e,t){const n=this.tip.getBoundingClientRect(),r=function(e,t,n){const r=Math.max(n.height,20),a=Math.max(n.width,60);let i;i=e.top+e.height+r<=t.top+t.height?e.top+e.height<t.top+0?t.top+5:e.top+e.height+5:e.top-r<=t.top+t.height?e.top-r-5<t.top+5?t.top+5:e.top-r-5:t.top+t.height-r-5;let l=e.left+5;return e.left<t.left&&(l=t.left+5),e.left+a>t.left+t.width&&(l=t.left+t.width-a-5),i+="px",l+="px",{style:{top:i,left:l}}}(e,t,{width:n.width,height:n.height});ym(this.tip.style,r.style)}}class xm{constructor(){gm(this,"window",void 0),gm(this,"tipBoundsWindow",void 0),gm(this,"container",void 0),gm(this,"tip",void 0),gm(this,"rects",void 0);const e=window;this.window=e;const t=window;this.tipBoundsWindow=t;const n=e.document;this.container=n.createElement("div"),this.container.style.zIndex="10000000",this.tip=new vm(n,this.container),this.rects=[],n.body.appendChild(this.container)}remove(){this.tip.remove(),this.rects.forEach((e=>{e.remove()})),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}inspect(e,t){const n=e.filter((e=>e.nodeType===Node.ELEMENT_NODE));for(;this.rects.length>n.length;){const e=this.rects.pop();e?.remove()}if(0===n.length)return;for(;this.rects.length<n.length;)this.rects.push(new bm(this.window.document,this.container));const r={top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,left:Number.POSITIVE_INFINITY};n.forEach(((e,t)=>{const n=hm(e,this.window),a=fm(e);r.top=Math.min(r.top,n.top-a.marginTop),r.right=Math.max(r.right,n.left+n.width+a.marginRight),r.bottom=Math.max(r.bottom,n.top+n.height+a.marginBottom),r.left=Math.min(r.left,n.left-a.marginLeft),this.rects[t].update(n,a)})),t||(t=n[0].nodeName.toLowerCase(),n[0]),this.tip.updateText(t,r.right-r.left,r.bottom-r.top);const a=hm(this.tipBoundsWindow.document.documentElement,this.window);this.tip.updatePosition({top:r.top,left:r.left,height:r.bottom-r.top,width:r.right-r.left},{top:a.top+this.tipBoundsWindow.scrollY,left:a.left+this.tipBoundsWindow.scrollX,height:this.tipBoundsWindow.innerHeight,width:this.tipBoundsWindow.innerWidth})}}function Em(e,t,n){ym(n.style,{borderTopWidth:e[t+"Top"]+"px",borderLeftWidth:e[t+"Left"]+"px",borderRightWidth:e[t+"Right"]+"px",borderBottomWidth:e[t+"Bottom"]+"px",borderStyle:"solid"})}const wm={background:"rgba(120, 170, 210, 0.7)",padding:"rgba(77, 200, 0, 0.3)",margin:"rgba(255, 155, 0, 0.3)",border:"rgba(255, 200, 50, 0.3)"};let Cm=null,Sm=null;function Nm(){null!=window.document&&(Cm=null,null!==Sm&&(Sm.remove(),Sm=null))}function Im(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Tm{constructor(e){Im(this,"_isRunning",void 0),Im(this,"_selectIgnore",void 0),Im(this,"_lastHoveredNode",null),Im(this,"excludeSelectors",void 0),Im(this,"onSelect",void 0),Im(this,"iframesListeningTo",new Set),Im(this,"onClick",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"onMouseEvent",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"onPointerDown",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation(),this.selectFiberForNode(this.getEventTarget(e)))})),Im(this,"onPointerMove",(e=>{e.preventDefault(),e.stopPropagation();const t=this.getEventTarget(e);if(this._lastHoveredNode!==t){if(this._lastHoveredNode=t,this.excludeSelectors.some((e=>Ue(t,window.document.querySelector(e)))))return this._selectIgnore=!0,Nm();if(this._selectIgnore=!1,"IFRAME"===t.tagName){const e=t;try{if(!this.iframesListeningTo.has(e)){const t=e.contentWindow;this.registerListenersOnWindow(t),this.iframesListeningTo.add(e)}}catch(e){}}var n;n=[t],null!=window.document?(null!==Cm&&clearTimeout(Cm),null!=n&&(null===Sm&&(Sm=new xm),Sm.inspect(n,null))):null!=n&&null!=n[0]&&console.error("showNativeHighlight",n[0])}})),Im(this,"onPointerUp",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"selectFiberForNode",(0,X.throttle)((e=>{this._selectIgnore||this.onSelect?.(e,function(e){if(!(e instanceof Element))return"";const t=document.documentElement;let n=e;const r=[];for(;n!==t&&null!==n;){let e=n.tagName.toLowerCase();const t=/(?:\b|\w+-)(actived?|select(ed)?|focus(ed)?|open(ed)?)$/;for(let e=0,r=Array.from(n.classList).reverse();e<r.length;e++)t.test(r[e])&&n.classList.remove(r[e]);if(n.id&&/^rc-\w+/.test(n.id)&&n.removeAttribute("id"),n.id)e+=`#${n.id}`;else{const t=Array.from(n.parentElement.children).filter((e=>e.tagName===n.tagName)),r=n.className.trim();if(t.filter((e=>e.className.includes(r))).length<=1){if(r){const t=r.split(/\s+/);let n="";for(let e=0;e<t.length;e++)/^ant-col-\d+$/.test(t[e])||(n+=`.${t[e]}`);e+=n}}else n.getAttribute("name")?e+=`[name=${n.getAttribute("name")}]`:e+=`:nth-of-type(${t.indexOf(n)+1})`}n.nodeType!==Node.TEXT_NODE&&r.unshift(e),n=n.parentElement}return r.join(" > ")}(e))}),200,{leading:!1})),this.excludeSelectors=e.excludeSelectors||[],this.onSelect=e.onSelect}startHandle(){this.startInspectingNative()}stopHandle(){this.stopInspectingNative()}startInspectingNative(){this._isRunning||(this.registerListenersOnWindow(window),this._isRunning=!0)}stopInspectingNative(){Nm(),this.removeListenersOnWindow(window),this.iframesListeningTo.forEach((function(e){try{this.removeListenersOnWindow(e.contentWindow)}catch(e){}})),this.iframesListeningTo=new Set,this._isRunning=!1}registerListenersOnWindow(e){e&&"function"==typeof e.addEventListener&&(e.addEventListener("click",this.onClick,!0),e.addEventListener("mousedown",this.onMouseEvent,!0),e.addEventListener("mouseover",this.onMouseEvent,!0),e.addEventListener("mouseup",this.onMouseEvent,!0),e.addEventListener("pointerdown",this.onPointerDown,!0),e.addEventListener("pointermove",this.onPointerMove,!0),e.addEventListener("pointerup",this.onPointerUp,!0))}removeListenersOnWindow(e){e&&"function"==typeof e.removeEventListener&&(e.removeEventListener("click",this.onClick,!0),e.removeEventListener("mousedown",this.onMouseEvent,!0),e.removeEventListener("mouseover",this.onMouseEvent,!0),e.removeEventListener("mouseup",this.onMouseEvent,!0),e.removeEventListener("pointerdown",this.onPointerDown,!0),e.removeEventListener("pointermove",this.onPointerMove,!0),e.removeEventListener("pointerup",this.onPointerUp,!0))}getEventTarget(e){return e.composed?e.composedPath()[0]:e.target}}function Rm(e){return document.querySelector(e)}const Om=e=>{const{action:t,onConfirm:n,onCancel:r,onFinish:a}=e,{t:i}=U();return l().createElement(l().Fragment,null,l().createElement("div",{style:{height:100}},i("qm.table.config.emptyText")),l().createElement(be,{style:{width:"100%",justifyContent:"flex-end"}},l().createElement(fe,{size:"small",onClick:()=>r?.()},i("qm.guideTracker.closeButton")),l().createElement(fe,{size:"small",onClick:()=>n?.()},i("add"===t?"qm.guideTracker.addButton":"qm.guideTracker.editButton")),l().createElement(fe,{size:"small",onClick:()=>a?.()},i("qm.guideTracker.finishButton"))))},km={left:"50%",top:"50%",width:1,height:1},Pm=l().forwardRef(((e,t)=>{const{open:n,current:r,defaultCurrent:a,steps:i=[],placement:o="bottom",control:s=!0,overlayClassName:c,overlayStyle:d,destroyOnHide:u,contentRender:m,zIndex:p,helper:h={},selectFilter:f=e=>e,onSelect:g,onChange:y,onClose:b,onFinish:v}=e,{t:x}=U(),E=l().useRef(),w=l().useRef(i.length),[C,S]=Ja(0,{value:r,defaultValue:a}),[N,I]=Ja(void 0,{value:n,postState:e=>e??!1}),[T,O]=Ja(1051,{value:p,defaultValue:p}),[k,P]=l().useState({}),[L,A]=l().useState(!1),[_,F]=l().useState(N),[D,H]=l().useState(!1),[q,$]=Du(k.node,!!n),[M,K]=l().useState(22),z=l().useRef(!1),j=l().useMemo((()=>C>=i.length?"add":"edit"),[C,i]),V=l().useMemo((()=>`${C+1} / ${i.length}`),[C,i]);l().useLayoutEffect((()=>{E.current=new Tm({excludeSelectors:[".qm-guide-tracker-control"],onSelect:(e,t)=>{t=f(t),P({id:ir(),node:e,path:t}),S(w.current),A(!0),B(),g?.(t,e)}})}),[]),l().useEffect((()=>(N?W():B(),N?setTimeout((()=>F(!0)),16):F(!1),()=>{B()})),[N]),l().useEffect((()=>{w.current=i.length}),[i]);const W=()=>{E.current.startHandle()},B=()=>{E.current.stopHandle()},G=e=>{e.stopPropagation(),e.preventDefault()};l().useImperativeHandle(t,(()=>({OPEN:()=>I(!0),CLOSE:()=>I(!1),GET_CURRENT_STEP:()=>({current:C,selector:k.path})})));const Y=Ee("guide-tracker"),Q=[{[`${Y}-primary`]:!0}],Z=El({arrowPointAtCenter:!1,autoAdjustOverflow:!0,offset:5,arrowWidth:16,borderRadius:8});return l().createElement(l().Fragment,null,l().createElement(_l(),{open:N&&L,autoLock:!0},l().createElement(Cl(),{zIndex:T,builtinPlacements:Z,popupPlacement:o,popupVisible:N&&L,popupClassName:xe()(Q,c),popupStyle:d,prefixCls:Y,popup:()=>{const e=()=>{A(!1),W()};return l().createElement("div",{className:`${Y}-content`},l().createElement("div",{className:`${Y}-inner`},l().createElement(we.CloseOutlined,{className:`${Y}-close`,onClick:()=>{b?.(C),e()}}),l().createElement(R.Dropdown,{open:D,trigger:["click"],dropdownRender:()=>i.length?l().createElement("div",{className:"ant-dropdown-menu step-list"},l().createElement(ua.ReactSortable,{itemKey:"id",handle:".handle",tag:"ul",animation:200,list:i,setList:e=>{const t=e.map((e=>e.id)),n=i.map((e=>e.id));if((0,X.isEqual)(t,n))return;const r=t.findIndex((e=>e===k.id)),a=-1!==r?r:C;S(a),y?.(gr(e),a)}},i.map(((e,t)=>l().createElement("li",{key:t,className:xe()("item",{actived:e.id===k.id})},l().createElement(we.HolderOutlined,{className:"handle",title:x("qm.form.draggable")}),l().createElement("span",{className:"box"},l().createElement("span",{className:"title",title:e.title,onClick:()=>{t!==C&&(P({id:e.id,node:Rm(e.selector),path:e.selector}),S(t),K(22===M?M+1:M-1),y?.(i,t))}},e.title),l().createElement(R.Popconfirm,{title:x("qm.button.confirmTitle"),zIndex:T+1,onConfirm:()=>{const n=i.filter((t=>t.id!==e.id)),r=t===C;let a=t<=C?C-1:C;if(a=a<0?0:a,a=a>n.length?n.length:a,r&&n[a]){const{id:e,selector:t}=n[a];P({id:e,node:Rm(t),path:t})}S(a),y?.(n,a)}},l().createElement(we.CloseOutlined,{className:"close-icon"})))))))):l().createElement(l().Fragment,null),overlayClassName:`${Y}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:180,zIndex:T},onOpenChange:e=>H(e)},l().createElement(we.MenuOutlined,{className:xe()(`${Y}-close`,"menu-icon"),style:{width:M}})),h.content&&l().createElement(R.Popover,{placement:"bottom",overlayStyle:{width:360,zIndex:T},content:h.content,title:h.title},l().createElement(we.QuestionCircleOutlined,{className:xe()(`${Y}-close`,"help-icon")})),l().createElement("div",{className:"panel-label"},l().createElement("span",{className:"title"},x("qm.guideTracker.label")),l().createElement("span",{className:"step"},x("qm.guideTracker.currentStep"),V)),m?m({id:k.id,selector:k.path,actionStatus:j,DO_CLOSE:e},C):l().createElement(Om,{action:j,onConfirm:()=>{y?.("add"===j?[...i,{id:k.id,selector:k.path,title:"Guide Title"}]:[...i],C),e()},onCancel:()=>{b?.(C),e()},onFinish:()=>{e(),b?.(C),v?.()}})))},arrow:!0,forceRender:!1,destroyPopupOnHide:u},l().createElement("div",{className:xe()(`${Y}-target-placeholder`),style:{...q||km,position:"fixed",zIndex:T-1,backgroundColor:"rgba(120, 170, 210, 0.7)"},onMouseDown:G,onClick:G}))),s&&l().createElement(_l(),{open:_},l().createElement(Mu,{zIndex:T,prefixCls:Y,onPause:()=>{z.current=L,A(!1),B()},onPlay:()=>{z.current?A(!0):W()}})))}));Pm.displayName="QmGuideTracker";const Lm=Pm,Am=e=>{const{content:t,image:n,width:r,height:a,font:o={},gap:s=[100,100],offset:c=[50,50],rotate:d=-22,zIndex:u=9,alpha:m=1,antiTamper:p=!0,grayscale:h,className:f,style:g}=e,y=l().useRef(null),b=l().useRef(new Map),v=o.fontSize??16,x=o.fontWeight??"normal",E=o.fontStyle??"normal",w=o.fontFamily??"sans-serif",C=o.color??"rgba(0, 0, 0, 0.15)",S=o.textAlign??"center",N=Array.isArray(t)?t:[t],I=s[0],T=s[1],R=I/2,O=T/2,k=c[0]??R,P=c[1]??O,L=l().useMemo((()=>{const e=k-R,t=P-O;return{position:"absolute",left:e>0?`${e}px`:0,top:t>0?`${t}px`:0,width:e>0?`calc(100% - ${e}px)`:"100%",height:t>0?`calc(100% - ${t}px)`:"100%",pointerEvents:"none",backgroundRepeat:"repeat",backgroundPosition:`${e>0?0:e}px ${t>0?0:t}px`,zIndex:u}}),[R,O,k,P,u]),A=()=>{const e=document.createElement("canvas"),t=e.getContext("2d");if(!t)return;const i=(e=>{if(!e)return 1;const t=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/t})(t),[l,o]=(e=>{let t=120,i=64;if(!n&&e.measureText){e.font=`${v}px ${w}`;const n=N.map((t=>e.measureText(t).width));t=Math.ceil(Math.max(...n)),i=v*N.length+3*(N.length-1)}return[r??t,a??i]})(t),s=l*i,c=o*i,u=(I+l)*i,p=(T+o)*i,f=I/2*i,g=T/2*i,R=u/2,O=p/2,k=2*(I+l);e.width=2*u,e.height=2*p,t.globalAlpha=m,t.save(),t.translate(R,O),t.rotate(Math.PI/180*d),t.translate(-R,-O);const P=()=>{t.restore(),t.drawImage(e,0,0,u,p,u,p,u,p),h&&(e=>{const t=e.getContext("2d");if(!t)return;const n=t.getImageData(0,0,e.width,e.height),{data:r}=n;for(let e=0;e<r.length;e+=4){const t=(r[e]+r[e+1]+r[e+2])/3;r[e]=t,r[e+1]=t,r[e+2]=t}t.putImageData(n,0,0)})(e),((e,t)=>{if(y.current){const n=b.current.get(y.current);n&&(y.current.contains(n)&&y.current.removeChild(n),b.current.delete(y.current));const r=document.createElement("div");r.setAttribute("style",(e=>Object.entries(e).map((([e,t])=>{return`${n=e,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}:${t}`;var n})).join(";"))({...L,backgroundImage:`url('${e}')`,backgroundSize:`${t}px`})),y.current?.append(r),b.current.set(y.current,r)}})(e.toDataURL(),k)},A=()=>{const e=Number(v)*i;t.font=`${E} normal ${x} ${e}px/${o}px ${w}`,t.fillStyle=C,t.textAlign=S,t.textBaseline="top",t.translate(s/2,0),N.forEach(((n,r)=>{t.fillText(n??"",f,g+r*(e+3*i))})),P()};if(n){const e=new Image;e.onload=()=>{t.drawImage(e,f,g,s,c),P()},e.onerror=()=>{A()},e.crossOrigin="anonymous",e.referrerPolicy="no-referrer",e.src=n}else A()},_=e=>Array.from(b.current.values()).includes(e);l().useEffect((()=>{A()}),[t,n,r,a,o,s,c,d,u,m,p,h]),function(e,t,n={}){const r=window&&"MutationObserver"in window,a=i.useRef(),l=()=>{a.current&&(a.current.disconnect(),a.current=void 0)};i.useLayoutEffect((()=>(l(),r&&e.current&&(a.current=new MutationObserver(t),a.current.observe(e.current,n)),()=>l())),[e])}(y,(e=>{if(p)for(const t of e){const e=Array.from(t.removedNodes).some((e=>_(e))),n="attributes"===t.type&&_(t.target);if(e||n){A();break}}}),{attributes:!0,childList:!0,characterData:!0,subtree:!0});const F=Ee("watermark");return l().createElement("div",{ref:y,className:xe()(F,f),style:{position:"relative",...g}},e.children)},_m=new Map,Fm=new WeakMap;let Dm=0;function Hm(e,t,n={},r=undefined){if(void 0===window.IntersectionObserver&&void 0!==r){const a=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:"number"==typeof n.threshold?n.threshold:0,time:0,boundingClientRect:a,intersectionRect:a,rootBounds:a}),()=>{}}const{id:a,observer:i,elements:l}=function(e){const t=function(e){return Object.keys(e).sort().filter((t=>void 0!==e[t])).map((t=>{return`${t}_${"root"===t?(n=e.root,n?(Fm.has(n)||(Dm+=1,Fm.set(n,Dm.toString())),Fm.get(n)):"0"):e[t]}`;var n})).toString()}(e);let n=_m.get(t);if(!n){const r=new Map;let a=[];const i=new IntersectionObserver((t=>{t.forEach((t=>{const n=t.isIntersecting&&a.some((e=>t.intersectionRatio>=e));e.trackVisibility&&void 0===t.isVisible&&(t.isVisible=n),r.get(t.target)?.forEach((e=>{e(n,t)}))}))}),e);a=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:r},_m.set(t,n)}return n}(n),o=l.get(e)||[];return l.has(e)||l.set(e,o),o.push(t),i.observe(e),function(){o.splice(o.indexOf(t),1),0===o.length&&(l.delete(e),i.unobserve(e)),0===l.size&&(i.disconnect(),_m.delete(a))}}const qm=e=>{const{forceRender:t,height:n,placeholder:r=null,unmountIfInvisible:a,className:i,style:o}=e,{ref:s,inView:c,entry:d}=(({root:e,rootMargin:t,threshold:n,triggerOnce:r,fallbackInView:a,trackVisibility:i,skip:o,delay:s,onChange:c}={})=>{const[d,u]=l().useState(null),[m,p]=l().useState({inView:!1,entry:void 0}),h=l().useRef(c);l().useEffect((()=>{if(o||!d)return;let l;return l=Hm(d,((e,t)=>{p({inView:e,entry:t}),h.current?.(e,t),t.isIntersecting&&r&&l&&(l(),l=void 0)}),{root:e,rootMargin:t,threshold:n,trackVisibility:i,delay:s},a),()=>{l&&l()}}),[Array.isArray(n)?n.toString():n,d,e,t,r,o,i,a,s]);const f=m.entry?.target,g=l().useRef();d||!f||r||o||g.current===f||(g.current=f,p({inView:!1,entry:void 0}));const y=[u,m.inView,m.entry];return y.ref=y[0],y.inView=y[1],y.entry=y[2],y})(Object.assign({},e,{triggerOnce:!a}));l().useEffect((()=>{n||me("LazyLoad","height 是必要参数,需要设定组件的高度值!")}),[]);const u=Ee("lazy-load"),m={[u]:!0};return l().createElement("div",{ref:s,className:xe()(m,i),style:o},t||c?e.children:l().createElement("div",{className:"placeholder",style:{height:n}},r))},$m=require("html2canvas");var Mm=r.n($m);function Km(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class zm{constructor(e,t,n,r){if(Km(this,"x",void 0),Km(this,"y",void 0),Km(this,"pressure",void 0),Km(this,"time",void 0),isNaN(e)||isNaN(t))throw new Error(`Point is invalid: (${e}, ${t})`);this.x=+e,this.y=+t,this.pressure=n||0,this.time=r||Date.now()}distanceTo(e){return Math.sqrt(Math.pow(this.x-e.x,2)+Math.pow(this.y-e.y,2))}equals(e){return this.x===e.x&&this.y===e.y&&this.pressure===e.pressure&&this.time===e.time}velocityFrom(e){return this.time!==e.time?this.distanceTo(e)/(this.time-e.time):0}}class jm{static fromPoints(e,t){const n=this.calculateControlPoints(e[0],e[1],e[2]).c2,r=this.calculateControlPoints(e[1],e[2],e[3]).c1;return new jm(e[1],n,r,e[2],t.start,t.end)}static calculateControlPoints(e,t,n){const r=e.x-t.x,a=e.y-t.y,i=t.x-n.x,l=t.y-n.y,o=(e.x+t.x)/2,s=(e.y+t.y)/2,c=(t.x+n.x)/2,d=(t.y+n.y)/2,u=Math.sqrt(r*r+a*a),m=Math.sqrt(i*i+l*l),p=m/(u+m),h=c+(o-c)*p,f=d+(s-d)*p,g=t.x-h,y=t.y-f;return{c1:new zm(o+g,s+y),c2:new zm(c+g,d+y)}}constructor(e,t,n,r,a,i){this.startPoint=e,this.control2=t,this.control1=n,this.endPoint=r,this.startWidth=a,this.endWidth=i}length(){let e,t,n=0;for(let r=0;r<=10;r+=1){const a=r/10,i=this.point(a,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),l=this.point(a,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(r>0){const r=i-e,a=l-t;n+=Math.sqrt(r*r+a*a)}e=i,t=l}return n}point(e,t,n,r,a){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*r*(1-e)*e*e+a*e*e*e}}function Vm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Wm{constructor(e,t){Vm(this,"canvas",void 0),Vm(this,"ctx",void 0),Vm(this,"textInput",void 0),Vm(this,"width",320),Vm(this,"height",200),Vm(this,"ratio",Math.max(window.devicePixelRatio||1,1)),Vm(this,"penColor","rgba(0,0,0,1)"),Vm(this,"backgroundColor","rgba(0,0,0,0)"),Vm(this,"canAddHistory",!1),Vm(this,"mode",void 0),Vm(this,"openSmooth",!0),Vm(this,"dotSize",0),Vm(this,"throttle",16),Vm(this,"minDistance",5),Vm(this,"velocityFilterWeight",.7),Vm(this,"compositeOperation","source-over"),Vm(this,"minWidth",.5),Vm(this,"maxWidth",2.5),Vm(this,"fontSize",16),Vm(this,"eraserSize",20),Vm(this,"lineHeight",1.25),Vm(this,"degreeOfBlur",5),Vm(this,"textInputPos",{x:0,y:0}),Vm(this,"onStart",(()=>{})),Vm(this,"onEnd",(()=>{})),Vm(this,"_drawingStroke",!1),Vm(this,"_lastPoints",[]),Vm(this,"_data",[]),Vm(this,"_historyList",[]),Vm(this,"_lastVelocity",0),Vm(this,"_lastWidth",0),Vm(this,"_strokeMoveUpdate",void 0),Vm(this,"setCanvasSize",(()=>{this.canvas.style.height=`${this.height}px`,this.canvas.style.width=`${this.width}px`,this.canvas.height=this.height*this.ratio,this.canvas.width=this.width*this.ratio,1!==this.ratio&&this.ctx.scale(this.ratio,this.ratio)})),Vm(this,"setTextInput",(()=>{this.openSmooth||(this.textInput.setAttribute("class","signature__text-input"),this.textInput.setAttribute("contentEditable","true"),this.textInput.setAttribute("spellCheck","false"),this.canvas.parentNode.appendChild(this.textInput))})),Vm(this,"isTouchEvent",(e=>"touches"in e)),Vm(this,"addListener",(()=>{this.removeListener(),this.canvas.style.touchAction="none",this.canvas.style.userSelect="none",("ontouchstart"in window||navigator.maxTouchPoints)&&(this.canvas.addEventListener("touchstart",this.onDrawStart,{passive:!1}),this.canvas.addEventListener("touchmove",this.onDrawMove,{passive:!1}),document.addEventListener("touchcancel",this.onDrawEnd,{passive:!1}),document.addEventListener("touchend",this.onDrawEnd,{passive:!1})),this.canvas.addEventListener("mousedown",this.onDrawStart),this.canvas.addEventListener("mousemove",this.onDrawMove),document.addEventListener("mouseup",this.onDrawEnd),this.textInput.addEventListener("blur",this.onInputBlur)})),Vm(this,"removeListener",(()=>{this.canvas.style.touchAction="auto",this.canvas.style.userSelect="auto",this.canvas.removeEventListener("touchstart",this.onDrawStart),this.canvas.removeEventListener("touchmove",this.onDrawMove),document.removeEventListener("touchend",this.onDrawEnd),document.removeEventListener("touchcancel",this.onDrawEnd),this.canvas.removeEventListener("mousedown",this.onDrawStart),this.canvas.removeEventListener("mousemove",this.onDrawMove),document.removeEventListener("mouseup",this.onDrawEnd),this.textInput.removeEventListener("blur",this.onInputBlur)})),Vm(this,"_isLeftButtonPressed",((e,t)=>this.isTouchEvent(e)?!!e.touches.length:t?1===e.buttons:!(1&~e.buttons))),Vm(this,"_pointerEventToSignatureEvent",(e=>({event:e,type:e.type,x:this.isTouchEvent(e)?e.touches[0]?.clientX:e.clientX,y:this.isTouchEvent(e)?e.touches[0]?.clientY:e.clientY,pressure:"pressure"in e?e.pressure:0}))),Vm(this,"_getPointGroupOptions",(e=>({penColor:e&&"penColor"in e?e.penColor:this.penColor,dotSize:e&&"dotSize"in e?e.dotSize:this.dotSize,minWidth:e&&"minWidth"in e?e.minWidth:this.minWidth,maxWidth:e&&"maxWidth"in e?e.maxWidth:this.maxWidth,velocityFilterWeight:e&&"velocityFilterWeight"in e?e.velocityFilterWeight:this.velocityFilterWeight,compositeOperation:e&&"compositeOperation"in e?e.compositeOperation:this.compositeOperation}))),Vm(this,"_strokeBegin",(e=>{this._drawingStroke=!0;const t=this._getPointGroupOptions(),n={...t,points:[]};this._data.push(n),this._reset(t),this._strokeUpdate(e,!1)})),Vm(this,"_strokeUpdate",((e,t=!0)=>{if(!this._drawingStroke)return;if(0===this._data.length)return void this._strokeBegin(e);const n=this._createPoint(e.x,e.y,e.pressure),r=this._data[this._data.length-1],a=r.points,i=a.length>0&&a[a.length-1],l=!!i&&n.distanceTo(i)<=this.minDistance,o=this._getPointGroupOptions(r);if(!i||!i||!l){const e=this._addPoint(n,o);t&&(i?e&&this._drawCurve(e,o):this._drawDot(n,o)),a.push({time:n.time,x:n.x,y:n.y,pressure:n.pressure})}})),Vm(this,"_strokeEnd",((e,t=!1)=>{this._drawingStroke&&(t&&this._strokeUpdate(e),this._drawingStroke=!1)})),Vm(this,"_reset",(e=>{this._lastPoints=[],this._lastVelocity=0,this._lastWidth=(e.minWidth+e.maxWidth)/2,this.ctx.fillStyle=e.penColor,this.ctx.globalCompositeOperation=e.compositeOperation})),Vm(this,"_drawDot",((e,t)=>{const n=this.ctx,r=t.dotSize>0?t.dotSize:(t.minWidth+t.maxWidth)/2;n.beginPath(),this._drawCurveSegment(e.x,e.y,r),n.closePath(),n.fillStyle=t.penColor,n.fill()})),Vm(this,"_drawCurve",((e,t)=>{const n=this.ctx,r=e.endWidth-e.startWidth,a=2*Math.ceil(e.length());n.beginPath(),n.fillStyle=t.penColor;for(let n=0;n<a;n+=1){const i=n/a,l=i*i,o=l*i,s=1-i,c=s*s,d=c*s;let u=d*e.startPoint.x;u+=3*c*i*e.control1.x,u+=3*s*l*e.control2.x,u+=o*e.endPoint.x;let m=d*e.startPoint.y;m+=3*c*i*e.control1.y,m+=3*s*l*e.control2.y,m+=o*e.endPoint.y;const p=Math.min(e.startWidth+o*r,t.maxWidth);this._drawCurveSegment(u,m,p)}n.closePath(),n.fill()})),Vm(this,"_drawCurveSegment",((e,t,n)=>{const r=this.ctx;r.moveTo(e,t),r.arc(e,t,n,0,2*Math.PI,!1)})),Vm(this,"_createPoint",((e,t,n)=>{const r=this.canvas.getBoundingClientRect();return new zm(e-r.left,t-r.top,n,(new Date).getTime())})),Vm(this,"_createPointByEvent",(e=>this._createPoint(e.x,e.y,e.pressure))),Vm(this,"_addPoint",((e,t)=>{const{_lastPoints:n}=this;if(n.push(e),n.length>2){3===n.length&&n.unshift(n[0]);const e=this._calculateCurveWidths(n[1],n[2],t),r=jm.fromPoints(n,e);return n.shift(),r}return null})),Vm(this,"_strokeWidth",((e,t)=>Math.max(t.maxWidth/(e+1),t.minWidth))),Vm(this,"_calculateCurveWidths",((e,t,n)=>{const r=n.velocityFilterWeight*t.velocityFrom(e)+(1-n.velocityFilterWeight)*this._lastVelocity,a=this._strokeWidth(r,n),i={end:a,start:this._lastWidth};return this._lastVelocity=r,this._lastWidth=a,i})),Vm(this,"onDrawStart",(e=>{e.preventDefault(),this._isLeftButtonPressed(e,!0)&&!this._drawingStroke&&(this._strokeBegin(this._pointerEventToSignatureEvent(e)),this.ctx.strokeStyle=this.penColor,this.ctx.lineWidth=this.maxWidth,"line"===this.mode&&this.createPencil(e),"eraser"===this.mode&&this.createEraser(e),"text"===this.mode&&this.createTextInput(e),this.onStart?.(e))})),Vm(this,"onDrawMove",(e=>{e.preventDefault(),"text"!==this.mode&&(this._isLeftButtonPressed(e,!0)&&this._drawingStroke?window.requestAnimationFrame?window.requestAnimationFrame((()=>this.drawHandler(e))):this.drawHandler(e):this._strokeEnd(this._pointerEventToSignatureEvent(e)))})),Vm(this,"onDrawEnd",(e=>{this._isLeftButtonPressed(e)||(this._strokeEnd(this._pointerEventToSignatureEvent(e)),"text"!==this.mode&&this.addHistory(),this.onEnd?.(e))})),Vm(this,"onInputBlur",(e=>{this.textInput.classList.remove("show"),this.drawHandler(e),this.textInput.innerText="",this.addHistory()})),Vm(this,"drawHandler",(e=>{switch(this.mode){case"line":this.drawLine(e);break;case"square":this.drawSquare(e);break;case"round":this.drawRound(e);break;case"arrow":this.drawArrow(e);break;case"mosaic":this.drawMosaic(e);break;case"text":this.drawText(e);break;case"eraser":this.drawEraser(e)}this.canAddHistory=!0})),Vm(this,"drawSquare",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.setLastHistory(),this.ctx.beginPath(),this.ctx.rect(t,n,r-t,a-n),this.ctx.stroke(),this.ctx.restore()})),Vm(this,"drawRound",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),i=Math.min(r,t),l=Math.min(a,n),o=.5*(Math.max(r,t)-i),s=.5*(Math.max(a,n)-l),c=i+o,d=l+s;this.setLastHistory(),this.ctx.beginPath(),this.ctx.ellipse(c,d,o,s,0,0,2*Math.PI),this.ctx.stroke(),this.ctx.closePath(),this.ctx.restore()})),Vm(this,"drawArrow",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),i=180*Math.atan2(n-a,t-r)/Math.PI,l=(i+25)*Math.PI/180,o=(i-25)*Math.PI/180,s=15*Math.cos(l),c=15*Math.sin(l),d=15*Math.cos(o),u=15*Math.sin(o);this.setLastHistory(),this.ctx.beginPath(),this.ctx.moveTo(t,n),this.ctx.lineTo(r,a),this.ctx.stroke(),this.ctx.beginPath(),this.ctx.moveTo(r,a);const m=r+s,p=a+c;this.ctx.lineTo(m,p);const h=r+d,f=a+u;this.ctx.lineTo(h,f),this.ctx.lineTo(r,a),this.ctx.fill(),this.ctx.restore()})),Vm(this,"getAxisColor",((e,t,n)=>{const r=e.width,a=e.data,i=[];return i[0]=a[4*(n*r+t)],i[1]=a[4*(n*r+t)+1],i[2]=a[4*(n*r+t)+2],i[3]=a[4*(n*r+t)+3],i})),Vm(this,"setAxisColor",((e,t,n,r)=>{const a=e.width,i=e.data;i[4*(n*a+t)]=r[0],i[4*(n*a+t)+1]=r[1],i[4*(n*a+t)+2]=r[2],i[4*(n*a+t)+3]=r[3]})),Vm(this,"drawMosaic",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),r=this.ctx.getImageData(t*this.ratio,n*this.ratio,this.maxWidth*this.ratio,this.maxWidth*this.ratio),a=r.width,i=r.height,l=a/this.degreeOfBlur,o=i/this.degreeOfBlur;for(let e=0;e<o;e++)for(let t=0;t<l;t++){const n=this.getAxisColor(r,t*this.degreeOfBlur+Math.floor(Math.random()*this.degreeOfBlur),e*this.degreeOfBlur+Math.floor(Math.random()*this.degreeOfBlur));for(let a=0;a<this.degreeOfBlur;a++)for(let i=0;i<this.degreeOfBlur;i++)this.setAxisColor(r,t*this.degreeOfBlur+i,e*this.degreeOfBlur+a,n)}this.ctx.putImageData(r,t*this.ratio,n*this.ratio)})),Vm(this,"drawText",(e=>{const{x:t,y:n}=this.textInputPos;if(0===t&&0===n)return;this.ctx.lineWidth=1,this.ctx.fillStyle=this.penColor,this.ctx.textBaseline="middle",this.ctx.font=`bold ${this.fontSize}px none`;const r=this.fontSize*this.lineHeight,a=this.width-t,i=e.target.innerText,l=[];let o="";for(let e=0;e<i.length;e++){const t=o+i[e];this.ctx.measureText(t).width>a&&o.length>0?(l.push(o),o=i[e]):o=t}l.push(o),l.forEach(((e,a)=>{this.ctx.fillText(e,t+1,n+a*r+2)})),this.ctx.restore(),this.textInputPos={x:0,y:0}})),Vm(this,"createPencil",(e=>{if(this.openSmooth||!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];this.ctx.beginPath(),this.ctx.moveTo(t,n)})),Vm(this,"drawPencil",(e=>{const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.ctx.lineTo(t,n),this.ctx.stroke(),this.ctx.restore()})),Vm(this,"createEraser",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];this.ctx.beginPath(),this.ctx.moveTo(t,n)})),Vm(this,"drawEraser",(e=>{const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.ctx.globalCompositeOperation="destination-out",this.ctx.lineCap="round",this.ctx.lineWidth=this.eraserSize,this.ctx.lineTo(t,n),this.ctx.stroke(),this.ctx.globalCompositeOperation="source-over"})),Vm(this,"drawLine",(e=>{this.openSmooth?this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e)):this.drawPencil(e)})),Vm(this,"createTextInput",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];0!=this.textInputPos.x&&0!=this.textInputPos.y&&this.textInputPos.x!=t&&this.textInputPos.y!=n?this.textInput.blur():(this.textInput.classList.add("show"),this.setInputStyle(),this.textInput.focus())})),Vm(this,"setInputStyle",(()=>{if(!this._lastPoints.length)return;const{x:e,y:t}=this._lastPoints[0];this.textInput.style.left=e+"px",this.textInput.style.lineHeight=this.lineHeight.toString(),this.textInput.style.fontSize=this.fontSize+"px",this.textInput.style.color=this.penColor,this.textInput.style.top=t-Math.floor((this.textInput.offsetHeight-2)/2)+"px",this.textInputPos={x:e,y:t}})),Vm(this,"drawBgColor",(()=>{this.backgroundColor&&(this.ctx.fillStyle=this.backgroundColor,this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height))})),Vm(this,"clearWorkSpace",(()=>{this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height)})),Vm(this,"addHistory",(()=>{this.canAddHistory&&(this.canAddHistory=!1,this._historyList.push(this.ctx.getImageData(0,0,this.canvas.width,this.canvas.height)))})),Vm(this,"getLastHistory",(()=>this._historyList[this._historyList.length-1])),Vm(this,"setLastHistory",(()=>{const e=this.getLastHistory();e?this.ctx.putImageData(e,0,0):this.clearWorkSpace()})),Vm(this,"clear",(()=>{this.clearWorkSpace(),this.drawBgColor(),this._historyList=[],this._data=[],this._reset(this._getPointGroupOptions())})),Vm(this,"undo",(()=>{const e=this._historyList[this._historyList.length-2];e?(this.ctx.putImageData(e,0,0),this._historyList.pop()):this.clear()})),Vm(this,"setDrawMode",(e=>{this.mode=e})),Vm(this,"setLineWidth",(e=>{this.maxWidth=e})),Vm(this,"setPenColor",(e=>{this.penColor=e})),Vm(this,"setFontSize",(e=>{this.fontSize=e})),Vm(this,"isEmpty",(()=>{const e=document.createElement("canvas"),t=e.getContext("2d");return e.width=this.canvas.width,e.height=this.canvas.height,1!==this.ratio&&t.scale(this.ratio,this.ratio),this.backgroundColor&&(t.fillStyle=this.backgroundColor,t.fillRect(0,0,e.width,e.height)),e.toDataURL()===this.canvas.toDataURL()})),Vm(this,"toDataURL",((e="image/png",t=1)=>{if(this.canvas.width===this.width)return this.canvas.toDataURL(e,t);const n=document.createElement("canvas");return n.width=this.width,n.height=this.height,n.getContext("2d").drawImage(this.canvas,0,0,n.width,n.height),n.toDataURL(e,t)})),Vm(this,"getPNG",(()=>this.toDataURL())),Vm(this,"getJPG",((e=.8)=>this.toDataURL("image/jpeg",e))),this.initial(e,t)}initial(e,t={}){e&&(this.canvas=e,this.ctx=e.getContext("2d"),this.textInput=document.createElement("div"),this.width=t.width||e.clientWidth||this.width,this.height=t.height||e.clientHeight||this.height,this.penColor=t.penColor||this.penColor,this.fontSize=t.fontSize||this.fontSize,this.openSmooth=void 0===t.openSmooth?this.openSmooth:!!t.openSmooth,this.backgroundColor=this.openSmooth&&t.backgroundColor||this.backgroundColor,this.mode=t.mode||this.mode,this._strokeMoveUpdate=this.throttle?function(e,t=250){let n,r,a,i=0,l=null;const o=()=>{i=Date.now(),l=null,n=e.apply(r,a),l||(r=null,a=[])};return function(...s){const c=Date.now(),d=t-(c-i);return r=this,a=s,d<=0||d>t?(l&&(clearTimeout(l),l=null),i=c,n=e.apply(r,a),l||(r=null,a=[])):l||(l=window.setTimeout(o,d)),n}}(this._strokeUpdate,this.throttle):this._strokeUpdate,this.minWidth=t.minWidth||this.minWidth,this.maxWidth=t.maxWidth||this.maxWidth,this.onStart=t.onStart,this.onEnd=t.onEnd,this.setCanvasSize(),this.setTextInput(),this.drawBgColor(),this.addListener())}update(){this.setCanvasSize(),this.clear()}destroy(){this.removeListener();for(const e in this)Object.prototype.hasOwnProperty.call(this,e)&&(this[e]=null)}}Vm(Wm,"dataURLToBlob",(e=>{const t=e.split(";base64,"),n=t[0].split(":")[1],r=window.atob(t[1]),a=r.length,i=new Uint8Array(a);for(let e=0;e<a;++e)i[e]=r.charCodeAt(e);return new Blob([i],{type:n})})),Vm(Wm,"canvasToDataURL",(e=>e.toDataURL("image/png",1))),Vm(Wm,"canvasToBlob",(e=>new Promise(((t,n)=>{e.toBlob((e=>e?t(e):n(null)),"image/png",1)}))));const Bm=Wm,Um=()=>l().createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"})),Gm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M839.111111 269.198222V122.908444A9.159111 9.159111 0 0 0 829.980444 113.777778H208.213333A9.159111 9.159111 0 0 0 199.111111 122.908444v146.289778c0 5.034667 4.124444 9.159111 9.130667 9.159111h64a9.159111 9.159111 0 0 0 9.159111-9.159111V196.067556h192v640h-105.159111a9.159111 9.159111 0 0 0-9.130667 9.130666v64c0 5.034667 4.124444 9.159111 9.130667 9.159111h301.738666a9.159111 9.159111 0 0 0 9.130667-9.159111v-64a9.159111 9.159111 0 0 0-9.130667-9.130666h-105.159111v-640h192v73.130666c0 5.034667 4.124444 9.159111 9.159111 9.159111h64a9.159111 9.159111 0 0 0 9.130667-9.159111z"})),Ym=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M887.65217391 606.59279489a31.26857185 31.26857185 0 0 1-31.26857185-31.26857087v-363.48819946L158.38608696 909.83354065a31.26857185 31.26857185 0 1 1-44.21962762-44.21962761l697.99751609-698.06906805h-363.48819945a31.26857185 31.26857185 0 0 1 0-62.46559075h439.04795087c17.17267109 0 31.26857185 13.95279489 31.26857086 31.19701891v439.04795087a31.26857185 31.26857185 0 0 1-31.3401238 31.26857087z"})),Xm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M606.4 103.424a64 64 0 0 1 0.704 0.64l320.256 280.32a64 64 0 0 1 7.104 89.024l-330.432 398.72 320.448 0.128a32 32 0 0 1 0 64.064H397.632a32.128 32.128 0 0 1-6.208-0.64h-20.736a64 64 0 0 1-42.304-16.064l-238.08-210.112A64 64 0 0 1 83.84 620.16l432.32-509.312a64 64 0 0 1 90.24-7.36zM242.048 537.536l-87.04 101.76a32 32 0 0 0 3.584 45.248l213.12 180.672a32 32 0 0 0 20.736 7.616l-0.64-0.064a32.192 32.192 0 0 1 5.76-0.512h102.016a32 32 0 0 0 18.176-10.496l40.96-47.232-316.672-276.992zM592.96 177.28a32 32 0 0 0-45.12 3.456L283.712 488.96l316.928 277.248 264.512-304.96a32 32 0 0 0 1.024-40.704l-3.904-4.16-268.928-238.72a32 32 0 0 0-0.384-0.32z"})),Qm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M607.75537778 291.05948444H223.6416l115.34336-115.41617778a36.37248 36.37248 0 1 0-51.48216889-51.44576L132.61937778 279.04455111c-13.54410667 13.50769778-21.04433778 31.67573333-21.11715556 50.97244444a71.72551111 71.72551111 0 0 0 21.11715556 51.51857778l154.88341333 154.91982222a36.29966222 36.29966222 0 0 0 51.48216889 0 36.37248 36.37248 0 0 0 0-51.48216889l-121.46005333-121.16878222H607.75537778c130.70791111 0 237.02186667 106.16832 237.02186667 236.65777777s-106.31395555 236.65777778-237.02186667 236.65777778h-254.13404445a36.40888889 36.40888889 0 0 0 0 72.81777779h254.13404445c170.83050667 0 309.83964445-138.82709333 309.83964444-309.47555557 0-170.64846222-139.00913778-309.47555555-309.83964444-309.47555555"})),Zm=l().forwardRef(((e,t)=>{const{open:n,width:r,height:a,imageName:i,penColor:o,penMode:s,minWidth:d,maxWidth:u,backgroundColor:m,className:p,style:h,onOk:f,onCancel:g}=e,{t:y}=U(),b=l().useRef(),v=l().useRef(null),x=l().useRef(null),E=l().useRef(null),w=[2,4,6],C=[14,16,18,20,24,28],S=["#ff0000","#29cc29","#00bfff","#fe6151","#000000","#666666"],[N,I]=Ja(void 0,{value:n,postState:e=>e??!1}),T=l().useMemo((()=>!!e.children),[e.children]),[O,k]=l().useState(s||(T?"square":"line")),[P,L]=l().useState(w[0]),[A,_]=l().useState(T?S[0]:S[4]),[F,D]=l().useState(C[1]),[H,q]=l().useState("bottomLeft"),[$,M]=l().useState(!1),[K,z]=l().useState(!1);l().useEffect((()=>{const e={width:r??x.current?.offsetWidth,height:a??x.current?.offsetHeight,maxWidth:P,mode:O,penColor:A,fontSize:F,backgroundColor:m,openSmooth:!T};return e.openSmooth&&Object.assign(e,{penColor:o,minWidth:d,maxWidth:u}),b.current=new Bm(v.current,e),()=>b.current.destroy()}),[]);const j=e=>{const[t,n]=[r??x.current?.offsetWidth,a??x.current?.offsetHeight],{width:i,height:l}=b.current;let o=!1;t&&t!==i&&(b.current.width=t,o=!0),n&&n!==l&&(b.current.height=n,o=!0),(o||e)&&b.current.update()};He((()=>{T&&N&&j()}),[N,T]),He((()=>{b.current.setDrawMode(O)}),[O]),He((()=>{b.current.setLineWidth(P)}),[P]),He((()=>{b.current.setPenColor(A)}),[A]),He((()=>{b.current.setFontSize(F)}),[F]);const V=async()=>{const e=T?x.current.parentNode:v.current;if(e)try{const t=await Mm()(e,{useCORS:!0,logging:!1,ignoreElements:e=>e===E.current||e.classList.contains("spinning")});return Bm.canvasToDataURL(t)}catch(e){me("Signature","生成合成图片失败!")}},W=()=>{b.current.clear(),g?.()};l().useImperativeHandle(t,(()=>({OPEN:()=>I(!0),CLOSE:()=>I(!1),CLEAR:()=>b.current.clear(),UNDO:()=>b.current.undo(),IS_EMPTY:()=>b.current.isEmpty(),UPDATE:j,GET_DATE_URL:V})));const B=e=>{e&&q((()=>{const e=E.current.getBoundingClientRect();return e.top+e.height>=window.innerHeight})()?"topLeft":"bottomLeft")},G=e=>l().createElement("div",{className:xe()("ant-dropdown-menu","content")},"text"!==e?l().createElement("div",{className:"lineWidth"},w.map((e=>l().createElement("span",{key:e,className:xe()("dot",`s${e}`,{active:e===P}),onClick:()=>L(e)})))):l().createElement("div",{className:"fontSize"},l().createElement(R.Select,{size:"small",value:F,options:C.map((e=>({value:e,label:e.toString()}))),onChange:e=>D(e)})),l().createElement("span",{className:"divider"}),l().createElement("div",{className:"penColor"},S.map((e=>l().createElement("span",{key:e,className:xe()("dot",{active:e===A}),style:{backgroundColor:e},onClick:()=>_(e)},l().createElement(we.CheckOutlined,{className:"icon"})))))),Y=Ee("signature"),X={[Y]:!0,"is-annotation":T},Q=r?{...h,width:r}:h;return l().createElement("div",{className:xe()(X,p),style:Q},T&&l().createElement(l().Fragment,null,l().createElement("div",{ref:x,className:"content"},e.children),K&&l().createElement(mt,{spinning:!0,className:"spinning"})),l().createElement("div",{className:xe()("signature",{show:N})},l().createElement("canvas",{ref:v,className:O}),T&&l().createElement("div",{ref:E,className:"signature__tool-bar"},l().createElement("div",{className:"wrapper"},l().createElement("div",{className:xe()("actions",{hidden:$})},l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("square")},l().createElement(we.BorderOutlined,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("round")},l().createElement(Um,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("arrow")},l().createElement(Ym,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("line")},l().createElement(we.EditOutlined,null))),l().createElement(R.Dropdown,{dropdownRender:()=>G("text"),overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("text")},l().createElement(Gm,null))),l().createElement("button",{className:"btn",onClick:async()=>{await(async()=>{z(!0);const e=await V();if(e){const t=i?i.slice(0,i.lastIndexOf(".")>0?i.lastIndexOf("."):void 0):c()().format(Ka);Dt(Bm.dataURLToBlob(e),`${t}.png`)}z(!1)})(),W()}},l().createElement(we.DownloadOutlined,null)),l().createElement("button",{className:"btn",onClick:()=>k("eraser")},l().createElement(Xm,null)),l().createElement("button",{className:"btn",onClick:()=>b.current.undo()},l().createElement(Qm,null)),l().createElement("button",{className:"btn",onClick:()=>b.current.clear()},l().createElement(we.ClearOutlined,null)),l().createElement("span",{className:"divider"}),l().createElement("button",{className:"btn",onClick:()=>g?.()},l().createElement(we.CloseOutlined,null)),l().createElement("button",{className:"btn",onClick:async()=>{z(!0),await ne(10);const e=await V();z(!1),W(),f?.(e)}},l().createElement(we.CheckOutlined,null))),l().createElement("button",{className:"btn btn-fold",title:y($?"qm.divider.spread":"qm.divider.collect"),onClick:()=>M(!$)},$?l().createElement(we.LeftOutlined,null):l().createElement(we.RightOutlined,null))))))}));Zm.displayName="QmSignature";const Jm=Zm,ep=l().forwardRef(((e,t)=>{const{dataIndex:n,className:r,style:a}=e;return l().createElement("li",{ref:t,"data-index":n,className:xe()("list-item",r),style:a},e.children)}));ep.displayName="ListItem";const tp=ep,np=l().forwardRef(((e,t)=>{const{dataSource:n=[],height:r,maxHeight:a,itemHeight:i,renderItem:o,onScroll:s,className:c}=e,d=l().useRef(null),u=eo({count:n.length,getScrollElement:()=>d.current?.container.children[0]??null,estimateSize:()=>i||40,overscan:3,onChange:(e,t)=>s?.(e,t)}),m=u.getVirtualItems();l().useImperativeHandle(t,(()=>({SCROLL_TO_INDEX:e=>u.scrollToIndex(e),SCROLL_TO_OFFSET:e=>u.scrollToOffset(e)})));const p=Ee("virtual-list");return l().createElement(At,{ref:d,className:xe()(p,c),style:{...e.style,height:r,maxHeight:a}},l().createElement("div",{className:"container",style:{height:u.getTotalSize()}},l().createElement("ul",{style:{transform:`translateY(${m[0]?.start??0}px)`}},m.map((e=>l().createElement(tp,{ref:u.measureElement,key:e.index,dataIndex:e.index,style:{height:i}},o?.(n[e.index],e.index)))))))}));np.displayName="VirtualList";const rp=np,ap="1.11.22";return a})()));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define("QmDesign",["react"],t):"object"==typeof exports?exports.QmDesign=t(require("react")):e.QmDesign=t(e.React)}("undefined"!=typeof self?self:this,(e=>(()=>{"use strict";var t={442:t=>{t.exports=e}},n={};function r(e){var a=n[e];if(void 0!==a)return a.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};r.r(a),r.d(a,{Affix:()=>R.Affix,Alert:()=>R.Alert,Anchor:()=>R.Anchor,AutoComplete:()=>R.AutoComplete,Avatar:()=>R.Avatar,BackTop:()=>R.BackTop,Badge:()=>R.Badge,Breadcrumb:()=>R.Breadcrumb,Button:()=>R.Button,Calendar:()=>L,Card:()=>R.Card,Carousel:()=>R.Carousel,Cascader:()=>R.Cascader,Checkbox:()=>R.Checkbox,Col:()=>R.Col,Collapse:()=>R.Collapse,Comment:()=>R.Comment,ConfigProvider:()=>R.ConfigProvider,DatePicker:()=>_,DcpAnchor:()=>tn,DcpButton:()=>fe,DcpCollapse:()=>Fe,DcpColorPicker:()=>Tl,DcpConfigProvider:()=>B,DcpCopyToClipboard:()=>xs,DcpCountup:()=>ot,DcpCropper:()=>eu,DcpDivider:()=>Se,DcpDownload:()=>Wt,DcpDrawer:()=>dn,DcpEmpty:()=>dt,DcpForm:()=>_u,DcpGuideTracker:()=>Lm,DcpLazyLoad:()=>qm,DcpModal:()=>yn,DcpPivotGrid:()=>go,DcpPrint:()=>cm,DcpRangeTableHelper:()=>Ec,DcpScrollbar:()=>At,DcpSearchHelper:()=>$s,DcpSearchTree:()=>Mo,DcpSignature:()=>Jm,DcpSpace:()=>be,DcpSpin:()=>mt,DcpSplit:()=>nt,DcpTable:()=>Ds,DcpTabs:()=>on,DcpTinymce:()=>Tu,DcpTour:()=>Bu,DcpTransition:()=>Tt,DcpTreeHelper:()=>ms,DcpTreeTableHelper:()=>ic,DcpUploadFile:()=>Bd,DcpUploadImg:()=>au,DcpVirtualList:()=>rp,DcpWatermark:()=>Am,Descriptions:()=>R.Descriptions,Divider:()=>R.Divider,Drawer:()=>R.Drawer,Dropdown:()=>R.Dropdown,Empty:()=>R.Empty,Form:()=>R.Form,Grid:()=>R.Grid,Image:()=>R.Image,Input:()=>R.Input,InputNumber:()=>R.InputNumber,Layout:()=>R.Layout,List:()=>R.List,Mentions:()=>R.Mentions,Menu:()=>R.Menu,Modal:()=>R.Modal,PageHeader:()=>R.PageHeader,Pagination:()=>R.Pagination,Popconfirm:()=>R.Popconfirm,Popover:()=>R.Popover,Progress:()=>R.Progress,QmAnchor:()=>tn,QmButton:()=>fe,QmCollapse:()=>Fe,QmColorPicker:()=>Tl,QmConfigProvider:()=>B,QmCopyToClipboard:()=>xs,QmCountup:()=>ot,QmCropper:()=>eu,QmDivider:()=>Se,QmDownload:()=>Wt,QmDrawer:()=>dn,QmEmpty:()=>dt,QmForm:()=>_u,QmGuideTracker:()=>Lm,QmLazyLoad:()=>qm,QmModal:()=>yn,QmPivotGrid:()=>go,QmPrint:()=>cm,QmRangeTableHelper:()=>Ec,QmScrollbar:()=>At,QmSearchHelper:()=>$s,QmSearchTree:()=>Mo,QmSignature:()=>Jm,QmSpace:()=>be,QmSpin:()=>mt,QmSplit:()=>nt,QmTable:()=>Ds,QmTabs:()=>on,QmTinymce:()=>Tu,QmTour:()=>Bu,QmTransition:()=>Tt,QmTreeHelper:()=>ms,QmTreeTableHelper:()=>ic,QmUploadFile:()=>Bd,QmUploadImg:()=>au,QmVirtualList:()=>rp,QmWatermark:()=>Am,Radio:()=>R.Radio,Rate:()=>R.Rate,Result:()=>R.Result,Row:()=>R.Row,Segmented:()=>R.Segmented,Select:()=>R.Select,Skeleton:()=>R.Skeleton,Slider:()=>R.Slider,Space:()=>R.Space,Spin:()=>R.Spin,Statistic:()=>R.Statistic,Steps:()=>R.Steps,Switch:()=>R.Switch,Table:()=>R.Table,Tabs:()=>R.Tabs,Tag:()=>R.Tag,TimePicker:()=>q,Timeline:()=>R.Timeline,Tooltip:()=>R.Tooltip,Transfer:()=>R.Transfer,Tree:()=>R.Tree,TreeSelect:()=>R.TreeSelect,Typography:()=>R.Typography,Upload:()=>R.Upload,message:()=>R.message,notification:()=>R.notification,pinyin:()=>Zr,version:()=>ap});var i=r(442),l=r.n(i);const o=(0,i.createContext)({locale:"zh-cn",size:"middle"}),s=require("dayjs");var c=r.n(s);const d={name:"zh-cn",qm:{button:{confirmPrompt:"提示",confirmTitle:"确认执行删除吗?",shortcutKey:"快捷键"},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",countLimit:"数量不能超过 {count} 个",uploadError:"文件上传失败!",downError:"文件下载失败!",text:"点击上传",remove:"删除文件",batchDownload:"批量下载"},uploadCropper:{dragableText:"拖放或点击",pasteText:"Ctrl+V 粘贴",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:"结束位置不能小于起始位置"},tour:{prevStep:"上一步",nextStep:"下一步",finish:"结束引导"},guideTracker:{addButton:"添 加",editButton:"保 存",closeButton:"关 闭",finishButton:"结束并保存",label:"新手引导录入",currentStep:"当前步骤:"},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:"筛选",nullValue:"空值"},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 数据"},areaSelect:{mergeCell:"合并单元格",cancelMerge:"取消合并"},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:"模糊匹配",nullText:"空值",configText:"配置名称",saveButton:"保 存",savedSetting:"保存的高级检索设置",operation:"操作",bracket:"括号",fieldName:"字段名",fieldType:"字段类型",expression:"运算",condition:"条件值",logic:"逻辑",noEmpty:"字段名不能为空"},fastSearch:{text:"数据定位查找",settingTitle:"数据定位查找设置",closeButton:"关 闭",savedSetting:"保存的数据查找设置",queryCondition:"请输入查询条件",notMatch:"没有符合条件的记录!",toTheEnd:"已查找到表格末尾,是否从头开始查找?",toStart:"已查找到表格开始,是否从末尾开始查找",matchCase:"大小写匹配",matchFullchar:"全字符匹配",queryLabel:"查找内容",queryPrev:"查找上一个",queryNext:"查找下一个",queryAll:"查找全部",findTotal:"查找到 {total} 个单元格",cellText:"单元格",valText:"值"},pivotGrid:{text:"多维表",settingTitle:"多维表看板"}},pivotGrid:{saved:{text:"配置",add:"添加配置项",title:"已保存的配置信息"},export:{text:"导出",group:"导出分组",list:"导出列表"},count:{statistic:"统计",records:"记录数",unique:"唯一值",empty:"空值",notEmpty:"非空值",sum:"合计值",max:"最大值",min:"最小值",avg:"平均值"},field:{text:"字段管理",title:"字段自定义设置"},fillColor:{text:"填色",add:"添加条件",title:"设置填色条件",cell:"单元格",row:"整行",col:"整列"},filter:{text:"筛选",title:"设置筛选条件",matchAll:"满足所有条件",matchAny:"满足任一条件"},group:{text:"分组",title:"设置分组条件",foldAll:"折叠所有",unfoldAll:"展开所有",empty:"(内容为空)",ascend:"选项顺序",descend:"选项倒序"},lineHeight:{text:"行高",size:["常规","中等","高"]},search:{text:"查找",title:"设置查找条件"},sorter:{text:"排序",title:"设置排序条件",ascend:"字段升序",descend:"字段降序"},viewMode:{table:"表格视图",gantt:"甘特视图",card:"看板视图"}}}};require("dayjs/locale/zh-cn");let u=d;function m(e,t){return e&&t?e.replace(/\{(\w+)\}/g,((e,n)=>t[n])):e}const p=(...e)=>{const[t,n]=e;let r;const a=t.split(".");let i=u;for(let e=0,t=a.length;e<t;e++){if(r=i[a[e]],e===t-1)return m(r,n);if(!r)return"";i=r}return""},h=(e,t)=>({...e,...Object.keys(t).reduce(((n,r)=>(n[r]=void 0!==t[r]?t[r]:e[r],n)),{})});function f(e,t){((t,n)=>{const r=i.useRef(!0);i.useLayoutEffect((()=>(t=>{if(!t)return e()})(r.current)),n),i.useLayoutEffect((()=>(r.current=!1,()=>{r.current=!0})),[])})(0,t)}const g=require("dayjs/plugin/localeData");var y=r.n(g);const b=require("dayjs/plugin/advancedFormat");var v=r.n(b);const x=require("dayjs/plugin/customParseFormat");var E=r.n(x);const w=require("dayjs/plugin/quarterOfYear");var C=r.n(w);const S=require("dayjs/plugin/weekOfYear");var N=r.n(S);const I=require("dayjs/plugin/weekday");var T=r.n(I);c().extend(y()),c().extend(v()),c().extend(E()),c().extend(C()),c().extend(N()),c().extend(T());const R=require("antd"),O=require("rc-picker/es/generate/dayjs");var k=r.n(O);const P=require("antd/es/calendar/generateCalendar"),L=r.n(P)()(k()),A=require("antd/es/date-picker/generatePicker"),_=r.n(A)()(k());function F(){return F=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},F.apply(null,arguments)}const D=i.forwardRef(((e,t)=>i.createElement(_,F({},e,{picker:"time",mode:void 0,ref:t}))));D.displayName="TimePicker";const H=i.forwardRef(((e,t)=>i.createElement(_.RangePicker,F({},e,{picker:"time",mode:void 0,ref:t}))));H.displayName="RangePicker",D.RangePicker=H;const q=D,$={name:"en",qm:{button:{confirmPrompt:"Prompt",confirmTitle:"Are you sure you want to delete it?",shortcutKey:"Shortcut Key"},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",countLimit:"Quantity cannot exceed {count}",uploadError:"Failed to upload files!",downError:"File download failed!",text:"click and upload",remove:"Delete files",batchDownload:"Batch download"},uploadCropper:{dragableText:"Drop or click",pasteText:"Ctrl+V Paste",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"},tour:{prevStep:"Prev",nextStep:"Next",finish:"Finish"},guideTracker:{addButton:"Add To",editButton:"Save",closeButton:"Close",finishButton:"Finish And Save",label:"Operation guide collection",currentStep:"Current Step: "},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",nullValue:"Null Value"},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"},areaSelect:{mergeCell:"Cell Merge",cancelMerge:"Cancel 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",nullText:"null value",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?",matchCase:"Case matching",matchFullchar:"Full character matching",queryLabel:"Find content",queryPrev:"Find previous",queryNext:"Find next",queryAll:"Find all",findTotal:"Found {total} cells",cellText:"Cell",valText:"Value"},pivotGrid:{text:"Pivot Grid",settingTitle:"Pivot Grid Dashboard"}},pivotGrid:{saved:{text:"Config",add:"Add configuration",title:"Saved configuration list"},export:{text:"Export",group:"Export group",list:"Export list"},count:{statistic:"Statistics",records:"count",unique:"unique",empty:"empty",notEmpty:"not empty",sum:"sum value",max:"max value",min:"min value",avg:"avg value"},field:{text:"Field manage",title:"Field customization settings"},fillColor:{text:"Fill color",add:"Add condition",title:"Set fill color conditions",cell:"Cell",row:"Row",col:"Col"},filter:{text:"Filter",title:"Set filter conditions",matchAll:"Meet all conditions",matchAny:"Meet any conditions"},group:{text:"Group",title:"Set group conditions",foldAll:"Fold all",unfoldAll:"unfold all",empty:"(Empty content)",ascend:"Order ascend",descend:"Order descend"},lineHeight:{text:"Line height",size:["Common size","Middle size","Large size"]},search:{text:"Search",title:"Set search conditions"},sorter:{text:"Sorter",title:"Set sorter conditions",ascend:"Field ascend",descend:"Field descend"},viewMode:{table:"Table view",gantt:"Gantt view",card:"Card view"}}}},M=require("antd/es/locale/zh_CN");var K=r.n(M);const z=require("antd/es/locale/en_GB");var j=r.n(z);const V={[$.name]:{qm:$,antd:j()},[d.name]:{qm:d,antd:K()}},W=e=>{const t=h({locale:"zh-cn",size:"middle"},e),{locale:n,size:r,global:a}=t;l().useMemo((()=>{return e=Object.assign({},V,a?.langPackage)[n].qm,u=e||u,void(u.name&&c().locale(u.name));var e}),[n]);const i=l().useMemo((()=>Object.assign({},V,a?.langPackage)),[a]),[s,d]=l().useState({locale:n,size:r,global:a});return f((()=>{d((e=>Object.assign({},e,{locale:n,size:r})))}),[r,n]),l().createElement(o.Provider,{value:s},l().createElement(R.ConfigProvider,{locale:i[s.locale].antd,componentSize:s.size,autoInsertSpaceInButton:a?.autoInsertSpaceInButton},t.children))};W.displayName="QmConfigProvider";const B=W;function U(){const{locale:e}=i.useContext(o);return{t:p,$locale:e}}function G(e){const t=i.useRef();return t.current=e,i.useCallback(((...e)=>t.current?.(...e)),[])}function Y(e){const{size:t}=i.useContext(o);return{$size:i.useMemo((()=>e.size??t??""),[e.size,t])}}const X=require("lodash-es"),Q="undefined"==typeof window,Z=e=>l().isValidElement(e),J=e=>Z(e)&&e.type===l().Fragment,ee=()=>{},te=()=>!0,ne=async e=>new Promise((t=>setTimeout(t,e))),re=e=>{Promise.resolve().then(e)},ae=e=>e.replace(/-(\w)/g,((e,t)=>t?t.toUpperCase():"")),ie=e=>!!(!e&&0!==e||(0,X.isArray)(e)&&!e.length||(0,X.isPlainObject)(e)&&!Object.keys(e).length),le=(e,t)=>t.split(".").reduce(((e,t)=>e?.[t]),e),oe=(e,t)=>{const n={...e};for(const e of t)delete n[e];return n},se=(e,t=new WeakMap)=>{if((0,X.isPlainObject)(e)||(0,X.isArray)(e)){const n=Array.isArray(e),r=n?[]:{};if(t.get(e))return e;t.set(e,r);const a=n?void 0:Object.keys(e);return function(n){let i=-1;const l=n.length;for(;++i<l;)o=n[i],s=i,a&&(s=o),r[s]=se(e[s],t);var o,s}(a||e),r}return e},ce=e=>(0,X.isNumber)(e)?`${e}px`:e.toString();class de extends Error{constructor(e){super(e),this.name="QmDesignError"}}function ue(e,t){throw new de(`[${e}] ${t}`)}function me(e,t){console.warn(new de(`[${e}] ${t}`))}function pe(){return pe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},pe.apply(null,arguments)}const he=e=>{const{loading:t,shortcutKey:n,authConfig:r,click:a,confirm:i}=e,{t:o}=U(),{$size:s}=Y(e);l().useEffect((()=>(n&&document.addEventListener("keyup",u),()=>document.removeEventListener("keyup",u))),[]);const[c,d]=l().useState(!1),u=G((e=>{const t=n.split("+").map((e=>e.trim().toLowerCase())),r=t.includes("alt"),a=t.includes("ctrl"),i=t.includes("shift"),l=t[t.length-1];r&&!e.altKey||a&&!e.ctrlKey||i&&!e.shiftKey||e.key.toLowerCase()!==l||(e.preventDefault(),p.disabled||p.onClick?.(e))})),m=(0,X.isFunction)(a)?{onClick:async t=>{d(!0);try{await(e.click?.(t))}catch(e){me("Button","`click`方法执行出错")}d(!1)}}:null,p={...oe(e,["shortcutKey","authConfig","click","confirm"]),size:s,loading:c||t||!1,...m};if(r){const{visible:e=1,disabled:t}=r||{};if(!e)return null;t&&(p.disabled=!0)}const h=l().createElement(R.Button,p,e.children);return i?l().createElement(R.Popconfirm,{title:i.title||o("qm.button.confirmTitle"),disabled:p.disabled,onConfirm:e=>{i.onConfirm?.(),p.onClick?.(e)},onCancel:e=>{i.onCancel?.(e)}},l().createElement(R.Button,pe({},p,{onClick:ee}),e.children)):!n||p.disabled?h:l().createElement(R.Tooltip,{placement:"top",title:`${o("qm.button.shortcutKey")}: ${n}`},h)};he.displayName="QmButton";const fe=he;var ge=function(e){return e[e.default=14]="default",e[e.large=12]="large",e[e.middle=10]="middle",e[e.small=8]="small",e}(ge||{});const ye=e=>{const{$size:t}=Y(e),n=(0,X.isNumber)(e.size)?e.size:ge[t||"default"],r={...oe(e,["size"]),size:n};return l().createElement(R.Space,r,e.children)};ye.displayName="QmSpace";const be=ye,ve=require("classnames");var xe=r.n(ve);const Ee=e=>`qm-${e}`,we=require("@ant-design/icons"),Ce=e=>{const{label:t,extra:n,collapse:r,bordered:a=!0,disabled:i,id:o,className:s,style:c,onCollapseChange:d}=e,{$size:u}=Y(e),{t:m}=U(),p=Ee("divider"),h={[p]:!0,[`${p}-borderless`]:!a,[`${p}--lg`]:"large"===u,[`${p}--sm`]:"small"===u};return l().createElement("div",{id:o,className:xe()(h,s),style:c},l().createElement("span",{className:`${p}__title`},t),l().createElement("div",{className:`${p}__extra`},n),void 0!==r&&l().createElement(R.Button,{type:"link",className:`${p}__collapse`,disabled:i,onClick:()=>{d?.(!r)}},m(r?"qm.divider.collect":"qm.divider.spread"),r?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)))};Ce.displayName="QmDivider";const Se=Ce,Ne=()=>({height:0,opacity:0}),Ie=e=>({height:e.scrollHeight,opacity:1}),Te=e=>({height:e?e.offsetHeight:0}),Re=(e,t)=>!0===t?.deadline||"height"===t.propertyName,Oe=require("rc-motion");var ke=r.n(Oe);const Pe=l().forwardRef(((e,t)=>{const{forceRender:n,className:r,style:a,boxStyle:i,isActive:o}=e,[s,c]=l().useState(o||n);if(l().useEffect((()=>{(n||o)&&c(!0)}),[n,o]),!s)return null;const d=Ee("collapse");return l().createElement("div",{ref:t,className:xe()(`${d}-content`,{[`${d}-content-active`]:o,[`${d}-content-inactive`]:!o},r),style:a},l().createElement("div",{className:`${d}-content-box`,style:i},e.children))}));Pe.displayName="PanelContent";const Le=Pe;function Ae(){return Ae=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ae.apply(null,arguments)}const _e=e=>{const{defaultActive:t,label:n,extra:r,className:a,style:i,containerStyle:o,bordered:s,disabled:c,forceRender:d,destroyOnClose:u=!1,onChange:m}=e,[p,h]=l().useState(!!t),f=Ee("collapse"),g=xe()({[`${f}`]:!0,[`${f}-active`]:p,[`${f}-disabled`]:c},a);return l().createElement("div",{className:g,style:i},l().createElement(Se,{label:n,extra:r,collapse:p,bordered:s,disabled:c,onCollapseChange:e=>{h(e),m?.(e)}}),l().createElement(ke(),Ae({visible:p},((e=Ee("motion-collapse"))=>({motionName:e,onAppearStart:Ne,onEnterStart:Ne,onAppearActive:Ie,onEnterActive:Ie,onLeaveStart:Te,onLeaveActive:Ne,onAppearEnd:Re,onEnterEnd:Re,onLeaveEnd:Re,motionDeadline:500}))(),{forceRender:d,removeOnLeave:u}),(({className:t,style:n},r)=>l().createElement(Le,{ref:r,prefixCls:f,className:t,style:n,boxStyle:o,isActive:p,forceRender:d},e.children))))};_e.displayName="QmCollapse";const Fe=_e,De=l().createContext(void 0);function He(e,t){((t,n)=>{const r=i.useRef(!0);i.useEffect((()=>(t=>{if(!t)return e()})(r.current)),n),i.useEffect((()=>(r.current=!1,()=>{r.current=!0})),[])})(0,t)}const qe=(e,t,n)=>{e&&t&&n&&e.addEventListener(t,n,!1)},$e=(e,t,n)=>{e&&t&&n&&e.removeEventListener(t,n,!1)},Me=e=>e.preventDefault(),Ke=(e,t)=>{if(Q||!e||!t)return null;"float"===(t=ae(t))&&(t="cssFloat");try{const n=e.style[t];if(n)return n;const r=window.getComputedStyle(e);return r?r[t]:""}catch(n){return e.style[t]}},ze=(e,t,n)=>{!Q&&e&&t&&((0,X.isPlainObject)(t)?Object.keys(t).forEach((n=>{ze(e,n,t[n])})):(t=ae(t),e.style[t]=n))},je=e=>{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},Ve=(e,t)=>Math.abs(je(e)-je(t)),We=e=>{let t=0,n=0;for(;e;)t+=e.offsetLeft-e.scrollLeft,n+=e.offsetTop-e.scrollTop,e=e.offsetParent;return{x:t,y:n}},Be=(e,t)=>{let n=e;for(;n;){if(n.classList?.contains(t))return n;n=n.parentNode}return null},Ue=(e,t)=>{if(Q||!e||!t)return!1;let n=e;for(;n;){if(n===t)return!0;n=n.parentNode}return!1},Ge=e=>Math.pow(e,3),Ye=e=>e<.5?Ge(2*e)/2:1-Ge(2*(1-e))/2,Xe=e=>{const{minValues:t,onDragChange:n,onDragging:r}=e,{splitRef:a,direction:i}=l().useContext(De),{t:o}=U(),s=l().useRef(Q?null:document.onselectstart),c=l().useMemo((()=>"horizontal"===i),[i]),d=l().useMemo((()=>c?"X":"Y"),[c]),u=l().useRef({startX:0,startY:0,firstElementSizeX:0,firstElementSizeY:0,containerSizeX:0,containerSizeY:0}),m=e=>{u.current=Object.assign({},u.current,e)},p=e=>{if(1!==e.buttons)return h();const n=e[`page${d}`]-u.current[`start${d}`],a=[t[0],u.current[`containerSize${d}`]-t[1]];let i=u.current[`firstElementSize${d}`]+n;i=Math.max(a[0],i),i=Math.min(a[1],i),r(i)},h=()=>{m({startX:0,startY:0,firstElementSizeX:0,firstElementSizeY:0,containerSizeX:0,containerSizeY:0}),n(!1),$e(document,"mousemove",p),$e(document,"mouseup",h),f()},f=()=>{document.onselectstart!==s.current&&(document.onselectstart=s.current)},g=Ee("split"),y={[`${g}__resize-bar`]:!0,vertical:"vertical"===i,horizontal:"horizontal"===i};return l().createElement("div",{className:xe()(y),title:o("qm.split.resize"),onMouseDown:e=>{e.stopPropagation();const t=a.current,r=t.children[0];m({startX:e.pageX,startY:e.pageY,firstElementSizeX:r.offsetWidth,firstElementSizeY:r.offsetHeight,containerSizeX:t.offsetWidth,containerSizeY:t.offsetHeight}),qe(document,"mousemove",p),qe(document,"mouseup",h),n(!0),s.current=document.onselectstart,document.onselectstart=()=>!1}})};Xe.displayName="ResizeBar";const Qe=Xe,Ze=l().forwardRef(((e,t)=>{const{offset:n,className:r,style:a}=e,{direction:i,dragging:o}=l().useContext(De),s="vertical"===i?"height":"width",c=Ee("split-pane"),d={[c]:!0,isLocked:o,horizontal:"horizontal"===i,vertical:"vertical"===i,[r]:!!r},u=void 0!==n?{[s]:ce(n)}:{flex:1,[s]:0};return l().createElement("div",{ref:t,className:xe()(d),style:{...u,...a}},e.children)}));Ze.displayName="SplitPane";const Je=Ze;function et(){return et=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},et.apply(null,arguments)}const tt=e=>{const{direction:t="horizontal",defaultValue:n="50%",uniqueKey:r,className:a,style:i,onDragStart:s,onDrag:c=ee,onDragEnd:d}=e,{global:u}=l().useContext(o),m=l().useRef(null),p=l().useRef(null),h=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),g=e=>{const t=Number.parseInt(e.props?.min||0);return t>=0?t:0},y=l().useMemo((()=>r?`split_${r}`:""),[r]),[b,v]=l().useState(!1),[x,E]=l().useState(h(n));He((()=>{b?s?.(f(x)):(d?.(f(x)),localStorage.setItem(y,x),S(y,x))}),[b]),l().useEffect((()=>{w()}),[]);const w=()=>{if(!y)return;const e=localStorage.getItem(y);e?E(h(e)):C(y).then((e=>{localStorage.setItem(y,h(e||n)),w()})).catch((()=>{}))},C=async e=>{const t=u?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},S=async(e,t)=>{const n=u?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}},N=l().useMemo((()=>({splitRef:m,direction:t,dragging:b})),[t,b]),I=[];l().Children.map(e.children,(e=>{Z(e)&&!J(e)&&"SplitPane"===e.type?.displayName&&I.push(e)}));const[T,R]=I,O=l().useMemo((()=>[g(T),g(R)]),[T,R]),k=Ee("split"),P={[k]:!0,vertical:"vertical"===t};return l().createElement(De.Provider,{value:N},l().createElement("div",{ref:m,className:xe()(P,a),style:i},l().createElement(Je,et({},T.props,{ref:p,offset:x})),l().createElement(Qe,{minValues:O,onDragChange:e=>v(e),onDragging:e=>{E(`${e}px`),c(e)}}),l().createElement(Je,R.props)))};tt.displayName="QmSplit",tt.Pane=Je;const nt=tt,rt=require("react-countup");var at=r.n(rt);function it(){return it=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},it.apply(null,arguments)}const lt=e=>{const{className:t,style:n}=e,{$size:r}=Y(e),a=Ee("countup"),i={[a]:!0,[`${a}--lg`]:"large"===r,[`${a}--sm`]:"small"===r};return l().createElement(at(),it({},e,{className:xe()(i,t),style:n}),e.children)};lt.displayName="QmCountup";const ot=lt;function st(){return st=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},st.apply(null,arguments)}const ct=e=>{const{className:t}=e,{$size:n}=Y(e),r=Ee("empty"),a={...e,image:R.Empty.PRESENTED_IMAGE_SIMPLE},i={[r]:!0,[`${r}--lg`]:"large"===n,[`${r}--sm`]:"small"===n};return l().createElement(R.Empty,st({},a,{className:xe()(i,t)}))};ct.displayName="QmEmpty";const dt=ct,ut=e=>{const t=h({tip:"Loading..."},e),{fullHeight:n,className:r,style:a}=t,i=Ee("spin"),o={[i]:!0,[`${i}-fullHeight`]:!!n},s={wrapperClassName:xe()(o,r),...oe(t,["fullHeight"]),style:{...a,maxHeight:"none"}};return l().createElement(R.Spin,s,t.children)};ut.displayName="QmSpin";const mt=ut,pt=l().createContext(void 0),ht=require("resize-observer-polyfill");var ft=r.n(ht);const gt=new Map,yt=new(ft())((function(e){e.forEach((e=>{const{target:t}=e;gt.get(t)?.forEach((e=>e(t)))}))}));function bt(e,t){gt.has(e)||(gt.set(e,new Set),yt.observe(e)),gt.get(e).add(t)}function vt(e,t){gt.has(e)&&(gt.get(e).delete(t),gt.get(e).size||(yt.unobserve(e),gt.delete(e)))}function xt(e){const[t,n]=i.useState({width:0,height:0});return i.useLayoutEffect((()=>{const t=e.current,r=e=>{n({width:e.offsetWidth,height:e.offsetHeight})};return t&&bt(t,r),()=>{t&&vt(t,r)}}),[e]),t}function Et(e,t){const n=i.useRef(null);return i.useEffect((()=>()=>{clearTimeout(n.current),n.current=null}),[]),i.useCallback(((...r)=>{n.current&&clearTimeout(n.current),n.current=setTimeout((()=>e.apply(this,r)),t)}),[e,t])}const wt=(e,...t)=>l().isValidElement(e)?l().cloneElement(e,...t):null,Ct=["preEnter","entering","entered","preExit","exiting","exited","unmounted"],St=e=>({_s:e,status:Ct[e],isEnter:e<3,isMounted:6!==e,isResolved:2===e||e>4}),Nt=e=>e?6:5,It=(e,t,n,r,a)=>{clearTimeout(r.current);const i=St(e);t(i),n.current=i,a?.({current:i})},Tt=e=>{const{name:t,in:n,timeout:r,preEnter:a=!0,preExit:o}=e,[s,c]=((e={})=>{const{enter:t=!0,exit:n=!0,preEnter:r,preExit:a,timeout:l,initialEntered:o,mountOnEnter:s,unmountOnExit:c,onStateChange:d}=e||{},[u,m]=(0,i.useState)((()=>St(o?2:Nt(s)))),p=(0,i.useRef)(u),h=(0,i.useRef)(),[f,g]=(e=>(0,X.isPlainObject)(e)?[e.enter,e.exit]:[e,e])(l),y=(0,i.useCallback)((()=>{const e=((e,t)=>{switch(e){case 1:case 0:return 2;case 4:case 3:return Nt(t)}})(p.current._s,c);e&&It(e,m,p,h,d)}),[d,c]),b=(0,i.useCallback)((e=>{const i=e=>{switch(It(e,m,p,h,d),e){case 1:f>=0&&(h.current=setTimeout(y,f));break;case 4:g>=0&&(h.current=setTimeout(y,g));break;case 0:case 3:h.current=setTimeout((()=>i(e+1)),0)}},l=p.current.isEnter;"boolean"!=typeof e&&(e=!l),e?!l&&i(t?r?0:1:2):l&&i(n?a?3:4:Nt(c))}),[y,d,t,n,r,a,f,g,c]);return(0,i.useEffect)((()=>()=>clearTimeout(h.current)),[]),[u,b,y]})({timeout:r,preEnter:a,preExit:o,initialEntered:n});return f((()=>{c()}),[n]),l().createElement(l().Fragment,null,l().Children.map(e.children,(e=>l().isValidElement(e)?wt(e,{className:xe()(e.props.className,t,s.status)}):e)))},Rt=6,Ot={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",reverse:"width",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",reverse:"height",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},kt=e=>{const{thumb:t,always:n,className:r,barSize:a=Rt,direction:i="vertical",onDrag:o=ee}=e,{dragging:s,scrollbarElement:c,wrapElement:d}=l().useContext(pt),u=Ot[i],m=l().useRef(t),p=l().useRef(null),h=l().useRef(null),f=l().useRef({}),g=l().useRef(!1),y=l().useRef(!1),b=l().useRef(Q?null:document.onselectstart),[v,x]=l().useState(!1);l().useLayoutEffect((()=>{m.current=t}),[t]),l().useEffect((()=>{const e=c.current;return qe(e,"mousemove",S),qe(e,"mouseleave",N),()=>{C(),$e(document,"mouseup",w),$e(e,"mousemove",S),$e(e,"mouseleave",N)}}),[]);const E=e=>{if(!p.current||!h.current)return;if(!g.current)return;const t=f.current[u.axis];if(!t)return;const n=100*(-1*(p.current.getBoundingClientRect()[u.direction]-e[u.client])-(h.current[u.offset]-t))/p.current[u.offset];d.current[u.scroll]=n*d.current[u.scrollSize]/100,o(!0)},w=()=>{g.current=!1,f.current={[u.axis]:0},$e(document,"mousemove",E),$e(document,"mouseup",w),C(),y.current&&x(!1),o(!1)},C=()=>{document.onselectstart!==b.current&&(document.onselectstart=b.current)},S=()=>{y.current=!1,x(!!m.current.size)},N=()=>{y.current=!0,x(g.current)},I=Ee("scrollbar"),T={[`${I}__bar`]:!0,"is-vertical":"vertical"===i,"is-horizontal":"horizontal"===i},R={[u.reverse]:a},O={[u.size]:t.size,transform:`translate${u.axis}(${t.offset}%)`};return l().createElement(Tt,{name:"fade",in:n||s||v,timeout:300},l().createElement("div",{ref:p,className:xe()(T,r),style:R},l().createElement("div",{ref:h,className:`${I}__thumb`,style:O,onMouseDown:e=>{e.stopPropagation(),qe(document,"mousemove",E),qe(document,"mouseup",w),g.current=!0,b.current=document.onselectstart,document.onselectstart=()=>!1;const t=e.target;t&&(f.current={[u.axis]:t[u.offset]-(e[u.client]-t.getBoundingClientRect()[u.direction])})}})))},Pt=20,Lt=l().forwardRef(((e,t)=>{const{wrapClassName:n,wrapStyle:r,innerStyle:a,barWidth:i,always:o,native:s,showTopScrollbar:c,minSize:d=Pt,onScroll:u}=e,m=l().useRef(null),p=l().useRef(null),h=l().useRef(null),[g,y]=l().useState({size:0,offset:0,ratio:1}),[b,v]=l().useState({size:0,offset:0,ratio:1}),[x,E]=l().useState(!1),w=xt(m),C=xt(h);f((()=>{!s&&S()}),[C.width,C.height,w.width,w.height]);const S=Et((()=>{if(!p.current)return;const e=p.current.offsetHeight-4,t=p.current.offsetWidth-4,n=e**2/p.current.scrollHeight,r=t**2/p.current.scrollWidth,a=Math.max(n,d),i=Math.max(r,d),l=n/(e-n)/(a/(e-a)),o=r/(t-r)/(i/(t-i)),s=a+4<e?a:0,c=i+4<t?i:0,u=100*p.current.scrollTop/e*l,m=100*p.current.scrollLeft/t*o;y(Object.assign({},g,{size:c,ratio:o,offset:m})),v(Object.assign({},b,{size:s,ratio:l,offset:u}))}),5),N=e=>{E(e)},I=(e,t)=>{(0,X.isNumber)(e)?t?((e,t)=>{const n=Date.now(),r=e.scrollTop,a=window.requestAnimationFrame,i=()=>{const l=(Date.now()-n)/500;l<1?(e.scrollTop=r+(t-r)*Ye(l),a(i)):e.scrollTop=t};a(i)})(p.current,e):p.current.scrollTop=e:me("Scrollbar","SET_SCROLL_TOP 参数必须是数值类型")},T=(e,t)=>{(0,X.isNumber)(e)?t?((e,t)=>{const n=Date.now(),r=e.scrollLeft,a=window.requestAnimationFrame,i=()=>{const l=(Date.now()-n)/500;l<1?(e.scrollLeft=r+(t-r)*Ye(l),a(i)):e.scrollLeft=t};a(i)})(p.current,e):p.current.scrollLeft=e:me("Scrollbar","SET_SCROLL_LEFT 参数必须是数值类型")};l().useImperativeHandle(t,(()=>({container:m.current,scrollTop:p.current?.scrollTop||0,scrollLeft:p.current?.scrollLeft||0,SET_SCROLL_TOP:I,SET_SCROLL_LEFT:T})));const R=l().useMemo((()=>({dragging:x,scrollbarElement:m,wrapElement:p})),[x]),O=Ee("scrollbar"),k={[`${O}__wrap`]:!0,[`${O}__wrap--hidden`]:!s};return l().createElement("div",{ref:m,className:xe()(O,e.className),style:e.style},l().createElement("div",{ref:p,className:xe()(k,n),style:r,onScroll:e=>{const{scrollTop:t,scrollLeft:n}=e.target;!s&&(()=>{if(!p.current)return;const e=p.current.offsetHeight-4,t=p.current.offsetWidth-4,n=100*p.current.scrollTop/e*b.ratio,r=100*p.current.scrollLeft/t*g.ratio;y(Object.assign({},g,{offset:r})),v(Object.assign({},b,{offset:n}))})(),u?.({scrollTop:t,scrollLeft:n})}},l().createElement("div",{ref:h,className:`${O}__view`,style:a},e.children)),!s&&l().createElement(pt.Provider,{value:R},c&&l().createElement(kt,{className:"top",direction:"horizontal",thumb:g,barSize:i,always:o,onDrag:N}),l().createElement(kt,{direction:"horizontal",thumb:g,barSize:i,always:o,onDrag:N}),l().createElement(kt,{direction:"vertical",thumb:b,barSize:i,always:o,onDrag:N})))}));Lt.displayName="QmScrollbar";const At=Lt,_t=require("sortablejs");var Ft=r.n(_t);const Dt=(e,t)=>{if(navigator.msSaveBlob)navigator.msSaveBlob(e,decodeURI(t));else{const n=window.URL.createObjectURL(e);let r=document.createElement("a");r.href=n,r.download=decodeURI(t),r.click(),r=null}};function Ht(){return Ht=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ht.apply(null,arguments)}const qt=async(e,{fileName:t,headers:n,params:r})=>{const a=r?new URLSearchParams(r).toString():"",i=a?e.includes("?")?"&":"?":"",l=await fetch(e+`${i+a}`,{method:"GET",headers:n});if(!l.ok)throw new Error(p("qm.download.error"));const o=await l.blob(),s=l.headers.get("content-disposition"),c=t||(s?s.split(";")[1].split("filename=")[1]:e.slice(e.lastIndexOf("/")+1));Dt(o,c)},$t=e=>{const t=e.lastIndexOf(".");return-1!==t?e.substring(0,t):e},Mt=e=>{const t=e.lastIndexOf(".");return-1!==t?e.substring(t+1):""},Kt=e=>{const t=h({name:"file",multiple:!0,showUploadList:{showPreviewIcon:!0,showDownloadIcon:!0,showRemoveIcon:!0}},e),{fileList:n=[],fileDirection:r="vertical",batchDownload:a,draggable:i,editable:o,disabled:s,readOnly:c,button:d={},className:u,onPreview:m,onSortChange:p,onEditChange:f,onDownload:g,onChange:y}=t,{t:b}=U(),{$size:v}=Y(t),x=l().useRef(null),E=l().useRef(null),[w,C]=l().useState({}),S=l().useMemo((()=>s||c),[s,c]);l().useEffect((()=>(T(),()=>E.current?.destroy())),[]);const N=(e,t)=>{C((n=>Object.assign({},n,{[e]:t??!n[e]})))},I=G((e=>{const{oldIndex:t,newIndex:r}=e;if(t!==r){const e=[...n],[a]=e.splice(t,1);e.splice(r,0,a),p?.(e),y?.({file:n[t],fileList:e})}})),T=()=>{i&&(E.current=Ft().create(Be(x.current,Ee("upload-file")).querySelector(".ant-upload-list"),{animation:150,handle:".handle",filter:".ignore",draggable:".ant-upload-list-text-container",onEnd:I}))},O=async e=>{if(g)return void await g(e);const{downloadWithHeaders:n,headers:r}=t;try{e.url&&await qt(e.url,{fileName:e.name,...n?{headers:r}:null})}catch(e){R.message.error(b("qm.download.error"))}},k=Ee("upload-file"),P={[k]:!0,[`${k}--lg`]:"large"===v,[`${k}--sm`]:"small"===v,[`${k}--horizontal`]:"horizontal"===r};return l().createElement(R.Upload,Ht({className:xe()(P,u)},oe(t,["fileTypes","fileSize","fileDirection","batchDownload","draggable","editable","button"]),{beforeUpload:(e,n)=>new Promise((async(r,a)=>{const{fileTypes:i=[],fileSize:l,maxCount:o,fileList:s=[],beforeUpload:c}=t,d=!i.length||i.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),u=!l||e.size/1024/1024<l,m=!(o>1)||s.length<o,p=d&&u&&m;if(d||R.message.warning(b("qm.upload.tooltip",{type:i.join(",")})),u||R.message.warning(b("qm.upload.sizeLimit",{size:l})),m||R.message.warning(b("qm.upload.countLimit",{count:o})),!p)return R.Upload.LIST_IGNORE;if(c){const t=c(e,n);if(!0===t)return r(e);if(!1===t)return a("not upload");if(t&&"function"==typeof t.then)try{r(await t)}catch(e){a(e)}}else r(e)})),disabled:S,onChange:y,onPreview:async e=>{if("function"==typeof m)return m(e,(t=>O(t||e)));s||await O(e)},onDownload:async e=>{await O(e)},itemRender:(e,r,a,c)=>((e,r)=>{const{iconRender:a}=t,{uid:c,name:d,url:u,status:m="done"}=e,p="ant-btn ant-btn-text ant-btn-sm ant-btn-icon-only ant-upload-list-item-card-actions-btn";return l().createElement("div",{className:xe()("ant-upload-list-item",`ant-upload-list-item-${m}`,"ant-upload-list-item-list-type-text",{handle:i})},l().createElement("div",{className:"ant-upload-list-item-info"},l().createElement("span",{className:"ant-upload-span"},l().createElement("div",{className:"ant-upload-text-icon"},a?a(e):l().createElement(we.LinkOutlined,null)),l().createElement("div",{className:"ant-upload-list-item-name"},w[c]?l().createElement(R.Input,{size:"small",autoFocus:!0,defaultValue:$t(d),onBlur:t=>{const{value:r}=t.target;if(r!==$t(d)){const t=Object.assign({},e,{name:`${r}.${Mt(d)}`}),a=n.map((e=>e.uid!==c?e:t));f?.(t,a),y?.({file:t,fileList:a})}N(c,!1)}}):l().createElement("a",{rel:"noreferrer",target:"_blank",title:d,href:u,onClick:e=>{e.preventDefault(),o?S||N(c,!0):r.preview()}},d)),l().createElement("span",{className:"ant-upload-list-item-card-actions"},o&&!S&&l().createElement("button",{type:"button",className:p,onClick:()=>N(c)},w[c]?l().createElement(we.CheckOutlined,null):l().createElement(we.EditOutlined,null)),o&&l().createElement("button",{type:"button",className:xe()(p,"preview"),onClick:()=>r.preview()},l().createElement(we.EyeOutlined,null)),l().createElement("button",{type:"button",className:xe()(p,"download"),disabled:s,onClick:()=>r.download()},l().createElement(we.DownloadOutlined,null)),l().createElement("button",{type:"button",className:xe()(p,"delete"),disabled:S,onClick:()=>r.remove()},l().createElement(we.DeleteOutlined,null))))))})(r,c)}),l().createElement("span",{className:"inner",ref:x},t.children||c&&n.length?t.children:l().createElement(R.Button,{type:d.type??"default",icon:d.icon??l().createElement(we.UploadOutlined,null),disabled:S},d.text||b("qm.upload.text")),a&&!!n.length&&l().createElement(R.Button,{disabled:s,style:{marginLeft:8},onClick:async e=>{if(e.stopPropagation(),"function"==typeof a)await a(n);else for(const e of n)await O(e)}},b("qm.upload.batchDownload"))))};Kt.displayName="QmUploadFile";const zt=Kt;function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jt.apply(null,arguments)}const Vt=e=>{const t=h({icon:l().createElement(we.DownloadOutlined,null),withCredentials:!1},e),{$size:n}=Y(t),{t:r}=U(),[a,i]=l().useState(!1),o=oe(t,["action","fileName","headers","withCredentials","params","beforeDownload","onSuccess","onError"]);return l().createElement(R.Button,jt({},o,{size:n,loading:a,onClick:async()=>{i(!0);try{const{action:e,fileName:n,headers:a,params:i,beforeDownload:l=te,onSuccess:o}=t,s=(0,X.isString)(e)?e:await(async()=>{const e=t.action;if(e.api)try{const t=await e.api(e.params);if(200===t.code)return t.data}catch(e){}return""})();if(!s)return me("Download","参数 `action` 有误!");if(!l(s))return;await qt(s,{fileName:n,headers:a,params:i}),await ne(100),o?.(),R.message.success(r("qm.download.success"))}catch(e){t.onError?.(e),R.message.error(r("qm.download.error"))}i(!1)}}),t.children||r("qm.download.text"))};Vt.displayName="QmDownload";const Wt=Vt,Bt=require("add-dom-event-listener");var Ut=r.n(Bt);const Gt=require("scroll-into-view-if-needed");var Yt=r.n(Gt);function Xt(e,t){const n=i.useRef(null),r=i.useRef(0);return i.useEffect((()=>()=>{clearTimeout(n.current),n.current=null}),[]),i.useCallback(((...n)=>{const a=Date.now();(!r.current||a-r.current>t)&&(e.apply(this,n),r.current=a)}),[e,t])}const Qt=e=>{const{activeKey:t,labels:n,onTabClick:r}=e;return l().createElement(l().Fragment,null,n.map(((e,n)=>{const a={item:!0,actived:n===t};return l().createElement("div",{key:n,className:xe()(a),onClick:e=>r(n,e)},l().createElement("span",null,e))})))},Zt=e=>{const{label:t,showDivider:n,className:r,style:a}=e,i=Ee("anchor-item"),o={[i]:!0};return l().createElement("div",{className:xe()(o,r),style:a},n&&l().createElement(Se,{label:t,style:{marginBottom:10}}),e.children)};Zt.displayName="AnchorItem";const Jt=Zt,en=l().forwardRef(((e,t)=>{const{labelList:n=[],defaultActiveIndex:r,labelWidth:a,tabPosition:i="left",onTabClick:o,className:s,style:c}=e,{$size:d}=Y(e),u=l().useRef(null),m=l().useRef(),p=l().useRef("ready"),h=l().useRef(0),[f,g]=l().useState(r||0),y=l().useMemo((()=>!!n?.length),[n]);l().useEffect((()=>{b();const e=Ut()(u.current,"scroll",x);return()=>{e.remove()}}),[]);const b=()=>{f>0&&(u.current.scrollTop=Ve(v(f),u.current))},v=e=>y?document.getElementById(n[e].id):u.current.children[e],x=Xt((e=>{if("ready"!==p.current)return;const t=(e=>{const t=Math.abs(e),r=(y?n.map((e=>document.getElementById(e.id))):Array.from(u.current?.children||[])).map((e=>Ve(e,u.current)));let a=-1;for(let e=0;e<r.length;e++){const n=r[e],i=r[e+1]||1e4;t>=n-1&&t<i&&(a=e)}return a})(e.target.scrollTop);-1!==t&&g(t)}),60),E=e=>{const t=v(e);t&&(g(e),p.current="stop",m.current&&clearTimeout(m.current),Yt()(t,{block:"start",behavior:"smooth",boundary:u.current}),m.current=setTimeout((()=>p.current="ready"),500))};l().useImperativeHandle(t,(()=>({SCROLL_TO_ITEM:e=>{e=(e=e<0?0:e)>h.current?h.current:e,E(e)}})));const w=Ee("anchor"),C={[w]:!0,[`${w}-left`]:"left"===i,[`${w}-top`]:"top"===i,[`${w}--lg`]:"large"===d,[`${w}--sm`]:"small"===d},S=[];l().Children.map(e.children,(e=>{Z(e)&&!J(e)&&"AnchorItem"===e.type?.displayName&&S.push(e)}));const N=y?n.map((e=>e.label)):S.map((e=>e.props.label)),I=y?n.map((e=>e.id)):S.map(((e,t)=>e.props["data-id"]||t.toString()));return h.current=N.length,l().createElement("div",{className:xe()(C,s),style:c},l().createElement("div",{className:xe()("anchor-nav"),style:{width:a?ce(a):""}},l().createElement(Qt,{activeKey:f,labels:N,onTabClick:(e,t)=>{E(e),o?.({label:N[e],id:I[e]},t)}})),l().createElement("div",{ref:u,className:xe()("anchor-container")},y?e.children:S))}));en.displayName="QmAnchor",en.Item=Jt;const tn=en,nn=e=>l().createElement(R.Tabs.TabPane,e,e.children);nn.displayName="TabPane";const rn=nn;function an(){return an=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},an.apply(null,arguments)}const ln=e=>{const t=h({tabPosition:"top"},e),{items:n,tabPosition:r,tabBarGutter:a,className:i,authConfig:o}=t,{$size:s}=Y(t),c=Ee("tabs"),d={[c]:!0,[`${c}--lg`]:"large"===s,[`${c}--sm`]:"small"===s},u={...oe(t,["items","authConfig"]),size:s,tabBarGutter:a??(["top","bottom"].includes(r)?30:0)},m=[];l().Children.map(t.children,(e=>{Z(e)&&!J(e)&&"TabPane"===e.type?.displayName&&m.push(e)}));const p=n?[...n]:m.map((({key:e,props:t})=>({key:e,label:t.tab,disabled:t.disabled,closable:t.closable,forceRender:t.forceRender,children:t.children})));if(o){const{fieldList:e=[]}=o||{};for(let t=0;t<p.length;t++){const n=p[t],r=e.find((e=>e.dataIndex===n.key)),{visible:a=1,disabled:i}=r||{};a?i&&(n.disabled=!0):(p.splice(t,1),t--)}}return l().createElement(R.Tabs,an({},u,{items:p,className:xe()(d,i)}))};ln.displayName="QmTabs",ln.TabPane=rn;const on=ln;function sn(){return sn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},sn.apply(null,arguments)}const cn=l().forwardRef(((e,t)=>{const n=h({width:"72%",showHeader:!0,showFullScreen:!0,destroyOnClose:!0,footer:null},e),{visible:r,open:a,className:i,loading:s,showHeader:c,showFullScreen:d,maskClosable:u,destroyOnClose:m,onClose:p,onClosed:f,onFullChange:g}=n,{global:y}=l().useContext(o),{$size:b}=Y(n),v=l().useRef(null),x=l().useRef(null),E=l().useRef(!1),[w,C]=l().useState(!1),[S,N]=l().useState(!1),[I,T]=l().useState(!1);He((()=>{(a??r)&&(!m&&E.current||(0,X.isUndefined)(s)&&N(!0))}),[a??r]),He((()=>{x.current&&ze(x.current,w?{width:"100%"}:{width:ce(n.width||"72%")})}),[w]);l().useImperativeHandle(t,(()=>({START_LOADING:()=>T(!0),STOP_LOADING:()=>T(!1)})));const O=Ee("drawer"),k={[O]:!0,"no-header":!c,[`${O}--lg`]:"large"===b,[`${O}--sm`]:"small"===b};return l().createElement(R.Drawer,sn({},oe(n,["visible","size","showFullScreen","loading","maskClosable","onClosed"]),{open:a??r,maskClosable:u??y?.maskClosable??!1,className:xe()(k,i),title:l().createElement(l().Fragment,null,l().createElement("span",{ref:v,className:"text"},c&&n.title),d&&l().createElement("button",{type:"button",className:"full-screen",onClick:()=>{x.current=Be(v.current,"ant-drawer-content-wrapper"),C(!w),g?.(!w)}},l().createElement(w?we.FullscreenExitOutlined:we.FullscreenOutlined))),footer:null,afterOpenChange:e=>{e?(E.current=!0,(0,X.isUndefined)(s)&&setTimeout((()=>N(!1)),100)):(C(!1),f?.())},onClose:p}),n.children,(s||I||S)&&l().createElement(mt,{spinning:!0,className:xe()("spinning")}))}));cn.displayName="QmDrawer";const dn=cn,un=require("react-draggable");var mn=r.n(un);function pn(){return pn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},pn.apply(null,arguments)}const hn="10vh";var fn=function(e){return e[e.large=48]="large",e[e.middle=44]="middle",e[e.small=40]="small",e[e.none=0]="none",e}(fn||{});const gn=l().forwardRef(((e,t)=>{const n=h({width:"60%",showHeader:!0,showFullScreen:!0,destroyOnClose:!0,draggable:!0,footer:null,style:{top:hn}},e),{visible:r,open:a,width:i,height:s,className:c,loading:d,draggable:u,showHeader:m,showFullScreen:p,maskClosable:f,destroyOnClose:g,bodyStyle:y,onFullChange:b,onClose:v,onClosed:x}=n,{global:E}=l().useContext(o),{$size:w}=Y(n),C=l().createRef(),S=l().useRef(!1),N=l().useMemo((()=>`calc(100vh - ${hn} - ${hn} - ${fn[m?w:"none"]}px)`),[w,m]),[I,T]=l().useState(!1),[O,k]=l().useState(!1),[P,L]=l().useState(!1),[A,_]=l().useState(!0),[F,D]=l().useState({left:0,top:0,bottom:0,right:0}),[H,q]=l().useState();He((()=>{if(a??r){if(!g&&S.current||(0,X.isUndefined)(d)&&k(!0),!g&&S.current)return;setTimeout((()=>{S.current=!0,(0,X.isUndefined)(d)&&k(!1)}),400)}}),[a??r]),He((()=>{q(I?{x:0,y:0}:void 0)}),[I]);l().useImperativeHandle(t,(()=>({START_LOADING:()=>L(!0),STOP_LOADING:()=>L(!1)})));const $=Ee("modal"),M={height:s?ce(s):N,maxHeight:"auto"===s?N:"",overflow:"auto"},K={[$]:!0,"no-header":!m,[`${$}--lg`]:"large"===w,[`${$}--sm`]:"small"===w};return l().createElement(R.Modal,pn({},oe(n,["visible","loading","showFullScreen","maskClosable","onClose","onClosed"]),{open:a??r,maskClosable:f??E?.maskClosable??!1,className:xe()(K,c),title:l().createElement("div",{onMouseOver:()=>{A&&_(!1)},onMouseOut:()=>{_(!0)}},l().createElement("span",{className:"text"},m&&n.title),p&&l().createElement("button",{type:"button",className:"full-screen",onClick:e=>{const t=Be(e.target,"ant-modal");if(!t)return;const n=t.querySelector(".ant-modal-body");I?(ze(t,{width:ce(i||"60%"),height:"auto",top:hn}),ze(n,{height:s?ce(s):N,maxHeight:"auto"===s?N:""})):(ze(t,{width:"100%",height:"100%",top:0,maxWidth:"100%"}),ze(n,{height:`calc(100vh - ${fn[m?w:"none"]}px)`,maxHeight:""})),T(!I),b?.(!I)}},l().createElement(I?we.FullscreenExitOutlined:we.FullscreenOutlined))),footer:null,bodyStyle:Object.assign({},M,y),onCancel:v,afterClose:()=>{x?.(),T(!1)},modalRender:e=>l().createElement(mn(),{nodeRef:C,bounds:F,position:H,disabled:!u||A||I,onStart:(e,t)=>((e,t)=>{const{clientWidth:n,clientHeight:r}=window.document.documentElement,a=C.current.getBoundingClientRect();a&&D({left:-a.left+t.x,right:n-(a.right-t.x)-1,top:-a.top+t.y,bottom:r-(a.bottom-t.y)-1})})(0,t)},l().createElement("div",{ref:C},e))}),n.children,(d||P||O)&&l().createElement(mt,{spinning:!0,className:xe()("spinning")}))}));gn.displayName="QmModal";const yn=gn,bn=require("memoize-one");var vn=r.n(bn);const xn=(0,i.createContext)(void 0),En=["&&","||","AND","OR","and","or","like","likes","in","nin","LIKE","LIKES","IN","NIN"],wn={operations:function(e){const t=e.split(" "),n=[];let r=0;n[r]=[];for(let e=0;e<t.length;e++)En.includes(t[e])?(n[r]=n[r].join(" "),r++,n[r]=[]):n[r].push(t[e]);return n[r]=n[r].join(" "),n},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,t=" "){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 n=0,r=(e=Array.isArray(e)?e:[e]).length;n<r;n++)t+="number"==typeof e[n]?e[n]:"'"+e[n]+"'",n<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,n){return e.split(t).join(n)},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 "),this.find_replace(e," NIN "," nin ")}},Cn=["==","<",">","<=",">=","!=","like","likes","in","nin"],Sn=function(e,t){let n="";for(let t=0;t<e.length;t++)"("==e[t]||")"==e[t]?n+=" "+e[t]+" ":n+=e[t];const r=n.split(" ").filter((e=>""!==e));for(let e=0;e<r.length;e++)Cn.includes(r[e])&&("this"!=r[e-1]?r[e-1]=t+"."+r[e-1]:r[e-1]=t),Cn.includes(r[e])&&(r.splice(e-1,3,`__query__(${r[e-1]}, '${r[e]}', ${r[e+1]})`),e-=2);return r.join(" ")},Nn=/(\^|\.|\[|\]|\$|\(|\)|\||\*|\+|\?|\{|\}|\\)/g,In=["string","number","boolean","symbol"],Tn=e=>In.includes(typeof e),Rn=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s+\d{2}:\d{2}:\d{2})?$/.test(e),On=e=>new RegExp(e.replace(/├/g,"(").replace(/┤/g,")").replace(/\^/g," ").toString().replace(Nn,"\\$1"),"i");window.__query__=(...e)=>((e,t,n)=>{e=e??"";let r=!0;switch(t){case"like":r=null!==e.toString().match(On(n));break;case"likes":r=n.split(/,|,/).some((t=>null!==e.toString().match(On(t))));break;case"in":Tn(n)&&(n=[n]),Array.isArray(n)&&(r=Array.isArray(e)?n.every((t=>e.includes(t))):n.includes(e));break;case"nin":Tn(n)&&(n=[n]),Array.isArray(n)&&(r=!(Array.isArray(e)?n.some((t=>e.includes(t))):n.includes(e)));break;case"!=":case"<>":r=(Rn(e)?e.slice(0,10):e)!=n;break;case"<":r=(Rn(e)?e.slice(0,10):e)<n;break;case"<=":r=(Rn(e)?e.slice(0,10):e)<=n;break;case">":r=(Rn(e)?e.slice(0,10):e)>n;break;case">=":r=(Rn(e)?e.slice(0,10):e)>=n;break;default:r=(Rn(e)?e.slice(0,10):e)==n}return r})(e[0],e[1],e[2]);const kn=wn.stringify,Pn=wn.array_format,Ln=function(e){let t=0;const n=e.length;for(let r=0;r<n;r++){const n=e.charAt(r);"("===n&&t++,")"===n&&t--}return 0===t},An=(e,t,n)=>{let r=[];t=wn.replace_symbols(t);try{if(n){const n=new Function("record",`return ${Sn(t,"record")};`);r=fr(e,(e=>n(e)))}else{const n=new Function("array","i",`return ${Sn(t,"array[i]")};`);for(let t=0,a=e.length;t<a;t++)n(e,t)&&r.push(e[t])}}catch(t){me("Table","组件 `initialFilter` 参数有误!"),r=e}return r},_n=e=>{const t=[];return e.forEach((e=>{e.children?t.push(..._n(e.children)):t.push(e)})),t},Fn=e=>e.filter((e=>(e.children&&(e.children=Fn(e.children)),!e.hidden&&!e.noAuth))),Dn=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...Dn(e.children))})),t},Hn=(e,t)=>e.map((e=>(e.children&&(e.children=Hn(e.children,t)),t?.(e),e))),qn=(e,t)=>{for(const n of e){if(n.dataIndex===t)return n;if(n.children){const e=qn(n.children,t);if(e)return e}}return null},$n=e=>{const t=e.children;return t?t[0].children?$n(t[0]):t[0]:e},Mn=e=>{const t=e.children;return t?t[t.length-1].children?Mn(t[t.length-1]):t[t.length-1]:e},Kn=(e,t)=>e.filter((e=>!t.includes(e.dataIndex))),zn=(e,t)=>{for(const n of e){if(n.rowKey===t)return n;if(n.children){const e=zn(n.children,t);if(e)return e}}return null},jn=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...jn(e.children))})),t},Vn=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Vn(e.children,t)),Array.isArray(e.children)&&e.children.length&&n.push(t(e))})),n},Wn=e=>{let t=1;const n=(e,r)=>{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,n(r,e),t+=r.colSpan})),e.colSpan=t}else e.colSpan=e.colSpan??1};e.forEach((e=>{e.level=1,n(e,null)}));const r=[];for(let e=0;e<t;e++)r.push([]);return Dn(e).forEach((e=>{e.children?e.rowSpan=1:e.rowSpan=t-e.level+1,r[e.level-1].push(e)})),r},Bn=e=>Object.assign(e,{__prevent__:!0}),Un=e=>{delete e.__prevent__},Gn=(e,t,n={left:0,top:0})=>{if(e){const r=e.parentNode;if(n.top+=e.offsetTop,n.left+=e.offsetLeft,r&&r!==document.documentElement&&r!==document.body&&(n.top-=r.scrollTop,n.left-=r.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return Gn(e.offsetParent,t,n)}return n},Yn=e=>"number"==typeof e?e:"string"==typeof e?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null,Xn=(e,t)=>(0,X.transform)(e,((e,n,r)=>{(0,X.isEqual)(n,t[r])||(e[r]=(0,X.isPlainObject)(n)&&(0,X.isPlainObject)(t[r])?Xn(n,t[r]):n)})),Qn=(e,t)=>(0,X.get)(e,t)??"",Zn=(e,t,n,r)=>{r>=0&&null!=n&&(n=Number(n).toFixed(r)),(0,X.set)(e,t,n??"")},Jn=(e,t)=>{if(!t.includes("|"))return Qn(e,t);const n=[];return t.split("|").forEach((t=>{t&&n.push(Qn(e,t))})),n.every((e=>!e))?"":n.join(" | ")},er=e=>/^-?\d+(\.\d+)?$/.test(e.toString()),tr=e=>{const t=(e=e.toString()).split("."),n="-"===t[0].charAt(0)?"-":"";let r=n?t[0].slice(1):t[0],a="";for(;r.length>3;)a=`,${r.slice(-3)}${a}`,r=r.slice(0,r.length-3);return r&&(a=r+a),`${n}${a}${t[1]?`.${t[1]}`:""}`},nr=(e,t)=>{const n=e.toString();if(!er(n)||0===t)return e;const r=Number.parseFloat(n).toString(),a=r.indexOf(".");if(-1===a)return r+"."+"0".repeat(t);const i=Math.max(0,t-(r.length-a-1));return r+"0".repeat(i)},rr=(e,t)=>e?c()(e,t):null,ar=(e,t)=>e?c()(e).format(t):"",ir=(e="")=>{let t=(new Date).getTime();return e+"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const n=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"===e?n:3&n|8).toString(16)}))},lr=e=>{const t=[];if(l().isValidElement(e)){const{children:n}=e.props;l().Children.forEach(n,(e=>{t.push(...lr(e))}))}else t.push(e);return t},or=e=>lr(e).join(""),sr=e=>e.filter((e=>!e._group)),cr=(e,t=!1)=>{let n="";if(Array.isArray(e)){let r=0;for(let a=0,i=e.length;a<i;a++){const i=e[a];if(!i.fieldName)continue;const l=Array.isArray(i.condition)?Pn(i.condition):kn(i.condition,"^");n+=`${i.bracketLeft} ${t?`${i.fieldName}|${i.fieldType}`:i.fieldName} ${i.expression} ${l} ${i.bracketRight} ${i.logic} `,r=i.logic.length}n=n.slice(0,-1*r-2)}else{const r=5;for(const r in e){const[a,i]=r.includes("|")?r.split("|"):[r,""],l=e[r];for(const e in l)n+=`${t?`${a}|${i}`:a} ${e} ${Array.isArray(l[e])?Pn(l[e]):kn(l[e],"^")} and `}n=n.slice(0,-1*r)}return n.replace(/\s+/g," ").trim()},dr=(e=[],t=[])=>{const n={};return e.forEach((e=>{const r=JSON.stringify((e=>{const n=[];return t.forEach((t=>n.push(Qn(e,t)))),n})(e));n[r]=n[r]||[],n[r].push(e)})),Object.keys(n).map((e=>n[e]))},ur=(e,t)=>{for(let n=0;n<e.length;n++){if(e[n].dataIndex===t)return[e[n]];if(Array.isArray(e[n].children)){const r=ur(e[n].children,t);if(r)return[e[n],r].flat()}}},mr=(e,t)=>{for(let n=0;n<e.length;n++){if(e[n].rowKey===t)return[t];if(Array.isArray(e[n].children)){const r=mr(e[n].children,t);if(r)return[e[n].rowKey,r].flat()}}},pr=(e,t)=>{for(const n of e){if(Array.isArray(n.children)){const e=pr(n.children,t);if(e)return e}if(t(n))return n}return null},hr=e=>{const t=[];for(let n=0;n<e.length;n++)Array.isArray(e[n].children)&&t.push(...hr(e[n].children)),t.push(e[n].rowKey);return t},fr=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&fr(e.children,t),t(e)||e.children&&e.children.length))),gr=e=>e.map((e=>(delete e.chosen,delete e.selected,e))),yr=(e,t,n=!1)=>{const r=new Set;return function e(t,a,i=1){if(r.has(t))return!1;if(t===a)return!0;if(n&&i>1)return!1;r.add(t);const l=i+1;if(Array.isArray(t)){if(!Array.isArray(a)||t.length!==a.length)return!1;for(let n=0;n<t.length;n++)if(!e(t[n],a[n],l))return!1;return!0}if(t&&a&&"object"==typeof t&&"object"==typeof a){const n=Object.keys(t);return n.length===Object.keys(a).length&&n.every((n=>e(t[n],a[n],l)))}return!1}(e,t)},br=require("prop-types");var vr=r.n(br);const xr=e=>["","small","middle","large"].includes(e),Er=80,wr="1",Cr="0",Sr=400,Nr=["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"],Ir={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};let Tr=function(e){return e.date="date",e.datetime="date",e.exactdate="date",e.week="week",e.month="month",e.quarter="quarter",e.year="year",e}({}),Rr=function(e){return 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",e}({}),Or=function(e){return e.hour="HH",e["hour-minute"]="HH:mm",e["hour-minute-second"]="HH:mm:ss",e}({});const kr={items:vr().arrayOf(vr().shape({type:vr().string.isRequired,fieldName:vr().string.isRequired})),initialValues:vr().object,initialExtras:vr().object,layout:vr().oneOf(["horizontal","vertical"]),size:(e,t,n)=>{if(!xr(e[t]||""))return ue("Form","Invalid prop `"+t+"` supplied to `"+n+"`. Validation failed.")},cols:vr().number,className:vr().string,style:vr().object,compactMode:vr().bool,labelWidth:vr().oneOfType([vr().number,vr().string]),labelAlign:vr().oneOf(["left","right"]),labelWrap:vr().bool,formType:vr().oneOf(["default","search","onlyShow"]),disabled:vr().bool,uniqueKey:vr().string,defaultRows:vr().number,defaultExpand:vr().bool,searchButtonCols:vr().number,scrollToFirstError:vr().bool,authConfig:vr().object,isAutoFocus:vr().bool,isCollapse:vr().bool,isFieldsDefine:vr().bool,isSearchBtn:vr().bool,isSubmitBtn:vr().bool,fieldsChange:vr().func,onValuesChange:vr().func,onFieldsChange:vr().func,onFinish:vr().func,onFinishFailed:vr().func,onReset:vr().func,onCollapse:vr().func},Pr={layout:"horizontal",labelWidth:Er,labelAlign:"right",formType:"default",initialValues:{},initialExtras:{},defaultRows:1,isAutoFocus:!0,isCollapse:!0,isSearchBtn:!0,onValuesChange:ee,onFieldsChange:ee,onFinish:ee,onFinishFailed:ee,onReset:ee,onCollapse:ee},Lr=(e,t)=>{if(!e)return null;if(t===Rr.week){const t=e.match(/^(\d{4})-(\d+)/);return t?c()().year(Number(t[1])).week(Number(t[2])):null}if(t===Rr.quarter){const t=e.match(/^(\d{4})-Q(\d)/);return t?c()().year(Number(t[1])).quarter(Number(t[2])):null}return c()(e,t)},Ar=(e,t)=>e?c()(e).format(t):"",_r=e=>""===e||null==e,Fr=(e,t)=>{if(!e)return"";if(!t.includes("|"))return e[t];const n=t.split("|");let r="";for(let t=0,a=n.length;t<a;t++)r+=(e[n[t].trim()]??"")+(t===a-1?"":" | ");return r},Dr=(e,t,n)=>{for(const r in n)if(Object.keys(t).includes(r)&&t[r]!==n[r])if(t[r].includes("|")){const a=t[r].split("|"),i=n[r].split("|");a.forEach(((t,n)=>e[t]=e[i[n]]))}else e[t[r]]=e[n[r]]},Hr=(e,t,n)=>{for(const r in n)if(Object.keys(t).includes(r)&&t[r]!==n[r])if(t[r].includes("|")){const a=t[r].split("|"),i=n[r].split("|");a.forEach(((t,n)=>e[t]=e[i[n]]))}else e[t[r]]=e[n[r]]},qr=(e,t,n)=>e.map((e=>{const r={value:e[t],text:e[n]};return e.disabled&&(r.disabled=!0),(0,X.isUndefined)(e.isLeaf)||(r.isLeaf=!!e.isLeaf),(0,X.isUndefined)(e.selectable)||(r.selectable=!!e.selectable),Array.isArray(e.children)&&(r.children=qr(e.children,t,n)),r})),$r=(e,t)=>{for(const n of e){if(n.value===t)return n;if(Array.isArray(n.children)){const e=$r(n.children,t);if(e)return e}}return null},Mr=(e,t,n=0)=>{const r=[];return e.forEach((e=>{e.value==t.split(",")[n]&&r.push(e),Array.isArray(e.children)&&r.push(...Mr(e.children,t,n+1))})),r},Kr=e=>Z(e)||"string"==typeof e,zr=e=>Z(e)?lr(e).join(""):e??"",jr=(e,t,n,r)=>{const a={};return a.filters=e.filters?.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}))||[],a.table={columns:e.columns||[],rowKey:e.valueName},a.fieldsDefine={valueKey:e.valueKey||e.valueName},a.fieldAliasMap={[r?"textKey":t]:e.displayName[0],[r?"valueKey":e.valueKey||e.valueName]:e.valueName},e.tableSetting&&(a.table.fetch={api:n(e.tableSetting.api),dataKey:e.tableSetting.dataKey}),e.echoSetting&&(a.echoRequest={fetchApi:n(e.echoSetting.api),formatter:t=>Object.assign({},t,{[e.echoSetting.paramKey]:t.key??t.keys}),dataKey:e.echoSetting.dataKey},e.echoSetting.displayKey&&(a.echoRequest.fieldAliasMap={[r?"textKey":t]:e.echoSetting.displayKey[0]})),e.treeSetting&&(a.tree={fetch:{api:n(e.treeSetting.api),dataKey:e.treeSetting.dataKey,valueKey:e.treeSetting.valueKey,textKey:e.treeSetting.textKey},tableParamsMap:()=>{const t={};return e.treeSetting.relativeTable?.forEach((e=>t[e.tableField]=e.treeField)),t}}),e.emmediateSetting&&(a.columns=e.emmediateSetting.columns,a.request={fetchApi:n(e.emmediateSetting.api),dataKey:e.emmediateSetting.dataKey}),a},Vr={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",""],UNIHANS:["阿","哎","安","肮","凹","八","挀","扳","邦","勹","陂","奔","伻","屄","边","灬","憋","汃","冫","癶","峬","嚓","偲","参","仓","撡","冊","嵾","曽","叉","芆","辿","伥","抄","车","抻","阷","吃","充","抽","出","欻","揣","巛","刅","吹","旾","逴","呲","匆","凑","粗","汆","崔","邨","搓","咑","呆","丹","当","刀","嘚","扥","灯","氐","甸","刁","爹","丁","丟","东","吺","厾","耑","垖","吨","多","妸","诶","奀","鞥","儿","发","帆","匚","飞","分","丰","覅","仏","紑","夫","旮","侅","甘","冈","皋","戈","给","根","刯","工","勾","估","瓜","乖","关","光","归","丨","呙","哈","咍","佄","夯","茠","诃","黒","拫","亨","噷","叿","齁","乎","花","怀","欢","巟","灰","昏","吙","丌","加","戋","江","艽","阶","巾","坕","冂","丩","凥","姢","噘","军","咔","开","刊","忼","尻","匼","肎","劥","空","抠","扝","夸","蒯","宽","匡","亏","坤","扩","垃","来","兰","啷","捞","肋","勒","崚","哩","俩","奁","良","撩","毟","拎","伶","溜","囖","龙","瞜","噜","驴","娈","掠","抡","罗","呣","妈","埋","嫚","牤","猫","么","呅","门","甿","咪","宀","喵","乜","民","名","谬","摸","哞","毪","嗯","拏","腉","囡","囔","孬","疒","娞","恁","能","妮","拈","娘","鸟","捏","囜","宁","妞","农","羺","奴","女","奻","疟","黁","挪","喔","讴","妑","拍","眅","乓","抛","呸","喷","匉","丕","囨","剽","氕","姘","乒","钋","剖","仆","七","掐","千","呛","悄","癿","亲","靑","卭","丘","区","峑","缺","夋","呥","穣","娆","惹","人","扔","日","茸","厹","邚","挼","堧","婑","瞤","捼","仨","毢","三","桒","掻","閪","森","僧","杀","筛","山","伤","弰","奢","申","升","尸","収","书","刷","衰","闩","双","脽","吮","说","厶","忪","捜","苏","狻","夊","孙","唆","他","囼","坍","汤","夲","忑","熥","剔","天","旫","帖","厅","囲","偷","凸","湍","推","吞","乇","穵","歪","弯","尣","危","昷","翁","挝","乌","夕","虲","仙","乡","灱","些","心","星","凶","休","吁","吅","削","坃","丫","恹","央","幺","倻","一","囙","应","哟","佣","优","扜","囦","曰","晕","帀","災","兂","匨","傮","则","贼","怎","増","扎","捚","沾","张","佋","蜇","贞","争","之","中","州","朱","抓","拽","专","妆","隹","宒","卓","乲","宗","邹","租","钻","厜","尊","昨","兙"],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"}};let Wr,Br=null;function Ur(e){return e||null===Br?("object"==typeof Intl&&Intl.Collator?(Wr=new Intl.Collator(["zh-Hans-CN","zh-CN"]),Br=1===Intl.Collator.supportedLocalesOf(["zh-CN"]).length):Br=!1,Br):Br}function Gr(e){const t=Vr.UNIHANS,n=Vr.PINYINS,r=Vr.EXCEPTIONS,a={source:e};if(e in r)return a.type=2,a.target=r[e],a;let i,l=-1;if(e.charCodeAt(0)<256)return a.type=1,a.target=e,a;if(i=Wr.compare(e,"阿"),i<0)return a.type=3,a.target=e,a;if(0===i)a.type=2,l=0;else{if(i=Wr.compare(e,"鿿"),i>0)return a.type=3,a.target=e,a;0===i&&(a.type=2,l=t.length-1)}if(a.type=2,l<0){let n=0,r=t.length-1;for(;n<=r;){l=~~((n+r)/2);const a=t[l];if(i=Wr.compare(e,a),0===i)break;i>0?n=l+1:r=l-1}}return i<0&&l--,a.target=n[l],a.target||(a.type=3,a.target=a.source),a}function Yr(e){return"string"==typeof e&&Ur()?e.split("").map((e=>Gr(e))):e}const Xr={isSupported:Ur,parse:Yr,patchDict:function(e){e&&("function"==typeof e&&(e=[e]),e.forEach&&e.forEach((e=>{"function"==typeof e&&e(Vr)})))},genToken:Gr,convertToPinyin:(e,t,n)=>Yr(e).map((e=>t&&2===e.type?e.target.toLowerCase():e.target)).join(n||"")},Qr={patcher:function(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]="偸"},shouldPatch:function(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}};Xr.isSupported()&&Qr.shouldPatch(Xr.genToken)&&Xr.patchDict(Qr);const Zr=Xr,Jr=e=>{const{value:t,bordered:n}=e;return l().createElement(R.Input,{value:t,title:t,bordered:n,readOnly:!0})};Jr.displayName="FormItemView";const ea=Jr;function ta(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function na(){return na=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},na.apply(null,arguments)}const{Option:ra}=R.Select,aa=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,multiple:a,loading:i,onChange:o,onValuesChange:s}=e,{t:c}=U(),{fieldName:d,options:u={},style:m={},placeholder:p=c("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:f=!0,readOnly:g,disabled:y,onClear:b}=e.option,{itemList:v=[],filterable:x=!0,listHeight:E=Sr,collapseTags:w,maxTagTextLength:C,dropdownStyle:S,openPyt:N=!0}=u,I=ie(v)?r:v,T=e=>I.find((t=>t.value===e))?.text||e?.toString()||"",O=e=>a?e?.map((e=>T(e))).join(",")||"":T(e);return t.isOnlyShow?l().createElement(ea,{value:O(n),bordered:h}):l().createElement(R.Select,na({value:n,mode:a?"multiple":void 0,popupClassName:`form-popper__${d}`,dropdownStyle:S,placeholder:p,style:m,loading:i,bordered:h,allowClear:f,disabled:y,showSearch:x,listHeight:E,maxTagCount:w?"responsive":void 0,maxTagTextLength:C},a?{title:O(n)}:null,{filterOption:(e,t)=>{const n=t?.children?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(N?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{o?.(e),s(e,O(e),I)})(e)},onClear:b}),I.map((e=>l().createElement(ra,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class ia extends i.Component{constructor(...e){super(...e),ta(this,"context",void 0),ta(this,"state",{itemList:[],loading:!1}),ta(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,buttonAfter:p,validateTrigger:h,rules:f=[],onChange:g=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(f)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:f,validateTrigger:h,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(aa,{option:this.props.option,items:t,loading:n,multiple:this.props.multiple,onValuesChange:(t,n,r)=>{g(t,n,r),e.setViewValue(o,n)}}))),p&&l().createElement(R.Col,null,e.renderFormItemButton(o,p)),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}ta(ia,"contextType",xn);const la=ia;function oa(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const sa=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{label:i,options:o={},style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{labelToCheckbox:u,falseValue:m=Cr,trueValue:p=wr}=o,{t:h}=U();return l().createElement(R.Checkbox,{checked:n===p,style:s,disabled:d||t.isOnlyShow,onChange:e=>{const{checked:t}=e.target;(e=>{r?.(e),a(e,h(e===p?"am.form.trueText":"am.form.falseText"))})(t?p:m)}},u?i:null)};class ca extends i.Component{constructor(...e){super(...e),oa(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option,{labelToCheckbox:h}=o;return l().createElement(R.Form.Item,{label:h?" ":e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(sa,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}oa(ca,"contextType",xn);const da=ca,ua=require("react-sortablejs"),ma=e=>{const{uniqueKey:t,items:n,fieldsChange:r}=e,{global:a}=l().useContext(o),{$$form:i}=l().useContext(xn),{$size:s}=Y(e),{t:c}=U(),d=l().useRef(null),[u,m]=l().useState(!1),p=l().useMemo((()=>t?`form_${t}`:""),[t]);l().useLayoutEffect((()=>{f()}),[]);const h=e=>{if(!p)return;const t=e.map((e=>{const t={};return(0,X.isUndefined)(e.hidden)||(t.hidden=e.hidden),{fieldName:e.fieldName,...t}})),n=JSON.parse(localStorage.getItem(p));(0,X.isEqual)(t,n)||(localStorage.setItem(p,JSON.stringify(t)),(async(e,t)=>{const n=a?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(p,t))},f=()=>{const e=(()=>{if(!p)return;const e=JSON.parse(localStorage.getItem(p));return e||(async e=>{const t=a?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}})(p).then((e=>{e?(localStorage.setItem(p,JSON.stringify(e)),f()):a?.getComponentConfigApi&&h(n)})).catch((()=>{})),e?(0,X.xor)(e.map((e=>e.fieldName)),n.map((e=>e.fieldName))).length>0?n.map((t=>{const{fieldName:n}=t,r=e.find((e=>e.fieldName===n));return r?((0,X.isUndefined)(r.hidden)||(t.hidden=r.hidden),t):t})):e.map((e=>({...n.find((t=>t.fieldName===e.fieldName)),...e}))):void 0})();e&&g(e)},g=e=>{r?.([...e])},y=Ee("form-fields-filter"),b={[y]:!0,[`${y}--lg`]:"large"===s,[`${y}--sm`]:"small"===s};return l().createElement(R.Dropdown,{open:u,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","fields-list")},l().createElement("div",{className:"reset"},l().createElement(fe,{type:"text",size:"small",onClick:()=>(e=>{const t=e.map((e=>{const t=n.find((t=>t.fieldName===e.fieldName))||se(e);return Object.assign(t,{hidden:e.hidden})}));g(t),h(t)})(i.getOriginItems())},c("qm.table.columnFilter.reset"))),l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:n,setList:e=>{const t=e.map((e=>e.fieldName)),r=n.map((e=>e.fieldName));if((0,X.isEqual)(t,r))return;i.setExpandHandle(!0);const a=gr(e);g(a),h(a)}},n.map((e=>l().createElement("li",{key:e.fieldName,className:"item",style:e.noAuth?{display:"none"}:void 0},l().createElement(R.Checkbox,{disabled:e.rules?.findIndex((e=>e.required))>-1,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,g(n),h(n)}}),l().createElement(we.HolderOutlined,{className:"handle",title:c("qm.form.draggable")}),l().createElement("span",{className:"title"},i.getFormItemLabel(e.label))))))),overlayClassName:xe()(b),placement:"bottomRight",overlayStyle:{minWidth:160},getPopupContainer:()=>d.current,onOpenChange:e=>{m(e)}},l().createElement("a",{ref:d,style:{padding:"5px 0"}},l().createElement(we.UnorderedListOutlined,null)))};ma.displayName="FieldsFilter";const pa=ma;function ha(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const fa=l().forwardRef(((e,t)=>{const{$$form:n}=l().useContext(xn),{value:r,onChange:a,onValuesChange:i}=e,{t:o}=U(),{options:s={},style:c={},placeholder:d=o("qm.form.inputPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h,onFocus:f,onBlur:g,onEnter:y,onClear:b}=e.option,{prefix:v,suffix:x,password:E,maxLength:w,pattern:C,toUpper:S,toTrim:N,autoFocus:I,autoComplete:T,secretType:O}=s,k=O&&(p||h),P=l().useRef(),L=l().useRef(!1);l().useEffect((()=>{const e=()=>b?.(),t=P.current?.input.parentNode.querySelector("span[class*='clear-icon']");return m&&t&&t.addEventListener("click",e),()=>{t?.removeEventListener("click",e)}}),[]);const A=e=>{a?.(e),i(e)},_=E?R.Input.Password:R.Input,F=k?((e="",t)=>(e=e.toString(),"finance"===t&&(e=(e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","))(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))(r,O):r;return n.isOnlyShow?l().createElement(ea,{value:(e=>e&&E?new Array(e.length).fill("*").join(""):e)(F),bordered:u}):l().createElement(_,{ref:e=>{P.current=e,"function"==typeof t&&t(e)},value:F,autoComplete:E?"new-password":T,autoFocus:I,placeholder:d,style:c,title:E?"":F,prefix:v,suffix:x,maxLength:w,bordered:u,allowClear:m,readOnly:p,disabled:h,onFocus:e=>{f?.(e.target.value,e)},onBlur:t=>{let n=t.target.value??"";if(N){const e=n.trim();n!==e&&(n=e,A(n))}(t=>{const{onBlur:n}=e;n?.(t)})(n),g?.(n,t)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;y?.(t,e),n.isFilterType&&(n.SUBMIT_FORM(),P.current?.blur())}},onCompositionStart:()=>{L.current=!0},onCompositionEnd:()=>{L.current=!1},onChange:e=>{let t=e.target.value;(0,X.isRegExp)(C)&&(t=C.test(t)?t:r??""),S&&!L.current&&(t=t.toUpperCase()),A(t)}})}));fa.displayName="VInput";class ga extends i.Component{constructor(...e){super(...e),ha(this,"context",void 0),ha(this,"focus",(()=>{const{type:e}=this.props.option;this[e].focus()}))}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(fa,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:t=>{h(t),e.setViewValue(a,t)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(a,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}ha(ga,"contextType",xn);const ya=ga;function ba(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const va=e=>{const{$$form:t}=l().useContext(xn),{value:n=[],onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},placeholder:s=i("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:m}=e.option,{prefix:p,suffix:h,maxLength:f}=o,g=e=>{const t=e.every((e=>!e))?[]:e;r?.(t),a(t,y(t))},y=e=>e.join(" - ");return t.isOnlyShow?l().createElement(ea,{value:y(n),bordered:c}):l().createElement(R.Input.Group,null,l().createElement(R.Input,{value:n[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:s[0],prefix:p,suffix:h,maxLength:f,allowClear:d,bordered:c,readOnly:u,disabled:m,onChange:e=>{const{value:t}=e.target;g([t,n[1]])}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:m,readOnly:!0}),l().createElement(R.Input,{value:n[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:s[1],prefix:p,suffix:h,maxLength:f,bordered:c,allowClear:d,readOnly:u,disabled:m,onChange:e=>{const{value:t}=e.target;g([n[0],t])}}))};class xa extends i.Component{constructor(...e){super(...e),ba(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:m=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(s),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(o)},required:e.getFormItemRequired(u)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(va,{option:this.props.option,onValuesChange:(t=[],n)=>{m(t),e.setViewValue(a,n)}}))),c&&l().createElement(R.Col,{flex:ce(c.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...c}))))}}ba(xa,"contextType",xn);const Ea=xa,wa=require("big.js");var Ca=r.n(wa);function Sa(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Na=l().forwardRef(((e,t)=>{const{$$form:n}=l().useContext(xn),{value:r,onChange:a,onValuesChange:i}=e,{t:o}=U(),{options:s={},style:c={},placeholder:d=o("qm.form.inputPlaceholder"),bordered:u=!0,readOnly:m,disabled:p,onFocus:h,onBlur:f,onEnter:g}=e.option,{step:y=1,min:b,max:v,precision:x,autoFocus:E,stringMode:w,textAlign:C="left",controls:S=!0,formatter:N,parser:I}=s,T=l().useRef(),O=l().useRef(r),k=e=>{const t=_r(e)?"":(0,X.isNumber)(e)?e.toFixed(x):new(Ca())(e).toFixed(x);return"function"==typeof N?N(t):t},P={[C]:!0,controls:S};return n.isOnlyShow?l().createElement(ea,{value:k(r),bordered:u}):l().createElement(R.InputNumber,{ref:e=>{T.current=e,"function"==typeof t&&t(e)},value:r,className:xe()(P),placeholder:d,style:{width:"100%",...c},step:y,min:b,max:v,controls:S,precision:x,autoFocus:E,stringMode:w,formatter:N,parser:I,bordered:u,readOnly:m,disabled:p,onFocus:e=>{h?.(e.target.value,e)},onBlur:t=>{re((()=>{(t=>{const{onBlur:n}=e;n?.(t)})(O.current),f?.(O.current,t)}))},onKeyUp:e=>{13===e.keyCode&&(g?.(r,e),n.isFilterType&&(n.SUBMIT_FORM(),T.current?.blur()))},onChange:e=>{const t=e??"";!w&&(Number(t)>Number.MAX_SAFE_INTEGER||Number(t)<Number.MIN_SAFE_INTEGER)||(e=>{O.current=e,a?.(e),i(e,k(e))})(t)}})}));Na.displayName="VInputNumber";class Ia extends i.Component{constructor(...e){super(...e),Sa(this,"context",void 0),Sa(this,"focus",(()=>{const{type:e}=this.props.option;this[e].focus()}))}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Na,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:(t,n)=>{h(t),e.setViewValue(a,n)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(a,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Sa(Ia,"contextType",xn);const Ta=Ia;function Ra(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Oa=e=>{const{$$form:t}=l().useContext(xn),{value:n=[],onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},placeholder:s=i("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:m}=e.option,{step:p=1,min:h=0,max:f,textAlign:g="left",controls:y=!0,precision:b,formatter:v,parser:x}=o,E=e=>{e.every((e=>null!==e))&&e[0]>e[1]&&(e[1]=e[0]),w(e)},w=e=>{const t=e.every((e=>null===e))?[]:[...e];r?.(t),a(t,C(t))},C=e=>_r(e)?"":e.map((e=>_r(e)?"":Number(e).toFixed(b))),S={[g]:!0,controls:y};return t.isOnlyShow?l().createElement(ea,{value:C(n),bordered:c}):l().createElement(R.Input.Group,null,l().createElement(R.InputNumber,{value:n[0],className:xe()("site-input-left",S),style:{width:"calc(50% - 5px)",display:"table-cell",float:"left"},placeholder:s[0],step:p,min:h,max:f,controls:y,precision:b,formatter:v,parser:x,bordered:c,readOnly:u,disabled:m,onChange:e=>{w([e,n[1]])},onBlur:()=>{E(n)}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:m,readOnly:!0}),l().createElement(R.InputNumber,{value:n[1],className:xe()("site-input-right",S),style:{width:"calc(50% - 5px)"},placeholder:s[1],step:p,min:h,max:f,controls:y,precision:b,formatter:v,parser:x,bordered:c,readOnly:u,disabled:m,onChange:e=>{w([n[0],e])},onBlur:()=>{E(n)}}))};class ka extends i.Component{constructor(...e){super(...e),Ra(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:m=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(s),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(o)},required:e.getFormItemRequired(u)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Oa,{option:this.props.option,onValuesChange:(t=[],n)=>{m(t),e.setViewValue(a,n)}}))),c&&l().createElement(R.Col,{flex:ce(c.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...c}))))}}Ra(ka,"contextType",xn);const Pa=ka;let La=function(e){return e[e.large=40]="large",e[e.middle=32]="middle",e[e.small=24]="small",e}({});const Aa=(0,i.createContext)(void 0),_a={dataIndex:vr().string.isRequired,title:vr().string.isRequired,description:vr().string,colSpan:vr().number,width:vr().number,minWidth:vr().number,fixed:vr().oneOf(["left","right"]),align:vr().oneOf(["left","center","right"]),theadAlign:vr().oneOf(["left","center","right"]),printFixed:vr().bool,hidden:vr().bool,noAuth:vr().bool,noFixed:vr().bool,ellipsis:vr().bool,className:vr().string,theadClassName:vr().string,children:vr().array,sorter:vr().oneOfType([vr().bool,vr().func]),filter:vr().shape({type:vr().oneOf(["text","textarea","checkbox","radio","number","date","tree"]).isRequired,items:vr().arrayOf(vr().shape({text:vr().string,value:vr().oneOfType([vr().string,vr().number])})),style:vr().object}),precision:vr().number,displayPrecision:vr().number,formatType:vr().oneOf(["date","datetime","dateShortTime","finance","percent","secret-name","secret-phone","secret-IDnumber","secret-bankNumber"]),required:vr().bool,canCopy:vr().bool,editRender:vr().func,dictItems:vr().arrayOf(vr().shape({text:vr().string,value:vr().oneOfType([vr().string,vr().number])})),summation:vr().shape({sumBySelection:vr().bool,displayWhenNotSelect:vr().bool,dataKey:vr().string,unit:vr().string,render:vr().func}),groupSummary:vr().shape({dataKey:vr().string,unit:vr().string,render:vr().func}),shouldCellUpdate:vr().func,headRender:vr().func,render:vr().func},Fa=(vr().arrayOf(vr().shape(_a)).isRequired,vr().func,vr().array,vr().oneOfType([vr().string,vr().func]).isRequired,vr().number,vr().bool,vr().bool,vr().shape({api:vr().func.isRequired,params:vr().object.isRequired,formatter:vr().func,beforeFetch:vr().func,afterFetch:vr().func,stopToFirst:vr().bool,dataKey:vr().string,callback:vr().func}),vr().bool,vr().bool,vr().string,vr().string,vr().object,vr().bool,vr().bool,vr().bool,vr().oneOfType([vr().object,vr().func]),vr().oneOfType([vr().object,vr().func]),vr().array,vr().func,vr().bool,vr().object,vr().object,vr().shape({type:vr().oneOf(["checkbox","radio"]).isRequired,defaultSelectedRowKeys:vr().array,selectedRowKeys:vr().array,hideSelectAll:vr().bool,checkStrictly:vr().bool,filterable:vr().bool,selectByClickRow:vr().bool,selectFirstRowOnChange:vr().bool,clearableAfterFetched:vr().bool,selectAllOnCurrentPage:vr().bool,fetchSelectedRows:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),fetchAllRowKeys:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),disabled:vr().func,onChange:vr().func,onSelect:vr().func,onSelectAll:vr().func}),vr().shape({currentRowKey:vr().oneOfType([vr().number,vr().string]),disabled:vr().func,onChange:vr().func}),vr().shape({virtual:vr().bool,overscan:vr().number,doubleXScrollbar:vr().bool}),vr().shape({expandIconColumn:vr().string}),vr().shape({defaultExpandAllRows:vr().bool,defaultExpandedRowKeys:vr().array,expandedRowKeys:vr().array,hideExpandAll:vr().bool,rowExpandable:vr().func,expandedRowClassName:vr().string,expandedRowRender:vr().func,onExpand:vr().func,onChange:vr().func}),vr().shape({cellMerge:vr().bool,onCellMerge:vr().func,onSelectChange:vr().func}),vr().shape({groupItems:vr().arrayOf(vr().shape({dataIndex:vr().string.isRequired,titleIndex:vr().string,color:vr().string,backgroundColor:vr().string})),fetch:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),onChange:vr().func}),vr().func,vr().bool,vr().bool,vr().bool,vr().bool,vr().shape({current:vr().number,pageSize:vr().number,pageSizeOptions:vr().array,showSizeChanger:vr().bool,showQuickJumper:vr().bool}),vr().shape({fileName:vr().string,fetch:vr().shape({api:vr().func.isRequired,params:vr().object}),beforeExport:vr().func,cellStyle:vr().bool,hideIcon:vr().bool}),vr().shape({showLogo:vr().bool}),vr().shape({fetch:vr().shape({api:vr().func.isRequired,params:vr().object,dataKey:vr().string}),fieldList:vr().arrayOf(vr().object)}),vr().shape({position:vr().oneOf(["top","bottom"]),hideAlert:vr().bool,hideClearButton:vr().bool}),vr().oneOf(["left","right"]),vr().func,vr().func,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().bool,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,vr().func,{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}),Da=10,Ha="1",qa="0",$a="YYYY-MM-DD",Ma="YYYY-MM-DD HH:mm:ss",Ka="YYYYMMDDHHmmss",za={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};let ja=function(e){return e.left="flex-start",e.right="flex-end",e}({});const Va={...i}.useId;let Wa=0;const Ba=Va?function(e){const t=Va();return e||t}:function(e){const[t]=i.useState(`qm_unique_${Wa}`);return i.useEffect((()=>{Wa+=1}),[]),e||t};let Ua=[];const Ga={_getInstance:function(e){return Ua.find((t=>t.id===e))??null},getFocusInstance:function(){return Ua[0]??null},focus:function(e){const t=this._getInstance(e);t&&0!==Ua.findIndex((e=>e===t))&&(this.deregister(e),Ua=[t,...Ua])},register:function(e,t){e&&t&&(null!==this._getInstance(e)&&this.deregister(e),Ua=[{id:e,vm:t},...Ua])},deregister:function(e){e&&(Ua=Ua.filter((t=>t.id!==e)))}};function Ya(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Xa=class{constructor(){Ya(this,"state",{required:[],validate:[],edited:[],inserted:[],updated:[],removed:[]}),Ya(this,"addToRequired",(e=>{-1===this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.required.push(e)})),Ya(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)})),Ya(this,"addToValidate",(e=>{-1===this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.validate.push(e)})),Ya(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)})),Ya(this,"addToEdited",(e=>{-1===this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.edited.push(e)})),Ya(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)})),Ya(this,"addToInserted",(e=>{-1===this.state.inserted.findIndex((t=>t===e))&&this.state.inserted.push(e)})),Ya(this,"removeFromInserted",(e=>{const t=this.state.inserted.findIndex((t=>t===e));t<0||this.state.inserted.splice(t,1)})),Ya(this,"addToUpdated",(e=>{-1===this.state.updated.findIndex((t=>t===e))&&this.state.updated.push(e)})),Ya(this,"removeFromUpdated",(e=>{const t=this.state.updated.findIndex((t=>t===e));t<0||this.state.updated.splice(t,1)})),Ya(this,"addToRemoved",(e=>{-1===this.state.removed.findIndex((t=>t===e))&&this.state.removed.push(e)})),Ya(this,"removeFromRemoved",(e=>{const t=this.state.removed.findIndex((t=>t===e));t<0||this.state.removed.splice(t,1)})),Ya(this,"clearAllLog",(()=>{this.state.required=[],this.state.validate=[],this.state.edited=[],this.state.inserted=[],this.state.updated=[],this.state.removed=[]}))}destroy(){for(const e in this)Object.prototype.hasOwnProperty.call(this,e)&&(this[e]=null)}},Qa={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",virtualScrollX:50,virtualScrollY:100,sorterFieldName:"tsortby",filterFieldName:"twhere",currentPageName:"currentPage",pageSizeName:"pageSize",showFilterType:!0,printWidth:1040,operationColumn:"__action__",selectionColumn:"__selection__",expandableColumn:"__expandable__",summaryIgnore:"sumIgnored",popupClassName:"table-editable__popper"};function Za(e){return void 0!==e}function Ja(e,t){const{defaultValue:n,value:r,onChange:a,postState:l}=t||{},[o,s]=i.useState((()=>Za(r)?r:Za(n)?"function"==typeof n?n():n:"function"==typeof e?e():e)),c=Za(r)?r:o,d=l?l(c):c,u=G(a),[m,p]=i.useState([c]);return f((()=>{const e=m[0];o!==e&&u(o,e)}),[m]),f((()=>{Za(r)||s(r)}),[r]),[d,G((e=>{s(e),p([c])}))]}const ei=e=>e.map((e=>{const t={...e};return t.children&&(t.children.forEach((e=>{t.fixed?e.fixed=t.fixed:delete e.fixed})),t.children=ei(t.children)),t})),ti=(e,t)=>{const{fetch:n,columns:r,border:a,rowSelection:i,summation:o,expandable:s,treeConfig:c,webPagination:d,scrollPagination:u,showSuperSearch:m,showFastSearch:p,showGroupSummary:h,showTableImport:f,showClipboard:g,showSelectCollection:y,showPivotGrid:b,footRender:v}=e,{tableRef:x,getRowKey:E,tableFullData:w,tableFlatData:C,updateMark:S,selectionKeys:N,sorter:I,filters:T,superFilters:R,pagination:O,mergedTdCells:k}=t,{selectionRows:P,summaries:L}=x.current,{expandIconColumn:A=""}=c||{},{t:_}=U(),F=(e,t,n,r,a)=>{const i=`${t},${n}`;e.has(i)||e.set(i,{row:t,col:n,rowSpan:r,colSpan:a})},D=l().useMemo((()=>!!n?.api),[n?.api]),H=l().useMemo((()=>!D&&!!d),[D,d]),q=l().useMemo((()=>D&&!!u),[D,u]),$=l().useMemo((()=>(D||H)&&!q),[D,H,q]),M=l().useMemo((()=>(e=>{const t=(e=>{const t=[],n=[],r=[];for(let a=0;a<e.length;a++){const i=e[a];"left"===i.fixed?t.push(i):"right"===i.fixed?n.push(i):r.push(i)}return[...t,...r,...n]})(ei(e)),n=(e=>{if(!e)return null;const{type:t}=e;return{dataIndex:Qa.selectionColumn,title:"radio"===t?_("qm.table.config.selectionText"):"",width:Qa.selectionColumnWidth,fixed:"left",type:t}})(i),r=(a=s,a?.expandedRowRender?{dataIndex:Qa.expandableColumn,title:"",width:Qa.selectionColumnWidth,fixed:"left",type:"expand"}:null);var a;return n&&t.unshift(n),r&&t.unshift(r),Fn(t)})(r)),[r]),K=l().useMemo((()=>_n(M)),[M]),z=l().useMemo((()=>K.filter((e=>"function"==typeof e.editRender))),[K]),j=l().useMemo((()=>K.filter((e=>!!e.summation))),[K]),V=l().useMemo((()=>K.filter((e=>"left"===e.fixed))),[K]),W=l().useMemo((()=>K.filter((e=>"right"===e.fixed))),[K]),B=l().useMemo((()=>(e=>{const t=new Map;return e.forEach((e=>{const n=C.findIndex((t=>E(t,t.index)===e.rowKey)),r=K.findIndex((t=>t.dataIndex===e.dataIndex));if(!(n<0||r<0)){F(t,n,r,e.rowSpan,e.colSpan);for(let a=0;a<e.rowSpan;a++)for(let i=0;i<e.colSpan;i++)0===a&&0===i||F(t,n+a,r+i,0,0)}})),Array.from(t.values()).sort(((e,t)=>e.row-t.row||e.col-t.col))})(k)),[k,K,w]),G=l().useMemo((()=>{const e=K.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(e.dataIndex)));return A&&e.some((e=>e.dataIndex===A))?A:e[0]?.dataIndex??""}),[K,A]),Y=l().useMemo((()=>j.length>0),[j]),X=l().useMemo((()=>!!v||Y),[v,Y]),Q=l().useMemo((()=>Wn(M).length>1),[M]),Z=l().useMemo((()=>a||Q),[a,Q]),J=l().useMemo((()=>K.some((e=>e.sorter))),[K]),ee=l().useMemo((()=>K.some((e=>e.filter))),[K]),te=l().useMemo((()=>j.some((e=>!!e.summation.dataKey))),[j]),ne=l().useMemo((()=>!D&&!!f),[D,f]),re=l().useMemo((()=>!!g&&z.length>0),[g,z]),ae=l().useMemo((()=>!!y&&"checkbox"===i?.type),[y,i]),ie=l().useMemo((()=>!!m&&ee),[m,ee]),le=l().useMemo((()=>!D&&!!p),[D,p]),oe=l().useMemo((()=>!D&&!!b),[D,b]),se=l().useMemo((()=>!!h&&K.some((e=>!!e.groupSummary))),[K]),ce=l().useMemo((()=>!!o?.groupItems?.length),[o]),de=l().useMemo((()=>!C.length),[C]),ue=l().useMemo((()=>(()=>{const e={};return j.forEach((t=>{const{dataIndex:n,precision:r,displayPrecision:a,summation:i}=t,{sumBySelection:l,displayWhenNotSelect:o,unit:s}=i,c=ce?sr(x.current.tableFullData):x.current.tableFullData,d=!P.length&&!!o;let u=(!l||d?c:P).reduce(((e,t)=>{if(t?.[Qa.summaryIgnore])return e;const r=Qn(t,n);return er(r)?e.plus(r):e}),new(Ca())(0));!Object.keys(L).includes(n)||l&&!d||(u=new(Ca())(Qn(L,n))),Zn(e,n,u.toNumber());let m=r>=0?u.toFixed(r):u.toString();a>=0&&""!==m&&(m=nr(m,a)),m=tr(m),Zn(e,`${n}_text`,s?`${m} ${s}`:m)})),[e]})()),[C,S,N,L]),me=l().useMemo((()=>(e=>e.filter((e=>e.summation.dataKey)).map((e=>`sum|${e.dataIndex}`)).join(","))(j)),[j]),pe=l().useMemo((()=>{const e=(e=>{const t=[];return Object.keys(e).forEach((n=>{null!==e[n]&&t.push(`${n}|${e[n]}`)})),t.join(",")})(I),t=((e,t)=>{const n=[];if(Object.keys(e).length)for(const t in e){const[r,a]=Qa.showFilterType?t.split("|"):[t,""],i=e[t];Object.keys(i).forEach((e=>{n.push({type:a,bracketLeft:"",fieldName:r,expression:e,value:i[e],bracketRight:"",logic:"and"})}))}return t.length&&t.forEach((e=>{n.push({type:Qa.showFilterType?e.fieldType:"",bracketLeft:e.bracketLeft,fieldName:e.fieldName,expression:e.expression,value:e.condition,bracketRight:e.bracketRight,logic:e.logic})})),n.length&&(n[n.length-1].logic=""),n})(T,R);return{...e?{[Qa.sorterFieldName]:e}:null,...t.length?{[Qa.filterFieldName]:t}:null,...me?{[Qa.groupSummary.summaryFieldName]:me,usedJH:1}:null,...n?.params??null,[Qa.currentPageName]:O.current,[Qa.pageSizeName]:O.pageSize}}),[n?.params,O.current,O.pageSize,I,T,R,me]);return{isFetch:D,isWebPagination:H,isScrollPagination:q,showPagination:$,tableColumns:M,flattenColumns:K,editableColumns:z,summationColumns:j,leftFixedColumns:V,rightFixedColumns:W,derivedMergeCells:B,treeExpandIndex:G,showSummary:Y,showFooter:X,isHeadGroup:Q,bordered:Z,isHeadSorter:J,isHeadFilter:ee,isServiceSummation:te,isSelectCollection:ae,isTableImport:ne,isTableClipboard:re,isSuperSearch:ie,isFastSearch:le,isPivotGrid:oe,isGroupSummary:se,isGroupSubtotal:ce,isTableEmpty:de,summationRows:ue,fetchParams:pe}},ni=(e,t)=>{const{rowKey:n,height:r,dataSource:a,summation:i,fetch:o,initialSorter:s,initialFilter:c,rowSelection:d,expandable:u,tableConfig:m,authConfig:p,ignorePageIndex:h,columnsChange:g,onChange:y,onDataChange:b,onDataLoad:v,onScrollEnd:x,onFetchError:E}=e,{getRowKey:w,tableRef:C,tableElementRef:S,tableBodyRef:N,$size:I,tableColumns:T,flattenColumns:R,tableFullData:O,pagination:k,layout:P,filters:L,sorter:A,superFilters:_,fetchParams:F,selectionKeys:D,rowExpandedKeys:H,highlightKey:q,summationColumns:$,isFetch:M,isWebPagination:K,isScrollPagination:z,isServiceSummation:j,isGroupSubtotal:V,doLayout:W,setTableFullData:B,setTableOriginData:Y,setTableFlatData:Q,setAllTableData:Z,setDeriveRowKeys:J,setPagination:ee,setPingRight:ne,setPingLeft:re,setSpinning:ae,setSorter:le,setFilters:se,setSuperFilters:ce,setSelectionKeys:de,setRowExpandedKeys:ue,setHighlightKey:pe,setSelectionRows:he,setScrollXLoad:fe,setScrollYLoad:ge,setFieldAuth:ye,setResizeState:be,setSummaries:ve,setPermission:xe,setRecordsMap:Ee,resetTableScroll:we,clearElementStore:Ce,clearRecordsMap:Se}=t,{t:Ne}=U(),{store:Ie}=C.current,Te=l().useRef({...F}),Re=l().useRef(!1),Oe=xt(S);f((()=>{_e(),W()}),[T]),f((()=>{ke()}),[Oe.width,Oe.height,I,r,P.tableAutoHeight]),He((()=>{ot(),st(),ct(),M||(K&&et(),Ge(a)),s&&le(s),c&&se(c)}),[a,o?.params]),He((()=>{const e=Ve(F,Te.current);e||M&&d?.clearableAfterFetched&&dt(),!e&&F[Qa.currentPageName]>1&&!o?.stopToFirst?et():M&&Be(),Te.current=F}),[F]),He((()=>{K&&rt(),z||we(),Ke()}),[k.current,k.pageSize]),He((()=>{M||Pe(O.length),W()}),[O]),He((()=>{C.current.isTreeTable&&rt()}),[H]);const ke=()=>{const{scrollBarRef:e,resizeState:t}=C.current,{width:n,height:r}=Oe;W(),P.tableBodyWidth>n&&ne(!0),e.current.scrollLeft>0&&re(!0),be(Object.assign({},t,{width:n,height:r}))},Pe=e=>{e!==k.total&&ee((t=>Object.assign({},t,{total:e})))},Le=e=>{Re.current=e},Ae=Et((e=>{Qe(),x?.(e)})),_e=()=>{fe(R.length>Qa.virtualScrollX)},Fe=(e=[])=>{let t=e.length>Qa.virtualScrollY;C.current.isTreeTable&&(t=!0),m?.virtual&&(t=!0),ge(t)},De=e=>V?qe($e(e,0)):e,qe=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...qe(e.children)),delete e.children,t.push(e)})),t},$e=(e,t)=>{const r=i.groupItems?.[t];return r?dr(e,[r.dataIndex]).map((e=>{const a={children:$e(e,t+1),_group:r.dataIndex};return"function"!=typeof n&&Zn(a,n.toString(),ir()),r.titleIndex&&Zn(a,r.titleIndex,Qn(e[0],r.titleIndex)),Zn(a,r.dataIndex,Qn(e[0],r.dataIndex)),$.forEach((e=>{const{dataIndex:t}=e,n=a.children?.reduce(((e,n)=>{if(n[Qa.summaryIgnore])return e;const r=Number(Qn(n,t));return Number.isNaN(r)?e:e+r}),0);Zn(a,t,n)})),a})):(e.forEach(((t,n)=>{t._rowSpan=0===n?e.length:0,t._colSpan=1})),e)},Me=e=>{de(e),he((e=>{const{selectionRows:t,recordsMap:n}=C.current,r=new Map;t.forEach((e=>r.set(w(e,e.index),e)));const a=[];for(let t=0,i=e.length;t<i;t++){const i=r.get(e[t])||n.get(e[t]);i&&a.push(i)}return a})(e))},Ke=Et((()=>{y?.(k,je(L),ze(A),_,{currentDataSource:nt()})})),ze=e=>{const t={};for(const n in e)null!==e[n]&&(t[n]=e[n]);return t},je=e=>{const t={};for(const n in e){if(!n.includes("|"))continue;const[r,a]=n.split("|");t[Qa.showFilterType?`${r}|${a}`:r]=e[n]}return t},Ve=(e,t)=>{const n=Object.keys(Xn(e,t));return 1===n.length&&(n.includes(Qa.currentPageName)||n.includes(Qa.pageSizeName))},We=G((async()=>{if(!o)return;const{formatter:e=e=>e,beforeFetch:t=te,afterFetch:n,callback:r}=o;if(!t(F))return;const a=!!i?.fetch?.api;ae(!0);try{const[t,l]=a?await Promise.all([o.api(e(F)),i.fetch.api(e(F))]):[await o.api(e(F))];if(C.current.unMounted)return;if(a?200===t.code&&200===l.code:200===t.code){const e=o.dataKey??Qa.dataKey;let a=(0,X.get)(t.data,e)??[];a="function"==typeof n?await n(a):a;const i=(0,X.get)(t.data,e.replace(/[^.]+$/,Qa.totalKey))||a.length||0,s=Math.max(Math.ceil(i/k.pageSize),1);if(F[Qa.currentPageName]>s)return Ze({...k,current:s});Ge(Re.current?C.current.tableFullData.concat(a):a),Pe(i),Ye(l?.data||t.data),r?.(t.data,t)}}catch(e){E?.(e)}var l;l=o,Object.prototype.hasOwnProperty.call(l,"stopToFirst")&&(o.stopToFirst=!1),ae(!1),Le(!1)})),Be=Et(We),Ue=e=>e.map(((e,t)=>(Array.isArray(e.children)&&(e.children=Ue(e.children)),e.index=t,h||(e.pageIndex=(e=>{const{current:t,pageSize:n}=k;return!M||z?e:(t-1)*n+e})(t)),e))),Ge=e=>{const t=De(Ue(e));at(t),it(t),Me((e=>{const{type:t,checkStrictly:n=!0}=d||{},r=Array.isArray(e)?e:D;let a=[];return C.current.isTreeTable&&!n&&r.forEach((e=>{a.push(...((e,t)=>{const{disabled:n}=d||{},{deriveRowKeys:r,recordsMap:a}=C.current,i=zn(r,e);let l=[];if(!i)return l;let o=hr(i?.children||[]);return n&&(o=o.filter((e=>!a.has(e)||!n(a.get(e))))),l=[...new Set([...t,...o])],(mr(r,e)?.slice(0,-1).reverse()||[]).forEach((e=>{const t=zn(r,e),n=t?.children?.every((e=>l.includes(e.rowKey)));l=n?[...l,e]:l.filter((t=>t!==e))})),l})(e,r))})),a="radio"===t?r.slice(0,1):[...new Set([...r,...a])],a})()),ue((e=>{const{isTreeTable:t,allRowKeys:n,allParentRowKeys:r,deriveRowKeys:a,recordsMap:i}=C.current,{defaultExpandAllRows:l,rowExpandable:o,expandedRowRender:s}=u||{};let c=Array.isArray(e)?e:[...H];if(l)c=t?r:n;else if(t){s&&me("Table","树结构表格不能再设置展开行的 `expandedRowRender` 参数");const e=[...D];q&&e.unshift(q),e.forEach((e=>{const t=mr(a,e)||[];c.push(...t.length>1?t.slice(0,-1).reverse():t)})),c=[...new Set(c)]}return o&&c.filter((e=>{const t=i.get(e);return!!t&&o(t)})),c})()),Xe(),v?.(t)},Ye=e=>{if(!j)return;const t=i?.fetch?.dataKey??Qa.summationKey,n=(t?(0,X.get)(e,t):e)??{},r={};$.filter((e=>!!e.summation.dataKey)).forEach((e=>{Zn(r,e.dataIndex,Number(Qn(n,e.summation.dataKey)))})),ve(r)},Xe=()=>{const{type:e,selectFirstRowOnChange:t}=d||{};if("radio"===e&&t){const e=nt();if(e.length){const t=w(e[0],e[0].index);Me([t])}else Me([])}},Qe=()=>{if(!z)return;const e=Je();Re.current||k.current>=e||(Le(!0),Ze({...k,current:k.current+1}))},Ze=({current:e,pageSize:t})=>{ee((n=>Object.assign({},n,{current:e,pageSize:t})))},Je=()=>{const{pageSize:e,total:t}=k;return Math.ceil(t/e)||1},et=()=>{Ze(Object.assign({},k,{current:1}))},tt=()=>{const{current:e,pageSize:t}=k;return C.current.tableFullData.slice((e-1)*t,e*t)},nt=()=>K?tt():C.current.tableFullData,rt=()=>{const{allTableData:e,isTreeTable:t}=C.current,n=K?jn(tt()):e,r=t?(e=>{const t=new Map,n=[];return e.forEach((e=>{const r=w(e,e.index);if(!e._parentRowKey)return n.push(e),t.set(r,!0);H.includes(e._parentRowKey)&&t.get(e._parentRowKey)&&(n.push(e),t.set(r,!0))})),t.clear(),n})(n):n;Fe(r),Q(r)},at=e=>{B(e),Z(e),J(e),lt(),rt()},it=e=>{Y(e)},lt=()=>{Se(),C.current.allTableData.forEach((e=>Ee(w(e,e.index),e)))},ot=()=>{le({})},st=()=>{se({})},ct=()=>{ce([])},dt=()=>{Me([])};return{initialTable:()=>{(async()=>{if(!p)return;let t=oe(p,["fetch"]);if(p.fetch){const{api:e,params:n,dataKey:r}=p.fetch;try{const a=await e(n);200===a.code&&(t=(r?(0,X.get)(a.data,r):a.data)??{})}catch(e){}}if(Object.keys(t).length){const{isExport:e=1,isImport:n=1,isPrint:r=1}=t;xe((t=>Object.assign({},t,{export:!!e,import:!!n,print:!!r})))}if(Array.isArray(t.fieldList)){const n=Hn(e.columns,(e=>{const{dataIndex:n}=e,r=t.fieldList.find((e=>e.dataIndex===n));if(r){const{visible:t=1,disabled:a,secretName:i}=r,l=qn(C.current.originColumns,n);ye(n,{visible:t,disabled:a,secretName:i}),t||(e.noAuth=!0,l.noAuth=!0),i&&(e.formatType=`secret-${i}`,l.formatType=`secret-${i}`)}}));g?.(n)}})(),q&&N.current.setClickedValues([q,""]),"radio"===d?.type&&D.length&&N.current.setClickedValues([D[0],""]),_e(),Fe(),M?We():Ge(a)},checkDataIndex:()=>{const e=R.map((e=>e.dataIndex));[...new Set(e)].length!==e.length&&me("Table","配置项 dataIndex 属性是唯一的,不能重复")},createTableFullData:at,getTableData:We,createTableList:nt,createTableData:Ge,createGroupData:De,setSelectionKeysEffect:Me,doFieldValidate:(e,t,n,r,a)=>{if(!Array.isArray(e))return me("Table","可编辑单元格的校验规则 `rules` 配置不正确");e.length&&(Ie.removeFromRequired({x:n,y:r}),Ie.removeFromValidate({x:n,y:r}),e.forEach((e=>{e.required&&ie(t)&&Ie.addToRequired({x:n,y:r,text:e.message||a+Ne("qm.form.requiredTips")}),"function"!=typeof e.validator||e.validator?.(t)||Ie.addToValidate({x:n,y:r,text:e.message})})))},getTableLog:()=>{const{required:e,validate:t,inserted:n,updated:r,removed:a}=Ie.state,i=(0,X.intersection)(n,a),l=e=>e.map((e=>({rowKey:e.x,dataIndex:e.y,text:e.text})));return{required:l(e),validate:l(t),inserted:n.filter((e=>!i.includes(e))),updated:r.filter((e=>![...(0,X.intersection)(r,n),...(0,X.intersection)(r,a)].includes(e))),removed:a.filter((e=>!i.includes(e)))}},dataChange:()=>{b?.(C.current.tableFullData)},tableChange:Ke,toLastPage:()=>{const e=Je();k.current!==e&&Ze(Object.assign({},k,{current:e}))},toFirstPage:et,getPageCount:Je,pagerChangeHandle:Ze,scrollBottomDebouncer:Ae,clearTableSorter:ot,clearTableFilter:st,clearSuperFilters:ct,clearRowSelection:dt,clearRowHighlight:()=>{pe("")},clearTableLog:()=>{Ie.clearAllLog()},destroy:()=>{const{tableManager:e,uid:t}=C.current;Ce(),Ie.destroy(),e.deregister(t)}}};function ri({handler:e,delay:t=0}){const n=Xt(e,t),r=G(t>0?n:e);i.useEffect((()=>(window.addEventListener("resize",r),()=>window.removeEventListener("resize",r))),[r])}const ai=e=>{const{total:t}=e,{tableRef:n,prefixCls:r,selectionKeys:a,isHeadSorter:i,isHeadFilter:o,clearTableSorter:s,clearTableFilter:c,clearSuperFilters:d,clearRowSelection:u,clearRowHighlight:m,setActivedCell:p}=l().useContext(Aa),{infoBarConfig:h,rowSelection:f,rowHighlight:g}=n.current.props,{allTableData:y,invalidRowKeys:b}=n.current,{hideAlert:v,hideClearButton:x}=h||{},{t:E}=U(),w=l().useMemo((()=>!v),[v]),C=l().useMemo((()=>!x&&!!(i||o||f||g)),[x,i,o,f,g]),S={[`${r}__alert`]:!0};return w?l().createElement("div",{className:xe()(S)},l().createElement("i",{className:"svgicon icon"},l().createElement(we.InfoCircleFilled,null)),l().createElement("span",null,E("qm.table.alert.total",{total:n.current.isTreeTable?y.length:t}),f?`,${E("qm.table.alert.selected",{total:Math.max(a.length-b.length,0)})}`:""),C&&l().createElement("em",{onClick:()=>{c(),d(),u(),m(),re((()=>s())),p({})}},E("qm.table.alert.clear"))):null},ii=l().forwardRef(((e,t)=>{const{isFullScreen:n,open:r=!0}=e,{prefixCls:a,setFullScreen:i}=l().useContext(Aa),{t:o}=U(),s=()=>{i(!n)};return l().useImperativeHandle(t,(()=>({clickHandle:s}))),r?l().createElement("span",{className:`${a}-full-screen`,title:o(n?"qm.table.screen.cancelFull":"qm.table.screen.full"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},n?l().createElement(we.FullscreenExitOutlined,null):l().createElement(we.FullscreenOutlined,null))):null}));ii.displayName="FullScreen";const li=ii,oi=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,getTableData:a}=l().useContext(Aa),{t:i}=U(),o=()=>{a()};return l().useImperativeHandle(t,(()=>({clickHandle:o}))),n?l().createElement("span",{className:`${r}-reload`,title:i("qm.table.refresh.text"),onClick:()=>o()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.ReloadOutlined,null))):null}));oi.displayName="Reload";const si=oi,ci=()=>{const e={dateFormat:e=>{const t=e?c()(e).format($a):"";return t.startsWith("1900-01-01")?"":t},datetimeFormat:e=>{const t=e?c()(e).format(Ma):"";return t.startsWith("1900-01-01")?"":t},dateShortTimeFormat:e=>{const t=e?c()(e).format(Ma.slice(0,-3)):"";return t.startsWith("1900-01-01")?"":t},percentFormat:e=>er(e)?(100*Number(e)).toFixed(2)+"%":e,financeFormat:e=>tr(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")},t=(t,n,r)=>{const{dictItems:a,precision:i,displayPrecision:l,formatType:o,editRender:s}=n,c=a||s?.(r,n)?.items||[];let d=c.find((e=>e.value==t))?.text??t??"";if(Array.isArray(t)&&(d=t.map((e=>c.find((t=>t.value==e))?.text??e)).join(",")),i>=0&&""!==d&&(d=er(d)?new(Ca())(d).toFixed(i):d),l>=0&&""!==d&&(d=nr(d,l)),o){const t=e[`${ae(o)}Format`];t?d=t(d):me("Table","字段的格式化类型 `formatType` 配置不正确")}return d},n=e=>Z(e)?lr(e).join(""):e??"";return{renderText:t,getTitleFromCellNode:n,getTitleFromCellValue:(e,r,a,i)=>{const l=Qn(e,r.dataIndex),o=r.render?r.render(l,e,r,a,i):t(l,r,e);return n(o)}}},di=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{global:a}=l().useContext(o),{tableRef:i,prefixCls:s,flattenColumns:c,summationRows:d,showSummary:u,getSpan:m}=l().useContext(Aa),{tablePrint:p,showHeader:h}=i.current.props,{t:f}=U(),{getTitleFromCellValue:g}=ci(),y=a?.print?.leftLogo??"",b=a?.print?.rightLogo??"",v=!(!y&&!b),x=l().useMemo((()=>se(Kn(n,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn]))),[n]),E=l().useMemo((()=>se(Kn(c,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn]))),[c]),w=l().useMemo((()=>se(n.filter((e=>e.printFixed)))),[n]),C=e=>{const t=Object.assign({},ur(x,e.dataIndex).slice(0,-1).reverse()[0]);return t.children=[e],t.level&&t.level>1?C(t):t},S=(e,t)=>(0,X.map)((0,X.groupBy)((0,X.flatten)(e),t),(0,X.spread)(((...e)=>(0,X.mergeWith)(...e,((e,n)=>{if(Array.isArray(e))return S(e.concat(n),t)}))))),N=()=>{const e=(e=>{const t=[];let n=[],r=0,a=0;for(;a<e.length;){const i=e[a];r+=i.width||i.renderWidth,r<=Qa.printWidth?(n.push(i),a===e.length-1&&t.push(n),a++):a>0?(e.splice(0,a),w.length&&e.unshift(...w),t.push(n),n=[],r=0,a=0):(i.width=Qa.printWidth,n.push(i),t.push(n),a++)}return t})([...E]),t=(e=>{const t=[];return e.forEach((e=>{let n=[];e.forEach((e=>{1===e.level?n.push(e):n.push(C(e))})),n=(e=>[...new Set(e.map((e=>e.dataIndex)))].map((t=>{const n=e.filter((e=>e.dataIndex===t));return n.length<=1?n[0]:S(n,"dataIndex")[0]})))(n),t.push(Wn(n))})),t})(e);let n=["<!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>\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</style>","</head>","<body>"].join("");for(let r=0;r<e.length;r++)n+=I(t[r],e[r],i.current.tableFullData),n+='<div class="page-break"></div>';return n+"</body></html>"},I=(e,t,n)=>{const{showLogo:r=!0}=p;let a='<table class="table--print" width="100%" border="0" cellspacing="0" cellpadding="0">';return a+=`<colgroup>${t.map((({width:e,renderWidth:t})=>`<col style="width:${e||t}px">`)).join("")}</colgroup>`,h&&(a+=["<thead>",r&&v?`<tr><th colspan="${t.length}" style="border: 0">${['<table class="no-border" width="100%" border="0" cellspacing="0" cellpadding="0">',"<tr>",'<td width="50%" align="left">',y?`<img src="${y}" 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:n}=e;return 0===n?null:`<th colspan="${n}" rowspan="${t}">${or(e.title)}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),n.length&&(a+=`<tbody>${jn(n).map((e=>`<tr>${t.map(((t,r)=>{const{rowSpan:a,colSpan:i}=m(e,t,e.index,r,n);return a&&i?`<td rowspan="${a}" colspan="${i}">${0===r&&e._level?`<span style="padding-left:${e._level*Qa.treeTable.textIndent}px"></span>`:""}${g(e,t,e.index,r)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),u&&d.length&&(a+=["<tfoot>",d.map((e=>`<tr>${t.map(((t,r)=>{const{dataIndex:a,summation:i}=t,l=i?.render?i.render(n):Qn(e,`${a}_text`);return`<td>${0===r&&""===l?f("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),a+="</table>",a},T=()=>{((e,t)=>{const{filename:n,type:r,isDownload:a}={filename:"print",type:"html",isDownload:!1},i=`${n}.${r}`;if(window.Blob){const e=new Blob([t],{type:`text/${r}`});if(!a)return Promise.resolve({type:r,content:t,blob:e});Dt(e,i)}})(0,N())?.then((({content:e,blob:t})=>{let n=document.createElement("iframe");n.setAttribute("frameborder","0"),n.setAttribute("width","100%"),n.setAttribute("height","0"),n.style.display="none",document.body.appendChild(n),i.current.isIE?(n.contentDocument.write(e),n.contentDocument.execCommand("print"),n.parentNode.removeChild(n),n=null):(n.onload=e=>{e.target.src&&e.target.contentWindow.print(),setTimeout((()=>{n.parentNode.removeChild(n),n=null}))},n.src=URL.createObjectURL(t))}))};return l().useImperativeHandle(t,(()=>({clickHandle:T}))),r?l().createElement("span",{className:`${s}-print`,title:f("qm.table.print.text"),onClick:()=>T()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.PrinterOutlined,null))):null}));di.displayName="TablePrint";const ui=di,mi=require("exceljs");var pi=r.n(mi);const hi="606060",fi="thin",gi="d4d4d4",yi=(e,t)=>{t&&(e.height=Math.floor(.75*t))},bi=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},vi=()=>({top:{style:fi,color:{argb:gi}},left:{style:fi,color:{argb:gi}},bottom:{style:fi,color:{argb:gi}},right:{style:fi,color:{argb:gi}}}),xi=e=>{const{children:t}=e;return t&&t.length?xi(t[0]):e},Ei=e=>{const{precision:t,formatType:n}=e,r=t>=0&&t?`.${"0".repeat(t)}`:"";return"percent"===n?{numFmt:r?`0${r}%`:"0%"}:"finance"===n?{numFmt:r?`#,##0${r}`:"#,##0"}:r?{numFmt:`0${r}`}:null},wi=()=>{const{tableRef:e,getSpan:t,showSummary:n,isHeadGroup:r}=l().useContext(Aa),{spanMethod:a,showHeader:i}=e.current.props,{t:o}=U(),s=(e,t)=>e.find((e=>e.text==t))?.value??t??"";return{exportXLSX:async(l,s,c,d)=>{const{columns:u,footSummation:m}=l,{rowHeight:p}=e.current,h=_n(u),f=Wn(u),g=[],y=[],b=[],v=[];let x=0;const E={};h.forEach((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;E[t]=or(e.title),b.push({key:t,width:(n||r||Qa.defaultColumnWidth)/8})})),i&&(r?f.forEach(((e,t)=>{const n={};e.forEach((e=>{const{colSpan:r,rowSpan:a}=e,i=xi(e),l=h.findIndex((({dataIndex:e})=>e===i.dataIndex));n[i.dataIndex]=or(e.title),0!==r&&(r>1||a>1)&&v.push({s:{r:t,c:l},e:{r:t+a-1,c:l+r-1}})})),g.push(n)})):(h.forEach(((e,t)=>{const{colSpan:n,rowSpan:r}=e;(n>1||r>1)&&v.push({s:{r:x,c:t},e:{r:x+r-1,c:t+n-1}})})),g.push(E)),x+=g.length);const w=jn(s).map(((e,n)=>{const r={};return h.forEach(((i,l)=>{if("function"==typeof a){const{rowSpan:r,colSpan:a}=t(e,i,n,l,s);(a>1||r>1)&&v.push({s:{r:n+x,c:l},e:{r:n+x+r-1,c:l+a-1}})}const o=["percent","finance"].includes(i.formatType);r[i.dataIndex]=o?Qn(e,i.dataIndex):d(e,n,i,l)})),r._level=e._level,r}));x+=w.length,n&&m&&c(h,s).forEach(((e,t)=>{const n={};h.forEach(((t,r)=>{const{dataIndex:a,summation:i}=t,l=i?.render?i.render(s):Qn(e,a);n[a]=0===r&&""===l?o("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l})),y.push(n)}));const{sheetName:C,useStyle:S}=l,N=new(pi().Workbook),I=N.addWorksheet(C);I.columns=b,i&&I.addRows(g).forEach((e=>{S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),n=qn(u,t.key),{align:r,theadAlign:a}=n;bi(e,a||r),S&&Object.assign(e,{font:{bold:!0,color:{argb:hi}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:"f5f5f5"}},border:vi()})}))})),I.addRows(w).forEach(((e,t)=>{const{_level:n}=w[t];S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),r=qn(u,t.key),{align:a}=r;bi(e,a),Object.assign(e,Ei(r)),S&&Object.assign(e,{font:{color:{argb:hi}},border:vi()}),1===Number(e.col)&&n&&(e.alignment={...e.alignment,indent:n})}))})),n&&m&&I.addRows(y).forEach((e=>{S&&yi(e,p),e.eachCell((e=>{const t=I.getColumn(e.col),n=qn(u,t.key),{align:r}=n;bi(e,r),Object.assign(e,Ei(n)),S&&Object.assign(e,{font:{color:{argb:hi}},border:vi()})}))})),v.forEach((({s:e,e:t})=>{I.mergeCells(e.r+1,e.c+1,t.r+1,t.c+1)}));const T=await N.xlsx.writeBuffer();return new Blob([T],{type:"application/octet-stream"})},exportCSV:(e,t)=>{const n=(e=>{const t=document.createElement("div");t.innerHTML=e.trim();const n=t.querySelector("table");if(!n)throw new Error("Invalid table HTML input.");return n})(t),r="\ufeff"+(e=>Array.from(e.rows).map((e=>Array.from(e.cells).map((e=>((e,t)=>{const n=e.replace(/"/g,'""');return"string"===t?`"=""${n}"""`:"number"===t?n:n.includes(",")||n.includes("\r")||n.includes("\n")?`"${n}"`:n})(e.textContent?.trim()??"",e.getAttribute("data-type")))).join(","))).join("\r\n"))(n);return new Blob([r],{type:"text/csv;charset=utf-8"})},importXLSX:(e,t)=>{const{columns:n,file:r}=e,a=_n(n),i=new FileReader;i.onerror=()=>{R.message.error(o("qm.table.import.error"))},i.onload=e=>{const n=a.map((e=>or(e.title))),r=new(pi().Workbook),i=e.target;i?r.xlsx.load(i.result).then((e=>{const r=e.worksheets[0];if(r){const e=r.getSheetValues(),i=e.findIndex((e=>e&&e.length>0)),l=e[i],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(n,l);if(c){const r=e.slice(i+1).map((e=>{const t={};e.forEach(((e,n)=>{let r=e;Array.isArray(r?.richText)&&(r=r.richText.map((e=>e.text)).join("")),(0,X.isPlainObject)(r)&&"text"in r&&(r=r.text),(0,X.isDate)(r)&&(r=ar(r,Ma)),r?.formula&&(r=r.result??r.value),t[l[n]]=r}));const r={};return n.forEach(((e,n)=>{const{dataIndex:i,dictItems:l}=a[n];Array.isArray(l)&&(t[e]?.toString().includes(",")?t[e]=t[e].split(",").map((e=>s(l,e))).filter((e=>""!==e)):t[e]=s(l,t[e])),Zn(r,i,t[e])})),r}));t?.(r)}else R.message.error(o("qm.table.import.error"))}else R.message.error(o("qm.table.import.error"))})):R.message.error(o("qm.table.import.error"))},i.readAsArrayBuffer(r)}}},Ci=e=>{const{fileType:t,onChange:n}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U();let i,o;const s=e=>{const t=e.name,n=t.lastIndexOf("."),r=t.substring(n+1,t.length);return{filename:t.substring(0,n),type:r}};return l().createElement(fe,{onClick:()=>(async()=>{try{const e=await(e=>{const t=Object.assign({},e);return i||(i=document.createElement("form"),o=document.createElement("input"),i.className=`${r}--file-form`,o.name="file",o.type="file",i.appendChild(o),document.body.appendChild(i)),new Promise(((e,n)=>{const r=!t.type;o.multiple=!!t.multiple,o.accept=r?"":`.${t.type}`,o.onchange=l=>{const{files:c}=l.target,d=c[0];let u="";if(!r)for(let e=0;e<c.length;e++){const{type:n}=s(c[e]);if(t.type!==n){u=n;break}}u?(R.message.warning(a("qm.upload.notType",{type:u})),n()):e(d),document.body.removeChild(i),i=null,o=null},i.reset(),o.click()}))})({type:t});n?.(e.name,e)}catch(e){}})()},a("qm.upload.text"))},Si=e=>{const{columns:t,onClose:n}=e,{tableRef:r,prefixCls:a,createTableData:i,dataChange:o}=l().useContext(Aa),{beforeTableImport:s}=r.current.props,{t:c}=U(),{importXLSX:d}=wi(),u=l().useRef(null),[m,p]=l().useState(!1),[h,f]=l().useState(!0),g=e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))),y={posIndex:"条"},[b,v]=l().useState([{type:"INPUT",label:c("qm.table.export.fileName"),fieldName:"fileName",render:(e,t)=>{const{fileName:n}=t.GET_FIELDS_VALUE(["fileName"]);return l().createElement(l().Fragment,null,n?l().createElement("span",null,n):l().createElement(Ci,{fileType:t.state.formData.fileType,onChange:(e,n)=>{t.SET_FIELDS_VALUE({fileName:e,file:n}),n&&f(!1)}}))}},{type:"SELECT",label:c("qm.table.export.fileType"),fieldName:"fileType",allowClear:!1,options:{itemList:[{text:"xlsx",value:"xlsx"}]}},{type:"SELECT",label:c("qm.table.import.importType"),fieldName:"importType",allowClear:!1,options:{itemList:[{text:c("qm.table.import.fillText"),value:"fill"},{text:c("qm.table.import.addText"),value:"add"},{text:c("qm.table.import.insertText"),value:"insert"}]},onChange:e=>{b.find((e=>"posIndex"===e.fieldName)).hidden="insert"!==e,"insert"===e&&u.current.SET_FIELDS_EXTRA(y),v([...b])}},{type:"INPUT_NUMBER",label:c("qm.table.import.insertPos"),fieldName:"posIndex",hidden:!0,rules:[{required:!0}],options:{min:0,max:r.current.tableFullData.length,formatter:e=>`第 ${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","),parser:e=>e.replace(/第\s?|(,*)/g,"")},extra:{labelWidth:50}}]);return l().createElement("div",{className:`${a}-import__setting`},l().createElement(_u,{ref:u,initialValues:{fileType:"xlsx",importType:"fill"},initialExtras:y,items:b,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},c("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:m,disabled:h,onClick:()=>(async()=>{const[e,a]=await u.current.GET_FORM_DATA();e||(p(!0),d({columns:g(t),file:a.file},(async e=>{const{tableFullData:t,store:l}=r.current;if(e=Array.from(e).map((e=>e||{})),"function"==typeof s)try{e=await s(e)}catch(e){}if("fill"===a.importType&&i(e),"add"===a.importType&&i([...t,...e]),"insert"===a.importType){const n=a.posIndex,r=t.slice(0,n).concat(e).concat(t.slice(n));i(r)}e.forEach((e=>{l.addToInserted(e)})),o(),R.message.success(c("qm.table.import.success",{total:e.length})),p(!1),n()})))})()},c("qm.table.import.text"))))},Ni=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{prefixCls:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:c})));const d={[`${a}-import`]:!0},u={visible:o,title:i("qm.table.import.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:xe()(d),title:i("qm.table.import.textNoSpace"),onClick:()=>c()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.ImportOutlined,null))),l().createElement(yn,u,l().createElement(Si,{columns:n,onClose:()=>s(!1)})))}));Ni.displayName="TableImport";const Ii=Ni,Ti=require("rc-trigger");var Ri=r.n(Ti);const Oi=e=>{const{columns:t,onChange:n}=e,{prefixCls:r,$size:a}=l().useContext(Aa),{t:i}=U(),o=l().useRef([]),[s,c]=l().useState(!1),[d,u]=l().useState(t);He((()=>{p()}),[d]),l().useEffect((()=>{m()}),[t]);const m=()=>{const e=[];t.forEach(((n,r)=>{const a=n.colSpan;a>1&&t.slice(r+1,r+a).every((({colSpan:e})=>0===e))&&e.push(t.slice(r,r+a))})),o.current=e},p=()=>{const e=[];d.forEach((t=>{const{colSpan:n,dataIndex:r}=t;if(0===n)return;if(1===n)return e.push(t);const a=o.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===a)return e.push(t);e.push(...o.current[a].map((({dataIndex:e},n)=>{const r=d.find((t=>t.dataIndex===e));return n>0&&void 0!==t.hidden&&(r.hidden=t.hidden),r})))})),n?.(e)},h={[`${r}__popper`]:!0,"column-filter__popper":!0,[`${r}--lg`]:"large"===a,[`${r}--sm`]:"small"===a},f=[`${r}-column-filter`,{selected:s}];return l().createElement(Ri(),{action:["click"],popupVisible:s,popup:l().createElement("div",{className:"column-filter--wrap",style:{overflowY:"auto",maxHeight:"calc(100vh - 10px)"}},l().createElement("div",{className:"main"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:d,setList:e=>{const t=e.map((e=>e.dataIndex)),n=d.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||u(gr(e))}},d.map((e=>(e=>{const{colSpan:t}=e;if(0===t)return l().createElement("li",{key:e.dataIndex,style:{display:"none"}});const n=["svgicon","handle","main-handle"];return l().createElement("li",{key:e.dataIndex,className:"item"},l().createElement(R.Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:n}=t.target;e.hidden=!n,u([...d])}}),l().createElement("i",{className:xe()(n),title:i("qm.table.columnFilter.draggable")},l().createElement(we.HolderOutlined,null)),l().createElement("span",{className:"text"},or(e.title)))})(e)))))),popupClassName:xe()(h),popupStyle:{minWidth:150},onPopupVisibleChange:e=>{c(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("span",{className:xe()(f),title:i("qm.table.columnFilter.text")},l().createElement("i",{className:"svgicon icon"},l().createElement(we.SettingOutlined,null)),l().createElement("span",null,i("qm.table.columnFilter.text"))))},ki=e=>{const{defaultValue:t,onClose:n,onOk:r}=e,{tableRef:a,prefixCls:i,selectionKeys:o,pagination:s,showSummary:d}=l().useContext(Aa),{rowSelection:u}=a.current.props,{t:m}=U(),p=l().useRef(null),[h,f]=l().useState(!1),g=l().useMemo((()=>Object.assign({},{fileName:`${c()().format(Ka)}.xlsx`,fileType:"xlsx",sheetName:"sheet1",exportType:o.length?"selected":"all","startIndex|endIndex":[1,s.total],footSummation:d?1:0,useStyle:0},t,{columns:se(t.columns||[])})),[]),[y,b]=l().useState([{type:"INPUT",label:m("qm.table.export.fileName"),fieldName:"fileName"},{type:"SELECT",label:m("qm.table.export.fileType"),fieldName:"fileType",options:{itemList:[{text:"xlsx",value:"xlsx"},{text:"csv",value:"csv"}]}},{type:"INPUT",label:m("qm.table.export.sheetName"),fieldName:"sheetName"},{type:"RANGE_INPUT_NUMBER",fieldName:"startIndex|endIndex",label:{type:"SELECT",fieldName:"exportType",options:{itemList:[{text:m("qm.table.export.all"),value:"all"},{text:m("qm.table.export.selected"),value:"selected",disabled:"checkbox"!==u?.type},{text:m("qm.table.export.custom"),value:"custom"}]},onChange:e=>{y.find((e=>"startIndex|endIndex"===e.fieldName)).disabled="custom"!==e,b([...y])}},options:{min:1},disabled:!0},{type:"INPUT",label:m("qm.table.columnFilter.text"),fieldName:"columns",render:(e,t)=>l().createElement(Oi,{columns:t.state.formData.columns,onChange:e=>{t.SET_FIELDS_VALUE({columns:e})}})},{type:"CHECKBOX",label:m("qm.table.export.footSummation"),fieldName:"footSummation",disabled:!d,options:{trueValue:1,falseValue:0}},{type:"CHECKBOX",label:m("qm.table.export.useStyle"),fieldName:"useStyle",options:{trueValue:1,falseValue:0}}]);return l().createElement("div",{className:`${i}-export__setting`},l().createElement(_u,{ref:p,initialValues:g,items:y,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},m("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:h,onClick:()=>(async()=>{const[e,t]=await p.current.GET_FORM_DATA();if(!e){f(!0);for(const e in t)"footSummation"!==e&&"useStyle"!==e||(t[e]=!!t[e]);r(t),await ne(1e3),f(!1),n()}})()},m("qm.table.export.text"))))},Pi=l().forwardRef(((e,t)=>{const{tableColumns:n,open:r=!0}=e,{global:a}=l().useContext(o),{tableRef:i,prefixCls:s,flattenColumns:d,pagination:u,fetchParams:m,isFetch:p,isGroupSubtotal:h,showSummary:f,getSpan:g}=l().useContext(Aa),{exportExcel:y,fetch:b,showHeader:v}=i.current.props,{t:x}=U(),{getTitleFromCellValue:E}=ci(),[w,C]=l().useState(!1),[S,N]=l().useState(!1),I=l().useMemo((()=>!!y?.fetch?.api),[y]),T=l().useMemo((()=>!u.total||S),[u.total,S]),O=l().useMemo((()=>Kn(n,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn])),[n]),k=l().useMemo((()=>Kn(d,[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn])),[d]),P=(e,t="",n=0)=>e.map(((e,r)=>{const a={...e,index:r,pageIndex:r},i=t?`${t}.${a.index+1}`:`${a.index+1}`;return a.indexPath=i,a._level=n,Array.isArray(e.children)&&(a.children=P(e.children,i,n+1)),k.forEach((e=>{const{dataIndex:t}=e;"index"!==t&&"pageIndex"!==t&&"indexPath"!==t&&Zn(a,t,Qn(a,t))})),a})),L=(e,t)=>{const n={};return e.filter((e=>!!e.summation)).forEach((e=>{const{dataIndex:r}=e,a=(h?sr(t):t).reduce(((e,t)=>{if(t?.[Qa.summaryIgnore])return e;const n=Number(Qn(t,r));return Number.isNaN(n)?e:e+n}),0);Zn(n,r,a)})),[n]},A=(e,t,n,r)=>{const{precision:a,formatType:i}=n;let l=E(e,n,t,r);return a>=0&&!i&&""!==l&&(l=Number(l)),l},{exportXLSX:_,exportCSV:F}=wi(),D=async e=>{const{api:t,formatter:n=e=>e,afterFetch:r,dataKey:a}=b;let i=[];try{N(!0);const l={[Qa.currentPageName]:1,[Qa.pageSizeName]:e??u.total},o=await t({...n({...m,...l}),...l});if(200===o.code){let e=Array.isArray(o.data)?o.data:(0,X.get)(o.data,a)??[];e="function"==typeof r?await r(e):e,i=P(e)}}catch(e){}return N(!1),i},H=e=>{const t=a?.table?.recordExportLog;try{t?.({fileName:e})}catch(e){}},q=(e,t)=>{const n={text:"string",textarea:"string",number:"number",date:"date"};return t&&n[t]?n[t]:typeof e},$=y?.fileName??`${c()().format(Ka)}.xlsx`,M=$.slice($.lastIndexOf(".")+1).toLowerCase(),K=()=>{if(T)return R.message.warning(x("qm.table.export.warnText"));I?(async e=>{N(!0);try{const{api:t,params:n}=y.fetch,r=await t({columns:k.map((e=>{const{title:t,dataIndex:n,hidden:r}=e,{type:a}=e.filter||{};return{title:t,dataIndex:n,type:a,hidden:r}})),...m,...n,tsortby:void 0,tsummary:void 0,tgroupby:void 0,[Qa.currentPageName]:void 0,[Qa.pageSizeName]:void 0});r.data&&(Dt(r.data,e),H(e))}catch(e){}N(!1)})($):C(!0)};l().useImperativeHandle(t,(()=>({clickHandle:K})));const z={[`${s}-export`]:!0},j={visible:w,title:x("qm.table.export.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>C(!1)},V={fileName:$.slice(0,$.lastIndexOf(".")),fileType:M,columns:O,useStyle:y?.cellStyle?1:0};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:xe()(z),title:x("qm.table.export.textNoSpace"),onClick:()=>K()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.DownloadOutlined,null))),l().createElement(yn,j,l().createElement(ki,{defaultValue:V,onClose:()=>C(!1),onOk:e=>{(async e=>{const{fileName:t,fileType:n,exportType:r,startIndex:a=1,endIndex:l}=e,{tableFullData:o,selectionRows:s}=i.current;let c=[];if(p?("all"===r&&(c=await D()),"custom"===r&&(c=await D(l),c=c.slice(a-1))):("all"===r&&(c=o.slice(0)),"custom"===r&&(c=o.slice(a-1,l||void 0))),"selected"===r&&(c=s.slice(0).sort(((e,t)=>e.pageIndex-t.pageIndex))),"function"==typeof y?.beforeExport)try{c=y?.beforeExport(c)}catch(e){}if("xlsx"===n){const n=await _(e,c,L,A);Dt(n,`${t}.xlsx`),H(`${t}.xlsx`)}if("csv"===n){const n=F(e,((e,t)=>{const{columns:n,footSummation:r}=e,a=_n(n);let i='<table width="100%" border="0" cellspacing="0" cellpadding="0">';return i+=`<colgroup>${a.map((({width:e,renderWidth:t})=>`<col style="width:${e||t}px">`)).join("")}</colgroup>`,v&&(i+=["<thead>","<tr>",a.map((e=>{const{rowSpan:t,colSpan:n}=e;return 0===n?null:`<th colspan="${n}" rowspan="${t}">${or(e.title)}</th>`})).join(""),"</tr>","</thead>"].join("")),t.length&&(i+=`<tbody>${jn(t).map((e=>`<tr>${a.map(((n,r)=>{const{rowSpan:a,colSpan:i}=g(e,n,e.index,r,t);if(!a||!i)return null;const l=A(e,e.index,n,r);return`<td rowspan="${a}" colspan="${i}" data-type="${q(l,n.filter?.type)}">${l}</td>`})).join("")}</tr>`)).join("")}</tbody>`),f&&r&&(i+=["<tfoot>",L(a,t).map((e=>`<tr>${a.map(((n,r)=>{const{dataIndex:a,summation:i}=n,l=i?.render?i.render(t):Qn(e,a);return`<td>${0===r&&""===l?x("qm.table.config.summaryText"):Z(l)?lr(l).join(""):l}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),i+="</table>",i})(e,c));Dt(n,`${t}.csv`),H(`${t}.csv`)}})(Object.assign({},e,{columns:Fn(e.columns)}))}})))}));Pi.displayName="TableExport";const Li=Pi,Ai=e=>{const{columns:t,onClose:n}=e,{tableRef:r,tableBodyRef:a,prefixCls:i,dataChange:o}=l().useContext(Aa),{beforeClipboard:s}=r.current.props,{t:c}=U(),d=l().useRef(null),[u,m]=l().useState([{type:"INPUT_NUMBER",label:c("qm.table.clipboard.rowIndex"),fieldName:"rowIndex",options:{min:1},extra:{labelWidth:50},rules:[{required:!0}]},{type:"SELECT",label:c("qm.table.clipboard.colIndex"),fieldName:"colIndex",options:{itemList:t.map(((e,t)=>({value:t,text:or(e.title)})))},rules:[{required:!0}],extra:{labelWidth:50}},{type:"TEXT_AREA",label:c("qm.table.clipboard.content"),fieldName:"content",placeholder:c("qm.table.clipboard.placeholder"),options:{autoSize:{minRows:4}},rules:[{required:!0}]}]),[p,h]=l().useState(!1);return l().createElement("div",{className:`${i}-clipboard__setting`},l().createElement("h3",{className:"info"},c("qm.table.clipboard.supportText")),l().createElement(_u,{ref:d,initialValues:{},initialExtras:{rowIndex:"行",colIndex:"列"},items:u,cols:1,labelWidth:100}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n(),style:{marginRight:8}},c("qm.table.export.closeButton")),l().createElement(fe,{type:"primary",loading:p,onClick:()=>(async()=>{const[e,i]=await d.current.GET_FORM_DATA();if(e)return;const{tableFullData:l,store:u,fieldAuth:m}=r.current;h(!0);const p=i.content.trim().replace(/(\r|\n)$/,"");let f=p.replace(/"[^"]+"/g,"^");(p.match(/"[^"]+"/g)?.map((e=>e.replace(/"/g,"").replace(/\r|\n/g," ")))||[]).forEach((e=>{f=f.replace(/\^/,e)}));let g=f.split(/\r|\n/).map((e=>e.split(/\t/)));if("function"==typeof s)try{g=await s(g,g[0].map(((e,n)=>t[i.colIndex+n].dataIndex)))}catch(e){}g.forEach(((e,n)=>{e.forEach(((e,r)=>{const a=l[i.rowIndex-1+n],o=t[i.colIndex+r];if(a&&o){let t=!1;if(o.editRender){const e=o.editRender(a,o);t=!(e.disabled||e.extra?.disabled||m[o.dataIndex]?.disabled)}t&&o.dictItems&&(t=o.dictItems.some((t=>t.value==e))),t&&(Zn(a,o.dataIndex,e),u.addToUpdated(a))}}))})),a.current.forceUpdate(),o(),R.message.success(c("qm.table.clipboard.success",{total:g.length})),h(!1),n()})()},c("qm.table.clipboard.text"))))},_i=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,flattenColumns:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=l().useMemo((()=>(e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))(a)),[a]),d=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:d})));const u={[`${r}-clipboard`]:!0},m={visible:o,title:i("qm.table.clipboard.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:xe()(u),title:i("qm.table.clipboard.textNoSpace"),onClick:()=>d()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.CopyOutlined,null))),l().createElement(yn,m,l().createElement(Ai,{columns:c,onClose:()=>s(!1)})))}));_i.displayName="TableClipboard";const Fi=_i,Di=e=>{const{columns:t,onClose:n}=e,{tableRef:r,$size:a,selectionKeys:i,setSelectionKeysEffect:o}=l().useContext(Aa),{rowKey:s,rowSelection:c}=r.current.props,{t:d}=U(),u=l().useRef(null),m=xt(u),p=e=>e.map((e=>{const t={dataIndex:e.dataIndex,title:e.title,width:e.width,minWidth:e.minWidth,precision:e.precision,dictItems:e.dictItems??[],render:e.render};return Array.isArray(e.children)&&(t.children=p(e.children)),t})),[h,g]=l().useState([{title:d("qm.table.groupSummary.index"),dataIndex:"index",width:80,render:e=>e+1},...p(t.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))]),[y]=l().useState((()=>{const{disabled:e}=c||{},t=r.current.selectionRows.map((e=>({...e,children:void 0})));return e?t.filter((t=>!e(t))):t})()),[b,v]=l().useState(300),x=Et((()=>{const e=u.current;v(e.offsetHeight-2*La[a]-30)}),5);return f((()=>{x()}),[m.width]),l().createElement("div",{ref:u,style:{height:"100%"}},l().createElement(Fs,{size:a,columns:h,dataSource:y,rowKey:s,height:b,rowSelection:{type:"checkbox",selectedRowKeys:i,onChange:e=>o(e)},webPagination:!0,ignorePageIndex:!0,showFastSearch:!1,showTableImport:!1,showSelectCollection:!1,showClipboard:!1,showFullScreen:!1,showColumnDefine:!1,columnsChange:e=>g(e)}),l().createElement("div",{style:{height:10}}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>n()},d("qm.table.selectCollection.closeButton"))))},Hi=l().forwardRef(((e,t)=>{const{columns:n,open:r=!0}=e,{tableRef:a,getRowKey:i,prefixCls:o,selectionKeys:s,isFetch:c,isTableEmpty:d,setSelectionKeysEffect:u,setSelectionRows:m}=l().useContext(Aa),{rowSelection:p}=a.current.props,{t:h}=U(),[f,g]=l().useState(!1),y=l().useRef(!1);He((()=>{!y.current&&b()}),[d]);const b=async()=>{const{fetchSelectedRows:e,disabled:t=e=>!1}=p;if(c&&e)try{const n=await e.api(Object.assign({},{selectedKeys:s},e.params));if(200===n.code){let r=Array.isArray(n.data)?n.data:(0,X.get)(n.data,e.dataKey)??[];r=r.filter((e=>!t(e))),u(r.map(((e,t)=>i(e,t)))),m(r),y.current=!0}}catch(e){}},v=()=>{g(!0)};l().useImperativeHandle(t,(()=>({clickHandle:v})));const x={visible:f,title:h("qm.table.selectCollection.settingTitle"),loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>g(!1)};return l().createElement(l().Fragment,null,r&&l().createElement("span",{className:`${o}-select-collection`,title:h("qm.table.selectCollection.text"),onClick:()=>v()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.CheckSquareOutlined,null))),l().createElement(yn,x,l().createElement(Di,{columns:n,onClose:()=>g(!1)})))}));Hi.displayName="SelectCollection";const qi=Hi,$i=require("localforage");var Mi=r.n($i);const Ki=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,getRowKey:a,prefixCls:i,$size:s,tableFlatData:c,flattenColumns:d,setActivedCell:u,scrollXToColumn:m,scrollYToRecord:p}=l().useContext(Aa),{uniqueKey:h}=r.current.props,{t:f}=U(),{getTitleFromCellValue:g}=ci(),y=l().useRef(""),[b,v]=l().useState(""),[x,E]=l().useState([]),[w,C]=l().useState(0),[S,N]=l().useState(!1),[I,T]=l().useState({case:0,fullchar:0}),O=l().useMemo((()=>`${x.length>0?w+1:w}/${x.length}`),[w,x]);He((()=>{_(x[w])}),[w,x]);const k=e=>{T(Object.assign({},I,e))},P=(e,t,n)=>new Promise(((r,a)=>{R.Modal.confirm({title:f("qm.button.confirmPrompt"),content:e,onOk:()=>{t(),r()},onCancel:()=>{n(),r()}})})),L=G((async e=>{if(!b)return y.current=b,A();const t=((e,t)=>{const n=new RegExp(I.fullchar?`^${t}$`:t,I.case?"":"i"),r=[];return e.forEach(((e,t)=>{d.forEach(((i,l)=>{const{dataIndex:o}=i;if([Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(o))return;const s=g(e,i,e.index,l);n.test(s)&&r.push({value:s,rowKey:a(e,e.index),dataIndex:o,rowIndex:t,colIndex:l})}))})),r})(c,b);if(!t.length)return R.Modal.warning({title:f("qm.button.confirmPrompt"),content:f("qm.table.fastSearch.notMatch")});if(E(t),"all"===e&&N(!0),b!==y.current)return y.current=b,C(0);if("next"===e){const e=w+1;e>t.length-1?await P(f("qm.table.fastSearch.toTheEnd"),(()=>C(0)),(()=>{})):C(e)}if("prev"===e){const e=w-1;e<0?await P(f("qm.table.fastSearch.toStart"),(()=>C(t.length-1)),(()=>{})):C(e)}})),A=()=>{C(0),E([]),u({})},_=e=>{e&&(p(e.rowKey),m(e.dataIndex),u(e))},F=l().useMemo((()=>h?`fastSearch_${h}`:""),[h]),[D,H]=l().useState([]),[q,$]=l().useState(""),[M,K]=l().useState("");He((()=>{if(M){const{input:e,config:t}=D.find((e=>e.value===M)).condition;v(e),T(t),setTimeout((()=>L()))}}),[M]),l().useEffect((()=>{z()}),[]);const z=async()=>{if(!F)return;let e=await Mi().getItem(F);e||(e=await j(F),Array.isArray(e)&&await Mi().setItem(F,e)),Array.isArray(e)&&e.length&&H(e)},j=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},V=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}};return l().createElement("div",{className:`${i}-fast-search__setting`},l().createElement("div",{className:"main"},l().createElement("div",{className:"container"},l().createElement("div",{className:"search-box"},l().createElement("span",{className:"label"},f("qm.table.fastSearch.queryLabel"),":"),l().createElement(R.Input,{value:b,placeholder:f("qm.table.fastSearch.queryCondition"),allowClear:!0,style:{width:"100%"},onChange:e=>v(e.target.value)})),l().createElement("div",{className:"condition"},l().createElement(R.Checkbox,{checked:!!I.case,onChange:e=>k({case:e.target.checked})},f("qm.table.fastSearch.matchCase")),l().createElement(R.Checkbox,{checked:!!I.fullchar,onChange:e=>k({fullchar:e.target.checked})},f("qm.table.fastSearch.matchFullchar"))),l().createElement("div",{className:"all-list"},S&&l().createElement("table",{className:"rtable",tabIndex:-1,cellSpacing:"0",cellPadding:"0"},l().createElement("thead",null,l().createElement("tr",null,l().createElement("th",{style:{width:40,minWidth:40}},"#"),l().createElement("th",{style:{width:130,minWidth:130}},f("qm.table.fastSearch.cellText")),l().createElement("th",null,f("qm.table.fastSearch.valText")))),l().createElement("tbody",null,x.map(((e,t)=>l().createElement("tr",{key:t,className:xe()({active:w===t}),onClick:()=>C(t)},l().createElement("td",null,t+1),l().createElement("td",null,"Row:",e.rowIndex+1,", Col:",e.colIndex+1),l().createElement("td",null,e.value)))))))),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:s,value:q,placeholder:f("qm.table.highSearch.configText"),disabled:!b,onChange:e=>{const{value:t}=e.target;$(t)}}),l().createElement(fe,{type:"primary",disabled:!q||!b,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!F)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");if(!b)return;const e=ir(),t=[...D,{text:q,value:e,condition:{input:b,config:I}}];H(t),$(""),await Mi().setItem(F,t),await V(F,t)})()},f("qm.table.highSearch.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[s]}px`}},l().createElement("span",null,f("qm.table.fastSearch.savedSetting"))),l().createElement("ul",null,D.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===M}),title:e.text,onClick:()=>{return t=e.value,void K(t!==M?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:f("qm.table.highSearch.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=D.filter((t=>t.value!==e));H(t),await Mi().setItem(F,t),await V(F,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!D.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement("div",{className:"bottom-bar",style:{position:"absolute",left:0,bottom:0,right:0,height:`${La[s]+20}px`,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",boxSizing:"border-box"}},l().createElement("div",null,f("qm.table.fastSearch.findTotal",{total:O})),l().createElement("div",null,l().createElement(fe,{onClick:()=>L("all"),style:{marginRight:8}},f("qm.table.fastSearch.queryAll")),l().createElement(fe,{type:"primary",onClick:()=>L("prev"),style:{marginRight:8}},f("qm.table.fastSearch.queryPrev")),l().createElement(fe,{type:"primary",onClick:()=>L("next"),style:{marginRight:8}},f("qm.table.fastSearch.queryNext")),l().createElement(fe,{onClick:()=>t()},f("qm.table.fastSearch.closeButton")))))},zi=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r,$size:a}=l().useContext(Aa),{t:i}=U(),[o,s]=l().useState(!1),c=()=>{s(!0)};l().useImperativeHandle(t,(()=>({clickHandle:c})));const d={visible:o,title:i("qm.table.fastSearch.settingTitle"),width:650,loading:!1,bodyStyle:{paddingBottom:`${La[a]+20}px`},onClose:()=>s(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-super-search`,title:i("qm.table.fastSearch.text"),onClick:()=>c()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.MonitorOutlined,null))),l().createElement(yn,d,l().createElement(Ki,{onClose:()=>s(!1)})))}));zi.displayName="FastSearch";const ji=zi,Vi={selectionColumnDefine:{title:"",dataIndex:"__selection__",width:80,fixed:"left"},indentWidth:16,groupMargin:15,separator:"^"},Wi=e=>[Vi.selectionColumnDefine,...e].filter((e=>!e.hidden)),Bi=e=>e.some((e=>Array.isArray(e.children))),Ui=e=>void 0!==e._groupLevel,Gi=(e,t)=>t.split(Vi.separator).reduce(((e,t)=>e?.[t]),e),Yi=e=>Array.isArray(e)?0:"object"==typeof e&&null!==e?1+Math.max(0,...Object.values(e).map(Yi)):0,Xi=(e,t="")=>Array.isArray(e)?[]:Object.keys(e).reduce(((n,r)=>{const a=t?`${t}${Vi.separator}${r}`:r;if(n.push(a),Array.isArray(e[r]))return n;const i=Xi(e[r],a);return n.concat(i)}),[]),Qi={sum:e=>tr(e.reduce(((e,t)=>e+t),0)),avg:e=>e.length>0?(e.reduce(((e,t)=>e+t),0)/e.length).toFixed(2):0,max:e=>e.length>0?Math.max(...e):void 0,min:e=>e.length>0?Math.min(...e):void 0,count:e=>tr(e.length),unique:e=>new Set(e).size,empty:e=>e.filter((e=>ie(e))).length,notEmpty:e=>e.filter((e=>!ie(e))).length},Zi=l().createContext(void 0),Ji=e=>{const{prefixCls:t,pivotProps:n,size:r,getRowKey:a,flatColumns:i,tableData:o}=e,{initialGroup:s,initialCount:c}=n,d=e=>{const t=new Map;return jn(e).forEach((e=>t.set(a(e,e.index),e))),t},u=l().useRef({props:n,originGridData:o,flatGroupData:[],isTree:Bi(o),keyRecordMap:d(o)}),[m,p]=l().useState({pivotRef:u,prefixCls:t,size:r,viewMode:"table",columns:i,gridData:o,groupGridData:[],groupList:s?(e=>{const t=[],n=i.map((e=>e.dataIndex));return e.forEach((e=>{n.includes(e.fieldName)&&["ascend","descend"].includes(e.order)&&t.push(e)})),t})(s):[],filterList:[],sorterList:[],colorList:[],expandedKeys:[],searchResults:[],switchIndex:0,fillColorCells:new Map,countMethod:c?(e=>{const t=["count","unique","empty","notEmpty","sum","max","min","avg"],n=i.map((e=>e.dataIndex)),r={};for(const a in e)n.includes(a)&&t.includes(e[a])&&(r[a]=e[a]);return r})(c):{},summationData:{}}),h=e=>{p((t=>{const n={...t};let r=!1;return Object.keys(e).forEach((a=>{const i=a;Object.is(t[i],e[i])||(n[i]=e[i],r=!0)})),r?n:t}))};f((()=>{b(o),g("originGridData",o),g("isTree",Bi(o)),g("keyRecordMap",d(o))}),[o]),f((()=>{y(i)}),[i]),f((()=>{h({size:r})}),[r]);const g=(e,t)=>{m.pivotRef.current[e]=t};g("props",n);const y=e=>{h({columns:e})},b=e=>{h({gridData:e})},v=e=>{h({groupGridData:e})},x=e=>{h({groupList:e})},E=e=>{h({filterList:e})},w=e=>{h({sorterList:e})},C=e=>{h({colorList:e})},S=e=>{h({expandedKeys:e})},N=e=>{h({searchResults:e})},I=e=>{h({switchIndex:e})},T=e=>{const t=new Map;e.forEach((e=>t.set(`${e.rowKey}|${e.dataIndex}`,e.color))),h({fillColorCells:t})},R=e=>{var t;h({countMethod:(t=Object.assign({},m.countMethod,e),Object.fromEntries(Object.entries(t).filter((([e,t])=>void 0!==t))))})},O=e=>{h({summationData:e})},k=l().useMemo((()=>({...m,setContext:h,getRowKey:a,setPivotGridRef:g,setColumns:y,setGridData:b,setGroupGridData:v,setGroupList:x,setFilterList:E,setSorterList:w,setColorList:C,setExpandedKeys:S,setSearchResults:N,setSwitchIndex:I,setFillColor:T,setCountMethod:R,setSummationData:O})),[m]);return l().createElement(Zi.Provider,{value:k},e.children)},el=()=>l().useContext(Zi),tl=()=>{const{prefixCls:e,pivotRef:t,groupList:n,columns:r,gridData:a,setGroupList:i,setExpandedKeys:o,setGroupGridData:s,setPivotGridRef:c}=el(),{originGridData:d}=t.current,{onGroupChange:u,onDataChange:m}=t.current.props,{t:p}=U(),h=l().useRef([]),f=l().useRef([]),g=l().useMemo((()=>n.filter((e=>e.fieldName&&e.order))),[n]),y=l().useMemo((()=>r.map((e=>({label:or(e.title),value:e.dataIndex,disabled:n.some((t=>t.fieldName===e.dataIndex))})))),[n,r]),b=l().useMemo((()=>{const e=g.map((e=>({[e.fieldName]:e.order})));return(0,X.isEqual)(e,h.current)?h.current:(h.current=e,e)}),[g]),v=[{label:p("qm.pivotGrid.group.ascend"),value:"ascend"},{label:p("qm.pivotGrid.group.descend"),value:"descend"}];l().useEffect((()=>{o(f.current)}),[b,d]),l().useLayoutEffect((()=>{const e=((e,t=[],n)=>{const r=(e,t)=>{if(0===t.length)return e;const[{[Object.keys(t[0])[0]]:a}]=t,i=Object.keys(t[0])[0],l=t.slice(1),o=Object.groupBy(e,(e=>n(e,i))),s=Object.keys(o).sort(((e,t)=>{const n=(r=e,i=t,Number.isNaN(r-i)?r.toString().localeCompare(i.toString()):r-i);var r,i;return"ascend"===a?n:-n})),c={};return s.forEach((e=>{c[`#${e}`]=r(o[e],l)})),c};return r(e,t)})(a,b,((e,t)=>{let n=Qn(e,t);return(0,X.isPlainObject)(n)&&(n=Object.values(n)),Array.isArray(n)&&(n=n.join(",")),ie(n)?p("qm.pivotGrid.group.empty"):n}));var t;s(e),t=Xi(e),f.current=t,c("flatGroupData",((e,t=[])=>{const n=[];return function e(r,a,i=""){if(Array.isArray(r))r.forEach(((e,t)=>{e._varIndex=t,i?e._parentRowKey=i:delete e._parentRowKey})),n.push(...jn(r));else for(const l in r){const o=i?`${i}${Vi.separator}${l}`:l,s=Object.keys(t[a])[0];n.push({id:o,_fieldName:s,_groupLevel:a}),e(r[l],a+1,o)}}(e,0),n})(e,b))}),[b,a]),He((()=>{u?.(g)}),[b]),He((()=>{m?.(a)}),[a]);const x=()=>{i([...n,{fieldName:"",order:"ascend"}])},E=(e,t,r)=>{Object.assign(t,{[e]:r}),i([...n])};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,p("qm.pivotGrid.group.title")),!!g.length&&l().createElement("div",null,l().createElement("button",{className:"button-icon no-hover-bg",onClick:()=>o([])},p("qm.pivotGrid.group.foldAll")),l().createElement("button",{className:"button-icon no-hover-bg",onClick:()=>o(f.current)},p("qm.pivotGrid.group.unfoldAll")))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:n,setList:e=>{const t=e.map((e=>e.fieldName)),r=n.map((e=>e.fieldName));(0,X.isEqual)(t,r)||i(e)}},n.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(r=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(R.Select,{value:r.fieldName||void 0,placeholder:p("qm.table.editable.selectPlaceholder"),options:y,style:{width:160,margin:"0 10px"},onChange:e=>E("fieldName",r,e)}),l().createElement(R.Select,{value:r.order,options:v,placeholder:p("qm.table.editable.selectPlaceholder"),style:{width:100},onChange:e=>E("order",r,e)}),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(n.filter((t=>t!==e)))})(r)}))));var r})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:x},l().createElement(we.PlusOutlined,{className:"icon"}),p("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!g.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.FolderOpenOutlined,{className:"icon"}),p("qm.pivotGrid.group.text"),g.length?`(${g.length})`:null))},nl=()=>{const{prefixCls:e,pivotRef:t,columns:n,filterList:r,setFilterList:a,setGridData:i}=el(),{originGridData:o,isTree:s}=t.current,{onFilterChange:c}=t.current.props,{t:d}=U(),u=l().useRef([]),m=l().useMemo((()=>r.filter((e=>e.fieldName&&("nil"===e.expression||!ie(e.value))))),[r]),p=l().useMemo((()=>n.map((e=>({label:or(e.title),value:e.dataIndex})))),[n]),[h,f]=l().useState("and"),g=l().useMemo((()=>{const e=m.map((e=>`${e.fieldName},${e.expression},${e.value??""}`));return(0,X.isEqual)(e,u.current)?u.current:(u.current=e,e)}),[m]);He((()=>{a(r.map((e=>({...e,logic:h}))))}),[h]),He((()=>{y(),c?.(m)}),[g]);const y=Et((()=>{const e=cr(m.map((e=>({...oe(e,["value"]),expression:"nil"!==e.expression?e.expression:"==",condition:e.value}))));i(e?An(o,e,s):o)}),200),b=[{label:d("qm.pivotGrid.filter.matchAll"),value:"and"},{label:d("qm.pivotGrid.filter.matchAny"),value:"or"}],v=()=>{a([...r,{type:"",bracketLeft:"",fieldName:"",expression:"",value:null,bracketRight:"",logic:h}])},x=(e,t,i)=>{if(Object.assign(t,{[e]:i}),"fieldName"===e){const e=n.find((e=>e.dataIndex===i)).filter?.type||"text";Object.assign(t,{type:e,expression:E(e)[0].value,value:""})}"expression"===e&&"nil"===i&&Object.assign(t,{value:""}),a([...r])},E=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",label:d("qm.table.highSearch.gtText")},{value:"<",label:d("qm.table.highSearch.ltText")},{value:">=",label:d("qm.table.highSearch.gteText")},{value:"<=",label:d("qm.table.highSearch.lteText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",label:d("qm.table.highSearch.inText")},{value:"nin",label:d("qm.table.highSearch.ninText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",label:d("qm.table.highSearch.likeText")},{value:"==",label:d("qm.table.highSearch.eqText")},{value:"!=",label:d("qm.table.highSearch.neqText")},{value:"nil",label:d("qm.table.highSearch.nullText")}]}return t},w=e=>{switch(e.type){case"number":return l().createElement(R.InputNumber,{defaultValue:e.value,style:{width:150},onChange:t=>{x("value",e,ie(t)?"":t)}});case"date":return l().createElement(_,{popupClassName:Qa.popupClassName,defaultValue:rr(e.value,"YYYY-MM-DD")??void 0,picker:"date",allowClear:!0,style:{width:150},onChange:t=>{x("value",e,ar(t,"YYYY-MM-DD"))}});case"checkbox":case"radio":{const t=n.find((t=>t.dataIndex===e.fieldName))?.dictItems||[];return l().createElement(R.Select,{mode:"checkbox"===e.type?"multiple":void 0,defaultValue:e.value||void 0,placeholder:d("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:t=>{x("value",e,t)}},t.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))}default:return l().createElement(R.Input,{value:e.value,style:{width:150},disabled:"nil"===e.expression,onChange:t=>{x("value",e,t.target.value)}})}};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,d("qm.pivotGrid.filter.title")),!!m.length&&l().createElement(R.Select,{value:h,options:b,style:{width:130},onChange:e=>f(e)})),l().createElement("div",{className:"list"},r.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(R.Select,{value:n.fieldName||void 0,options:p,placeholder:d("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:e=>x("fieldName",n,e)}),l().createElement(R.Select,{value:n.expression||void 0,placeholder:d("qm.table.editable.selectPlaceholder"),options:E(n.type),style:{width:100,margin:"0 10px"},onChange:e=>x("expression",n,e)}),w(n),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{a(r.filter((t=>t!==e)))})(n)}))));var n}))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:v},l().createElement(we.PlusOutlined,{className:"icon"}),d("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!m.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.FilterOutlined,{className:"icon"}),d("qm.pivotGrid.filter.text"),m.length?`(${m.length})`:null))},rl=()=>{const{prefixCls:e,pivotRef:t,columns:n,gridData:r,sorterList:a,setSorterList:i,setGridData:o}=el(),{onSorterChange:s}=t.current.props,{t:c}=U(),d=l().useMemo((()=>a.filter((e=>e.fieldName&&e.order))),[a]),u=l().useMemo((()=>n.map((e=>({label:or(e.title),value:e.dataIndex,disabled:a.some((t=>t.fieldName===e.dataIndex))})))),[a,n]);He((()=>{h(),s?.(d)}),[l().useMemo((()=>d.map((e=>Object.values(e).join(":"))).join(",")),[d])]);const m=[{label:c("qm.pivotGrid.sorter.ascend"),value:"ascend"},{label:c("qm.pivotGrid.sorter.descend"),value:"descend"}],p=(e,t)=>"number"==typeof e&&"number"==typeof t?e-t:"string"==typeof e&&"string"==typeof t?e.localeCompare(t):e instanceof Date&&t instanceof Date?e.getTime()-t.getTime():0,h=()=>{var e;o((e=d,r.sort(((t,n)=>{for(const r of e){const{fieldName:e,order:a}=r,i=Qn(t,e),l=Qn(n,e),o=p(i,l);if(0!==o)return"ascend"===a?o:-o}return 0})).slice(0)))},f=()=>{i([...a,{fieldName:"",order:"ascend"}])},g=(e,t,n)=>{Object.assign(t,{[e]:n}),i([...a])};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.sorter.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:a,setList:e=>{const t=e.map((e=>e.fieldName)),n=a.map((e=>e.fieldName));(0,X.isEqual)(t,n)||i(e)}},a.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(R.Select,{value:n.fieldName||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),options:u,style:{width:160,margin:"0 10px"},onChange:e=>g("fieldName",n,e)}),l().createElement(R.Select,{value:n.order,options:m,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:100},onChange:e=>g("order",n,e)}),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(a.filter((t=>t!==e)))})(n)}))));var n})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:f},l().createElement(we.PlusOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!d.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.SortAscendingOutlined,{className:"icon"}),c("qm.pivotGrid.sorter.text"),d.length?`(${d.length})`:null))},al=()=>{const{prefixCls:e,getRowKey:t,gridData:n,columns:r,searchResults:a,switchIndex:i,setSearchResults:o,setSwitchIndex:s}=el(),{t:c}=U(),{getTitleFromCellValue:d}=ci(),[u,m]=l().useState(!1),p=l().useMemo((()=>a.length),[a]);He((()=>{u||setTimeout((()=>{s(0),o([])}),200)}),[u]);const h=(e,n)=>{const a=[];return e.forEach(((e,i)=>{r.forEach(((r,l)=>{const o=d(e,r,i,l)+"";o.includes(n)&&a.push({value:o,rowKey:t(e,e.index),dataIndex:r.dataIndex})})),Array.isArray(e.children)&&a.push(...h(e.children,n))})),a},f=Et((e=>{const t=e.target.value.trim();s(0),o(t?h(n,t):[])}),200),g=e=>{const{keyCode:t}=e;e.preventDefault(),13===t&&y()},y=()=>{p&&s((i+1)%p)};return l().createElement(R.Dropdown,{open:u,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.search.title")),l().createElement("button",{className:"button-icon",onClick:()=>m(!1)},l().createElement(we.CloseOutlined,null))),l().createElement("div",{className:"list search",style:{margin:"10px 0"}},l().createElement(R.Input,{autoFocus:!0,style:{width:280},suffix:l().createElement("div",{className:"search-switch"},l().createElement("button",{className:"button-icon",onClick:()=>{p&&s((i-1+p)%p)}},l().createElement(we.LeftOutlined,null)),l().createElement("span",{className:"num"},p>0?i+1:i,"/",p),l().createElement("button",{className:"button-icon",onClick:()=>y()},l().createElement(we.RightOutlined,null))),onChange:f,onKeyUp:g}))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300},destroyPopupOnHide:!0},l().createElement("span",{onClick:()=>m(!u)},l().createElement(we.MonitorOutlined,{className:"icon"}),c("qm.pivotGrid.search.text")))},il=(e,t)=>e.map((e=>(e.children&&(e.children=il(e.children,t)),t(e)))),ll=()=>{const{prefixCls:e,pivotRef:t,columns:n,setColumns:r}=el(),{uniqueKey:a,onColumnsChange:i}=t.current.props,{t:o}=U(),s=l().useMemo((()=>a?`grid_field_${a}`:""),[a]);l().useLayoutEffect((()=>{c()}),[]),He((()=>{u(n)}),[n]);const c=()=>{const e=m();e&&i?.(e)},d=e=>e.map((e=>{const t={};return Array.isArray(e.children)&&(t.children=d(e.children)),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),{dataIndex:e.dataIndex,...t}})),u=e=>{if(!s)return;const t=d(e),n=JSON.parse(localStorage.getItem(s));(0,X.isEqual)(t,n)||localStorage.setItem(s,JSON.stringify(t))},m=()=>{if(!s)return;const e=JSON.parse(localStorage.getItem(s));return e?(0,X.xor)(e.map((e=>e.dataIndex)),n.map((e=>e.dataIndex))).length>0?il(n,(t=>{const n=e.find((e=>e.dataIndex===t.dataIndex));return n&&(void 0!==n.hidden&&(t.hidden=n.hidden),void 0!==n.fixed&&(t.fixed=n.fixed),void 0!==n.width&&(t.width=n.width),void 0!==n.renderWidth&&(t.renderWidth=n.renderWidth)),t})):il(e,(e=>{const t=n.find((t=>t.dataIndex===e.dataIndex));return t&&void 0===e.fixed&&delete t.fixed,Object.assign({},t,e)})):void 0},p=l().useMemo((()=>{let e=0;for(let t=0;t<n.length-1&&("left"!==n[t].fixed||n[t+1].fixed||(e=t+1),!(e>0));t++);const t=[];for(let r=0;r<n.length;r++)r===e&&t.push({title:"",dataIndex:"__divider__"}),t.push(n[r]);return t}),[n]);return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container","scroll-y"),style:{padding:5}},l().createElement("div",{className:"label",style:{padding:"6px 15px 10px"}},l().createElement("span",null,o("qm.pivotGrid.field.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".handle",tag:"ul",animation:200,list:p,setList:e=>{const t=e.map((e=>e.dataIndex)),n=p.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||(e=>{const t=e.findIndex((e=>"__divider__"===e.dataIndex)),n=[];for(let r=0;r<e.length;r++){const a=e[r];r<t?a.fixed="left":delete a.fixed,r!==t&&n.push(a)}r(n),i?.(n)})(gr(e))}},p.map((e=>"__divider__"!==e.dataIndex?l().createElement("li",{key:e.dataIndex,className:"ant-dropdown-menu-item sort-item"},l().createElement(we.HolderOutlined,{className:"handle"}),l().createElement("span",{className:"label"},l().createElement("span",{className:"title"},or(e.title)),l().createElement("button",{className:"button-icon",onClick:()=>(e=>{e.hidden=!e.hidden;const t=[...n];r(t),i?.(t)})(e)},e.hidden?l().createElement(we.EyeInvisibleOutlined,null):l().createElement(we.EyeOutlined,null)))):l().createElement("li",{key:e.dataIndex,className:"divider"})))))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:240}},l().createElement("span",null,l().createElement(we.SettingOutlined,{className:"icon"}),o("qm.pivotGrid.field.text")))},ol=()=>{const{prefixCls:e,size:t,setContext:n}=el(),{t:r}=U(),a=[{label:r("qm.pivotGrid.lineHeight.size")[0],value:"small"},{label:r("qm.pivotGrid.lineHeight.size")[1],value:"middle"},{label:r("qm.pivotGrid.lineHeight.size")[2],value:"large"}];return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"list"},a.map((e=>l().createElement("li",{key:e.value,className:xe()("ant-dropdown-menu-item check-item",{active:t===e.value}),onClick:()=>n({size:e.value})},l().createElement("span",{className:"label"},e.label),l().createElement("i",{className:"icon"},l().createElement(we.CheckOutlined,null))))))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:160}},l().createElement("span",null,l().createElement(we.ColumnHeightOutlined,{className:"icon"}),r("qm.pivotGrid.lineHeight.text")))},sl="606060",cl="thin",dl="d4d4d4",ul=(e,t)=>{t&&(e.height=Math.floor(.75*t))},ml=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},pl=()=>({top:{style:cl,color:{argb:dl}},left:{style:cl,color:{argb:dl}},bottom:{style:cl,color:{argb:dl}},right:{style:cl,color:{argb:dl}}}),hl=e=>{const{precision:t,formatType:n}=e,r=t>=0&&t?`.${"0".repeat(t)}`:"";return"percent"===n?{numFmt:r?`0${r}%`:"0%"}:"finance"===n?{numFmt:r?`#,##0${r}`:"#,##0"}:r?{numFmt:`0${r}`}:null},fl=()=>{const{prefixCls:e,pivotRef:t,columns:n,countMethod:r,summationData:a}=el(),{t:i}=U(),{exportXLSX:o}=(()=>{const{size:e}=el(),{t}=U(),{rowHeightMaps:n}=Qa,r=(e,t)=>e.find((e=>e.text==t))?.value??t??"";return{exportXLSX:async(r,a,i,l)=>{const{columns:o,footSummation:s}=r,c=n[e],d=_n(o),u=[],m=[],p=[];let h=0;const f={};d.forEach((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;f[t]=or(e.title),p.push({key:t,width:(n||r)/8})})),u.push(f),h+=u.length;const g=a.map(((e,t)=>{const n={};return d.forEach(((r,a)=>{const i=["percent","finance"].includes(r.formatType);n[r.dataIndex]=i?Qn(e,r.dataIndex):l(e,t,r,a)})),n._level=e._level,n._groupLevel=e._groupLevel,n}));h+=g.length,s&&i(d,a).forEach(((e,n)=>{const r={};d.forEach(((n,i)=>{const{dataIndex:l,summation:o}=n,s=o?.render?o.render(a):Qn(e,l);r[l]=0===i&&""===s?t("qm.table.config.summaryText"):Z(s)?lr(s).join(""):s})),m.push(r)}));const{sheetName:y,useStyle:b}=r,v=new(pi().Workbook),x=v.addWorksheet(y);x.columns=p,x.addRows(u).forEach((e=>{b&&ul(e,c),e.eachCell((e=>{const t=x.getColumn(e.col),n=qn(o,t.key),{align:r,theadAlign:a}=n;ml(e,a||r),b&&Object.assign(e,{font:{bold:!0,color:{argb:sl}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:"f5f5f5"}},border:pl()})}))})),x.addRows(g).forEach(((e,t)=>{const{_level:n,_groupLevel:r}=g[t];b&&ul(e,c),e.eachCell(((e,t)=>{const a=x.getColumn(e.col),i=qn(o,a.key),{align:l}=i;ml(e,1===t||void 0===r?l:"right"),Object.assign(e,hl(i)),b&&Object.assign(e,{font:{color:{argb:sl}},border:pl()}),1===Number(e.col)&&n&&(e.alignment={...e.alignment,indent:n})}))})),s&&x.addRows(m).forEach((e=>{b&&ul(e,c),e.eachCell(((e,t)=>{const n=x.getColumn(e.col),r=qn(o,n.key),{align:a}=r;ml(e,1===t?a:"right"),Object.assign(e,hl(r)),b&&Object.assign(e,{font:{color:{argb:sl}},border:pl()})}))})),[].forEach((({s:e,e:t})=>{x.mergeCells(e.r+1,e.c+1,t.r+1,t.c+1)}));const E=await v.xlsx.writeBuffer();return new Blob([E],{type:"application/octet-stream"})},importXLSX:(e,n)=>{const{columns:a,file:i}=e,l=_n(a),o=new FileReader;o.onerror=()=>{R.message.error(t("qm.table.import.error"))},o.onload=e=>{const a=l.map((e=>or(e.title))),i=new(pi().Workbook),o=e.target;o?i.xlsx.load(o.result).then((e=>{const i=e.worksheets[0];if(i){const e=i.getSheetValues(),o=e.findIndex((e=>e&&e.length>0)),s=e[o],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(a,s);if(c){const t=e.slice(o+1).map((e=>{const t={};e.forEach(((e,n)=>{let r=e;Array.isArray(r?.richText)&&(r=r.richText.map((e=>e.text)).join("")),(0,X.isPlainObject)(r)&&"text"in r&&(r=r.text),(0,X.isDate)(r)&&(r=ar(r,Ma)),r?.formula&&(r=r.result??r.value),t[s[n]]=r}));const n={};return a.forEach(((e,a)=>{const{dataIndex:i,dictItems:o}=l[a];Array.isArray(o)&&(t[e]?.toString().includes(",")?t[e]=t[e].split(",").map((e=>r(o,e))).filter((e=>""!==e)):t[e]=r(o,t[e])),Zn(n,i,t[e])})),n}));n?.(t)}else R.message.error(t("qm.table.import.error"))}else R.message.error(t("qm.table.import.error"))})):R.message.error(t("qm.table.import.error"))},o.readAsArrayBuffer(i)}}})(),{getTitleFromCellValue:s}=ci(),d=[{text:i("qm.pivotGrid.count.records"),value:"count"},{text:i("qm.pivotGrid.count.unique"),value:"unique"},{text:i("qm.pivotGrid.count.empty"),value:"empty"},{text:i("qm.pivotGrid.count.notEmpty"),value:"notEmpty"},{text:i("qm.pivotGrid.count.sum"),value:"sum"},{text:i("qm.pivotGrid.count.max"),value:"max"},{text:i("qm.pivotGrid.count.min"),value:"min"},{text:i("qm.pivotGrid.count.avg"),value:"avg"}],u={columns:Fn(n),fileName:c()().format(Ka),fileType:"xlsx",sheetName:"sheet1",footSummation:!1,useStyle:!1},m=(e,t,n,r)=>{const{dataIndex:a,precision:i,formatType:l}=n;if(Ui(e))return Qn(e,a);let o=s(e,n,t,r);return i>=0&&!l&&""!==o&&(o=Number(o)),o},p=()=>{if(!r||!Object.keys(r).length)return[];const e={};return u.columns.map((e=>e.dataIndex)).forEach(((t,n)=>{if(n>0){let n="";r?.[t]&&(n=d.find((e=>e.value===r[t])).text+" "+a.total[t]),Zn(e,t,n)}})),[e]},h=async e=>{const t=await o({...u,footSummation:!!Object.keys(r).length},e,p,m);Dt(t,`${c()().format(Ka)}.xlsx`)},f=[{key:"1",label:l().createElement(l().Fragment,null,l().createElement(we.FolderOutlined,{style:{marginRight:4}})," ",i("qm.pivotGrid.export.group")),onClick:()=>{h((()=>{const e=[];let i=0;return t.current.flatGroupData.forEach((t=>{const l={...t};Ui(t)?(l._level=t._groupLevel,u.columns.map((e=>e.dataIndex)).forEach(((e,i)=>{if(0===i)Zn(l,e,s(t._record,n.find((e=>e.dataIndex===t._fieldName)),0,0));else{let n="";r?.[e]&&(n=d.find((t=>t.value===r[e])).text+" "+Gi(a,t.id).subtotal[e]),Zn(l,e,n)}})),i=t._groupLevel):i>0&&(l._level=t._level+i+1),e.push(l)})),e})())}},{key:"2",label:l().createElement(l().Fragment,null,l().createElement(we.BarsOutlined,{style:{marginRight:4}})," ",i("qm.pivotGrid.export.list")),onClick:()=>{h(Array.from(t.current.keyRecordMap.values()))}}];return l().createElement(R.Dropdown,{trigger:["click"],menu:{items:f},className:xe()("action-btn"),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:140}},l().createElement("span",null,l().createElement(we.DownloadOutlined,{className:"icon"}),i("qm.pivotGrid.export.text")))},gl=()=>{const{prefixCls:e,pivotRef:t,groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o,setContext:s}=el(),{uniqueKey:d}=t.current.props,{t:u}=U(),m=l().useMemo((()=>d?`grid_conf_${d}`:""),[d]),p=l().useRef({}),[h,f]=l().useState([]),[g,y]=l().useState({}),[b,v]=l().useState(""),x=(e,t)=>{y((n=>Object.assign({},n,{[e]:t??!n[e]})))};l().useLayoutEffect((()=>{E()}),[]),He((()=>{w()}),[h]);const E=async()=>{try{if(!m)return;const e=await Mi().getItem(m);Array.isArray(e)&&(f(e),y(e.reduce(((e,t)=>(t.id&&(e[t.id]=!1),e)),{})))}catch(e){}},w=async()=>{try{if(!m)return;await Mi().setItem(m,h)}catch(e){}},C=()=>{const e=ir();f([{id:e,label:c()().format(Ka),value:{groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o}},...h]),re((()=>x(e,!0)))};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"label",style:{padding:"6px 15px 10px"}},l().createElement("span",null,u("qm.pivotGrid.saved.title"))),l().createElement("div",{className:"list"},l().createElement("ul",null,h.map((e=>l().createElement("li",{key:e.id,className:xe()("ant-dropdown-menu-item sort-item",{active:e.id===b}),onClick:()=>(e=>{if(g[e.id])return;const t=b!==e.id,n=t?e.value:p.current;s({groupList:n.groupList,filterList:n.filterList,sorterList:n.sorterList,colorList:n.colorList,countMethod:n.countMethod}),v(t?e.id:"")})(e)},l().createElement("div",{className:"label",style:{width:200}},g[e.id]?l().createElement(R.Input,{size:"small",autoFocus:!0,defaultValue:e.label,style:{width:"100%",marginLeft:-8},onBlur:t=>{const{value:n}=t.target;n!==e.label&&(e.label=n,f([...h])),x(e.id,!1)}}):l().createElement("span",null,e.label)),l().createElement("button",{className:"button-icon",onClick:t=>{t.stopPropagation(),x(e.id)}},g[e.id]?l().createElement(we.CheckOutlined,null):l().createElement(we.EditOutlined,null)),l().createElement("button",{className:"button-icon",style:{marginLeft:4},onClick:t=>{var n;t.stopPropagation(),n=e.id,f(h.filter((e=>e.id!==n)))}},l().createElement(we.CloseOutlined,null))))))),l().createElement("div",{className:"add-record",style:{padding:10}},l().createElement("span",{className:"insert",onClick:C},l().createElement(we.PlusOutlined,{className:"icon"}),u("qm.pivotGrid.saved.add")))),className:"action-btn",overlayClassName:`${e}__popper`,placement:"bottomRight",overlayStyle:{minWidth:280},onOpenChange:e=>{var t;t=e?{groupList:n,filterList:r,sorterList:a,colorList:i,countMethod:o}:{},p.current=t}},l().createElement("span",null,l().createElement(we.SaveOutlined,{className:"icon"}),u("qm.pivotGrid.saved.text")))},yl=()=>{const{gridData:e}=el(),{t}=U();return l().createElement("div",{className:"alert-info"},l().createElement(we.InfoCircleOutlined,{className:"icon"}),t("qm.table.alert.total",{total:(()=>{let t=0;return function e(n){n.forEach((n=>{Array.isArray(n.children)&&e(n.children),t+=1}))}(e),t})()}))},bl={left:{points:["cr","cl"]},right:{points:["cl","cr"]},top:{points:["bc","tc"]},bottom:{points:["tc","bc"]},topLeft:{points:["bl","tl"]},leftTop:{points:["tr","tl"]},topRight:{points:["br","tr"]},rightTop:{points:["tl","tr"]},bottomRight:{points:["tr","br"]},rightBottom:{points:["bl","br"]},bottomLeft:{points:["tl","bl"]},leftBottom:{points:["br","bl"]}},vl={topLeft:{points:["bl","tc"]},leftTop:{points:["tr","cl"]},topRight:{points:["br","tc"]},rightTop:{points:["tl","cr"]},bottomRight:{points:["tr","bc"]},rightBottom:{points:["bl","cr"]},bottomLeft:{points:["tl","bc"]},leftBottom:{points:["br","cl"]}},xl=new Set(["topLeft","topRight","bottomLeft","bottomRight","leftTop","leftBottom","rightTop","rightBottom"]);function El(e){const{arrowWidth:t,autoAdjustOverflow:n,arrowPointAtCenter:r,offset:a,borderRadius:i,visibleFirst:l}=e,o=t/2,s={};return Object.keys(bl).forEach((e=>{const c={...r&&vl[e]||bl[e],offset:[0,0],dynamicInset:!0};switch(s[e]=c,xl.has(e)&&(c.autoArrow=!1),e){case"top":case"topLeft":case"topRight":c.offset[1]=-o-a;break;case"bottom":case"bottomLeft":case"bottomRight":c.offset[1]=o+a;break;case"left":case"leftTop":case"leftBottom":c.offset[0]=-o-a;break;case"right":case"rightTop":case"rightBottom":c.offset[0]=o+a}const d=function(e){const{contentRadius:t,limitVerticalRadius:n}=e,r=t>12?t+2:12;return{arrowOffsetHorizontal:r,arrowOffsetVertical:n?8:r}}({contentRadius:i,limitVerticalRadius:!0});if(r)switch(e){case"topLeft":case"bottomLeft":c.offset[0]=-d.arrowOffsetHorizontal-o;break;case"topRight":case"bottomRight":c.offset[0]=d.arrowOffsetHorizontal+o;break;case"leftTop":case"rightTop":c.offset[1]=2*-d.arrowOffsetHorizontal+o;break;case"leftBottom":case"rightBottom":c.offset[1]=2*d.arrowOffsetHorizontal-o}c.overflow=function(e,t,n,r){if(!1===r)return{adjustX:!1,adjustY:!1};const a=r&&"object"==typeof r?r:{},i={};switch(e){case"top":case"bottom":i.shiftX=2*t.arrowOffsetHorizontal+n,i.shiftY=!0,i.adjustY=!0;break;case"left":case"right":i.shiftY=2*t.arrowOffsetVertical+n,i.shiftX=!0,i.adjustX=!0}const l={...i,...a};return l.shiftX||(l.adjustX=!0),l.shiftY||(l.adjustY=!0),l}(e,d,t,n),l&&(c.htmlRegion="visibleFirst")})),s}const wl=require("@rc-component/trigger");var Cl=r.n(wl);const Sl=require("@rc-component/color-picker");var Nl=r.n(Sl);const Il=e=>{const{value:t,defaultValue:n,disabled:r,disabledAlpha:a,className:i,style:o,onChange:s,onChangeComplete:c}=e,[d,u]=Ja("",{value:t,defaultValue:n}),m=e=>({hex:e.toHexString(),rgb:e.toRgbString(),hsb:e.toHsbString()}),p=El({offset:0,arrowWidth:16,borderRadius:6}),h=Ee("color-picker");return l().createElement(Cl(),{action:["click"],prefixCls:h,popupPlacement:"bottomLeft",builtinPlacements:p,popup:()=>l().createElement(Nl(),{prefixCls:h,value:d,disabled:r,disabledAlpha:a,onChange:(e,t)=>{u(e.toRgbString()),s?.(m(e),t)},onChangeComplete:(e,t)=>{c?.(m(e),t)}})},l().createElement("div",{className:xe()(`${h}-btn`,i),style:o},l().createElement(Sl.ColorBlock,{color:d,prefixCls:h})))};Il.displayName="ColorPicker";const Tl=Il,Rl=()=>{const{prefixCls:e,pivotRef:t,getRowKey:n,columns:r,colorList:a,setColorList:i,setFillColor:o}=el(),{flatGroupData:s}=t.current,{t:c}=U(),d=l().useRef([]),u=l().useMemo((()=>a.filter((e=>e.fieldName&&e.color&&("nil"===e.expression||!ie(e.value)||"col"===e.mode)))),[a]),m=l().useMemo((()=>r.map((e=>({label:or(e.title),value:e.dataIndex})))),[r]),p=l().useMemo((()=>Wi(r)),[r]),h=[{label:c("qm.pivotGrid.fillColor.cell"),value:"cell"},{label:c("qm.pivotGrid.fillColor.row"),value:"row"},{label:c("qm.pivotGrid.fillColor.col"),value:"col"}];He((()=>{f()}),[l().useMemo((()=>{const e=u.map((e=>({[e.color]:`${e.mode},${e.fieldName},${e.expression},${e.value??""}`})));return(0,X.isEqual)(e,d.current)?d.current:(d.current=e,e)}),[u])]);const f=Et((()=>{const e=[];u.forEach((t=>{const r=cr([{...oe(t,["value"]),expression:"nil"!==t.expression?t.expression:"==",condition:t.value}]),a=An(s.filter((e=>!Ui(e))),r);if("cell"===t.mode||"col"===t.mode)for(let r=0;r<a.length;r++)e.push({color:t.color,rowKey:n(a[r],a[r].index),dataIndex:t.fieldName});if("row"===t.mode)for(let r=0;r<a.length;r++){const i=n(a[r],a[r].index);for(let n=0;n<p.length;n++)e.push({color:t.color,rowKey:i,dataIndex:p[n].dataIndex})}})),o(e)}),200),g=()=>{i([...a,{type:"",bracketLeft:"",fieldName:"",expression:"",value:null,bracketRight:"",logic:"and",color:"",mode:"cell"}])},y=(e,t,n)=>{if(Object.assign(t,{[e]:n}),"fieldName"===e){const e=r.find((e=>e.dataIndex===n)).filter?.type||"text";Object.assign(t,{type:e,expression:b(e)[0].value,value:""})}"expression"===e&&"nil"===n&&Object.assign(t,{value:""}),i([...a])},b=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",label:c("qm.table.highSearch.gtText")},{value:"<",label:c("qm.table.highSearch.ltText")},{value:">=",label:c("qm.table.highSearch.gteText")},{value:"<=",label:c("qm.table.highSearch.lteText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",label:c("qm.table.highSearch.inText")},{value:"nin",label:c("qm.table.highSearch.ninText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",label:c("qm.table.highSearch.likeText")},{value:"==",label:c("qm.table.highSearch.eqText")},{value:"!=",label:c("qm.table.highSearch.neqText")},{value:"nil",label:c("qm.table.highSearch.nullText")}]}return t};return l().createElement(R.Dropdown,{trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container")},l().createElement("div",{className:"label"},l().createElement("span",null,c("qm.pivotGrid.fillColor.title"))),l().createElement("div",{className:"list"},l().createElement(ua.ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:a,setList:e=>{const t=e.map((e=>e.fieldName)),n=a.map((e=>e.fieldName));(0,X.isEqual)(t,n)||i(e)}},a.map(((e,t)=>{return l().createElement("li",{key:`${e.fieldName}-${t}`,className:"item"},(n=e,l().createElement(l().Fragment,null,l().createElement(we.HolderOutlined,{className:"icon handle"}),l().createElement(Tl,{defaultValue:n.color,style:{marginLeft:5},onChangeComplete:e=>y("color",n,e.hex)}),l().createElement(R.Select,{value:n.mode,options:h,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:90,marginLeft:10,marginRight:20},onChange:e=>y("mode",n,e)}),l().createElement(R.Select,{value:n.fieldName||void 0,options:m,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:e=>y("fieldName",n,e)}),"col"!==n.mode&&l().createElement(R.Select,{value:n.expression||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),options:b(n.type),style:{width:100,margin:"0 10px"},onChange:e=>y("expression",n,e)}),"col"!==n.mode&&(e=>{switch(e.type){case"number":return l().createElement(R.InputNumber,{defaultValue:e.value,style:{width:150},onChange:t=>{y("value",e,ie(t)?"":t)}});case"date":return l().createElement(_,{popupClassName:Qa.popupClassName,defaultValue:rr(e.value,"YYYY-MM-DD")??void 0,picker:"date",allowClear:!0,style:{width:150},onChange:t=>{y("value",e,ar(t,"YYYY-MM-DD"))}});case"checkbox":case"radio":{const t=r.find((t=>t.dataIndex===e.fieldName))?.dictItems||[];return l().createElement(R.Select,{mode:"checkbox"===e.type?"multiple":void 0,defaultValue:e.value||void 0,placeholder:c("qm.table.editable.selectPlaceholder"),style:{width:150},onChange:t=>{y("value",e,t)}},t.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))}default:return l().createElement(R.Input,{value:e.value,style:{width:150},disabled:"nil"===e.expression,onChange:t=>{y("value",e,t.target.value)}})}})(n),l().createElement(we.CloseOutlined,{className:"icon close",onClick:()=>(e=>{i(a.filter((t=>t!==e)))})(n)}))));var n})))),l().createElement("div",{className:"add-record"},l().createElement("span",{className:"insert",onClick:g},l().createElement(we.PlusOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.add")))),className:xe()("action-btn",{active:!!u.length}),overlayClassName:`${e}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:300}},l().createElement("span",null,l().createElement(we.BgColorsOutlined,{className:"icon"}),c("qm.pivotGrid.fillColor.text"),u.length?`(${u.length})`:null))},Ol=()=>l().createElement("div",{className:"top-bar"},l().createElement(be,{size:4},l().createElement(yl,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(ll,null),l().createElement(tl,null),l().createElement(nl,null),l().createElement(rl,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(ol,null),l().createElement(Rl,null),l().createElement(al,null),l().createElement(R.Divider,{type:"vertical"}),l().createElement(fl,null)),l().createElement(be,{size:4},l().createElement(gl,null))),kl=l().createContext(void 0),Pl=e=>{const{scrollbar:t}=e,{pivotRef:n,getRowKey:r,columns:a,groupGridData:i,setPivotGridRef:o}=el(),{rowSelection:s,treeExpandable:c,rowHighlight:d}=n.current.props,u=c?.defaultExpandAllRows??!0,m=l().useRef({bodyEl:null,rowVirtualizer:null}),[p,h]=l().useState({gridRef:m,scrollbarRef:t,selectionKeys:s?.defaultSelectedRowKeys??[],treeExpandKeys:u?Vn(n.current.originGridData,(e=>r(e,e.index))):[],highlightKey:"",checkedColumnKey:"",updateLayout:0,clicked:[],isPingLeft:!1}),f=l().useMemo((()=>Math.max(0,Yi(i)-1)),[i]),g=e=>{h((t=>{const n={...t};let r=!1;return Object.keys(e).forEach((a=>{const i=a;Object.is(t[i],e[i])||(n[i]=e[i],r=!0)})),r?n:t}))},y=(e,t)=>{p.gridRef.current[e]=t};l().useLayoutEffect((()=>{N(),w()}),[a]),l().useLayoutEffect((()=>{s?.selectedRowKeys&&g({selectionKeys:s.selectedRowKeys})}),[s?.selectedRowKeys]),l().useLayoutEffect((()=>{void 0!==d?.currentRowKey&&g({highlightKey:d.currentRowKey})}),[d?.currentRowKey]);const b=e=>{Array.isArray(s?.selectedRowKeys)||g({selectionKeys:e})},v=e=>{g({treeExpandKeys:e})},x=e=>{void 0===d?.currentRowKey&&g({highlightKey:e})},E=e=>{g({checkedColumnKey:e})},w=()=>{g({updateLayout:p.updateLayout+1})},C=e=>{yr(e,p.clicked,!0)||g({clicked:e})},S=e=>{g({isPingLeft:e})},N=()=>{const e=t.current.container.clientWidth,{defaultColumnWidth:n}=Qa,r=[];let i=0;if(a.forEach((e=>{"number"==typeof e.width?(e.renderWidth=e.width,i+=e.width):(e.renderWidth=void 0,r.push(e))})),r.length>0){const t=a.reduce(((e,t)=>e+(t.width||t.minWidth||n)),0);if(t<=e){const a=e-t;if(1===r.length)r[0].renderWidth=(r[0].minWidth||n)+a;else{const e=a/r.reduce(((e,t)=>e+(t.minWidth||n)),0);let t=0;r.forEach(((r,a)=>{if(0===a)return;const i=Math.floor((r.minWidth||n)*e);t+=i,r.renderWidth=(r.minWidth||n)+i})),r[0].renderWidth=(r[0].minWidth||n)+a-t}}else r.forEach((e=>{e.renderWidth=e.minWidth||n}))}else i=a.reduce(((e,t)=>e+(t.renderWidth=t.width||t.minWidth||n)),0)},I=l().useMemo((()=>({...p,indentDepth:f,setContext:g,setGridLayoutRef:y,setSelectionKeys:b,setTreeExpandKeys:v,setHighlightKey:x,setCheckColumnKey:E,forceUpdateLayout:w,setClicked:C,setPingLeft:S,updateColumnsWidth:N})),[p,f]);return l().createElement(kl.Provider,{value:I},e.children)},Ll=()=>l().useContext(kl),Al=require("@rc-component/portal");var _l=r.n(Al);const Fl=e=>{const{column:t}=e,{columns:n,setColumns:r}=el(),{scrollbarRef:a}=Ll(),i=l().useRef(null),[o,s]=l().useState(!1),c=l().useRef(document.onselectstart),d=l().useRef({startX:0,originSizeX:0,columnWidth:0}),u=e=>{d.current=Object.assign({},d.current,e)},m=e=>{if(1!==e.buttons)return p();const n=e.clientX-d.current.startX,r=(t.width||t.renderWidth)+n;r<(t.minWidth||Qa.defaultColumnWidth)||(u({columnWidth:r}),i.current.style.left=`${d.current.originSizeX+n}px`)},p=()=>{a.current.container.style.cursor="",t.width=d.current.columnWidth,r([...n]),re((()=>s(!1))),$e(document,"mousemove",m),$e(document,"mouseup",p),u({startX:0,originSizeX:0,columnWidth:0}),h()},h=()=>{document.onselectstart!==c.current&&(document.onselectstart=c.current)};return l().createElement(l().Fragment,null,l().createElement("div",{className:"resize-bar",onMouseDown:e=>{e.preventDefault(),a.current.container.style.cursor="col-resize";const n=Gn(e.target,a.current.container).left-a.current.scrollLeft+3;u({startX:e.clientX,originSizeX:n,columnWidth:t.width||t.renderWidth||0}),qe(document,"mousemove",m),qe(document,"mouseup",p),s(!0),re((()=>i.current.style.left=`${n}px`)),c.current=document.onselectstart,document.onselectstart=()=>!1}}),l().createElement(_l(),{open:o,getContainer:a.current?.container},l().createElement("div",{ref:i,className:"resize-line"})))},Dl=e=>{const{left:t}=e,{scrollbarRef:n,isPingLeft:r,setPingLeft:a}=Ll(),i=G((e=>{a(e.target.scrollLeft>1)}));return l().useEffect((()=>{const e=n.current.container.children[0];return e.addEventListener("scroll",i),()=>{e.removeEventListener("scroll",i)}}),[]),l().createElement(_l(),{open:!0,getContainer:n.current?.container},l().createElement("div",{className:xe()("fixed-line",{active:r}),style:{left:t}}))},Hl=()=>{const{pivotRef:e,columns:t}=el(),{indentDepth:n,updateLayout:r,checkedColumnKey:a,selectionKeys:i,setSelectionKeys:o,setCheckColumnKey:s}=Ll(),{rowSelection:c}=e.current.props,{selectionColumn:d}=Qa,{indentWidth:u,selectionColumnDefine:m}=Vi,p=l().useMemo((()=>Wi(t)),[t]),h=l().useMemo((()=>p.filter((e=>"left"===e.fixed))),[p]),f=l().useMemo((()=>p.filter((e=>"left"!==e.fixed))),[p]),g=l().useMemo((()=>"radio"!==c?.type),[c]),y=l().useMemo((()=>h.reduce(((e,t,r)=>e+(t.width||t.renderWidth||0)+(1===r?n*u:0)),0)),[n,r,h]),b=l().useMemo((()=>i.length>0&&i.length===e.current.keyRecordMap.size),[i]),v=l().useMemo((()=>i.length>0&&i.length<e.current.keyRecordMap.size),[i]),x=(t,r)=>l().createElement("div",{className:xe()(r?"fixed-left":"no-fixed"),style:{width:r?y:""}},t.map(((i,p)=>{const{dataIndex:h,title:f,align:y,width:x,renderWidth:E}=i,w={"selection-column":h===d,"col--center":"center"===y,"col--right":"right"===y,"col--checked":a===h},C=r&&1===p||!r&&p===t.length-1?n*u:0,S={width:`${(x||E||0)+C}px`,minWidth:`${(x||E||0)+C}px`};return l().createElement("div",{key:h,className:xe()("table-cell",w),style:S,onClick:()=>{return e=h,void([m.dataIndex].includes(e)||s(a!==e?e:""));var e}},h!==d?l().createElement("span",{className:"cell"},f):c&&g?l().createElement(R.Checkbox,{checked:b,indeterminate:v,onChange:t=>(t=>{const n=t?Array.from(e.current.keyRecordMap.keys()):[];o(n),c?.onChange?.(n,t?Array.from(e.current.keyRecordMap.values()):[])})(t.target.checked)}):"#",h!==d&&l().createElement(Fl,{column:i}))})));return l().createElement("div",{className:"header"},x(h,!0),(e=>x(e))(f),l().createElement(Dl,{left:y}))},ql=require("react-dom");function $l(e,t,n){let r,a=n.initialDeps??[];function i(){let i;n.key&&n.debug?.()&&(i=Date.now());const l=e(),o=l.length!==a.length||l.some(((e,t)=>a[t]!==e));if(!n.noCache?.()&&!o)return r;let s;if(a=l,n.key&&n.debug?.()&&(s=Date.now()),r=t(...l),n.key&&n.debug?.()){const e=Math.round(100*(Date.now()-i))/100,t=Math.round(100*(Date.now()-s))/100,r=t/16,a=(e,t)=>{for(e=String(e);e.length<t;)e=" "+e;return e};console.info(`%c⏱ ${a(t,5)} / ${a(e,5)} ms`,`\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(0,Math.min(120-120*r,120))}deg 100% 31%);`,n?.key)}return n?.onChange?.(r),r}return i.updateDeps=e=>{a=e},i}function Ml(e,t){if(void 0===e)throw new Error("Unexpected undefined"+(t?`: ${t}`:""));return e}const Kl=(e,t,n)=>{let r;return function(...a){e.clearTimeout(r),r=e.setTimeout((()=>t.apply(this,a)),n)}};function zl(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const jl=e=>e,Vl=e=>{const t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),r=[];for(let e=t;e<=n;e++)r.push(e);return r},Wl=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=e.targetWindow;if(!r)return;const a=e=>{const{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(a(n.getBoundingClientRect()),!r.ResizeObserver)return()=>{};const i=new r.ResizeObserver((e=>{const t=e[0];if(t?.borderBoxSize){const e=t.borderBoxSize[0];if(e)return void a({width:e.inlineSize,height:e.blockSize})}a(n.getBoundingClientRect())}));return i.observe(n,{box:"border-box"}),()=>{i.unobserve(n)}},Bl={passive:!0},Ul="undefined"==typeof window||"onscrollend"in window,Gl=(e,t)=>{const n=e.scrollElement;if(!n)return;const r=e.targetWindow;if(!r)return;let a=0;const i=e.options.useScrollendEvent&&Ul?()=>{}:Kl(r,(()=>{t(a,!1)}),e.options.isScrollingResetDelay),l=r=>()=>{const{horizontal:l,isRtl:o}=e.options;a=l?n.scrollLeft*(o?-1:1):n.scrollTop,i(),t(a,r)},o=l(!0),s=l(!1);return s(),n.addEventListener("scroll",o,Bl),n.addEventListener("scrollend",s,Bl),()=>{n.removeEventListener("scroll",o),n.removeEventListener("scrollend",s)}},Yl=(e,t,n)=>{if(t?.borderBoxSize){const e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?"inlineSize":"blockSize"])}return Math.round(e.getBoundingClientRect()[n.options.horizontal?"width":"height"])},Xl=(e,{adjustments:t=0,behavior:n},r)=>{const a=e+t;r.scrollElement?.scrollTo?.({[r.options.horizontal?"left":"top"]:a,behavior:n})};class Ql{constructor(e){zl(this,"unsubs",[]),zl(this,"options",void 0),zl(this,"scrollElement",null),zl(this,"targetWindow",null),zl(this,"isScrolling",!1),zl(this,"scrollToIndexTimeoutId",null),zl(this,"measurementsCache",[]),zl(this,"itemSizeCache",new Map),zl(this,"pendingMeasuredCacheIndexes",[]),zl(this,"scrollRect",null),zl(this,"scrollOffset",null),zl(this,"scrollDirection",null),zl(this,"scrollAdjustments",0),zl(this,"shouldAdjustScrollPositionOnItemSizeChange",void 0),zl(this,"elementsCache",new Map),zl(this,"observer",(()=>{let e=null;const t=()=>e||(this.targetWindow&&this.targetWindow.ResizeObserver?e=new this.targetWindow.ResizeObserver((e=>{e.forEach((e=>{this._measureElement(e.target,e)}))})):null);return{disconnect:()=>{t()?.disconnect(),e=null},observe:e=>t()?.observe(e,{box:"border-box"}),unobserve:e=>t()?.unobserve(e)}})()),zl(this,"range",null),zl(this,"setOptions",(e=>{Object.entries(e).forEach((([t,n])=>{void 0===n&&delete e[t]})),this.options={debug:!1,noCache:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:jl,rangeExtractor:Vl,onChange:()=>{},measureElement:Yl,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!0,...e}})),zl(this,"notify",(e=>{this.options.onChange?.(this,e)})),zl(this,"maybeNotify",$l((()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null])),(e=>{this.notify(e)}),{key:!1,noCache:()=>this.options.noCache,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]})),zl(this,"cleanup",(()=>{this.unsubs.filter(Boolean).forEach((e=>e())),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null})),zl(this,"_didMount",(()=>()=>{this.cleanup()})),zl(this,"_willUpdate",(()=>{const e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e)return void this.maybeNotify();this.scrollElement=e,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=this.scrollElement?.window??null,this.elementsCache.forEach((e=>{this.observer.observe(e)})),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,(e=>{this.scrollRect=e,this.maybeNotify()}))),this.unsubs.push(this.options.observeElementOffset(this,((e,t)=>{this.scrollAdjustments=0,this.scrollDirection=t?this.getScrollOffset()<e?"forward":"backward":null,this.scrollOffset=e,this.isScrolling=t,this.maybeNotify()})))}})),zl(this,"getSize",(()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0))),zl(this,"getScrollOffset",(()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??("function"==typeof this.options.initialOffset?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0))),zl(this,"getFurthestMeasurement",((e,t)=>{const n=new Map,r=new Map;for(let a=t-1;a>=0;a--){const t=e[a];if(n.has(t.lane))continue;const i=r.get(t.lane);if(null==i||t.end>i.end?r.set(t.lane,t):t.end<i.end&&n.set(t.lane,!0),n.size===this.options.lanes)break}return r.size===this.options.lanes?Array.from(r.values()).sort(((e,t)=>e.end===t.end?e.index-t.index:e.end-t.end))[0]:void 0})),zl(this,"getMeasurementOptions",$l((()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled]),((e,t,n,r,a)=>(this.pendingMeasuredCacheIndexes=[],{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:a})),{key:!1})),zl(this,"getMeasurements",$l((()=>[this.getMeasurementOptions(),this.itemSizeCache]),(({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:a},i)=>{if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),[];0===this.measurementsCache.length&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((e=>{this.itemSizeCache.set(e.key,e.size)})));const l=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const o=this.measurementsCache.slice(0,l);for(let a=l;a<e;a++){const e=r(a),l=1===this.options.lanes?o[a-1]:this.getFurthestMeasurement(o,a),s=l?l.end+this.options.gap:t+n,c=i.get(e),d="number"==typeof c?c:this.options.estimateSize(a),u=s+d,m=l?l.lane:a%this.options.lanes;o[a]={index:a,start:s,size:d,end:u,key:e,lane:m}}return this.measurementsCache=o,o}),{key:!1,debug:()=>this.options.debug})),zl(this,"calculateRange",$l((()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset()]),((e,t,n)=>this.range=e.length>0&&t>0?function({measurements:e,outerSize:t,scrollOffset:n}){const r=e.length-1,a=Zl(0,r,(t=>e[t].start),n);let i=a;for(;i<r&&e[i].end<n+t;)i++;return{startIndex:a,endIndex:i}}({measurements:e,outerSize:t,scrollOffset:n}):null),{key:!1,debug:()=>this.options.debug})),zl(this,"getVirtualIndexes",$l((()=>{let e=null,t=null;const n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t]}),((e,t,n,r,a)=>null===r||null===a?[]:e({startIndex:r,endIndex:a,overscan:t,count:n})),{key:!1,debug:()=>this.options.debug})),zl(this,"indexFromElement",(e=>{const t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)})),zl(this,"_measureElement",((e,t)=>{const n=this.indexFromElement(e),r=this.measurementsCache[n];if(!r)return;const a=r.key,i=this.elementsCache.get(a);i!==e&&(i&&this.observer.unobserve(i),this.observer.observe(e),this.elementsCache.set(a,e)),e.isConnected&&this.resizeItem(n,this.options.measureElement(e,t,this))})),zl(this,"resizeItem",((e,t)=>{const n=this.measurementsCache[e];if(!n)return;const r=t-(this.itemSizeCache.get(n.key)??n.size);0!==r&&((void 0!==this.shouldAdjustScrollPositionOnItemSizeChange?this.shouldAdjustScrollPositionOnItemSizeChange(n,r,this):n.start<this.getScrollOffset()+this.scrollAdjustments)&&this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=r,behavior:void 0}),this.pendingMeasuredCacheIndexes.push(n.index),this.itemSizeCache=new Map(this.itemSizeCache.set(n.key,t)),this.notify(!1))})),zl(this,"measureElement",(e=>{e?this._measureElement(e,void 0):this.elementsCache.forEach(((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))}))})),zl(this,"getVirtualItems",$l((()=>[this.getVirtualIndexes(),this.getMeasurements()]),((e,t)=>{const n=[];for(let r=0,a=e.length;r<a;r++){const a=t[e[r]];n.push(a)}return n}),{key:!1,debug:()=>this.options.debug})),zl(this,"getVirtualItemForOffset",(e=>{const t=this.getMeasurements();if(0!==t.length)return Ml(t[Zl(0,t.length-1,(e=>Ml(t[e]).start),e)])})),zl(this,"getOffsetForAlignment",((e,t)=>{const n=this.getSize(),r=this.getScrollOffset();"auto"===t&&e>=r+n&&(t="end"),"end"===t&&(e-=n);const a=this.options.horizontal?"scrollWidth":"scrollHeight",i=(this.scrollElement?"document"in this.scrollElement?this.scrollElement.document.documentElement[a]:this.scrollElement[a]:0)-n;return Math.max(Math.min(i,e),0)})),zl(this,"getOffsetForIndex",((e,t="auto")=>{e=Math.max(0,Math.min(e,this.options.count-1));const n=this.measurementsCache[e];if(!n)return;const r=this.getSize(),a=this.getScrollOffset();if("auto"===t)if(n.end>=a+r-this.options.scrollPaddingEnd)t="end";else{if(!(n.start<=a+this.options.scrollPaddingStart))return[a,t];t="start"}const i=n.start-this.options.scrollPaddingStart+(n.size-r)/2;switch(t){case"center":return[this.getOffsetForAlignment(i,t),t];case"end":return[this.getOffsetForAlignment(n.end+this.options.scrollPaddingEnd,t),t];default:return[this.getOffsetForAlignment(n.start-this.options.scrollPaddingStart,t),t]}})),zl(this,"isDynamicMode",(()=>this.elementsCache.size>0)),zl(this,"cancelScrollToIndex",(()=>{null!==this.scrollToIndexTimeoutId&&this.targetWindow&&(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),this.scrollToIndexTimeoutId=null)})),zl(this,"scrollToOffset",((e,{align:t="start",behavior:n}={})=>{this.cancelScrollToIndex(),"smooth"===n&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(e,t),{adjustments:void 0,behavior:n})})),zl(this,"scrollToIndex",((e,{align:t="auto",behavior:n}={})=>{e=Math.max(0,Math.min(e,this.options.count-1)),this.cancelScrollToIndex(),"smooth"===n&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");const r=this.getOffsetForIndex(e,t);if(!r)return;const[a,i]=r;this._scrollToOffset(a,{adjustments:void 0,behavior:n}),"smooth"!==n&&this.isDynamicMode()&&this.targetWindow&&(this.scrollToIndexTimeoutId=this.targetWindow.setTimeout((()=>{if(this.scrollToIndexTimeoutId=null,this.elementsCache.has(this.options.getItemKey(e))){const[a]=Ml(this.getOffsetForIndex(e,i));t=a,r=this.getScrollOffset(),Math.abs(t-r)<1||this.scrollToIndex(e,{align:i,behavior:n})}else this.scrollToIndex(e,{align:i,behavior:n});var t,r})))})),zl(this,"scrollBy",((e,{behavior:t}={})=>{this.cancelScrollToIndex(),"smooth"===t&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+e,{adjustments:void 0,behavior:t})})),zl(this,"getTotalSize",(()=>{const e=this.getMeasurements();let t;return t=0===e.length?this.options.paddingStart:1===this.options.lanes?e[e.length-1]?.end??0:Math.max(...e.slice(-this.options.lanes).map((e=>e.end))),Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)})),zl(this,"_scrollToOffset",((e,{adjustments:t,behavior:n})=>{this.options.scrollToFn(e,{behavior:n,adjustments:t},this)})),zl(this,"measure",(()=>{this.itemSizeCache=new Map,this.notify(!1)})),this.setOptions(e)}}const Zl=(e,t,n,r)=>{for(;e<=t;){const a=(e+t)/2|0,i=n(a);if(i<r)e=a+1;else{if(!(i>r))return a;t=a-1}}return e>0?e-1:0},Jl="undefined"!=typeof document?l().useLayoutEffect:l().useEffect,eo=e=>(e=>{const t=l().useReducer((()=>({})),{})[1],n={...e,onChange:(n,r)=>{r?(0,ql.flushSync)(t):t(),e.onChange?.(n,r)}},[r]=l().useState((()=>new Ql(n)));return r.setOptions(n),Jl((()=>r._didMount()),[]),Jl((()=>r._willUpdate())),r})({observeElementRect:Wl,observeElementOffset:Gl,scrollToFn:Xl,...e}),to=e=>(e=>null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE)(e)?e.ownerDocument:document,no=(e,t)=>!t.map((e=>Array.from(document.querySelectorAll(e)))).flat().some((t=>t?.contains(e.target))),ro=(e,t)=>{const n=e.target;return!("button"in e&&e.button>0||n&&!to(n).contains(n)||t.current?.contains(n))};function ao({ref:e,handler:t,enabled:n=!0,omitClassNames:r=[]}){const a=G(t),l=i.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1});i.useEffect((()=>{if(!n)return;const i=t=>{ro(t,e)&&(l.current.isPointerDown=!0)},o=n=>{l.current.ignoreEmulatedMouseEvents?l.current.ignoreEmulatedMouseEvents=!1:t&&l.current.isPointerDown&&ro(n,e)&&no(n,r)&&(l.current.isPointerDown=!1,a(n))},s=n=>{l.current.ignoreEmulatedMouseEvents=!0,t&&l.current.isPointerDown&&ro(n,e)&&no(n,r)&&(l.current.isPointerDown=!1,a(n))},c=to(e.current);return c.addEventListener("mousedown",i,!0),c.addEventListener("mouseup",o,!0),c.addEventListener("touchstart",i,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",i,!0),c.removeEventListener("mouseup",o,!0),c.removeEventListener("touchstart",i,!0),c.removeEventListener("touchend",s,!0)}}),[t,e,a,l,n])}const io=e=>{const{column:t,keyPath:n,type:r}=e,{prefixCls:a,countMethod:i,summationData:o,setCountMethod:s}=el(),{t:c}=U(),{dataIndex:d,filter:u}=t,[m,p]=l().useState(!1),h=l().useMemo((()=>{const e=[{text:c("qm.pivotGrid.count.records"),value:"count",fn:Qi.count},{text:c("qm.pivotGrid.count.unique"),value:"unique",fn:Qi.unique},{text:c("qm.pivotGrid.count.empty"),value:"empty",fn:Qi.empty},{text:c("qm.pivotGrid.count.notEmpty"),value:"notEmpty",fn:Qi.notEmpty},{text:c("qm.pivotGrid.count.sum"),value:"sum",fn:Qi.sum},{text:c("qm.pivotGrid.count.max"),value:"max",fn:Qi.max},{text:c("qm.pivotGrid.count.min"),value:"min",fn:Qi.min},{text:c("qm.pivotGrid.count.avg"),value:"avg",fn:Qi.avg}];return"number"===u?.type?e:e.slice(0,-4)}),[]),f=l().useMemo((()=>{const e=i[d];return e?`${h.find((t=>t.value===e)).text} ${(t=o,a=n,a?Gi(t,a):t)?.[r]?.[d]??""}`:c("qm.pivotGrid.count.statistic");var t,a}),[o,i]);return l().createElement(R.Dropdown,{open:m,trigger:["click"],dropdownRender:()=>l().createElement("div",{className:xe()("ant-dropdown-menu","container"),style:{padding:5}},l().createElement("div",{className:"list"},h.map((e=>{const t=e.value===i[d];return l().createElement("li",{key:e.value,className:xe()("ant-dropdown-menu-item check-item",{active:t}),onClick:()=>{s({[d]:t?void 0:e.value}),p(!1)}},l().createElement("span",{className:"label"},e.text),l().createElement("i",{className:"icon"},l().createElement(we.CheckOutlined,null)))})))),className:xe()("count-select",{show:!!i[d]}),overlayClassName:`${a}__popper`,placement:"bottomRight",overlayStyle:{minWidth:140},onOpenChange:e=>p(e)},l().createElement("span",null,f," ",l().createElement(we.CaretDownOutlined,{className:"icon"})))},lo=(e,t)=>{const{pivotRef:n,columns:r,expandedKeys:a,searchResults:i,switchIndex:o,fillColorCells:s,setExpandedKeys:c}=el(),{gridRef:d,indentDepth:u,highlightKey:m,checkedColumnKey:p,selectionKeys:h,treeExpandKeys:f,setSelectionKeys:g,setTreeExpandKeys:y,setHighlightKey:b,setClicked:v}=Ll(),{keyRecordMap:x,isTree:E}=n.current,{bodyEl:w,rowVirtualizer:C}=d.current,{rowSelection:S,treeExpandable:N,rowHighlight:I,onRowEdit:T,onRowClick:O}=n.current.props,{t:k}=U(),{renderText:P,getTitleFromCellNode:L}=ci(),{selectionColumn:A,treeTable:_}=Qa,{indentWidth:F}=Vi,D=l().useMemo((()=>t?0:Wi(r).length-e.length),[r,e]),H=l().useMemo((()=>"radio"!==S?.type),[S]),q=(e,t)=>{const n=H?e?[...h,t]:h.filter((e=>e!==t)):[t];g(n),S?.onSelect?.(e,x.get(t)),S?.onChange?.(n,$(n))},$=e=>{const t=[];return e.forEach((e=>t.push(x.get(e)))),t},M=(e,t)=>i[o]?.rowKey===e&&i[o]?.dataIndex===t,K=(e,t)=>{const n=w.querySelectorAll(`li.table-row[data-row-key='${e}']`);Array.from(n).forEach((e=>{e.classList[t&&!C?.isScrolling?"add":"remove"]("row--hover")}))},z=(e,t,n,i)=>{const{dataIndex:o,width:s,renderWidth:d}=e,m={"expandable-column":o===A},p=1===t?(u-n._groupLevel)*F:0,h={width:`${(s||d||0)+p}px`,minWidth:`${(s||d||0)+p}px`};return l().createElement("div",{key:o,className:xe()("label-cell",m),style:h},o!==A?l().createElement(l().Fragment,null,1===t&&l().createElement("span",{className:"title"},(e=>{const{_record:t,_fieldName:n}=e,a=Qn(t,n),i=r.find((e=>e.dataIndex===n));return ie(a)||!i?l().createElement("span",{className:"empty"},k("qm.pivotGrid.group.empty")):i.render?i.render(a,t,i,0,0):P(a,i,t)})(n)),l().createElement(io,{column:e,keyPath:n.id,type:"subtotal"})):(e=>l().createElement("button",{className:xe()("button-icon",{expand:a.includes(e.id)}),onClick:()=>{return t=e.id,void c(a.includes(t)?a.filter((e=>e!==t)):[...a,t]);var t}},l().createElement(we.CaretRightOutlined,null)))(n))},j=(e,t,n,r,a)=>{const{dataIndex:i,width:o,renderWidth:c,align:d,render:u}=e,m=Qn(n,i),g=u?u(m,n,e,n.index,t):P(m,e,n),w=L(g),C=h.includes(a),k={"selection-column":i===A,"col--center":"center"===d,"col--right":"right"===d,"col--checked":p===i,active:M(a,i)},F={width:`${o||c||0}px`,minWidth:`${o||c||0}px`,backgroundColor:s.get(`${a}|${i}`)};return l().createElement("div",{key:i,"data-col-index":t,title:w,className:xe()("table-cell",k),style:F,onClick:t=>{i!==A&&(v([a,i]),I&&!I.disabled?.(n)&&(b(a),I.onChange?.(a,n)),O?.(n,e,t))}},i!==A?l().createElement(l().Fragment,null,E&&1===t&&l().createElement(l().Fragment,null,(D=n._level)?l().createElement("span",{key:D,className:`cell--indent indent-level-${D}`,style:{paddingLeft:D*_.textIndent+"px"}}):null,((e,t)=>{const n=N?.rowExpandable?.(e);return l().createElement(we.DownOutlined,{className:xe()("cell--expand",{fold:!f.includes(t),disabled:n}),style:{visibility:e.children?.length>0?"visible":"hidden"},onClick:()=>{n||(e=>{const t=f.includes(e),n=t?f.filter((t=>t!==e)):[...f,e];y(n),N?.onExpand?.(!t,x.get(e)),N?.onChange?.(n)})(t)}})})(n,a)),l().createElement("span",{className:"cell"},g)):l().createElement("div",{className:"action"},l().createElement("span",{className:"drag-icon"}),l().createElement("div",{className:"middle"},l().createElement("span",{className:"order"},((e,t)=>E?0===e._level?e._varIndex+1:null:t+1)(n,r)),S&&l().createElement(l().Fragment,null,H?l().createElement(R.Checkbox,{className:"checkbox",checked:C,disabled:S?.disabled?.(n),onChange:e=>q(e.target.checked,a)}):l().createElement(R.Radio,{className:"checkbox",checked:C,disabled:S?.disabled?.(n),onChange:e=>q(e.target.checked,a)}))),l().createElement("span",{className:"expand-icon",onClick:()=>T?.(n,r)},T?l().createElement(we.ExpandAltOutlined,null):null)));var D};return{renderGroupRow:(t,n)=>l().createElement("div",{className:"label-row"},e.map(((e,n)=>z(e,D+n,t)))),renderRow:(t,n,r)=>{const a={"row--selection":h.includes(r),"row--highlight":m===r};return l().createElement("li",{key:r,"data-row-key":r,className:xe()("table-row",a),onMouseEnter:()=>K(r,!0),onMouseLeave:()=>K(r)},e.map(((e,a)=>j(e,D+a,t,n,r))))}}},oo=e=>{const{tbodyColumns:t,layout:n,displayList:r,virtualRows:a,notGroup:i}=e,{indentDepth:o,updateLayout:s}=Ll(),{indentWidth:c}=Vi,d=l().useMemo((()=>t.filter((e=>"left"===e.fixed))),[t]),u=l().useMemo((()=>d.reduce(((e,t,n)=>e+(t.width||t.renderWidth||0)+(1===n?o*c:0)),0)),[o,s,d]),{renderGroupRow:m,renderRow:p}=lo(d,!0);return l().createElement("div",{className:"left-panel",style:{width:u}},l().createElement("div",{className:xe()("container",{"no-group":i})},a.map((e=>{const t=e.index,a=n[t],i=r[t];if(Ui(i))return l().createElement("div",{key:i.id,className:xe()("group-label",`level${i._groupLevel}`),style:{top:a.top,left:a.left,right:0,height:a.height}},m(i,a.key));const o=t===n.length-1||Ui(r[t+1]);return l().createElement("div",{key:a.key,className:xe()("row-item",{last:o}),style:{top:a.top,left:a.left,right:0,height:a.height}},p(i,i._varIndex,a.key))}))))},so=e=>{const{tbodyColumns:t,layout:n,displayList:r,virtualRows:a,notGroup:i}=e,{pivotRef:o}=el(),s=l().useMemo((()=>t.filter((e=>"left"!==e.fixed))),[t]),{renderGroupRow:c,renderRow:d}=lo(s);return l().createElement("div",{className:"main-panel"},l().createElement("div",{className:xe()("container",{"no-group":i})},a.map((e=>{const t=e.index,a=n[t],i=r[t];if(Ui(i))return l().createElement("div",{key:i.id,className:xe()("group-label",`level${i._groupLevel}`),style:{top:a.top,left:0,right:a.right,height:a.height}},c(i,a.key));const o=t===n.length-1||Ui(r[t+1]);return l().createElement("div",{key:a.key,className:xe()("row-item",{last:o}),style:{top:a.top,left:0,right:a.right,height:a.height}},d(i,i._varIndex,a.key))}))))},co=()=>{const{pivotRef:e,getRowKey:t,prefixCls:n,size:r,columns:a,groupGridData:i,expandedKeys:o,searchResults:s,switchIndex:c}=el(),{scrollbarRef:d,treeExpandKeys:u,setGridLayoutRef:m}=Ll(),{flatGroupData:p}=e.current,{contextMenues:h}=e.current.props,{groupMargin:f}=Vi,{rowHeightMaps:g}=Qa,y=l().useRef(null),b=l().useMemo((()=>Wi(a)),[a]),v=l().useMemo((()=>Array.isArray(i)),[i]),{contextMenu:x,closeMenu:E}=(({ref:e,popup:t,getTriggerContainer:n,prevent:r,prefixCls:a="",enabled:i=!0})=>{const o=l().useRef(null),s=l().useRef(null),c=e=>{s.current=e},[d,u]=l().useState(!1),[m,p]=l().useState(null),h={width:150,height:200,zIndex:9999};ao({ref:o,handler:()=>f()});const f=()=>{u(!1),p(null),c(null)},g=G((e=>{if(e.preventDefault(),r?.(e.target))return f();c(e),u(!0),re((()=>{const{width:t,height:n}=o.current?.getBoundingClientRect()||h,r=t,a=n,i=window.innerWidth,l=window.innerHeight;let s=e.clientX,c=e.clientY;s+r>i&&(s=Math.max(s-r,0)),c+a>l&&(c=Math.max(c-a,0)),p({x:s,y:c})}))}));l().useEffect((()=>{const t=n?.(e.current)||e.current;return i&&t&&t.addEventListener("contextmenu",g),()=>{t&&t.removeEventListener("contextmenu",g)}}),[e]);const y={position:"fixed",top:`${m?.y||0}px`,left:`${m?.x||0}px`,zIndex:h.zIndex};return{contextMenu:l().createElement(_l(),{open:d},l().createElement("div",{ref:o,className:`${a}__context-menu`,style:y},s.current?t(s.current):null)),closeMenu:f}})({ref:y,prevent:e=>e.offsetParent.classList.contains("group-label"),prefixCls:n,enabled:!!h,popup:e=>{const n=Be(e.target,"table-cell"),r=n?.parentNode?.getAttribute("data-row-key")||"",a=p.find((e=>t(e,e.index)==r)),i=Number(n?.getAttribute("data-col-index")||-1),o=b[i];return l().createElement("ul",{className:"ant-dropdown-menu",style:{padding:5}},h.map((e=>{const t=e.disabled?.(a,o)||!1;return l().createElement("li",{key:e.key,className:xe()("ant-dropdown-menu-item",{"ant-dropdown-menu-item-disabled":t}),onClick:()=>{t||(re((()=>E())),e.onClick?.(a,o))}},e.prefix&&l().createElement("span",{className:"prefix"},e.prefix),l().createElement("span",{className:"label"},e.label),e.suffix&&l().createElement("span",{className:"suffix"},e.suffix))})))}}),w=e=>{const t=p[e];for(let n=e+1;n<p.length;n++)if(p[n]._parentRowKey?.startsWith(t.id)){Object.assign(t,{_record:p[n]});break}},C=l().useMemo((()=>{const e=new Map,n=[];return p.forEach(((r,a)=>{if(Ui(r)){if(0===r._groupLevel)return e.set(r.id,o.includes(r.id)),w(a),void n.push(r);const t=r.id.slice(0,r.id.lastIndexOf(Vi.separator));return void(o.includes(t)&&e.get(t)&&(e.set(r.id,o.includes(r.id)),w(a),n.push(r)))}const i=t(r,r.index);r._parentRowKey&&!e.get(r._parentRowKey)||(e.set(i,u.includes(i)),n.push(r))})),e.clear(),n}),[i,o,u]),S=l().useMemo((()=>((e,{getRowKey:t,rowHeight:n})=>{const r=[],a=[],i=n,l=Vi.indentWidth,o=Vi.groupMargin;let s=o;for(e.forEach((e=>{if(void 0!==e._groupLevel){for(;a.length>0&&a[a.length-1]._level>=e._groupLevel;){const e=a.pop();if(e.height=e._childHeight+i,r[e._index].height=e.height,a.length>0){const t=a[a.length-1];t._childHeight+=e.height+o,t._subGroupCount+=1}s+=o}a[a.length-1];const t={key:e.id,top:s,left:l*e._groupLevel,right:l*e._groupLevel,height:i,_childHeight:0,_subGroupCount:0,_index:r.length,_level:e._groupLevel};r.push(t),a.push(t),s+=i}else{const n=a[a.length-1]||{left:0,right:0},l={key:t(e,e.index),top:s,left:n.left,right:n.right,height:i};r.push(l),s+=i,a.length>0&&(n._childHeight+=i)}}));a.length>0;){const e=a.pop();if(e.height=e._childHeight+i,r[e._index].height=e.height,a.length>0){const t=a[a.length-1];t._childHeight+=e.height+o,t._subGroupCount+=1}s+=o}return r})(C,{getRowKey:t,rowHeight:g[r]})),[C,r]);(e=>{const{pivotRef:t,getRowKey:n,size:r}=el(),{scrollbarRef:a,clicked:i,setHighlightKey:o,setClicked:s}=Ll(),{flatGroupData:c}=t.current,{rowHighlight:d}=t.current.props,u=l().useMemo((()=>2*Qa.rowHeightMaps[r]),[r]),m=l().useMemo((()=>c.filter((e=>!Ui(e)))),[c]),p=G((t=>{const{keyCode:r}=t;if(!ie(i)&&(27===r&&(o(""),s([])),38===r||40===r)){Me(t);const l=m.length;let c=m.findIndex((e=>n(e,e.index)===i[0]));const p=38===r?(--c+l)%l:++c%l,h=m[p],f=n(h,h.index);d&&!d.disabled?.(h)&&(o(f),d.onChange?.(f,h)),((t,n,r)=>{const i=m.length,l=e.find((e=>e.key===r)),o=a.current.scrollTop,s=a.current.container.offsetHeight,c=l.top,d=l.height;"top"===t?c<o?a.current.SET_SCROLL_TOP(c):n===i-1&&a.current.SET_SCROLL_TOP(c-(s-d)):c+d>o+(s-u)?a.current.SET_SCROLL_TOP(c-(s-u-d)):0===n&&a.current.SET_SCROLL_TOP(c)})(38===r?"top":"bottom",p,f),s([f,i[1]])}}));l().useLayoutEffect((()=>(window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p))),[])})(S);const N=l().useMemo((()=>{if(v)return S.reduce(((e,t)=>e+t.height),0)+2*f;const e=S.filter((e=>0===e._level));return e.reduce(((e,t)=>e+t.height),0)+(e.length-1)*f+2*f}),[v,S]),{rowVirtualizer:I,virtualRows:T}=(e=>{const{layout:t,isGroup:n}=e,{size:r}=el(),{scrollbarRef:a}=Ll(),{rowHeightMaps:i}=Qa,o=l().useMemo((()=>a.current?.container.children[0]??null),[a.current]),s=eo({count:t.length,getScrollElement:()=>o,estimateSize:e=>t[e].height,overscan:1,noCache:n,rangeExtractor:e=>{if(!n)return Vl(e);const l=a.current.scrollTop,c=s.scrollElement?.offsetHeight||o.offsetHeight,d=[];for(let e=0;e<t.length;e++){const n=t[e];l>n.top+n.height+i[r]||l+c+i[r]<n.top||d.push(e)}return d}}),c=s.getVirtualItems();return{rowVirtualizer:s,virtualRows:c}})({layout:S,isGroup:!v});He((()=>{const e=p.findIndex((e=>t(e,e.index)===s[c]?.rowKey));e>=0&&d.current.SET_SCROLL_TOP(e*g[r]);const n=b.findIndex((e=>e.dataIndex===s[c]?.dataIndex));if(n>=0){const e=b.slice(0,n).filter((e=>"left"!==e.fixed)).reduce(((e,t)=>e+(t.width||t.renderWidth)),0);d.current.SET_SCROLL_LEFT(e)}}),[c,s]),l().useLayoutEffect((()=>{m("bodyEl",y.current),m("rowVirtualizer",I)}),[]);const R={tbodyColumns:b,layout:S,displayList:C,virtualRows:T,notGroup:v};return l().createElement("div",{ref:y,className:"body",style:{height:N}},l().createElement(oo,R),l().createElement(so,R),x)},uo=()=>{const{columns:e,groupGridData:t,countMethod:n,setSummationData:r}=el(),{indentDepth:a,updateLayout:i}=Ll(),{selectionColumn:o}=Qa,{indentWidth:s}=Vi,c=l().useMemo((()=>Wi(e)),[e]),d=l().useMemo((()=>c.filter((e=>"left"===e.fixed))),[c]),u=l().useMemo((()=>c.filter((e=>"left"!==e.fixed))),[c]),m=l().useMemo((()=>d.reduce(((e,t,n)=>e+(t.width||t.renderWidth||0)+(1===n?a*s:0)),0)),[a,i,d]);He((()=>{r(((e,t)=>{const n=[],r=e=>{const n={};for(const r in t){const a=e.map((e=>le(e,r)||0));n[r]=t[r](a)}return n},a=e=>{if(Array.isArray(e))return n.push(...e),{total:r(e)};const i={},l={};Object.keys(t).forEach((e=>{l[e]=[]}));for(const r in e){const o=e[r];if(Array.isArray(o)){n.push(...o);const e={};for(const n in t){const r=o.map((e=>le(e,n)||0));e[n]=t[n](r),l[n].push(...r)}i[r]={subtotal:e}}else{const e=a(o);i[r]=e;for(const n in t){const t=e.subtotal[n];void 0!==t&&l[n].push(t)}}}if(0===n.length)return i;const o={};for(const e in t)o[e]=t[e](l[e]);return i.subtotal=o,i},i=Array.isArray(e)?{total:r(e)}:a(e);return n.length>0&&(i.total=r(n)),delete i.subtotal,i})(t,(e=>{const t={};for(const n in e)e[n]&&Object.assign(t,{[n]:Qi[e[n]]});return t})(n)))}),[n,t]);const p=(e,t)=>l().createElement("div",{className:xe()(t?"fixed-left":"no-fixed"),style:{width:t?m:""}},e.map(((n,r)=>{const{dataIndex:i,width:c,renderWidth:d}=n,u={"selection-column":i===o,"col--right":!0},m=t&&1===r||!t&&r===e.length-1?a*s:0,p={width:`${(c||d||0)+m}px`,minWidth:`${(c||d||0)+m}px`};return l().createElement("div",{key:i,className:xe()("table-cell",u),style:p},i!==o?l().createElement(io,{column:n,keyPath:"",type:"total"}):null)})));return l().createElement("div",{className:"footer"},p(d,!0),(e=>p(e))(u))},mo=()=>{const{prefixCls:e,size:t}=el(),n=l().useRef(null);return l().createElement(Pl,{scrollbar:n},l().createElement(At,{ref:n,className:xe()(`${e}__layout`,t)},l().createElement(Hl,null),l().createElement(co,null),l().createElement(uo,null)))},po=()=>l().createElement("div",{className:"wrapper"},l().createElement(mo,null)),ho={rowKey:"id",columns:[],dataSource:[]},fo=e=>{const t=h(ho,e),{rowKey:n,fromTable:r,columns:a,dataSource:i,height:o,maxHeight:s,className:c,style:d}=t,{$size:u}=Y(t),m=G(((e,t)=>{const r="function"==typeof n?n(e,t):e?.[n];return void 0===r?(me("PivotGrid","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):r})),p=(e,t="",n=0)=>e.map(((e,r)=>{const a=m(e,e.index);return e.index=r,e._level=n,Array.isArray(e.children)&&(e.children=p(e.children,a,n+1)),t?Object.assign(e,{_parentRowKey:t}):e})),f=l().useMemo((()=>(e=>{let t=!1;const n=(e=>e.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex))))(e).map((e=>{"left"===e.fixed&&(t=!0);const n={...e,fixed:"left"===e.fixed?"left":void 0,editRender:void 0};return r&&(void 0===n.fixed&&delete n.fixed,delete n.editRender),n}));return!t&&n.length&&(n[0].fixed="left",me("PivotGrid","至少需要有一项 `fixed: left` 的固定列")),n})(a)),[a]),g=l().useMemo((()=>p(i)),[i]),y=Ee("pivot-grid"),b={[y]:!0,"is-from-table":r},v={height:o,maxHeight:o||s?s:500},x={prefixCls:y,size:u,getRowKey:m,flatColumns:f,tableData:g,pivotProps:oe(t,["columns","dataSource","rowKey","size","height","maxHeight","className","style"])};return l().createElement("div",{className:xe()(b,c),style:{...d,...v}},l().createElement(Ji,x,l().createElement(Ol,null),l().createElement(po,null)))};fo.displayName="PivotGrid";const go=fo,yo=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{tableRef:r,prefixCls:a,flattenColumns:i}=l().useContext(Aa),{rowKey:o,uniqueKey:s}=r.current.props,{t:c}=U(),{tableFullData:d}=r.current,[u,m]=l().useState(!1),p=()=>{m(!0)};l().useImperativeHandle(t,(()=>({clickHandle:p})));const h={visible:u,title:c("qm.table.pivotGrid.settingTitle"),width:"80vw",loading:!1,bodyStyle:{padding:0},onClose:()=>m(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${a}-pivot-grid`,title:c("qm.table.pivotGrid.text"),onClick:()=>p()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.LineChartOutlined,null))),l().createElement(yn,h,l().createElement(go,{fromTable:!0,rowKey:o,uniqueKey:s,columns:i,dataSource:d})))}));yo.displayName="PivotGrid";const bo=yo,vo=e=>{const{columns:t,group:n,summary:r}=e,{tableRef:a,$size:i,pagination:o,fetchParams:s,isFetch:d}=l().useContext(Aa),{fetch:u}=a.current.props,{t:m}=U(),p=e=>{const n=t.find((t=>t.dataIndex===e));return{title:n.title,precision:n.precision,dictItems:n.dictItems??[]}},h=n.map((e=>({dataIndex:e.group,...p(e.group)}))),f=r.map((e=>e.summary===Qa.groupSummary.total.value?{dataIndex:e.summary,title:Qa.groupSummary.total.text,formula:e.formula}:{dataIndex:e.summary,...p(e.summary),formula:e.formula})),g=l().useMemo((()=>Object.assign({},s,{[Qa.sorterFieldName]:void 0,[Qa.groupSummary.summaryFieldName]:r.map((e=>`${e.formula}|${e.summary}`)).join(","),[Qa.groupSummary.groupbyFieldName]:n.map((e=>e.group)).join(","),usedJH:2,[Qa.currentPageName]:1})),[s,n,r]),[y,b]=l().useState(((e,n)=>[{title:m("qm.table.groupSummary.index"),dataIndex:"pageIndex",width:80,render:e=>e+1},...e.map((e=>({title:e.title,dataIndex:e.dataIndex,dictItems:e.dictItems}))),...n.map((e=>{const n=t.find((t=>t.dataIndex===e.dataIndex))?.groupSummary;let r=n?{summation:n}:null;return e.dataIndex===Qa.groupSummary.total.value&&(r={dataIndex:Qa.groupSummary.recordTotalIndex,summation:{render:()=>o.total}}),{...e,..."count"===e.formula||"sum"===e.formula?r:null}}))])(h,f)),[v]=l().useState(d?[]:(e=>{const t=dr(e,n.map((e=>e.group))),a=[];return t.forEach((e=>{const t={};y.forEach((n=>{const{dataIndex:r}=n;"index"!==r&&Zn(t,r,Qn(e[0],r))})),r.forEach((n=>{const r=n.summary!==Qa.groupSummary.total.value?n.summary:Qa.groupSummary.recordTotalIndex,a=n.formula;"count"===a&&Zn(t,r,e.length),"sum"===a&&Zn(t,r,(0,X.sumBy)(e,r)),"max"===a&&Zn(t,r,(0,X.maxBy)(e,r)[r]),"min"===a&&Zn(t,r,(0,X.minBy)(e,r)[r]),"avg"===a&&Zn(t,r,((0,X.sumBy)(e,r)/e.length).toFixed(2))})),a.push(t)})),a})(a.current.tableFullData)),x={size:i,height:400,...d?{fetch:{api:u.api,params:g,dataKey:u?.dataKey}}:{dataSource:v},columns:y,rowKey:e=>e.index,showFastSearch:!1,showTableImport:!1,exportExcel:{fileName:`${c()().format(Ka)}.xlsx`},tablePrint:{showLogo:!0},columnsChange:e=>b(e)};return l().createElement(Fs,x)},xo=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,prefixCls:a,$size:i,flattenColumns:s}=l().useContext(Aa),{uniqueKey:c}=r.current.props,{t:d}=U(),u=l().useRef(null),m=l().useRef(null),[p,h]=l().useState(!1),[f,g]=l().useState([]),[y,b]=l().useState(""),[v,x]=l().useState("");He((()=>{if(v){const{group:e,summary:t}=f.find((e=>e.value===v)).list;T(e),L(t)}else{const e=D();T(e?.group||[]),L(e?.summary||[])}}),[v]),l().useEffect((()=>{H()}),[]);const E=l().useMemo((()=>c?`summary_${c}`:""),[c]),w=l().useMemo((()=>s.filter((e=>![Qa.expandableColumn,Qa.selectionColumn,"index","pageIndex",Qa.operationColumn].includes(e.dataIndex)))),[s]),C=w.filter((e=>!e.groupSummary)).map((e=>({text:or(e.title),value:e.dataIndex}))),S=[Qa.groupSummary.total,...w.filter((e=>!!e.groupSummary)).map((e=>({text:or(e.title),value:e.dataIndex})))],N=[{text:d("qm.table.groupSummary.sumText"),value:"sum"},{text:d("qm.table.groupSummary.maxText"),value:"max"},{text:d("qm.table.groupSummary.minText"),value:"min"},{text:d("qm.table.groupSummary.avgText"),value:"avg"},{text:d("qm.table.groupSummary.countText"),value:"count"}],[I,T]=l().useState([]),[O,k]=l().useState([{title:d("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{u.current.REMOVE_RECORDS(t)}},d("qm.table.groupSummary.removeText")))},{dataIndex:"group",title:d("qm.table.groupSummary.groupItem"),minWidth:200,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:C.map((e=>({...e,disabled:I.findIndex((t=>t.group===e.value))>-1})))})}]),[P,L]=l().useState([]),[A,_]=l().useState([{title:d("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{m.current.REMOVE_RECORDS(t)}},d("qm.table.groupSummary.removeText")))},{dataIndex:"summary",title:d("qm.table.groupSummary.summaryColumn"),minWidth:200,editRender:e=>({type:"select",editable:!0,items:S.map((e=>({...e,disabled:P.findIndex((t=>t.summary===e.value))>-1}))),extra:{cornerSign:!1},onChange:t=>{e.formula=""}})},{dataIndex:"formula",title:d("qm.table.groupSummary.calcFormula"),width:140,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:e.summary===Qa.groupSummary.total.value?N.slice(N.length-1):N})}]),F=l().useMemo((()=>{const e=I.length&&I.every((e=>Object.values(e).every((e=>""!==e)))),t=P.length&&P.every((e=>Object.values(e).every((e=>""!==e))));return!(e&&t)}),[I,P]),D=()=>{if(!E)return;const e=sessionStorage.getItem(E);return e?JSON.parse(e):null},H=async()=>{if(!E)return;const e=D();if(e){const{group:t,summary:n}=e;T(t),L(n)}let t=await Mi().getItem(E);t||(t=await q(E),Array.isArray(t)&&await Mi().setItem(E,t)),Array.isArray(t)&&t.length&&(g(t),!e&&x(t[0].value))},q=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},$=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}},M={visible:p,title:d("qm.table.groupSummary.resultText"),loading:!1,onClose:()=>h(!1)};return l().createElement("div",{className:`${a}-group-summary__setting`},l().createElement("div",{className:"main"},l().createElement("div",{style:{width:"30%"}},l().createElement(Fs,{ref:u,size:i,columns:O,dataSource:I,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>k(e),onDataChange:e=>{T(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{u.current.INSERT_RECORDS({})},style:{marginRight:0}}))),l().createElement("div",{className:"container line"},l().createElement(Fs,{ref:m,size:i,columns:A,dataSource:P,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>_(e),onDataChange:e=>{L(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{m.current.INSERT_RECORDS({})},style:{marginRight:0}}))),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:i,value:y,placeholder:d("qm.table.groupSummary.configText"),disabled:F,onChange:e=>{const{value:t}=e.target;b(t)}}),l().createElement(fe,{type:"primary",disabled:!y||F,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!E)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=ir(),t=[...f,{text:y,value:e,list:{group:I.filter((e=>!!e.group)),summary:P.filter((e=>!!e.summary))}}];g(t),x(e),b(""),await Mi().setItem(E,t),await $(E,t)})()},d("qm.table.groupSummary.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[i]}px`}},l().createElement("span",null,d("qm.table.groupSummary.savedSetting"))),l().createElement("ul",null,f.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===v}),title:e.text,onClick:()=>{return t=e.value,void x(t!==v?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:d("qm.table.groupSummary.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=f.filter((t=>t.value!==e));g(t),e===v&&x(""),await Mi().setItem(E,t),await $(E,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!f.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement(yn,M,l().createElement(vo,{columns:w,group:I,summary:P})),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>t(),style:{marginRight:8}},d("qm.table.groupSummary.closeButton")),l().createElement(fe,{type:"primary",disabled:F,onClick:()=>(E&&sessionStorage.setItem(E,JSON.stringify({group:I.filter((e=>!!e.group)),summary:P.filter((e=>!!e.summary))})),void h(!0))},d("qm.table.groupSummary.confirmButton"))))},Eo=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U(),[i,o]=l().useState(!1),s=()=>{o(!0)};l().useImperativeHandle(t,(()=>({clickHandle:s})));const c={visible:i,title:a("qm.table.groupSummary.settingTitle"),loading:!1,width:"65%",bodyStyle:{paddingBottom:"52px"},onClose:()=>o(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-group-summary`,title:a("qm.table.groupSummary.text"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.PieChartOutlined,null))),l().createElement(yn,c,l().createElement(xo,{onClose:()=>o(!1)})))}));Eo.displayName="GroupSummary";const wo=Eo,Co=e=>{const{onClose:t}=e,{global:n}=l().useContext(o),{tableRef:r,$size:a,prefixCls:i,flattenColumns:s,setSuperFilters:c,clearTableFilter:d}=l().useContext(Aa),{uniqueKey:u}=r.current.props,{t:m}=U(),p=l().useRef(null),[h,f]=l().useState([]),[g,y]=l().useState([]),[b,v]=l().useState(""),[x,E]=l().useState("");He((()=>{f(x?g.find((e=>e.value===x)).list:D()||[])}),[x]),l().useEffect((()=>{H()}),[]);const w=l().useMemo((()=>u?`superSearch_${u}`:""),[u]),C=l().useMemo((()=>s.filter((e=>!!e.filter))),[s]),S=cr(h),N=l().useMemo((()=>!(S&&Ln(S))),[S]),I=l().useMemo((()=>!!h.length&&N),[h,N]),T=[{value:"and",text:m("qm.table.highSearch.andText")},{value:"or",text:m("qm.table.highSearch.orText")}],O=s.filter((e=>!!e.filter)).map((e=>({value:e.dataIndex,text:or(e.title)}))),k=e=>["in","nin"].includes(e),P=(e,t)=>{let n;switch(e){case"number":n="number";break;case"date":n="date";break;case"checkbox":case"radio":n=t?"select-multiple":"select";break;default:n="text"}return n},L=e=>{let t=[];switch(e){case"date":case"number":t=[{value:">",text:m("qm.table.highSearch.gtText")},{value:"<",text:m("qm.table.highSearch.ltText")},{value:">=",text:m("qm.table.highSearch.gteText")},{value:"<=",text:m("qm.table.highSearch.lteText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":case"tree":t=[{value:"in",text:m("qm.table.highSearch.inText")},{value:"nin",text:m("qm.table.highSearch.ninText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}];break;default:t=[{value:"like",text:m("qm.table.highSearch.likeText")},{value:"==",text:m("qm.table.highSearch.eqText")},{value:"!=",text:m("qm.table.highSearch.neqText")}]}return t},[A,_]=l().useState([{title:m("qm.table.highSearch.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,t)=>l().createElement("div",null,l().createElement(fe,{type:"text",onClick:()=>{p.current.REMOVE_RECORDS(t)}},m("qm.table.highSearch.removeText")))},{title:m("qm.table.highSearch.bracket"),dataIndex:"bracketLeft",align:"right",width:80,render:(e,t)=>l().createElement("span",{style:{fontSize:"20px"}},e)},{title:m("qm.table.highSearch.fieldName"),dataIndex:"fieldName",width:160,required:!0,dictItems:O,editRender:e=>({type:"select",editable:!0,rules:[{required:!0,message:m("qm.table.highSearch.noEmpty")}],extra:{cornerSign:!1},onChange:t=>{const n=Object.values(t)[0],r=C.find((e=>e.dataIndex===n))?.filter.type,a=L(r);e.fieldType=r,e.expression=n?a[0]?.value:"",e.condition=k(e.expression)?[]:"",n||(e.bracketLeft=e.bracketRight="")}})},{title:m("qm.table.highSearch.fieldType"),dataIndex:"fieldType",width:100,hidden:!0},{title:m("qm.table.highSearch.expression"),dataIndex:"expression",width:120,required:!0,editRender:e=>{const t=C.find((t=>t.dataIndex===e.fieldName))?.filter.type;return{type:"select",editable:!0,items:L(t),extra:{disabled:!e.fieldName,cornerSign:!1},onChange:()=>{e.condition=k(e.expression)?[]:""}}}},{title:m("qm.table.highSearch.condition"),dataIndex:"condition",minWidth:200,editRender:e=>{const t=C.find((t=>t.dataIndex===e.fieldName)),n=t?.filter.type,r=t?.filter?.items??t?.dictItems??[];return{type:P(n,k(e.expression)),editable:!0,items:r,extra:{disabled:!e.fieldName,cornerSign:!1}}}},{title:m("qm.table.highSearch.bracket"),dataIndex:"bracketRight",width:80,render:(e,t)=>l().createElement("span",{style:{fontSize:"20px"}},e)},{title:m("qm.table.highSearch.logic"),dataIndex:"logic",width:100,required:!0,dictItems:T,editRender:e=>({type:"select",editable:!0,extra:{disabled:!e.fieldName,cornerSign:!1}})}]),F=()=>{w&&sessionStorage.setItem(w,JSON.stringify(h.filter((e=>!!e.fieldName))))},D=()=>{if(!w)return;const e=sessionStorage.getItem(w);return e?JSON.parse(e):null},H=async()=>{if(!w)return;const e=D();e&&f(e);let t=await Mi().getItem(w);t||(t=await q(w),Array.isArray(t)&&await Mi().setItem(w,t)),Array.isArray(t)&&t.length&&(y(t),!e&&E(t[0].value))},q=async e=>{const t=n?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},$=async(e,t)=>{const r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}};return l().createElement("div",{className:`${i}-super-search__setting`},l().createElement("div",{className:"main"},l().createElement("div",{className:"container"},l().createElement(Fs,{ref:p,size:a,columns:A,dataSource:h,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>_(e),onRowClick:(e,t)=>{const{dataIndex:n}=t;e.fieldName&&["bracketLeft","bracketRight"].includes(n)&&("bracketLeft"===n&&(e[n]=e[n]?"":"("),"bracketRight"===n&&(e[n]=e[n]?"":")"),f([...h]))},onDataChange:e=>{f(e)}},l().createElement(fe,{type:"primary",icon:l().createElement(we.PlusOutlined,null),onClick:()=>{p.current.INSERT_RECORDS({bracketLeft:"",bracketRight:"",logic:"and"})},style:{marginRight:0}})),Qa.highSearch.showSQL&&S&&l().createElement("code",{className:"lang-js"},S)),l().createElement("div",{className:"saved line"},l().createElement("div",{className:"form-wrap"},l().createElement(R.Input,{size:a,value:b,placeholder:m("qm.table.highSearch.configText"),disabled:N,onChange:e=>{const{value:t}=e.target;v(t)}}),l().createElement(fe,{type:"primary",disabled:!b||N,style:{marginLeft:"10px"},onClick:()=>(async()=>{if(!w)return me("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=ir(),t=[...g,{text:b,value:e,list:h.filter((e=>!!e.fieldName))}];y(t),E(e),v(""),await Mi().setItem(w,t),await $(w,t)})()},m("qm.table.highSearch.saveButton"))),l().createElement("div",{className:"card-wrap"},l().createElement("h5",{style:{height:`${Qa.rowHeightMaps[a]}px`}},l().createElement("span",null,m("qm.table.highSearch.savedSetting"))),l().createElement("ul",null,g.map((e=>l().createElement("li",{key:e.value,className:xe()({selected:e.value===x}),title:e.text,onClick:()=>{return t=e.value,void E(t!==x?t:"");var t}},l().createElement("span",{className:"title"},e.text),l().createElement("i",{className:"svgicon close",title:m("qm.table.highSearch.removeText"),onClick:t=>{t.stopPropagation(),(async e=>{if(!e)return;const t=g.filter((t=>t.value!==e));y(t),e===x&&E(""),await Mi().setItem(w,t),await $(w,t)})(e.value)}},l().createElement(we.CloseCircleOutlined,null))))),!g.length&&l().createElement("div",{style:{padding:Da}},l().createElement(dt,null)))))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>t(),style:{marginRight:8}},m("qm.table.highSearch.closeButton")),l().createElement(fe,{type:"primary",disabled:I,onClick:()=>(d(),c(h.map((e=>oe(e,["index","pageIndex"])))),F(),void t())},m("qm.table.highSearch.searchButton"))))},So=l().forwardRef(((e,t)=>{const{open:n=!0}=e,{prefixCls:r}=l().useContext(Aa),{t:a}=U(),[i,o]=l().useState(!1),s=()=>{o(!0)};l().useImperativeHandle(t,(()=>({clickHandle:s})));const c={visible:i,title:a("qm.table.highSearch.settingTitle"),loading:!1,width:"70%",bodyStyle:{paddingBottom:"52px"},onClose:()=>o(!1)};return l().createElement(l().Fragment,null,n&&l().createElement("span",{className:`${r}-super-search`,title:a("qm.table.highSearch.text"),onClick:()=>s()},l().createElement("i",{className:"svgicon icon"},l().createElement(we.FunnelPlotOutlined,null))),l().createElement(yn,c,l().createElement(Co,{onClose:()=>o(!1)})))}));So.displayName="SuperSearch";const No=So,Io=l().forwardRef(((e,t)=>{const{tableColumns:n,showFullScreen:r,showReload:a,showPrint:i,showImport:s,showExport:c,showClipboard:d,showCollection:u,showFastSearch:m,showSuperSearch:p,showPivotGrid:h,showGroupSummary:f,showToolBox:g}=e,{global:y}=l().useContext(o),{tableRef:b,$size:v,prefixCls:x,isFullScreen:E}=l().useContext(Aa),{uniqueKey:w,exportExcel:C}=b.current.props,{t:S}=U(),N=l().useRef(null),I=l().useRef(null),T=l().useRef(null),O=l().useRef(null),k=l().useRef(null),P=l().useRef(null),L=l().useRef(null),A=l().useRef(null),_=l().useRef(null),F=l().useRef(null),D=l().useRef(null),H=l().useRef(!1),q=l().useMemo((()=>w?`toolBox_${w}`:""),[w]),[$,M]=l().useState({fullScreen:!1,reload:!1,print:!1,import:!1,export:!1,clipboard:!1,collection:!1,fastSearch:!1,superSearch:!1,pivotGrid:!1,groupSummary:!1}),K={fullScreen:r,reload:a,print:i,import:s,export:c&&!C?.hideIcon,clipboard:d,collection:u,fastSearch:m,superSearch:p,pivotGrid:h,groupSummary:f},[z,j]=l().useState(!1);He((()=>{H.current&&(W(),H.current=!1)}),[$]),l().useEffect((()=>{V()}),[]),l().useImperativeHandle(t,(()=>({exportHandle:()=>{if(!k.current)return me("Table","执行导出需要配置 `exportExcel` 参数");k.current.clickHandle()}})));const V=()=>{if(!q||!g)return;const e=JSON.parse(localStorage.getItem(q));e||B(q).then((e=>{e&&(M(Object.assign({},$,e)),localStorage.setItem(q,JSON.stringify(e)))})).catch((()=>{})),e&&M(Object.assign({},$,e))},W=()=>{if(!q||!g)return;const e={};for(const t in $)$[t]&&(e[t]=$[t]);localStorage.setItem(q,JSON.stringify(e)),G(q,e)},B=async e=>{const t=y?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},G=async(e,t)=>{const n=y?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}},Y=async e=>{j(!1),await ne(100),e.current.clickHandle()},X=(e,t)=>{H.current=!0,M(Object.assign({},$,{[t]:e}))},Q={"top-toolbox__popper":!0,[`${x}--lg`]:"large"===v,[`${x}--sm`]:"small"===v};return l().createElement(l().Fragment,null,r&&l().createElement(li,{ref:N,isFullScreen:E,open:!g||$.fullScreen}),a&&l().createElement(si,{ref:I,open:!g||$.reload}),i&&l().createElement(ui,{ref:T,tableColumns:n,open:!g||$.print}),s&&l().createElement(Ii,{ref:O,tableColumns:n,open:!g||$.import}),c&&l().createElement(Li,{ref:k,tableColumns:n,open:(!g||$.export)&&!C?.hideIcon}),d&&l().createElement(Fi,{ref:P,open:!g||$.clipboard}),u&&l().createElement(qi,{ref:L,columns:n,open:!g||$.collection}),m&&l().createElement(ji,{ref:A,open:!g||$.fastSearch}),h&&l().createElement(bo,{ref:_,open:!g||$.pivotGrid}),f&&l().createElement(wo,{ref:F,open:!g||$.groupSummary}),p&&l().createElement(No,{ref:D,open:!g||$.superSearch}),g&&l().createElement(R.Dropdown,{open:z,trigger:["click"],placement:"bottomRight",dropdownRender:()=>(()=>{const e=[{key:"fullScreen",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.fullScreen,style:{marginRight:6},onChange:e=>X(e.target.checked,"fullScreen"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.screen.full"))),onClick:()=>Y(N)},{key:"reload",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.reload,style:{marginRight:6},onChange:e=>X(e.target.checked,"reload"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.refresh.text"))),onClick:()=>Y(I)},{key:"print",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.print,style:{marginRight:6},onChange:e=>X(e.target.checked,"print"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.print.text"))),onClick:()=>Y(T)},{key:"import",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.import,style:{marginRight:6},onChange:e=>X(e.target.checked,"import"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.import.textNoSpace"))),onClick:()=>Y(O)},{key:"export",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.export,style:{marginRight:6},onChange:e=>X(e.target.checked,"export"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.export.textNoSpace"))),onClick:()=>Y(k)},{key:"clipboard",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.clipboard,style:{marginRight:6},onChange:e=>X(e.target.checked,"clipboard"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.clipboard.textNoSpace"))),onClick:()=>Y(P)},{key:"collection",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.collection,style:{marginRight:6},onChange:e=>X(e.target.checked,"collection"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.selectCollection.text"))),onClick:()=>Y(L)},{key:"fastSearch",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.fastSearch,style:{marginRight:6},onChange:e=>X(e.target.checked,"fastSearch"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.fastSearch.text"))),onClick:()=>Y(A)},{key:"pivotGrid",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.pivotGrid,style:{marginRight:6},onChange:e=>X(e.target.checked,"pivotGrid"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.pivotGrid.text"))),onClick:()=>Y(_)},{key:"groupSummary",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.groupSummary,style:{marginRight:6},onChange:e=>X(e.target.checked,"groupSummary"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.groupSummary.text"))),onClick:()=>Y(F)},{key:"superSearch",label:l().createElement(l().Fragment,null,l().createElement(R.Checkbox,{checked:$.superSearch,style:{marginRight:6},onChange:e=>X(e.target.checked,"superSearch"),onClick:e=>e.stopPropagation()}),l().createElement("span",null,S("qm.table.highSearch.text"))),onClick:()=>Y(D)}];return l().createElement(R.Menu,{items:e.filter((e=>K[e.key]))})})(),overlayClassName:xe()(Q),overlayStyle:{minWidth:120},onOpenChange:e=>{j(e)}},l().createElement("span",{className:`${x}-toolbox`,title:S("qm.table.toolbox.text")},l().createElement("i",{className:"svgicon icon"},l().createElement(we.AppstoreAddOutlined,null)))))}));Io.displayName="ToolBox";const To=Io,Ro=(e,t)=>e.map((e=>(e.children&&(e.children=Ro(e.children,t)),t(e)))),Oo=l().forwardRef(((e,t)=>{const{columns:n}=e,{global:r}=l().useContext(o),{tableRef:a,prefixCls:i,$size:s}=l().useContext(Aa),{showColumnDefine:c,uniqueKey:d,onlyShowIcon:u,columnsChange:m}=a.current.props,{t:p}=U(),h=l().useRef([]),[f,g]=l().useState(!1),y=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&"left"===e.fixed)))(n)),[n]),b=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&"right"===e.fixed)))(n)),[n]),v=l().useMemo((()=>(e=>e.filter((e=>!e.noAuth&&!e.fixed)))(n)),[n]),x=l().useMemo((()=>d?`table_${d}`:""),[d]);He((()=>{w(n)}),[n]),l().useLayoutEffect((()=>{C()}),[]),l().useImperativeHandle(t,(()=>({initialHandler:C})));const E=e=>e.map((e=>{const t={};return Array.isArray(e.children)&&(t.children=E(e.children)),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),{dataIndex:e.dataIndex,...t}})),w=e=>{if(!x)return;const t=E(e),n=JSON.parse(localStorage.getItem(x));a.current.columnsDefined&&!(0,X.isEqual)(t,n)&&(localStorage.setItem(x,JSON.stringify(t)),(async(e,t)=>{const n=r?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(x,t))},C=()=>{const e=(()=>{if(!x)return;const e=JSON.parse(localStorage.getItem(x));return e||(async e=>{const t=r?.getComponentConfigApi;if(t)try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}})(x).then((e=>{e?(localStorage.setItem(x,JSON.stringify(e)),C()):r?.getComponentConfigApi&&w(n)})).catch((()=>{})),e?(0,X.xor)(Dn(e).map((e=>e.dataIndex)),Dn(n).map((e=>e.dataIndex))).length>0?Ro(n,(t=>{const n=qn(e,t.dataIndex);return n&&(void 0!==n.hidden&&(t.hidden=n.hidden),void 0!==n.fixed&&(t.fixed=n.fixed),void 0!==n.width&&(t.width=n.width),void 0!==n.renderWidth&&(t.renderWidth=n.renderWidth)),t})):Ro(e,(e=>{const t=qn(n,e.dataIndex);return void 0===e.fixed&&delete t.fixed,Object.assign({},t,e)})):void 0})();var t;e&&(t=S(e),h.current=t,m?.(e))},S=e=>{const t=[];return e.filter((e=>!e.noAuth)).forEach(((n,r)=>{const a=n.colSpan;a>1&&e.slice(r+1,r+a).every((({colSpan:e})=>0===e))&&t.push(e.slice(r,r+a))})),t},N=e=>{const t=[];e.forEach((n=>{const{colSpan:r,dataIndex:a}=n;if(0===r)return;if(1===r)return t.push(n);const i=h.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(a)));if(-1===i)return t.push(n);t.push(...h.current[i].map((({dataIndex:t},r)=>{const a=e.find((e=>e.dataIndex===t));return r>0&&(void 0!==n.hidden&&(a.hidden=n.hidden),void 0!==n.fixed?a.fixed=n.fixed:a.fixed&&delete a.fixed),a})))})),n.forEach(((e,n)=>{e.noAuth&&t.findIndex((t=>t.dataIndex===e.dataIndex))<0&&t.splice(n,0,e)})),m?.(t)},I=(e,t)=>{e.noFixed||(t?e.fixed=t:delete e.fixed,N(n))},T=(e,t)=>{const{colSpan:r,noFixed:a}=e;if(0===r)return l().createElement("li",{key:e.dataIndex,style:{display:"none"}});const i=or(e.title),o=["svgicon","handle",`${t}-handle`],s=l().createElement("li",{key:e.dataIndex,className:"item"},l().createElement(R.Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,N(n)}}),l().createElement("i",{className:xe()(o),title:p("qm.table.columnFilter.draggable")},l().createElement(we.HolderOutlined,null)),l().createElement("span",{className:"text",title:i},i),"main"===t?l().createElement("span",{className:xe()("fixed",a?"disabled":"")},l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.fixedLeft"),onClick:()=>I(e,"left")},l().createElement(we.StepBackwardOutlined,null)),l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.fixedRight"),onClick:()=>I(e,"right")},l().createElement(we.StepForwardOutlined,null))):"sub"!==t?l().createElement("span",{className:xe()("fixed",a?"disabled":"")},l().createElement("i",{className:"svgicon",title:p("qm.table.columnFilter.cancelFixed"),onClick:()=>I(e)},l().createElement(we.CloseCircleOutlined,null))):null);return!e.hidden&&e.children?.length?l().createElement(R.Popover,{key:e.dataIndex,trigger:["hover"],placement:"leftTop",overlayClassName:"column-item__popper",content:O(e.children,e.dataIndex)},s):s},O=(e,t)=>l().createElement("div",{className:"column-filter--wrap"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".sub-handle",tag:"ul",animation:200,list:e,setList:r=>{const a=r.map((e=>e.dataIndex)),i=e.map((e=>e.dataIndex));(0,X.isEqual)(a,i)||((e,t)=>{qn(n,t).children=e,m?.([...n])})(gr(r),t)}},e.map((e=>T(e,"sub"))))),k={[`${i}__popper`]:!0,"column-filter__popper":!0,[`${i}--lg`]:"large"===s,[`${i}--sm`]:"small"===s},P=[`${i}-column-filter`,{selected:f}];return c?l().createElement(Ri(),{action:["click"],popupVisible:f,popup:l().createElement("div",{className:"column-filter--wrap",style:{maxHeight:"calc(100vh - 10px)"}},l().createElement("div",{className:"reset"},l().createElement(fe,{type:"text",size:"small",onClick:()=>{const e=t=>t.map((t=>{const r=qn(n,t.dataIndex)||se(t);return t.children&&(r.children=e(t.children)),Object.assign(r,{hidden:t.hidden,fixed:t.fixed,width:t.width})}));m?.(e(a.current.originColumns))}},p("qm.table.columnFilter.reset"))),l().createElement("div",{className:"left"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".left-handle",tag:"ul",animation:200,list:y,setList:e=>{const t=e.map((e=>e.dataIndex)),n=y.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...gr(e),...v,...b])}},y.map((e=>T(e,"left"))))),l().createElement("div",{className:"divider"}),l().createElement("div",{className:"main"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:v,setList:e=>{const t=e.map((e=>e.dataIndex)),n=v.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...y,...gr(e),...b])}},v.map((e=>T(e,"main"))))),l().createElement("div",{className:"divider"}),l().createElement("div",{className:"right"},l().createElement(ua.ReactSortable,{itemKey:"dataIndex",handle:".right-handle",tag:"ul",animation:200,list:b,setList:e=>{const t=e.map((e=>e.dataIndex)),n=b.map((e=>e.dataIndex));(0,X.isEqual)(t,n)||N([...y,...v,...gr(e)])}},b.map((e=>T(e,"right")))))),popupClassName:xe()(k),popupStyle:{minWidth:160},onPopupVisibleChange:e=>{g(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},l().createElement("span",{className:xe()(P),title:u?p("qm.table.columnFilter.text"):void 0},l().createElement("i",{className:"svgicon icon"},l().createElement(we.SettingOutlined,null)),!u&&l().createElement("span",null,p("qm.table.columnFilter.text")))):null}));Oo.displayName="ColumnFilter";const ko=Oo,Po=(e,t,n)=>{let r;for(let a=0;a<e.length;a++){const i=e[a];if(i.children)if(i.children.some((e=>e[n]===t)))r=i[n];else{const e=Po(i.children,t,n);e&&(r=e)}}return r},Lo=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&Lo(e.children,t),t(e)||e.children&&e.children.length))),Ao=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Ao(e.children,t)),t(e)&&n.push(e)})),n},_o=(e,t)=>{let n=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(n=_o(e[r].children,t)),n)return n;if(t(e[r]))return e[r]}return n},Fo=(e,t,n,r)=>e.map((e=>e[n]===t?{...e,children:r}:e.children?{...e,children:Fo(e.children,t,n,r)}:e)),Do=(e,t)=>{const n=[];return e.forEach((e=>{e.children&&n.push(...Do(e.children,t)),Array.isArray(e.children)&&e.children.length&&n.push(e[t])})),n},Ho=(e,t,n)=>{for(let r=0;r<e.length;r++){if(e[r][n]===t)return[t];if(Array.isArray(e[r].children)){const a=Ho(e[r].children,t,n);if(a)return[e[r][n],a].flat()}}},qo=(e,t)=>{const n=e.children?.map((e=>e[t]))||[];return Array.isArray(e.children)&&e.children.forEach((e=>n.push(...qo(e,t)))),n},$o=l().forwardRef(((e,t)=>{const{className:n,style:r,filterable:a=!0,multiple:i,draggable:o,dataSource:s,fetch:c,autoFocus:d,asyncLoad:u,checkStrictly:m,checkStrategy:p="SHOW_CHILD",placeholder:h,fieldsDefine:g,value:y,height:b,defaultSelectedKeys:v=[],defaultExpandedKeys:x=[],defaultExpandAll:E=!0,showSearchBar:w=!0,showCollapse:C=!0,onSelectChange:S,onCheckChange:N,onDragStart:I,onDragChange:T,onExpand:O}=e,{$size:k}=Y(e),{t:P}=U(),L=g?.valueKey||"value",A=g?.textKey||"text",_=l().useRef(null),F=l().useRef(null),D=xt(_),[H,q]=Ja(b,{value:b}),[$,M]=l().useState(!1),K=Et((()=>{q(_.current.offsetHeight-re.current.offsetHeight-10)}),5);f((()=>{b||K()}),[D.height]);const[z,j]=l().useState([]),[V,W]=l().useState({}),[B,G]=l().useState([]),[Q,Z]=l().useState([]),[J,ee]=l().useState(""),[te,ne]=l().useState(E),re=l().useRef(null),ae=l().useRef([]),le=l().useRef([]);l().useEffect((()=>{Array.isArray(s)&&(oe(s),G(se(s)),W({}))}),[s]),l().useEffect((()=>{ue(),d&&F.current?.focus()}),[]),He((()=>{ue()}),[c?.params]),He((()=>{Z(de())}),[V]),l().useImperativeHandle(t,(()=>({INSERT_RECORD:(e,t)=>{const n=Array.isArray(t)?t:[t],r=_o(z,(t=>e===t[L]));r&&(Array.isArray(r.children)?r.children.push(...n):r.children=[...n],oe([...z]))},REMOVE_RECORD:e=>{const t=Po(z,e,L);if(void 0===t&&z.find((t=>t[L]===e)))oe(z.filter((t=>t[L]!==e)));else{const n=_o(z,(e=>t===e[L]));if(!n)return;const r=n.children?.findIndex((t=>e===t[L]));r>=0&&(n.children.splice(r,1),oe([...z]))}},UPDATE_RECORD:(e,t)=>{const n=_o(z,(t=>e===t[L]));n&&((0,X.merge)(n,t),oe([...z]))}})));const oe=e=>{j(e),ae.current=e,le.current=Do(e,L)},se=e=>{if(i)return v;const t=Ao(e,(e=>v.includes(e[A])));return 1===t.length?[t[0][L]]:[]},ce=e=>Ho(z,e,L)?.slice(0,-1)||[],de=()=>{if(E)return le.current;const e=[];return B.forEach((t=>{if(i){if("SHOW_ALL"===p&&!le.current.includes(t)&&e.push(...ce(t)),"SHOW_CHILD"===p&&e.push(...ce(t)),"SHOW_PARENT"===p){const n=$r(z,t);if(n){const r=ce(t),a=qo(n,L);e.push(...r,...[t,...a].filter((e=>le.current.includes(e))))}}}else e.push(...ce(t))})),[...new Set([...x,...e])]},ue=async()=>{if(!c)return;const{api:e,params:t,dataKey:n,afterFetch:r,callback:a}=c;try{M(!0);const i=await e(t);if(200===i.code){let e=Array.isArray(i.data)?i.data:(0,X.get)(i.data,n)??[];e="function"==typeof r?await r(e):e,oe(e),G(se(e)),W({}),a?.(e)}}catch(e){}M(!1)},me=e=>`${e}|${Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,pe=Ee("search-tree"),he={[pe]:!0,[`${pe}--lg`]:"large"===k,[`${pe}--sm`]:"small"===k};return l().createElement("div",{ref:_,className:xe()(he,n),style:r},l().createElement("div",{ref:re,className:"topper",style:{display:w||C?"":"none"}},w&&l().createElement(R.Input,{ref:F,value:J,size:k,placeholder:h||P("qm.form.inputPlaceholder"),suffix:l().createElement(we.SearchOutlined,null),allowClear:!0,onChange:e=>(e=>{if(!a)return;const t=Lo(ae.current,(t=>{if(!e)return!0;const n=t[A]||"";return-1!==me(n).indexOf(e)}));ee(e),j(t),Z(E||e?Do(t,L):de())})(e.target.value)}),C&&l().createElement("a",{className:"trigger",onClick:()=>{ne(!te),Z(te?[]:le.current)}},te?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)," ",P(te?"qm.form.collect":"qm.form.spread"))),l().createElement(mt,{spinning:$},l().createElement(R.Tree,{fieldNames:{title:A,key:L,children:"children"},multiple:i,draggable:o,blockNode:o,checkable:i,selectable:!i,height:H,disabled:e.disabled,checkStrictly:m,selectedKeys:y??B,checkedKeys:y??B,expandedKeys:Q,treeData:z,loadData:u?async({key:e,children:t})=>{if(!c||t)return;const{api:n,params:r,dataKey:a,formatter:i=e=>e,afterFetch:l}=c;try{const t=await n(i({...r,[L]:e}));if(200===t.code){let n=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[];n="function"==typeof l?await l(n):n;const r=Fo(ae.current,e,L,n);oe(r)}}catch(e){}}:void 0,titleRender:e.titleRender,filterTreeNode:e=>{if(!J)return!1;const t=e[A]||"";return-1!==me(t).indexOf(J)},onDragStart:I,onDragEnter:e=>{Z(e.expandedKeys)},onDrop:e=>{const t=e.node.key,n=e.dragNode.key,r=e.node.pos.split("-"),a=e.dropPosition-Number(r[r.length-1]),i=(e,t,n)=>{for(let r=0;r<e.length;r++){if(e[r][L]===t)return n(e[r],r,e);e[r].children&&i(e[r].children,t,n)}},l=[...z];let o;if(i(l,n,((e,t,n)=>{n.splice(t,1),o=e})),e.dropToGap)if((e.node.children||[]).length>0&&e.node.expanded&&1===a)i(l,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));else{let e,n=[];i(l,t,((t,r,a)=>{n=a,e=r})),-1===a?n.splice(e,0,o):n.splice(e+1,0,o)}else i(l,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));oe(l)},onDragEnd:e=>{T?.(e,z)},onExpand:(e,t)=>{ie(e)&&ne(!1),le.current.every((t=>e.includes(t)))&&ne(!0),Z(e),O?.(e,t)},onSelect:e=>{G(e);const t=Ao(ae.current,(t=>e.includes((0,X.get)(t,L))));S?.(i?t:t[0])},onCheck:e=>{m&&(e=e.checked),G(e),m||("SHOW_CHILD"===p&&(e=e.filter((e=>!le.current.includes(e)))),"SHOW_PARENT"===p&&(e=e.filter(((e,t,n)=>!n.includes(Po(z,e,L))))));const t=Ao(ae.current,(t=>e.includes((0,X.get)(t,L))));N?.(i?t:t[0])}})))}));$o.displayName="QmSearchTree";const Mo=$o,Ko=()=>l().createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"filter",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"}));function zo(){return zo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},zo.apply(null,arguments)}const jo=e=>{const{column:t,filters:n}=e,{$size:r,prefixCls:a,setFilters:i,clearSuperFilters:o}=l().useContext(Aa),{t:s}=U(),c=l().useRef(null),d=l().useRef(null),u=l().useRef(null),[m,p]=l().useState(!1),[h,f]=l().useState(!1),[g,y]=l().useState({}),b=l().useMemo((()=>{const{dataIndex:e,filter:n}=t;return`${e}|${n.type}`}),[t]),v=l().useMemo((()=>{let e=!1;for(const t in n[b])if(!ie(n[b][t])||h){e=!0;break}return e}),[b,n,h]);l().useLayoutEffect((()=>{m&&setTimeout((()=>x()),20)}),[m]),l().useEffect((()=>{(0,X.isEqual)(g[b],n[b])||y({[b]:n[b]||{}}),f(""===n[b]?.["=="])}),[n]);const x=()=>{switch(t.filter.type){case"text":c.current.focus();break;case"number":d.current.focus();break;case"textarea":u.current.focus()}},E=e=>{e&&y(e),o(),i((e=>{for(const t in e){for(const n in e[t])if(ie(e[t][n])){if(["text","textarea"].includes(t.split("|")[1])&&null!==e[t][n])continue;delete e[t][n]}Object.keys(e[t]).length||delete e[t]}return e})({...n,...g,...e})),p(!1)},w={text:e=>l().createElement(l().Fragment,null,l().createElement(R.Input,{ref:c,size:r,placeholder:s("qm.table.filter.searchText",{text:or(e.title)}),style:{width:"180px"},value:g[b]?.like??"",disabled:h,onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{like:t||null}})))},onKeyDown:e=>{13===e.keyCode&&E()}}),l().createElement("div",{style:{marginTop:8}},l().createElement(R.Checkbox,{checked:h,onChange:e=>{const{checked:t}=e.target,n=t?"":null;y((e=>Object.assign({},e,{[b]:{"==":n,like:null}}))),f(t)}},s("qm.table.filter.nullValue")))),textarea:e=>l().createElement(l().Fragment,null,l().createElement(R.Input.TextArea,{ref:u,size:r,placeholder:s("qm.table.filter.searchAreaText",{text:or(e.title)}),style:{width:"220px"},value:g[b]?.likes??"",disabled:h,onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{likes:t||null}})))},onKeyDown:e=>{13!==e.keyCode||e.shiftKey||(e.preventDefault(),E())}}),l().createElement("div",{style:{marginTop:8}},l().createElement(R.Checkbox,{checked:h,onChange:e=>{const{checked:t}=e.target,n=t?"":null;y((e=>Object.assign({},e,{[b]:{"==":n,like:null}}))),f(t)}},s("qm.table.filter.nullValue")))),number:e=>{const t=e=>({value:g[b]?.[e]??"",size:r,onChange:t=>{t>Number.MAX_SAFE_INTEGER||t<Number.MIN_SAFE_INTEGER||y((n=>Object.assign({},n,{[b]:Object.assign({},n[b],{[e]:t})})))},onKeyDown:e=>{13===e.keyCode&&E()}});return l().createElement("ul",null,l().createElement("li",null,l().createElement("span",null,"> "),l().createElement(R.InputNumber,zo({ref:d},t(">"),{placeholder:s("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"< "),l().createElement(R.InputNumber,zo({},t("<"),{placeholder:s("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"= "),l().createElement(R.InputNumber,zo({},t("=="),{placeholder:s("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"!="),l().createElement(R.InputNumber,zo({},t("!="),{placeholder:s("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},date:e=>{const t=e=>({value:rr(g[b]?.[e],$a),format:$a,size:r,onChange:t=>{y((n=>Object.assign({},n,{[b]:Object.assign({},n[b],{[e]:ar(t,$a)})})))},onKeyDown:e=>{13===e.keyCode&&E()}});return l().createElement("ul",null,l().createElement("li",null,l().createElement("span",null,"> "),l().createElement(_,zo({},t(">"),{placeholder:s("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"< "),l().createElement(_,zo({},t("<"),{placeholder:s("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"= "),l().createElement(_,zo({},t("=="),{placeholder:s("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),l().createElement("li",null,l().createElement("span",null,"!="),l().createElement(_,zo({},t("!="),{placeholder:s("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},radio:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("ul",null,l().createElement(R.Radio.Group,{style:{width:"100%"},value:g[b]?.["=="],onChange:e=>{const{value:t}=e.target;y((e=>Object.assign({},e,{[b]:{"==":t}})))}},r.map((e=>l().createElement("li",{key:e.value},l().createElement(R.Radio,{value:e.value,disabled:e.disabled},e.text))))))},checkbox:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("ul",null,l().createElement(R.Checkbox.Group,{style:{width:"100%"},value:g[b]?.in,onChange:e=>{y((t=>Object.assign({},t,{[b]:{in:e}})))}},r.map((e=>l().createElement("li",{key:e.value},l().createElement(R.Checkbox,{value:e.value,disabled:e.disabled},e.text))))))},tree:e=>{const{filter:t,dictItems:n=[]}=e,r=t.items||n;return l().createElement("div",{style:{height:200,...t.style}},l().createElement(Mo,{multiple:!0,value:g[b]?.in||[],dataSource:r,onCheckChange:e=>{const t=e.map((e=>e.value));y((e=>Object.assign({},e,{[b]:{in:t}})))}}))}},C={"head-filter__popper":!0,[`${a}--lg`]:"large"===r,[`${a}--sm`]:"small"===r},S=["cell--filter",{selected:m,actived:v}];return l().createElement(Ri(),{action:["click"],popupVisible:m,popup:(()=>{const e=t.filter.type,n=w[e];return n?l().createElement("div",{className:"head-filter--wrap",onClick:e=>e.stopPropagation()},l().createElement("div",null,n(t)),l().createElement(R.Space,{style:{width:"100%",marginTop:8,justifyContent:"flex-end"}},l().createElement(fe,{size:r,onClick:()=>(E({[b]:{}}),void f(!1))},s("qm.table.filter.reset")),l().createElement(fe,{type:"primary",size:r,onClick:()=>E()},s("qm.table.filter.search")))):(me("Table","表头筛选的类型 `type` 配置不正确"),null)})(),popupClassName:xe()(C),popupStyle:{minWidth:150},onPopupVisibleChange:e=>{p(e)},builtinPlacements:za,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},l().createElement("div",{className:xe()(S),title:s("qm.table.filter.text"),onClick:e=>e.stopPropagation()},l().createElement("span",{className:"svgicon icon"},l().createElement(Ko,null))))},Vo=e=>{const{column:t}=e,{tableRef:n,bordered:r}=l().useContext(Aa),{columns:a,resizable:i,columnsChange:o=ee}=n.current.props,s=l().useMemo((()=>Mn(t)),[t]),c={resizable:!0,"is--line":i&&!r};return l().createElement("div",{className:xe()(c),onMouseDown:e=>{e.preventDefault();const t=e.target,{elementStore:r,scrollBarRef:i}=n.current,l=r.$resizableBar,c=t.offsetWidth/2,d=e.clientX,u=Gn(t,r.$table).left-i.current.scrollLeft+c;r.$table.classList.add("c--resize"),l.style.left=`${u}px`,l.style.display="block";const m=s.width||s.renderWidth;let p=m;return document.onmousemove=function(e){if("number"!=typeof m)return;const t=e.clientX-d,n=m+t;n<(s.minWidth||Qa.defaultColumnWidth)||(p=Math.floor(n),l.style.left=`${t+u}px`)},document.onmouseup=function(){r.$table.classList.remove("c--resize"),l.style.display="none",this.onmousemove=null,this.onmouseup=null,"number"==typeof p&&(qn(a,s.dataIndex).width=p,o([...a]))},!1}})},Wo=e=>{const{selectionKeys:t}=e,{tableRef:n,getRowKey:r,fetchParams:a,createTableList:i,setSelectionKeysEffect:o,setInvalidRowKeys:s,setSpinning:c,isFetch:d,isWebPagination:u}=l().useContext(Aa),{rowSelection:m}=n.current.props,{fetchAllRowKeys:p,selectAllOnCurrentPage:h,filterable:f,onSelectAll:g}=m,{t:y}=U(),b=l().useRef([]),v=l().useMemo((()=>d&&!!p),[d,p]),x=l().useMemo((()=>!v&&!!h),[v,h]),E=l().useMemo((()=>(f??!0)&&!x),[f,x]),w=()=>{const{selectionRows:e}=n.current,{disabled:t}=m;return(t?e.filter((e=>!t(e))):e).map((e=>r(e,e.index)))},C=(()=>{const{recordsMap:e,allRowKeys:t}=n.current,{disabled:a}=m;if(v)return b.current.length?b.current:(0,X.union)(t,w());if(!x)return a?t.filter((t=>!a(e.get(t)))):t;const l=a?i().filter((e=>!a(e))).map((e=>r(e,e.index))):i().map((e=>r(e,e.index)));return(0,X.union)(l,w())})(),S=t.filter((e=>!C.includes(e))),N=t.length-S.length,I=N>0&&N<C.length,T=!!N&&N===C.length;s(S);const O=async()=>{const e=p;let t=[];c(!0);try{const n=await e.api(a);if(200===n.code){t=Array.isArray(n.data)?n.data:(0,X.get)(n.data,e.dataKey)??[];const{disabled:a}=m;a&&(t=(0,X.xor)(t,i().filter((e=>a(e))).map((e=>r(e,e.index))))),b.current=t}}catch(e){}return c(!1),t},k=async e=>{let t=[];t=v?e?await O():[]:e?C.slice(0):[],t=[...new Set([...t,...S])],o(t),g?.(e,t)};return l().createElement("div",{className:"cell--selection"},l().createElement(R.Checkbox,{checked:T,indeterminate:I,disabled:!C.length,onChange:e=>k(e.target.checked)}),E&&l().createElement(R.Dropdown,{overlayClassName:"all-selection__popper",dropdownRender:()=>(()=>{const e=[{key:1,label:y("qm.table.selection.all"),onClick:()=>{k(!0)}},{key:2,label:y("qm.table.selection.invert"),onClick:()=>(async()=>{let e=[];e=v?(0,X.xor)(t,await O()):(0,X.xor)(t,C),e=[...new Set([...e,...S])],o(e)})()},{key:3,label:y("qm.table.selection.clear"),onClick:()=>{k(!1)}}];return l().createElement(R.Menu,{items:e})})()},l().createElement(we.DownOutlined,{className:"svgicon icon"})),x&&l().createElement(R.Tooltip,{placement:"top",title:y("qm.table.selection.currentPage")},l().createElement(we.InfoCircleOutlined,{className:"info"})))},Bo=e=>{const{style:t}=e,{tableRef:n,setRowExpandedKeys:r}=l().useContext(Aa),{expandable:a}=n.current.props,[i,o]=l().useState(a?.defaultExpandAllRows||!1);He((()=>{r(i?[...n.current.allParentRowKeys]:[])}),[i]);const s=Ee("expand"),c={[`${s}--icon`]:!0,expanded:i,collapsed:!i};return l().createElement("span",{className:xe()(c),title:"",onClick:e=>{e.stopPropagation(),o(!i)},style:t})},Uo=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-up",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"})),Go=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-down",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().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"})),Yo=e=>{const{tableColumns:t}=e,{tableRef:n,prefixCls:r,layout:a,flattenColumns:i,sorter:o,filters:s,superFilters:c,selectionKeys:d,isFetch:u,isGroupSubtotal:m,treeExpandIndex:p,tableChange:h,setSorter:f,setElementStore:g,resetTableScroll:y,getStickyLeft:b,getStickyRight:v,createGroupData:x,createTableFullData:E}=l().useContext(Aa),{ellipsis:w,resizable:C,multipleSort:S,rowSelection:N,expandable:I}=n.current.props,[T,O]=Qa.sortDirections,{tableOriginData:k}=n.current,{t:P}=U(),L=l().useRef(null),A=l().useMemo((()=>k.some((e=>Array.isArray(e.children)))),[k]),_=l().useMemo((()=>!u),[u]),F=l().useMemo((()=>!u),[u]),D=l().useMemo((()=>!I?.hideExpandAll),[I]),H=l().useMemo((()=>!(!N||(u?!N.selectAllOnCurrentPage&&!N.fetchAllRowKeys:N.hideSelectAll))),[u,N]);He((()=>{j(),h(),y()}),[o]),He((()=>{G(),h(),y()}),[s]),He((()=>{G(),h(),y()}),[c]),l().useEffect((()=>{!ie(o)&&re((()=>j())),!ie(s)&&re((()=>G()))}),[]),l().useLayoutEffect((()=>{q()}),[]);const q=()=>{g("$header",L.current)},$=e=>{const{dataIndex:t,type:r,sorter:a,title:i,description:s}=e;if(t===Qa.selectionColumn&&"checkbox"===r){if("checkbox"===r)return l().createElement("div",{className:"cell"},H?l().createElement(Wo,{selectionKeys:d}):P("qm.table.config.selectionText"));if("radio"===r)return l().createElement("div",{className:"cell"},i)}const c=[];return c.push(l().createElement("div",{key:0,className:"cell",title:or(i)},n.current.isTreeTable&&t===p&&D?l().createElement(Bo,null):null,t===Qa.expandableColumn&&D?l().createElement(Bo,null):i)),s&&c.push(l().createElement(R.Tooltip,{key:1,placement:"top",title:s},l().createElement(we.InfoCircleOutlined,{className:"tip"}))),a&&c.push(M(o[t])),c},M=e=>{const t=["svgicon cell--sorter__asc",{actived:e===T}],n=["svgicon cell--sorter__desc",{actived:e===O}];return l().createElement("div",{key:2,className:"cell--sorter",title:P("qm.table.sorter.text")},l().createElement("span",{className:xe()(t)},l().createElement(Uo,null)),l().createElement("span",{className:xe()(n)},l().createElement(Go,null)))},K=e=>l().createElement(jo,{column:e,filters:s}),z=(e,t)=>{const{sorter:n,dataIndex:r}=t;if(n){const e=o[r],t=e?e===O?null:O:T;S?(delete o[r],f(Object.assign({},o,{[r]:t}))):f(Object.assign({},{[r]:t}))}},j=()=>{_&&V()},V=e=>{const t=(0,X.pickBy)(o,(e=>null!==e));B(t),e||Object.keys(t).length||B({index:T})},W=(e,t)=>Number.isNaN(e-t)?e.toString().localeCompare(t.toString()):e-t,B=e=>{const{tableFullData:t}=n.current,r=((e,t)=>e.sort(((e,n)=>{for(const r in t){const a=i.find((e=>e.dataIndex===r)),l=t[r],o=Qn(e,r),s=Qn(n,r),c="function"!=typeof a?.sorter?W(o,s):a.sorter(e,n);if(0!==c)return"ascend"===l?c:-c}return 0})).slice(0))(m?x(sr(t)):t,e);E(r)},G=()=>{F&&Y()},Y=()=>{const e=c.length?cr(c):cr(s),t=""!==e?m?x(An(sr(k),e,A)):An(k,e,A):k;E(t),V(!0)},Q=Wn(t),{tableBodyWidth:Z}=a;return l().createElement("div",{ref:L,className:`${r}--header-wrapper`},l().createElement("table",{className:`${r}--header`,cellSpacing:"0",cellPadding:"0",style:{width:Z?`${Z}px`:""}},l().createElement("colgroup",null,i.map((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;return l().createElement("col",{key:t,style:{width:`${n||r}px`,minWidth:`${n||r}px`}})}))),l().createElement("thead",null,(e=>e.map(((e,t)=>l().createElement("tr",{key:t,className:"header--row"},e.map(((t,r)=>((e,t,r)=>{const{dataIndex:a,colSpan:i,rowSpan:s,fixed:c,align:d,theadAlign:u,theadClassName:m="",sorter:p,filter:h,required:f,headRender:g}=e;if(0===i)return null;const y=u||d,x=["header--column",{"col--ellipsis":e.ellipsis??w,"col--center":"center"===y,"col--right":"right"===y,"column--required":!!f,"column-has-sorter":p,"column-has-filter":h,"column--sort":!!o[a],"cell-fix-left":"left"===c,"cell-fix-right":"right"===c,"cell-fix-left-last":"left"===c&&!r[t+(i??1)]?.fixed,"cell-fix-right-first":"right"===c&&!r[t-1]?.fixed,[m]:!!m}],E={left:"left"===c?`${b(a)}px`:"",right:"right"===c?`${v(a,"thead")}px`:""},S=C&&![Qa.expandableColumn,Qa.selectionColumn].includes(a);return l().createElement("th",{key:a,className:xe()(x),colSpan:i,rowSpan:s,style:{...E},onClick:t=>z(t,e)},l().createElement("div",{className:"cell--wrapper"},g?l().createElement("div",{className:"cell--text cell"},g(e,n.current.tableFullData)):l().createElement(l().Fragment,null,l().createElement("div",{className:"cell--text"},$(e)),h?K(e):null)),S&&l().createElement(Vo,{column:e}))})(t,r,e)))))))(Q))))},Xo=l().createContext([]),Qo=(e,t,n,r,a,i,l,o,s,c)=>{const{clientX:d,clientY:u}=e,{top:m,height:p}=e.target.getBoundingClientRect(),h=((a?.x||0)-d-12)/r,f=s.filter((e=>o[e]?.children?.length));let g=Zo(o,n.eventKey);if(u<m+p/2){const e=l.findIndex((e=>e===g.key)),t=l[e<=0?0:e-1];g=Zo(o,t)}const y=g.key,b=g,v=g.key;let x=0,E=0;if(!f.includes(y))for(let e=0;e<h&&es(g);e+=1)g=g.parent,E+=1;const w=t.data,C=g.node;let S=!0;return ts(g)&&0===g.level&&u<m+p/2&&i({dragNode:w,dropNode:C,dropPosition:-1})&&g.key===n.eventKey?x=-1:(b.children||[]).length&&f.includes(v)?i({dragNode:w,dropNode:C,dropPosition:0})?x=0:S=!1:0===E?h>-1.5?i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1:i({dragNode:w,dropNode:C,dropPosition:0})?x=c?1:0:i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1:i({dragNode:w,dropNode:C,dropPosition:1})?x=1:S=!1,{dropPosition:x,dropLevelOffset:E,dropTargetKey:g.key,dropTargetPos:g.pos,dragOverNodeKey:v,dropContainerKey:0===x?null:g.parent?.key||null,dropAllowed:S}},Zo=(e,t)=>e[t],Jo=e=>e.split("-"),es=e=>{if(e.parent){const t=Jo(e.pos);return Number(t[t.length-1])===e.parent.children.length-1}return!1},ts=e=>{const t=Jo(e.pos);return 0===Number(t[t.length-1])},ns=(e,{dragOverNodeKey:t,dropPosition:n,keyEntities:r})=>{const a=Zo(r,e);return{eventKey:e,pos:a?a.pos:"",dragOver:t===e&&0===n,dragOverGapTop:t===e&&-1===n,dragOverGapBottom:t===e&&1===n}},rs=({openDragSort:e})=>{const{tableRef:t,getRowKey:n,rowExpandedKeys:r,setRowExpandedKeys:a,createTableFullData:i,dataChange:o}=l().useContext(Aa),{tableFullData:s,allRowKeys:c,isTreeTable:d}=t.current,u=te,m=l().useRef(null),p=l().useRef(null),h=l().useRef(null),f=l().useRef(),[g,y]=l().useState({}),[b,v]=l().useState(null),[x,E]=l().useState([]),[w,C]=l().useState(0),[S,N]=l().useState({dropPosition:null,dropLevelOffset:null,dropContainerKey:null,dropTargetKey:null,dropTargetPos:null,dropAllowed:!0,dragOverNodeKey:null}),I=e=>{N((t=>Object.assign({},t,e)))};l().useLayoutEffect((()=>{e&&y((e=>{const t={},r=(e,a=null,i=0)=>{const l=[];return e.forEach(((e,o)=>{const s=n(e,e.index),c={index:o,key:s,level:i,node:e,parent:a,pos:(d=a?.pos||"0",u=o,`${d}-${u}`),nodes:[...a?.nodes||[],e]};var d,u;Array.isArray(e.children)&&(c.children=r(e.children,c,i+1)),t[s]=c,l.push(c)})),l};return r(e),t})(s))}),[s]),l().useEffect((()=>()=>{window.removeEventListener("dragend",O)}),[]);const T=()=>{I({dragOverNodeKey:null,dropPosition:null,dropLevelOffset:null,dropTargetKey:null,dropContainerKey:null,dropTargetPos:null,dropAllowed:!1})},R=()=>{null!==b&&(v(null),I({dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null})),p.current=null,h.current=null},O=e=>{k(e,null,!0),window.removeEventListener("dragend",O)},k=(e,t,n)=>{I({dragOverNodeKey:null}),R(),m.current=null,window.removeEventListener("dragend",O)};return{onNodeDragStart:(e,t)=>{const{eventKey:n}=t;m.current=t,p.current={x:e.clientX,y:e.clientY};const i=((e,t)=>{if(!e)return[];const n=e.slice(),r=n.indexOf(t);return r>=0&&n.splice(r,1),n})(r,n);v(n),E(((e,t)=>{const n=[];return function e(t=[]){t.forEach((({key:t,children:r})=>{n.push(t),e(r)}))}(Zo(t,e).children),n})(n,g)),C(2*Qa.treeTable.textIndent),a(i),window.addEventListener("dragend",O)},onNodeDragEnter:(e,t)=>{const{eventKey:n}=t;if(h.current!==n&&(h.current=n),!m.current)return void T();const{dropPosition:i,dropLevelOffset:l,dropTargetKey:o,dropContainerKey:s,dropTargetPos:y,dropAllowed:v,dragOverNodeKey:E}=Qo(e,m.current,t,w,p.current,u,c,g,r,!d);-1===x.indexOf(o)&&v?(f.current||(f.current={}),Object.keys(f.current).forEach((e=>{clearTimeout(f.current[e])})),m.current.eventKey!==n&&(e.persist(),f.current[n]=window.setTimeout((()=>{if(null===b)return;let e=[...r];const t=Zo(g,n);t&&t.children?.length&&(e=((e,t)=>{const n=(e||[]).slice();return-1===n.indexOf(t)&&n.push(t),n})(r,n)),a(e)}),800)),m.current.eventKey!==o||0!==l?I({dragOverNodeKey:E,dropPosition:i,dropLevelOffset:l,dropTargetKey:o,dropContainerKey:s,dropTargetPos:y,dropAllowed:v}):T()):T()},onNodeDragOver:(e,t)=>{if(!m.current)return;const{dropPosition:n,dropLevelOffset:a,dropTargetKey:i,dropContainerKey:l,dropAllowed:o,dropTargetPos:s,dragOverNodeKey:h}=Qo(e,m.current,t,w,p.current,u,c,g,r,!d);-1===x.indexOf(i)&&o&&(m.current.eventKey===i&&0===a?null===S.dropPosition&&null===S.dropLevelOffset&&null===S.dropTargetKey&&null===S.dropContainerKey&&null===S.dropTargetPos&&!1===S.dropAllowed&&null===S.dragOverNodeKey||T():n===S.dropPosition&&a===S.dropLevelOffset&&i===S.dropTargetKey&&l===S.dropContainerKey&&s===S.dropTargetPos&&o===S.dropAllowed&&h===S.dragOverNodeKey||I({dropPosition:n,dropLevelOffset:a,dropTargetKey:i,dropContainerKey:l,dropTargetPos:s,dropAllowed:o,dragOverNodeKey:h}))},onNodeDragLeave:(e,t)=>{h.current!==t.eventKey||e.currentTarget.contains(e.relatedTarget)||(T(),h.current=null)},onNodeDragEnd:k,onNodeDrop:(e,t,r=!1)=>{const{dropPosition:a,dropTargetKey:l,dropTargetPos:c,dropAllowed:d,dragOverNodeKey:u}=S;if(!d)return;if(I({dragOverNodeKey:null}),R(),null===l)return;const p={...ns(l,{dropPosition:a,dragOverNodeKey:u,keyEntities:g}),data:Zo(g,l).node};-1!==x.indexOf(l)&&me("Table Draggable","无法拖放到 `dragNode` 的子节点");const h=Jo(c),f={event:e,node:p,dragNode:m.current,dragNodesKeys:[m.current.eventKey].concat(x),dropToGap:0!==a,dropPosition:a+Number(h[h.length-1])};r||(e=>{const t=e.node.eventKey,r=e.dragNode.eventKey,a=e.node.pos.split("-"),l=e.dropPosition-Number(a[a.length-1]),c=(e,t,r)=>{for(let a=0;a<e.length;a++){if(n(e[a],e[a].index)===t)return r(e[a],a,e);e[a].children&&c(e[a].children,t,r)}},d=[...s];let u;if(c(d,r,((e,t,n)=>{n.splice(t,1),u=e})),e.dropToGap){let e,n=[];c(d,t,((t,r,a)=>{n=a,e=r})),-1===l?n.splice(e,0,u):n.splice(e+1,0,u)}else c(d,t,(e=>{e.children=e.children||[],e.children.unshift(u)}));i(d),o()})(f),m.current=null},indent:w,dropOptions:S}};function as(){const[,e]=i.useReducer((e=>e+1),0);return e}const is=l().forwardRef(((e,t)=>{const{rowKey:n,rowIndex:r,row:a,className:i,style:o,indent:s,filter:c,dropOption:d,onNodeDragStart:u,onNodeDragEnter:m,onNodeDragOver:p,onNodeDragLeave:h,onNodeDragEnd:f,onNodeDrop:g}=e,y=l().useRef({eventKey:n,data:a,props:e}),b=l().useRef(!1),[v,x]=l().useState(!1),{dropPosition:E,dropLevelOffset:w,dragOverNodeKey:C,dropTargetKey:S,dropContainerKey:N}=d,I=C===n&&0===E,T=C===n&&-1===E,R=C===n&&1===E,O=a._level||0,k={};switch(E){case-1:Object.assign(k,{top:0,left:-w*s+O*s});break;case 1:Object.assign(k,{bottom:0,left:-w*s+O*s});break;case 0:Object.assign(k,{bottom:0,left:s+O*s})}const P={"body--row-draggable":!0,"body--row-dragging":v,"drop-target":S===n,"drop-container":N===n,"drag-over":I,"drag-over-gap-top":T,"drag-over-gap-bottom":R};return l().createElement("tr",{ref:t,"data-row-key":n,"data-row-index":r,className:xe()(i,P),style:o,draggable:!0,onMouseDown:e=>{var t;c&&(t=e.target.matches(c),b.current=t)},onDragStart:e=>{if(e.stopPropagation(),b.current)return e.preventDefault();x(!0),u(e,y.current);try{e.dataTransfer.setData("text/plain","")}catch(e){}},onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),m(e,y.current)},onDragOver:e=>{e.preventDefault(),e.stopPropagation(),p(e,y.current)},onDragLeave:e=>{e.stopPropagation(),h(e,y.current)},onDrop:e=>{e.preventDefault(),e.stopPropagation(),x(!1),g(e,y.current)},onDragEnd:e=>{e.stopPropagation(),x(!1),f(e,y.current)}},e.children,C===n&&null!==E&&null!==w&&l().createElement("td",{className:"drop-indicator",style:k}))}));is.displayName="DraggableTr";const ls=is,os=e=>{const{selectionKeys:t,column:n,record:r,rowKey:a}=e,{tableRef:i}=l().useContext(Aa),{rowSelection:o}=i.current.props,s=l().useMemo((()=>n.type||""),[n.type]),c=e=>{const n=o.checkStrictly??!0;if(!i.current.isTreeTable||n)return!1;const r=zn(i.current.deriveRowKeys,e);return((e,t)=>{const n=new Set(t);let r=!1,a=!1;for(const t of e)if(n.has(t)?r=!0:a=!0,r&&a)break;return r&&a})(hr(r?.children??[]),t)};return"radio"===s?(()=>{const e=o.disabled,n=e?.(r),i=!n&&t[0]===a;return l().createElement(R.Radio,{checked:i,disabled:n})})():(()=>{const e=o.disabled,n=e?.(r),i=!!t.includes(a);return l().createElement(R.Checkbox,{checked:i,indeterminate:c(a),disabled:n})})()},ss=e=>{const{record:t,rowKey:n,style:r}=e,{tableRef:a,rowExpandedKeys:i,setRowExpandedKeys:o}=l().useContext(Aa),{expandable:s={}}=a.current.props,[c]=l().useState("function"==typeof s.rowExpandable&&!s.rowExpandable(t)),d=l().useMemo((()=>i.includes(n)),[i,n]);He((()=>{s.onExpand?.(d,t)}),[d]);const u=Ee("expand"),m={[`${u}--icon`]:!0,expanded:d,collapsed:!d,disabled:c};return l().createElement("span",{className:xe()(m),title:"",onClick:e=>{if(e.stopPropagation(),c)return;const t=d?i.filter((e=>e!==n)):[...i,n];o(t)},style:r})},cs=l().forwardRef(((e,t)=>{const{size:n,defaultValue:r,value:a,min:i,max:o,prefix:s,suffix:c,placeholder:d,maxLength:u,precision:m,stringMode:p,allowClear:h,readOnly:f,disabled:g,formatter:y=e=>e.toString(),parser:b=e=>e,onFocus:v}=e,x=e=>{let t=e.toString();return"."!==t.charAt(t.length-1)&&"-"!==t||(t=t.slice(0,-1)),t&&Number(t)>o&&(t=o.toString()),t&&Number(t)<i&&(t=i.toString()),m>=0&&""!==t&&(t=new(Ca())(t).toFixed(m)),t},E=void 0!==a,[w,C]=l().useState(r??""),S=y(E?a:w),N=b(S);return He((()=>{e.onChange?.(N)}),[w]),l().createElement(R.Input,{ref:t,size:n,value:S,maxLength:u,prefix:s,suffix:c,placeholder:d,allowClear:h,readOnly:f,disabled:g,onChange:t=>{const n=b(t.target.value.replace(/\s+/g,""));let r=/^-?\d*(\.\d*)?$/.test(n)||""===n||"-"===n;if(0===m&&n.includes(".")&&(r=!1),i>=0&&n.startsWith("-")&&(r=!1),r){if(!p&&(Number(n)>Number.MAX_SAFE_INTEGER||Number(n)<Number.MIN_SAFE_INTEGER))return;(t=>{E?e.onChange?.(t):C(t)})(n)}},onFocus:v,onBlur:()=>{const t=x(N);e.onBlur?.(t,N)},onKeyUp:t=>{13===t.keyCode&&e.onEnter?.(x(N),N)}})}));cs.displayName="InputNumber";const ds=cs,us=e=>{const{multiple:t,tree:n={},defaultSelectedKeys:r,className:a,style:i,onClose:o}=e,{$size:s}=Y(e),{t:c}=U(),[d,u]=l().useState(),[m]=l().useState(n.fetch?.params),p=Ee("tree-helper"),h={[`${p}--wrapper`]:!0},f=n.fetch?{...oe(n.fetch,["params","valueKey","textKey"]),params:m}:void 0;return l().createElement("div",{className:xe()(h,a),style:i},l().createElement(Mo,{multiple:t,fetch:f,fieldsDefine:{valueKey:n.fetch?.valueKey,textKey:n.fetch?.textKey},autoFocus:!0,asyncLoad:n.asyncLoad,checkStrictly:n.checkStrictly,checkStrategy:n.checkStrategy,defaultSelectedKeys:r,defaultExpandAll:n.defaultExpandAll,onSelectChange:e=>u(e),onCheckChange:e=>u(e)}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[s]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>o(null),style:{marginRight:8}},c("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!d,onClick:()=>o(d)},c("qm.dialog.confirm"))))};us.displayName="TreeHelper";const ms=us;function ps(){return ps=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ps.apply(null,arguments)}const{Search:hs}=R.Input,fs=l().forwardRef(((e,t)=>{const{column:n,record:r,rowKey:a,columnKey:i}=e,{tableRef:o,tableBodyRef:s,$size:c,flattenColumns:d,updateTableFlatData:u,doFieldValidate:m,dataChange:p}=l().useContext(Aa),h=l().useContext(Xo),{t:f}=U(),g=as(),{store:y,fieldAuth:b}=o.current,v=n.editRender?.(r,n)||{},x=l().useRef(null),E=l().useRef(null),w=l().useRef(null),C=l().useRef(null),S=l().useRef(null),N=l().useRef(!1),I=l().useRef({}),T=l().useRef({}),O=l().useRef([]),[k,P]=l().useState(!1),[L,A]=l().useState(!1),[F,D]=l().useState(v.items||[]),[H,$]=l().useState(),M=(v.editable||(0,X.isEqual)(h,[a,i]))&&!v.disabled&&!b[i]?.disabled,K=`${a}|${i}`,z=2===h.length?`${h[0]}|${h[1]}`:"",j=![...y.state.required,...y.state.validate].some((({x:e,y:t})=>e===a&&t===i)),V=y.state.required.find((({x:e,y:t})=>e===a&&t===i))?.text||"",W=y.state.validate.find((({x:e,y:t})=>e===a&&t===i))?.text||"",B=y.state.edited.some((({x:e,y:t})=>e===a&&t===i)),G=M||!j||k||L,Y=!!v.helper?.combinedDataIndex&&("search-helper"===v.type||"tree-helper"===v.type),Q=v.type?.endsWith("multiple");l().useLayoutEffect((()=>{G&&z===K&&ee()}),[h]),l().useLayoutEffect((()=>{const{items:e}=v;Q&&e&&J(e.map((e=>({[T.current.valueKey]:e.value,[T.current.textKey]:e.text}))))}),[]);const Z=()=>{u(),p()},J=e=>{O.current=e},ee=()=>{const{type:e}=v;switch(e){case"text":E.current?.focus();break;case"number":w.current?.select();break;case"search-helper":C.current?.focus();break;case"tree-helper":S.current?.focus()}},ne=()=>{const{type:e}=v;switch(e){case"text":E.current?.blur();break;case"number":w.current?.blur();break;case"search-helper":C.current?.blur();break;case"tree-helper":S.current?.blur()}};l().useImperativeHandle(t,(()=>({focus:ee,blur:ne,isEditable:()=>!v.disabled,isOpening:()=>k})));const ae=(e,t,n)=>{const{cornerSign:r=!0}=v.extra||{};y.addToUpdated(e),r&&y.addToEdited({x:t,y:n})},ie=e=>e?(e=>/^[+-]?\d+(\.\d+)?[eE][+-]?\d+$/.test(e.toString()))(Number(e))?e:Number(e):"",le={text:(e,t,n)=>{const{dataIndex:r}=t,{type:o,extra:s={},rules:d=[],onInput:u,onChange:p,onEnter:h,onBlur:y}=v,b=Qn(e,r),x=Object.assign({},{minRows:1,maxRows:4},s.autoSize),w=n?{rows:x.minRows,autoSize:x}:null,C=s.password?R.Input.Password:n?R.Input.TextArea:R.Input;return l().createElement(C,ps({ref:E,size:c,value:b,maxLength:s.maxLength,showCount:s.showCount},w,{autoComplete:s.password?"new-password":"off",placeholder:s.placeholder??f("qm.table.editable.inputPlaceholder"),allowClear:s.allowClear,readOnly:s.readOnly,disabled:s.disabled,suffix:s.suffix,onChange:n=>{const l=n.target.value??"";Zn(e,r,l),m(d,l,a,i,or(t.title)),g(),u?.({[K]:l}),N.current=!0},onBlur:t=>{const n=t.target.value??"";N.current&&(N.current=!1,ae(e,a,i),p?.({[K]:n},e),y?.({[K]:n},e),Z())},onKeyUp:t=>{if(13===t.keyCode&&!t.shiftKey){const n=t.target.value??"";h?.({[K]:n},e)}},onKeyDown:e=>{n&&13===e.keyCode&&!e.shiftKey&&h&&e.preventDefault()}}))},textarea:(e,t)=>le.text(e,t,!0),number:(e,t)=>{const{dataIndex:n,precision:r,formatType:o}=t,{type:s,extra:d={},rules:u=[],onInput:p,onChange:h,onEnter:y,onBlur:b}=v,x=Qn(e,n);let E,C;return"finance"===o&&(E=e=>{const t=e.toString().split(".");return`${t[0].replace(/\B(?=(\d{3})+(?!\d))/g,",")}${void 0!==t[1]?`.${t[1]}`:""}`},C=e=>e.replace(/\$\s?|(,*)/g,"")),"percent"===o&&(E=e=>"."===(e+="").charAt(e.length-1)||"-"===e||""===e?e:`${new(Ca())(e).times(100).toNumber()}`,C=e=>"."===e.charAt(e.length-1)||"-"===e||""===e?e:new(Ca())(e).times(.01).toString()),l().createElement(ds,{ref:w,size:c,value:x,min:d.min,max:d.max,precision:r,stringMode:d.stringMode,prefix:d.prefix,suffix:d.suffix??("percent"===o?"%":void 0),placeholder:d.placeholder??f("qm.table.editable.inputPlaceholder"),maxLength:d.maxLength,allowClear:d.allowClear,readOnly:d.readOnly,disabled:d.disabled,formatter:E,parser:C,onChange:r=>{Zn(e,n,r),m(u,r,a,i,or(t.title)),g(),p?.({[K]:r}),N.current=!0},onBlur:(t,r)=>{if(!N.current)return;N.current=!1;let l=d.stringMode?t:ie(t);"percent"===o&&"."===r.charAt(r.length-1)&&(l=Number(t)/100),Zn(e,n,l),ae(e,a,i),h?.({[K]:l},e),b?.({[K]:l},e),Z()},onEnter:(t,n)=>{let r=d.stringMode?t:ie(t);"percent"===o&&"."===n.charAt(n.length-1)&&(r=Number(t)/100),y?.({[K]:r},e)}})},select:(e,t,n)=>{const{dataIndex:r,dictItems:o=[]}=t,{type:s,extra:d={},rules:u=[],items:p,onChange:h,onEnter:g}=v,y=p||o,b=Qn(e,r);let x=b;return l().createElement(R.Select,{mode:n?"multiple":void 0,size:c,popupClassName:Qa.popupClassName,value:b||void 0,placeholder:d.placeholder??f("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:d.filterable??!0,filterOption:(e,t)=>{const n=t?.children?.toString()||"";return`${n}|${Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`.toLowerCase().indexOf(e.toLowerCase())>=0},onDropdownVisibleChange:e=>P(e),onChange:n=>{Zn(e,r,n),m(u,n,a,i,or(t.title)),ae(e,a,i),h?.({[K]:n},e),Z()},onSelect:e=>{x=e},onInputKeyDown:t=>{13===t.keyCode&&re((()=>g?.({[K]:x},e)))}},y.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))},"select-multiple":(e,t)=>le.select(e,t,!0),date:(e,t,n)=>{const{dataIndex:r}=t,{type:o,extra:s={},rules:d=[],onChange:u}=v,p=n||"exactdate",h=Qn(e,r);return l().createElement(_,{size:c,popupClassName:Qa.popupClassName,value:rr(h,Rr[p])??void 0,picker:Tr[p],format:s.format,showTime:"datetime"===p,disabledDate:e=>(e=>{const{minDateTime:t,maxDateTime:n}=s;return t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day")})(e),placeholder:s.placeholder,allowClear:s.allowClear,disabled:s.disabled,style:{width:"100%"},onChange:n=>{const l=ar(n,Rr[p]);Zn(e,r,l),m(d,l,a,i,or(t.title)),ae(e,a,i),u?.({[K]:l},e),Z()}})},datetime:(e,t)=>le.date(e,t,"datetime"),month:(e,t)=>le.date(e,t,"month"),year:(e,t)=>le.date(e,t,"year"),time:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:d}=v,u="HH:mm:ss",p=Qn(e,n);return l().createElement(q,{size:c,popupClassName:Qa.popupClassName,value:rr(p,u)??void 0,format:o.format||u,placeholder:o.placeholder,allowClear:o.allowClear,disabled:o.disabled,style:{width:"100%"},onChange:r=>{const l=ar(r,u);Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),d?.({[K]:l},e),Z()}})},checkbox:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:c}=v,{trueValue:d=Ha,falseValue:u=qa,disabled:p}=o,h=Qn(e,n);return l().createElement(R.Checkbox,{checked:h===d,disabled:p,onChange:r=>{const l=r.target.checked?d:u;Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),c?.({[K]:l},e),Z()}})},switch:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],onChange:c}=v,{trueValue:d=Ha,falseValue:u=qa,disabled:p}=o,h=Qn(e,n);return l().createElement(R.Switch,{checked:h===d,disabled:p,onChange:r=>{const l=r?d:u;Zn(e,n,l),m(s,l,a,i,or(t.title)),ae(e,a,i),c?.({[K]:l},e),Z()}})},"search-helper":(e,t)=>{const{dataIndex:n,precision:r}=t,{type:o,extra:s={},rules:u=[],helper:p={},onInput:h,onChange:g,onEnter:y}=v,b=Jn(e,Y?p.combinedDataIndex:n),x=p.fieldAliasMap;x||me("Table","helper 需要配置 `fieldAliasMap` 选项");const E="function"==typeof x?x():x||{};Object.keys(E).includes(n)||me("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值"),Y&&(p.combinedDataIndex.split("|").every((e=>Object.keys(E).includes(e)))||me("Table","所有出现在 `combinedDataIndex` 里的数据字段,在 `fieldAliasMap` 中必须做对应的映射配置"),E[n].includes("|")&&me("Table","配置了 `combinedDataIndex` 参数后,在 `fieldAliasMap` 中自身 `dataIndex` 值不能再使用分隔符"));const w=e=>{const{filterAliasMap:t}=p,r=""!==e?e:void 0,a=("function"==typeof t?t():t)||[],i={[n]:r};return(Array.isArray(a)?a:[a]).forEach((e=>{if((0,X.isPlainObject)(e))for(const t in e)i[t]="function"==typeof e[t]?e[t](r):r;else i[e]=r})),i},S=e=>{const{autoQueryAssign:t=!0}=p;t&&(I.current=w(e)),P(!0)},T=(n,r)=>{const{beforeOpen:a}=p,i=(a??te)({[K]:b},e,t);i?.then?i.then((()=>{S(n),r?.()})).catch((()=>{})):!1!==i&&(S(n),r?.())},R=e=>{const t={};for(const r in E){const a=E[r];r!==n&&(t[r]=Jn(e,a))}const r=E[n]?Jn(e,E[n]):"";L(r,t);const{closed:a}=p;P(!1),a?.(e)},O=()=>{const{onlySelect:e=!0}=p;N.current&&L(e?"":b),P(!1)},L=(l="",o)=>{if((0,X.isPlainObject)(o)&&Object.keys(o).length)for(const t in o){const n=o[t],r=d.find((e=>e.dataIndex===t));if(r){Zn(e,t,n,r.precision);const i=r.editRender?.(e,r);i&&Array.isArray(i.rules)&&m(i.rules,n,a,t,or(r.title))}else Zn(e,t,n)}Y&&!l&&((e,t)=>{if(!t.includes("|"))return Zn(e,t,"",void 0);const n="".split("|")||[];t.split("|").forEach(((t,r)=>{t&&Zn(e,t,n[r]?.trim())}))})(e,p.combinedDataIndex),Zn(e,n,l,r),m(u,l,a,i,or(t.title)),ae(e,a,i),g?.({[K]:l},e),Z(),I.current={},N.current=!1,$(void 0)},_={visible:k,title:f("qm.searchHelper.text"),width:p.width??"60%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{O()}},F={...p,size:c,initialValue:Object.assign({},I.current,p.initialValue),onClose:e=>{e?R(e):O()}};return l().createElement(l().Fragment,null,l().createElement(hs,{ref:C,value:H??b,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:s.allowClear,readOnly:s.readOnly,disabled:s.disabled,onBlur:e=>{const{value:t}=e.target,{onlySelect:r=!0,table:a}=p;if(N.current&&!k)return t&&r&&a?.fetch?.api?(e=>{const{table:t,initialValue:n={}}=p,{beforeFetch:r=te}=t.fetch;return new Promise((async(a,i)=>{const l=(0,X.merge)({},t.fetch.params,{...n,...w(e)},{currentPage:1,pageSize:500});if(!r(l))return i();A(!0);try{const e=await t.fetch.api(l);200===e.code?a(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[]):i()}catch(e){i(e)}finally{re((()=>A(!1)))}}))})(t).then((e=>((e=[],t)=>{const r=e.filter((e=>Jn(e,E[n]).toString().includes(t)));if(1===r.length)return R(r[0]);T(t)})(e,t))).catch((()=>L(""))):void L(t)},onChange:e=>{const{value:t}=e.target;h?.({[K]:t}),N.current=!0,$(t)},onKeyDown:e=>{if(13===e.keyCode){const t=e.target.value??"";!k&&T(t)}},onDoubleClick:e=>{const{value:t}=e.target;T(t)},onSearch:(e,t)=>{"click"===t?.type&&"INPUT"!==t.target.tagName&&T(e)}}),l().createElement(yn,_,l().createElement($s,F)))},"search-helper-multiple":(e,t)=>{const{dataIndex:n}=t,{type:r,items:o=[],extra:s={},rules:d=[],helper:u={},onInput:p,onChange:h,onEnter:g}=v,y=Qn(e,n),b=u.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes("valueKey")&&Object.keys(x).includes("textKey")||me("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`"),T.current=x;const E=n=>{const{beforeOpen:r}=u,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=r=>{Zn(e,n,r),m(d,r,a,i,or(t.title)),ae(e,a,i),h?.({[K]:r},e,O.current),Z()},S={visible:k,title:f("qm.searchHelper.text"),width:u.width??"60%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},N={...u,size:c,multiple:!0,initialValue:(0,X.merge)({},u.initialValue),defaultSelectedKeys:y,onClose:(e,t)=>{e?((e,t)=>{const{textKey:n,valueKey:r}=x;J((0,X.uniqBy)([...O.current.filter((e=>t.includes(e[r]))),...e],r));const a=O.current.map((e=>({text:e[n],value:e[r]}))),i=(0,X.uniqBy)([...a,...o],"value").filter((e=>t.includes(e.value)));D(i),C(i.map((e=>e.value)));const{closed:l}=u;P(!1),l?.(O.current)})(e,t):w()}};return l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{className:"ant-input-wrapper ant-input-group"},l().createElement(R.Select,{mode:"multiple",open:!1,value:y,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:s.allowClear,maxTagCount:s.collapseTags?"responsive":void 0,maxTagTextLength:s.maxTagTextLength,disabled:s.disabled,style:{width:"100%"},onKeyDown:e=>{13===e.keyCode&&!k&&E()},onDoubleClick:()=>{s.disabled||E()},onChange:e=>{const{valueKey:t}=x;J(O.current.filter((n=>e.includes(n[t])))),C(e)}},F.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text)))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:s.disabled,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{E()}})))),l().createElement(yn,S,l().createElement($s,N)))},"tree-helper":(e,t)=>{const{dataIndex:n,precision:r}=t,{type:o,extra:s={},rules:u=[],helper:p={},onChange:h,onEnter:g}=v,y=Jn(e,Y?p.combinedDataIndex:n),b=p.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes(n)||me("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值"),Y&&(p.combinedDataIndex.split("|").every((e=>Object.keys(x).includes(e)))||me("Table","所有出现在 `combinedDataIndex` 里的数据字段,在 `fieldAliasMap` 中必须做对应的映射配置"),x[n].includes("|")&&me("Table","配置了 `combinedDataIndex` 参数后,在 `fieldAliasMap` 中自身 `dataIndex` 值不能再使用分隔符"));const E=n=>{const{beforeOpen:r}=p,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=(l="",o)=>{if((0,X.isPlainObject)(o)&&Object.keys(o).length)for(const t in o){const n=o[t],r=d.find((e=>e.dataIndex===t));if(r){Zn(e,t,n,r.precision);const i=r.editRender?.(e,r);i&&Array.isArray(i.rules)&&m(i.rules,n,a,t,or(r.title))}else Zn(e,t,n)}Zn(e,n,l,r),m(u,l,a,i,or(t.title)),ae(e,a,i),h?.({[K]:l},e),Z()},N={visible:k,title:f("qm.searchHelper.text"),width:p.width??"40%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},I={...p,defaultSelectedKeys:[y],size:c,onClose:e=>{e?(e=>{const t={};for(const r in x){const a=x[r];r!==n&&(t[r]=Jn(e,a))}const r=x[n]?Jn(e,x[n]):"";C(r,t);const{closed:a}=p;P(!1),a?.(e)})(e):w()}};return l().createElement(l().Fragment,null,l().createElement(hs,{ref:S,value:y,allowClear:s.allowClear??!0,readOnly:s.readOnly,disabled:s.disabled,placeholder:s.placeholder??f("qm.table.editable.selectPlaceholder"),onChange:e=>{const{value:t}=e.target},onKeyDown:e=>{13===e.keyCode&&(e.target.value,!k&&E())},onDoubleClick:()=>{E()},onSearch:(e,t)=>{"click"===t?.type&&("INPUT"!==t.target.tagName?E():C(""))}}),l().createElement(yn,N,l().createElement(ms,I)))},"tree-helper-multiple":(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},items:s=[],rules:d=[],helper:u={},onInput:p,onChange:h,onEnter:g}=v,y=Qn(e,n),b=u.fieldAliasMap;b||me("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof b?b():b||{};Object.keys(x).includes("valueKey")&&Object.keys(x).includes("textKey")||me("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`"),T.current=x;const E=n=>{const{beforeOpen:r}=u,a=(r??te)({[K]:y},e,t);a?.then?a.then((()=>{P(!0),n?.()})).catch((()=>{})):!1!==a&&(P(!0),n?.())},w=()=>{P(!1)},C=r=>{Zn(e,n,r),m(d,r,a,i,or(t.title)),ae(e,a,i),h?.({[K]:r},e,O.current),Z()},S={visible:k,title:f("qm.searchHelper.text"),width:u.width??"40%",loading:!1,wrapClassName:Qa.popupClassName,bodyStyle:{paddingBottom:`${La[c]+20}px`},onClose:()=>{w()}},N={...u,size:c,multiple:!0,initialValue:(0,X.merge)({},u.initialValue),defaultSelectedKeys:y,onClose:e=>{e?(e=>{const{textKey:t,valueKey:n}=x;J(e);const r=O.current.map((e=>({text:e[t],value:e[n]})));D(r),C(r.map((e=>e.value)));const{closed:a}=u;P(!1),a?.(O.current)})(e):w()}};return l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{className:"ant-input-wrapper ant-input-group"},l().createElement(R.Select,{mode:"multiple",open:!1,value:y,placeholder:o.placeholder??f("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,maxTagCount:o.collapseTags?"responsive":void 0,maxTagTextLength:o.maxTagTextLength,disabled:o.disabled,style:{width:"100%"},onKeyDown:e=>{13===e.keyCode&&!k&&E()},onDoubleClick:()=>{o.disabled||E()},onChange:e=>{const{valueKey:t}=x;J(O.current.filter((n=>e.includes(n[t])))),C(e)}},F.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text)))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:o.disabled,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{E()}})))),l().createElement(yn,S,l().createElement(ms,N)))},custom:(e,t)=>{const{dataIndex:n}=t,{type:r,extra:o={},rules:s=[],render:c,onChange:d}=v;if(!c)return me("Table","单元格编辑的自定义渲染,必须设置 `render` 参数"),null;const u=Qn(e,n),p=r=>{Zn(e,n,r),m(s,r,a,i,or(t.title)),ae(e,a,i),d?.({[K]:r},e),Z()},h=c(e,t,p);return l().isValidElement(h)?l().cloneElement(h,{value:u,disabled:o.disabled,readOnly:o.readOnly,popupClassName:Qa.popupClassName,onChange:p}):null}};return l().createElement(l().Fragment,null,G?(()=>{const{type:e}=v,t=le[e];if(!t)return me("Table","单元格编辑的类型 `type` 配置不正确"),null;const a=["cell--edit",{"is-error":!j}];return l().createElement("div",{ref:x,className:xe()(a)},t(r,n),!j&&l().createElement("div",{className:"cell-error"},V||W))})():(()=>{const{disabled:t,extra:n={}}=v,{disabledColor:r,disabledBgColor:a}=n,i=["cell--show",{"is-cell-bg":t&&a}];return l().createElement(l().Fragment,null,l().createElement("span",{className:xe()(i),style:{color:t?r:""}},e.children),t&&a&&l().createElement("i",{className:"cell--bg",style:{background:a}}))})(),B&&l().createElement("i",{className:"cell--sign"}))}));fs.displayName="CellEdit";const gs=fs,ys=require("copy-to-clipboard");var bs=r.n(ys);const vs=e=>{const{text:t,options:n,showMessage:r=!0,onCopy:a}=e,{t:i}=U();return wt(e.children,{onClick:o=>{const s=l().Children.only(e.children),c=bs()(t,n);a?.(t,c),c&&r&&R.message.success(i("qm.clipboard.success")),s&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(o)}})};vs.displayName="QmCopyToClipboard";const xs=vs,Es=l().forwardRef(((e,t)=>{const{column:n,row:r,rowIndex:a,columnIndex:o,rowKey:s,showTitle:c}=e,{tableRef:d,selectionKeys:u,treeExpandIndex:m,updateMark:p}=l().useContext(Aa),{dataIndex:h,canCopy:f,render:g,editRender:y,shouldCellUpdate:b}=n,{t:v}=U(),{renderText:x,getTitleFromCellNode:E}=ci(),w=l().useRef(null),C=Qn(r,h),[S,N]=function(e,c){const d=i.useRef({});return"value"in d.current&&!((e,t)=>{if(b){const[,n]=e,[,a]=t;return b(a,n,r)}return!yr(e,t,!0)})(d.current.condition,c)||(d.current.value=(()=>{const e=g?g(C,r,n,a,o):x(C,n,r);return[e,y?l().createElement(gs,{ref:t,column:n,record:r,rowKey:s,columnKey:h},e):null]})(),d.current.condition=c),d.current.value}(0,[p,r,C,g,y]);l().useEffect((()=>{if([Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(h))return;const e=w.current.parentNode;c?e.title=E(S):e.removeAttribute("title")}),[c,S]);const I=e=>Array.isArray(e.children);return l().createElement("div",{ref:w,className:"cell"},(()=>{if(h===Qa.expandableColumn)return l().createElement(ss,{record:r,rowKey:s});if(h===Qa.selectionColumn)return l().createElement(os,{selectionKeys:u,column:n,record:r,rowKey:s});if(N)return N;if(d.current.isTreeTable&&h===m)return l().createElement(l().Fragment,null,(e=r._level)?l().createElement("span",{key:e,className:`cell--indent indent-level-${e}`,style:{paddingLeft:e*Qa.treeTable.textIndent+"px"}}):null,l().createElement(ss,{key:"expand",record:r,rowKey:s,style:I(r)?{}:{visibility:"hidden"}}),S);var e;if(f){const e=E(S);return l().createElement("div",{className:"cell--copy"},l().createElement("span",{className:"text"},S),e&&l().createElement(xs,{text:e},l().createElement(we.CopyOutlined,{className:"icon",title:v("qm.table.config.copyText"),onClick:e=>e.stopPropagation()})))}return S})())}));Es.displayName="Cell";const ws=Es,Cs={open:!1,offsetX:0,offsetY:0},Ss=l().forwardRef(((e,t)=>{const{rowVirtualize:n}=e,{tableRef:r,getRowKey:a,prefixCls:i,tableFlatData:o,flattenColumns:s,mergedTdCells:c,setMergedCells:d}=l().useContext(Aa),{areaSelection:u={}}=r.current.props,{elementStore:m,scrollYLoad:p}=r.current,{t:h}=U(),f=l().useRef(document.onselectstart),g=l().useRef(null),y=l().useRef(null),b=l().useRef(null),v=e=>{b.current=e},[x,E]=l().useState(null),[w,C]=l().useState(null),[S,N]=l().useState(null),I=e=>{if(!e)return N(null);let t=!1;for(const n in e)if(S?.[n]!==e[n]){t=!0;break}t&&N(Object.assign({},S,e))};ao({ref:g,handler:()=>z()}),l().useEffect((()=>{const e=Ut()(m.$tableBody,"mousedown",D),t=Ut()(m.$tableBody,"contextmenu",_),n=Ut()(document,"keydown",F);return()=>{e.remove(),t.remove(),n.remove()}}),[]);const T=()=>{E(null),I(null),v(null),C(null)};l().useImperativeHandle(t,(()=>({blur:T})));const R=e=>{let t=e;for(;t;){if(!m.$tableBody.contains(t))return null;if("TD"===t.tagName.toUpperCase())return t;t=t.parentNode}return null},O=e=>({rowIndex:parseInt(e.parentNode.getAttribute("data-row-index"),10),colIndex:parseInt(e.getAttribute("data-col-index"),10),rowspan:Number(e.getAttribute("rowspan")||1),colspan:Number(e.getAttribute("colspan")||1),l:e.offsetLeft,t:e.offsetTop,w:e.offsetWidth,h:e.offsetHeight}),k=e=>({colStart:e.colIndex,colEnd:e.colIndex+e.colspan,rowStart:e.rowIndex,rowEnd:e.rowIndex+e.rowspan}),P=e=>{let[t,n,r,a]=[1/0,-1/0,1/0,-1/0];for(const i of e)t=Math.min(t,i.rowStart),n=Math.max(n,i.rowEnd),r=Math.min(r,i.colStart),a=Math.max(a,i.colEnd);return{rowStart:t,rowEnd:n,colStart:r,colEnd:a}},L=Et((e=>{let t=P([k(e),b.current]);c.forEach((e=>{const n=o.findIndex((t=>a(t,t.index)===e.rowKey)),r=s.findIndex((t=>t.dataIndex===e.dataIndex)),i={rowStart:n,rowEnd:n+e.rowSpan,colStart:r,colEnd:r+e.colSpan};var l,c;c=i,(l=t).rowEnd<=c.rowStart||l.rowStart>=c.rowEnd||l.colEnd<=c.colStart||l.colStart>=c.colEnd||(t=P([t,i]))})),I(t)}),5),A=e=>{d(e),u.onCellMerge?.(e),re((()=>T()))},_=G((e=>{u.cellMerge&&x&&M(e.clientX,e.clientY)?(e.preventDefault(),K(e)):w?.open&&z()})),F=G((e=>{27===e.keyCode&&T()})),D=G((e=>{e.stopPropagation();const t=R(e.target);if(1!==e.buttons||!t)return;z();const n=O(t);E(n);const r=k(n);v(r),I(r),document.addEventListener("mousemove",H),document.addEventListener("mouseup",q),f.current=document.onselectstart,document.onselectstart=()=>!1})),H=G((e=>{const t=R(e.target);t&&L(O(t))})),q=G((()=>{u.onSelectChange?.((()=>{const e=[];if(!x||!S)return e;for(let t=S.rowStart;t<S.rowEnd;t++)for(let n=S.colStart;n<S.colEnd;n++)e.push({rowKey:a(o[t],o[t].index),dataIndex:s[n].dataIndex,cellValue:Qn(o[t],s[n].dataIndex)});return e})()),document.removeEventListener("mousemove",H),document.removeEventListener("mouseup",q),$()})),$=()=>{document.onselectstart!==f.current&&(document.onselectstart=f.current)},M=(e,t)=>{const{top:n,left:r}=m.$tableBody.parentNode.getBoundingClientRect(),[a,i]=[e-r,t-n],{el:l,et:o,ew:s,eh:c}=Y();return!(a<l||a>l+s||i<o||i>o+c)},K=e=>{const{top:t,left:n,height:r}=y.current.getBoundingClientRect();C({open:!0,offsetX:e.clientX-n,offsetY:-1*(r-(e.clientY-t))})},z=()=>{C((e=>({...e,open:!1})))},j=e=>({rowIndex:o.findIndex((t=>a(t,t.index)===e.rowKey)),colIndex:s.findIndex((t=>t.dataIndex===e.dataIndex)),rowSpan:e.rowSpan,colSpan:e.colSpan}),V=()=>{if(!x||!S||(t=S,(e=x).rowIndex===t.rowStart&&e.colIndex===t.colStart&&e.rowspan===t.rowEnd-t.rowStart&&e.colspan===t.colEnd-t.colStart))return T();var e,t;const n={rowKey:a(o[S.rowStart],o[S.rowStart].index),dataIndex:s[S.colStart].dataIndex,rowSpan:S.rowEnd-S.rowStart,colSpan:S.colEnd-S.colStart};A([...c.filter((e=>!((e,t)=>{const n=j(e),r=j(t),[a,i,l,o]=[n.rowIndex,n.colIndex,n.rowIndex+n.rowSpan-1,n.colIndex+n.colSpan-1],[s,c,d,u]=[r.rowIndex,r.colIndex,r.rowIndex+r.rowSpan-1,r.colIndex+r.colSpan-1];return a<=s&&i<=c&&l>=d&&o>=u||s<=a&&c<=i&&d>=l&&u>=o})(e,n))),n])},W=()=>{const e=a(o[S.rowStart],o[S.rowStart].index),t=s[S.colStart].dataIndex;A(c.filter((n=>!(n.rowKey===e&&n.dataIndex===t))))},B=e=>{if(p)return n.measurementsCache.slice(0,e).map((e=>e.size)).reduce(((e,t)=>e+t),0);if(e>=o.length)return m.$tableBody.parentNode.offsetHeight;const t=a(o[e],o[e].index),i=m.$tableBody.querySelector(`tbody > tr[data-row-key="${t}"]`);return i?i.offsetTop:r.current.rowHeight*e},Y=()=>{const{w:e,h:t,l:n,t:r}=x,a=s.slice(0,S.colStart).reduce(((e,t)=>e+(t.width||t.renderWidth)),0),i=B(S.rowStart);return{sl:n,st:r,sw:e,sh:t,el:a,et:i,ew:s.slice(0,S.colEnd).reduce(((e,t)=>e+(t.width||t.renderWidth)),0)-a,eh:B(S.rowEnd)-i}};return l().createElement("div",{className:`${i}--area-select`},(()=>{if(!x||!S)return null;const{sl:e,st:t,sw:n,sh:r,el:a,et:i,ew:o,eh:s}=Y(),{open:c,offsetX:d,offsetY:u}=w||Cs,m=l().createElement("ul",{ref:g,className:"ant-dropdown-menu"},l().createElement("li",{className:"ant-dropdown-menu-item",onClick:V},h("qm.table.areaSelect.mergeCell")),l().createElement("li",{className:"ant-dropdown-menu-item",onClick:W},h("qm.table.areaSelect.cancelMerge")));return l().createElement(l().Fragment,null,l().createElement("div",{className:"active-area",style:{left:e,top:t,width:n,height:r}}),l().createElement(Ri(),{popupVisible:c,popup:m,action:[],popupPlacement:"bottomLeft",prefixCls:"ant-dropdown",popupClassName:Qa.popupClassName,builtinPlacements:{bottomLeft:{points:["tl","bl"],offset:[d+4,u+4],overflow:{adjustX:1,adjustY:1}}}},l().createElement("div",{ref:y,className:"checked-area",style:{left:a,top:i,width:o,height:s}})))})())}));Ss.displayName="AreaSelect";const Ns=Ss,Is=l().forwardRef(((e,t)=>{const{tableRef:n,getRowKey:r,prefixCls:a,tableFlatData:i,flattenColumns:o,editableColumns:s,leftFixedColumns:c,rightFixedColumns:d,derivedMergeCells:u,sorter:m,layout:p,showFooter:h,selectionKeys:f,rowExpandedKeys:g,highlightKey:y,activedCell:b,isPingLeft:v,isPingRight:x,isTableEmpty:E,isGroupSubtotal:w,setElementStore:C,setSelectionKeysEffect:S,setHighlightKey:N,setActivedCell:I,getStickyLeft:T,getStickyRight:R,setPingLeft:O,setPingRight:k,setFullScreen:P,scrollBottomDebouncer:L}=l().useContext(Aa),{height:A,minHeight:_,maxHeight:F,rowHeight:D,rowSelection:H,rowHighlight:q,expandable:$,stripe:M,summation:K,rowStyle:z,cellStyle:j,spanMethod:V,tableConfig:W,areaSelection:B,ellipsis:U,showHeader:Y,rowDraggable:Q,onRowClick:Z,onRowDblclick:J,onRowContextmenu:ne,onRowEnter:re}=n.current.props,ae=l().useRef(null),ie=l().useRef({}),le=l().useRef(null),oe=l().useRef({prevST:0,prevSL:0}),{onNodeDragStart:se,onNodeDragEnter:ce,onNodeDragOver:de,onNodeDragLeave:ue,onNodeDragEnd:me,onNodeDrop:pe,indent:he,dropOptions:fe}=rs({openDragSort:Q}),{rowVirtualizer:ge,columnVirtualizer:ye,virtualRows:be,virtualColumns:ve,resetItemXSize:Ee,getYIndexes:we,virtualTranslateY:Ce,virtualTranslateX:Se,calcVirtualYSize:Ne,calcVirtualXSize:Ie,scrollToYIndex:Te}=((e,t)=>{const{tableRef:n}=l().useContext(Aa),{props:r,scrollBarRef:a,rowHeight:i}=n.current,o=r.tableConfig?.overscan||1,s=l().useMemo((()=>a.current?.container.children[0]??null),[a.current]),c=l().useMemo((()=>{const e=[],n=[];return t.forEach(((t,r)=>{"left"===t.fixed&&e.push(r),"right"===t.fixed&&n.push(r)})),[e,n]}),[t]),d=eo({count:e.length,getScrollElement:()=>s,estimateSize:()=>i,indexAttribute:"data-row-index",overscan:o,enabled:n.current.scrollYLoad}),u=d.getVirtualItems(),m=eo({horizontal:!0,count:t.length,getScrollElement:()=>s,estimateSize:e=>t[e].width||t[e].renderWidth||0,indexAttribute:"data-col-index",overscan:o,enabled:n.current.scrollXLoad,rangeExtractor:e=>[...new Set([...c[0],...Vl(e),...c[1]])]}),p=m.getVirtualItems();return{rowVirtualizer:d,columnVirtualizer:m,virtualRows:u,virtualColumns:p,resetItemXSize:e=>{e.forEach(((e,t)=>{m.resizeItem(t,e.width||e.renderWidth||Qa.defaultColumnWidth)}))},getYIndexes:()=>d.getVirtualIndexes()||[],getXIndexes:()=>m.getVirtualIndexes()||[],virtualTranslateY:()=>u[0]?.start??0,virtualTranslateX:()=>{const e=c[0].length;return e?p[e]?.index===e?p[0]?.start??0:(p[e]?.start??0)-p.slice(0,e).reduce(((e,t)=>e+t.size),0):p[0]?.start??0},calcVirtualYSize:()=>d.getTotalSize()||void 0,calcVirtualXSize:()=>m.getTotalSize()||void 0,scrollToYIndex:e=>{d.scrollToIndex(e)},scrollToXIndex:e=>{m.scrollToIndex(e)}}})(i,o),Re=we(),Oe=e=>{if(e&&!U)return ge.measureElement(e)},ke=l().useMemo((()=>u.length&&n.current.scrollYLoad?((e,t)=>{const n=[],r=new Set(t);return e.forEach((({row:e,col:t,rowSpan:a,colSpan:i})=>{const l=e+a-1,o=[];for(let t=e;t<=l;t++)r.has(t)&&o.push(t);if(0===o.length)return;const s=o.length;o.forEach(((e,r)=>{0===r&&n.push({row:e,col:t,rowSpan:s,colSpan:i});for(let a=t;a<t+i;a++)0===r&&a===t||n.push({row:e,col:a,rowSpan:0,colSpan:0})}))})),n})(u,Re):u),[u,Re.join(",")]),[Pe,Le]=l().useState([]),Ae=as();ao({ref:ae,omitClassNames:[`.${Qa.popupClassName}`],handler:()=>{Ge([]),le.current?.blur()}}),l().useImperativeHandle(t,(()=>({setClickedValues:Ge,createFocus:ze,forceUpdate:Ae,resetItemXSize:Ee,scrollToYIndex:Te}))),He((()=>{Pe.length&&n.current.tableManager.focus(n.current.uid)}),[Pe]),l().useLayoutEffect((()=>{Ke();const e=Ut()(document,"keydown",De);return()=>e.remove()}),[]);const _e=l().useMemo((()=>{const{headerHeight:e,viewportHeight:t,footerHeight:n,tableFullHeight:r,tableAutoHeight:a}=p,i={};return E&&Object.assign(i,{minHeight:"100px"}),_&&Object.assign(i,{minHeight:Yn(_)-e-n+"px"}),F&&Object.assign(i,{maxHeight:Yn(F)-e-n+"px"}),A||r||a?{...i,maxHeight:"",minHeight:"",height:`${t}px`}:i}),[A,F,_,E,p]),Fe=G((e=>{const{elementStore:t}=n.current,{prevST:r,prevSL:a}=oe.current,{scrollTop:i,scrollLeft:l}=e;if(l!==a){Y&&(t.$header.scrollLeft=l),h&&(t.$footer.scrollLeft=l);const e=l>0,n=Math.ceil(l)+p.tableWidth<p.tableBodyWidth;v!==e&&O(e),x!==n&&k(n)}i!==r&&Math.ceil(i)+p.viewportHeight>=ae.current.parentNode.offsetHeight&&L({type:"scroll",target:e,preventDefault:ee,stopPropagation:ee}),oe.current={prevST:i,prevSL:l}})),De=G((e=>{const{keyCode:t}=e;if(n.current.uid===n.current.tableManager.getFocusInstance()?.id&&(27===t&&(Ge([]),N(""),I({}),P(!1)),Pe.length&&(Ue(document.activeElement,ae.current)||"INPUT"!==document.activeElement?.tagName))){if(13===t&&("radio"===H?.type||q)){const t=f[0]??y??null,n=i.find((e=>r(e,e.index)===t))??null;n&&re?.(n,e)}if(!We(Pe[0],Pe[1])){if(38===t||40===t){Me(e);const n=i.length;let a=i.findIndex((e=>r(e,e.index)===Pe[0]));const l=38===t?(--a+n)%n:++a%n,o=i[l],s=r(o,o.index),c=Ve(s,Pe[1]);"radio"!==H?.type||H.disabled?.(o)||c||S([s]),!q||q.disabled?.(o)||c||N(s),qe(38===t?"top":"bottom",l),je(...Pe),Ge([s,Pe[1]])}if(9===t||e.shiftKey&&9===t){if(Me(e),!s.length)return Ge([]);const n=s.length;let r=s.findIndex((e=>e.dataIndex===Pe[1]));const a=e.shiftKey&&9===t?(--r+n)%n:++r%n;je(...Pe),$e(e.shiftKey&&9===t?"left":"right",a),Ge([Pe[0],s[a].dataIndex])}}}})),qe=(e,t)=>{const{scrollBarRef:r,scrollYLoad:a}=n.current;if(a)return ge.scrollToIndex(t);const l=i.length,o=t,s=ae.current.querySelectorAll("tbody > tr"),c=i.map(((e,t)=>t)).slice(0,o).reduce(((e,t)=>e+s[t].offsetHeight),0),d=s[o].offsetHeight;"top"===e?c<r.current.scrollTop?r.current.SET_SCROLL_TOP(c):t===l-1&&r.current.SET_SCROLL_TOP(c-(p.viewportHeight-d)):c+d>r.current.scrollTop+p.viewportHeight?r.current.SET_SCROLL_TOP(c-(p.viewportHeight-d)):0===t&&r.current.SET_SCROLL_TOP(c)},$e=(e,t)=>{const{scrollBarRef:r}=n.current,a=s.length,i=o.findIndex((e=>e.dataIndex===s[t].dataIndex)),l=o.slice(0,i).reduce(((e,t)=>e+(t.width||t.renderWidth)),0),u=o[i].width||o[i].renderWidth,m=c.reduce(((e,t)=>e+(t.width||t.renderWidth)),0),h=d.reduce(((e,t)=>e+(t.width||t.renderWidth)),0);"left"===e?l<r.current.scrollLeft+m?r.current.SET_SCROLL_LEFT(l-m):t===a-1&&r.current.SET_SCROLL_LEFT(l-(p.tableWidth-u)+h):l+u>r.current.scrollLeft+(p.tableWidth-h)?r.current.SET_SCROLL_LEFT(l-(p.tableWidth-u)+h):0===t&&r.current.SET_SCROLL_LEFT(l-m)},Ke=()=>{C("$tableBody",ae.current)},ze=(e,t)=>{ie.current[`${e}-${t}`]?.focus()},je=(e,t)=>{ie.current[`${e}-${t}`]?.blur()},Ve=(e,t)=>ie.current[`${e}-${t}`]?.isEditable()??!1,We=(e,t)=>ie.current[`${e}-${t}`]?.isOpening()??!1,Be=e=>{const t=K.groupItems.findIndex((t=>t.dataIndex===e));return{[`body--row-group_${t+1}`]:t>=0}},Ge=e=>{(0,X.isEqual)(e,Pe)||Le(e)},Ye=(e,t,n)=>n?[...t,e]:t.filter((t=>t!==e)),Xe=(e,t,r)=>{const{disabled:a}=H||{},{deriveRowKeys:i,recordsMap:l}=n.current,o=zn(i,e);let s=[],c=hr(o?.children||[]);return a&&(c=c.filter((e=>!l.has(e)||!a(l.get(e))))),s=r?[...new Set([...t,e,...c])]:t.filter((t=>![e,...c].includes(t))),(mr(i,e)?.slice(0,-1).reverse()||[]).forEach((e=>{const t=zn(i,e),n=t?.children?.every((e=>s.includes(e.rowKey)));s=n?[...s,e]:s.filter((t=>t!==e))})),s},Qe=(e,t,a,i,o)=>{const{dataIndex:s,fixed:u,align:p,className:h=""}=e,{rowSpan:g,colSpan:y}=Ze(a,e,i,t);if(!g||!y)return null;const v=e.ellipsis??U,x=["body--column",{"col--ellipsis":v,"col--center":"center"===p,"col--right":"right"===p,"col-active":b.rowKey===o&&b.dataIndex===s,"column--sort":!!m[s],"cell-fix-left":"left"===u,"cell-fix-right":"right"===u,"cell-fix-left-last":"left"===u&&c[c.length-y]?.dataIndex===s,"cell-fix-right-first":"right"===u&&d[0]?.dataIndex===s,[h]:!!h}],E={left:"left"===u?`${T(s)}px`:"",right:"right"===u?`${R(s)}px`:""},C=z?"function"==typeof z?z(a,i):z:null,I=j?"function"==typeof j?j(a,e,i,t):j:null,O=w?(e=>{const{backgroundColor:t,color:n}=K.groupItems.find((t=>t.dataIndex===e))??{};return{backgroundColor:t,color:n}})(a._group):null,k=Object.assign({},E,{height:D},O,C,I);return l().createElement("td",{key:s,"data-col-index":t,rowSpan:g>1?g:void 0,colSpan:y>1?y:void 0,className:xe()(x),style:k,onClick:t=>((e,t,a)=>{const{dataIndex:i}=a;if([Qa.expandableColumn,Qa.operationColumn].includes(i))return;const l=r(t,t.index);Ge([l,i]);const o=Ve(l,i),{type:s,selectByClickRow:c=!0,disabled:d=ee}=H||{};!s||d(t)||o||(c||i===Qa.selectionColumn)&&((e,t)=>{const{type:r,checkStrictly:a=!0,onSelect:i}=H||{};if("radio"===r&&S([e]),"checkbox"===r){const r=!f.includes(e),l=n.current.isTreeTable&&!a?Xe(e,f,r):Ye(e,f,r);S(l),i?.(r,t,l)}})(l,t),[Qa.selectionColumn].includes(i)||(!q||q.disabled?.(t)||o||N(l),Z?.(t,a,e))})(t,a,e),onDoubleClick:t=>((e,t,n)=>{const{dataIndex:r}=n;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(r)||J?.(t,n,e)})(t,a,e),onContextMenu:t=>((e,t,n)=>{const{dataIndex:r}=n;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(r)||ne?.(t,n,e)})(t,a,e)},l().createElement(ws,{ref:e=>ie.current[`${o}-${s}`]=e,row:a,column:e,rowIndex:i,columnIndex:t,rowKey:o,showTitle:v}))},Ze=(e,t,n,r)=>{let a=1,l=1;const o=V;if("function"==typeof o){const s=o({row:e,column:t,rowIndex:n,columnIndex:r,tableData:i});Array.isArray(s)?(a=s[0],l=s[1]):(0,X.isPlainObject)(s)&&(a=s.rowSpan,l=s.colSpan);const c=Re[0]??0;if(e===i[c]&&0===a)for(let e=c;e<i.length;e++){const n=o({row:i[e],column:t,rowIndex:e,columnIndex:r,tableData:i});if((Array.isArray(n)?n[0]:n.rowSpan)>0)break;a++}}if(ke.length>0){const e=ke.find((e=>e.row===n&&e.col===r));e&&(a=e.rowSpan,l=e.colSpan)}return{rowSpan:a,colSpan:l}};return l().createElement(l().Fragment,null,l().createElement(At,{ref:n.current.scrollBarRef,wrapClassName:`${a}--body-wrapper`,wrapStyle:_e,innerStyle:{height:Ne(),width:Ie()},showTopScrollbar:W?.doubleXScrollbar,onScroll:Fe},l().createElement(Xo.Provider,{value:Pe},l().createElement("table",{ref:ae,style:{width:0,marginTop:Ce(),marginLeft:Se()},className:xe()(`${a}--body`,{"virtual-container":n.current.scrollYLoad||n.current.scrollXLoad}),tabIndex:-1,cellSpacing:"0",cellPadding:"0"},(()=>{const{scrollXLoad:e}=n.current;return l().createElement("colgroup",null,(e?ve:o).map((t=>{const{dataIndex:n,width:r,renderWidth:a}=e?o[t.index]:t;return l().createElement("col",{key:n,style:{width:`${r||a}px`,minWidth:`${r||a}px`}})})))})(),l().createElement("tbody",null,(e=>{const{scrollYLoad:t,scrollXLoad:a}=n.current,s=[];return(t?e:i).forEach(((e,c)=>{const d=t?i[e.index]:e,u=t?e.index:c,m=r(d,d.index);if(s.push(((e,t,r)=>{const{scrollXLoad:a}=n.current,{disabled:i}=H||{},s=["body--row",{"body--row-striped":M&&t%2!=0,"body--row-selected":f.includes(r)&&!i?.(e),"body--row-current":y===r,...w?Be(e._group):null}],c=(a?ve:o).map(((n,i)=>Qe(a?o[n.index]:n,a?n.index:i,e,t,r)));return Q?l().createElement(ls,{key:r,ref:Oe,className:xe()(s),rowKey:r,rowIndex:t,row:e,indent:he,filter:".cell--edit input",dropOption:fe,onNodeDragStart:se,onNodeDragEnter:ce,onNodeDragOver:de,onNodeDragLeave:ue,onNodeDragEnd:me,onNodeDrop:pe},c):l().createElement("tr",{key:r,ref:Oe,"data-row-key":r,"data-row-index":t,className:xe()(s)},c)})(d,u,m)),$?.expandedRowRender){const{expandedRowClassName:e,rowExpandable:t=te}=$;g.includes(m)&&t(d)&&s.push(l().createElement("tr",{key:`expand_${m}`,className:"body--row-expanded"},l().createElement("td",{colSpan:(a?ve:o).length,className:"body--column",style:{paddingLeft:H?2*Qa.selectionColumnWidth:Qa.selectionColumnWidth}},l().createElement("div",{className:xe()("cell",e)},$.expandedRowRender(d,u)))))}})),s})(be)))),!!B&&l().createElement(Ns,{ref:le,rowVirtualize:ge})))}));Is.displayName="TableBody";const Ts=Is,Rs=()=>{const{tableRef:e,prefixCls:t,sorter:n,layout:r,flattenColumns:a,leftFixedColumns:i,rightFixedColumns:o,summationRows:s,setElementStore:c,getStickyLeft:d,getStickyRight:u}=l().useContext(Aa),{footRender:m}=e.current.props,{t:p}=U(),h=l().useRef(null);l().useLayoutEffect((()=>{f()}),[]);const f=()=>{c("$footer",h.current)},{tableBodyWidth:g}=r;return l().createElement("div",{ref:h,className:`${t}--footer-wrapper`},m?m(a,e.current.tableFullData):l().createElement("table",{className:`${t}--footer`,cellSpacing:"0",cellPadding:"0",style:{width:g?`${g}px`:""}},l().createElement("colgroup",null,a.map((e=>{const{dataIndex:t,width:n,renderWidth:r}=e;return l().createElement("col",{key:t,style:{width:`${n||r}px`,minWidth:`${n||r}px`}})}))),l().createElement("tfoot",null,s.map(((t,r)=>l().createElement("tr",{key:r,className:"footer--row"},a.map(((r,a)=>((t,r,a)=>{const{dataIndex:s,fixed:c,align:m,summation:h}=t,f=["footer--column","col--ellipsis",{"col--center":"center"===m,"col--right":"right"===m,"column--sort":!!n[s],"cell-fix-left":"left"===c,"cell-fix-right":"right"===c,"cell-fix-left-last":"left"===c&&i[i.length-1]?.dataIndex===s,"cell-fix-right-first":"right"===c&&o[0]?.dataIndex===s}],g={left:"left"===c?`${d(s)}px`:"",right:"right"===c?`${u(s)}px`:""},y=h?.render?h.render(e.current.tableFullData):Qn(r,`${s}_text`),b=0===a&&""===y?p("qm.table.config.summaryText"):y;return l().createElement("td",{key:s,title:b,className:xe()(f),style:{...g}},l().createElement("div",{className:"cell"},b))})(r,t,a)))))))))};var Os=function(e){return e.small="small",e.middle="default",e.large="default",e}(Os||{});const ks=e=>{const{current:t,pageSize:n,total:r,onChange:a}=e,{global:i}=l().useContext(o),{tableRef:s,prefixCls:c,$size:d,setElementStore:u}=l().useContext(Aa),{uniqueKey:m,paginationConfig:p,infoBarConfig:h}=s.current.props,f=l().useRef(null),g=l().useMemo((()=>m?`tablePager_${m}`:""),[m]);l().useLayoutEffect((()=>{y(),E()}),[]);const y=()=>{u("$pager",f.current)},b=p?.showSizeChanger??Qa.pagination.showSizeChanger,v=p?.showQuickJumper??Qa.pagination.showQuickJumper,x=p?.pageSizeOptions||i?.table?.pagination?.pageSizeOptions||Qa.pagination.pageSizeOptions,E=async()=>{if(!g)return;const e=await w(g);e&&e!==n&&(a(t,e),localStorage.setItem(g,e.toString()))},w=async e=>{const t=i?.getComponentConfigApi;if(t&&!localStorage.getItem(g))try{const n=await t({key:e});if(200===n.code)return n.data}catch(e){}},C={[`${c}-pager`]:!0};return l().createElement("div",{ref:f,className:xe()(C)},l().createElement("div",{className:"pager-alert"},"bottom"===h?.position&&l().createElement(ai,{total:r})),l().createElement(R.Pagination,{size:Os[d],showSizeChanger:b,showQuickJumper:v,pageSizeOptions:x,current:t,pageSize:n,total:r,onChange:(e,t)=>{a(e,t)},onShowSizeChange:(e,t)=>{g&&((async(e,t)=>{const n=i?.saveComponentConfigApi;if(n)try{await n({[e]:t})}catch(e){}})(g,t),localStorage.setItem(g,`${t}`))}}))},Ps=()=>{const{prefixCls:e,layout:t}=l().useContext(Aa),n=l().useMemo((()=>{const{headerHeight:e,viewportHeight:n}=t;return{top:`${e}px`,height:`${n}px`}}),[t]);return l().createElement("div",{className:`${e}--empty`,style:n},l().createElement(dt,null))},Ls=()=>{const{prefixCls:e,setElementStore:t}=l().useContext(Aa),n=l().useRef(null);l().useLayoutEffect((()=>{r()}),[]);const r=()=>{t("$resizableBar",n.current)};return l().createElement("div",{ref:n,className:`${e}--resizable-bar`})};function As(){return As=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},As.apply(null,arguments)}const _s=l().forwardRef(((e,t)=>{const n=h(Fa,e),{rowKey:r,columns:a,loading:i,resizable:s,customClass:c,areaSelection:d,tablePrint:u,exportExcel:m,infoBarConfig:p,topSpaceAlign:f,showTableInfo:g,showFullScreen:y,showRefresh:b,showToolBox:v,showHeader:x,className:E,style:w}=n,{$size:C}=Y(n),S=l().useRef(null),N=l().useRef(null),I=l().useRef(null),T=l().useRef(null),R=l().useRef(null),O=Ee("table"),k=G(((e,t)=>{const n="function"==typeof r?r(e,t):e?.[r];return void 0===n?(me("Table","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):n})),{tableRef:P,tableFullData:L,setElementStore:A,setOriginColumns:_,setTableFullData:F,setTableOriginData:D,setAllTableData:H,setDeriveRowKeys:q,setInvalidRowKeys:$,setFieldAuth:M,setColumnsDefined:K,setScrollXLoad:z,setScrollYLoad:j,setResizeState:V,setHandleState:W,setSummaries:B,setSelectionRows:U,setRecordsMap:Z,setUnMounted:J,clearElementStore:ee,clearRecordsMap:te}=((e,{getRowKey:t,$size:n})=>{const{rowHeight:r,dynamicThead:a}=e,i=l().useRef({props:e,uid:Ba(),tableManager:Ga,elementStore:{},originColumns:[],tableFullData:[],tableOriginData:[],allTableData:[],allRowKeys:[],allParentRowKeys:[],deriveRowKeys:[],invalidRowKeys:[],fieldAuth:{},columnsDefined:!a,scrollBarRef:l().createRef(),rowHeight:r||Qa.rowHeightMaps[n],store:new Xa,resizeState:{width:0,height:0,winHeight:window.innerHeight},handleState:{insert:null,remove:!1},summaries:{},isTreeTable:!1,scrollXLoad:!1,scrollYLoad:!1,selectionRows:[],recordsMap:new Map,unMounted:!1,isIE:!Q&&/MSIE|Trident/.test(navigator.userAgent)});var o;o=e,i.current.props=o;const s=(e,n,r="",a=0)=>e.map((e=>{const i=t(e,e.index),l=r?`${r}.${e.index+1}`:`${e.index+1}`,o={level:a,rowKey:i,indexPath:l};return e.indexPath=l,e._level=a,e._parentRowKey=a?n:null,Array.isArray(e.children)&&(o.children=s(e.children,i,l,a+1)),n?Object.assign(o,{parentRowKey:n}):o}));return{tableRef:i,...i.current,setElementStore:(e,t)=>{i.current.elementStore[e]=t},setOriginColumns:e=>{i.current.originColumns=e},setTableFullData:e=>{i.current.tableFullData=e},setTableOriginData:e=>{i.current.tableOriginData=e},setAllTableData:e=>{const n=jn(e);i.current.allTableData=n,i.current.allRowKeys=n.map((e=>t(e,e.index)))},setDeriveRowKeys:e=>{const n=e.some((e=>Array.isArray(e.children)));i.current.isTreeTable=n,i.current.deriveRowKeys=n?s(e,""):[],i.current.allParentRowKeys=n?Vn(e,(e=>t(e,e.index))):[]},setInvalidRowKeys:e=>{i.current.invalidRowKeys=e},setFieldAuth:(e,t)=>{i.current.fieldAuth[e]=t},setColumnsDefined:e=>{i.current.columnsDefined=e},setResizeState:e=>{i.current.resizeState=e},setHandleState:e=>{i.current.handleState=e},setSummaries:e=>{i.current.summaries=e},setScrollXLoad:e=>{i.current.scrollXLoad=e},setScrollYLoad:e=>{i.current.scrollYLoad=e},setSelectionRows:e=>{i.current.selectionRows=e},setRecordsMap:(e,t)=>{i.current.recordsMap.set(e,t)},setUnMounted:e=>{i.current.unMounted=e},clearElementStore:()=>{for(const e in i.current.elementStore)i.current.elementStore[e]=null},clearRecordsMap:()=>{i.current.recordsMap.clear()}}})(n,{getRowKey:k,$size:C}),{tableFlatData:ae,setTableFlatData:ie,filters:le,setFilters:oe,sorter:ce,setSorter:de,superFilters:ue,setSuperFilters:pe,pagination:he,setPagination:fe,selectionKeys:ge,setSelectionKeys:ye,rowExpandedKeys:be,setRowExpandedKeys:ve,highlightKey:we,setHighlightKey:Ce,updateMark:Se,forceUpdate:Ne,activedCell:Ie,setActivedCell:Te,mergedTdCells:Re,setMergedCells:Oe,layout:ke,setLayout:Pe,permission:Le,setPermission:Ae,spinning:_e,setSpinning:Fe,isPingLeft:De,setPingLeft:qe,isPingRight:$e,setPingRight:Me,isFullScreen:Ke,setFullScreen:ze,updateTableFlatData:je}=(e=>{const{uniqueKey:t,initialSorter:n={},initialFilter:r={},paginationConfig:a,rowSelection:i,expandable:s,rowHighlight:c,mergedCells:d}=e,{global:u}=l().useContext(o),m={current:a?.current??Qa.pagination.current,pageSize:(()=>{if(t)return Number(localStorage.getItem(`tablePager_${t}`))||void 0})()??a?.pageSize??u?.table?.pagination?.pageSize??Qa.pagination.pageSize,total:0},p=i?.selectedRowKeys??i?.defaultSelectedRowKeys??[],h=s?.expandedRowKeys??s?.defaultExpandedRowKeys??[],[f,g]=l().useState([]),[y,b]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),r),[v,x]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),n),[E,w]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),[]),[C,S]=l().useState(m),[N,I]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),p),[T,R]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),h),[O,k]=l().useState(c?.currentRowKey??""),[P,L]=l().useReducer((e=>e+1),0),[A,_]=l().useReducer(((e,t)=>(0,X.isEqual)(e,t)?e:t),{}),[F,D]=Ja([],{value:d}),[H,q]=l().useState({gutterWidth:0,tableWidth:0,tableBodyWidth:0,tableBodyHeight:0,viewportHeight:0,headerHeight:0,footerHeight:0,tableAutoHeight:0,tableFullHeight:0}),[$,M]=l().useState({export:!0,import:!0,print:!0}),[K,z]=l().useState(!1),[j,V]=l().useState(!1),[W,B]=l().useState(!1),[U,G]=l().useState(!1);return{tableFlatData:f,setTableFlatData:g,filters:y,setFilters:b,sorter:v,setSorter:x,superFilters:E,setSuperFilters:w,pagination:C,setPagination:S,selectionKeys:N,setSelectionKeys:I,rowExpandedKeys:T,setRowExpandedKeys:R,highlightKey:O,setHighlightKey:k,updateMark:P,forceUpdate:L,activedCell:A,setActivedCell:_,mergedTdCells:F,setMergedCells:D,layout:H,permission:$,setPermission:M,setLayout:q,spinning:K,setSpinning:z,isPingLeft:j,setPingLeft:V,isPingRight:W,setPingRight:B,isFullScreen:U,setFullScreen:G,updateTableFlatData:()=>g([...f])}})(n),{isFetch:Ve,isWebPagination:We,isScrollPagination:Be,showPagination:Ue,tableColumns:Ge,flattenColumns:Ye,editableColumns:Xe,summationColumns:Qe,leftFixedColumns:Ze,rightFixedColumns:Je,derivedMergeCells:et,treeExpandIndex:tt,showSummary:nt,showFooter:rt,isHeadGroup:at,bordered:it,isHeadSorter:lt,isHeadFilter:ot,isServiceSummation:st,isSelectCollection:ct,isTableImport:dt,isTableClipboard:ut,isSuperSearch:pt,isFastSearch:ht,isPivotGrid:ft,isGroupSummary:gt,isGroupSubtotal:yt,isTableEmpty:bt,summationRows:vt,fetchParams:xt}=ti(n,{getRowKey:k,tableRef:P,tableFullData:L,tableFlatData:ae,updateMark:Se,sorter:ce,filters:le,superFilters:ue,selectionKeys:ge,pagination:he,mergedTdCells:Re}),{createElementStore:Et,tableStyles:wt,getSpan:Ct,getStickyLeft:St,getStickyRight:Nt,scrollXToColumn:It,scrollYToRecord:Tt,calcTableHeight:Rt,resetTableScroll:Ot,doLayout:kt}=((e,t)=>{const{height:n,minHeight:r,maxHeight:a,ellipsis:i,showHeader:o,spanMethod:s}=e,{getRowKey:c,tableRef:d,topElementRef:u,tableElementRef:m,tableBodyRef:p,$size:h,tableColumns:f,flattenColumns:g,leftFixedColumns:y,derivedMergeCells:b,tableFlatData:v,layout:x,showFooter:E,showPagination:w,isFullScreen:C,setLayout:S,setElementStore:N}=t,I=l().useMemo((()=>{const{tableFullHeight:e,tableAutoHeight:t}=x,i={};return r&&Object.assign(i,{minHeight:`${Yn(r)}px`}),a&&Object.assign(i,{maxHeight:`${Yn(a)}px`}),C?{...i,maxHeight:"",minHeight:"",height:`${e}px`}:n?{...i,height:"auto"!==n?`${Yn(n)}px`:`${t}px`}:i}),[n,a,r,C,x]),T=(e,t)=>{const{scrollBarRef:n,scrollYLoad:r,rowHeight:a}=d.current;if(void 0!==t&&t>=0)if(t<v.length)if(r)p.current.scrollToYIndex(t);else{const e=R(c(v[t],v[t].index));e&&n.current.SET_SCROLL_TOP(e.offsetTop)}else n.current.SET_SCROLL_TOP(t*a);else if(r){const t=v.findIndex((t=>e===c(t,t.index)));t>=0&&p.current.scrollToYIndex(t)}else{const t=R(e);t&&n.current.SET_SCROLL_TOP(t.offsetTop)}},R=e=>d.current.elementStore.$tableBody.querySelector(`tbody > tr[data-row-key="${e}"]`);return{createElementStore:()=>{N("$toper",u.current),N("$table",m.current)},tableStyles:I,getSpan:(e,t,n,r,a)=>{let i=1,l=1;if("function"==typeof s){const o=s({row:e,column:t,rowIndex:n,columnIndex:r,tableData:a});Array.isArray(o)?(i=o[0],l=o[1]):(0,X.isPlainObject)(o)&&(i=o.rowSpan,l=o.colSpan)}if(b.length>0){const e=b.find((e=>e.row===n&&e.col===r));e&&(i=e.rowSpan,l=e.colSpan)}return{rowSpan:i,colSpan:l}},getStickyLeft:e=>{if(g.findIndex((t=>t.dataIndex===e))<0){const t=qn(f,e);e=t?$n(t).dataIndex:""}let t=0;for(let n=0;n<g.length;n++){const r=g[n];if(r.dataIndex===e)break;t+=r.width||r.renderWidth||0}return t},getStickyRight:(e,t)=>{if(g.findIndex((t=>t.dataIndex===e))<0){const t=qn(f,e);e=t?Mn(t).dataIndex:""}const n="thead"===t?(e=>{if(!e.some((e=>e.colSpan>0)))return e;const t=[];let n=[];return e.forEach((e=>{e.colSpan>0&&n.length>0&&(t.push(n),n=[]),n.push(e)})),n.length>0&&t.push(n),t.map((e=>{const[t,n]=e.reduce(((e,t)=>(t.colSpan>0?e[0].push(t):e[1].push(t),e)),[[],[]]);return[...n,...t.reverse()]})).flat()})(g):g;let r=0;for(let t=n.length-1;t>=0;t--){const a=n[t];if(a.dataIndex===e)break;r+=a.width||a.renderWidth||0}return r},scrollXToColumn:(e,t)=>{const n=void 0===t?g.findIndex((t=>t.dataIndex===e)):t;if(n<0)return;const{scrollBarRef:r}=d.current,a=y.reduce(((e,t)=>e+(t.width||t.renderWidth)),0),i=g.slice(0,n).reduce(((e,t)=>e+(t.width||t.renderWidth)),0);r.current.SET_SCROLL_LEFT(i-a)},scrollYToRecord:T,calcTableHeight:()=>{if("auto"!==n)return;const{elementStore:e,resizeState:t}=d.current;try{const n=t.winHeight-e.$table.getBoundingClientRect().top-(w?La["small"!==h?"middle":h]+Da:0)-Da;S((e=>Object.assign({},e,{tableAutoHeight:n})))}catch(e){}},resetTableScroll:()=>{T("",0)},doLayout:()=>{(()=>{const{elementStore:e,scrollXLoad:t}=d.current,n=e.$table.clientWidth,{defaultColumnWidth:r}=Qa,a=[];let i=0;if(g.forEach((e=>{"number"==typeof e.width?(e.renderWidth=e.width,i+=e.width):(e.renderWidth=void 0,a.push(e))})),a.length>0){const e=g.reduce(((e,t)=>e+(t.width||t.minWidth||r)),0);if(e<=n){const t=n-e;if(1===a.length)a[0].renderWidth=(a[0].minWidth||r)+t;else{const e=t/a.reduce(((e,t)=>e+(t.minWidth||r)),0);let n=0;a.forEach(((t,a)=>{if(0===a)return;const i=Math.floor((t.minWidth||r)*e);n+=i,t.renderWidth=(t.minWidth||r)+i})),a[0].renderWidth=(a[0].minWidth||r)+t-n}}else a.forEach((e=>{e.renderWidth=e.minWidth||r}));S((t=>({...t,tableBodyWidth:Math.max(e,n)})))}else i=g.reduce(((e,t)=>e+(t.renderWidth=t.width||t.minWidth||r)),0),S((e=>({...e,tableBodyWidth:i})));S((e=>({...e,tableWidth:n}))),t&&p.current.resetItemXSize(g)})(),re((()=>(()=>{const{elementStore:e,scrollYLoad:t,resizeState:n}=d.current;if(!e.$table.offsetParent)return;const r=e.$table.offsetHeight,a=o?e.$header.offsetHeight:x.headerHeight,i=E?e.$footer.offsetHeight:x.footerHeight,l=r-a-i,s=e.$tableBody.offsetHeight;let c=0;if(C){const t=e.$toper?e.$toper.offsetHeight+Da:0,r=e.$pager?e.$pager.offsetHeight+Da:0;c=n.winHeight-t-r-20}S((e=>Object.assign({},e,{headerHeight:a,footerHeight:i,viewportHeight:l,tableBodyHeight:s,tableFullHeight:c})))})()))}}})(n,{getRowKey:k,tableRef:P,topElementRef:S,tableElementRef:N,tableBodyRef:I,$size:C,tableColumns:Ge,flattenColumns:Ye,leftFixedColumns:Ze,derivedMergeCells:et,tableFlatData:ae,layout:ke,showFooter:rt,showPagination:Ue,isFullScreen:Ke,setLayout:Pe,setElementStore:A}),{initialTable:Pt,checkDataIndex:Lt,createTableFullData:At,getTableData:_t,createTableList:Ft,createTableData:Dt,createGroupData:Ht,setSelectionKeysEffect:qt,doFieldValidate:$t,getTableLog:Mt,dataChange:Kt,tableChange:zt,toLastPage:jt,toFirstPage:Vt,getPageCount:Wt,pagerChangeHandle:Bt,scrollBottomDebouncer:Ut,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearRowSelection:Qt,clearRowHighlight:Zt,clearTableLog:Jt,destroy:en}=ni(n,{getRowKey:k,tableRef:P,tableElementRef:N,tableBodyRef:I,$size:C,tableColumns:Ge,flattenColumns:Ye,tableFullData:L,pagination:he,layout:ke,filters:le,sorter:ce,superFilters:ue,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,summationColumns:Qe,isFetch:Ve,isWebPagination:We,isScrollPagination:Be,isServiceSummation:st,isGroupSubtotal:yt,doLayout:kt,setTableFlatData:ie,setTableFullData:F,setTableOriginData:D,setAllTableData:H,setDeriveRowKeys:q,setPagination:fe,setPingRight:Me,setPingLeft:qe,setSpinning:Fe,setSorter:de,setFilters:oe,setSuperFilters:pe,setSelectionKeys:ye,setRowExpandedKeys:ve,setHighlightKey:Ce,setSelectionRows:U,setScrollXLoad:z,setScrollYLoad:j,setFieldAuth:M,setResizeState:V,setSummaries:B,setPermission:Ae,setRecordsMap:Z,resetTableScroll:Ot,clearElementStore:ee,clearRecordsMap:te});((e,t)=>{const{columns:n,summation:r,rowSelection:a,expandable:i,rowHighlight:o}=e,{tableRef:s,tableBodyRef:c,$size:d,pagination:u,selectionKeys:m,rowExpandedKeys:p,highlightKey:h,summationRows:f,showSummary:g,isWebPagination:y,isScrollPagination:b,checkDataIndex:v,toLastPage:x,toFirstPage:E,getPageCount:w,setHandleState:C,scrollYToRecord:S,setSelectionKeysEffect:N,setOriginColumns:I,setRowExpandedKeys:T,setHighlightKey:R,setResizeState:O,setUnMounted:k,calcTableHeight:P,initialTable:L,destroy:A}=t,_=l().useRef(f);He((()=>{if(!a)return;const{onChange:e}=a;"radio"===a.type&&c.current.setClickedValues(m.length?[m[0],""]:[]),m.__prevent__||e?.(m,s.current.selectionRows),Un(m)}),[m]),He((()=>{if(!i)return;const{onChange:e}=i;p.__prevent__||e?.(p,p.map((e=>s.current.recordsMap.get(e)))),Un(p)}),[p]),He((()=>{o&&(c.current.setClickedValues(h?[h,""]:[]),o.onChange?.(h,s.current.recordsMap.get(h)??null))}),[h]),He((()=>{(0,X.isEqual)(f,_.current)||(_.current=f,g&&r&&r.onChange?.(f))}),[f]),He((()=>{const e=a.selectedRowKeys||[];(0,X.isEqual)(e,m)||N(Bn(e))}),[a?.selectedRowKeys]),He((()=>{const e=i.expandedRowKeys||[];(0,X.isEqual)(e,p)||T(Bn(e))}),[i?.expandedRowKeys]),He((()=>{const{currentRowKey:e}=o;e!==h&&R(e??"")}),[o?.currentRowKey]),He((()=>{const{insert:e,remove:t}=s.current.handleState;e&&(y&&("after"===e?x():E()),S("","after"===e?1e5:0)),t&&u.current>w()&&x(),(e||t)&&C({insert:null,remove:!1})}),[u.total]),He((()=>{P()}),[d]),He((()=>{(s.current.scrollYLoad||b)&&(e.height||e.maxHeight||me("Table","必须设置组件参数 `height` 或 `maxHeight`"))}),[s.current.scrollYLoad,b]),ri({handler:()=>{const{resizeState:e}=s.current,{winHeight:t}=e,n=window.innerHeight;n!==t&&(O(Object.assign({},e,{winHeight:n})),P())},delay:16}),l().useEffect((()=>(I(se(n)),L(),v(),re((()=>P())),()=>{A(),k(!0)})),[])})(n,{tableRef:P,tableBodyRef:I,$size:C,pagination:he,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,showSummary:nt,summationRows:vt,isWebPagination:We,isScrollPagination:Be,checkDataIndex:Lt,toLastPage:jt,toFirstPage:Vt,getPageCount:Wt,setHandleState:W,scrollYToRecord:Tt,setOriginColumns:_,setSelectionKeysEffect:qt,setRowExpandedKeys:ve,setHighlightKey:Ce,setResizeState:V,setUnMounted:J,calcTableHeight:Rt,initialTable:Pt,destroy:en});const tn=l().useMemo((()=>({getRowKey:k,tableRef:P,tableBodyRef:I,prefixCls:O,$size:C,tableFlatData:ae,flattenColumns:Ye,editableColumns:Xe,leftFixedColumns:Ze,rightFixedColumns:Je,treeExpandIndex:tt,sorter:ce,filters:le,superFilters:ue,layout:ke,bordered:it,showFooter:rt,showSummary:nt,summationRows:vt,pagination:he,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,activedCell:Ie,mergedTdCells:Re,derivedMergeCells:et,updateMark:Se,isFetch:Ve,isPingLeft:De,isPingRight:$e,isHeadSorter:lt,isHeadFilter:ot,isFullScreen:Ke,isTableEmpty:bt,isHeadGroup:at,isGroupSubtotal:yt,isWebPagination:We,dataChange:Kt,tableChange:zt,getTableData:_t,setElementStore:A,createTableList:Ft,createTableFullData:At,updateTableFlatData:je,setSorter:de,setFilters:oe,setSuperFilters:pe,setHighlightKey:Ce,setRowExpandedKeys:ve,setSelectionRows:U,setSelectionKeysEffect:qt,setInvalidRowKeys:$,setActivedCell:Te,setMergedCells:Oe,getSpan:Ct,getStickyLeft:St,getStickyRight:Nt,scrollXToColumn:It,scrollYToRecord:Tt,setPagination:fe,setPingLeft:qe,setPingRight:Me,setSpinning:Fe,setFullScreen:ze,doFieldValidate:$t,createTableData:Dt,createGroupData:Ht,scrollBottomDebouncer:Ut,resetTableScroll:Ot,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearRowSelection:Qt,clearRowHighlight:Zt})),[C,ae,Ye,ce,le,ue,ke,it,rt,nt,vt,he,xt,ge,be,we,Ie,et,Se,Ve,De,$e,lt,ot,Ke,bt,at,yt,We]);((e,t)=>{const{getRowKey:n,tableRef:r,toolBoxRef:a,tableBodyRef:i,columnFilterRef:o,flattenColumns:s,editableColumns:c,pagination:d,fetchParams:u,selectionKeys:m,rowExpandedKeys:p,highlightKey:h,isFetch:f,dataChange:g,getTableData:y,createTableData:b,createTableFullData:v,calcTableHeight:x,scrollXToColumn:E,scrollYToRecord:w,doFieldValidate:C,setTableOriginData:S,setHandleState:N,setColumnsDefined:I,setSelectionKeysEffect:T,setRowExpandedKeys:R,setHighlightKey:O,setSelectionRows:k,setOriginColumns:P,forceUpdate:L,getTableLog:A,clearRowSelection:_,clearRowHighlight:F,clearTableSorter:D,clearTableFilter:H,clearSuperFilters:q,clearTableLog:$}=t,{columns:M,columnsChange:K}=r.current.props,z=(e,t,r)=>e.filter((e=>{const a=n(e,e.index);e.children&&(e.children=z(e.children,t,r));const i=t.includes(a);return i&&r?.(e,a),!i}));l().useImperativeHandle(e,(()=>({CALCULATE_HEIGHT:()=>{x()},DO_REFRESH:async e=>{f&&(await ne(0),await y(),e?.())},GET_LOG:()=>A(),GET_FETCH_PARAMS:()=>{const e={};for(const t in u)Object.keys(d).includes(t)||(e[t]=u[t]);return e},CLEAR_TABLE_DATA:()=>{f||(_(),F(),D(),H(),q(),$(),b([]))},CLEAR_LOG:()=>{$(),L()},CREATE_FOCUS:(e,t)=>{i.current.createFocus(e,t)},FORCE_UPDATE:()=>{L()},DO_EXPORT:()=>{a.current.exportHandle()},SCROLL_TO_RECORD:e=>{w(e)},SCROLL_TO_COLUMN:e=>{E(e)},SET_SELECTION:(e,t)=>{T(t?Bn([...e]):e)},SET_EXPANDABLE:(e,t)=>{R(t?Bn([...e]):e)},SET_HIGHLIGHT:e=>{O(e)},SET_SELECTION_ROWS:e=>{k(e)},SET_TABLE_DATA:e=>{v(e)},DEFINE_INITIAL_COLUMNS:e=>{P(e),I(!0),o.current.initialHandler()},SET_TABLE_COLUMN:(e,t,n)=>{const r=qn(M,e);if(!r)return me("Table","SET_TABLE_COLUMN 方法参数 `dataIndex` 的值不正确");if(!(0,X.isPlainObject)(t))return me("Table","SET_TABLE_COLUMN 方法参数 `option` 的值不正确");if(r.noAuth)return me("Table","SET_TABLE_COLUMN 方法不能操作受权限控制的列");for(const e in t)e&&(0,X.set)(r,e,t[e]);n&&(K?K([...M]):me("Table","需要设置 `columnsChange` 参数"),L())},INSERT_RECORDS:(e,t)=>{const{store:a,tableFullData:i}=r.current,l=(Array.isArray(e)?e:[e]).filter((e=>(0,X.isPlainObject)(e)));if(!l.length)return;l.forEach((e=>{s.forEach((t=>{const{dataIndex:n}=t;[Qa.expandableColumn,Qa.selectionColumn,Qa.operationColumn].includes(n)||Zn(e,n,Qn(e,n))})),a.addToInserted(e)}));const o="before"===t?.mode,c=void 0===t?.parentRowKey,d=i;if(c)o?d.unshift(...l):d.push(...l);else{const e=pr(i,(e=>t.parentRowKey===n(e,e.index)));e&&(Array.isArray(e.children)?o?e.children.unshift(...l):e.children.push(...l):e.children=l)}c&&N(Object.assign({},r.current.handleState,{insert:o?"before":"after"})),b(d),g()},REMOVE_RECORDS:e=>{const{store:t,tableFullData:a}=r.current,i=(Array.isArray(e)?e:[e]).map((e=>(0,X.isPlainObject)(e)?n(e,e.index):e));if(!i.length)return;let l=!1;const o=z(a,i,((e,n)=>{t.addToRemoved(e),c.forEach((r=>{const{dataIndex:a,editRender:i}=r,l=i?.(e,r);if(!l)return;const{rules:o=[],disabled:s}=l;!s&&o.length&&(t.removeFromRequired({x:n,y:a}),t.removeFromValidate({x:n,y:a}),t.removeFromEdited({x:n,y:a}))})),l=!0}));l&&(N(Object.assign({},r.current.handleState,{remove:!0})),v(o),T(m.filter((e=>!i.includes(e)))),i.includes(h)&&F(),R(p.filter((e=>!i.includes(e)))),g(),re((()=>{S(z(r.current.tableOriginData,i))})))},VALIDATE_FIELDS:(e,t)=>{r.current.allTableData.forEach((r=>{c.forEach((a=>{const{dataIndex:i,title:l,editRender:o}=a,s=o?.(r,a);if(!s)return;const c=n(r,r.index);if(e&&!e.includes(c))return;if(t&&!t.includes(i))return;const{rules:d=[],disabled:u}=s;u||C(d,Qn(r,i),c,i,or(l))}))}));const{required:a,validate:i}=A(),l=[...a,...i];return l.length&&w(l[0].rowKey),L(),{required:a,validate:i}}})))})(t,{getRowKey:k,tableRef:P,toolBoxRef:T,tableBodyRef:I,columnFilterRef:R,flattenColumns:Ye,editableColumns:Xe,pagination:he,fetchParams:xt,selectionKeys:ge,rowExpandedKeys:be,highlightKey:we,isFetch:Ve,dataChange:Kt,getTableData:_t,createTableData:Dt,createTableFullData:At,calcTableHeight:Rt,scrollXToColumn:It,scrollYToRecord:Tt,doFieldValidate:$t,setTableOriginData:D,setHandleState:W,setColumnsDefined:K,setSelectionKeysEffect:qt,setRowExpandedKeys:ve,setHighlightKey:Ce,setSelectionRows:U,setOriginColumns:_,forceUpdate:Ne,getTableLog:Mt,clearRowSelection:Qt,clearRowHighlight:Zt,clearTableSorter:Gt,clearTableFilter:Yt,clearSuperFilters:Xt,clearTableLog:Jt}),l().useLayoutEffect((()=>{Et(),P.current.tableManager.register(P.current.uid,t??{current:null})}),[]);const nn={[`${O}--wrapper`]:!0,[`${O}--lg`]:"large"===C,[`${O}--sm`]:"small"===C,[`${O}--maximize`]:Ke,[c]:!!c},rn={[O]:!0,"is--border":it,"is--fixed":Ze.length||Je.length,"is--sortable":lt,"is--filterable":ot,"is--head-group":at,"is--area-select":!!d,"is--ping-left":De,"is--ping-right":$e};return l().createElement(Aa.Provider,{value:tn},l().createElement("div",{className:xe()(nn,E),style:w},g&&l().createElement("div",{ref:S,className:`${O}-top`},l().createElement("div",{className:`${O}-top__space`},"bottom"!==p?.position&&l().createElement(ai,{total:he.total}),l().createElement("div",{className:`${O}-top__space-slot`,style:{justifyContent:ja[f]}},n.children)),l().createElement("div",{className:`${O}-top__actions`},l().createElement(To,{ref:T,showFullScreen:y,showReload:b&&Ve,showPrint:Le.print&&!!u,showImport:Le.import&&dt,showExport:Le.export&&!!m,showClipboard:ut,showCollection:ct,showFastSearch:ht,showSuperSearch:pt,showPivotGrid:ft,showGroupSummary:gt,showToolBox:v,tableColumns:Ge}),l().createElement(ko,{ref:R,columns:a}))),l().createElement(mt,{spinning:i??_e},l().createElement("div",{ref:N,className:xe()(rn),style:wt},l().createElement("div",{className:`${O}--main-wrapper`},x&&l().createElement(Yo,{tableColumns:Ge}),l().createElement(Ts,{ref:I}),rt&&l().createElement(Rs,null)),it&&l().createElement("div",{className:`${O}--border-line`}),bt&&l().createElement(Ps,null),s&&l().createElement(Ls,null))),Ue&&l().createElement(ks,As({},he,{onChange:(e,t)=>Bt({current:e,pageSize:t})}))))}));_s.displayName="QmTable";const Fs=_s,Ds=Fs;function Hs(){return Hs=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hs.apply(null,arguments)}const qs=e=>{const{uniqueKey:t,multiple:n,initialValue:r,selectionRows:a,defaultSelectedKeys:i=[],filters:o=[],table:s={},className:c,style:d,onClose:u}=e,{$size:m}=Y(e),{t:p}=U(),h=l().useRef(null),g=l().useRef(null),y=l().useRef(null),b=xt(h),[v,x]=l().useState(s),[E,w]=l().useState(),[C,S]=l().useState(i),[N,I]=l().useState(!1),[T,R]=l().useState(300),[O,k]=l().useState(o),[P,L]=l().useState([{title:p("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},...s.columns||[]]),[A,_]=l().useState((0,X.merge)({},s.fetch?.params,r)),[F,D]=l().useState([]),H=()=>{const e=h.current,t=e.querySelector(".form-wrap");R(e.offsetHeight-t.offsetHeight-2*La[m]-30)},q=Et(H,5);f((()=>{q()}),[b.width]),He((()=>{(0,X.isEqual)(o,O)||k(o)}),[o]),l().useEffect((()=>{$()}),[A]),l().useEffect((()=>{a&&y.current.SET_SELECTION_ROWS(a)}),[a]),l().useEffect((()=>{r&&g.current?.SET_FIELDS_VALUE(r)}),[]);const $=async()=>{const{webPagination:e,fetch:t}=v;if(!e||!t?.api)return;const{api:r,dataKey:a,beforeFetch:i=te}=t;if(i(A)){I(!0);try{const e=await r(A);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[];n||(S([]),await ne(0)),D(t)}}catch(e){}I(!1)}},M=e=>{n||(w(e),u(e))},K=e=>{_(Object.assign({},A,e))},z=Ee("search-helper"),j={[`${z}--wrapper`]:!0},V=v.webPagination?{dataSource:F,loading:N,webPagination:!0}:{fetch:{...v.fetch,params:A}};return l().createElement("div",{ref:h,className:xe()(j,c),style:d},l().createElement("div",{className:"form-wrap"},O.length?l().createElement(_u,{ref:g,items:O,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>k(e),onCollapse:()=>H(),onFinish:e=>K(e),onReset:async()=>{const[e,t]=await g.current.GET_FORM_DATA();e||K(t)}}):null),l().createElement("div",null,l().createElement(Ds,Hs({ref:y,uniqueKey:t,height:T,columns:P,rowKey:v.rowKey||"pageIndex"},V,{rowSelection:{type:n?"checkbox":"radio",clearableAfterFetched:!n,selectFirstRowOnChange:!0,selectAllOnCurrentPage:!0,selectedRowKeys:C,onChange:(e,t)=>{S(e),w(n?t:t[0])}},topSpaceAlign:"left",paginationConfig:v.paginationConfig,columnsChange:e=>L(e),onRowDblclick:M,onRowEnter:M}),v.topBarExtra)),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[m]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>u(null),style:{marginRight:8}},p("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!E,onClick:()=>u(E,n?C:void 0)},p("qm.dialog.confirm"))))};qs.displayName="QmSearchHelper";const $s=qs;function Ms(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const{Search:Ks}=R.Input;class zs extends i.Component{constructor(e){super(e),Ms(this,"context",void 0),Ms(this,"deriveParams",void 0),Ms(this,"valueKey",void 0),Ms(this,"_is_change",!1),Ms(this,"_record",void 0),Ms(this,"_prevValue",null),Ms(this,"state",{visible:!1,loading:!1}),Ms(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),Ms(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),Ms(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),Ms(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e}=this.props.option,{fieldAliasMap:t,fieldsDefine:n,echoRequest:r}=this.searchHelper;if(t||me("Form","SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),n){const e=["valueKey","displayKey","extraKey"];for(const t in n)e.includes(t)&&(this[t]=n[t])}Object.keys(this.alias).includes(e)||me("Form","SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),r&&!this.valueKey&&me("Form","SEARCH_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),Ms(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),Ms(this,"getDerivedSearchHelper",(()=>this.searchHelper)),Ms(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d)){this.setState({loading:!0});try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e),this.searchHelperChangeHandle(e)}a?.([t])}}}catch(e){}this.setState({loading:!1})}})),Ms(this,"todoOpen",(e=>{const{autoQueryAssign:t=!0}=this.searchHelper;t&&(this.deriveParams=this.createFilters(e)),this.setVisible(!0)})),Ms(this,"createFilters",(e=>{const{fieldName:t}=this.props.option,{filterAliasMap:n}=this.searchHelper,r=""!==e?e:void 0,a=("function"==typeof n?n():n)||[],i={[t]:r};return(Array.isArray(a)?a:[a]).forEach((e=>{if((0,X.isPlainObject)(e))for(const t in e)i[t]="function"==typeof e[t]?e[t](r):r;else i[e]=r})),i})),Ms(this,"getSearchHelperTableData",(e=>{const{table:t,initialValue:n={}}=this.searchHelper,{beforeFetch:r=te,formatter:a=e=>e}=t.fetch;return new Promise((async(i,l)=>{const o=(0,X.merge)({},this.searchHelper.table.fetch.params,{...n,...a(this.createFilters(e))},{currentPage:1,pageSize:500});if(!r(o))return l();this.setState({loading:!0});try{const e=await t.fetch.api(o);200===e.code?i(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[]):l()}catch(e){l(e)}finally{re((()=>this.setState({loading:!1})))}}))})),Ms(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;for(const r in this.alias){const a=Fr(e,this.alias[r]);void 0!==a&&(t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a))}for(const n in this.extras){const r=Fr(e,this.extras[n]);void 0!==r&&t.SET_FIELDS_EXTRA({[n]:r})}})),Ms(this,"resetSearchHelperValue",(async(e=[],t)=>{const{fieldName:n}=this.props.option,r=e.filter((e=>Fr(e,this.alias[n])?.toString().toLowerCase().includes(t.toLowerCase())));if(1===r.length)return this.closeSearchHelper(r[0]);this.openSearchHelper(t)})),Ms(this,"openSearchHelper",(async(e,t)=>{await this.props.waiting();const{$$form:n}=this.context,{beforeOpen:r}=this.searchHelper,a=(r??te)(n.state.formData);a?.then?a.then((()=>{this.todoOpen(e),t?.()})).catch((()=>{})):!1!==a&&(this.todoOpen(e),t?.())})),Ms(this,"closeSearchHelper",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){if(r===n)continue;const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])});const r=Fr(e,this.alias[n]);this.triggerChange(r),this.searchHelperChangeHandle(r);const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(e)),200)}))})),Ms(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)})),Ms(this,"clearSearchHelperValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;if(this.triggerChange(""),null!==this._record){for(const n in this.alias)n!==t&&(e.SET_FIELDS_VALUE({[n]:void 0}),n===this.valueKey&&(this._prevValue=null));for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.searchHelperChangeHandle("")}})),Ms(this,"searchHelperChangeHandle",(e=>{const{onChange:t}=this.props.option;this.deriveParams={},this._is_change=!1,t?.(e,this._record)})),Ms(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e)})),Ms(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),Ms(this,"focus",(()=>{const{type:e}=this.props.option;this[`${e}_Ref`].focus({cursor:"end"})})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(){this.echoSearchHelper()}render(){const{$$form:e}=this.context,{visible:t,loading:n}=this.state,{value:r}=this.props,{type:a,fieldName:i,options:o={},searchHelper:s={},style:c={},placeholder:d=p("qm.form.inputPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:h,disabled:f}=this.props.option,{prefix:g,suffix:y,maxLength:b}=o,v={visible:t,title:p("qm.searchHelper.text"),width:s.width??"60%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},x={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:Object.assign({},this.deriveParams,s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}};return e.isOnlyShow?l().createElement(ea,{value:r,bordered:u}):l().createElement(l().Fragment,null,l().createElement(Ks,{ref:e=>this[`${a}_Ref`]=e,value:r,title:r,loading:n,placeholder:d,style:c,prefix:g,suffix:y,maxLength:b,bordered:u,allowClear:m,readOnly:h,disabled:f,onBlur:e=>{const{value:n}=e.target,{onlySelect:r=!0,table:a}=this.searchHelper;this.triggerBlur(n),this._is_change&&!t&&(n?r?a?.fetch?.api&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e,n))).catch((()=>this.clearSearchHelperValue())):this.searchHelperChangeHandle(n):this.clearSearchHelperValue())},onKeyDown:e=>{if(13===e.keyCode){e.preventDefault();const{value:n}=e.target;!t&&this.openSearchHelper(n)}},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"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper(e):re((()=>this.clearSearchHelperValue())))}}),l().createElement(yn,v,l().createElement($s,x)))}}Ms(zs,"contextType",xn);class js extends i.Component{constructor(e,{$$form:t}){super(e),Ms(this,"context",void 0),Ms(this,"promiseRef",void 0),Ms(this,"searchRef",void 0),Ms(this,"state",{searchHelper:{}}),Ms(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),Ms(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[]}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(zs,{ref:e=>this.searchRef=e,option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t="")=>{e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Ms(js,"contextType",xn);const Vs=js;function Ws(){return Ws=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ws.apply(null,arguments)}function Bs(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Us=e=>{class t extends i.Component{constructor(...e){super(...e),Bs(this,"startClick",void 0),Bs(this,"event1",null),Bs(this,"event2",null),Bs(this,"$el",null),Bs(this,"omitClassNames",[]),Bs(this,"state",{clickOutside:!1}),Bs(this,"mousedownHandler",(e=>{this.startClick=e})),Bs(this,"mouseupHandler",(e=>{this.documentHandler(e,this.startClick)})),Bs(this,"documentHandler",((e,t)=>{const n=e.target,r=t?.target,a=!n||!r,i=this.$el?.contains(n)||this.$el?.contains(r),l=this.$el===n,o=this.omitClassNames.map((e=>Array.from(document.querySelectorAll(e)))).flat(),s=o.some((e=>e?.contains(n)))||o.includes(r);let c;c=!(a||i||l||s),this.setState({clickOutside:c})})),Bs(this,"setCurrentElement",(e=>{e&&(this.$el=e)})),Bs(this,"setOmitClassNames",((e=[])=>{this.omitClassNames=e}))}componentDidMount(){this.event1=Ut()(document,"mousedown",this.mousedownHandler),this.event2=Ut()(document,"mouseup",this.mouseupHandler)}componentWillUnmount(){this.event1?.remove(),this.event2?.remove()}render(){const{forwardedRef:t}=this.props,{clickOutside:n}=this.state;return l().createElement(e,Ws({ref:t},this.props,{clickOutside:n,setCurrentElement:this.setCurrentElement,setOmitClassNames:this.setOmitClassNames}))}}return Bs(t,"displayName",`OutsideClick(${e.displayName||e.name})`),l().forwardRef(((e,n)=>l().createElement(t,Ws({},e,{forwardedRef:n}))))};var Gs,Ys;function Xs(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let Qs=Us((Ys=class extends i.Component{constructor(e){super(e),Xs(this,"context",void 0),Xs(this,"searchRef",l().createRef()),Xs(this,"_records",[]),Xs(this,"state",{visible:!1,visible2:!1,loading:!1,itemList:[]}),Xs(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),Xs(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","MULTIPLE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","MULTIPLE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),Xs(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),Xs(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),Xs(this,"setItemList",(e=>{this.setState({itemList:e})})),Xs(this,"setRecords",(e=>{this._records=e})),Xs(this,"recordsToDict",(()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))))),Xs(this,"setViewValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;t.setViewValue(n,this.createViewText(e))})),Xs(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),Xs(this,"closeSearchHelper",((e,t=[])=>{const{valueKey:n}=this.alias;this.setRecords((0,X.uniqBy)([...this._records.filter((e=>t.includes(e[n]))),...e],n));const r=this.recordsToDict();this.setItemList(r),this.triggerChange(r.map((e=>e.value)));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),Xs(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),t?.(e),n(e,this.createViewText(e),this._records)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:n=[]}=e,{value:r=[],clickOutside:a}=this.props;(0,X.isEqual)(n,r)||(0,X.isEqual)(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),a&&t.visible2&&this.setState({visible2:!1})}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,callback:l,fieldAliasMap:o}=this.searchHelper.echoRequest||this.props.option.searchHelper?.request||{},s="function"==typeof o?o():o||{},{value:c}=this.props;if(n){if(ie(c))return this.setRecords([]);this.setState({loading:!0});try{const o=await n(a({...r,keys:c}));if(200===o.code){let n=Array.isArray(o.data)?o.data:(0,X.get)(o.data,i)??[];n.forEach((n=>{s?.valueKey&&s.valueKey!==t&&(n[t]=n[s.valueKey]),s?.textKey&&s.textKey!==e&&(n[e]=n[s.textKey])})),n=n.filter((e=>c.includes(e[t])));const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setViewValue(c),l?.(n)}}catch(e){}this.setState({loading:!1})}}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){const{$$form:e}=this.context,{visible:t,visible2:n,loading:r,itemList:a}=this.state,{value:i}=this.props,{fieldName:o,options:s={},searchHelper:c={},style:d={},placeholder:u=p("qm.form.selectPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{collapseTags:y,maxTagTextLength:b}=s,v={visible:t,title:p("qm.searchHelper.text"),width:c.width??"60%",wrapClassName:`form-popper__${o}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,multiple:!0,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${o}`:"",initialValue:(0,X.merge)({},c.initialValue),defaultSelectedKeys:i,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}},E=a.filter((e=>i?.includes(e.value))),w=l().createElement("ul",{className:"ant-dropdown-menu"},E.length?E.map((e=>l().createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):l().createElement("li",{className:"ant-dropdown-menu-item"},p("qm.table.config.emptyText"))),C=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=Ee("form-multiple-search-helper"),{size:N}=e.context,I={[S]:!0,[`${S}--lg`]:"large"===N,[`${S}--sm`]:"small"===N};this.props.setOmitClassNames?.([`.${S}`]);const T=a.filter((e=>i?.includes(e.value))).map((e=>e.text)).join(",");return e.isOnlyShow?l().createElement(ea,{value:T,bordered:m}):l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},l().createElement(Ri(),{popupVisible:!g&&n,popup:w,popupClassName:xe()(I),popupStyle:{minWidth:C},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement(R.Select,{mode:"multiple",maxTagCount:y?"responsive":void 0,maxTagTextLength:b,open:!1,value:i,placeholder:u,loading:r,bordered:m,allowClear:h,disabled:g,style:{width:"100%",...d},title:T,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{const t=e.target;t.classList.contains("ant-select-selection-overflow-item-rest")&&(this.props.setCurrentElement?.(t),this.setState({visible2:!0}))},onDoubleClick:()=>{g||this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},a.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:g,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),l().createElement(yn,v,l().createElement($s,x)))}},Xs(Ys,"contextType",xn),Gs=Ys))||Gs;class Zs extends i.Component{constructor(e,{$$form:t}){super(e),Xs(this,"context",void 0),Xs(this,"promiseRef",void 0),Xs(this,"state",{searchHelper:{}}),Xs(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),Xs(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Qs,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{f(t,r),e.setViewValue(i,n)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Xs(Zs,"contextType",xn);const Js=Zs;function ec(){return ec=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ec.apply(null,arguments)}const tc=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...tc(e.children)),e.children&&t.push(e.value)})),t},nc=(e,t)=>{let n=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(n=nc(e[r].children,t)),n)return n;if(t(e[r]))return e[r]}return n},rc=(e,t)=>e.map((e=>({...e}))).filter((e=>(e.children=e.children&&rc(e.children,t),t(e)||e.children&&e.children.length))),ac=e=>{const{uniqueKey:t,multiple:n,initialValue:r,selectionRows:a,defaultSelectedKeys:i=[],filters:o=[],table:s={},tree:c={},className:d,style:u,onClose:m}=e,{$size:p}=Y(e),{t:h}=U(),g=l().useRef(null),y=l().useRef(null),b=l().useRef(null),v=xt(g),[x,E]=l().useState(s),[w,C]=l().useState(),[S,N]=l().useState(i),[I,T]=l().useState(!1),[O,k]=l().useState(300),[P,L]=l().useState(300),[A,_]=l().useState(o),[F,D]=l().useState([{title:h("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},...s.columns||[]]),[H,q]=l().useState((0,X.merge)({},s.fetch?.params,r)),[$,M]=l().useState([]),K=()=>{const e=g.current,t=e.querySelector(".form-wrap"),n=e.querySelector(".input-wrap");k(e.offsetHeight-n.offsetHeight-10),L(e.offsetHeight-t.offsetHeight-2*La[p]-30)},z=Et(K,5);f((()=>{z()}),[v.width]),He((()=>{(0,X.isEqual)(o,A)||_(o)}),[o]),l().useEffect((()=>{j()}),[H]),l().useEffect((()=>{a&&b.current.SET_SELECTION_ROWS(a)}),[a]),l().useEffect((()=>{r&&y.current?.SET_FIELDS_VALUE(r),ie()}),[]);const j=async()=>{const{webPagination:e,fetch:t}=x;if(!e||!t?.api)return;const{api:r,dataKey:a,beforeFetch:i=te}=t;if(i(H)){T(!0);try{const e=await r(H);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[];n||(N([]),await ne(0)),M(t)}}catch(e){}T(!1)}},V=e=>{n||(C(e),m(e))},W=e=>{q(Object.assign({},H,e))},[B,G]=l().useState([]),[Q,Z]=l().useState([]),[J,ee]=l().useState(""),re=l().useRef(B),ae=l().useRef([]);He((()=>{Z(tc(B))}),[B]);const ie=async()=>{if(!c.fetch)return;const{api:e,params:t,dataKey:n,valueKey:r="value",textKey:a="text"}=c.fetch;try{const i=await e(t);if(200===i.code){const e=Array.isArray(i.data)?i.data:(0,X.get)(i.data,n)??[],t=qr(e,r,a);G(t),re.current=t,ae.current=e}}catch(e){}},le=e=>`${e}|${Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,oe=Ee("tree-table-helper"),se={[`${oe}--wrapper`]:!0},ce=x.webPagination?{dataSource:$,loading:I,webPagination:!0}:{fetch:{...x.fetch,params:H}};return l().createElement("div",{ref:g,className:xe()(se,d),style:u},l().createElement(nt,{defaultValue:200,style:{height:"100%"}},l().createElement(nt.Pane,{min:100,style:{overflowY:"auto"}},l().createElement(R.Input,{className:"input-wrap",value:J,style:{marginBottom:8},placeholder:h("qm.form.inputPlaceholder"),suffix:l().createElement(we.SearchOutlined,null),allowClear:!0,onChange:e=>(e=>{const t=rc(re.current,(t=>{if(!e)return!0;const n=t.text||"";return-1!==le(n).indexOf(e)}));ee(e),G(t)})(e.target.value)}),l().createElement(R.Tree,{fieldNames:{title:"text",key:"value",children:"children"},height:O,defaultExpandAll:!0,expandedKeys:Q,treeData:B,filterTreeNode:e=>{if(!J)return!1;const t=e.text||"";return-1!==le(t).indexOf(J)},onExpand:e=>{Z(e)},onSelect:e=>{const{valueKey:t="value"}=c.fetch;(e=>{if(!c.tableParamsMap)return me("TreeTableHelper","需要配置 `tree.tableParamsMap` 选项");const t="function"==typeof c.tableParamsMap?c.tableParamsMap():c.tableParamsMap,n={};for(const r in t)n[r]=(0,X.get)(e,t[r]);W(n)})(nc(ae.current,(n=>(0,X.get)(n,t)===e[0]))||{})}})),l().createElement(nt.Pane,{className:"split-pane"},l().createElement("div",{className:"form-wrap"},A.length?l().createElement(_u,{ref:y,items:A,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>_(e),onCollapse:()=>K(),onFinish:e=>W(e),onReset:async()=>{const[e,t]=await y.current.GET_FORM_DATA();e||W(t)}}):null),l().createElement("div",null,l().createElement(Ds,ec({ref:b,uniqueKey:t,height:P,columns:F,rowKey:x.rowKey||"pageIndex"},ce,{rowSelection:{type:n?"checkbox":"radio",clearableAfterFetched:!n,selectFirstRowOnChange:!0,selectAllOnCurrentPage:!0,selectedRowKeys:S,onChange:(e,t)=>{N(e),C(n?t:t[0])}},topSpaceAlign:"left",paginationConfig:x.paginationConfig,columnsChange:e=>D(e),onRowDblclick:V,onRowEnter:V}),x.topBarExtra)))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[p]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>m(null),style:{marginRight:8}},h("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!w,onClick:()=>m(w,n?S:void 0)},h("qm.dialog.confirm"))))};ac.displayName="TreeTableHelper";const ic=ac;function lc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const{Search:oc}=R.Input;class sc extends i.Component{constructor(e){super(e),lc(this,"context",void 0),lc(this,"valueKey",void 0),lc(this,"_record",void 0),lc(this,"_prevValue",null),lc(this,"state",{visible:!1,loading:!1}),lc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),lc(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),lc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),lc(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e}=this.props.option,{fieldAliasMap:t,fieldsDefine:n,echoRequest:r}=this.searchHelper;if(t||me("Form","TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),n){const e=["valueKey","displayKey","extraKey"];for(const t in n)e.includes(t)&&(this[t]=n[t])}Object.keys(this.alias).includes(e)||me("Form","TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),r&&!this.valueKey&&me("Form","TREE_TABLE_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),lc(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),lc(this,"getDerivedSearchHelper",(()=>this.searchHelper)),lc(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d)){this.setState({loading:!0});try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e)}a?.([t])}}}catch(e){}this.setState({loading:!1})}})),lc(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;for(const r in this.alias){const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])})})),lc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),lc(this,"closeSearchHelper",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){if(r===n)continue;const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])});const r=Fr(e,this.alias[n]);this.triggerChange(r);const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(e)),200)}))})),lc(this,"clearSearchHelperValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;for(const n in this.alias)n!==t&&(e.SET_FIELDS_VALUE({[n]:void 0}),n===this.valueKey&&(this._prevValue=null));for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.triggerChange("")})),lc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this._record)})),lc(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(){this.echoSearchHelper()}render(){const{$$form:e}=this.context,{visible:t,loading:n}=this.state,{value:r=""}=this.props,{type:a,fieldName:i,options:o={},searchHelper:s={},style:c={},placeholder:d=p("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:h,disabled:f}=this.props.option,{prefix:g,suffix:y,maxLength:b}=o,v={visible:t,title:p("qm.searchHelper.text"),width:s.width??"65%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:(0,X.merge)({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.setVisible(!1)}};return e.isOnlyShow?l().createElement(ea,{value:r,bordered:u}):l().createElement(l().Fragment,null,l().createElement(oc,{ref:e=>this[`${a}_Ref`]=e,value:r,title:r,loading:n,placeholder:d,style:c,prefix:g,suffix:y,maxLength:b,bordered:u,allowClear:m,readOnly:h,disabled:f,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"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper():this.clearSearchHelperValue())}}),l().createElement(yn,v,l().createElement(ic,x)))}}lc(sc,"contextType",xn);class cc extends i.Component{constructor(e,{$$form:t}){super(e),lc(this,"context",void 0),lc(this,"promiseRef",void 0),lc(this,"state",{searchHelper:{}}),lc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),lc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(sc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n)=>{f(t,n),e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}lc(cc,"contextType",xn);const dc=cc;var uc,mc;function pc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}let hc=Us((mc=class extends i.Component{constructor(e){super(e),pc(this,"context",void 0),pc(this,"searchRef",l().createRef()),pc(this,"_records",[]),pc(this,"state",{visible:!1,visible2:!1,loading:!1,itemList:[]}),pc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),pc(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","MULTIPLE_TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","MULTIPLE_TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),pc(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),pc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),pc(this,"setItemList",(e=>{this.setState({itemList:e})})),pc(this,"setRecords",(e=>{this._records=e})),pc(this,"recordsToDict",(()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))))),pc(this,"setViewValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;t.setViewValue(n,this.createViewText(e))})),pc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),pc(this,"closeSearchHelper",((e,t=[])=>{const{valueKey:n}=this.alias;this.setRecords((0,X.uniqBy)([...this._records.filter((e=>t.includes(e[n]))),...e],n));const r=this.recordsToDict();this.setItemList(r),this.triggerChange(r.map((e=>e.value)));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),pc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),t?.(e),n(e,this.createViewText(e),this._records)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:n=[]}=e,{value:r=[],clickOutside:a}=this.props;(0,X.isEqual)(n,r)||(0,X.isEqual)(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),a&&t.visible2&&this.setState({visible2:!1})}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,fieldAliasMap:l}=this.searchHelper.echoRequest||this.props.option.searchHelper?.request||{},o="function"==typeof l?l():l||{},{value:s}=this.props;if(n){if(ie(s))return this.setRecords([]);this.setState({loading:!0});try{const l=await n(a({...r,keys:s}));if(200===l.code){let n=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];n.forEach((n=>{o?.valueKey&&o.valueKey!==t&&(n[t]=n[o.valueKey]),o?.textKey&&o.textKey!==e&&(n[e]=n[o.textKey])})),n=n.filter((e=>s.includes(e[t])));const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setViewValue(s)}}catch(e){}this.setState({loading:!1})}}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){const{$$form:e}=this.context,{visible:t,visible2:n,loading:r,itemList:a}=this.state,{value:i}=this.props,{fieldName:o,options:s={},searchHelper:c={},style:d={},placeholder:u=p("qm.form.selectPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{collapseTags:y,maxTagTextLength:b}=s,v={visible:t,title:p("qm.searchHelper.text"),width:c.width??"65%",wrapClassName:`form-popper__${o}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},x={...this.getDerivedSearchHelper(),size:e.$size,multiple:!0,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${o}`:"",initialValue:(0,X.merge)({},c.initialValue),defaultSelectedKeys:i,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}},E=a.filter((e=>i?.includes(e.value))),w=l().createElement("ul",{className:"ant-dropdown-menu"},E.length?E.map((e=>l().createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):l().createElement("li",{className:"ant-dropdown-menu-item"},p("qm.table.config.emptyText"))),C=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=Ee("form-multiple-tree-table-helper"),{size:N}=e.context,I={[S]:!0,[`${S}--lg`]:"large"===N,[`${S}--sm`]:"small"===N};this.props.setOmitClassNames?.([`.${S}`]);const T=a.filter((e=>i?.includes(e.value))).map((e=>e.text)).join(",");return e.isOnlyShow?l().createElement(ea,{value:T,bordered:m}):l().createElement(l().Fragment,null,l().createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},l().createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},l().createElement(Ri(),{popupVisible:!g&&n,popup:w,popupClassName:xe()(I),popupStyle:{minWidth:C},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement(R.Select,{mode:"multiple",maxTagCount:y?"responsive":void 0,maxTagTextLength:b,open:!1,value:i,placeholder:u,loading:r,bordered:m,allowClear:h,disabled:g,style:{width:"100%",...d},title:T,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{const t=e.target;t.classList.contains("ant-select-selection-overflow-item-rest")&&(this.props.setCurrentElement?.(t),this.setState({visible2:!0}))},onDoubleClick:()=>{g||this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},a.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",{className:"ant-input-group-addon"},l().createElement(R.Button,{className:"ant-input-search-button",disabled:g,icon:l().createElement(we.SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),l().createElement(yn,v,l().createElement(ic,x)))}},pc(mc,"contextType",xn),uc=mc))||uc;class fc extends i.Component{constructor(e,{$$form:t}){super(e),pc(this,"context",void 0),pc(this,"promiseRef",void 0),pc(this,"state",{searchHelper:{}}),pc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),pc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(hc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{f(t,r),e.setViewValue(i,n)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}pc(fc,"contextType",xn);const gc=fc;function yc(){return yc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},yc.apply(null,arguments)}const bc="_startSign",vc="_endSign",xc=e=>{const{uniqueKey:t,initialValue:n,filters:r=[],table:a={},onClose:i}=e,{$size:o}=Y(e),{t:s}=U(),c=l().useRef(null),d=l().useRef(null),u=l().useRef(null),m=xt(c),[p,h]=l().useState(a),[g,y]=l().useState(!1),[b,v]=l().useState([]),[x,E]=l().useState(300),[w,C]=l().useState(r),[S,N]=l().useState([{title:s("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>l().createElement("span",null,e+1)},{title:s("qm.form.rangeSearchHelper")[0],dataIndex:bc,width:80,align:"right",render:(e,t)=>l().createElement("span",{className:"icon-sign"},e)},...a.columns||[],{title:s("qm.form.rangeSearchHelper")[1],dataIndex:vc,fixed:"right",width:80,render:(e,t)=>l().createElement("span",{className:"icon-sign"},e)}]),[I,T]=l().useState((0,X.merge)({},a.fetch?.params,n)),[O,k]=l().useState([]),P=l().useMemo((()=>b.map((e=>e?.pageIndex))),[b]),L=l().useMemo((()=>2===P.length&&P.every((e=>void 0!==e))),[P]),A=()=>{const e=c.current.parentNode.children[0],t=e.querySelector(".form-wrap");E(e.offsetHeight-t.offsetHeight-2*La[o]-30)},_=Et(A,5);f((()=>{_()}),[m.width]),He((()=>{(0,X.isEqual)(r,w)||C(r)}),[r]),l().useEffect((()=>{F()}),[I]);const F=async()=>{const{webPagination:e,fetch:t}=p;if(!e||!t?.api)return;const{api:n,dataKey:r,beforeFetch:a=te}=t;if(a(I)){y(!0);try{const e=await n(I);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[];k(t)}}catch(e){}y(!1)}},D=(e,t)=>{delete e[t]},H=()=>{b.forEach((e=>{e&&(D(e,bc),D(e,vc))})),v([])},q=e=>{H(),T(Object.assign({},I,e))},$=Ee("range-helper"),M=p.webPagination?{dataSource:O,loading:g,webPagination:!0}:{fetch:{...p.fetch,params:I}};return l().createElement("div",{ref:c,className:`${$}--wrapper`},l().createElement("div",{className:"form-wrap"},w.length?l().createElement(_u,{ref:d,items:w,initialValues:n,uniqueKey:t,formType:"search",isAutoFocus:!1,fieldsChange:e=>C(e),onCollapse:()=>A(),onFinish:e=>q(e),onReset:async()=>{const[e,t]=await d.current.GET_FORM_DATA();e||q(t)}}):null),l().createElement("div",null,l().createElement(Ds,yc({ref:u,height:x,columns:S,rowKey:p.rowKey||"pageIndex",rowStyle:e=>e.pageIndex>=P[0]&&e.pageIndex<=P[1]?{backgroundColor:"#f5f5f5"}:{}},M,{columnsChange:e=>N(e),onRowClick:(e,t)=>{const{dataIndex:n}=t;[bc,vc].includes(n)&&(n===bc&&(e[n]?(D(e,n),v([void 0,b[1]])):e.pageIndex>P[1]?R.message.warning(s("qm.searchHelper.rangeStartTip")):(b[0]&&D(b[0],n),e[n]="[",v([e,b[1]]))),n===vc&&(e[n]?(D(e,n),v([b[0],void 0])):e.pageIndex<P[0]?R.message.warning(s("qm.searchHelper.rangeEndTip")):(b[1]&&D(b[1],n),e[n]="]",v([b[0],e]))),u.current.FORCE_UPDATE())},onDataLoad:e=>{e.forEach((e=>{e.pageIndex===P[0]&&(e[bc]="["),e.pageIndex===P[1]&&(e[vc]="]")}))}}),l().createElement(fe,{type:"primary",icon:l().createElement(we.ClearOutlined,null),title:s("qm.table.alert.clear"),onClick:()=>H()}))),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${La[o]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},l().createElement(fe,{onClick:()=>i(null),style:{marginRight:8}},s("qm.dialog.cancel")),l().createElement(fe,{type:"primary",disabled:!L,onClick:()=>i(b.map((e=>(e=>{const t={};for(const n in e)[bc,vc].includes(n)||(t[n]=e[n]);return t})(e))))},s("qm.dialog.confirm"))))};xc.displayName="RangeTableHelper";const Ec=xc;function wc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Cc=new Array(2).fill("");class Sc extends i.Component{constructor(e){super(e),wc(this,"context",void 0),wc(this,"_is_change",!1),wc(this,"_ceho_data",void 0),wc(this,"_records",[]),wc(this,"_is_clear",!1),wc(this,"state",{visible:!1,loading:!1,itemList:[],textValue:Cc}),wc(this,"getSearchHelper",vn()((e=>Object.assign({},this.props.helperConfig,e)))),wc(this,"initialHandle",(async()=>{await this.props.waiting(),this.searchHelper.fieldAliasMap||me("Form","RANGE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||me("Form","RANGE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),wc(this,"getDerivedSearchHelper",(()=>(this.searchHelper.table&&!this.searchHelper.table.rowKey&&(this.searchHelper.table.rowKey=this.alias.valueKey),this.searchHelper))),wc(this,"setItemList",(e=>{this.setState({itemList:e})})),wc(this,"setVisible",((e,t)=>{this.setState({visible:e},t)})),wc(this,"setTextValue",(e=>{this.setState({textValue:e})})),wc(this,"setRecords",(e=>{this._records=e})),wc(this,"setViewValue",(()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;e.setViewValue(t,this.createViewText())})),wc(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;this._is_change=!1,t?.(e),n(e,this.createViewText(),this._records)})),wc(this,"clearSearchHelperValue",(()=>{this.setRecords([]),this.setTextValue(Cc),this.triggerChange([])})),wc(this,"closeSearchHelper",(e=>{const{valueKey:t,textKey:n}=this.alias,r=e.map((e=>({value:e[t],text:e[n]})));this.setRecords(e),this.setItemList(r),this.setTextValue(r.map((e=>e.text??""))),this.triggerChange(e.map((e=>e[t])));const{closed:a}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>a?.(this._records)),200)}))})),wc(this,"openSearchHelper",(async e=>{await this.props.waiting();const{$$form:t}=this.context,{beforeOpen:n}=this.searchHelper,r=(n??te)(t.state.formData);r?.then?r.then((()=>{this.setVisible(!0),e?.()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),e?.())})),wc(this,"createFilters",(e=>{const{fieldName:t}=this.props.option,n=ie(e)?void 0:e;return{[t]:n}})),wc(this,"getSearchHelperTableData",(e=>{const{table:t,initialValue:n={}}=this.searchHelper,{beforeFetch:r=te,formatter:a=e=>e}=t.fetch;return new Promise((async(i,l)=>{const o=(0,X.merge)({},this.searchHelper.table.fetch.params,{...n,...a(this.createFilters(e))},{currentPage:1,pageSize:500});try{if(!r(o))return l();this.setState({loading:!0});const e=await t.fetch.api(o);if(re((()=>this.setState({loading:!1}))),200===e.code)return i(Array.isArray(e.data)?e.data:(0,X.get)(e.data,t.fetch.dataKey)??[])}catch(e){this.setState({loading:!1})}l()}))})),wc(this,"resetSearchHelperValue",(async(e=[])=>{const{textValue:t}=this.state,{textKey:n}=this.alias,r=e.filter((e=>{const r=e[n]?.toString().toLowerCase();return t.some((e=>r?.includes(e.toLowerCase())))}));if(2===r.length)return this.closeSearchHelper(r);this.openSearchHelper()})),wc(this,"closeButNotSelect",(()=>{this._is_change&&this.clearSearchHelperValue(),this.setVisible(!1)})),this.initialHandle()}get uniqueKey(){const{$$form:e}=this.context;return e.props.uniqueKey||""}get searchHelper(){return this.getSearchHelper(this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidMount(){this.getItemList()}componentDidUpdate(e){const{value:t=[]}=e,{value:n=[]}=this.props;(0,X.isEqual)(t,n)||(0,X.isEqual)(n,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList();const{echo_data:r}=this.context,{fieldName:a}=this.props.option;if(!(0,X.isEqual)(r[a],this._ceho_data)&&(this._ceho_data=r[a],this.setItemList(r[a]),n.length)){const e=Cc.map(((e,t)=>r[a].find((e=>e.value===n[t]))?.text??""));this.setTextValue(e)}}async getItemList(){await this.props.waiting();const{textKey:e,valueKey:t}=this.alias,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i,fieldAliasMap:l}=this.searchHelper.echoRequest||{},o="function"==typeof l?l():l||{},{value:s}=this.props;if(n){if(ie(s))return this.setRecords([]);this.setState({loading:!0});try{const l=await n(a({...r,keys:s}));if(200===l.code){let n=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];n.forEach((n=>{o?.valueKey&&o.valueKey!==t&&(n[t]=n[o.valueKey]),o?.textKey&&o.textKey!==e&&(n[e]=n[o.textKey])})),n=n.filter((e=>s.includes(e[t]))).slice(0,2);const r=n.map((n=>({value:n[t],text:n[e]})));this.setRecords(n),this.setItemList(r),this.setTextValue(r.map((e=>e.text??""))),this.setViewValue()}}catch(e){}this.setState({loading:!1})}}createViewText(){const{textKey:e}=this.alias;return this._records.map((t=>t[e])).join(" - ")}render(){const{$$form:e}=this.context,{value:t=[]}=this.props,{visible:n,loading:r,textValue:a}=this.state,{fieldName:i,options:o={},searchHelper:s={},placeholder:c=p("qm.form.rangeInputNumberPlaceholder"),bordered:d=!0,readOnly:u,disabled:m}=this.props.option,{onlySelect:h=!0}=this.searchHelper||s,f=a.every((e=>_r(e)))?"":a.join(" - "),g={visible:n,title:p("qm.searchHelper.text"),width:s.width??"65%",wrapClassName:`form-popper__${i}`,loading:!1,bodyStyle:{paddingBottom:`${La[e.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},y={...this.getDerivedSearchHelper(),size:e.$size,uniqueKey:this.uniqueKey?`${this.uniqueKey}_${i}`:"",initialValue:(0,X.merge)({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}};return e.isOnlyShow?l().createElement(ea,{value:f,bordered:d}):l().createElement(l().Fragment,null,l().createElement(R.Input.Group,null,l().createElement(R.Input,{value:a[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:c[0],allowClear:!1,bordered:d,readOnly:u,disabled:m,onBlur:e=>{const{value:t}=e.target;this._is_change&&!n&&(t?a.every((e=>!!e))&&this.searchHelper.table?.fetch?.api&&this.getSearchHelperTableData(a).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):a.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;h||(this._is_change=!0,this.setTextValue([t,a[1]]))}}),l().createElement(R.Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:d,disabled:m,readOnly:!0}),l().createElement(R.Input.Search,{value:a[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:c[1],loading:r,bordered:d,allowClear:!0,readOnly:u,disabled:m,onBlur:e=>{const{value:t}=e.target;this._is_change&&!n&&(t?a.every((e=>!!e))&&this.searchHelper.table?.fetch?.api&&this.getSearchHelperTableData(a).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):a.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;this._is_clear?this._is_clear=!1:h||(this._is_change=!0,this.setTextValue([a[0],t]))},onSearch:(e,t)=>{"click"===t?.type&&("INPUT"!==t.target.tagName?this.openSearchHelper():(this._is_clear=!0,this.clearSearchHelperValue()))}})),l().createElement(yn,g,l().createElement(Ec,y)))}}wc(Sc,"contextType",xn);class Nc extends i.Component{constructor(e,{$$form:t}){super(e),wc(this,"context",void 0),wc(this,"promiseRef",void 0),wc(this,"state",{searchHelper:{}}),wc(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),wc(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi,!0);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(c),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Sc,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,n,r)=>{h(t,r),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,null,e.renderFormItemButton(i,u)),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...d}))))}}wc(Nc,"contextType",xn);const Ic=Nc;function Tc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Rc=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,onChange:a,onValuesChange:i}=e,{options:o={},style:s={},bordered:c=!1,readOnly:d,disabled:u}=e.option,{itemList:m=[]}=o,p=ie(m)?r:m,h=e=>p.filter((t=>e.includes(t.value))).map((e=>e.text)).join(",");return t.isOnlyShow?l().createElement(ea,{value:h(n),bordered:c}):l().createElement(R.Checkbox.Group,{value:n,style:{width:"100%",...s},disabled:u,onChange:e=>{(e=>{a?.(e),i(e,h(e))})(e)}},p.map((e=>l().createElement(R.Checkbox,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class Oc extends i.Component{constructor(...e){super(...e),Tc(this,"context",void 0),Tc(this,"state",{itemList:[]})}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}async getItemList(){const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t)try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Rc,{option:this.props.option,items:t,onValuesChange:(t,n)=>{h(t),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Tc(Oc,"contextType",xn);const kc=Oc;function Pc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Lc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},style:o={},allowClear:s=!0,readOnly:c,disabled:d=t.isFormDisabled}=e.option,{allowHalf:u,count:m=5,tooltips:p}=i;return l().createElement(R.Rate,{value:n,count:m,style:o,allowHalf:u,allowClear:s,tooltips:p,disabled:d||t.isOnlyShow,onChange:e=>{(e=>{var t;r?.(e),a(e,(t=e,p?p[Math.ceil(t)-1]:t.toString()))})(e)}})};class Ac extends i.Component{constructor(...e){super(...e),Pc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Lc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Pc(Ac,"contextType",xn);const _c=Ac;function Fc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Dc=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,onChange:a,onValuesChange:i}=e,{options:o={},style:s={},bordered:c=!1,readOnly:d,disabled:u=t.isFormDisabled}=e.option,{itemList:m=[]}=o,p=ie(m)?r:m,h=e=>p.find((t=>t.value===e))?.text??"";return t.isOnlyShow?l().createElement(ea,{value:h(n),bordered:c}):l().createElement(R.Radio.Group,{value:n,style:{width:"100%",...s},disabled:u||t.isOnlyShow,onChange:e=>{const{value:t}=e.target;(e=>{a?.(e),i(e,h(e))})(t)}},p.map((e=>l().createElement(R.Radio,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class Hc extends i.Component{constructor(...e){super(...e),Fc(this,"context",void 0),Fc(this,"state",{itemList:[]}),Fc(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t)try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=t.map((e=>({value:e[a],text:e[i]})));this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:m,rules:p=[],onChange:h=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(p)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:p,validateTrigger:m,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(Dc,{option:this.props.option,items:t,onValuesChange:(t,n)=>{h(t),e.setViewValue(i,n)}}))),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}Fc(Hc,"contextType",xn);const qc=Hc;function $c(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Mc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{label:i,options:o={},style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{labelToSwitch:u,falseValue:m=Cr,trueValue:p=wr}=o,{t:h}=U();return l().createElement(l().Fragment,null,l().createElement(R.Switch,{checked:n===p,style:s,disabled:d||t.isOnlyShow,checkedChildren:l().createElement(we.CheckOutlined,null),unCheckedChildren:l().createElement(we.CloseOutlined,null),onChange:e=>{(e=>{r?.(e),a(e,h(e===p?"am.form.trueText":"am.form.falseText"))})(e?p:m)}}),u?l().createElement("span",{style:{verticalAlign:"middle",marginLeft:8}},i):null)};class Kc extends i.Component{constructor(...e){super(...e),$c(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option,{labelToSwitch:h}=o;return l().createElement(R.Form.Item,{label:h?" ":e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Mc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}$c(Kc,"contextType",xn);const zc=Kc;function jc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Vc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{options:o={},style:s={},placeholder:c=i("qm.form.inputPlaceholder"),bordered:d=!0,allowClear:u,readOnly:m,disabled:p,onFocus:h,onBlur:f,onEnter:g}=e.option,{showCount:y,maxLength:b,autoSize:v}=o,x=Object.assign({},{minRows:1,maxRows:3},v);return l().createElement(R.Input.TextArea,{value:n,placeholder:c,style:s,maxLength:b,showCount:y,autoSize:x,bordered:d,allowClear:u,readOnly:m||t.isOnlyShow,disabled:p,onFocus:e=>{h?.(e.target.value,e)},onBlur:t=>{const{value:n}=t.target;(t=>{const{onBlur:n}=e;n?.(t)})(n),f?.(n,t)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;g?.(t,e)}},onChange:e=>{const{value:t}=e.target;(e=>{r?.(e),a(e)})(t)}})};class Wc extends i.Component{constructor(...e){super(...e),jc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Vc,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}jc(Wc,"contextType",xn);const Bc=Wc;function Uc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Gc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:d={},placeholder:u=i("qm.form.datePlaceholder"),bordered:m=!0,allowClear:p=!0,readOnly:h,disabled:f}=e.option,{dateType:g="date",format:y,disabledDate:b,minDateTime:v,maxDateTime:x,shortCuts:E=!0}=s,w=l().createRef(),C=e=>{e&&"date"===g&&(e=e.slice(0,10)+" 00:00:00"),r?.(e),a(e,S(e))},S=e=>_r(e)?"":["date","exactdate"].includes(g)?e.slice(0,10):e,N=e=>{let t=Ar(c()().subtract(e,"day"),Rr[g]);"date"===g&&(t=t.slice(0,10)),C(t),w.current.blur(),w.current.focus()};return t.isOnlyShow?l().createElement(ea,{value:S(n),bordered:m}):l().createElement(_,{ref:w,style:{width:"100%",...d},popupClassName:`form-popper__${o}`,picker:Tr[g],format:y,bordered:m,showToday:!1,showTime:"datetime"===g&&{defaultValue:c()("00:00:00","HH:mm:ss")},allowClear:p,disabled:f,inputReadOnly:h,disabledDate:b??(e=>((e,[t,n])=>t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day"))(e,[v,x])),renderExtraFooter:E&&g.includes("date")?()=>"function"==typeof E?E():l().createElement(l().Fragment,null,l().createElement(R.Tag,{color:"processing",onClick:()=>N(0)},i("qm.form.datePickers")[0]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(1)},i("qm.form.datePickers")[1]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(7)},i("qm.form.datePickers")[2]),l().createElement(R.Tag,{color:"processing",onClick:()=>N(30)},i("qm.form.datePickers")[3])):void 0,value:Lr(n,Rr[g]),onChange:(e,t)=>{C(Ar(e,Rr[g]))}})};class Yc extends i.Component{constructor(...e){super(...e),Uc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Gc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Uc(Yc,"contextType",xn);const Xc=Yc;function Qc(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Zc=e=>[c()().subtract(e,"day"),c()()],Jc=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:d={},placeholder:u=i("qm.form.daterangePlaceholder"),bordered:m=!0,allowClear:p=!0,readOnly:h,disabled:f=t.isFormDisabled}=e.option,{dateType:g="date",format:y,disableds:b=[!1,!1],allowEmpty:v,disabledDate:x,minDateTime:E,maxDateTime:w,shortCuts:C=!0}=s,S={[i("qm.form.dateRangePickers")[0]]:Zc(7),[i("qm.form.dateRangePickers")[1]]:Zc(30),[i("qm.form.dateRangePickers")[2]]:Zc(90),[i("qm.form.dateRangePickers")[3]]:Zc(180)},N=e=>_r(e)?"":e.map((e=>["date","exactdate"].includes(g)?e?.slice(0,10):e)).join(" - ");return t.isOnlyShow?l().createElement(ea,{value:N(n),bordered:m}):l().createElement(_.RangePicker,{style:{width:"100%",...d},popupClassName:`form-popper__${o}`,picker:Tr[g],format:y,bordered:m,showTime:"datetime"===g&&{defaultValue:[c()("00:00:00","HH:mm:ss"),c()("23:59:59","HH:mm:ss")]},allowClear:p,allowEmpty:v,disabled:f?[!0,!0]:b,inputReadOnly:h,disabledDate:x??(e=>((e,[t,n])=>t&&n?e.isBefore(t,"day")||e.isAfter(n,"day"):t?e.isBefore(t,"day"):!!n&&e.isAfter(n,"day"))(e,[E,w])),ranges:C&&g.includes("date")?S:void 0,value:ie(n)?null:[Lr(n?.[0],Rr[g]),Lr(n?.[1],Rr[g])],onChange:(e,t)=>{(e=>{"date"===g&&(e=e.map(((e,t)=>e?0===t?e.slice(0,10)+" 00:00:00":e.slice(0,10)+" 23:59:59":e))),e.every((e=>!e))&&(e=[]),r?.(e),a(e,N(e))})([Ar(e?.[0],Rr[g]),Ar(e?.[1],Rr[g])])}})};class ed extends i.Component{constructor(...e){super(...e),Qc(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Jc,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Qc(ed,"contextType",xn);const td=ed;function nd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const rd=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.timePlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h}=e.option,{timeType:f="hour-minute-second",hourStep:g=1,minuteStep:y=1,secondStep:b=1}=s;return t.isOnlyShow?l().createElement(ea,{value:n,bordered:u}):l().createElement(q,{style:{width:"100%",...c},popupClassName:`form-popper__${o}`,bordered:u,showNow:!0,hourStep:g,minuteStep:y,secondStep:b,allowClear:m,disabled:h,inputReadOnly:p,format:Or[f],value:Lr(n,Or[f]),onChange:(e,t)=>{(e=>{const t=Ar(e,Or[f]);r?.(t),a(t)})(e)}})};class ad extends i.Component{constructor(...e){super(...e),nd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(rd,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}nd(ad,"contextType",xn);const id=ad;function ld(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const od=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.timerangePlaceholder"),bordered:u=!0,allowClear:m=!0,readOnly:p,disabled:h=t.isFormDisabled}=e.option,{timeType:f="hour-minute-second",disableds:g=[!1,!1],allowEmpty:y,hourStep:b=1,minuteStep:v=1,secondStep:x=1}=s,E=e=>_r(e)?"":e.join(" - ");return t.isOnlyShow?l().createElement(ea,{value:E(n),bordered:u}):l().createElement(q.RangePicker,{style:{width:"100%",...c},popupClassName:`form-popper__${o}`,bordered:u,showNow:!1,hourStep:b,minuteStep:v,secondStep:x,allowClear:m,allowEmpty:y,disabled:h?[!0,!0]:g,inputReadOnly:p,format:Or[f],value:ie(n)?null:[Lr(n?.[0],Or[f]),Lr(n?.[1],Or[f])],onChange:(e,t)=>{(e=>{const t=[Ar(e?.[0],Or[f]),Ar(e?.[1],Or[f])];r?.(t),a(t,E(t))})(e)}})};class sd extends i.Component{constructor(...e){super(...e),ld(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(od,{option:this.props.option,onValuesChange:(t,n)=>{p(t),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}ld(sd,"contextType",xn);const cd=sd;function dd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class ud extends i.Component{constructor(e){super(e),dd(this,"context",void 0),dd(this,"searchRef",l().createRef()),dd(this,"valueKey",void 0),dd(this,"_clicking",!1),dd(this,"_record",void 0),dd(this,"_prevValue",null),dd(this,"state",{itemList:[],visible:!1,loading:!1,activeIndex:0,inputText:void 0}),dd(this,"getSearchHelper",vn()(((e,t)=>Object.assign({},this.props.helperConfig,e,t)))),dd(this,"paramsChangeHandler",(async(e,t)=>{await this.props.waiting(),(0,X.isEqual)(e,t)||this.getItemList()})),dd(this,"echoSearchHelper",(async()=>{await this.props.waiting();const e=this.getItemValue();e!==this._prevValue&&(this.getItemText(),this._prevValue=e)})),dd(this,"initialHandle",(async()=>{await this.props.waiting();const{fieldName:e,options:t,searchHelper:n}=this.props.option,{fieldAliasMap:r,fieldsDefine:a,echoRequest:i}=this.searchHelper;if(r||me("Form","IMMEDIATE 需要配置 `fieldAliasMap` 选项"),a){const e=["valueKey","displayKey","extraKey"];for(const t in a)e.includes(t)&&(this[t]=a[t])}Object.keys(this.alias).includes(e)||me("Form","IMMEDIATE 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),i&&!this.valueKey&&me("Form","IMMEDIATE 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用"),t&&!n&&me("Form","IMMEDIATE 的 `options` 选项即将在下一个大版本中废弃,请使用 `searchHelper` 参数")})),dd(this,"getItemValue",(()=>this.context.$$form.GET_FIELDS_VALUE([this.valueKey])[this.valueKey])),dd(this,"getItemText",(async()=>{const{fetchApi:e,params:t={},formatter:n=e=>e,dataKey:r,callback:a,triggeredChange:i,fieldAliasMap:l,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof l?l():l||{},c="function"==typeof o?o():o||{},d=this.getItemValue();if(e&&!ie(d))try{const l=await e(n({...t,key:d}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,r)??[];if(e[0]){const t=e[0];if(s&&Dr(t,this.alias,s),c&&Hr(t,this.extras,c),this._record=t,this.setFieldsValue(t),i){const e=Fr(t,this.alias[this.props.option.fieldName]);this.triggerChange(e)}a?.([t])}}}catch(e){}})),dd(this,"setFieldsValue",(e=>{const{$$form:t}=this.context,{fieldName:n}=this.props.option;this._record=e;for(const r in this.alias){const a=Fr(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:a}),r===this.valueKey&&(this._prevValue=a),r===n&&t.setViewValue(n,a)}for(const n in this.extras)t.SET_FIELDS_EXTRA({[n]:Fr(e,this.extras[n])})})),dd(this,"fetchHandle",(0,X.debounce)(this.getItemList,200)),dd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),dd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this._record)})),dd(this,"triggerBlur",(e=>{const{onBlur:t}=this.props;t?.(e)})),dd(this,"clickHandle",((e,t)=>{const{$$form:n}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias){if(t===r)continue;const a=Fr(e,this.alias[t]);n.SET_FIELDS_VALUE({[t]:a}),t===this.valueKey&&(this._prevValue=e?a:null)}for(const t in this.extras)n.SET_FIELDS_EXTRA({[t]:Fr(e,this.extras[t])});this.searchRef.current.focus({cursor:"end"}),this._record=e;const a=Fr(e,this.alias[r]);this.triggerChange(a),this.setState({inputText:void 0}),t&&t()})),this.initialHandle()}get searchHelper(){return this.getSearchHelper(this.props.option.options,this.props.option.searchHelper)}get alias(){const{fieldAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}get extras(){const{extraAliasMap:e}=this.searchHelper;return"function"==typeof e?e():e||{}}componentDidUpdate(e){const t=e.option.searchHelper?.request?.params||e.option.request?.params,n=this.props.option.searchHelper?.request?.params||this.props.option.request?.params;this.paramsChangeHandler(n,t),this.echoSearchHelper()}async getItemList(e){const{fieldName:t}=this.props.option,{fetchApi:n,params:r={},formatter:a=e=>e,dataKey:i}=this.searchHelper.request||this.props.option.request||{};if(n){this.setState({loading:!0});try{const l=await n(a({...r,[t]:e}));if(200===l.code){const e=Array.isArray(l.data)?l.data:(0,X.get)(l.data,i)??[];this.setState({itemList:e,activeIndex:0})}}catch(e){}this.setState({loading:!1})}}render(){const{$$form:e}=this.context,{visible:t,loading:n,itemList:r,inputText:a}=this.state,{value:i}=this.props,{fieldName:s,options:c={},style:d={},placeholder:u=p("qm.form.inputPlaceholder"),bordered:m=!0,allowClear:h=!0,readOnly:f,disabled:g}=this.props.option,{listHeight:y=Sr}=c,{hideHeader:b,onlySelect:v=!0}=this.searchHelper||c,x=this.searchHelper.columns||[],E=Ee("form-immediate"),w=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,C=l().createElement(R.Spin,{spinning:n},r.length?l().createElement("table",{cellSpacing:0,cellPadding:0,className:xe()("table")},!b&&l().createElement("thead",null,l().createElement("tr",null,x.filter((e=>!e.hidden)).map((e=>l().createElement("th",{key:e.dataIndex,style:{width:`${e.width}px`,backgroundColor:"#f0f0f0"}},e.title))))),l().createElement("tbody",null,r.map(((e,t)=>l().createElement("tr",{key:t,className:this.state.activeIndex===t?"active":"",onMouseEnter:()=>{this.setState({activeIndex:t})},onMouseDown:()=>{this._clicking=!0},onMouseUp:()=>{this._clicking=!1},onClick:()=>{this.clickHandle(e,(()=>this.handleVisibleChange(!1)))}},x.filter((e=>!e.hidden)).map((t=>l().createElement("td",{key:t.dataIndex},(0,X.get)(e,t.dataIndex))))))))):l().createElement(dt,null));return l().createElement(o.Consumer,null,(n=>{const o={[E]:!0,[`${E}--lg`]:"large"===n?.size,[`${E}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:i,bordered:m}):l().createElement(Ri(),{action:g?[]:["click"],popupVisible:!g&&t,popup:C,popupClassName:xe()(o,`form-popper__${s}`),popupStyle:{minWidth:w,maxHeight:y},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:u,allowClear:h,bordered:m,readOnly:f,disabled:g,style:{width:"100%",...d},value:a??i,title:i,onFocus:()=>{!r.length&&this.fetchHandle(i)},onBlur:e=>{v&&!this._clicking&&a!==i&&this.setState({inputText:void 0}),this.triggerBlur(e.target.value)},onKeyDown:e=>{if(27===e.keyCode&&this.handleVisibleChange(!1),13===e.keyCode&&this.clickHandle(r[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 n=40===e.keyCode?++t%r.length:(--t+r.length)%r.length;this.setState({activeIndex:n})}},onChange:e=>{const{value:t}=e.target;this.fetchHandle(t),v?this.setState({inputText:t}):t&&this.triggerChange(t),t?this.handleVisibleChange(!0):this.clickHandle(null)}})))}))}}dd(ud,"contextType",xn);class md extends i.Component{constructor(e,{$$form:t}){super(e),dd(this,"context",void 0),dd(this,"promiseRef",void 0),dd(this,"state",{searchHelper:{}}),dd(this,"waiting",(async()=>{try{await this.promiseRef}catch(e){ue("Form","搜索帮助获取定义信息的接口出错")}})),dd(this,"getHelperConfig",(e=>{const{global:t}=e,{name:n,fieldsDefine:r}=this.props.option.searchHelper||{};if(!n)return;if(!t?.searchHelper?.getServerConfig||!t?.searchHelper?.createFetchApi)return me("immediate","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:a}=this.props.option;this.promiseRef=new Promise((async(e,i)=>{try{const l=await t.searchHelper.getServerConfig({searchHelperId:n});if(200===l.code){const n=jr(Object.assign({},l.data,r),a,t.searchHelper.createFetchApi);this.setState({searchHelper:n},(()=>e()))}else i()}catch(e){i()}}))})),this.getHelperConfig(t.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:n,label:r,tooltip:a,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(r),className:xe()(d),tooltip:a,hidden:o,labelCol:{flex:e.verticalLayout?"initial":ce(c)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:i,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},l().createElement(ud,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t="",n)=>{f(t,n),e.setViewValue(i,t)}}))),m&&l().createElement(R.Col,null,e.renderFormItemButton(i,m)),u&&l().createElement(R.Col,{flex:ce(u.labelWidth||Er)},e.renderFormItemExtra({fieldName:i,...u}))))}}dd(md,"contextType",xn);const pd=md;function hd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class fd extends i.Component{constructor(...e){super(...e),hd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,fieldName:r,className:a,style:i={},collapse:o={}}=this.props.option,{expand:s}=e.state,{showLimit:c,remarkItems:d=[],onCollapse:u=ee}=o,m=[];if(d.length){const t=e.getBlockDerivedItems().find((e=>e[0].fieldName===r))??[],n=c??t.length-1;t.slice(n+1).forEach((t=>{const n=d.find((e=>e.fieldName===t.fieldName));if(!n)return;const r=n.showLabel?`${t.label}:`:"",a=e.getViewValue(t.fieldName)??"";""!==a&&m.push({...t,text:`${r}${a}`})}))}return l().createElement(R.Form.Item,{labelCol:{span:0},wrapperCol:{span:24}},l().createElement(Se,{id:r,label:n,className:a,extra:m.map((e=>e.text)).join(" | "),style:{...i},collapse:s[r],onCollapseChange:t=>{e.setState((e=>({expand:Object.assign({},e.expand,{[r]:t})}))),u(t)}}))}}hd(fd,"contextType",xn);const gd=fd;function yd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bd(){return bd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bd.apply(null,arguments)}const vd=(e,t,n,r)=>e.map((e=>e[n]===t?{...e,children:r}:e.children?{...e,children:vd(e.children,t,n,r)}:e)),xd=e=>{const{$$form:t}=l().useContext(xn),{value:n,items:r,multiple:a,loading:i,onChange:o,onValuesChange:s}=e,{t:c}=U(),{fieldName:d,options:u={},style:m={},placeholder:p=c("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:f=!0,asyncLoad:g,readOnly:y,disabled:b}=e.option,{itemList:v,filterable:x=!0,listHeight:E=Sr,checkStrictly:w,checkStrategy:C="SHOW_CHILD",collapseTags:S,echoRequest:N,defaultExpandAll:I=!g,defaultExpandedKeys:T,dropdownStyle:O,openPyt:k=!0}=u,[P,L]=l().useState(ie(v)?r:v),[A,_]=l().useState([]),[F,D]=l().useState(!1),[H,q]=l().useState(!1),$=l().useRef(null),M=l().useRef(null),K=l().useRef(P),z=l().useRef(H),j=l().useRef(null),V=e=>{q(e),z.current=e};ao({ref:M,handler:()=>V(!1)}),l().useEffect((()=>{n!==j.current&&(G(),j.current=n),M.current=$.current?.querySelector(".ant-select-selection-overflow-item-rest")||null}),[n]),He((()=>{const e=ie(v)?r:v;g?(0,X.isEqual)(e,K.current)||(L((t=>[...e,...t.filter((e=>!!e.style))])),K.current=e):L(e)}),[v,r]),He((()=>{L((e=>[...e,...A.filter((t=>!e.some((e=>e.value===t.value))))]))}),[A]);const W=e=>$r(P,e)?.text||e?.toString()||"",B=e=>(w&&Array.isArray(n)&&n.every((e=>(0,X.isPlainObject)(e)))&&(e=e.map((e=>e.value))),a?e?.map((e=>W(e))).join(",")||"":W(e)),G=async()=>{if(!N)return;if(!g)return me("Form","TREE_SELECT 的 echoRequest 选项必须组合 `asyncLoad` 一起使用");const{fetchApi:e,params:t,dataKey:r,callback:a,formatter:i=e=>e}=N||{},{textKey:l="text",valueKey:o="value"}=g;if(e&&!ie(n))try{const s=await e(i({...t,[o]:n}));if(200===s.code){const e=Array.isArray(s.data)?s.data:(0,X.get)(s.data,r)??[];if(e.length){const t=qr(e,o,l);_(t.map((e=>({...e,style:{display:"none"}})))),a?.(e)}}}catch(e){}};return t.isOnlyShow?l().createElement(ea,{value:B(n),bordered:h}):l().createElement(Ri(),{popupVisible:!b&&H,popup:(()=>{if(!a)return null;const e=n?.map((e=>W(e)))||[];return l().createElement("ul",{className:"ant-dropdown-menu"},e.length?e.map(((e,t)=>l().createElement("li",{key:`${e}-${t}`,className:"ant-dropdown-menu-item"},e))):l().createElement("li",{className:"ant-dropdown-menu-item"},c("qm.table.config.emptyText")))})(),popupStyle:{minWidth:$.current?.offsetWidth},onPopupVisibleChange:e=>V(e),builtinPlacements:Ir,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",{ref:$,style:{width:"100%"}},l().createElement(R.TreeSelect,bd({open:F,fieldNames:{label:"text",value:"value",children:"children"},value:n,multiple:a,treeCheckable:a,treeCheckStrictly:w,showCheckedStrategy:R.TreeSelect[C],popupClassName:`form-popper__${d}`,dropdownStyle:O,placeholder:p,listHeight:E,style:m,loading:i,bordered:h,allowClear:f,disabled:b,treeDefaultExpandAll:I,treeDefaultExpandedKeys:T,showSearch:x,maxTagCount:S?"responsive":void 0,loadData:g?async({key:e,children:t})=>{if(!g||t)return;const{fetchApi:n,params:r,dataKey:a,textKey:i="text",valueKey:l="value",callback:o,formatter:s=e=>e}=g;if(n)try{const t=await n(s({...r,[l]:e}));if(200===t.code){const n=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[],r=vd(P,e,l,qr(n,l,i));L(r),o?.(n)}}catch(e){}}:void 0,treeData:P},a?{title:B(n)}:null,{filterTreeNode:(e,t)=>{const n=t?.text?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(k?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0},onMouseDown:e=>{e.target.classList.contains("ant-select-selection-overflow-item-rest")&&(V(!0),D(!1))},onDropdownVisibleChange:e=>{if(!e)return D(e);re((()=>{z.current||D(e)}))},onChange:e=>{(e=>{o?.(e),s(e,B(e),P)})(e),j.current=e}}))))};class Ed extends i.Component{constructor(...e){super(...e),yd(this,"context",void 0),yd(this,"state",{itemList:[],loading:!1}),yd(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=qr(t,a,i);this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(xd,{option:this.props.option,items:t,loading:n,multiple:this.props.multiple,onValuesChange:(t,n,r)=>{f(t,n,r),e.setViewValue(o,n)}}))),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}yd(Ed,"contextType",xn);const wd=Ed;function Cd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sd(){return Sd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Sd.apply(null,arguments)}const Nd=e=>{const{$$form:t}=l().useContext(xn),{value:n,multiple:r,items:a}=e,{t:i}=U(),{fieldName:o,options:s={},style:c={},placeholder:d=i("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:m=!0,asyncLoad:p,readOnly:h,disabled:f}=e.option,{itemList:g,changeOnSelect:y,checkStrictly:b,checkStrategy:v="SHOW_PARENT",filterable:x=!0,dropdownStyle:E,openPyt:w=!0}=s,[C,S]=l().useState(ie(g)?a:g),N=l().useRef(C);He((()=>{const e=ie(g)?a:g;p?(0,X.isEqual)(e,N.current)||(S(e),N.current=e):S(e)}),[g,a]);const I=e=>Mr(C,e??"").map((e=>e.text)).join("/"),T=e=>r?e?.map((e=>I(e))).join(",")||"":I(e);return t.isOnlyShow?l().createElement(ea,{value:T(n),bordered:u}):l().createElement(R.Cascader,Sd({value:(e=>ie(e)?[]:r?e.map((e=>e.split(","))):e.split(","))(n),fieldNames:{label:"text",value:"value",children:"children"},options:C,multiple:r,maxTagCount:"responsive",changeOnSelect:y||b,showCheckedStrategy:R.Cascader[v],popupClassName:`form-popper__${o}`,dropdownStyle:E,placeholder:d,style:c,bordered:u,allowClear:m,disabled:f,showSearch:x&&!p&&{filter:(e,t)=>t.some((t=>{const n=t?.text?.toString()||"",r=Zr.parse(n).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(w?`${n}|${r}`:n).toLowerCase().indexOf(e.toLowerCase())>=0}))},loadData:p?async e=>{const t=e[e.length-1];if(!p||t.children)return;const{fetchApi:n,params:r,dataKey:a,textKey:i="text",valueKey:l="value",callback:o,formatter:s=e=>e}=p;if(n)try{const e=await n(s({...r,[l]:t.value}));if(200===e.code){const n=Array.isArray(e.data)?e.data:(0,X.get)(e.data,a)??[],r=vd(C,t.value,l,qr(n,l,i));S(r),o?.(n)}}catch(e){}}:void 0},r?{title:T(n)}:null,{onChange:t=>{(t=>{const{onChange:n,onValuesChange:r}=e;n?.(t),r(t,T(t),C)})(((e=[])=>r?e.map((e=>e.join(","))):e.join(","))(t))}}))};class Id extends i.Component{constructor(...e){super(...e),Cd(this,"context",void 0),Cd(this,"state",{itemList:[],loading:!1}),Cd(this,"getItemList",(async()=>{const{request:e={}}=this.props.option,{fetchApi:t,params:n={},dataKey:r,valueKey:a="value",textKey:i="text",callback:l}=e;if(t){this.setState({loading:!0});try{const e=await t(n);if(200===e.code){const t=Array.isArray(e.data)?e.data:(0,X.get)(e.data,r)??[],n=qr(t,a,i);this.setState({itemList:n},(()=>l?.(t)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){const t=e.option.request?.params,n=this.props.option.request?.params;(0,X.isEqual)(t,n)||this.getItemList()}render(){const{$$form:e}=this.context,{multiple:t}=this.props,{itemList:n}=this.state,{type:r,label:a,tooltip:i,fieldName:o,invisible:s,options:c={},labelWidth:d=e.props.labelWidth,className:u,extra:m,validateTrigger:p,rules:h=[],onChange:f=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(a),className:xe()(u),tooltip:i,hidden:s,labelCol:{flex:e.verticalLayout?"initial":ce(d)},required:e.getFormItemRequired(h)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:o,noStyle:!0,rules:h,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(a)}},l().createElement(Nd,{option:this.props.option,multiple:t,items:n,onValuesChange:(t,n,r)=>{f(t,n,r),e.setViewValue(o,n)}}))),m&&l().createElement(R.Col,{flex:ce(m.labelWidth||Er)},e.renderFormItemExtra({fieldName:o,...m}))))}}Cd(Id,"contextType",xn);const Td=Id,Rd=require("china-area-data");var Od=r.n(Rd);function kd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Pd=["110000","120000","310000","500000"],Ld=["810000","820000"],Ad=[{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"}],_d=[{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"}],Fd=e=>Zr.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join(""),Dd=(e,t,n=1)=>{if(!(n>2)&&e[t])return("86"===t?Object.keys(e[t]).filter((e=>![...Pd,...Ld].includes(e))):Object.keys(e[t])).map((r=>({l:Fd(e[t][r].slice(0,1)).toUpperCase(),n:e[t][r],c:r,p:t,children:Dd(e,r,n+1)})))},Hd=(e,t)=>t.map((t=>({l:Fd(e[86][t].slice(0,1)).toUpperCase(),n:e[86][t],c:t,p:"86",children:void 0})));class qd extends i.Component{constructor(e){super(e),kd(this,"context",void 0),kd(this,"searchRef",l().createRef()),kd(this,"scrollRef",l().createRef()),kd(this,"zxsAndGa",void 0),kd(this,"provinces",void 0),kd(this,"allCities",void 0),kd(this,"letterCities",void 0),kd(this,"state",{visible:!1,select_type:"0",active_key:""}),kd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),kd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(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(){this.searchRef.current?.input.setAttribute("readonly","readonly")}scrollHandle(e){this.setState({active_key:e}),Yt()(this[`${e}Ref`],{block:"start",behavior:"smooth",boundary:this.scrollRef.current})}clickHadnle(e){this.triggerChange(e)}createTextValue(e){return this.allCities.find((t=>t.c===e))?.n||""}createZxsAndGa(){return[{l:"Z1",n:"直辖市",c:"",p:"",children:Hd(Od(),Pd)},{l:"Z2",n:"港澳",c:"",p:"",children:Hd(Od(),Ld)}]}createProvince(){return(Dd(Od(),"86")??[]).concat(this.zxsAndGa)}createAllCity(){const e=[];return this.provinces.forEach((t=>e.push(...t.children))),e}createCity(){return _d.filter((e=>"Z1"!==e.value&&"Z2"!==e.value)).map((e=>({l:e.value,n:e.text,c:"",p:"",children:this.allCities.filter((e=>![...Pd,...Ld].includes(e.c))).filter((t=>t.l===e.value))}))).concat(this.zxsAndGa)}renderType(){const{select_type:e}=this.state;return l().createElement(R.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}))}},l().createElement(R.Radio.Button,{value:"0"},p("qm.form.citySelectType.0")),l().createElement(R.Radio.Button,{value:"1"},p("qm.form.citySelectType.1")))}renderLetter(){const{active_key:e,select_type:t}=this.state;return("0"===t?Ad:_d).map((t=>l().createElement("li",{key:t.value,className:xe()({tag:!0,actived:t.value===e}),onClick:()=>this.scrollHandle(t.value.toString())},t.text)))}renderSelect(){const{value:e}=this.props;return l().createElement(R.Select,{size:"small",placeholder:p("qm.form.selectPlaceholder"),style:{width:"200px"},showSearch:!0,filterOption:(e,t)=>(t?.children?.toString()||"").toLowerCase().indexOf(e.toLowerCase())>=0,value:e||void 0,onChange:e=>{this.triggerChange(e)}},this.allCities.map((e=>l().createElement(R.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,n)=>l().createElement("div",{key:n},l().createElement("dt",{ref:e=>this[`${t.l}Ref`]=e},t.n,":"),l().createElement("dd",null,t.children?.map((t=>l().createElement("li",{key:t.c,className:xe()({actived:t.c===e}),onClick:()=>this.clickHadnle(t.c)},t.n)))))))}render(){const{$$form:e}=this.context,{visible:t}=this.state,{value:n}=this.props,{fieldName:r,options:a={},style:i={},placeholder:s=p("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:m}=this.props.option,h=Ee("form-city-select"),f=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,g=this.createTextValue(n),y=l().createElement("div",{className:"container",style:{...i}},l().createElement("div",{className:"city-drop"},l().createElement("div",{className:"city-drop-toper"},l().createElement("div",{className:"city-drop-toper__type"},this.renderType()),l().createElement("div",{className:"city-drop-toper__search"},this.renderSelect())),l().createElement("div",{className:"city-drop-letter"},this.renderLetter()),l().createElement("div",{ref:this.scrollRef,className:"city-drop-list"},l().createElement("dl",null,this.renderCity(n)))));return l().createElement(o.Consumer,null,(n=>{const a={[h]:!0,[`${h}--lg`]:"large"===n?.size,[`${h}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:g,bordered:c}):l().createElement(Ri(),{action:m?[]:["click"],popupVisible:!m&&t,popup:y,popupClassName:xe()(a,`form-popper__${r}`),popupStyle:{minWidth:f},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:s,allowClear:d,bordered:c,readOnly:u,disabled:m,style:{width:"100%",...i},value:g,title:g,onChange:e=>{const{value:t}=e.target;this.triggerChange(t)}})))}))}}kd(qd,"contextType",xn);class $d extends i.Component{constructor(...e){super(...e),kd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(qd,{option:this.props.option,onValuesChange:(t,n)=>{p(t,n),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}kd($d,"contextType",xn);const Md=$d;function Kd(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const zd=(e,t)=>{if(e[t])return Object.keys(e[t]).map((n=>({text:e[t][n],value:n,children:zd(e,n)})))};class jd extends i.Component{constructor(e){super(e),Kd(this,"context",void 0),Kd(this,"searchRef",l().createRef()),Kd(this,"prevText",void 0),Kd(this,"handleVisibleChange",(e=>{this.setState({visible:e})})),Kd(this,"triggerChange",(e=>{const{onChange:t,onValuesChange:n}=this.props;t?.(e),n(e,this.createTextValue(e)),this.handleVisibleChange(!1)}));const t=zd(Od(),"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:n}=this.props;t!==n&&this.state.values.join(",")!==(n??"")&&this.initial()}get isFetch(){return!!this.props.option.request?.fetchApi}get level(){let{selectLevel:e=0}=this.props.option.options||{};return(e<1||e>3)&&(e=3),this.isFetch?4:e}setInputReadonly(){this.searchRef.current?.input.setAttribute("readonly","readonly")}createTextValue(e){return(e?e.split(","):[]).map(((e,t)=>this.state.tabs[t]?.find((t=>t.value===e))?.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 n=this.state.tabs.slice(0,1);for(let r=0;r<t.length;r++){const a=$r(e,t[r]);if(a&&ie(a.children)){this.isFetch&&this.getStreetList(t[r]);break}Array.isArray(a?.children)&&(n[r+1]=a?.children.map((e=>({text:e.text,value:e.value}))))}this.setState({tabs:n})}async getStreetList(e){const{request:t={}}=this.props.option,{fetchApi:n,formatter:r=e=>e,dataKey:a,valueKey:i="value",textKey:l="text"}=t;if(n)try{const t=await n(r({code:e}));if(200===t.code){const e=Array.isArray(t.data)?t.data:(0,X.get)(t.data,a)??[];this.setState((t=>({tabs:[...t.tabs,e.map((e=>({text:e[l],value:e[i]})))]})))}}catch(e){}}renderTabs(){const{values:e}=this.state,t=this.state.tabs.map(((t,n)=>{const r=t.find((t=>t.value===e[n]))?.text||`${p("qm.form.selectPlaceholder").replace("...","")}(${p("qm.form.regionSelectLabel")[n]})`;return l().createElement(on.TabPane,{key:n.toString(),tab:r},l().createElement("div",{className:"region-box"},t.map((t=>l().createElement("span",{key:t.value,className:xe()({"region-box__item":!0,actived:e.includes(t.value.toString())}),title:t.text,onClick:()=>{let{values:e}=this.state;e[n]=t.value.toString(),e=e.slice(0,n+1),this.setState({values:e},(()=>{const t=(e=>["810000","820000"].includes(e[0]))(e)?this.level<3?this.level:this.level-1:this.level;if(n+1>=t)return this.triggerChange(e.join(","));this.createTabs(),this.createActiveName(n+1)}))}},t.text)))))}));return t.length?l().createElement(on,{size:"small",activeKey:this.state.activeName,onChange:e=>{this.createActiveName(e)}},t):l().createElement(dt,null)}render(){const{$$form:e}=this.context,{visible:t}=this.state,{value:n}=this.props,{fieldName:r,options:a={},style:i={},placeholder:s=p("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:m}=this.props.option,h=Ee("form-region-select"),f=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,g=l().createElement("div",{className:"container"},this.renderTabs());let y=this.prevText;if(!t){const e=this.createTextValue(n);(""===e||e.split("/").every((e=>""!==e)))&&(y=e,this.prevText=y)}return l().createElement(o.Consumer,null,(n=>{const a={[h]:!0,[`${h}--lg`]:"large"===n?.size,[`${h}--sm`]:"small"===n?.size};return e.isOnlyShow?l().createElement(ea,{value:y,bordered:c}):l().createElement(Ri(),{action:m?[]:["click"],popupVisible:!m&&t,popup:g,popupClassName:xe()(a,`form-popper__${r}`),popupStyle:{minWidth:f},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:Ir,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},l().createElement("div",null,l().createElement(R.Input,{ref:this.searchRef,placeholder:s,allowClear:d,bordered:c,style:{width:"100%",...i},readOnly:u,disabled:m,value:y,title:y,onChange:e=>{const{value:t}=e.target;this.triggerChange(t),!t&&re((()=>this.initial()))}})))}))}}Kd(jd,"contextType",xn);class Vd extends i.Component{constructor(...e){super(...e),Kd(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(jd,{option:this.props.option,onValuesChange:(t,n)=>{p(t,n),e.setViewValue(a,n)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Kd(Vd,"contextType",xn);const Wd=Vd,Bd=zt;function Ud(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Gd=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o={},disabled:s,readOnly:c}=e.option,{multiple:d=!0,maxCount:u=1,fileTypes:m,fileSize:p,draggable:h,editable:f,batchDownload:g,fileDirection:y,onPreview:b,onDownload:v,onRemove:x,onSortChange:E,onEditChange:w}=i,{action:C,headers:S,params:N,withCredentials:I=!1,dataKey:T="",downloadWithHeaders:O,fieldAliasMap:k,beforeUpload:P,button:L}=o,A="function"==typeof k?k():k||{},{t:_}=U();return l().createElement(Bd,{name:"file",action:C,multiple:d,headers:S,data:N,withCredentials:I,downloadWithHeaders:O,beforeUpload:P,maxCount:u,fileTypes:m,fileSize:p,draggable:h,editable:f,batchDownload:g,fileDirection:y,disabled:s||t.props.disabled,readOnly:t.isOnlyShow||c,button:L,showUploadList:{showDownloadIcon:!0,downloadIcon:l().createElement(we.DownloadOutlined,null)},fileList:n,onChange:({fileList:e})=>{(e=>{const t=e.map((e=>{const t=e.response||{},n={};for(const r in A)n[r]=e[r]||t.data?.[A[r]]||"";return e.response&&200!==t.code&&R.message.error(t.message||_("qm.uploadCropper.uploadError")),{uid:e.uid,name:e.name,...n,url:e.url||(T?(0,X.get)(t.data,T):t.data)||"",status:e.status}}));r?.(t),t.every((e=>"done"===e.status&&e.url))&&a(t)})(e)},onPreview:b,onDownload:v,onRemove:x,onSortChange:E,onEditChange:w})};class Yd extends i.Component{constructor(...e){super(...e),Ud(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Gd,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,"")}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Ud(Yd,"contextType",xn);const Xd=Yd,Qd=require("cropperjs");var Zd=r.n(Qd);const Jd=l().forwardRef(((e,t)=>{const n=h({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},e),{className:r,style:a,src:i,alt:o,imgStyle:s,...c}=n,d=l().useRef(null),u=l().useRef(null);l().useEffect((()=>{const e={};for(const t in c)void 0!==n[t]&&(e[t]=n[t]);return u.current=new(Zd())(d.current,e),()=>{v(),u.current=null}}),[]);const m=()=>u.current?.reset(),p=()=>u.current?.clear(),f=()=>u.current?.crop(),g=(e,t=!1)=>u.current?.replace(e,t),y=()=>u.current?.enable(),b=()=>u.current?.disable(),v=()=>u.current?.destroy(),x=(e,t)=>u.current?.move(e,t),E=(e,t=e)=>u.current?.moveTo(e,t),w=(e,t)=>u.current?.zoom(e),C=(e,t)=>u.current?.zoomTo(e,t),S=e=>u.current?.rotate(e),N=e=>u.current?.rotateTo(e),I=e=>u.current?.scaleX(e),T=e=>u.current?.scaleY(e),R=(e,t=e)=>u.current?.scale(e,t),O=(e=!1)=>u.current?.getData(e),k=e=>u.current?.setData(e),P=()=>u.current?.getContainerData(),L=()=>u.current?.getImageData(),A=()=>u.current?.getCanvasData(),_=e=>u.current?.setCanvasData(e),F=()=>u.current?.getCropBoxData(),D=e=>u.current?.setCropBoxData(e),H=(e={})=>u.current?.getCroppedCanvas(e),q=e=>u.current?.setAspectRatio(e),$=e=>u.current?.setDragMode(e);l().useImperativeHandle(t,(()=>({reset:m,clear:p,initCrop:f,replace:g,enable:y,disable:b,destroy:v,move:x,moveTo:E,relativeZoom:w,zoomTo:C,rotate:S,rotateTo:N,scaleX:I,scaleY:T,scale:R,getData:O,setData:k,getContainerData:P,getImageData:L,getCanvasData:A,setCanvasData:_,getCropBoxData:F,setCropBoxData:D,getCroppedCanvas:H,setAspectRatio:q,setDragMode:$})));const M=Ee("cropper"),K={[M]:!0};return l().createElement("div",{className:xe()(K,r),style:a},l().createElement("img",{ref:d,src:i,alt:o,style:{maxWidth:"100%",...s}}))}));Jd.displayName="Cropper";const eu=Jd,tu=e=>{const{fileTypes:t=[],fileSize:n,fixedSize:r,quality:a,beforeCrop:i,className:o}=e,{t:s}=U(),c=l().useRef(null),d=l().useRef(),u=l().useRef(),m=l().useRef(),p=l().useRef(),[h,f]=l().useState(""),g=e=>{c.current.relativeZoom(e)},y=e=>{c.current.rotate(e)},b=()=>{f("")},v=Ee("cropper-preview");return l().createElement(l().Fragment,null,(()=>{const t=Array.isArray(e.children)?e.children[0]:e.children;if(!t)return null;const{beforeUpload:n,...r}=t.props;return d.current=n,l().createElement(t.type,{...r,beforeUpload:(e,t)=>new Promise((async(n,r)=>{const a=()=>n(R.Upload.LIST_IGNORE);if(i&&!await i(e,t))return void a();u.current=e,m.current=n,p.current=a;const l=new FileReader;l.onload=()=>{f(l.result),l.onload=null},l.readAsDataURL(e)}))})})(),h&&l().createElement(R.Modal,{open:!0,wrapClassName:xe()(v,o),title:s("qm.uploadCropper.cropper"),width:790,bodyStyle:{padding:10},onOk:()=>{(async()=>{const{type:e,name:n,uid:r}=u.current;c.current.getCroppedCanvas({maxWidth:1920,fillColor:"image/png"===e?"transparent":"#fff",imageSmoothingEnabled:!1,imageSmoothingQuality:"high"}).toBlob((async a=>{let i=new File([a],n,{type:e});if(Object.assign(i,{uid:r}),t.length&&!t.includes(i.name.slice(i.name.lastIndexOf(".")+1).toLowerCase()))return R.message.warning(s("qm.upload.tooltip",{type:t.join(",")})),p.current("file type is error");if("function"!=typeof d.current)return m.current(i);const l=d.current(i,[i]);if("boolean"==typeof l||l){if(!0===l)return m.current(i);if(!1===l)return p.current("not upload");if(l&&"function"==typeof l.then)try{const e=await l,t=Object.prototype.toString.call(e);"[object File]"!==t&&"[object Blob]"!==t||(i=e),m.current(i)}catch(e){p.current(e)}}else me("CropperPreview","`beforeUpload` 必须返回 `boolean` 或 `Promise` 类型")}),e,a),await ne(100),b()})()},onCancel:b,maskClosable:!1,destroyOnClose:!0},(()=>{const e={width:"380px",height:r?`calc(380px * ${r[1]/r[0]})`:"auto"};return l().createElement("div",{className:"cropper-preview"},l().createElement("div",{className:"cropper-area"},l().createElement("div",{className:"img-cropper"},l().createElement(eu,{ref:c,aspectRatio:r?r[0]/r[1]:r,src:h,dragMode:"move",preview:".preview"})),l().createElement("div",{className:"actions"},l().createElement(R.Space,{size:"small"},l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.ZoomInOutlined,null),onClick:()=>g(.2)},s("qm.uploadCropper.zoomIn")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.ZoomOutOutlined,null),onClick:()=>g(-.2)},s("qm.uploadCropper.zoomOut")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.RotateRightOutlined,null),onClick:()=>y(90)},s("qm.uploadCropper.rotatePlus")),l().createElement(R.Button,{type:"primary",size:"middle",icon:l().createElement(we.RotateLeftOutlined,null),onClick:()=>y(-90)},s("qm.uploadCropper.rotateSubtract"))))),l().createElement("div",{className:"preview-area"},l().createElement("div",{className:"preview",style:e})))})()))};function nu(){return nu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nu.apply(null,arguments)}const ru=e=>{const t=h({name:"file",multiple:!0,accept:"image/*",listType:"picture-card"},e),{fileList:n=[],openCropper:r=!0,fixedSize:a,quality:i=1,fileTypes:o,fileSize:s,maxCount:c,draggable:d,disabled:u,readOnly:m,className:p,popupClassName:f,beforeCrop:g,onSortChange:y,onChange:b}=t,{t:v}=U(),{$size:x}=Y(t),E=l().useRef(null),w=l().useRef(null),C=l().useRef(!1),[S,N]=l().useState(!1),[I,T]=l().useState(0),O=l().useMemo((()=>u||m),[u,m]),k=l().useMemo((()=>!c||n.length<c),[n,c]);l().useEffect((()=>(L(),document.addEventListener("paste",_),()=>{w.current?.destroy(),document.removeEventListener("paste",_)})),[]),He((()=>{k||(C.current=!1)}),[n]);const P=G((e=>{const{oldIndex:t,newIndex:r}=e;if(t!==r){const e=[...n],[a]=e.splice(t,1);e.splice(r,0,a),y?.(e),b?.({file:n[t],fileList:e})}})),L=()=>{d&&(w.current=Ft().create(Be(E.current,Ee("upload-img")).querySelector(".ant-upload-list"),{animation:150,handle:".handle",filter:".ignore",draggable:".ant-upload-list-picture-card-container",onEnd:P}))},A=(e,n)=>new Promise((async(r,a)=>{const{fileTypes:i=[],fileSize:l,beforeUpload:o}=t,s=!i.length||i.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),c=!l||e.size/1024/1024<l,d=s&&c;if(s||R.message.warning(v("qm.upload.tooltip",{type:i.join(",")})),c||R.message.warning(v("qm.upload.sizeLimit",{size:l})),!d)return R.Upload.LIST_IGNORE;if(o){const t=o(e,n);if(!0===t)return r(e);if(!1===t)return a("not upload");if(t&&"function"==typeof t.then)try{r(await t)}catch(e){a(e)}}else r(e)})),_=G((async e=>{const{action:r,data:a,headers:i}=t;if(C.current&&k&&r)for(const t of e.clipboardData.items)if("file"===t.kind&&t.type.startsWith("image/")){const e=t.getAsFile(),l=Date.now(),o=new File([e],`screenshot-${l}.png`,{type:e.type});Object.assign(o,{uid:`rc-upload-${l}`});try{await A(o,[...n,o]);const e=new FormData;if(e.append("file",o),a)for(const t in a)e.append(t,a[t]);const t="string"==typeof r?r:await r(o),l=await fetch(t,{method:"POST",body:e,headers:i});if(!l.ok)throw new Error(v("qm.upload.uploadError"));const s=await l.json();b?.({file:o,fileList:[...n,{uid:o.uid,lastModified:o.lastModified,lastModifiedDate:o.lastModifiedDate,name:o.name,type:o.type,size:o.size,response:s,status:"done",percent:100,originFileObj:o}]})}catch(e){}}})),F=Ee("upload-img"),D={[F]:!0,[`${F}--lg`]:"large"===x,[`${F}--sm`]:"small"===x},H=l().createElement(R.Upload,nu({className:xe()(D,p)},oe(t,["fileTypes","fileSize","fixedSize","quality","openCropper","draggable","popupClassName"]),{beforeUpload:A,disabled:O,onPreview:e=>{const t=n.findIndex((t=>t.url===e.url));t<0||(T(t),N(!0))},showUploadList:{showRemoveIcon:!1,showDownloadIcon:!1},itemRender:(e,t,n,r)=>l().createElement("div",{className:xe()("upload-item",{handle:d})},e,!O&&l().createElement(we.CloseOutlined,{title:v("qm.upload.remove"),className:"icon",onClick:()=>r.remove()}))}),l().createElement("span",{className:"inner",ref:E},k&&!(m&&n.length)&&l().createElement(l().Fragment,null,l().createElement("p",{className:"ant-upload-drag-icon"},l().createElement(we.InboxOutlined,null)),l().createElement("p",{className:"ant-upload-text"},v("qm.uploadCropper.dragableText")),l().createElement("button",{className:xe()("ant-upload-button",{disabled:O}),onClick:e=>{e.stopPropagation(),e.preventDefault()},onFocus:()=>{C.current=!0},onBlur:()=>{C.current=!1}},v("qm.uploadCropper.pasteText")))));return l().createElement(l().Fragment,null,r?l().createElement(tu,{className:f,fixedSize:a,quality:i,fileTypes:o,fileSize:s,beforeCrop:g},H):H,l().createElement("div",{style:{display:"none"}},l().createElement(R.Image.PreviewGroup,{key:n.map((e=>e.uid||"")).join(","),preview:{visible:S,current:I,rootClassName:f,onVisibleChange:e=>N(e)}},n.map(((e,t)=>l().createElement(R.Image,{key:e.uid||t,src:e.url,alt:""}))))))};ru.displayName="QmUploadImg";const au=ru;function iu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const lu=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o={},disabled:s,readOnly:c}=e.option,{multiple:d=!0,maxCount:u=1,fixedSize:m,quality:p,openCropper:h,fileTypes:f,fileSize:g,draggable:y,onRemove:b,onSortChange:v}=i,{action:x,headers:E,params:w,withCredentials:C=!1,dataKey:S="",popupClassName:N,fieldAliasMap:I,beforeUpload:T}=o,O="function"==typeof I?I():I||{},{t:k}=U();return l().createElement(au,{name:"file",action:x,multiple:d,headers:E,data:w,withCredentials:C,popupClassName:N,beforeUpload:T,maxCount:u,fixedSize:m,quality:p,openCropper:h,fileTypes:f,fileSize:g,draggable:y,disabled:s||t.props.disabled,readOnly:t.isOnlyShow||c,fileList:n,onChange:({fileList:e})=>{(e=>{const t=e.map((e=>{const t=e.response||{},n={};for(const r in O)n[r]=e[r]||t.data?.[O[r]]||"";return e.response&&200!==t.code&&R.message.error(t.message||k("qm.uploadCropper.uploadError")),{uid:e.uid,name:e.name,...n,url:e.url||(S?(0,X.get)(t.data,S):t.data)||"",status:e.status}}));r?.(t),t.every((e=>"done"===e.status&&e.url))&&a(t)})(e)},onRemove:b,onSortChange:v})};class ou extends i.Component{constructor(...e){super(...e),iu(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(lu,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,"")}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}iu(ou,"contextType",xn);const su=ou,cu={onActivate:br.func,onAddUndo:br.func,onBeforeAddUndo:br.func,onBeforeExecCommand:br.func,onBeforeGetContent:br.func,onBeforeRenderUI:br.func,onBeforeSetContent:br.func,onBeforePaste:br.func,onBlur:br.func,onChange:br.func,onClearUndos:br.func,onClick:br.func,onContextMenu:br.func,onCommentChange:br.func,onCopy:br.func,onCut:br.func,onDblclick:br.func,onDeactivate:br.func,onDirty:br.func,onDrag:br.func,onDragDrop:br.func,onDragEnd:br.func,onDragGesture:br.func,onDragOver:br.func,onDrop:br.func,onExecCommand:br.func,onFocus:br.func,onFocusIn:br.func,onFocusOut:br.func,onGetContent:br.func,onHide:br.func,onInit:br.func,onKeyDown:br.func,onKeyPress:br.func,onKeyUp:br.func,onLoadContent:br.func,onMouseDown:br.func,onMouseEnter:br.func,onMouseLeave:br.func,onMouseMove:br.func,onMouseOut:br.func,onMouseOver:br.func,onMouseUp:br.func,onNodeChange:br.func,onObjectResizeStart:br.func,onObjectResized:br.func,onObjectSelected:br.func,onPaste:br.func,onPostProcess:br.func,onPostRender:br.func,onPreProcess:br.func,onProgressState:br.func,onRedo:br.func,onRemove:br.func,onReset:br.func,onSaveContent:br.func,onSelectionChange:br.func,onSetAttrib:br.func,onSetContent:br.func,onShow:br.func,onSubmit:br.func,onUndo:br.func,onVisualAid:br.func,onSkinLoadError:br.func,onThemeLoadError:br.func,onModelLoadError:br.func,onPluginLoadError:br.func,onIconsLoadError:br.func,onLanguageLoadError:br.func},du={apiKey:br.string,id:br.string,inline:br.bool,init:br.object,initialValue:br.string,onEditorChange:br.func,value:br.string,tagName:br.string,cloudChannel:br.string,plugins:br.oneOfType([br.string,br.array]),toolbar:br.oneOfType([br.string,br.array]),disabled:br.bool,textareaName:br.string,tinymceScriptSrc:br.string,rollback:br.oneOfType([br.number,br.oneOf([!1])]),scriptLoading:br.shape({async:br.bool,defer:br.bool,delay:br.number}),...cu},uu=e=>"function"==typeof e,mu=e=>e in cu,pu=e=>e.substr(2),hu=(e,t,n,r,a)=>((t,n,r,a,i,l,o)=>{const s=Object.keys(i).filter(mu),c=Object.keys(l).filter(mu),d=s.filter((e=>void 0===l[e])),u=c.filter((e=>void 0===i[e]));d.forEach((e=>{const t=pu(e),n=o[t];r(t,n),delete o[t]})),u.forEach((r=>{const a=((t,n)=>r=>t(n)?.(r,e))(t,r),i=pu(r);o[i]=a,n(i,a)}))})(a,e.on.bind(e),e.off.bind(e),0,t,n,r);let fu=0;const gu=e=>{const t=Date.now(),n=Math.floor(1e9*Math.random());return fu++,e+"_"+n+fu+String(t)},yu=e=>null!==e&&("textarea"===e.tagName.toLowerCase()||"input"===e.tagName.toLowerCase()),bu=e=>void 0===e||""===e?[]:Array.isArray(e)?e:e.split(" "),vu=(e,t)=>{void 0!==e&&(null!=e.mode&&"object"==typeof e.mode&&"function"==typeof e.mode.set?e.mode.set(t):e.setMode(t))},xu=()=>({listeners:[],scriptId:gu("tiny-script"),scriptLoading:!1,scriptLoaded:!1}),Eu=(()=>{let e=xu();return{load:(t,n,r,a,i,l)=>{const o=()=>((t,n,r,a,i)=>{const l=n.createElement("script");l.referrerPolicy="origin",l.type="application/javascript",l.id=t,l.src=r,l.async=a,l.defer=i;const o=()=>{l.removeEventListener("load",o),e.listeners.forEach((e=>e())),e.scriptLoaded=!0};l.addEventListener("load",o),n.head&&n.head.appendChild(l)})(e.scriptId,t,n,r,a);e.scriptLoaded?l():(e.listeners.push(l),e.scriptLoading||(e.scriptLoading=!0,i>0?setTimeout(o,i):o()))},reinitialize:()=>{e=xu()}}})(),wu=e=>{const t=e;return t&&t.tinymce?t.tinymce:null};function Cu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Su extends i.Component{constructor(e){super(e),Cu(this,"editor",void 0),Cu(this,"id",void 0),Cu(this,"elementRef",void 0),Cu(this,"inline",void 0),Cu(this,"currentContent",void 0),Cu(this,"boundHandlers",void 0),Cu(this,"rollbackTimer",void 0),Cu(this,"valueCursor",void 0),Cu(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})),Cu(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){}})),Cu(this,"handleBeforeInputSpecial",(e=>{"Enter"!==e.key&&"Backspace"!==e.key&&"Delete"!==e.key||this.handleBeforeInput(e)})),Cu(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))}})),Cu(this,"handleEditorChangeSpecial",(e=>{"Backspace"!==e.key&&"Delete"!==e.key||this.handleEditorChange(e)})),Cu(this,"initialise",((e=0)=>{const t=this.elementRef.current;if(!t)return;if(!(e=>{if(!("isConnected"in Node.prototype)){let t=e,n=e.parentNode;for(;null!=n;)t=n,n=t.parentNode;return t===e.ownerDocument}return e.isConnected})(t)){if(0===e)setTimeout((()=>this.initialise(1)),1);else{if(!(e<100))throw new Error("tinymce can only be initialised when in a document");setTimeout((()=>this.initialise(e+1)),100)}return}const n=wu(this.view);if(!n)throw new Error("tinymce should have been loaded into global scope");const r={...this.props.init,selector:void 0,target:t,readonly:this.props.disabled,inline:this.inline,plugins:(a=this.props.init?.plugins,i=this.props.plugins,bu(a).concat(bu(i))),toolbar:this.props.toolbar??this.props.init?.toolbar,setup:e=>{this.editor=e,this.bindHandlers({}),this.inline&&!yu(t)&&e.once("PostRender",(t=>{e.setContent(this.getInitialValue(),{no_events:!0})})),this.props.init&&uu(this.props.init.setup)&&this.props.init.setup(e)},init_instance_callback:e=>{const t=this.getInitialValue();this.currentContent=this.currentContent??e.getContent(),this.currentContent!==t&&(this.currentContent=t,e.setContent(t),e.undoManager.clear(),e.undoManager.add(),e.setDirty(!1));const n=this.props.disabled??!1;vu(this.editor,n?"readonly":"design"),this.props.init&&uu(this.props.init.init_instance_callback)&&this.props.init.init_instance_callback(e)}};var a,i;this.inline||(t.style.visibility=""),yu(t)&&(t.value=this.getInitialValue()),n.init(r)})),this.id=this.props.id||gu("tiny-react"),this.elementRef=i.createRef(),this.inline=this.props.inline??this.props.init?.inline??!1,this.boundHandlers={}}get view(){return this.elementRef.current?.ownerDocument.defaultView??window}componentDidUpdate(e){if(this.rollbackTimer&&(clearTimeout(this.rollbackTimer),this.rollbackTimer=void 0),this.editor&&(this.bindHandlers(e),this.editor.initialized)){if(this.currentContent=this.currentContent??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 n=this.valueCursor;if(e.setContent(this.props.value),!this.inline||e.hasFocus())for(const r of[t,n])if(r)try{e.selection.moveToBookmark(r),this.valueCursor=r;break}catch(e){}}))}if(this.props.disabled!==e.disabled){const e=this.props.disabled??!1;vu(this.editor,e?"readonly":"design")}}}componentDidMount(){null!==wu(this.view)?this.initialise():this.elementRef.current&&this.elementRef.current.ownerDocument&&Eu.load(this.elementRef.current.ownerDocument,this.getScriptSrc(),this.props.scriptLoading?.async??!1,this.props.scriptLoading?.defer??!1,this.props.scriptLoading?.delay??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(){const e=wu(this.view)?.Env?.browser?.isIE();return e?"change keyup compositionend setcontent CommentChange":"change input compositionend setcontent CommentChange"}beforeInputEvent(){return window.InputEvent&&"function"==typeof InputEvent.prototype.getTargetRanges?"beforeinput SelectionChange":"SelectionChange"}renderInline(){const{tagName:e="div"}=this.props;return i.createElement(e,{ref:this.elementRef,id:this.id})}renderIframe(){return i.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){hu(this.editor,e,this.props,this.boundHandlers,(e=>this.props[e]));const t=e=>void 0!==e.onEditorChange||void 0!==e.value,n=t(e),r=t(this.props);!n&&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)):n&&!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))}}}Cu(Su,"propTypes",du),Cu(Su,"defaultProps",{cloudChannel:"6"});var Nu=function(e){return e["zh-cn"]="zh_CN",e["zh-tw"]="zh_TW",e.en="en",e}(Nu||{});const Iu=e=>{const{className:t,style:n,tinymce:r={},upload:a={},thresholdSize:i=.5,tinymceScriptSrc:s,disabled:c,value:d,onResizeEditor:u,onChange:m}=e,{global:p}=l().useContext(o),{$size:h}=Y(e),{$locale:f,t:g}=U(),y={height:r.height||400,plugins:r.plugins||"preview importcss searchreplace autolink save directionality code visualblocks visualchars fullscreen image link media template codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap quickbars emoticons",toolbar:r.toolbar||"undo redo | blocks fontfamily fontsize | bold italic underline strikethrough | align numlist bullist | link image | table media | lineheight outdent indent| forecolor backcolor removeformat | charmap emoticons | code fullscreen preview | save print | pagebreak anchor codesample | ltr rtl",menubar:r.menubar||"file edit view insert format tools table help",font_family_formats:"微软雅黑=Microsoft YaHei,Helvetica Neue,PingFang SC,sans-serif;苹果苹方=PingFang SC,Microsoft YaHei,sans-serif;宋体=simsun,serif;仿宋体=FangSong,serif;黑体=SimHei,sans-serif;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",font_size_formats:"10px 12px 14px 16px 18px 20px 24px 36px 48px 56px 72px",language:Nu[f],skin:"tinymce-5",...oe(r,["height","plugins","toolbar","menubar"]),images_upload_handler:e=>{const{action:t,headers:n,dataKey:r,customHandler:l}=a;return l?l(e):new Promise((async(a,l)=>{const o=`data:image/jpeg;base64,${e.base64()}`,s=new FormData;s.append("file",e.blob(),e.filename());const c=e.blob().size;if(t&&c/1024/1024>i)try{const e=await fetch(t,{method:"POST",body:s,headers:n});if(!e.ok)throw l(""),new Error(g("qm.upload.uploadError"));const i=await e.json();200===i.code&&a(r?(0,X.get)(i.data,r):i.data)}catch(e){R.message.error(g("qm.uploadCropper.uploadError"))}else a(o)}))},setup:e=>{e.on("ResizeEditor",(t=>{const{offsetWidth:n,offsetHeight:r}=e.editorContainer;u?.({width:n,height:r},t)}))}},b=Ee("tinymce"),v={[b]:!0,[`${b}--lg`]:"large"===h,[`${b}--sm`]:"small"===h},x={init:y,value:d,disabled:c,tinymceScriptSrc:s||p?.tinymce?.scriptSrc||void 0,onEditorChange:(e,t)=>{m?.(t.getContent(),t)}};return l().createElement("div",{className:xe()(v,t),style:n},l().createElement(Su,x))};Iu.displayName="QmTinymce";const Tu=Iu;function Ru(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Ou=e=>{const{$$form:t}=l().useContext(xn),{value:n,onChange:r,onValuesChange:a}=e,{options:i={},upload:o,style:s={},readOnly:c,disabled:d=t.isFormDisabled}=e.option,{tinymce:u,thresholdSize:m,onResizeEditor:p}=i;return l().createElement(Tu,{value:n,tinymce:u,upload:o,thresholdSize:m,style:{width:"100%",...s},disabled:d||c||t.isOnlyShow,onResizeEditor:p,onChange:e=>{(e=>{r?.(e),a(e)})(e)}})};class ku extends i.Component{constructor(...e){super(...e),Ru(this,"context",void 0)}render(){const{$$form:e}=this.context,{type:t,label:n,tooltip:r,fieldName:a,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:m=[],onChange:p=ee}=this.props.option;return l().createElement(R.Form.Item,{label:e.renderFormLabel(n),className:xe()(c),tooltip:r,hidden:i,labelCol:{flex:e.verticalLayout?"initial":ce(s)},required:e.getFormItemRequired(m)},l().createElement(R.Row,{wrap:!1,gutter:4},l().createElement(R.Col,{flex:"auto"},l().createElement(R.Form.Item,{name:a,noStyle:!0,rules:m,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(n)}},l().createElement(Ou,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(a,t)}}))),d&&l().createElement(R.Col,{flex:ce(d.labelWidth||Er)},e.renderFormItemExtra({fieldName:a,...d}))))}}Ru(ku,"contextType",xn);const Pu=ku;function Lu(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Au extends i.Component{constructor(e){super(e),Lu(this,"context",void 0),Lu(this,"provide",{$$form:this,echo_data:{}}),Lu(this,"_initialValues",void 0),Lu(this,"_initialOthers",void 0),Lu(this,"_initialExtras",void 0),Lu(this,"_fieldAuth",{}),Lu(this,"wrapperRef",l().createRef()),Lu(this,"formRef",l().createRef()),Lu(this,"originItems",[]),Lu(this,"state",{formData:{},viewData:{},other:{},extra:{},expand:{},flexCols:this.props.cols??4,collapse:!!this.props.defaultExpand}),Lu(this,"resizeObserveHandler",(()=>{const e=this.wrapperRef.current?.offsetWidth;if(void 0===e||0===e||this.props.cols>0)return;let t=Math.floor(e/300);t=24%t==0?t:t-1,t=t<1?1:t,t=t>8?8:t,t!==this.state.flexCols&&this.setState({flexCols:t})})),Lu(this,"resizeListenerHandle",(0,X.debounce)(this.resizeObserveHandler,10)),Lu(this,"getFormItems",vn()((e=>e.filter((e=>!e.noAuth&&!e.hidden))))),Lu(this,"getFlattenItems",vn()((e=>{const t=[];return e.filter((e=>e.fieldName&&"DIVIDER"!==e.type)).forEach((e=>{(0,X.isPlainObject)(e.label)&&e.label.fieldName&&t.push(e.label),t.push(e)})),t}))),Lu(this,"valuesChangeHandle",((e,t)=>{this.props.onValuesChange?.(e,this._initialValues)})),Lu(this,"fieldsChangeHandle",((e,t)=>{this.props.onFieldsChange?.(e,t)})),Lu(this,"finishHandle",(e=>{this.props.onFinish?.(Object.assign({},this.get_fields_other(),this.formatFormValue(e)))})),Lu(this,"finishFailedHandle",(({values:e,errorFields:t})=>{this.props.onFinishFailed?.(t)})),Lu(this,"openValidateInfo",(e=>{const t=l().createElement("ul",null,e.map((e=>{const{label:t}=this.formItems.find((t=>t.fieldName===e.name[0]));return l().createElement("li",{key:e.name[0],style:{color:"#ff4d4f"}},"[",("string"==typeof t?`${t}: `:"")+e.errors.join(","),"]")})));R.notification.error({message:p("qm.form.validatePrompt"),description:t,duration:10})})),Lu(this,"scrollToField",(e=>{if(!e)return;const t=this.wrapperRef.current.querySelector(`.${e}`);t&&Yt()(t,{scrollMode:"if-needed",block:"nearest",behavior:"smooth"})})),this.createOriginItems(),this.createInitialValues(),this.createInitialOthers(),this.createInitialExtras(),this.createFormAuth()}get $size(){return this.props.size??this.context.size??""}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 isFormDisabled(){return this.props.disabled}get isCompactMode(){const e=this.context.global;return this.props.compactMode??("small"===this.$size&&!!e?.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(){bt(this.wrapperRef.current,this.resizeListenerHandle)}removeResizeEvent(){vt(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&&me("Form","配置项 fieldName 属性是唯一的,不能重复")}getFormItemRequired(e=[]){return e.some((e=>e.required))}createOtherValue(e){const t=this.flattenItems.map((e=>e.fieldName)),n={};for(const r in e)t.includes(r)||(n[r]=e[r]);return Object.assign({},n)}createExtraValue(e){const t={};return this.flattenItems.filter((e=>(0,X.isPlainObject)(e.extra))).forEach((n=>{t[n.fieldName]=e[n.fieldName]??""})),Object.assign({},t)}createDividerExpand(){const e={};return this.dividers.filter((e=>(0,X.isPlainObject)(e.collapse))).forEach((t=>{e[t.fieldName]=t.collapse.defaultExpand??!1})),Object.assign({},e)}getInitialValue(e,t){const{type:n,options:r}=e;return t=t??void 0,Nr.includes(n)&&(t=t??[]),"CHECKBOX"!==n&&"SWITCH"!==n||(t=t??r?.falseValue??Cr),t}createFormValue(e){const t={};return this.flattenItems.forEach((n=>{t[n.fieldName]=this.getInitialValue(n,e[n.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)}createOriginItems(){this.originItems=se(this.props.items)}getOriginItems(){return this.originItems}setViewValue(e,t=""){t!==this.getViewValue(e)&&this.setState((n=>({viewData:Object.assign({},n.viewData,{[e]:t})})))}getViewValue(e){return this.state.viewData[e]??""}setExpandHandle(e){e!==this.state.collapse&&(this.setState({collapse:e}),this.props.onCollapse?.(e),re((()=>this.props.onCollapse?.(e))))}createInputFocus(){const{isAutoFocus:e}=this.props;if(!e||this.isOnlyShow)return;const{type:t,fieldName:n}=this.formItems.filter((e=>e.fieldName))[0]||{};"INPUT"!==t&&"INPUT_NUMBER"!==t||!n||setTimeout((()=>this.CREATE_FOCUS(n)))}getFormItemLabel(e){if(Kr(e))return zr(e);if((0,X.isPlainObject)(e)){const{fieldName:t,label:n,options:r={}}=e;if(Kr(n))return zr(n);const{itemList:a=[]}=r,i=this.formRef.current?.getFieldsValue([t])[t]??this._initialValues[t]??a[0]?.value;return a.find((e=>e.value===i))?.text||""}return""}getBlockDerivedItems(){const e=[];for(let t=0,n=this.dividers.length;t<n;t++){const n=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(n,r).map((e=>({label:e.label,fieldName:e.fieldName}))))}return e}getFormItemDisplay({type:e,fieldName:t}){if("DIVIDER"===e)return!0;const n=this.getBlockDerivedItems();for(let e=0,r=n.length;e<r;e++){const r=n[e],a=this.dividers.find((e=>e.fieldName===r[0].fieldName)),i=a?.collapse?.showLimit??r.length-1;for(let e=1;e<r.length;e++)if(r[e].fieldName===t&&e>i)return this.state.expand[r[0].fieldName]}return!0}formatFormValue(e){for(const t in e){const n=e[t];if(_r(n)&&(e[t]=""),Array.isArray(n)&&n.forEach(((n,r)=>{_r(n)&&(e[t][r]="")})),t.includes("|")&&Array.isArray(n)){const[r,a]=t.split("|");e[r]=n[0]??"",e[a]=n[1]??""}}if(this.isFilterType)for(const t in e)ie(e[t])&&(e[t]=void 0);return e}setFieldAuth(e,t){this._fieldAuth[e]=t}async createFormAuth(){const{authConfig:e}=this.props;if(!e)return;let t=oe(e,["fetch"]);if(e.fetch){const{api:n,params:r,dataKey:a}=e.fetch;try{const e=await n(r);200===e.code&&(t=(a?(0,X.get)(e.data,a):e.data)??{})}catch(e){}}if(Array.isArray(t.fieldList)){const e=this.props.items.map((e=>{const{fieldName:n}=e,r=t.fieldList.find((e=>e.dataIndex===n));if(r){const t=this.originItems.find((e=>e.fieldName===n)),{visible:a=1,disabled:i,secretName:l}=r;a||(e.noAuth=!0,t.noAuth=!0),i&&(e.disabled=!0,t.disabled=!0),l&&(e.options?e.options.secretType=l:e.options={secretType:l},t.options=Object.assign({},t.options,{secretType:l})),this.setFieldAuth(n,{visible:a,disabled:i,secretName:l})}return e}));this.props.fieldsChange?.(e)}}INPUT(e){return l().createElement(ya,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT(e){return l().createElement(Ea,{option:e})}INPUT_NUMBER(e){return l().createElement(Ta,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT_NUMBER(e){return l().createElement(Pa,{option:e})}SEARCH_HELPER(e){return l().createElement(Vs,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}MULTIPLE_SEARCH_HELPER(e){return l().createElement(Js,{option:e})}TREE_TABLE_HELPER(e){return l().createElement(dc,{option:e})}MULTIPLE_TREE_TABLE_HELPER(e){return l().createElement(gc,{option:e})}RANGE_SEARCH_HELPER(e){return l().createElement(Ic,{option:e})}CHECKBOX(e){return l().createElement(da,{option:e})}MULTIPLE_CHECKBOX(e){return l().createElement(kc,{option:e})}RATE(e){return l().createElement(_c,{option:e})}RADIO(e){return l().createElement(qc,{option:e})}SWITCH(e){return l().createElement(zc,{option:e})}TEXT_AREA(e){return l().createElement(Bc,{option:e})}DATE(e){return l().createElement(Xc,{option:e})}RANGE_DATE(e){return l().createElement(td,{option:e})}TIME(e){return l().createElement(id,{option:e})}RANGE_TIME(e){return l().createElement(cd,{option:e})}SELECT(e){return l().createElement(la,{option:e})}MULTIPLE_SELECT(e){return l().createElement(la,{option:e,multiple:!0})}IMMEDIATE(e){return l().createElement(pd,{option:e})}DIVIDER(e){return l().createElement(gd,{option:e})}TREE_SELECT(e){return l().createElement(wd,{option:e})}MULTIPLE_TREE_SELECT(e){return l().createElement(wd,{option:e,multiple:!0})}CASCADER(e){return l().createElement(Td,{option:e})}MULTIPLE_CASCADER(e){return l().createElement(Td,{option:e,multiple:!0})}CITY_SELECT(e){return l().createElement(Md,{option:e})}REGION_SELECT(e){return l().createElement(Wd,{option:e})}UPLOAD_FILE(e){return l().createElement(Xd,{option:e})}UPLOAD_IMG(e){return l().createElement(su,{option:e})}TINYMCE(e){return l().createElement(Pu,{option:e})}renderFormLabel(e){if(Kr(e)||!(0,X.isPlainObject)(e))return e;const{type:t,fieldName:n,label:r,options:a={},onChange:i=ee}=e,{itemList:o=[]}=a;return"SELECT"===t?l().createElement(R.Form.Item,{name:n,noStyle:!0},l().createElement(aa,{option:e,items:o,loading:!1,onValuesChange:(e,t)=>i(e,t)})):"CHECKBOX"===t?l().createElement(l().Fragment,null,l().createElement("span",{style:{paddingRight:5}},r),l().createElement(R.Form.Item,{name:n,noStyle:!0},l().createElement(sa,{option:e,onValuesChange:e=>i(e)}))):null}renderFormItemExtra(e){const{fieldName:t,isTooltip:n,style:r={},render:a}=e,{extra:i}=this.state;if(n)return l().createElement(R.Tooltip,{className:"extra-tooltip",title:i[t]},l().createElement(we.ExclamationCircleOutlined,{style:{marginLeft:4}}));const o=this.formItems.find((e=>e.fieldName===t));return l().createElement("div",{className:"extra-text",title:a?"":i[t],style:r},l().createElement("span",{className:"extra-overflow-cut"},a?a(o,this):i[t]))}renderFormItemButton(e,t){const n=this.formItems.find((t=>t.fieldName===e)),r="function"==typeof t?t(n):t;return this.isOnlyShow?null:r}renderFormItem(e){const{label:t,fieldName:n,invisible:r,tooltip:a,className:i,labelWidth:o=this.props.labelWidth,validateTrigger:s,rules:c=[],style:d={},render:u}=e;return l().createElement(R.Form.Item,{label:this.renderFormLabel(t),name:n,rules:c,tooltip:a,hidden:r,className:xe()(i),style:{width:"100%",...d},labelCol:{flex:this.verticalLayout?"initial":ce(o)},validateTrigger:s,messageVariables:{label:this.getFormItemLabel(t)}},this.formRef.current?u(e,this):l().createElement(l().Fragment,null))}createFormItem(e){return(0,X.isFunction)(this[e.type])?e.render?this.renderFormItem(e):this[e.type](e):(me("Form",`配置项 ${e.fieldName} 的 type 类型错误`),null)}createFormLayout(){const{flexCols:e}=this.state,{formType:t,defaultRows:n,isFieldsDefine:r}=this.props,a=[];this.formItems.forEach((e=>{const{offsetLeft:t=0,offsetRight:n=0}=e;for(let e=0;e<t;e++)a.push({});a.push(e);for(let e=0;e<n;e++)a.push({})}));const i=24/e,o=[],s=a.reduce(((e,t)=>{const{selfCol:n=1}=t,r=e+n;return o.push(r),r}),0),c=n>Math.ceil(s/e)?Math.ceil(s/e):n,d=[],u=a.map(((t,n)=>{let{selfCol:r=1}=t;const{type:a,fieldName:s}=t;r=r>=24||"DIVIDER"===a||"TINYMCE"===a?e:r;const u=!(!this.state.collapse&&this.showFilterCollapse)||o[n]<c*e,m=!this.showDividerCollapse||this.getFormItemDisplay(t);return u&&d.push(o[n]),l().createElement(R.Col,{key:s??n,className:s,span:r*i,style:this.isFilterType?{display:!this.showFilterCollapse||u?"block":"none"}:{display:m?"block":"none"}},a?this.createFormItem(se(t)):null)}));return r&&"default"===t&&u.push(l().createElement("div",{className:"form-fields__define"},this.createFieldsDefine())),[...u,this.createSearchButtonLayout(d[d.length-1])]}createSearchButtonLayout(e=0){const{flexCols:t,collapse:n}=this.state,{searchButtonCols:r,isSearchBtn:a,isFieldsDefine:i=!0}=this.props;if(!this.isFilterType)return null;const o=24/t,s=r||1,c=t-e%t-s;return a?l().createElement(R.Col,{key:"-",span:s*o,offset:c*o,style:{textAlign:"right"}},l().createElement(R.Space,{style:{marginBottom:12}},l().createElement(fe,{type:"primary",size:this.$size,icon:l().createElement(we.SearchOutlined,null),onClick:()=>this.SUBMIT_FORM()},p("qm.form.search")),l().createElement(fe,{size:this.$size,icon:l().createElement(we.ReloadOutlined,null),onClick:()=>this.RESET_FORM()},p("qm.form.reset")),i?this.createFieldsDefine():null,this.showFilterCollapse&&l().createElement("a",{onClick:()=>this.setExpandHandle(!n)},n?l().createElement(we.UpOutlined,null):l().createElement(we.DownOutlined,null)," ",p(n?"qm.form.collect":"qm.form.spread")))):null}createFormButtonLayout(){const{flexCols:e}=this.state,{formType:t,isSubmitBtn:n}=this.props;if(this.isFilterType)return null;const r=24/e;return n&&"default"===t?l().createElement(R.Row,{gutter:0},l().createElement(R.Col,{key:"-",span:r},l().createElement(R.Form.Item,null,l().createElement(R.Space,{style:{marginBottom:12}},l().createElement(fe,{type:"primary",size:this.$size,onClick:()=>this.SUBMIT_FORM()},p("qm.form.save")),l().createElement(fe,{size:this.$size,onClick:()=>this.RESET_FORM()},p("qm.form.reset")))))):null}createFieldsDefine(){const{uniqueKey:e,items:t,fieldsChange:n}=this.props;return l().createElement(pa,{uniqueKey:e,items:t,fieldsChange:n})}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((async(e,t)=>{const[n,r]=await this.VALIDATE_FIELDS(),a=this.formItems.filter((e=>"SEARCH_HELPER"===e.type)).filter((e=>this[`${e.fieldName}_Ref`]?.searchRef._is_change)).map((e=>({name:[e.fieldName],errors:[p("qm.form.searchHelperTips")],warnings:[]})));n||a.length?t((n||[]).concat(a)):e(r)}))}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))}async GET_FORM_DATA(){try{const e=await 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]}}async VALIDATE_FIELDS(e){try{return[null,await 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)}async SUBMIT_FORM(){try{await this.formValidate(),this.formRef.current.submit()}catch(e){this.isFilterType&&this.setExpandHandle(!0)}}RESET_FORM(){const e=this.flattenItems.filter((e=>e.noReset)).map((e=>e.fieldName)),t=this.flattenItems.map((e=>e.fieldName)).filter((t=>!e.includes(t)));t.length&&this.formRef.current.resetFields(t),this.setState((e=>{const t=Object.keys(e.other),n=Object.keys(this._initialOthers),r=t.filter((e=>!n.includes(e))),a={};return r.forEach((e=>a[e]=void 0)),{other:Object.assign({},this._initialOthers,a)}})),this.setState({extra:Object.assign({},this._initialExtras)}),this.props.onReset?.()}CREATE_FOCUS(e){try{this[`${e}_Ref`].focus()}catch(e){me("Form","参数 `fieldName` 的值不正确或者该表单项不支持获得焦点")}}SET_FORM_ITEM(e,t,n){const{items:r,fieldsChange:a}=this.props,i=r.find((t=>t.fieldName===e));if(!i)return me("Form","SET_FORM_ITEM 方法参数 `fieldName` 的值不正确");if(!(0,X.isPlainObject)(t))return me("Form","SET_FORM_ITEM 方法参数 `option` 的值不正确");if(i.noAuth)return me("Form","SET_FORM_ITEM 方法不能操作受权限控制的表单项");for(const n in t)n&&(Object.keys(this._fieldAuth).includes(e)&&"disabled"===n||(0,X.set)(i,n,t[n]));n&&(a?a([...r]):me("Form","需要设置 `fieldsChange` 参数"))}render(){const{className:e,style:t,layout:n,disabled:r,labelWidth:a,labelAlign:i,labelWrap:o,customClass:s}=this.props,c=Ee("form"),d={required:"${label}"+p("qm.form.requiredTips")},u={[c]:!0,[`${c}--lg`]:"large"===this.$size,[`${c}--sm`]:"small"===this.$size,[`${c}__only-show`]:this.isOnlyShow,[`${c}__compact`]:this.isCompactMode,[s]:!!s};return l().createElement("div",{ref:this.wrapperRef,className:xe()(u,e),style:t},l().createElement(R.Form,{ref:this.formRef,size:this.$size,initialValues:this._initialValues,layout:n,labelAlign:i,labelWrap:o,colon:!1,disabled:r,labelCol:{flex:this.verticalLayout?"initial":ce(a)},validateMessages:d,onValuesChange:this.valuesChangeHandle,onFieldsChange:this.fieldsChangeHandle,onFinish:this.finishHandle,onFinishFailed:this.finishFailedHandle},l().createElement(xn.Provider,{value:this.provide},l().createElement(R.Row,{gutter:this.verticalLayout?20:0},this.createFormLayout()),this.createFormButtonLayout())))}}Lu(Au,"contextType",o),Lu(Au,"propTypes",kr),Lu(Au,"defaultProps",Pr);const _u=Au,Fu=e=>null!=e;function Du(e,t,n,r){const[a,i]=l().useState(void 0);l().useLayoutEffect((()=>{const t="function"==typeof e?e():e;i(t||null)}));const[o,s]=l().useState(null),c=()=>{if(a){!(e=>{const t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:r,right:a,bottom:i,left:l}=e.getBoundingClientRect();return r>=0&&l>=0&&a<=t&&i<=n})(a)&&t&&a.scrollIntoView(r);const{left:e,top:n,width:i,height:l}=a.getBoundingClientRect(),o={left:e,top:n,width:i,height:l,radius:0};s((e=>JSON.stringify(e)!==JSON.stringify(o)?o:e))}else s(null)};return l().useLayoutEffect((()=>{c()}),[a,t]),ri({handler:c}),[l().useMemo((()=>{if(!o)return o;const e=n?.offset||6,t=n?.radius||2;return{left:o.left-e,top:o.top-e,width:o.width+2*e,height:o.height+2*e,radius:t}}),[o,n]),a]}function Hu(){return Hu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hu.apply(null,arguments)}const qu={fill:"transparent",pointerEvents:"auto"},$u=e=>{const{prefixCls:t,rootClassName:n,pos:r,showMask:a,style:i={},fill:o="rgba(0,0,0,0.5)",open:s,animated:c,zIndex:d}=e,u=`${t}-mask-${Ba()}`,m="object"==typeof c?c?.placeholder:c;return l().createElement(_l(),{open:s,autoLock:!0},l().createElement("div",{className:xe()(`${t}-mask`,n),style:{position:"fixed",left:0,right:0,top:0,bottom:0,zIndex:d,pointerEvents:"none",...i}},a?l().createElement("svg",{style:{width:"100%",height:"100%"}},l().createElement("defs",null,l().createElement("mask",{id:u},l().createElement("rect",{x:"0",y:"0",width:"100vw",height:"100vh",fill:"white"}),r&&l().createElement("rect",{x:r.left,y:r.top,rx:r.radius,width:r.width,height:r.height,fill:"black",className:m?`${t}-placeholder-animated`:""}))),l().createElement("rect",Hu({},r?null:qu,{x:"0",y:"0",width:"100%",height:"100%",fill:o,mask:`url(#${u})`})),r&&l().createElement(l().Fragment,null,l().createElement("rect",Hu({},qu,{x:"0",y:"0",width:"100%",height:`${r.top}px`})),l().createElement("rect",Hu({},qu,{x:"0",y:"0",width:r.left,height:"100%"})),l().createElement("rect",Hu({},qu,{x:"0",y:r.top+r.height,width:"100%",height:`calc(100vh - ${r.top+r.height}px)`})),l().createElement("rect",Hu({},qu,{x:r.left+r.width,y:"0",width:`calc(100vw - ${r.left+r.width}px)`,height:"100%"})))):null))},Mu=e=>{const{prefixCls:t,zIndex:n,open:r,onPause:a,onPlay:i}=e,[o,s]=Ja(void 0,{value:r,postState:e=>e??!0}),c=l().useRef(null),d=l().useRef(!1),u=G((e=>{m(e),e.shiftKey&&32===e.keyCode&&p()}));l().useEffect((()=>{const e=Ut()(document,"keyup",u);return()=>e.remove()}),[]);const m=e=>{e.stopPropagation(),e.preventDefault()},p=()=>{d.current?d.current=!1:(s(!o),o?a?.():i?.())};return l().createElement("div",{ref:c,className:`${t}-control`,style:{zIndex:n+1},onMouseDown:e=>{m(e);const t=c.current,n=t.offsetWidth,r=t.offsetHeight,a=window.innerWidth,i=window.innerHeight,l=e.clientX-We(t).x,o=e.clientY-We(t).y;return document.onmousemove=e=>{let s=e.clientX-l,c=e.clientY-o;s<0&&(s=0),s>a-n-1&&(s=a-n-1),c<0&&(c=0),c>i-r-1&&(c=i-r-1),ze(t,{left:`${s}px`,top:`${c}px`}),d.current=!0},document.onmouseup=function(){this.onmousemove=null,this.onmouseup=null},!1},onClick:()=>p()},o?l().createElement(we.PauseOutlined,null):l().createElement(we.CaretRightOutlined,null))},Ku=e=>{const{prefixCls:t,current:n,total:r=0,cover:a,title:i,description:o,helper:s={},type:c,zIndex:d,onClose:u,onPrev:m,onNext:p,onFinish:h,className:f,indicatorsRender:g}=e,{t:y}=U(),b="primary"!==c?"primary":"default",v=G((e=>{C(e),40===e.keyCode&&(n<r-1?p?.():h?.()),38===e.keyCode&&n>0&&m?.()}));l().useEffect((()=>{const e=Ut()(document,"keyup",v);return()=>e.remove()}),[]);const x=Fu(a)?l().createElement("div",{className:`${t}-cover`},a):null,E=Fu(o)?l().createElement("div",{className:`${t}-description`},o):null;let w;w=g?g(n,r):[...Array.from({length:r}).keys()].map(((e,r)=>l().createElement("span",{key:e,className:xe()(r===n&&`${t}-indicator-active`,`${t}-indicator`)})));const C=e=>{e.stopPropagation(),e.preventDefault()};return l().createElement("div",{className:xe()(`${t}-content`,f)},l().createElement("div",{className:`${t}-inner`},l().createElement(we.CloseOutlined,{className:`${t}-close`,onClick:u}),s.content&&l().createElement(R.Popover,{placement:"bottom",overlayStyle:{width:360,zIndex:d},content:s.content,title:s.title},l().createElement(we.QuestionCircleOutlined,{className:xe()(`${t}-close`,"help-icon")})),x,l().createElement("div",{className:`${t}-header`},l().createElement("div",{className:`${t}-title`},i)),E,l().createElement("div",{className:`${t}-footer`},r>1&&l().createElement("div",{className:`${t}-indicators`},w),l().createElement(be,{className:`${t}-buttons`},0!==n?l().createElement(fe,{className:`${t}-prev-btn`,size:"small",onMouseDown:C,onClick:m},y("qm.tour.prevStep")):null,n===r-1?l().createElement(fe,{className:`${t}-finish-btn`,type:b,size:"small",onClick:h},y("qm.tour.finish")):l().createElement(fe,{className:`${t}-next-btn`,type:b,size:"small",onMouseDown:C,onClick:p},y("qm.tour.nextStep"))))))},zu=e=>{const{current:t,renderPanel:n}=e;return l().createElement(l().Fragment,null,"function"==typeof n?n(e,t):l().createElement(Ku,e))};function ju(){return ju=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ju.apply(null,arguments)}const Vu={left:"50%",top:"50%",width:1,height:1},Wu=l().forwardRef(((e,t)=>{const{steps:n=[],defaultCurrent:r,current:a,onChange:i,onClose:o,onFinish:s,open:c,type:d="default",mask:u=!0,arrow:m=!0,control:p=!0,overlayClassName:h,overlayStyle:f,placement:g,helper:y,zIndex:b,renderPanel:v,indicatorsRender:x,gap:E,animated:w=!0,scrollIntoViewOptions:C=!0,...S}=e,N=l().useRef(),[I,T]=Ja(0,{value:a,defaultValue:r}),[R,O]=Ja(void 0,{value:c,postState:e=>!(I<0||I>=n.length)&&(e??!1)}),[k,P]=Ja(1051,{value:b,defaultValue:b}),[L,A]=l().useState(),_=l().useRef(R);l().useLayoutEffect((()=>{R&&!_.current&&T(0),_.current=R,A(R)}),[R]),l().useImperativeHandle(t,(()=>({OPEN:()=>O(!0),CLOSE:()=>O(!1),SET_ZINDEX:e=>P(e)})));const{target:F,type:D,placement:H,trigger:q,delay:$,style:M,arrow:K,className:z,mask:j,scrollIntoViewOptions:V,zIndex:W,action:B}=n[I]||{},U=W||k,G=D||d,Y=R&&(j??u),X=V??C,[Q,Z]=Du(F,!!c,E,X),J=((e,t,n)=>n??t??(null===e?"center":"bottom"))(Z,g,H),ee=!!Z&&(void 0===K?m:K),te="object"==typeof ee&&ee.pointAtCenter;l().useLayoutEffect((()=>{N.current?.forceAlign()}),[te,I]),He((()=>{R&&(ie(),B?.(Z,I))}),[R,Z]);const re=e=>{T(e),i?.(e)},ae=()=>{O(!1),o?.(I)},ie=()=>{if(!Z)return;const e=[];!function t(n){if(1===n.nodeType){var r;"INPUT"!==n.tagName&&"TEXTAREA"!==n.tagName||"none"===Ke(r=n,"display")||"hidden"===Ke(r,"visibility")||"0"===Ke(r,"opacity")||e.push(n);for(const e of Array.from(n.childNodes))t(e)}}(Z),e.length&&e[0].focus()};if(void 0===Z)return null;const le=async()=>{if(!q||!Z)return;const{left:e,top:t}=Z.getBoundingClientRect(),n=Z.offsetWidth,r=Z.offsetHeight,[a,i]=[e+n/2,t+r/2],l=new MouseEvent(q,{bubbles:!0,cancelable:!0,button:0,clientX:a,clientY:i}),o=document.elementFromPoint(a,i);o&&(o.dispatchEvent(l),await ne($??320))},oe="boolean"==typeof Y?Y:!!Y,se="boolean"==typeof Y?void 0:Y,ce=Object.assign({},f,M),de=Ee("tour"),ue=[{[`${de}-primary`]:"primary"===G},h,z],me=El({arrowPointAtCenter:te,autoAdjustOverflow:!0,offset:6,arrowWidth:16,borderRadius:8});return l().createElement(l().Fragment,null,l().createElement($u,{zIndex:U,prefixCls:de,pos:Q,showMask:oe,style:se?.style,fill:se?.color,open:L,animated:w,rootClassName:h}),l().createElement(_l(),{open:L,autoLock:!0},l().createElement(Cl(),ju({ref:N},S,{zIndex:U,builtinPlacements:me,popupStyle:ce,popupPlacement:J,popupVisible:L,popupClassName:xe()(ue),prefixCls:de,popup:()=>l().createElement(zu,ju({key:"content",arrow:ee,prefixCls:de,total:n.length,helper:y,renderPanel:v,indicatorsRender:x,onPrev:async()=>{await le(),re(I-1)},onNext:async()=>{await le(),re(I+1)},onClose:ae,current:I,onFinish:()=>{ae(),s?.()}},Object.assign({},n[I],{zIndex:U,type:G}))),arrow:!!ee,getTriggerDOMNode:e=>e||Z||document.body,forceRender:!1,destroyPopupOnHide:!0}),l().createElement("div",{className:xe()(h,`${de}-target-placeholder`),style:{...Q||Vu,position:"fixed",pointerEvents:"none"}}))),p&&l().createElement(_l(),{open:R},l().createElement(Mu,{zIndex:U,prefixCls:de,onPause:()=>A(!1),onPlay:()=>A(!0)})))}));Wu.displayName="QmTour";const Bu=Wu,Uu={previewWidth:1100,defaultDistance:.45,logoHeight:60},Gu=(0,i.createContext)(void 0);var Yu=null;function Xu(){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),n=e.match(/MSIE\D?\d+/i),r=e.match(/OPR\D?\d+/i),a=e.match(/Firefox\D?\d+/i),i=e.match(/x64/i);if(!t&&!n&&i)return!0;if(a){if((a=a[0].match(/\d+/))[0]>=41||i)return!0}else if(r){if((r=r[0].match(/\d+/))[0]>=32)return!0}else if(!t&&!n){var l=e.match(/Chrome\D?\d+/i);if(l&&(l=l[0].match(/\d+/))[0]>=41)return!0}return!1}catch(e){return!0}}function Qu(e,t){var n;try{var r=navigator.userAgent,a=!!r.match(/MSIE/i)||!!r.match(/Trident/i);if(Xu()){try{n=getCLodop()}catch(e){}if(!n&&"complete"!==document.readyState)return void R.message.warning("打印组件还没有加载完毕,请稍等一下再操作");if(!n)return;CLODOP.CVERSION,t&&t.parentNode&&t.parentNode.removeChild(t),e&&e.parentNode&&e.parentNode.removeChild(e)}else if(a&&r.match(/x64/i),e||t?n=a?e:t:Yu?n=Yu:((n=document.createElement("object")).setAttribute("width",0),n.setAttribute("height",0),n.setAttribute("style","position:absolute;left:0px;top:-100px;width:0px;height:0px;"),a?n.setAttribute("classid","clsid:2105C259-1E0C-4534-8141-A753534CB4CA"):n.setAttribute("type","application/x-print-lodop"),document.documentElement.appendChild(n),Yu=n),!n||!n.VERSION)return r.indexOf("Chrome"),r.indexOf("Firefox"),n;return n.VERSION<"6.2.2.6"&&Xu(),n}catch(e){R.message.error("getLodop 出错:"+e)}}Xu();const Zu=e=>{const t=e/25.4*(()=>{const e=[],{deviceXDPI:t,deviceYDPI:n}=window.screen;if(t&&n)e[0]=t,e[1]=n;else{let t=document.createElement("DIV");t.style.cssText="width: 1in; height: 1in; position: absolute; left: 0px; top: 0px; z-index: -1; visibility: hidden;",document.body.appendChild(t),e[0]=parseInt(t.offsetWidth.toString()),e[1]=parseInt(t.offsetHeight.toString()),t.parentNode?.removeChild(t),t=null}return e})()[0];return Math.ceil(t)},Ju=l().forwardRef(((e,t)=>{const{templateRender:n,directPrint:r}=e,{global:a}=l().useContext(o),{$$preview:i}=l().useContext(Gu),{state:s,isWindowsPrinter:c,pageSize:d}=i,u=l().useRef(null),m=l().useRef({}),p=l().useRef([]),h=l().useRef([]),f=l().useRef([]),[g,y]=l().useState(!0);l().useImperativeHandle(t,(()=>({createPreviewDom:k,createExportHtml:L,createPrintHtml:P,SHOW_PREVIEW:A,DIRECT_PRINT:_}))),He((()=>{O()}),[s.form.printerType,s.form.setting.direction,s.form.setting.distance,s.form.setting.fixedLogo]),l().useEffect((()=>{m.current.templateEl=u.current.querySelector(".origin-template").children[0],m.current.previewEl=u.current.querySelector(".workspace")}),[]);const b=l().useMemo((()=>{const{form:{setting:{direction:e}}}=s,t=c?10*Uu.defaultDistance+10*Uu.defaultDistance:0;return("vertical"===e?d[0]:d[1])-t}),[s,c,d]),v=l().useMemo((()=>{const{form:{setting:{direction:e}}}=s,t=c?10*Uu.defaultDistance+10*Uu.defaultDistance:0;return("vertical"===e?d[1]:d[0])-t}),[s,c,d]),x=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return Zu(b-10*(e.left-Uu.defaultDistance)-10*(e.right-Uu.defaultDistance))}),[s,b]),E=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return Zu(v-10*(e.top-Uu.defaultDistance)-10*(e.bottom-Uu.defaultDistance))}),[s,v]),w=s.form.scale,C=l().useMemo((()=>{const{form:{setting:{distance:e}}}=s;return{left:Zu(10*e.left),right:Zu(10*e.right),top:Zu(10*e.top),bottom:Zu(10*e.bottom)}}),[s]),S=l().useMemo((()=>{const{form:{printerType:e}}=s,{left:t,right:n,top:r,bottom:a}=C,i=x+t+n,l=Uu.previewWidth-i<=0?0:(Uu.previewWidth-i)/2,o=Math.abs((1-w)*i/2);let c=0;return w>1&&(c=o>l?-1*l:-1*o),w<1&&(c=i-2*o>Uu.previewWidth?0:l>0?o:(Uu.previewWidth-(i-2*o))/2),{width:`${x}px`,height:"stylus"===e?"auto":E+"px",paddingLeft:`${t}px`,paddingRight:`${n}px`,paddingTop:`${r}px`,paddingBottom:`${a}px`,transform:`translateX(${c}px) scale(${w})`,opacity:g?0:1}}),[s,g,C,w,E,x]),N=(p.current.some((e=>/^<tr[^>]+type="page-break"[^>]+><\/tr>$/.test(e))),()=>{const e=a?.print?.leftLogo??"",t=a?.print?.rightLogo??"";return[`<tr style="height: ${Uu.logoHeight}px;">`,'<td colspan="8" align="left" style="vertical-align: top;">',e?`<img src="${e}" border="0" height="46" />`:"","</td>",'<td colspan="16" align="right" style="vertical-align: top;">',t?`<img src="${t}" border="0" height="46" />`:"","</td>","</tr>"].join("")}),I=()=>{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");var t,n;e.setAttribute("type","template-cols"),e.style.height="0",e.innerHTML=I().replace(/<tr[^>]+>/,"").replace(/<\/tr>/,""),t=e,(n=m.current.templateEl.children[0]).children[0]?n.insertBefore(t,n.children[0]):n.appendChild(t),e=null},R=()=>{const e=m.current.templateEl.children[0].children,t=[],n=[];for(let r=0;r<e.length;r++){if("template-cols"===e[r].getAttribute("type"))continue;const a=e[r].clientHeight;e[r].style.height=a+"px",n.push(a),t.push(e[r].outerHTML)}h.current=n,p.current=t},O=()=>{if(!p.current.length)return;const{form:{setting:e,printerType:t}}=s;if(r)return f.current.push([I(),N(),...p.current]);const n=e.fixedLogo?E-Uu.logoHeight:E;let a=[];if(f.current=[],"stylus"===t)f.current.push([I(),...e.fixedLogo?[N()]:[],...p.current]);else{let t=0;for(let r=0,i=h.current.length;r<i;r++){const l=p.current[r],o=h.current[r];e.fixedLogo||0!==r||(t+=Uu.logoHeight),t+=o,t<=n?a.push(l):(f.current.push([I(),...e.fixedLogo?[N()]:[],...a]),a=[],t=0,r-=1),r===i-1&&a.length&&f.current.push([I(),...e.fixedLogo?[N()]:[],...a])}}e.fixedLogo||f.current[0]?.splice(1,0,N());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>');i.setState({currentPage:1,totalPage:f.current.length}),k()},k=()=>{const{currentPage:e}=s;let t=`<table cellspacing="0" cellpadding="0" border="0" class="${m.current.templateEl.className}">`;t+=f.current[e-1]?.join("")??"",t+="</table>",m.current.previewEl.innerHTML=t,m.current.previewEl.parentNode.scrollTop=0},P=e=>{let t=`<table cellspacing="0" cellpadding="0" border="0" class="${m.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},L=()=>{const e=[];for(let t=0;t<p.current.length;t++)e[t]=p.current[t].replace(/\s+/g," ").replace(/(<td[^>]+>)\s+/,"$1").replace(/\s+(<\/td>)/,"$1");return"<table>"+N()+I()+e.join("")+"</table>"},A=async()=>{if("TABLE"!==m.current.templateEl?.tagName)return F();m.current.previewEl.innerHTML||(T(),await ne(0),R(),O(),y(!1))},_=async()=>{if("TABLE"!==m.current.templateEl?.tagName)return F();T(),await ne(0),R(),O(),y(!1),i.doPrint(P()),await ne(0),i.doClose()},F=()=>{me("Print","[PrintTemplate] 打印模板组件的根元素必须是 `table` 节点")},D=Ee("print-container"),H={[D]:!0,"no-visible":r};return l().createElement("div",{ref:u,className:xe()(H)},l().createElement(mt,{wrapperClassName:"spin",spinning:g,tip:"Loading..."},l().createElement("div",{className:"preview"},l().createElement("div",{className:"origin-template",style:{width:`${x}px`,marginLeft:`-${Math.floor(x/2)}px`}},n?.()),l().createElement("div",{className:"workspace",style:S}))))}));Ju.displayName="Container";const em=Ju;function tm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class nm extends i.Component{constructor(...e){super(...e),tm(this,"context",void 0),tm(this,"formRef",l().createRef()),tm(this,"createFormList",(()=>[{type:"DIVIDER",fieldName:"_1",label:p("qm.print.setPanel.printParameter")},{type:"SELECT",label:p("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:p("qm.print.setPanel.carbonPaper"),value:"241*280"}]}},{type:"RADIO",label:p("qm.print.setPanel.printDirection"),fieldName:"direction",options:{itemList:[{text:p("qm.print.setPanel.vertical"),value:"vertical"},{text:p("qm.print.setPanel.horizontal"),value:"horizontal"}]}},{type:"CHECKBOX",fieldName:"doubleSide",label:{type:"SELECT",fieldName:"doubleSideType",options:{itemList:[{text:p("qm.print.setPanel.autoDoublePrint"),value:"auto"},{text:p("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:p("qm.print.setPanel.fixedLogo"),fieldName:"fixedLogo",options:{trueValue:1,falseValue:0}},{type:"DIVIDER",fieldName:"_2",label:p("qm.print.setPanel.printMargin")},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.leftMargin"),fieldName:"disleft",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.rightMargin"),fieldName:"disright",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.topMargin"),fieldName:"distop",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:p("qm.print.setPanel.bottomMargin"),fieldName:"disbottom",options:{min:Uu.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:p("qm.print.setPanel.noEmpty")}]}])),tm(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})})),tm(this,"getInitialExtra",(()=>({disleft:p("qm.print.setPanel.sizeUnit"),disright:p("qm.print.setPanel.sizeUnit"),distop:p("qm.print.setPanel.sizeUnit"),disbottom:p("qm.print.setPanel.sizeUnit")}))),tm(this,"state",{formList:this.createFormList()}),tm(this,"confirmHandle",(async()=>{const[e,t]=await 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())})),tm(this,"cancelHandle",(()=>{this.props.onClose()}))}render(){const{formList:e}=this.state;return l().createElement(l().Fragment,null,l().createElement(_u,{ref:this.formRef,items:e,initialValues:this.getInitialvalue(),initialExtras:this.getInitialExtra(),labelWidth:120,cols:2}),l().createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},l().createElement(fe,{onClick:()=>this.cancelHandle(),style:{marginRight:8}},p("qm.dialog.close")),l().createElement(fe,{type:"primary",onClick:()=>this.confirmHandle()},p("qm.dialog.confirm"))))}}tm(nm,"contextType",o);const rm=nm;function am(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class im extends i.Component{constructor(...e){super(...e),am(this,"context",void 0),am(this,"provide",{$$preview:this}),am(this,"containRef",l().createRef()),am(this,"state",{visible:!1,form:{printerName:-1,printerType:this.props.defaultConfig?.printerType||"laser",copies:this.props.defaultConfig?.copies||1,scale:1,setting:{distance:{left:Uu.defaultDistance,right:Uu.defaultDistance,top:Uu.defaultDistance,bottom:Uu.defaultDistance},pageSize:"210*297",direction:this.props.defaultConfig?.direction||"vertical",doubleSide:0,doubleSideType:"auto",fixedLogo:0}},printPage:void 0,currentPage:1,totalPage:0}),am(this,"pageChangeHandle",(e=>{this.setState({currentPage:e},(()=>{this.containRef.current.createPreviewDom()}))})),am(this,"exportClickHandle",(()=>{this.doExport(this.containRef.current.createExportHtml())})),am(this,"printClickHandle",(async()=>{if(this.doPrint(this.containRef.current.createPrintHtml(this.state.printPage)),this.props.uniqueKey)try{const e={...this.state.form,printerName:this.printerItems.find((e=>e.value===this.state.form.printerName)).text};await Mi().setItem(this.printerKey,e),await this.savePrintConfig(this.printerKey,e)}catch(e){}})),am(this,"doClose",(()=>{this.props.onClose?.()})),am(this,"getPrintConfig",(async e=>{const t=this.context.global,n=t?.getComponentConfigApi;if(n)try{const t=await n({key:e});if(200===t.code)return t.data}catch(e){}})),am(this,"savePrintConfig",(async(e,t)=>{const n=this.context.global,r=n?.saveComponentConfigApi;if(r)try{await r({[e]:t})}catch(e){}})),am(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 ')),am(this,"doPrint",(e=>{const t=Qu();if(!t)return;const{uniqueKey:n,closeAfterPrint:r}=this.props,{form:{setting:a,printerName:i,printerType:l,copies:o}}=this.state,{pageSize:s}=this,{defaultDistance:c}=Uu,{left:d,right:u,top:m,bottom:h}=a.distance;t.PRINT_INIT(n??Math.random().toString().slice(2)),t.SET_PRINTER_INDEX(i),t.SET_PRINT_COPIES(o),a.doubleSide&&("auto"===a.doubleSideType?(t.SET_PRINT_MODE("PRINT_DUPLEX",2),t.SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1)):t.SET_PRINT_MODE("DOUBLE_SIDED_PRINT",1)),t.SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW",1),"laser"===l&&("vertical"===a.direction&&t.SET_PRINT_PAGESIZE(1),"horizontal"===a.direction&&(t.SET_PRINT_PAGESIZE(2),t.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1))),"stylus"===l&&t.SET_PRINT_PAGESIZE(3,10*s[0],100*h*2,""),t.ADD_PRINT_TABLE(10*(m-c)+"mm",10*(d-c)+"mm",`RightMargin: ${10*(u-c)}mm`,`BottomMargin: ${"stylus"!==l?10*(h-c):0}mm`,this.createStyle()+e),t.On_Return=(e,t)=>{t?r&&this.doClose():R.message.error(p("qm.print.printError"))},t.PRINT()})),am(this,"doExport",(e=>{const t=Qu();if(!t)return;const{uniqueKey:n,closeAfterPrint:r}=this.props,{form:{setting:a}}=this.state;t.PRINT_INIT(n??Math.random().toString().slice(2)),t.On_Return=(e,t)=>{t?r&&this.doClose():R.message.error(p("qm.print.exportError"))},t.ADD_PRINT_TABLE(0,0,"RightMargin: 0","BottomMargin: 0",this.createStyle()+e),t.SET_SAVE_MODE("Orientation","vertical"===a.direction?1:2),t.SAVE_TO_FILE(`${c()().format("YYYYMMDDHHmmss")}.xlsx`)}))}get printerTypeItems(){return[{text:p("qm.print.laserPrinter"),value:"laser"},{text:p("qm.print.stylusPrinter"),value:"stylus"}]}get printerItems(){const e=Qu(),t=[{text:p("qm.print.defaultPrinter"),value:-1}];try{const n=e.GET_PRINTER_COUNT();for(let r=0;r<n;r++)t.push({text:e.GET_PRINTER_NAME(r),value:r})}catch(e){me("Print","[ClientPrint]: 请安装 LODOP 打印插件")}return t}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}`:""}async componentDidMount(){if(this.props.uniqueKey)try{let e=await Mi().getItem(this.printerKey);e||(e=await this.getPrintConfig(this.printerKey),(0,X.isPlainObject)(e)&&await Mi().setItem(this.printerKey,e)),(0,X.isPlainObject)(e)&&Object.keys(e).length&&(0,X.merge)(this.state.form,{...e,printerName:this.printerItems.find((t=>t.text===e.printerName))?.value??-1})}catch(e){}}render(){const{preview:e,templateRender:t}=this.props,{visible:n,form:r,currentPage:a,totalPage:i,printPage:o}=this.state,s=Ee("print-preview"),c={visible:n,title:p("qm.print.pageSetting"),width:"50%",loading:!1,containerStyle:{paddingBottom:"52px"},onClose:()=>{this.setState({visible:!1})}},d={[s]:!0};return e?l().createElement(l().Fragment,null,l().createElement("div",{className:xe()(d)},l().createElement("div",{className:"outer"},l().createElement("div",{className:"header"},l().createElement("span",null,p("qm.print.printer"),":",l().createElement(R.Select,{value:r.printerName,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{printerName:e}})))},style:{width:"120px"}},this.printerItems.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",null,p("qm.print.type"),":",l().createElement(R.Select,{value:r.printerType,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{printerType:e,setting:{pageSize:"stylus"===e?"241*280":"210*297"}}})))},style:{width:"120px"}},this.printerTypeItems.map((e=>l().createElement(R.Select.Option,{key:e.value,value:e.value},e.text))))),l().createElement("span",null,p("qm.print.copies"),":",l().createElement(R.InputNumber,{value:r.copies,min:1,precision:0,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{copies:e??1}})))},style:{width:"50px"}})),l().createElement("span",null,p("qm.print.printPage.0"),l().createElement(R.InputNumber,{value:o,min:1,max:i,precision:0,onChange:e=>{this.setState({printPage:e??void 0})},style:{width:"50px",marginLeft:"4px",marginRight:"4px"}}),p("qm.print.printPage.1")),l().createElement("span",null,l().createElement(R.Pagination,{size:"small",current:a,pageSize:1,total:i,onChange:this.pageChangeHandle})),l().createElement("span",null,l().createElement(fe,{type:"text",icon:l().createElement(we.SettingOutlined,null),className:"text-btn",onClick:()=>this.setState({visible:!0})},p("qm.print.setting"))),l().createElement("span",null,l().createElement(fe,{type:"text",icon:l().createElement(we.DownloadOutlined,null),className:"text-btn",onClick:()=>this.exportClickHandle()},p("qm.print.export"))),l().createElement("span",null,l().createElement(fe,{icon:l().createElement(we.PrinterOutlined,null),type:"primary",onClick:this.printClickHandle},p("qm.print.print")))),l().createElement("div",{className:"main"},l().createElement(Gu.Provider,{value:this.provide},l().createElement(em,{ref:this.containRef,templateRender:t,directPrint:!1}))),l().createElement("div",{className:"footer"},l().createElement("span",null,p("qm.print.scale"),":",l().createElement(R.Slider,{value:r.scale,step:.1,min:.5,max:1.5,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{scale:e}})))}}),l().createElement("em",{className:"scale-text"},`${Math.floor(100*r.scale)}%`)),l().createElement("span",null,p("qm.print.paper"),":",this.pageSize[0],"mm * ",this.pageSize[1],"mm"),l().createElement("span",null,p("qm.print.pageNumber"),":",p("qm.print.pagination",{currentPage:a,totalPage:i}))))),l().createElement(yn,c,l().createElement(rm,{setting:r.setting,onChange:e=>{this.setState((t=>(0,X.merge)({},t,{form:{setting:e}})))},onClose:()=>{this.setState({visible:!1})}}))):l().createElement(Gu.Provider,{value:this.provide},l().createElement(em,{ref:this.containRef,templateRender:t,directPrint:!0}))}}am(im,"contextType",o);const lm=im;function om(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class sm extends i.Component{constructor(...e){super(...e),om(this,"context",void 0),om(this,"previewRef",l().createRef()),om(this,"state",{visible:!1,loading:!1}),om(this,"clickHandle",(async()=>{this.setState({loading:!0});try{const e=await(this.props.click?.());if(this.setState({loading:!1}),"boolean"==typeof e&&!e)return;await this.DO_PRINT()}catch(e){}this.setState({loading:!1})})),om(this,"createRender",(()=>{const{visible:e}=this.state,{templateRender:t,uniqueKey:n,defaultConfig:r,preview:a,closeAfterPrint:i}=this.props,o={visible:e,title:p("qm.print.preview"),width:`${Uu.previewWidth}px`,loading:!1,onClose:()=>{this.setState({visible:!1})}},s={ref:this.previewRef,templateRender:t,uniqueKey:n,defaultConfig:r,preview:a,closeAfterPrint:i,onClose:()=>{this.setState({visible:!1})}};return a?l().createElement(yn,o,l().createElement(lm,s)):e?l().createElement(lm,s):null})),om(this,"DO_PRINT",(async()=>{const{preview:e}=this.props;await ne(0),this.setState({visible:!0}),await ne(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:n,type:r,disabled:a,shape:i}=this.props,o={size:t||this.context.size||"",type:r,shape:i,icon:n,loading:e,disabled:a,click:this.clickHandle};return l().createElement(l().Fragment,null,this.props.children&&l().createElement(fe,o,this.props.children),this.createRender())}}om(sm,"propTypes",{size:(e,t,n)=>{if(!xr(e[t]||""))return ue("Print","Invalid prop `"+t+"` supplied to `"+n+"`. Validation failed.")},templateRender:vr().elementType}),om(sm,"defaultProps",{preview:!0,type:"primary",icon:l().createElement(we.PrinterOutlined,null)}),om(sm,"contextType",o);const cm=sm;function dm(e){return e.ownerDocument?e.ownerDocument.defaultView:null}function um(e){const t=dm(e);return t?t.frameElement:null}function mm(e){const t=fm(e);return pm([e.getBoundingClientRect(),{top:t.borderTop,left:t.borderLeft,bottom:t.borderBottom,right:t.borderRight,width:0,height:0}])}function pm(e){return e.reduce(((e,t)=>null==e?t:{top:e.top+t.top,left:e.left+t.left,width:e.width,height:e.height,bottom:e.bottom+t.bottom,right:e.right+t.right}))}function hm(e,t){const n=um(e);if(n&&n!==t){const r=[e.getBoundingClientRect()];let a=n,i=!1;for(;a;){const e=mm(a);if(r.push(e),a=um(a),i)break;a&&dm(a)===t&&(i=!0)}return pm(r)}return e.getBoundingClientRect()}function fm(e){const t=window.getComputedStyle(e);return{borderLeft:parseInt(t.borderLeftWidth,10),borderRight:parseInt(t.borderRightWidth,10),borderTop:parseInt(t.borderTopWidth,10),borderBottom:parseInt(t.borderBottomWidth,10),marginLeft:parseInt(t.marginLeft,10),marginRight:parseInt(t.marginRight,10),marginTop:parseInt(t.marginTop,10),marginBottom:parseInt(t.marginBottom,10),paddingLeft:parseInt(t.paddingLeft,10),paddingRight:parseInt(t.paddingRight,10),paddingTop:parseInt(t.paddingTop,10),paddingBottom:parseInt(t.paddingBottom,10)}}function gm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const ym=Object.assign;class bm{constructor(e,t){gm(this,"node",void 0),gm(this,"border",void 0),gm(this,"padding",void 0),gm(this,"content",void 0),this.node=e.createElement("div"),this.border=e.createElement("div"),this.padding=e.createElement("div"),this.content=e.createElement("div"),this.border.style.borderColor=wm.border,this.padding.style.borderColor=wm.padding,this.content.style.backgroundColor=wm.background,ym(this.node.style,{borderColor:wm.margin,pointerEvents:"none",position:"fixed"}),this.node.style.zIndex="10000000",this.node.appendChild(this.border),this.border.appendChild(this.padding),this.padding.appendChild(this.content),t.appendChild(this.node)}remove(){this.node.parentNode&&this.node.parentNode.removeChild(this.node)}update(e,t){Em(t,"margin",this.node),Em(t,"border",this.border),Em(t,"padding",this.padding),ym(this.content.style,{height:e.height-t.borderTop-t.borderBottom-t.paddingTop-t.paddingBottom+"px",width:e.width-t.borderLeft-t.borderRight-t.paddingLeft-t.paddingRight+"px"}),ym(this.node.style,{top:e.top-t.marginTop+"px",left:e.left-t.marginLeft+"px"})}}class vm{constructor(e,t){gm(this,"tip",void 0),gm(this,"nameSpan",void 0),gm(this,"dimSpan",void 0),this.tip=e.createElement("div"),ym(this.tip.style,{display:"flex",flexFlow:"row nowrap",backgroundColor:"#333740",borderRadius:"2px",fontFamily:'"SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace',fontWeight:"bold",padding:"3px 5px",pointerEvents:"none",position:"fixed",fontSize:"12px",whiteSpace:"nowrap"}),this.nameSpan=e.createElement("span"),this.tip.appendChild(this.nameSpan),ym(this.nameSpan.style,{color:"#ee78e6",borderRight:"1px solid #aaaaaa",paddingRight:"0.5rem",marginRight:"0.5rem"}),this.dimSpan=e.createElement("span"),this.tip.appendChild(this.dimSpan),ym(this.dimSpan.style,{color:"#d7d7d7"}),this.tip.style.zIndex="10000000",t.appendChild(this.tip)}remove(){this.tip.parentNode&&this.tip.parentNode.removeChild(this.tip)}updateText(e,t,n){this.nameSpan.textContent=e,this.dimSpan.textContent=Math.round(t)+"px × "+Math.round(n)+"px"}updatePosition(e,t){const n=this.tip.getBoundingClientRect(),r=function(e,t,n){const r=Math.max(n.height,20),a=Math.max(n.width,60);let i;i=e.top+e.height+r<=t.top+t.height?e.top+e.height<t.top+0?t.top+5:e.top+e.height+5:e.top-r<=t.top+t.height?e.top-r-5<t.top+5?t.top+5:e.top-r-5:t.top+t.height-r-5;let l=e.left+5;return e.left<t.left&&(l=t.left+5),e.left+a>t.left+t.width&&(l=t.left+t.width-a-5),i+="px",l+="px",{style:{top:i,left:l}}}(e,t,{width:n.width,height:n.height});ym(this.tip.style,r.style)}}class xm{constructor(){gm(this,"window",void 0),gm(this,"tipBoundsWindow",void 0),gm(this,"container",void 0),gm(this,"tip",void 0),gm(this,"rects",void 0);const e=window;this.window=e;const t=window;this.tipBoundsWindow=t;const n=e.document;this.container=n.createElement("div"),this.container.style.zIndex="10000000",this.tip=new vm(n,this.container),this.rects=[],n.body.appendChild(this.container)}remove(){this.tip.remove(),this.rects.forEach((e=>{e.remove()})),this.rects.length=0,this.container.parentNode&&this.container.parentNode.removeChild(this.container)}inspect(e,t){const n=e.filter((e=>e.nodeType===Node.ELEMENT_NODE));for(;this.rects.length>n.length;){const e=this.rects.pop();e?.remove()}if(0===n.length)return;for(;this.rects.length<n.length;)this.rects.push(new bm(this.window.document,this.container));const r={top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,left:Number.POSITIVE_INFINITY};n.forEach(((e,t)=>{const n=hm(e,this.window),a=fm(e);r.top=Math.min(r.top,n.top-a.marginTop),r.right=Math.max(r.right,n.left+n.width+a.marginRight),r.bottom=Math.max(r.bottom,n.top+n.height+a.marginBottom),r.left=Math.min(r.left,n.left-a.marginLeft),this.rects[t].update(n,a)})),t||(t=n[0].nodeName.toLowerCase(),n[0]),this.tip.updateText(t,r.right-r.left,r.bottom-r.top);const a=hm(this.tipBoundsWindow.document.documentElement,this.window);this.tip.updatePosition({top:r.top,left:r.left,height:r.bottom-r.top,width:r.right-r.left},{top:a.top+this.tipBoundsWindow.scrollY,left:a.left+this.tipBoundsWindow.scrollX,height:this.tipBoundsWindow.innerHeight,width:this.tipBoundsWindow.innerWidth})}}function Em(e,t,n){ym(n.style,{borderTopWidth:e[t+"Top"]+"px",borderLeftWidth:e[t+"Left"]+"px",borderRightWidth:e[t+"Right"]+"px",borderBottomWidth:e[t+"Bottom"]+"px",borderStyle:"solid"})}const wm={background:"rgba(120, 170, 210, 0.7)",padding:"rgba(77, 200, 0, 0.3)",margin:"rgba(255, 155, 0, 0.3)",border:"rgba(255, 200, 50, 0.3)"};let Cm=null,Sm=null;function Nm(){null!=window.document&&(Cm=null,null!==Sm&&(Sm.remove(),Sm=null))}function Im(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Tm{constructor(e){Im(this,"_isRunning",void 0),Im(this,"_selectIgnore",void 0),Im(this,"_lastHoveredNode",null),Im(this,"excludeSelectors",void 0),Im(this,"onSelect",void 0),Im(this,"iframesListeningTo",new Set),Im(this,"onClick",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"onMouseEvent",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"onPointerDown",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation(),this.selectFiberForNode(this.getEventTarget(e)))})),Im(this,"onPointerMove",(e=>{e.preventDefault(),e.stopPropagation();const t=this.getEventTarget(e);if(this._lastHoveredNode!==t){if(this._lastHoveredNode=t,this.excludeSelectors.some((e=>Ue(t,window.document.querySelector(e)))))return this._selectIgnore=!0,Nm();if(this._selectIgnore=!1,"IFRAME"===t.tagName){const e=t;try{if(!this.iframesListeningTo.has(e)){const t=e.contentWindow;this.registerListenersOnWindow(t),this.iframesListeningTo.add(e)}}catch(e){}}var n;n=[t],null!=window.document?(null!==Cm&&clearTimeout(Cm),null!=n&&(null===Sm&&(Sm=new xm),Sm.inspect(n,null))):null!=n&&null!=n[0]&&console.error("showNativeHighlight",n[0])}})),Im(this,"onPointerUp",(e=>{this._selectIgnore||(e.preventDefault(),e.stopPropagation())})),Im(this,"selectFiberForNode",(0,X.throttle)((e=>{this._selectIgnore||this.onSelect?.(e,function(e){if(!(e instanceof Element))return"";const t=document.documentElement;let n=e;const r=[];for(;n!==t&&null!==n;){let e=n.tagName.toLowerCase();const t=/(?:\b|\w+-)(actived?|select(ed)?|focus(ed)?|open(ed)?)$/;for(let e=0,r=Array.from(n.classList).reverse();e<r.length;e++)t.test(r[e])&&n.classList.remove(r[e]);if(n.id&&/^rc-\w+/.test(n.id)&&n.removeAttribute("id"),n.id)e+=`#${n.id}`;else{const t=Array.from(n.parentElement.children).filter((e=>e.tagName===n.tagName)),r=n.className.trim();if(t.filter((e=>e.className.includes(r))).length<=1){if(r){const t=r.split(/\s+/);let n="";for(let e=0;e<t.length;e++)/^ant-col-\d+$/.test(t[e])||(n+=`.${t[e]}`);e+=n}}else n.getAttribute("name")?e+=`[name=${n.getAttribute("name")}]`:e+=`:nth-of-type(${t.indexOf(n)+1})`}n.nodeType!==Node.TEXT_NODE&&r.unshift(e),n=n.parentElement}return r.join(" > ")}(e))}),200,{leading:!1})),this.excludeSelectors=e.excludeSelectors||[],this.onSelect=e.onSelect}startHandle(){this.startInspectingNative()}stopHandle(){this.stopInspectingNative()}startInspectingNative(){this._isRunning||(this.registerListenersOnWindow(window),this._isRunning=!0)}stopInspectingNative(){Nm(),this.removeListenersOnWindow(window),this.iframesListeningTo.forEach((function(e){try{this.removeListenersOnWindow(e.contentWindow)}catch(e){}})),this.iframesListeningTo=new Set,this._isRunning=!1}registerListenersOnWindow(e){e&&"function"==typeof e.addEventListener&&(e.addEventListener("click",this.onClick,!0),e.addEventListener("mousedown",this.onMouseEvent,!0),e.addEventListener("mouseover",this.onMouseEvent,!0),e.addEventListener("mouseup",this.onMouseEvent,!0),e.addEventListener("pointerdown",this.onPointerDown,!0),e.addEventListener("pointermove",this.onPointerMove,!0),e.addEventListener("pointerup",this.onPointerUp,!0))}removeListenersOnWindow(e){e&&"function"==typeof e.removeEventListener&&(e.removeEventListener("click",this.onClick,!0),e.removeEventListener("mousedown",this.onMouseEvent,!0),e.removeEventListener("mouseover",this.onMouseEvent,!0),e.removeEventListener("mouseup",this.onMouseEvent,!0),e.removeEventListener("pointerdown",this.onPointerDown,!0),e.removeEventListener("pointermove",this.onPointerMove,!0),e.removeEventListener("pointerup",this.onPointerUp,!0))}getEventTarget(e){return e.composed?e.composedPath()[0]:e.target}}function Rm(e){return document.querySelector(e)}const Om=e=>{const{action:t,onConfirm:n,onCancel:r,onFinish:a}=e,{t:i}=U();return l().createElement(l().Fragment,null,l().createElement("div",{style:{height:100}},i("qm.table.config.emptyText")),l().createElement(be,{style:{width:"100%",justifyContent:"flex-end"}},l().createElement(fe,{size:"small",onClick:()=>r?.()},i("qm.guideTracker.closeButton")),l().createElement(fe,{size:"small",onClick:()=>n?.()},i("add"===t?"qm.guideTracker.addButton":"qm.guideTracker.editButton")),l().createElement(fe,{size:"small",onClick:()=>a?.()},i("qm.guideTracker.finishButton"))))},km={left:"50%",top:"50%",width:1,height:1},Pm=l().forwardRef(((e,t)=>{const{open:n,current:r,defaultCurrent:a,steps:i=[],placement:o="bottom",control:s=!0,overlayClassName:c,overlayStyle:d,destroyOnHide:u,contentRender:m,zIndex:p,helper:h={},selectFilter:f=e=>e,onSelect:g,onChange:y,onClose:b,onFinish:v}=e,{t:x}=U(),E=l().useRef(),w=l().useRef(i.length),[C,S]=Ja(0,{value:r,defaultValue:a}),[N,I]=Ja(void 0,{value:n,postState:e=>e??!1}),[T,O]=Ja(1051,{value:p,defaultValue:p}),[k,P]=l().useState({}),[L,A]=l().useState(!1),[_,F]=l().useState(N),[D,H]=l().useState(!1),[q,$]=Du(k.node,!!n),[M,K]=l().useState(22),z=l().useRef(!1),j=l().useMemo((()=>C>=i.length?"add":"edit"),[C,i]),V=l().useMemo((()=>`${C+1} / ${i.length}`),[C,i]);l().useLayoutEffect((()=>{E.current=new Tm({excludeSelectors:[".qm-guide-tracker-control"],onSelect:(e,t)=>{t=f(t),P({id:ir(),node:e,path:t}),S(w.current),A(!0),B(),g?.(t,e)}})}),[]),l().useEffect((()=>(N?W():B(),N?setTimeout((()=>F(!0)),16):F(!1),()=>{B()})),[N]),l().useEffect((()=>{w.current=i.length}),[i]);const W=()=>{E.current.startHandle()},B=()=>{E.current.stopHandle()},G=e=>{e.stopPropagation(),e.preventDefault()};l().useImperativeHandle(t,(()=>({OPEN:()=>I(!0),CLOSE:()=>I(!1),GET_CURRENT_STEP:()=>({current:C,selector:k.path})})));const Y=Ee("guide-tracker"),Q=[{[`${Y}-primary`]:!0}],Z=El({arrowPointAtCenter:!1,autoAdjustOverflow:!0,offset:5,arrowWidth:16,borderRadius:8});return l().createElement(l().Fragment,null,l().createElement(_l(),{open:N&&L,autoLock:!0},l().createElement(Cl(),{zIndex:T,builtinPlacements:Z,popupPlacement:o,popupVisible:N&&L,popupClassName:xe()(Q,c),popupStyle:d,prefixCls:Y,popup:()=>{const e=()=>{A(!1),W()};return l().createElement("div",{className:`${Y}-content`},l().createElement("div",{className:`${Y}-inner`},l().createElement(we.CloseOutlined,{className:`${Y}-close`,onClick:()=>{b?.(C),e()}}),l().createElement(R.Dropdown,{open:D,trigger:["click"],dropdownRender:()=>i.length?l().createElement("div",{className:"ant-dropdown-menu step-list"},l().createElement(ua.ReactSortable,{itemKey:"id",handle:".handle",tag:"ul",animation:200,list:i,setList:e=>{const t=e.map((e=>e.id)),n=i.map((e=>e.id));if((0,X.isEqual)(t,n))return;const r=t.findIndex((e=>e===k.id)),a=-1!==r?r:C;S(a),y?.(gr(e),a)}},i.map(((e,t)=>l().createElement("li",{key:t,className:xe()("item",{actived:e.id===k.id})},l().createElement(we.HolderOutlined,{className:"handle",title:x("qm.form.draggable")}),l().createElement("span",{className:"box"},l().createElement("span",{className:"title",title:e.title,onClick:()=>{t!==C&&(P({id:e.id,node:Rm(e.selector),path:e.selector}),S(t),K(22===M?M+1:M-1),y?.(i,t))}},e.title),l().createElement(R.Popconfirm,{title:x("qm.button.confirmTitle"),zIndex:T+1,onConfirm:()=>{const n=i.filter((t=>t.id!==e.id)),r=t===C;let a=t<=C?C-1:C;if(a=a<0?0:a,a=a>n.length?n.length:a,r&&n[a]){const{id:e,selector:t}=n[a];P({id:e,node:Rm(t),path:t})}S(a),y?.(n,a)}},l().createElement(we.CloseOutlined,{className:"close-icon"})))))))):l().createElement(l().Fragment,null),overlayClassName:`${Y}__popper`,placement:"bottomLeft",overlayStyle:{minWidth:180,zIndex:T},onOpenChange:e=>H(e)},l().createElement(we.MenuOutlined,{className:xe()(`${Y}-close`,"menu-icon"),style:{width:M}})),h.content&&l().createElement(R.Popover,{placement:"bottom",overlayStyle:{width:360,zIndex:T},content:h.content,title:h.title},l().createElement(we.QuestionCircleOutlined,{className:xe()(`${Y}-close`,"help-icon")})),l().createElement("div",{className:"panel-label"},l().createElement("span",{className:"title"},x("qm.guideTracker.label")),l().createElement("span",{className:"step"},x("qm.guideTracker.currentStep"),V)),m?m({id:k.id,selector:k.path,actionStatus:j,DO_CLOSE:e},C):l().createElement(Om,{action:j,onConfirm:()=>{y?.("add"===j?[...i,{id:k.id,selector:k.path,title:"Guide Title"}]:[...i],C),e()},onCancel:()=>{b?.(C),e()},onFinish:()=>{e(),b?.(C),v?.()}})))},arrow:!0,forceRender:!1,destroyPopupOnHide:u},l().createElement("div",{className:xe()(`${Y}-target-placeholder`),style:{...q||km,position:"fixed",zIndex:T-1,backgroundColor:"rgba(120, 170, 210, 0.7)"},onMouseDown:G,onClick:G}))),s&&l().createElement(_l(),{open:_},l().createElement(Mu,{zIndex:T,prefixCls:Y,onPause:()=>{z.current=L,A(!1),B()},onPlay:()=>{z.current?A(!0):W()}})))}));Pm.displayName="QmGuideTracker";const Lm=Pm,Am=e=>{const{content:t,image:n,width:r,height:a,font:o={},gap:s=[100,100],offset:c=[50,50],rotate:d=-22,zIndex:u=9,alpha:m=1,antiTamper:p=!0,grayscale:h,className:f,style:g}=e,y=l().useRef(null),b=l().useRef(new Map),v=o.fontSize??16,x=o.fontWeight??"normal",E=o.fontStyle??"normal",w=o.fontFamily??"sans-serif",C=o.color??"rgba(0, 0, 0, 0.15)",S=o.textAlign??"center",N=Array.isArray(t)?t:[t],I=s[0],T=s[1],R=I/2,O=T/2,k=c[0]??R,P=c[1]??O,L=l().useMemo((()=>{const e=k-R,t=P-O;return{position:"absolute",left:e>0?`${e}px`:0,top:t>0?`${t}px`:0,width:e>0?`calc(100% - ${e}px)`:"100%",height:t>0?`calc(100% - ${t}px)`:"100%",pointerEvents:"none",backgroundRepeat:"repeat",backgroundPosition:`${e>0?0:e}px ${t>0?0:t}px`,zIndex:u}}),[R,O,k,P,u]),A=()=>{const e=document.createElement("canvas"),t=e.getContext("2d");if(!t)return;const i=(e=>{if(!e)return 1;const t=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/t})(t),[l,o]=(e=>{let t=120,i=64;if(!n&&e.measureText){e.font=`${v}px ${w}`;const n=N.map((t=>e.measureText(t).width));t=Math.ceil(Math.max(...n)),i=v*N.length+3*(N.length-1)}return[r??t,a??i]})(t),s=l*i,c=o*i,u=(I+l)*i,p=(T+o)*i,f=I/2*i,g=T/2*i,R=u/2,O=p/2,k=2*(I+l);e.width=2*u,e.height=2*p,t.globalAlpha=m,t.save(),t.translate(R,O),t.rotate(Math.PI/180*d),t.translate(-R,-O);const P=()=>{t.restore(),t.drawImage(e,0,0,u,p,u,p,u,p),h&&(e=>{const t=e.getContext("2d");if(!t)return;const n=t.getImageData(0,0,e.width,e.height),{data:r}=n;for(let e=0;e<r.length;e+=4){const t=(r[e]+r[e+1]+r[e+2])/3;r[e]=t,r[e+1]=t,r[e+2]=t}t.putImageData(n,0,0)})(e),((e,t)=>{if(y.current){const n=b.current.get(y.current);n&&(y.current.contains(n)&&y.current.removeChild(n),b.current.delete(y.current));const r=document.createElement("div");r.setAttribute("style",(e=>Object.entries(e).map((([e,t])=>{return`${n=e,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}:${t}`;var n})).join(";"))({...L,backgroundImage:`url('${e}')`,backgroundSize:`${t}px`})),y.current?.append(r),b.current.set(y.current,r)}})(e.toDataURL(),k)},A=()=>{const e=Number(v)*i;t.font=`${E} normal ${x} ${e}px/${o}px ${w}`,t.fillStyle=C,t.textAlign=S,t.textBaseline="top",t.translate(s/2,0),N.forEach(((n,r)=>{t.fillText(n??"",f,g+r*(e+3*i))})),P()};if(n){const e=new Image;e.onload=()=>{t.drawImage(e,f,g,s,c),P()},e.onerror=()=>{A()},e.crossOrigin="anonymous",e.referrerPolicy="no-referrer",e.src=n}else A()},_=e=>Array.from(b.current.values()).includes(e);l().useEffect((()=>{A()}),[t,n,r,a,o,s,c,d,u,m,p,h]),function(e,t,n={}){const r=window&&"MutationObserver"in window,a=i.useRef(),l=()=>{a.current&&(a.current.disconnect(),a.current=void 0)};i.useLayoutEffect((()=>(l(),r&&e.current&&(a.current=new MutationObserver(t),a.current.observe(e.current,n)),()=>l())),[e])}(y,(e=>{if(p)for(const t of e){const e=Array.from(t.removedNodes).some((e=>_(e))),n="attributes"===t.type&&_(t.target);if(e||n){A();break}}}),{attributes:!0,childList:!0,characterData:!0,subtree:!0});const F=Ee("watermark");return l().createElement("div",{ref:y,className:xe()(F,f),style:{position:"relative",...g}},e.children)},_m=new Map,Fm=new WeakMap;let Dm=0;function Hm(e,t,n={},r=undefined){if(void 0===window.IntersectionObserver&&void 0!==r){const a=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:"number"==typeof n.threshold?n.threshold:0,time:0,boundingClientRect:a,intersectionRect:a,rootBounds:a}),()=>{}}const{id:a,observer:i,elements:l}=function(e){const t=function(e){return Object.keys(e).sort().filter((t=>void 0!==e[t])).map((t=>{return`${t}_${"root"===t?(n=e.root,n?(Fm.has(n)||(Dm+=1,Fm.set(n,Dm.toString())),Fm.get(n)):"0"):e[t]}`;var n})).toString()}(e);let n=_m.get(t);if(!n){const r=new Map;let a=[];const i=new IntersectionObserver((t=>{t.forEach((t=>{const n=t.isIntersecting&&a.some((e=>t.intersectionRatio>=e));e.trackVisibility&&void 0===t.isVisible&&(t.isVisible=n),r.get(t.target)?.forEach((e=>{e(n,t)}))}))}),e);a=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:r},_m.set(t,n)}return n}(n),o=l.get(e)||[];return l.has(e)||l.set(e,o),o.push(t),i.observe(e),function(){o.splice(o.indexOf(t),1),0===o.length&&(l.delete(e),i.unobserve(e)),0===l.size&&(i.disconnect(),_m.delete(a))}}const qm=e=>{const{forceRender:t,height:n,placeholder:r=null,unmountIfInvisible:a,className:i,style:o}=e,{ref:s,inView:c,entry:d}=(({root:e,rootMargin:t,threshold:n,triggerOnce:r,fallbackInView:a,trackVisibility:i,skip:o,delay:s,onChange:c}={})=>{const[d,u]=l().useState(null),[m,p]=l().useState({inView:!1,entry:void 0}),h=l().useRef(c);l().useEffect((()=>{if(o||!d)return;let l;return l=Hm(d,((e,t)=>{p({inView:e,entry:t}),h.current?.(e,t),t.isIntersecting&&r&&l&&(l(),l=void 0)}),{root:e,rootMargin:t,threshold:n,trackVisibility:i,delay:s},a),()=>{l&&l()}}),[Array.isArray(n)?n.toString():n,d,e,t,r,o,i,a,s]);const f=m.entry?.target,g=l().useRef();d||!f||r||o||g.current===f||(g.current=f,p({inView:!1,entry:void 0}));const y=[u,m.inView,m.entry];return y.ref=y[0],y.inView=y[1],y.entry=y[2],y})(Object.assign({},e,{triggerOnce:!a}));l().useEffect((()=>{n||me("LazyLoad","height 是必要参数,需要设定组件的高度值!")}),[]);const u=Ee("lazy-load"),m={[u]:!0};return l().createElement("div",{ref:s,className:xe()(m,i),style:o},t||c?e.children:l().createElement("div",{className:"placeholder",style:{height:n}},r))},$m=require("html2canvas");var Mm=r.n($m);function Km(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class zm{constructor(e,t,n,r){if(Km(this,"x",void 0),Km(this,"y",void 0),Km(this,"pressure",void 0),Km(this,"time",void 0),isNaN(e)||isNaN(t))throw new Error(`Point is invalid: (${e}, ${t})`);this.x=+e,this.y=+t,this.pressure=n||0,this.time=r||Date.now()}distanceTo(e){return Math.sqrt(Math.pow(this.x-e.x,2)+Math.pow(this.y-e.y,2))}equals(e){return this.x===e.x&&this.y===e.y&&this.pressure===e.pressure&&this.time===e.time}velocityFrom(e){return this.time!==e.time?this.distanceTo(e)/(this.time-e.time):0}}class jm{static fromPoints(e,t){const n=this.calculateControlPoints(e[0],e[1],e[2]).c2,r=this.calculateControlPoints(e[1],e[2],e[3]).c1;return new jm(e[1],n,r,e[2],t.start,t.end)}static calculateControlPoints(e,t,n){const r=e.x-t.x,a=e.y-t.y,i=t.x-n.x,l=t.y-n.y,o=(e.x+t.x)/2,s=(e.y+t.y)/2,c=(t.x+n.x)/2,d=(t.y+n.y)/2,u=Math.sqrt(r*r+a*a),m=Math.sqrt(i*i+l*l),p=m/(u+m),h=c+(o-c)*p,f=d+(s-d)*p,g=t.x-h,y=t.y-f;return{c1:new zm(o+g,s+y),c2:new zm(c+g,d+y)}}constructor(e,t,n,r,a,i){this.startPoint=e,this.control2=t,this.control1=n,this.endPoint=r,this.startWidth=a,this.endWidth=i}length(){let e,t,n=0;for(let r=0;r<=10;r+=1){const a=r/10,i=this.point(a,this.startPoint.x,this.control1.x,this.control2.x,this.endPoint.x),l=this.point(a,this.startPoint.y,this.control1.y,this.control2.y,this.endPoint.y);if(r>0){const r=i-e,a=l-t;n+=Math.sqrt(r*r+a*a)}e=i,t=l}return n}point(e,t,n,r,a){return t*(1-e)*(1-e)*(1-e)+3*n*(1-e)*(1-e)*e+3*r*(1-e)*e*e+a*e*e*e}}function Vm(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class Wm{constructor(e,t){Vm(this,"canvas",void 0),Vm(this,"ctx",void 0),Vm(this,"textInput",void 0),Vm(this,"width",320),Vm(this,"height",200),Vm(this,"ratio",Math.max(window.devicePixelRatio||1,1)),Vm(this,"penColor","rgba(0,0,0,1)"),Vm(this,"backgroundColor","rgba(0,0,0,0)"),Vm(this,"canAddHistory",!1),Vm(this,"mode",void 0),Vm(this,"openSmooth",!0),Vm(this,"dotSize",0),Vm(this,"throttle",16),Vm(this,"minDistance",5),Vm(this,"velocityFilterWeight",.7),Vm(this,"compositeOperation","source-over"),Vm(this,"minWidth",.5),Vm(this,"maxWidth",2.5),Vm(this,"fontSize",16),Vm(this,"eraserSize",20),Vm(this,"lineHeight",1.25),Vm(this,"degreeOfBlur",5),Vm(this,"textInputPos",{x:0,y:0}),Vm(this,"onStart",(()=>{})),Vm(this,"onEnd",(()=>{})),Vm(this,"_drawingStroke",!1),Vm(this,"_lastPoints",[]),Vm(this,"_data",[]),Vm(this,"_historyList",[]),Vm(this,"_lastVelocity",0),Vm(this,"_lastWidth",0),Vm(this,"_strokeMoveUpdate",void 0),Vm(this,"setCanvasSize",(()=>{this.canvas.style.height=`${this.height}px`,this.canvas.style.width=`${this.width}px`,this.canvas.height=this.height*this.ratio,this.canvas.width=this.width*this.ratio,1!==this.ratio&&this.ctx.scale(this.ratio,this.ratio)})),Vm(this,"setTextInput",(()=>{this.openSmooth||(this.textInput.setAttribute("class","signature__text-input"),this.textInput.setAttribute("contentEditable","true"),this.textInput.setAttribute("spellCheck","false"),this.canvas.parentNode.appendChild(this.textInput))})),Vm(this,"isTouchEvent",(e=>"touches"in e)),Vm(this,"addListener",(()=>{this.removeListener(),this.canvas.style.touchAction="none",this.canvas.style.userSelect="none",("ontouchstart"in window||navigator.maxTouchPoints)&&(this.canvas.addEventListener("touchstart",this.onDrawStart,{passive:!1}),this.canvas.addEventListener("touchmove",this.onDrawMove,{passive:!1}),document.addEventListener("touchcancel",this.onDrawEnd,{passive:!1}),document.addEventListener("touchend",this.onDrawEnd,{passive:!1})),this.canvas.addEventListener("mousedown",this.onDrawStart),this.canvas.addEventListener("mousemove",this.onDrawMove),document.addEventListener("mouseup",this.onDrawEnd),this.textInput.addEventListener("blur",this.onInputBlur)})),Vm(this,"removeListener",(()=>{this.canvas.style.touchAction="auto",this.canvas.style.userSelect="auto",this.canvas.removeEventListener("touchstart",this.onDrawStart),this.canvas.removeEventListener("touchmove",this.onDrawMove),document.removeEventListener("touchend",this.onDrawEnd),document.removeEventListener("touchcancel",this.onDrawEnd),this.canvas.removeEventListener("mousedown",this.onDrawStart),this.canvas.removeEventListener("mousemove",this.onDrawMove),document.removeEventListener("mouseup",this.onDrawEnd),this.textInput.removeEventListener("blur",this.onInputBlur)})),Vm(this,"_isLeftButtonPressed",((e,t)=>this.isTouchEvent(e)?!!e.touches.length:t?1===e.buttons:!(1&~e.buttons))),Vm(this,"_pointerEventToSignatureEvent",(e=>({event:e,type:e.type,x:this.isTouchEvent(e)?e.touches[0]?.clientX:e.clientX,y:this.isTouchEvent(e)?e.touches[0]?.clientY:e.clientY,pressure:"pressure"in e?e.pressure:0}))),Vm(this,"_getPointGroupOptions",(e=>({penColor:e&&"penColor"in e?e.penColor:this.penColor,dotSize:e&&"dotSize"in e?e.dotSize:this.dotSize,minWidth:e&&"minWidth"in e?e.minWidth:this.minWidth,maxWidth:e&&"maxWidth"in e?e.maxWidth:this.maxWidth,velocityFilterWeight:e&&"velocityFilterWeight"in e?e.velocityFilterWeight:this.velocityFilterWeight,compositeOperation:e&&"compositeOperation"in e?e.compositeOperation:this.compositeOperation}))),Vm(this,"_strokeBegin",(e=>{this._drawingStroke=!0;const t=this._getPointGroupOptions(),n={...t,points:[]};this._data.push(n),this._reset(t),this._strokeUpdate(e,!1)})),Vm(this,"_strokeUpdate",((e,t=!0)=>{if(!this._drawingStroke)return;if(0===this._data.length)return void this._strokeBegin(e);const n=this._createPoint(e.x,e.y,e.pressure),r=this._data[this._data.length-1],a=r.points,i=a.length>0&&a[a.length-1],l=!!i&&n.distanceTo(i)<=this.minDistance,o=this._getPointGroupOptions(r);if(!i||!i||!l){const e=this._addPoint(n,o);t&&(i?e&&this._drawCurve(e,o):this._drawDot(n,o)),a.push({time:n.time,x:n.x,y:n.y,pressure:n.pressure})}})),Vm(this,"_strokeEnd",((e,t=!1)=>{this._drawingStroke&&(t&&this._strokeUpdate(e),this._drawingStroke=!1)})),Vm(this,"_reset",(e=>{this._lastPoints=[],this._lastVelocity=0,this._lastWidth=(e.minWidth+e.maxWidth)/2,this.ctx.fillStyle=e.penColor,this.ctx.globalCompositeOperation=e.compositeOperation})),Vm(this,"_drawDot",((e,t)=>{const n=this.ctx,r=t.dotSize>0?t.dotSize:(t.minWidth+t.maxWidth)/2;n.beginPath(),this._drawCurveSegment(e.x,e.y,r),n.closePath(),n.fillStyle=t.penColor,n.fill()})),Vm(this,"_drawCurve",((e,t)=>{const n=this.ctx,r=e.endWidth-e.startWidth,a=2*Math.ceil(e.length());n.beginPath(),n.fillStyle=t.penColor;for(let n=0;n<a;n+=1){const i=n/a,l=i*i,o=l*i,s=1-i,c=s*s,d=c*s;let u=d*e.startPoint.x;u+=3*c*i*e.control1.x,u+=3*s*l*e.control2.x,u+=o*e.endPoint.x;let m=d*e.startPoint.y;m+=3*c*i*e.control1.y,m+=3*s*l*e.control2.y,m+=o*e.endPoint.y;const p=Math.min(e.startWidth+o*r,t.maxWidth);this._drawCurveSegment(u,m,p)}n.closePath(),n.fill()})),Vm(this,"_drawCurveSegment",((e,t,n)=>{const r=this.ctx;r.moveTo(e,t),r.arc(e,t,n,0,2*Math.PI,!1)})),Vm(this,"_createPoint",((e,t,n)=>{const r=this.canvas.getBoundingClientRect();return new zm(e-r.left,t-r.top,n,(new Date).getTime())})),Vm(this,"_createPointByEvent",(e=>this._createPoint(e.x,e.y,e.pressure))),Vm(this,"_addPoint",((e,t)=>{const{_lastPoints:n}=this;if(n.push(e),n.length>2){3===n.length&&n.unshift(n[0]);const e=this._calculateCurveWidths(n[1],n[2],t),r=jm.fromPoints(n,e);return n.shift(),r}return null})),Vm(this,"_strokeWidth",((e,t)=>Math.max(t.maxWidth/(e+1),t.minWidth))),Vm(this,"_calculateCurveWidths",((e,t,n)=>{const r=n.velocityFilterWeight*t.velocityFrom(e)+(1-n.velocityFilterWeight)*this._lastVelocity,a=this._strokeWidth(r,n),i={end:a,start:this._lastWidth};return this._lastVelocity=r,this._lastWidth=a,i})),Vm(this,"onDrawStart",(e=>{e.preventDefault(),this._isLeftButtonPressed(e,!0)&&!this._drawingStroke&&(this._strokeBegin(this._pointerEventToSignatureEvent(e)),this.ctx.strokeStyle=this.penColor,this.ctx.lineWidth=this.maxWidth,"line"===this.mode&&this.createPencil(e),"eraser"===this.mode&&this.createEraser(e),"text"===this.mode&&this.createTextInput(e),this.onStart?.(e))})),Vm(this,"onDrawMove",(e=>{e.preventDefault(),"text"!==this.mode&&(this._isLeftButtonPressed(e,!0)&&this._drawingStroke?window.requestAnimationFrame?window.requestAnimationFrame((()=>this.drawHandler(e))):this.drawHandler(e):this._strokeEnd(this._pointerEventToSignatureEvent(e)))})),Vm(this,"onDrawEnd",(e=>{this._isLeftButtonPressed(e)||(this._strokeEnd(this._pointerEventToSignatureEvent(e)),"text"!==this.mode&&this.addHistory(),this.onEnd?.(e))})),Vm(this,"onInputBlur",(e=>{this.textInput.classList.remove("show"),this.drawHandler(e),this.textInput.innerText="",this.addHistory()})),Vm(this,"drawHandler",(e=>{switch(this.mode){case"line":this.drawLine(e);break;case"square":this.drawSquare(e);break;case"round":this.drawRound(e);break;case"arrow":this.drawArrow(e);break;case"mosaic":this.drawMosaic(e);break;case"text":this.drawText(e);break;case"eraser":this.drawEraser(e)}this.canAddHistory=!0})),Vm(this,"drawSquare",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.setLastHistory(),this.ctx.beginPath(),this.ctx.rect(t,n,r-t,a-n),this.ctx.stroke(),this.ctx.restore()})),Vm(this,"drawRound",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),i=Math.min(r,t),l=Math.min(a,n),o=.5*(Math.max(r,t)-i),s=.5*(Math.max(a,n)-l),c=i+o,d=l+s;this.setLastHistory(),this.ctx.beginPath(),this.ctx.ellipse(c,d,o,s,0,0,2*Math.PI),this.ctx.stroke(),this.ctx.closePath(),this.ctx.restore()})),Vm(this,"drawArrow",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0],{x:r,y:a}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),i=180*Math.atan2(n-a,t-r)/Math.PI,l=(i+25)*Math.PI/180,o=(i-25)*Math.PI/180,s=15*Math.cos(l),c=15*Math.sin(l),d=15*Math.cos(o),u=15*Math.sin(o);this.setLastHistory(),this.ctx.beginPath(),this.ctx.moveTo(t,n),this.ctx.lineTo(r,a),this.ctx.stroke(),this.ctx.beginPath(),this.ctx.moveTo(r,a);const m=r+s,p=a+c;this.ctx.lineTo(m,p);const h=r+d,f=a+u;this.ctx.lineTo(h,f),this.ctx.lineTo(r,a),this.ctx.fill(),this.ctx.restore()})),Vm(this,"getAxisColor",((e,t,n)=>{const r=e.width,a=e.data,i=[];return i[0]=a[4*(n*r+t)],i[1]=a[4*(n*r+t)+1],i[2]=a[4*(n*r+t)+2],i[3]=a[4*(n*r+t)+3],i})),Vm(this,"setAxisColor",((e,t,n,r)=>{const a=e.width,i=e.data;i[4*(n*a+t)]=r[0],i[4*(n*a+t)+1]=r[1],i[4*(n*a+t)+2]=r[2],i[4*(n*a+t)+3]=r[3]})),Vm(this,"drawMosaic",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e)),r=this.ctx.getImageData(t*this.ratio,n*this.ratio,this.maxWidth*this.ratio,this.maxWidth*this.ratio),a=r.width,i=r.height,l=a/this.degreeOfBlur,o=i/this.degreeOfBlur;for(let e=0;e<o;e++)for(let t=0;t<l;t++){const n=this.getAxisColor(r,t*this.degreeOfBlur+Math.floor(Math.random()*this.degreeOfBlur),e*this.degreeOfBlur+Math.floor(Math.random()*this.degreeOfBlur));for(let a=0;a<this.degreeOfBlur;a++)for(let i=0;i<this.degreeOfBlur;i++)this.setAxisColor(r,t*this.degreeOfBlur+i,e*this.degreeOfBlur+a,n)}this.ctx.putImageData(r,t*this.ratio,n*this.ratio)})),Vm(this,"drawText",(e=>{const{x:t,y:n}=this.textInputPos;if(0===t&&0===n)return;this.ctx.lineWidth=1,this.ctx.fillStyle=this.penColor,this.ctx.textBaseline="middle",this.ctx.font=`bold ${this.fontSize}px none`;const r=this.fontSize*this.lineHeight,a=this.width-t,i=e.target.innerText,l=[];let o="";for(let e=0;e<i.length;e++){const t=o+i[e];this.ctx.measureText(t).width>a&&o.length>0?(l.push(o),o=i[e]):o=t}l.push(o),l.forEach(((e,a)=>{this.ctx.fillText(e,t+1,n+a*r+2)})),this.ctx.restore(),this.textInputPos={x:0,y:0}})),Vm(this,"createPencil",(e=>{if(this.openSmooth||!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];this.ctx.beginPath(),this.ctx.moveTo(t,n)})),Vm(this,"drawPencil",(e=>{const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.ctx.lineTo(t,n),this.ctx.stroke(),this.ctx.restore()})),Vm(this,"createEraser",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];this.ctx.beginPath(),this.ctx.moveTo(t,n)})),Vm(this,"drawEraser",(e=>{const{x:t,y:n}=this._createPointByEvent(this._pointerEventToSignatureEvent(e));this.ctx.globalCompositeOperation="destination-out",this.ctx.lineCap="round",this.ctx.lineWidth=this.eraserSize,this.ctx.lineTo(t,n),this.ctx.stroke(),this.ctx.globalCompositeOperation="source-over"})),Vm(this,"drawLine",(e=>{this.openSmooth?this._strokeMoveUpdate(this._pointerEventToSignatureEvent(e)):this.drawPencil(e)})),Vm(this,"createTextInput",(e=>{if(!this._lastPoints.length)return;const{x:t,y:n}=this._lastPoints[0];0!=this.textInputPos.x&&0!=this.textInputPos.y&&this.textInputPos.x!=t&&this.textInputPos.y!=n?this.textInput.blur():(this.textInput.classList.add("show"),this.setInputStyle(),this.textInput.focus())})),Vm(this,"setInputStyle",(()=>{if(!this._lastPoints.length)return;const{x:e,y:t}=this._lastPoints[0];this.textInput.style.left=e+"px",this.textInput.style.lineHeight=this.lineHeight.toString(),this.textInput.style.fontSize=this.fontSize+"px",this.textInput.style.color=this.penColor,this.textInput.style.top=t-Math.floor((this.textInput.offsetHeight-2)/2)+"px",this.textInputPos={x:e,y:t}})),Vm(this,"drawBgColor",(()=>{this.backgroundColor&&(this.ctx.fillStyle=this.backgroundColor,this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height))})),Vm(this,"clearWorkSpace",(()=>{this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height)})),Vm(this,"addHistory",(()=>{this.canAddHistory&&(this.canAddHistory=!1,this._historyList.push(this.ctx.getImageData(0,0,this.canvas.width,this.canvas.height)))})),Vm(this,"getLastHistory",(()=>this._historyList[this._historyList.length-1])),Vm(this,"setLastHistory",(()=>{const e=this.getLastHistory();e?this.ctx.putImageData(e,0,0):this.clearWorkSpace()})),Vm(this,"clear",(()=>{this.clearWorkSpace(),this.drawBgColor(),this._historyList=[],this._data=[],this._reset(this._getPointGroupOptions())})),Vm(this,"undo",(()=>{const e=this._historyList[this._historyList.length-2];e?(this.ctx.putImageData(e,0,0),this._historyList.pop()):this.clear()})),Vm(this,"setDrawMode",(e=>{this.mode=e})),Vm(this,"setLineWidth",(e=>{this.maxWidth=e})),Vm(this,"setPenColor",(e=>{this.penColor=e})),Vm(this,"setFontSize",(e=>{this.fontSize=e})),Vm(this,"isEmpty",(()=>{const e=document.createElement("canvas"),t=e.getContext("2d");return e.width=this.canvas.width,e.height=this.canvas.height,1!==this.ratio&&t.scale(this.ratio,this.ratio),this.backgroundColor&&(t.fillStyle=this.backgroundColor,t.fillRect(0,0,e.width,e.height)),e.toDataURL()===this.canvas.toDataURL()})),Vm(this,"toDataURL",((e="image/png",t=1)=>{if(this.canvas.width===this.width)return this.canvas.toDataURL(e,t);const n=document.createElement("canvas");return n.width=this.width,n.height=this.height,n.getContext("2d").drawImage(this.canvas,0,0,n.width,n.height),n.toDataURL(e,t)})),Vm(this,"getPNG",(()=>this.toDataURL())),Vm(this,"getJPG",((e=.8)=>this.toDataURL("image/jpeg",e))),this.initial(e,t)}initial(e,t={}){e&&(this.canvas=e,this.ctx=e.getContext("2d"),this.textInput=document.createElement("div"),this.width=t.width||e.clientWidth||this.width,this.height=t.height||e.clientHeight||this.height,this.penColor=t.penColor||this.penColor,this.fontSize=t.fontSize||this.fontSize,this.openSmooth=void 0===t.openSmooth?this.openSmooth:!!t.openSmooth,this.backgroundColor=this.openSmooth&&t.backgroundColor||this.backgroundColor,this.mode=t.mode||this.mode,this._strokeMoveUpdate=this.throttle?function(e,t=250){let n,r,a,i=0,l=null;const o=()=>{i=Date.now(),l=null,n=e.apply(r,a),l||(r=null,a=[])};return function(...s){const c=Date.now(),d=t-(c-i);return r=this,a=s,d<=0||d>t?(l&&(clearTimeout(l),l=null),i=c,n=e.apply(r,a),l||(r=null,a=[])):l||(l=window.setTimeout(o,d)),n}}(this._strokeUpdate,this.throttle):this._strokeUpdate,this.minWidth=t.minWidth||this.minWidth,this.maxWidth=t.maxWidth||this.maxWidth,this.onStart=t.onStart,this.onEnd=t.onEnd,this.setCanvasSize(),this.setTextInput(),this.drawBgColor(),this.addListener())}update(){this.setCanvasSize(),this.clear()}destroy(){this.removeListener();for(const e in this)Object.prototype.hasOwnProperty.call(this,e)&&(this[e]=null)}}Vm(Wm,"dataURLToBlob",(e=>{const t=e.split(";base64,"),n=t[0].split(":")[1],r=window.atob(t[1]),a=r.length,i=new Uint8Array(a);for(let e=0;e<a;++e)i[e]=r.charCodeAt(e);return new Blob([i],{type:n})})),Vm(Wm,"canvasToDataURL",(e=>e.toDataURL("image/png",1))),Vm(Wm,"canvasToBlob",(e=>new Promise(((t,n)=>{e.toBlob((e=>e?t(e):n(null)),"image/png",1)}))));const Bm=Wm,Um=()=>l().createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"})),Gm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M839.111111 269.198222V122.908444A9.159111 9.159111 0 0 0 829.980444 113.777778H208.213333A9.159111 9.159111 0 0 0 199.111111 122.908444v146.289778c0 5.034667 4.124444 9.159111 9.130667 9.159111h64a9.159111 9.159111 0 0 0 9.159111-9.159111V196.067556h192v640h-105.159111a9.159111 9.159111 0 0 0-9.130667 9.130666v64c0 5.034667 4.124444 9.159111 9.130667 9.159111h301.738666a9.159111 9.159111 0 0 0 9.130667-9.159111v-64a9.159111 9.159111 0 0 0-9.130667-9.130666h-105.159111v-640h192v73.130666c0 5.034667 4.124444 9.159111 9.159111 9.159111h64a9.159111 9.159111 0 0 0 9.130667-9.159111z"})),Ym=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M887.65217391 606.59279489a31.26857185 31.26857185 0 0 1-31.26857185-31.26857087v-363.48819946L158.38608696 909.83354065a31.26857185 31.26857185 0 1 1-44.21962762-44.21962761l697.99751609-698.06906805h-363.48819945a31.26857185 31.26857185 0 0 1 0-62.46559075h439.04795087c17.17267109 0 31.26857185 13.95279489 31.26857086 31.19701891v439.04795087a31.26857185 31.26857185 0 0 1-31.3401238 31.26857087z"})),Xm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M606.4 103.424a64 64 0 0 1 0.704 0.64l320.256 280.32a64 64 0 0 1 7.104 89.024l-330.432 398.72 320.448 0.128a32 32 0 0 1 0 64.064H397.632a32.128 32.128 0 0 1-6.208-0.64h-20.736a64 64 0 0 1-42.304-16.064l-238.08-210.112A64 64 0 0 1 83.84 620.16l432.32-509.312a64 64 0 0 1 90.24-7.36zM242.048 537.536l-87.04 101.76a32 32 0 0 0 3.584 45.248l213.12 180.672a32 32 0 0 0 20.736 7.616l-0.64-0.064a32.192 32.192 0 0 1 5.76-0.512h102.016a32 32 0 0 0 18.176-10.496l40.96-47.232-316.672-276.992zM592.96 177.28a32 32 0 0 0-45.12 3.456L283.712 488.96l316.928 277.248 264.512-304.96a32 32 0 0 0 1.024-40.704l-3.904-4.16-268.928-238.72a32 32 0 0 0-0.384-0.32z"})),Qm=()=>l().createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"circle",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},l().createElement("path",{d:"M607.75537778 291.05948444H223.6416l115.34336-115.41617778a36.37248 36.37248 0 1 0-51.48216889-51.44576L132.61937778 279.04455111c-13.54410667 13.50769778-21.04433778 31.67573333-21.11715556 50.97244444a71.72551111 71.72551111 0 0 0 21.11715556 51.51857778l154.88341333 154.91982222a36.29966222 36.29966222 0 0 0 51.48216889 0 36.37248 36.37248 0 0 0 0-51.48216889l-121.46005333-121.16878222H607.75537778c130.70791111 0 237.02186667 106.16832 237.02186667 236.65777777s-106.31395555 236.65777778-237.02186667 236.65777778h-254.13404445a36.40888889 36.40888889 0 0 0 0 72.81777779h254.13404445c170.83050667 0 309.83964445-138.82709333 309.83964444-309.47555557 0-170.64846222-139.00913778-309.47555555-309.83964444-309.47555555"})),Zm=l().forwardRef(((e,t)=>{const{open:n,width:r,height:a,imageName:i,penColor:o,penMode:s,minWidth:d,maxWidth:u,backgroundColor:m,className:p,style:h,onOk:f,onCancel:g}=e,{t:y}=U(),b=l().useRef(),v=l().useRef(null),x=l().useRef(null),E=l().useRef(null),w=[2,4,6],C=[14,16,18,20,24,28],S=["#ff0000","#29cc29","#00bfff","#fe6151","#000000","#666666"],[N,I]=Ja(void 0,{value:n,postState:e=>e??!1}),T=l().useMemo((()=>!!e.children),[e.children]),[O,k]=l().useState(s||(T?"square":"line")),[P,L]=l().useState(w[0]),[A,_]=l().useState(T?S[0]:S[4]),[F,D]=l().useState(C[1]),[H,q]=l().useState("bottomLeft"),[$,M]=l().useState(!1),[K,z]=l().useState(!1);l().useEffect((()=>{const e={width:r??x.current?.offsetWidth,height:a??x.current?.offsetHeight,maxWidth:P,mode:O,penColor:A,fontSize:F,backgroundColor:m,openSmooth:!T};return e.openSmooth&&Object.assign(e,{penColor:o,minWidth:d,maxWidth:u}),b.current=new Bm(v.current,e),()=>b.current.destroy()}),[]);const j=e=>{const[t,n]=[r??x.current?.offsetWidth,a??x.current?.offsetHeight],{width:i,height:l}=b.current;let o=!1;t&&t!==i&&(b.current.width=t,o=!0),n&&n!==l&&(b.current.height=n,o=!0),(o||e)&&b.current.update()};He((()=>{T&&N&&j()}),[N,T]),He((()=>{b.current.setDrawMode(O)}),[O]),He((()=>{b.current.setLineWidth(P)}),[P]),He((()=>{b.current.setPenColor(A)}),[A]),He((()=>{b.current.setFontSize(F)}),[F]);const V=async()=>{const e=T?x.current.parentNode:v.current;if(e)try{const t=await Mm()(e,{useCORS:!0,logging:!1,ignoreElements:e=>e===E.current||e.classList.contains("spinning")});return Bm.canvasToDataURL(t)}catch(e){me("Signature","生成合成图片失败!")}},W=()=>{b.current.clear(),g?.()};l().useImperativeHandle(t,(()=>({OPEN:()=>I(!0),CLOSE:()=>I(!1),CLEAR:()=>b.current.clear(),UNDO:()=>b.current.undo(),IS_EMPTY:()=>b.current.isEmpty(),UPDATE:j,GET_DATE_URL:V})));const B=e=>{e&&q((()=>{const e=E.current.getBoundingClientRect();return e.top+e.height>=window.innerHeight})()?"topLeft":"bottomLeft")},G=e=>l().createElement("div",{className:xe()("ant-dropdown-menu","content")},"text"!==e?l().createElement("div",{className:"lineWidth"},w.map((e=>l().createElement("span",{key:e,className:xe()("dot",`s${e}`,{active:e===P}),onClick:()=>L(e)})))):l().createElement("div",{className:"fontSize"},l().createElement(R.Select,{size:"small",value:F,options:C.map((e=>({value:e,label:e.toString()}))),onChange:e=>D(e)})),l().createElement("span",{className:"divider"}),l().createElement("div",{className:"penColor"},S.map((e=>l().createElement("span",{key:e,className:xe()("dot",{active:e===A}),style:{backgroundColor:e},onClick:()=>_(e)},l().createElement(we.CheckOutlined,{className:"icon"})))))),Y=Ee("signature"),X={[Y]:!0,"is-annotation":T},Q=r?{...h,width:r}:h;return l().createElement("div",{className:xe()(X,p),style:Q},T&&l().createElement(l().Fragment,null,l().createElement("div",{ref:x,className:"content"},e.children),K&&l().createElement(mt,{spinning:!0,className:"spinning"})),l().createElement("div",{className:xe()("signature",{show:N})},l().createElement("canvas",{ref:v,className:O}),T&&l().createElement("div",{ref:E,className:"signature__tool-bar"},l().createElement("div",{className:"wrapper"},l().createElement("div",{className:xe()("actions",{hidden:$})},l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("square")},l().createElement(we.BorderOutlined,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("round")},l().createElement(Um,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("arrow")},l().createElement(Ym,null))),l().createElement(R.Dropdown,{dropdownRender:G,overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("line")},l().createElement(we.EditOutlined,null))),l().createElement(R.Dropdown,{dropdownRender:()=>G("text"),overlayClassName:`${Y}__popper`,placement:H,trigger:["click"],onOpenChange:B},l().createElement("button",{className:"btn",onClick:()=>k("text")},l().createElement(Gm,null))),l().createElement("button",{className:"btn",onClick:async()=>{await(async()=>{z(!0);const e=await V();if(e){const t=i?i.slice(0,i.lastIndexOf(".")>0?i.lastIndexOf("."):void 0):c()().format(Ka);Dt(Bm.dataURLToBlob(e),`${t}.png`)}z(!1)})(),W()}},l().createElement(we.DownloadOutlined,null)),l().createElement("button",{className:"btn",onClick:()=>k("eraser")},l().createElement(Xm,null)),l().createElement("button",{className:"btn",onClick:()=>b.current.undo()},l().createElement(Qm,null)),l().createElement("button",{className:"btn",onClick:()=>b.current.clear()},l().createElement(we.ClearOutlined,null)),l().createElement("span",{className:"divider"}),l().createElement("button",{className:"btn",onClick:()=>g?.()},l().createElement(we.CloseOutlined,null)),l().createElement("button",{className:"btn",onClick:async()=>{z(!0),await ne(10);const e=await V();z(!1),W(),f?.(e)}},l().createElement(we.CheckOutlined,null))),l().createElement("button",{className:"btn btn-fold",title:y($?"qm.divider.spread":"qm.divider.collect"),onClick:()=>M(!$)},$?l().createElement(we.LeftOutlined,null):l().createElement(we.RightOutlined,null))))))}));Zm.displayName="QmSignature";const Jm=Zm,ep=l().forwardRef(((e,t)=>{const{dataIndex:n,className:r,style:a}=e;return l().createElement("li",{ref:t,"data-index":n,className:xe()("list-item",r),style:a},e.children)}));ep.displayName="ListItem";const tp=ep,np=l().forwardRef(((e,t)=>{const{dataSource:n=[],height:r,maxHeight:a,itemHeight:i,renderItem:o,onScroll:s,className:c}=e,d=l().useRef(null),u=eo({count:n.length,getScrollElement:()=>d.current?.container.children[0]??null,estimateSize:()=>i||40,overscan:3,onChange:(e,t)=>s?.(e,t)}),m=u.getVirtualItems();l().useImperativeHandle(t,(()=>({SCROLL_TO_INDEX:e=>u.scrollToIndex(e),SCROLL_TO_OFFSET:e=>u.scrollToOffset(e)})));const p=Ee("virtual-list");return l().createElement(At,{ref:d,className:xe()(p,c),style:{...e.style,height:r,maxHeight:a}},l().createElement("div",{className:"container",style:{height:u.getTotalSize()}},l().createElement("ul",{style:{transform:`translateY(${m[0]?.start??0}px)`}},m.map((e=>l().createElement(tp,{ref:u.measureElement,key:e.index,dataIndex:e.index,style:{height:i}},o?.(n[e.index],e.index)))))))}));np.displayName="VirtualList";const rp=np,ap="1.11.24";return a})()));
|