@vtx/components 3.1.90 → 3.1.92
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/vtx-combogrid/index.js +2 -1
- package/lib/vtx-combogrid/index.js.map +1 -1
- package/lib/vtx-upload/index.js +17 -2
- package/lib/vtx-upload/index.js.map +1 -1
- package/lib/vtx-ztree-select/index.js +2 -3
- package/lib/vtx-ztree-select/index.js.map +1 -1
- package/lib/vtx-ztree-select/style/index.css +5 -0
- package/lib/vtx-ztree-select/style/index.less +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VtxCombogrid","props","ref","useState","selectedRowKeys","setSelectedRowKeys","visible","setVisible","comboRef","useRef","className","style","placeholder","prefixCls","value","allowClear","defaultSelectedRowKeys","popoverProps","content","rest","useEffect","join","useImperativeHandle","reset","current","clear","e","target","onChange","React","forwardRef","propTypes","PropTypes","string","bool","object","array","node"],"sources":["vtx-combogrid/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef, useImperativeHandle } from 'react';\r\n\r\nimport Input from 'antd/lib/input';\r\nimport Popover from 'antd/lib/popover';\r\nimport PropTypes from 'prop-types';\r\nimport Combogrid from './Combogrid';\r\n\r\nfunction VtxCombogrid(props, ref) {\r\n const [selectedRowKeys, setSelectedRowKeys] = useState(() => {\r\n return [];\r\n });\r\n const [visible, setVisible] = useState(false);\r\n const comboRef = useRef();\r\n const {\r\n className,\r\n style,\r\n placeholder,\r\n prefixCls = 'vtx-combogrid',\r\n value,\r\n allowClear = true,\r\n selectedRowKeys: defaultSelectedRowKeys = [],\r\n popoverProps = {},\r\n content = null,\r\n ...rest\r\n } = props;\r\n\r\n useEffect(() => {\r\n setSelectedRowKeys(defaultSelectedRowKeys);\r\n }, [defaultSelectedRowKeys.join(',')]);\r\n\r\n // 暴露给父组件使用\r\n useImperativeHandle(ref, () => ({\r\n // 重置\r\n reset() {\r\n comboRef.current && comboRef.current.clear();\r\n },\r\n }));\r\n\r\n return (\r\n <Popover\r\n placement=\"bottomLeft\"\r\n {...popoverProps}\r\n content={\r\n <Combogrid\r\n {...rest}\r\n selectedRowKeys={selectedRowKeys}\r\n defaultSelectedRowKeys={defaultSelectedRowKeys}\r\n setSelectedRowKeys={setSelectedRowKeys}\r\n setPopoverVisible={setVisible}\r\n prefixCls={prefixCls}\r\n ref={comboRef}\r\n />\r\n }\r\n trigger=\"click\"\r\n visible={visible}\r\n onVisibleChange={visible => setVisible(visible)}\r\n overlayClassName={`${prefixCls}-dropdown`}\r\n >\r\n {content ? (\r\n content\r\n ) : (\r\n <Input\r\n value={value}\r\n allowClear={allowClear}\r\n onClick={() => setVisible(true)}\r\n onChange={e => {\r\n // 只对清空产生值的变化做处理\r\n if (!e.target.value) {\r\n rest.onChange && rest.onChange();\r\n setSelectedRowKeys([]);\r\n }\r\n }}\r\n className={className}\r\n style={style}\r\n placeholder={placeholder}\r\n />\r\n )}\r\n </Popover>\r\n );\r\n}\r\n\r\nexport default React.forwardRef(VtxCombogrid);\r\n\r\nVtxCombogrid.propTypes = {\r\n prefixCls: PropTypes.string,\r\n placeholder: PropTypes.string,\r\n value: PropTypes.string,\r\n allowClear: PropTypes.bool,\r\n className: PropTypes.string,\r\n style: PropTypes.object,\r\n selectedRowKeys: PropTypes.array,\r\n content: PropTypes.node,\r\n popoverProps: PropTypes.object,\r\n};\r\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASA,YAAT,CAAsBC,KAAtB,EAA6BC,GAA7B,EAAkC;EAC9B,gBAA8C,IAAAC,eAAA,EAAS,YAAM;IACzD,OAAO,EAAP;EACH,CAF6C,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EAGA,iBAA8B,IAAAF,eAAA,EAAS,KAAT,CAA9B;EAAA;EAAA,IAAOG,OAAP;EAAA,IAAgBC,UAAhB;;EACA,IAAMC,QAAQ,GAAG,IAAAC,aAAA,GAAjB;;EACA,IACIC,SADJ,GAWIT,KAXJ,CACIS,SADJ;EAAA,IAEIC,KAFJ,GAWIV,KAXJ,CAEIU,KAFJ;EAAA,IAGIC,WAHJ,GAWIX,KAXJ,CAGIW,WAHJ;EAAA,uBAWIX,KAXJ,CAIIY,SAJJ;EAAA,IAIIA,SAJJ,iCAIgB,eAJhB;EAAA,IAKIC,KALJ,GAWIb,KAXJ,CAKIa,KALJ;EAAA,wBAWIb,KAXJ,CAMIc,UANJ;EAAA,IAMIA,UANJ,kCAMiB,IANjB;EAAA,4BAWId,KAXJ,CAOIG,eAPJ;EAAA,IAOqBY,sBAPrB,sCAO8C,EAP9C;EAAA,0BAWIf,KAXJ,CAQIgB,YARJ;EAAA,IAQIA,YARJ,oCAQmB,EARnB;EAAA,qBAWIhB,KAXJ,CASIiB,OATJ;EAAA,IASIA,OATJ,+BASc,IATd;EAAA,IAUOC,IAVP,4BAWIlB,KAXJ;;EAaA,IAAAmB,gBAAA,EAAU,YAAM;IACZf,kBAAkB,CAACW,sBAAD,CAAlB;EACH,CAFD,EAEG,CAACA,sBAAsB,CAACK,IAAvB,CAA4B,GAA5B,CAAD,CAFH,EAnB8B,CAuB9B;;EACA,IAAAC,0BAAA,EAAoBpB,GAApB,EAAyB;IAAA,OAAO;MAC5B;MACAqB,KAF4B,mBAEpB;QACJf,QAAQ,CAACgB,OAAT,IAAoBhB,QAAQ,CAACgB,OAAT,CAAiBC,KAAjB,EAApB;MACH;IAJ2B,CAAP;EAAA,CAAzB;EAOA,oBACI,gCAAC,mBAAD;IACI,SAAS,EAAC;EADd,GAEQR,YAFR;IAGI,OAAO,eACH,gCAAC,qBAAD,eACQE,IADR;MAEI,eAAe,EAAEf,eAFrB;MAGI,sBAAsB,EAAEY,sBAH5B;MAII,kBAAkB,EAAEX,kBAJxB;MAKI,iBAAiB,EAAEE,UALvB;MAMI,SAAS,EAAEM,SANf;MAOI,GAAG,EAAEL;IAPT,GAJR;IAcI,OAAO,EAAC,OAdZ;IAeI,OAAO,EAAEF,OAfb;IAgBI,eAAe,EAAE,yBAAAA,OAAO;MAAA,OAAIC,UAAU,CAACD,OAAD,CAAd;IAAA,CAhB5B;IAiBI,gBAAgB,YAAKO,SAAL;EAjBpB,IAmBKK,OAAO,GACJA,OADI,gBAGJ,gCAAC,iBAAD;IACI,KAAK,EAAEJ,KADX;IAEI,UAAU,EAAEC,UAFhB;IAGI,OAAO,EAAE;MAAA,OAAMR,UAAU,CAAC,IAAD,CAAhB;IAAA,CAHb;IAII,QAAQ,EAAE,kBAAAmB,CAAC,EAAI;MACX;MACA,IAAI,CAACA,CAAC,CAACC,MAAF,CAASb,KAAd,EAAqB;QACjBK,IAAI,CAACS,QAAL,IAAiBT,IAAI,CAACS,QAAL,EAAjB;QACAvB,kBAAkB,CAAC,EAAD,CAAlB;MACH;IACJ,CAVL;IAWI,SAAS,EAAEK,SAXf;IAYI,KAAK,EAAEC,KAZX;IAaI,WAAW,EAAEC;
|
|
1
|
+
{"version":3,"file":"index.js","names":["VtxCombogrid","props","ref","useState","selectedRowKeys","setSelectedRowKeys","visible","setVisible","comboRef","useRef","className","style","placeholder","prefixCls","value","allowClear","defaultSelectedRowKeys","popoverProps","content","rest","useEffect","join","useImperativeHandle","reset","current","clear","e","target","onChange","React","forwardRef","propTypes","PropTypes","string","bool","object","array","node"],"sources":["vtx-combogrid/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef, useImperativeHandle } from 'react';\r\n\r\nimport Input from 'antd/lib/input';\r\nimport Popover from 'antd/lib/popover';\r\nimport PropTypes from 'prop-types';\r\nimport Combogrid from './Combogrid';\r\n\r\nfunction VtxCombogrid(props, ref) {\r\n const [selectedRowKeys, setSelectedRowKeys] = useState(() => {\r\n return [];\r\n });\r\n const [visible, setVisible] = useState(false);\r\n const comboRef = useRef();\r\n const {\r\n className,\r\n style,\r\n placeholder,\r\n prefixCls = 'vtx-combogrid',\r\n value,\r\n allowClear = true,\r\n selectedRowKeys: defaultSelectedRowKeys = [],\r\n popoverProps = {},\r\n content = null,\r\n ...rest\r\n } = props;\r\n\r\n useEffect(() => {\r\n setSelectedRowKeys(defaultSelectedRowKeys);\r\n }, [defaultSelectedRowKeys.join(',')]);\r\n\r\n // 暴露给父组件使用\r\n useImperativeHandle(ref, () => ({\r\n // 重置\r\n reset() {\r\n comboRef.current && comboRef.current.clear();\r\n },\r\n }));\r\n\r\n return (\r\n <Popover\r\n placement=\"bottomLeft\"\r\n {...popoverProps}\r\n content={\r\n <Combogrid\r\n {...rest}\r\n selectedRowKeys={selectedRowKeys}\r\n defaultSelectedRowKeys={defaultSelectedRowKeys}\r\n setSelectedRowKeys={setSelectedRowKeys}\r\n setPopoverVisible={setVisible}\r\n prefixCls={prefixCls}\r\n ref={comboRef}\r\n />\r\n }\r\n trigger=\"click\"\r\n visible={visible}\r\n onVisibleChange={visible => setVisible(visible)}\r\n overlayClassName={`${prefixCls}-dropdown`}\r\n >\r\n {content ? (\r\n content\r\n ) : (\r\n <Input\r\n value={value}\r\n allowClear={allowClear}\r\n onClick={() => setVisible(true)}\r\n onChange={e => {\r\n // 只对清空产生值的变化做处理\r\n if (!e.target.value) {\r\n rest.onChange && rest.onChange();\r\n setSelectedRowKeys([]);\r\n }\r\n }}\r\n className={className}\r\n style={style}\r\n placeholder={placeholder}\r\n readOnly\r\n />\r\n )}\r\n </Popover>\r\n );\r\n}\r\n\r\nexport default React.forwardRef(VtxCombogrid);\r\n\r\nVtxCombogrid.propTypes = {\r\n prefixCls: PropTypes.string,\r\n placeholder: PropTypes.string,\r\n value: PropTypes.string,\r\n allowClear: PropTypes.bool,\r\n className: PropTypes.string,\r\n style: PropTypes.object,\r\n selectedRowKeys: PropTypes.array,\r\n content: PropTypes.node,\r\n popoverProps: PropTypes.object,\r\n};\r\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASA,YAAT,CAAsBC,KAAtB,EAA6BC,GAA7B,EAAkC;EAC9B,gBAA8C,IAAAC,eAAA,EAAS,YAAM;IACzD,OAAO,EAAP;EACH,CAF6C,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EAGA,iBAA8B,IAAAF,eAAA,EAAS,KAAT,CAA9B;EAAA;EAAA,IAAOG,OAAP;EAAA,IAAgBC,UAAhB;;EACA,IAAMC,QAAQ,GAAG,IAAAC,aAAA,GAAjB;;EACA,IACIC,SADJ,GAWIT,KAXJ,CACIS,SADJ;EAAA,IAEIC,KAFJ,GAWIV,KAXJ,CAEIU,KAFJ;EAAA,IAGIC,WAHJ,GAWIX,KAXJ,CAGIW,WAHJ;EAAA,uBAWIX,KAXJ,CAIIY,SAJJ;EAAA,IAIIA,SAJJ,iCAIgB,eAJhB;EAAA,IAKIC,KALJ,GAWIb,KAXJ,CAKIa,KALJ;EAAA,wBAWIb,KAXJ,CAMIc,UANJ;EAAA,IAMIA,UANJ,kCAMiB,IANjB;EAAA,4BAWId,KAXJ,CAOIG,eAPJ;EAAA,IAOqBY,sBAPrB,sCAO8C,EAP9C;EAAA,0BAWIf,KAXJ,CAQIgB,YARJ;EAAA,IAQIA,YARJ,oCAQmB,EARnB;EAAA,qBAWIhB,KAXJ,CASIiB,OATJ;EAAA,IASIA,OATJ,+BASc,IATd;EAAA,IAUOC,IAVP,4BAWIlB,KAXJ;;EAaA,IAAAmB,gBAAA,EAAU,YAAM;IACZf,kBAAkB,CAACW,sBAAD,CAAlB;EACH,CAFD,EAEG,CAACA,sBAAsB,CAACK,IAAvB,CAA4B,GAA5B,CAAD,CAFH,EAnB8B,CAuB9B;;EACA,IAAAC,0BAAA,EAAoBpB,GAApB,EAAyB;IAAA,OAAO;MAC5B;MACAqB,KAF4B,mBAEpB;QACJf,QAAQ,CAACgB,OAAT,IAAoBhB,QAAQ,CAACgB,OAAT,CAAiBC,KAAjB,EAApB;MACH;IAJ2B,CAAP;EAAA,CAAzB;EAOA,oBACI,gCAAC,mBAAD;IACI,SAAS,EAAC;EADd,GAEQR,YAFR;IAGI,OAAO,eACH,gCAAC,qBAAD,eACQE,IADR;MAEI,eAAe,EAAEf,eAFrB;MAGI,sBAAsB,EAAEY,sBAH5B;MAII,kBAAkB,EAAEX,kBAJxB;MAKI,iBAAiB,EAAEE,UALvB;MAMI,SAAS,EAAEM,SANf;MAOI,GAAG,EAAEL;IAPT,GAJR;IAcI,OAAO,EAAC,OAdZ;IAeI,OAAO,EAAEF,OAfb;IAgBI,eAAe,EAAE,yBAAAA,OAAO;MAAA,OAAIC,UAAU,CAACD,OAAD,CAAd;IAAA,CAhB5B;IAiBI,gBAAgB,YAAKO,SAAL;EAjBpB,IAmBKK,OAAO,GACJA,OADI,gBAGJ,gCAAC,iBAAD;IACI,KAAK,EAAEJ,KADX;IAEI,UAAU,EAAEC,UAFhB;IAGI,OAAO,EAAE;MAAA,OAAMR,UAAU,CAAC,IAAD,CAAhB;IAAA,CAHb;IAII,QAAQ,EAAE,kBAAAmB,CAAC,EAAI;MACX;MACA,IAAI,CAACA,CAAC,CAACC,MAAF,CAASb,KAAd,EAAqB;QACjBK,IAAI,CAACS,QAAL,IAAiBT,IAAI,CAACS,QAAL,EAAjB;QACAvB,kBAAkB,CAAC,EAAD,CAAlB;MACH;IACJ,CAVL;IAWI,SAAS,EAAEK,SAXf;IAYI,KAAK,EAAEC,KAZX;IAaI,WAAW,EAAEC,WAbjB;IAcI,QAAQ;EAdZ,EAtBR,CADJ;AA0CH;;4BAEciB,iBAAA,CAAMC,UAAN,CAAiB9B,YAAjB,C;;;AAEfA,YAAY,CAAC+B,SAAb,GAAyB;EACrBlB,SAAS,EAAEmB,qBAAA,CAAUC,MADA;EAErBrB,WAAW,EAAEoB,qBAAA,CAAUC,MAFF;EAGrBnB,KAAK,EAAEkB,qBAAA,CAAUC,MAHI;EAIrBlB,UAAU,EAAEiB,qBAAA,CAAUE,IAJD;EAKrBxB,SAAS,EAAEsB,qBAAA,CAAUC,MALA;EAMrBtB,KAAK,EAAEqB,qBAAA,CAAUG,MANI;EAOrB/B,eAAe,EAAE4B,qBAAA,CAAUI,KAPN;EAQrBlB,OAAO,EAAEc,qBAAA,CAAUK,IARE;EASrBpB,YAAY,EAAEe,qBAAA,CAAUG;AATH,CAAzB"}
|
package/lib/vtx-upload/index.js
CHANGED
|
@@ -412,11 +412,18 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
412
412
|
console.error('文件列表的name和id属性不能为空');
|
|
413
413
|
}
|
|
414
414
|
|
|
415
|
+
var url = item.url || downloadUrl + item.id,
|
|
416
|
+
thumbUrl = useThumbnail ? item.thumbUrl || thumbnailUrl + item.id : undefined;
|
|
417
|
+
|
|
418
|
+
if (!isSupportThumbnail(item.type)) {
|
|
419
|
+
thumbUrl = url;
|
|
420
|
+
}
|
|
421
|
+
|
|
415
422
|
return _objectSpread(_objectSpread({}, item), {}, {
|
|
416
423
|
uid: -1 - index,
|
|
417
424
|
status: 'done',
|
|
418
|
-
url:
|
|
419
|
-
thumbUrl:
|
|
425
|
+
url: url,
|
|
426
|
+
thumbUrl: thumbUrl
|
|
420
427
|
});
|
|
421
428
|
});
|
|
422
429
|
return processedFileList;
|
|
@@ -505,4 +512,12 @@ VtxUpload.propTypes = {
|
|
|
505
512
|
};
|
|
506
513
|
var _default = VtxUpload;
|
|
507
514
|
exports["default"] = _default;
|
|
515
|
+
|
|
516
|
+
function isSupportThumbnail(type) {
|
|
517
|
+
if (['image/webp'].includes(type)) {
|
|
518
|
+
return false;
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
return true;
|
|
522
|
+
}
|
|
508
523
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["debouncedMessage","debounce","msg","message","error","initVPrev","type","name","url","downloadUrl","visible","initUrl","action","thumbnailUrl","rejectTypes","Dragger","Upload","VtxUpload","forwardRef","props","ref","isDragger","draggerConfig","accept","mode","viewMode","showUploadList","customizedButton","listType","onSuccess","onError","onRemove","maxFileSize","beforeUpload","maxNum","flag","crop","rest","useThumbnail","undefined","useState","fileList","setFileList","imageViewer","setImageViewer","imageList","setImageList","imageCt","setImageCt","useSetState","vPrev","setVPrev","joinToken","str","indexOf","replace","getToken","window","flsPrefix","useEffect","getSynFileList","Array","isArray","imagelist","map","file","push","Viewer","getConfig","token","config","headers","Authorization","onChange","info","response","result","errMsg","flt","pop","status","vtxId","data","length","id","newFileList","newFile","thumbUrl","filter","item","uid","afterFileList","limit","size","pointIndex","lastIndexOf","fileType","substring","includes","onDownload","downloadFile","fileName","onPreview","handlePreview","showRemoveIcon","showDownloadIcon","imageIndex","update","view","processedFileList","index","console","upload","fontSize","color","comp","img","maxWidth","maxHeight","marginTop","marginBottom","mainText","subText","display","ins","propTypes","PropTypes","bool","object","string","node","previewUrl","func","number","array"],"sources":["vtx-upload/index.jsx"],"sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\r\nimport useSetState from 'ahooks/es/useSetState';\r\nimport PropTypes from 'prop-types';\r\nimport Viewer from 'viewerjs';\r\nimport Upload from 'antd/lib/upload';\r\nimport Button from 'antd/lib/button';\r\nimport InboxOutlined from '@ant-design/icons/InboxOutlined';\r\nimport PlusOutlined from '@ant-design/icons/PlusOutlined';\r\nimport UploadOutlined from '@ant-design/icons/UploadOutlined';\r\nimport message from 'antd/lib/message';\r\nimport downloadFile from '@vtx/utils/lib/downloadFile';\r\nimport debounce from 'lodash.debounce';\r\nimport Prev from './FilePreview';\r\nimport getToken from '../_util/getToken';\r\nimport ImgCrop from 'antd-img-crop';\r\n\r\nconst debouncedMessage = debounce(msg => {\r\n message.error(msg);\r\n}, 500);\r\n\r\n//文件预览\r\nconst initVPrev = {\r\n type: '', //video or file\r\n name: '',\r\n url: '',\r\n downloadUrl: '',\r\n visible: false,\r\n};\r\n\r\nconst initUrl = {\r\n action: '/cloudFile/common/uploadFile',\r\n downloadUrl: '/cloudFile/common/downloadFile?id=',\r\n thumbnailUrl:\r\n '/vortex/rest/cloud/np/file/downloadFileThumbnail?outputQuality=0.5&scale=0.2&id=',\r\n //previewUrl: '/onlinePreview',\r\n};\r\n//禁止上传的文件类型\r\nconst rejectTypes = ['.asp', '.aspx', '.jsp', '.exe', '.cgi', '.asa', '.cer', '.cdx', '.hta'];\r\n\r\nconst Dragger = Upload.Dragger;\r\nconst VtxUpload = forwardRef((props, ref) => {\r\n const {\r\n isDragger = false, //是否拖拽模式\r\n draggerConfig = {}, //拖动配置\r\n accept, //接受上传的文件类型\r\n mode = 'multiple', //单文件模式or多文件模式\r\n viewMode, //是否查看模式(隐藏上传按钮)\r\n showUploadList, //是否展示文件列表\r\n customizedButton, //自定义上传文字描述\r\n listType = 'text', //上传列表的样式\r\n onSuccess, //上传成功\r\n onError, //上传失败\r\n onRemove, //删除\r\n maxFileSize = 5 * 1024 * 1024, //文件大小限制,默认最大5M\r\n beforeUpload, //上传前回调\r\n maxNum, //最多上传的文件数量\r\n flag, //同步数据标记\r\n crop, //是否打开裁剪\r\n ...rest\r\n } = props;\r\n // 是否使用缩略图\r\n const useThumbnail =\r\n (props.useThumbnail === undefined ? true : props.useThumbnail) &&\r\n (listType == 'picture' || listType == 'picture-card');\r\n\r\n const [fileList, setFileList] = useState([]); //初始化文件列表\r\n const [imageViewer, setImageViewer] = useState(null); //图片预览\r\n const [imageList, setImageList] = useState([]);\r\n const [imageCt, setImageCt] = useState(null);\r\n const [vPrev, setVPrev] = useSetState(initVPrev); //文件预览相关\r\n\r\n // 参数中拼接token\r\n function joinToken(str) {\r\n if (str.indexOf('token=') === -1 && str.indexOf('?') > -1) {\r\n return str.replace('?', `?token=${getToken() || ''}&`);\r\n } else if (str.indexOf('?') === -1) {\r\n return str + `?token=${getToken() || ''}`;\r\n }\r\n return str;\r\n }\r\n\r\n const url = {\r\n action: props.action || initUrl.action,\r\n downloadUrl: joinToken(props.downloadUrl || initUrl.downloadUrl),\r\n thumbnailUrl: joinToken(\r\n window?.flsPrefix\r\n ? `${window.flsPrefix}${initUrl.thumbnailUrl}`\r\n : `${props.thumbnailUrl || initUrl.thumbnailUrl}`,\r\n ),\r\n //previewUrl: props.previewUrl || initUrl.previewUrl,\r\n };\r\n const { action, downloadUrl, thumbnailUrl } = url;\r\n\r\n useEffect(() => {\r\n setFileList(getSynFileList(props) || []);\r\n }, [flag]);\r\n\r\n useEffect(() => {\r\n if (Array.isArray(fileList)) {\r\n // 只有图片的才可以预览,这边需要判断是否是图片\r\n const imagelist = [];\r\n // 只能通过后缀来判断\r\n fileList.map(file => {\r\n if (file.type?.indexOf('image') > -1) {\r\n imagelist.push(file);\r\n }\r\n });\r\n setImageList(imagelist);\r\n }\r\n }, [fileList]);\r\n\r\n useEffect(() => {\r\n if (imageCt) {\r\n setImageViewer(new Viewer(imageCt, {}));\r\n }\r\n }, [imageCt]);\r\n\r\n const getConfig = () => {\r\n let token = getToken() || '';\r\n let config = {\r\n ...rest,\r\n accept,\r\n action,\r\n fileList: fileList,\r\n listType,\r\n showUploadList,\r\n headers: {\r\n Authorization: token ? `Bearer ${token}` : '',\r\n ...rest.headers,\r\n },\r\n onChange(info) {\r\n setFileList(info.fileList);\r\n if (info.file.response && info.file.response.result === 1) {\r\n message.error(info.file.response.errMsg || '上传失败!');\r\n let flt = [...fileList];\r\n flt.pop();\r\n setFileList(flt);\r\n return;\r\n }\r\n // 此处根据后台返回的数据结构取得文件ID\r\n if (info.file.status !== 'uploading' && info.file.status !== 'removed') {\r\n let vtxId =\r\n info.file.response &&\r\n Array.isArray(info.file.response.data) &&\r\n info.file.response.data.length > 0\r\n ? info.file.response.data[0].id\r\n : undefined;\r\n let newFileList = info.fileList;\r\n let newFile = vtxId\r\n ? {\r\n ...info.file,\r\n id: vtxId,\r\n url: downloadUrl + vtxId,\r\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\r\n }\r\n : {\r\n ...info.file,\r\n };\r\n newFileList = info.fileList\r\n .filter(item => {\r\n // 有vtxId代表上传成功,有item.id代表之前上传成功的\r\n if (vtxId || item.id) return true;\r\n return false;\r\n })\r\n .map(item => {\r\n if (item.uid == info.file.uid) {\r\n return {\r\n ...item,\r\n id: vtxId,\r\n url: downloadUrl + vtxId,\r\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\r\n };\r\n }\r\n return item;\r\n });\r\n\r\n if (mode == 'single') {\r\n setFileList([newFile]);\r\n } else {\r\n setFileList(newFileList);\r\n }\r\n // 更新组件状态\r\n // if (mode == 'single' && info.file.status === 'done') {\r\n // setFileList([newFile]);\r\n // } else {\r\n // setFileList(newFileList);\r\n // }\r\n\r\n // 触发外部方法\r\n if (info.file.status === 'done') {\r\n if (typeof onSuccess == 'function') {\r\n onSuccess(newFile);\r\n }\r\n } else if (info.file.status === 'error') {\r\n if (typeof onError == 'function') {\r\n onError(info.file);\r\n }\r\n }\r\n }\r\n },\r\n onRemove(file) {\r\n if (typeof onRemove == 'function') {\r\n return onRemove(file);\r\n }\r\n },\r\n beforeUpload(file, afterFileList) {\r\n //限制文件大小\r\n if (maxFileSize && typeof maxFileSize === 'number') {\r\n const limit = file.size < maxFileSize;\r\n if (!limit) {\r\n message.error(`请上传${maxFileSize / 1024 / 1024}M以内的文件`);\r\n return false;\r\n }\r\n }\r\n //限制不允许上传的文件类型(通过文件名后缀)\r\n let pointIndex = file.name ? file.name.lastIndexOf('.') : -1;\r\n if (pointIndex > -1) {\r\n let fileType = file.name.substring(pointIndex);\r\n if (rejectTypes.includes(fileType)) {\r\n message.error('不支持该文件类型');\r\n return false;\r\n }\r\n }\r\n // 多选限制文件数量\r\n if (typeof maxNum === 'number' && afterFileList.length + fileList.length > maxNum) {\r\n // 减少提示错误次数, 思路,防抖 这边有个问题 就是防抖的这个方法 return fasle 不上传\r\n debouncedMessage(`最多上传${maxNum}个`);\r\n return false;\r\n }\r\n\r\n if (typeof beforeUpload === 'function') {\r\n return beforeUpload(file, afterFileList);\r\n }\r\n return true;\r\n },\r\n onDownload: file=>{\r\n downloadFile(\r\n file.url,\r\n { fileName: file.name },\r\n 'blob',\r\n );\r\n }\r\n };\r\n\r\n if (props.onPreview && typeof props.onPreview === 'function') {\r\n config.onPreview = props.onPreview;\r\n } else {\r\n config.onPreview = file => {\r\n if (!file.type) {\r\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\r\n } else if (file.type?.indexOf('image') > -1) {\r\n handlePreview(file);\r\n } else if (file.type?.indexOf('video') > -1) {\r\n // 视频\r\n setVPrev({\r\n type: 'video',\r\n name: file.name || '视频预览',\r\n url: downloadUrl + file.id,\r\n downloadUrl: downloadUrl + file.id,\r\n visible: true,\r\n });\r\n } else {\r\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\r\n }\r\n\r\n // TODO 暂无好的文件预览服务,等后续完善,只提供下载\r\n // else if (\r\n // file.type == 'application/PDF' ||\r\n // file.type == 'application/vnd.ms-excel' ||\r\n // file.type ==\r\n // 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ||\r\n // file.type == 'application/msword' ||\r\n // file.type ==\r\n // 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\r\n // ) {\r\n // let url = '';\r\n // if (props.previewUrl) {\r\n // url = `${props.previewUrl}?id=${file.id}&fileName=${file.name}`;\r\n // } else {\r\n // url = `http://183.215.89.162:8012/onlinePreview?url=http://183.136.177.108:8003/cloudFile/common/downloadFile${encodeURIComponent(\r\n // '?id=' + file.id + '&fullfilename=' + file.name.replace(/\\s*/g, ''),\r\n // )}`;\r\n // }\r\n\r\n // setVPrev({\r\n // type: 'file',\r\n // name: file.name || '文件预览',\r\n // url: url,\r\n // downloadUrl: downloadUrl + file.id,\r\n // visible: true,\r\n // });\r\n // }\r\n };\r\n }\r\n\r\n // viewMode\r\n if (viewMode) {\r\n config.showUploadList = { showRemoveIcon: false, showDownloadIcon: true };\r\n }\r\n\r\n return config;\r\n };\r\n\r\n const handlePreview = file => {\r\n const imageIndex = imageList.map(item => item.id).indexOf(file.id);\r\n if (imageIndex == -1) return;\r\n imageViewer.update();\r\n imageViewer.view(imageIndex);\r\n };\r\n\r\n const getSynFileList = props => {\r\n let processedFileList = props.fileList || [];\r\n // 单文件模式只取第一个\r\n if (props.mode == 'single' && processedFileList.length > 1) {\r\n processedFileList = [processedFileList[0]];\r\n }\r\n processedFileList = processedFileList.map((item, index) => {\r\n // 将外部传入的简易文件数组处理成为组件需要的数组结构\r\n if (item.name === undefined || item.id === undefined) {\r\n // eslint-disable-next-line no-console\r\n console.error('文件列表的name和id属性不能为空');\r\n }\r\n return {\r\n ...item,\r\n uid: -1 - index,\r\n status: 'done',\r\n url: item.url || downloadUrl + item.id,\r\n thumbUrl: useThumbnail ? item.thumbUrl || thumbnailUrl + item.id : undefined,\r\n };\r\n });\r\n return processedFileList;\r\n };\r\n\r\n const upload = (\r\n <Upload {...getConfig()} ref={ref}>\r\n {viewMode || fileList.length >= maxNum\r\n ? null\r\n : customizedButton ||\r\n (listType == 'picture-card' ? (\r\n <div>\r\n <PlusOutlined style={{ fontSize: '28px', color: '#999' }} />\r\n <div className=\"ant-upload-text\">上传</div>\r\n </div>\r\n ) : (\r\n <Button>\r\n <UploadOutlined />\r\n 上传\r\n </Button>\r\n ))}\r\n </Upload>\r\n )\r\n const comp = (listType == 'picture-card'&&!!crop)?\r\n <ImgCrop rotationSlider>\r\n {upload}\r\n </ImgCrop>\r\n :upload;\r\n \r\n return (\r\n <>\r\n {isDragger ? (\r\n <Dragger {...getConfig()} ref={ref}>\r\n {draggerConfig?.img ? (\r\n <img\r\n src={draggerConfig.img}\r\n alt=\"\"\r\n style={{\r\n maxWidth: 100,\r\n maxHeight: 100,\r\n marginTop: '3%',\r\n marginBottom: '5%',\r\n }}\r\n />\r\n ) : (\r\n <p className=\"ant-upload-drag-icon\">\r\n <InboxOutlined />\r\n </p>\r\n )}\r\n <p className=\"ant-upload-text\">{draggerConfig?.mainText || '点击或拖拽上传'}</p>\r\n <p className=\"ant-upload-hint\">\r\n {draggerConfig?.subText || '支持上传word,excel,png...'}\r\n </p>\r\n </Dragger>\r\n ) : (\r\n comp\r\n )}\r\n <div style={{ display: 'none' }}>\r\n <ul\r\n ref={ins => {\r\n if (ins) setImageCt(ins);\r\n }}\r\n >\r\n {imageList\r\n .filter(item => item.type && item.type?.indexOf('image') > -1)\r\n .map((item, index) => (\r\n <li key={item.uid}>\r\n <img\r\n src={item.url || downloadUrl + item.id}\r\n alt={item.name || `picture-${index + 1}`}\r\n />\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n {/* 视频预览 */}\r\n <Prev onCancel={() => setVPrev(initVPrev)} {...vPrev} />\r\n </>\r\n );\r\n});\r\n\r\nVtxUpload.propTypes = {\r\n isDragger: PropTypes.bool,\r\n draggerConfig: PropTypes.object,\r\n accept: PropTypes.string,\r\n mode: PropTypes.string,\r\n viewMode: PropTypes.bool,\r\n showUploadList: PropTypes.bool | PropTypes.object,\r\n customizedButton: PropTypes.node,\r\n listType: PropTypes.string,\r\n action: PropTypes.string,\r\n downloadUrl: PropTypes.string,\r\n thumbnailUrl: PropTypes.string,\r\n previewUrl: PropTypes.string,\r\n onSuccess: PropTypes.func,\r\n onError: PropTypes.func,\r\n onRemove: PropTypes.func,\r\n onPreview: PropTypes.func,\r\n maxFileSize: PropTypes.number,\r\n beforeUpload: PropTypes.func,\r\n maxNum: PropTypes.number,\r\n fileList: PropTypes.array,\r\n flag: PropTypes.number,\r\n useThumbnail: PropTypes.bool,\r\n crop: PropTypes.bool,\r\n};\r\nexport default VtxUpload;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["debouncedMessage","debounce","msg","message","error","initVPrev","type","name","url","downloadUrl","visible","initUrl","action","thumbnailUrl","rejectTypes","Dragger","Upload","VtxUpload","forwardRef","props","ref","isDragger","draggerConfig","accept","mode","viewMode","showUploadList","customizedButton","listType","onSuccess","onError","onRemove","maxFileSize","beforeUpload","maxNum","flag","crop","rest","useThumbnail","undefined","useState","fileList","setFileList","imageViewer","setImageViewer","imageList","setImageList","imageCt","setImageCt","useSetState","vPrev","setVPrev","joinToken","str","indexOf","replace","getToken","window","flsPrefix","useEffect","getSynFileList","Array","isArray","imagelist","map","file","push","Viewer","getConfig","token","config","headers","Authorization","onChange","info","response","result","errMsg","flt","pop","status","vtxId","data","length","id","newFileList","newFile","thumbUrl","filter","item","uid","afterFileList","limit","size","pointIndex","lastIndexOf","fileType","substring","includes","onDownload","downloadFile","fileName","onPreview","handlePreview","showRemoveIcon","showDownloadIcon","imageIndex","update","view","processedFileList","index","console","isSupportThumbnail","upload","fontSize","color","comp","img","maxWidth","maxHeight","marginTop","marginBottom","mainText","subText","display","ins","propTypes","PropTypes","bool","object","string","node","previewUrl","func","number","array"],"sources":["vtx-upload/index.jsx"],"sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\r\nimport useSetState from 'ahooks/es/useSetState';\r\nimport PropTypes from 'prop-types';\r\nimport Viewer from 'viewerjs';\r\nimport Upload from 'antd/lib/upload';\r\nimport Button from 'antd/lib/button';\r\nimport InboxOutlined from '@ant-design/icons/InboxOutlined';\r\nimport PlusOutlined from '@ant-design/icons/PlusOutlined';\r\nimport UploadOutlined from '@ant-design/icons/UploadOutlined';\r\nimport message from 'antd/lib/message';\r\nimport downloadFile from '@vtx/utils/lib/downloadFile';\r\nimport debounce from 'lodash.debounce';\r\nimport Prev from './FilePreview';\r\nimport getToken from '../_util/getToken';\r\nimport ImgCrop from 'antd-img-crop';\r\n\r\nconst debouncedMessage = debounce(msg => {\r\n message.error(msg);\r\n}, 500);\r\n\r\n//文件预览\r\nconst initVPrev = {\r\n type: '', //video or file\r\n name: '',\r\n url: '',\r\n downloadUrl: '',\r\n visible: false,\r\n};\r\n\r\nconst initUrl = {\r\n action: '/cloudFile/common/uploadFile',\r\n downloadUrl: '/cloudFile/common/downloadFile?id=',\r\n thumbnailUrl:\r\n '/vortex/rest/cloud/np/file/downloadFileThumbnail?outputQuality=0.5&scale=0.2&id=',\r\n //previewUrl: '/onlinePreview',\r\n};\r\n//禁止上传的文件类型\r\nconst rejectTypes = ['.asp', '.aspx', '.jsp', '.exe', '.cgi', '.asa', '.cer', '.cdx', '.hta'];\r\n\r\nconst Dragger = Upload.Dragger;\r\nconst VtxUpload = forwardRef((props, ref) => {\r\n const {\r\n isDragger = false, //是否拖拽模式\r\n draggerConfig = {}, //拖动配置\r\n accept, //接受上传的文件类型\r\n mode = 'multiple', //单文件模式or多文件模式\r\n viewMode, //是否查看模式(隐藏上传按钮)\r\n showUploadList, //是否展示文件列表\r\n customizedButton, //自定义上传文字描述\r\n listType = 'text', //上传列表的样式\r\n onSuccess, //上传成功\r\n onError, //上传失败\r\n onRemove, //删除\r\n maxFileSize = 5 * 1024 * 1024, //文件大小限制,默认最大5M\r\n beforeUpload, //上传前回调\r\n maxNum, //最多上传的文件数量\r\n flag, //同步数据标记\r\n crop, //是否打开裁剪\r\n ...rest\r\n } = props;\r\n // 是否使用缩略图\r\n const useThumbnail =\r\n (props.useThumbnail === undefined ? true : props.useThumbnail) &&\r\n (listType == 'picture' || listType == 'picture-card');\r\n\r\n const [fileList, setFileList] = useState([]); //初始化文件列表\r\n const [imageViewer, setImageViewer] = useState(null); //图片预览\r\n const [imageList, setImageList] = useState([]);\r\n const [imageCt, setImageCt] = useState(null);\r\n const [vPrev, setVPrev] = useSetState(initVPrev); //文件预览相关\r\n\r\n // 参数中拼接token\r\n function joinToken(str) {\r\n if (str.indexOf('token=') === -1 && str.indexOf('?') > -1) {\r\n return str.replace('?', `?token=${getToken() || ''}&`);\r\n } else if (str.indexOf('?') === -1) {\r\n return str + `?token=${getToken() || ''}`;\r\n }\r\n return str;\r\n }\r\n\r\n const url = {\r\n action: props.action || initUrl.action,\r\n downloadUrl: joinToken(props.downloadUrl || initUrl.downloadUrl),\r\n thumbnailUrl: joinToken(\r\n window?.flsPrefix\r\n ? `${window.flsPrefix}${initUrl.thumbnailUrl}`\r\n : `${props.thumbnailUrl || initUrl.thumbnailUrl}`,\r\n ),\r\n //previewUrl: props.previewUrl || initUrl.previewUrl,\r\n };\r\n const { action, downloadUrl, thumbnailUrl } = url;\r\n\r\n useEffect(() => {\r\n setFileList(getSynFileList(props) || []);\r\n }, [flag]);\r\n\r\n useEffect(() => {\r\n if (Array.isArray(fileList)) {\r\n // 只有图片的才可以预览,这边需要判断是否是图片\r\n const imagelist = [];\r\n // 只能通过后缀来判断\r\n fileList.map(file => {\r\n if (file.type?.indexOf('image') > -1) {\r\n imagelist.push(file);\r\n }\r\n });\r\n setImageList(imagelist);\r\n }\r\n }, [fileList]);\r\n\r\n useEffect(() => {\r\n if (imageCt) {\r\n setImageViewer(new Viewer(imageCt, {}));\r\n }\r\n }, [imageCt]);\r\n\r\n const getConfig = () => {\r\n let token = getToken() || '';\r\n let config = {\r\n ...rest,\r\n accept,\r\n action,\r\n fileList: fileList,\r\n listType,\r\n showUploadList,\r\n headers: {\r\n Authorization: token ? `Bearer ${token}` : '',\r\n ...rest.headers,\r\n },\r\n onChange(info) {\r\n setFileList(info.fileList);\r\n if (info.file.response && info.file.response.result === 1) {\r\n message.error(info.file.response.errMsg || '上传失败!');\r\n let flt = [...fileList];\r\n flt.pop();\r\n setFileList(flt);\r\n return;\r\n }\r\n // 此处根据后台返回的数据结构取得文件ID\r\n if (info.file.status !== 'uploading' && info.file.status !== 'removed') {\r\n let vtxId =\r\n info.file.response &&\r\n Array.isArray(info.file.response.data) &&\r\n info.file.response.data.length > 0\r\n ? info.file.response.data[0].id\r\n : undefined;\r\n let newFileList = info.fileList;\r\n let newFile = vtxId\r\n ? {\r\n ...info.file,\r\n id: vtxId,\r\n url: downloadUrl + vtxId,\r\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\r\n }\r\n : {\r\n ...info.file,\r\n };\r\n newFileList = info.fileList\r\n .filter(item => {\r\n // 有vtxId代表上传成功,有item.id代表之前上传成功的\r\n if (vtxId || item.id) return true;\r\n return false;\r\n })\r\n .map(item => {\r\n if (item.uid == info.file.uid) {\r\n return {\r\n ...item,\r\n id: vtxId,\r\n url: downloadUrl + vtxId,\r\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\r\n };\r\n }\r\n return item;\r\n });\r\n\r\n if (mode == 'single') {\r\n setFileList([newFile]);\r\n } else {\r\n setFileList(newFileList);\r\n }\r\n // 更新组件状态\r\n // if (mode == 'single' && info.file.status === 'done') {\r\n // setFileList([newFile]);\r\n // } else {\r\n // setFileList(newFileList);\r\n // }\r\n\r\n // 触发外部方法\r\n if (info.file.status === 'done') {\r\n if (typeof onSuccess == 'function') {\r\n onSuccess(newFile);\r\n }\r\n } else if (info.file.status === 'error') {\r\n if (typeof onError == 'function') {\r\n onError(info.file);\r\n }\r\n }\r\n }\r\n },\r\n onRemove(file) {\r\n if (typeof onRemove == 'function') {\r\n return onRemove(file);\r\n }\r\n },\r\n beforeUpload(file, afterFileList) {\r\n //限制文件大小\r\n if (maxFileSize && typeof maxFileSize === 'number') {\r\n const limit = file.size < maxFileSize;\r\n if (!limit) {\r\n message.error(`请上传${maxFileSize / 1024 / 1024}M以内的文件`);\r\n return false;\r\n }\r\n }\r\n //限制不允许上传的文件类型(通过文件名后缀)\r\n let pointIndex = file.name ? file.name.lastIndexOf('.') : -1;\r\n if (pointIndex > -1) {\r\n let fileType = file.name.substring(pointIndex);\r\n if (rejectTypes.includes(fileType)) {\r\n message.error('不支持该文件类型');\r\n return false;\r\n }\r\n }\r\n // 多选限制文件数量\r\n if (typeof maxNum === 'number' && afterFileList.length + fileList.length > maxNum) {\r\n // 减少提示错误次数, 思路,防抖 这边有个问题 就是防抖的这个方法 return fasle 不上传\r\n debouncedMessage(`最多上传${maxNum}个`);\r\n return false;\r\n }\r\n\r\n if (typeof beforeUpload === 'function') {\r\n return beforeUpload(file, afterFileList);\r\n }\r\n return true;\r\n },\r\n onDownload: file=>{\r\n downloadFile(\r\n file.url,\r\n { fileName: file.name },\r\n 'blob',\r\n );\r\n }\r\n };\r\n\r\n if (props.onPreview && typeof props.onPreview === 'function') {\r\n config.onPreview = props.onPreview;\r\n } else {\r\n config.onPreview = file => {\r\n if (!file.type) {\r\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\r\n } else if (file.type?.indexOf('image') > -1) {\r\n handlePreview(file);\r\n } else if (file.type?.indexOf('video') > -1) {\r\n // 视频\r\n setVPrev({\r\n type: 'video',\r\n name: file.name || '视频预览',\r\n url: downloadUrl + file.id,\r\n downloadUrl: downloadUrl + file.id,\r\n visible: true,\r\n });\r\n } else {\r\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\r\n }\r\n\r\n // TODO 暂无好的文件预览服务,等后续完善,只提供下载\r\n // else if (\r\n // file.type == 'application/PDF' ||\r\n // file.type == 'application/vnd.ms-excel' ||\r\n // file.type ==\r\n // 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ||\r\n // file.type == 'application/msword' ||\r\n // file.type ==\r\n // 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\r\n // ) {\r\n // let url = '';\r\n // if (props.previewUrl) {\r\n // url = `${props.previewUrl}?id=${file.id}&fileName=${file.name}`;\r\n // } else {\r\n // url = `http://183.215.89.162:8012/onlinePreview?url=http://183.136.177.108:8003/cloudFile/common/downloadFile${encodeURIComponent(\r\n // '?id=' + file.id + '&fullfilename=' + file.name.replace(/\\s*/g, ''),\r\n // )}`;\r\n // }\r\n\r\n // setVPrev({\r\n // type: 'file',\r\n // name: file.name || '文件预览',\r\n // url: url,\r\n // downloadUrl: downloadUrl + file.id,\r\n // visible: true,\r\n // });\r\n // }\r\n };\r\n }\r\n\r\n // viewMode\r\n if (viewMode) {\r\n config.showUploadList = { showRemoveIcon: false, showDownloadIcon: true };\r\n }\r\n\r\n return config;\r\n };\r\n\r\n const handlePreview = file => {\r\n const imageIndex = imageList.map(item => item.id).indexOf(file.id);\r\n if (imageIndex == -1) return;\r\n imageViewer.update();\r\n imageViewer.view(imageIndex);\r\n };\r\n\r\n const getSynFileList = props => {\r\n let processedFileList = props.fileList || [];\r\n // 单文件模式只取第一个\r\n if (props.mode == 'single' && processedFileList.length > 1) {\r\n processedFileList = [processedFileList[0]];\r\n }\r\n processedFileList = processedFileList.map((item, index) => {\r\n // 将外部传入的简易文件数组处理成为组件需要的数组结构\r\n if (item.name === undefined || item.id === undefined) {\r\n // eslint-disable-next-line no-console\r\n console.error('文件列表的name和id属性不能为空');\r\n }\r\n let url = item.url || downloadUrl + item.id,\r\n thumbUrl = useThumbnail ? item.thumbUrl || thumbnailUrl + item.id : undefined;\r\n if(!isSupportThumbnail(item.type)){\r\n thumbUrl = url;\r\n }\r\n return {\r\n ...item,\r\n uid: -1 - index,\r\n status: 'done',\r\n url,\r\n thumbUrl,\r\n };\r\n });\r\n return processedFileList;\r\n };\r\n\r\n const upload = (\r\n <Upload {...getConfig()} ref={ref}>\r\n {viewMode || fileList.length >= maxNum\r\n ? null\r\n : customizedButton ||\r\n (listType == 'picture-card' ? (\r\n <div>\r\n <PlusOutlined style={{ fontSize: '28px', color: '#999' }} />\r\n <div className=\"ant-upload-text\">上传</div>\r\n </div>\r\n ) : (\r\n <Button>\r\n <UploadOutlined />\r\n 上传\r\n </Button>\r\n ))}\r\n </Upload>\r\n )\r\n const comp = (listType == 'picture-card'&&!!crop)?\r\n <ImgCrop rotationSlider>\r\n {upload}\r\n </ImgCrop>\r\n :upload;\r\n \r\n return (\r\n <>\r\n {isDragger ? (\r\n <Dragger {...getConfig()} ref={ref}>\r\n {draggerConfig?.img ? (\r\n <img\r\n src={draggerConfig.img}\r\n alt=\"\"\r\n style={{\r\n maxWidth: 100,\r\n maxHeight: 100,\r\n marginTop: '3%',\r\n marginBottom: '5%',\r\n }}\r\n />\r\n ) : (\r\n <p className=\"ant-upload-drag-icon\">\r\n <InboxOutlined />\r\n </p>\r\n )}\r\n <p className=\"ant-upload-text\">{draggerConfig?.mainText || '点击或拖拽上传'}</p>\r\n <p className=\"ant-upload-hint\">\r\n {draggerConfig?.subText || '支持上传word,excel,png...'}\r\n </p>\r\n </Dragger>\r\n ) : (\r\n comp\r\n )}\r\n <div style={{ display: 'none' }}>\r\n <ul\r\n ref={ins => {\r\n if (ins) setImageCt(ins);\r\n }}\r\n >\r\n {imageList\r\n .filter(item => item.type && item.type?.indexOf('image') > -1)\r\n .map((item, index) => (\r\n <li key={item.uid}>\r\n <img\r\n src={item.url || downloadUrl + item.id}\r\n alt={item.name || `picture-${index + 1}`}\r\n />\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n {/* 视频预览 */}\r\n <Prev onCancel={() => setVPrev(initVPrev)} {...vPrev} />\r\n </>\r\n );\r\n});\r\n\r\nVtxUpload.propTypes = {\r\n isDragger: PropTypes.bool,\r\n draggerConfig: PropTypes.object,\r\n accept: PropTypes.string,\r\n mode: PropTypes.string,\r\n viewMode: PropTypes.bool,\r\n showUploadList: PropTypes.bool | PropTypes.object,\r\n customizedButton: PropTypes.node,\r\n listType: PropTypes.string,\r\n action: PropTypes.string,\r\n downloadUrl: PropTypes.string,\r\n thumbnailUrl: PropTypes.string,\r\n previewUrl: PropTypes.string,\r\n onSuccess: PropTypes.func,\r\n onError: PropTypes.func,\r\n onRemove: PropTypes.func,\r\n onPreview: PropTypes.func,\r\n maxFileSize: PropTypes.number,\r\n beforeUpload: PropTypes.func,\r\n maxNum: PropTypes.number,\r\n fileList: PropTypes.array,\r\n flag: PropTypes.number,\r\n useThumbnail: PropTypes.bool,\r\n crop: PropTypes.bool,\r\n};\r\nexport default VtxUpload;\r\n\r\nfunction isSupportThumbnail(type){\r\n if(['image/webp'].includes(type)){\r\n return false;\r\n }\r\n return true;\r\n}"],"mappings":"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"}
|
|
@@ -372,9 +372,7 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
372
372
|
e.stopPropagation();
|
|
373
373
|
t.clear();
|
|
374
374
|
}
|
|
375
|
-
})],
|
|
376
|
-
className: "".concat(prefixCls, "-placeholder")
|
|
377
|
-
}, t.props.placeholder), /*#__PURE__*/_react["default"].createElement(_input["default"], {
|
|
375
|
+
})], /*#__PURE__*/_react["default"].createElement(_input["default"], {
|
|
378
376
|
ref: function ref(_ref3) {
|
|
379
377
|
if (_ref3 && !t.state.inputRef) {
|
|
380
378
|
t.setState({
|
|
@@ -398,6 +396,7 @@ var VtxZtreeSelect = /*#__PURE__*/function (_React$Component) {
|
|
|
398
396
|
focusMultiple: false
|
|
399
397
|
});
|
|
400
398
|
},
|
|
399
|
+
placeholder: t.props.placeholder,
|
|
401
400
|
style: {
|
|
402
401
|
width: 'fit-content',
|
|
403
402
|
border: 'none',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","popWidth","searchValue","inputRef","keyNodesMapping","getKeyNodesMapping","TextEnum","alreadyChooseText","clearChoosedOptionsText","emptyDescriptionText","customEnumText","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","setState","fuzzySearch","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","popoverProps","allowClear","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","ref","clientWidth","height","e","stopPropagation","clearKey","slice","clear","focusMultiple","placeholder","target","trim","width","border","padding","outline","boxShadow","marginBottom","Empty","PRESENTED_IMAGE_SIMPLE","SingleSelect","focusSingle","join","marginRight","bind","v","focus","cursor","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func","object"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport Popover from 'antd/lib/popover';\r\nimport Input from 'antd/lib/input';\r\nimport Tag from 'antd/lib/tag';\r\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\r\nimport DownOutlined from '@ant-design/icons/DownOutlined';\r\nimport isEqual from 'lodash.isequal';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport Ztree from '../vtx-ztree';\r\nimport { MoreOutlined } from '@ant-design/icons';\r\nimport Button from 'antd/lib/button';\r\nimport Empty from 'antd/lib/empty';\r\n\r\nexport default class VtxZtreeSelect extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.tree = null;\r\n this.treeRefreshFlag = 1;\r\n this.state = {\r\n popoverVisible: false,\r\n popWidth: 0,\r\n searchValue: '',\r\n inputRef: null,\r\n };\r\n this.keyNodesMapping = {};\r\n this.getKeyNodesMapping();\r\n this.TextEnum = {\r\n alreadyChooseText: '已选择',\r\n clearChoosedOptionsText: '清空已选项',\r\n emptyDescriptionText: '暂无数据',\r\n\r\n ...(props.customEnumText||{})\r\n }\r\n }\r\n\r\n // UNSAFE_componentWillReceiveProps(nextProps) {\r\n // if (!isEqual(this.props.data, nextProps.data)) {\r\n // this.getKeyNodesMapping(nextProps.data);\r\n // }\r\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\r\n // this.treeRefreshFlag++;\r\n // }\r\n // }\r\n\r\n // 替换componentWillReceiveProps\r\n componentDidUpdate(prevProps) {\r\n if (!isEqual(this.props.data, prevProps.data)) {\r\n this.getKeyNodesMapping(this.props.data);\r\n }\r\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\r\n this.treeRefreshFlag++;\r\n }\r\n }\r\n\r\n getKeyNodesMapping(nodes) {\r\n const t = this;\r\n t.keyNodesMapping = {};\r\n (function genNodes(nodes) {\r\n nodes.map(item => {\r\n const { children, ...rest } = item;\r\n t.keyNodesMapping[item.key] = rest;\r\n if (Array.isArray(children) && children.length > 0) {\r\n genNodes(children);\r\n }\r\n });\r\n })(nodes || this.props.data || []);\r\n }\r\n\r\n clear() {\r\n if (this.tree) {\r\n if (this.props.treeCheckable) {\r\n this.tree.checkNodes(\r\n this.tree.getCheckedNodes().map(item => item.key),\r\n false,\r\n );\r\n } else {\r\n this.tree.cancelSelectedNodes(this.props.value);\r\n }\r\n }\r\n this.props.onChange &&\r\n this.props.onChange({\r\n nodes: [],\r\n keys: [],\r\n leafKeys: [],\r\n names: [],\r\n });\r\n\r\n if (this.tree) {\r\n this.setState({ searchValue: '' });\r\n this.tree?.fuzzySearch('');\r\n }\r\n }\r\n\r\n clearKey(key) {\r\n const keyIndex = this.props.value.indexOf(key);\r\n if (keyIndex != -1) {\r\n const keyList = [...this.props.value];\r\n keyList.splice(keyIndex, 1);\r\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\r\n if (this.tree) {\r\n if (this.props.treeCheckable) {\r\n this.tree.checkNodes([key], false);\r\n } else {\r\n this.tree.cancelSelectedNodes([key]);\r\n }\r\n }\r\n this.props.onChange &&\r\n this.props.onChange({\r\n nodes,\r\n keys: keyList,\r\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\r\n names: nodes.map(item => item.name),\r\n });\r\n }\r\n }\r\n\r\n clearSearch() {\r\n this.tree && this.tree.clearSearch();\r\n }\r\n\r\n render() {\r\n const t = this;\r\n // 必填参数\r\n const { data, value } = t.props;\r\n // 可配参数\r\n const {\r\n prefixCls = 'vtx-ztree-select',\r\n treeCheckable = false,\r\n treeDefaultExpandAll = false,\r\n multiple = false,\r\n showSearch = true,\r\n searchPlaceholder,\r\n dropdownStyle = {},\r\n style = {},\r\n disabled = false,\r\n refreshFlag = null,\r\n expandedKeys,\r\n customCfg,\r\n checkStrictly,\r\n popoverProps = {},\r\n allowClear = true,\r\n } = t.props;\r\n // eslint-disable-next-line camelcase\r\n const value_arr = (function (val) {\r\n if (Array.isArray(val)) {\r\n return val;\r\n } else if (val) {\r\n return [val];\r\n } else {\r\n return [];\r\n }\r\n })(value);\r\n const selectedNodes = value_arr\r\n .filter(k => k in t.keyNodesMapping)\r\n .map(item => ({\r\n id: item,\r\n name: t.keyNodesMapping[item].name,\r\n }));\r\n // ztree配置\r\n const treeProps = {\r\n data, // 树的数据\r\n // showSearch: showSearch,\r\n showSearch: false,\r\n searchPlaceholder: searchPlaceholder,\r\n multiple,\r\n checkable: treeCheckable,\r\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\r\n defaultExpandAll: treeDefaultExpandAll,\r\n expandedKeys: expandedKeys ? expandedKeys : data?.[0]?.key || '-1',\r\n refreshFlag: refreshFlag || t.treeRefreshFlag,\r\n customCfg,\r\n checkStrictly,\r\n ref(instance) {\r\n if (instance) t.tree = instance;\r\n },\r\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\r\n // console.log(selectedNodes,selectedKeys,selectedNames)\r\n if (!treeCheckable) {\r\n t.props.onChange &&\r\n t.props.onChange({\r\n nodes: selectedNodes,\r\n keys: selectedKeys,\r\n leafKeys: selectedNodes\r\n .filter(item => item.isLeaf)\r\n .map(item => item.key),\r\n names: selectedNames,\r\n });\r\n if (!multiple) {\r\n t.setState({\r\n popoverVisible: false,\r\n searchValue: ''\r\n });\r\n t.tree?.fuzzySearch('');\r\n }\r\n }\r\n },\r\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\r\n if (treeCheckable) {\r\n t.props.onChange &&\r\n t.props.onChange({\r\n nodes: checkedNodes,\r\n keys: checkedKeys,\r\n leafKeys: checkedNodes\r\n .filter(item => item.isLeaf)\r\n .map(item => item.key),\r\n names: checkedNames,\r\n });\r\n }\r\n },\r\n beforeCheck(treeNode) {\r\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\r\n },\r\n };\r\n\r\n // 多选组件\r\n const MultiSelect = (\r\n <div\r\n className={classnames(`${prefixCls}-multiple-box`)}\r\n style={style}\r\n ref={ref => {\r\n if (!t.state.popWidth && ref?.clientWidth) {\r\n t.setState({ popWidth: ref?.clientWidth })\r\n }\r\n }}\r\n >\r\n <div\r\n className={classnames('ant-input', `${prefixCls}-multiple`, {\r\n [`${prefixCls}-multiple-disabled`]: disabled,\r\n })}\r\n style={{ height: '32px', ...style }}\r\n >\r\n <div className={classnames(`${prefixCls}-multiple-content`)}>\r\n {selectedNodes.length > 0 && (\r\n [\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={item.id}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n t.clearKey(item.id);\r\n }}\r\n >\r\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\r\n </Tag>\r\n )),\r\n (disabled || !allowClear) ? null : (\r\n <CloseCircleFilled\r\n key={'icon'}\r\n className={`${prefixCls}-multiple-close-icon`}\r\n onClick={e => {\r\n e.stopPropagation();\r\n t.clear();\r\n }}\r\n />\r\n ),\r\n ]\r\n )}\r\n\r\n {\r\n selectedNodes.length == 0 && !t.state.focusMultiple && !t.state.searchValue &&\r\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\r\n }\r\n\r\n <Input\r\n ref={ref => {\r\n if (ref && !t.state.inputRef) {\r\n t.setState({ inputRef: ref })\r\n }\r\n }}\r\n value={t.state.searchValue}\r\n onChange={e => {\r\n if (t.tree) {\r\n t.setState({ searchValue: e.target.value });\r\n t.tree?.fuzzySearch(e.target.value.trim());\r\n }\r\n }}\r\n onBlur={() => {\r\n t.setState({ focusMultiple: false });\r\n }}\r\n style={{ width: 'fit-content', border: 'none', padding: 0, outline: 'none', boxShadow: 'none' }}\r\n />\r\n </div>\r\n </div>\r\n <Popover\r\n content={\r\n <>\r\n <div className={classnames('vtx-tree-count-head')}>\r\n <span>{this.TextEnum.alreadyChooseText}:{selectedNodes.length}</span>\r\n <span\r\n className={classnames((selectedNodes.length > 0 && !disabled) ? 'clear-count' : 'disabled-count')}\r\n onClick={e => {\r\n if (!disabled) {\r\n e.stopPropagation();\r\n t.clear();\r\n }\r\n }}\r\n >{this.TextEnum.clearChoosedOptionsText}</span>\r\n </div>\r\n {\r\n selectedNodes.length > 0 ?\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={`tab-${item.id}`}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n t.clearKey(item.id);\r\n }}\r\n style={{ marginBottom: '5px' }}\r\n >\r\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\r\n </Tag>\r\n )) :\r\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description={this.TextEnum.emptyDescriptionText}/>\r\n }\r\n </>\r\n }\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ width: t.state.popWidth }}\r\n >\r\n <Button\r\n className=\"vtx-tree-count\"\r\n icon={<MoreOutlined />}\r\n size='default'\r\n onClick={e => {\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Popover>\r\n </div>\r\n );\r\n\r\n // 单选组件\r\n const SingleSelect = (\r\n <Input\r\n value={\r\n t.state.focusSingle ? t.state.searchValue :\r\n (t.state.searchValue || selectedNodes.map(item => item.name).join(', '))\r\n }\r\n style={style}\r\n // readOnly\r\n disabled={disabled}\r\n placeholder={t.props.placeholder}\r\n suffix={\r\n (disabled || selectedNodes.length == 0 || !allowClear) ? (\r\n <DownOutlined className={`${prefixCls}-arrow-icon`} />\r\n ) : (\r\n <>\r\n <DownOutlined className={`${prefixCls}-arrow2-icon`} style={{ marginRight: '0px' }} />\r\n <CloseCircleFilled\r\n className={`${prefixCls}-close-icon`}\r\n onClick={t.clear.bind(t)}\r\n />\r\n </>\r\n )\r\n }\r\n onFocus={() => {\r\n t.setState({ focusSingle: true });\r\n }}\r\n onBlur={() => {\r\n t.setState({ focusSingle: false });\r\n }}\r\n onChange={e => {\r\n if (t.tree) {\r\n t.setState({ searchValue: e.target.value });\r\n t.tree?.fuzzySearch(e.target.value.trim());\r\n }\r\n }}\r\n />\r\n );\r\n\r\n return (\r\n <div className={prefixCls}>\r\n {disabled ? (\r\n multiple || treeCheckable ? (\r\n MultiSelect\r\n ) : (\r\n SingleSelect\r\n )\r\n ) : (\r\n <Popover\r\n placement=\"bottomLeft\"\r\n {...popoverProps}\r\n content={\r\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\r\n <Ztree {...treeProps} />\r\n </div>\r\n }\r\n trigger=\"click\"\r\n onVisibleChange={v => {\r\n if (v && (multiple || treeCheckable) && t.state.inputRef) {\r\n t.state.inputRef.focus({\r\n cursor: 'end',\r\n });\r\n }\r\n t.setState({ popoverVisible: v, focusMultiple: v });\r\n if (!v) {\r\n t.setState({\r\n searchValue: ''\r\n });\r\n t.tree?.fuzzySearch('');\r\n }\r\n }}\r\n visible={t.state.popoverVisible}\r\n >\r\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\r\n </Popover>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n\r\nVtxZtreeSelect.propTypes = {\r\n data: PropTypes.array,\r\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n treeCheckable: PropTypes.bool,\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\r\n onChange: PropTypes.func,\r\n popoverProps: PropTypes.object,\r\n allowClear: PropTypes.bool,\r\n customEnumText: PropTypes.object,\r\n};\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["VtxZtreeSelect","props","tree","treeRefreshFlag","state","popoverVisible","popWidth","searchValue","inputRef","keyNodesMapping","getKeyNodesMapping","TextEnum","alreadyChooseText","clearChoosedOptionsText","emptyDescriptionText","customEnumText","prevProps","isEqual","data","expandedKeys","nodes","t","genNodes","map","item","children","rest","key","Array","isArray","length","treeCheckable","checkNodes","getCheckedNodes","cancelSelectedNodes","value","onChange","keys","leafKeys","names","setState","fuzzySearch","keyIndex","indexOf","keyList","splice","filter","isLeaf","name","clearSearch","prefixCls","treeDefaultExpandAll","multiple","showSearch","searchPlaceholder","dropdownStyle","style","disabled","refreshFlag","customCfg","checkStrictly","popoverProps","allowClear","value_arr","val","selectedNodes","k","id","treeProps","checkable","instance","selectedKeys","selectedNames","checkedNodes","checkedKeys","checkedNames","treeNode","beforeCheck","MultiSelect","classnames","ref","clientWidth","height","e","stopPropagation","clearKey","slice","clear","target","trim","focusMultiple","placeholder","width","border","padding","outline","boxShadow","marginBottom","Empty","PRESENTED_IMAGE_SIMPLE","SingleSelect","focusSingle","join","marginRight","bind","v","focus","cursor","React","Component","propTypes","PropTypes","array","arrayOf","string","bool","oneOfType","func","object"],"sources":["vtx-ztree-select/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport Popover from 'antd/lib/popover';\r\nimport Input from 'antd/lib/input';\r\nimport Tag from 'antd/lib/tag';\r\nimport CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';\r\nimport DownOutlined from '@ant-design/icons/DownOutlined';\r\nimport isEqual from 'lodash.isequal';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport Ztree from '../vtx-ztree';\r\nimport { MoreOutlined } from '@ant-design/icons';\r\nimport Button from 'antd/lib/button';\r\nimport Empty from 'antd/lib/empty';\r\n\r\nexport default class VtxZtreeSelect extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.tree = null;\r\n this.treeRefreshFlag = 1;\r\n this.state = {\r\n popoverVisible: false,\r\n popWidth: 0,\r\n searchValue: '',\r\n inputRef: null,\r\n };\r\n this.keyNodesMapping = {};\r\n this.getKeyNodesMapping();\r\n this.TextEnum = {\r\n alreadyChooseText: '已选择',\r\n clearChoosedOptionsText: '清空已选项',\r\n emptyDescriptionText: '暂无数据',\r\n\r\n ...(props.customEnumText||{})\r\n }\r\n }\r\n\r\n // UNSAFE_componentWillReceiveProps(nextProps) {\r\n // if (!isEqual(this.props.data, nextProps.data)) {\r\n // this.getKeyNodesMapping(nextProps.data);\r\n // }\r\n // if (!isEqual(this.props.expandedKeys, nextProps.expandedKeys)) {\r\n // this.treeRefreshFlag++;\r\n // }\r\n // }\r\n\r\n // 替换componentWillReceiveProps\r\n componentDidUpdate(prevProps) {\r\n if (!isEqual(this.props.data, prevProps.data)) {\r\n this.getKeyNodesMapping(this.props.data);\r\n }\r\n if (!isEqual(this.props.expandedKeys, prevProps.expandedKeys)) {\r\n this.treeRefreshFlag++;\r\n }\r\n }\r\n\r\n getKeyNodesMapping(nodes) {\r\n const t = this;\r\n t.keyNodesMapping = {};\r\n (function genNodes(nodes) {\r\n nodes.map(item => {\r\n const { children, ...rest } = item;\r\n t.keyNodesMapping[item.key] = rest;\r\n if (Array.isArray(children) && children.length > 0) {\r\n genNodes(children);\r\n }\r\n });\r\n })(nodes || this.props.data || []);\r\n }\r\n\r\n clear() {\r\n if (this.tree) {\r\n if (this.props.treeCheckable) {\r\n this.tree.checkNodes(\r\n this.tree.getCheckedNodes().map(item => item.key),\r\n false,\r\n );\r\n } else {\r\n this.tree.cancelSelectedNodes(this.props.value);\r\n }\r\n }\r\n this.props.onChange &&\r\n this.props.onChange({\r\n nodes: [],\r\n keys: [],\r\n leafKeys: [],\r\n names: [],\r\n });\r\n\r\n if (this.tree) {\r\n this.setState({ searchValue: '' });\r\n this.tree?.fuzzySearch('');\r\n }\r\n }\r\n\r\n clearKey(key) {\r\n const keyIndex = this.props.value.indexOf(key);\r\n if (keyIndex != -1) {\r\n const keyList = [...this.props.value];\r\n keyList.splice(keyIndex, 1);\r\n const nodes = keyList.map(key => this.keyNodesMapping[key]);\r\n if (this.tree) {\r\n if (this.props.treeCheckable) {\r\n this.tree.checkNodes([key], false);\r\n } else {\r\n this.tree.cancelSelectedNodes([key]);\r\n }\r\n }\r\n this.props.onChange &&\r\n this.props.onChange({\r\n nodes,\r\n keys: keyList,\r\n leafKeys: nodes.filter(item => item.isLeaf).map(item => item.key),\r\n names: nodes.map(item => item.name),\r\n });\r\n }\r\n }\r\n\r\n clearSearch() {\r\n this.tree && this.tree.clearSearch();\r\n }\r\n\r\n render() {\r\n const t = this;\r\n // 必填参数\r\n const { data, value } = t.props;\r\n // 可配参数\r\n const {\r\n prefixCls = 'vtx-ztree-select',\r\n treeCheckable = false,\r\n treeDefaultExpandAll = false,\r\n multiple = false,\r\n showSearch = true,\r\n searchPlaceholder,\r\n dropdownStyle = {},\r\n style = {},\r\n disabled = false,\r\n refreshFlag = null,\r\n expandedKeys,\r\n customCfg,\r\n checkStrictly,\r\n popoverProps = {},\r\n allowClear = true,\r\n } = t.props;\r\n // eslint-disable-next-line camelcase\r\n const value_arr = (function (val) {\r\n if (Array.isArray(val)) {\r\n return val;\r\n } else if (val) {\r\n return [val];\r\n } else {\r\n return [];\r\n }\r\n })(value);\r\n const selectedNodes = value_arr\r\n .filter(k => k in t.keyNodesMapping)\r\n .map(item => ({\r\n id: item,\r\n name: t.keyNodesMapping[item].name,\r\n }));\r\n // ztree配置\r\n const treeProps = {\r\n data, // 树的数据\r\n // showSearch: showSearch,\r\n showSearch: false,\r\n searchPlaceholder: searchPlaceholder,\r\n multiple,\r\n checkable: treeCheckable,\r\n [treeCheckable ? 'checkedKeys' : 'selectedKeys']: value_arr,\r\n defaultExpandAll: treeDefaultExpandAll,\r\n expandedKeys: expandedKeys ? expandedKeys : data?.[0]?.key || '-1',\r\n refreshFlag: refreshFlag || t.treeRefreshFlag,\r\n customCfg,\r\n checkStrictly,\r\n ref(instance) {\r\n if (instance) t.tree = instance;\r\n },\r\n onClick({ selectedNodes, selectedKeys, selectedNames }) {\r\n // console.log(selectedNodes,selectedKeys,selectedNames)\r\n if (!treeCheckable) {\r\n t.props.onChange &&\r\n t.props.onChange({\r\n nodes: selectedNodes,\r\n keys: selectedKeys,\r\n leafKeys: selectedNodes\r\n .filter(item => item.isLeaf)\r\n .map(item => item.key),\r\n names: selectedNames,\r\n });\r\n if (!multiple) {\r\n t.setState({\r\n popoverVisible: false,\r\n searchValue: ''\r\n });\r\n t.tree?.fuzzySearch('');\r\n }\r\n }\r\n },\r\n onCheck({ checkedNodes, checkedKeys, checkedNames }) {\r\n if (treeCheckable) {\r\n t.props.onChange &&\r\n t.props.onChange({\r\n nodes: checkedNodes,\r\n keys: checkedKeys,\r\n leafKeys: checkedNodes\r\n .filter(item => item.isLeaf)\r\n .map(item => item.key),\r\n names: checkedNames,\r\n });\r\n }\r\n },\r\n beforeCheck(treeNode) {\r\n return t.props.beforeCheck ? t.props.beforeCheck(treeNode) : true;\r\n },\r\n };\r\n\r\n // 多选组件\r\n const MultiSelect = (\r\n <div\r\n className={classnames(`${prefixCls}-multiple-box`)}\r\n style={style}\r\n ref={ref => {\r\n if (!t.state.popWidth && ref?.clientWidth) {\r\n t.setState({ popWidth: ref?.clientWidth })\r\n }\r\n }}\r\n >\r\n <div\r\n className={classnames('ant-input', `${prefixCls}-multiple`, {\r\n [`${prefixCls}-multiple-disabled`]: disabled,\r\n })}\r\n style={{ height: '32px', ...style }}\r\n >\r\n <div className={classnames(`${prefixCls}-multiple-content`)}>\r\n {selectedNodes.length > 0 && (\r\n [\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={item.id}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n t.clearKey(item.id);\r\n }}\r\n >\r\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\r\n </Tag>\r\n )),\r\n (disabled || !allowClear) ? null : (\r\n <CloseCircleFilled\r\n key={'icon'}\r\n className={`${prefixCls}-multiple-close-icon`}\r\n onClick={e => {\r\n e.stopPropagation();\r\n t.clear();\r\n }}\r\n />\r\n ),\r\n ]\r\n )}\r\n\r\n {/* {\r\n selectedNodes.length == 0 && !t.state.focusMultiple && !t.state.searchValue &&\r\n <span className={`${prefixCls}-placeholder`}>{t.props.placeholder}</span>\r\n } */}\r\n\r\n <Input\r\n ref={ref => {\r\n if (ref && !t.state.inputRef) {\r\n t.setState({ inputRef: ref })\r\n }\r\n }}\r\n value={t.state.searchValue}\r\n onChange={e => {\r\n if (t.tree) {\r\n t.setState({ searchValue: e.target.value });\r\n t.tree?.fuzzySearch(e.target.value.trim());\r\n }\r\n }}\r\n onBlur={() => {\r\n t.setState({ focusMultiple: false });\r\n }}\r\n placeholder={t.props.placeholder}\r\n style={{ width: 'fit-content', border: 'none', padding: 0, outline: 'none', boxShadow: 'none' }}\r\n />\r\n </div>\r\n </div>\r\n <Popover\r\n content={\r\n <>\r\n <div className={classnames('vtx-tree-count-head')}>\r\n <span>{this.TextEnum.alreadyChooseText}:{selectedNodes.length}</span>\r\n <span\r\n className={classnames((selectedNodes.length > 0 && !disabled) ? 'clear-count' : 'disabled-count')}\r\n onClick={e => {\r\n if (!disabled) {\r\n e.stopPropagation();\r\n t.clear();\r\n }\r\n }}\r\n >{this.TextEnum.clearChoosedOptionsText}</span>\r\n </div>\r\n {\r\n selectedNodes.length > 0 ?\r\n selectedNodes.map(item => (\r\n <Tag\r\n key={`tab-${item.id}`}\r\n closable={!disabled}\r\n onClose={e => {\r\n e.stopPropagation();\r\n t.clearKey(item.id);\r\n }}\r\n style={{ marginBottom: '5px' }}\r\n >\r\n {item.name.length > 20 ? `${item.name.slice(0, 20)}...` : item.name}\r\n </Tag>\r\n )) :\r\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} description={this.TextEnum.emptyDescriptionText}/>\r\n }\r\n </>\r\n }\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ width: t.state.popWidth }}\r\n >\r\n <Button\r\n className=\"vtx-tree-count\"\r\n icon={<MoreOutlined />}\r\n size='default'\r\n onClick={e => {\r\n e.stopPropagation();\r\n }}\r\n />\r\n </Popover>\r\n </div>\r\n );\r\n\r\n // 单选组件\r\n const SingleSelect = (\r\n <Input\r\n value={\r\n t.state.focusSingle ? t.state.searchValue :\r\n (t.state.searchValue || selectedNodes.map(item => item.name).join(', '))\r\n }\r\n style={style}\r\n // readOnly\r\n disabled={disabled}\r\n placeholder={t.props.placeholder}\r\n suffix={\r\n (disabled || selectedNodes.length == 0 || !allowClear) ? (\r\n <DownOutlined className={`${prefixCls}-arrow-icon`} />\r\n ) : (\r\n <>\r\n <DownOutlined className={`${prefixCls}-arrow2-icon`} style={{ marginRight: '0px' }} />\r\n <CloseCircleFilled\r\n className={`${prefixCls}-close-icon`}\r\n onClick={t.clear.bind(t)}\r\n />\r\n </>\r\n )\r\n }\r\n onFocus={() => {\r\n t.setState({ focusSingle: true });\r\n }}\r\n onBlur={() => {\r\n t.setState({ focusSingle: false });\r\n }}\r\n onChange={e => {\r\n if (t.tree) {\r\n t.setState({ searchValue: e.target.value });\r\n t.tree?.fuzzySearch(e.target.value.trim());\r\n }\r\n }}\r\n />\r\n );\r\n\r\n return (\r\n <div className={prefixCls}>\r\n {disabled ? (\r\n multiple || treeCheckable ? (\r\n MultiSelect\r\n ) : (\r\n SingleSelect\r\n )\r\n ) : (\r\n <Popover\r\n placement=\"bottomLeft\"\r\n {...popoverProps}\r\n content={\r\n <div className={`${prefixCls}-popover`} style={dropdownStyle}>\r\n <Ztree {...treeProps} />\r\n </div>\r\n }\r\n trigger=\"click\"\r\n onVisibleChange={v => {\r\n if (v && (multiple || treeCheckable) && t.state.inputRef) {\r\n t.state.inputRef.focus({\r\n cursor: 'end',\r\n });\r\n }\r\n t.setState({ popoverVisible: v, focusMultiple: v });\r\n if (!v) {\r\n t.setState({\r\n searchValue: ''\r\n });\r\n t.tree?.fuzzySearch('');\r\n }\r\n }}\r\n visible={t.state.popoverVisible}\r\n >\r\n {multiple || treeCheckable ? MultiSelect : SingleSelect}\r\n </Popover>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n\r\nVtxZtreeSelect.propTypes = {\r\n data: PropTypes.array,\r\n expandedKeys: PropTypes.arrayOf(PropTypes.string),\r\n treeCheckable: PropTypes.bool,\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\r\n onChange: PropTypes.func,\r\n popoverProps: PropTypes.object,\r\n allowClear: PropTypes.bool,\r\n customEnumText: PropTypes.object,\r\n};\r\n"],"mappings":"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"}
|