@vtx/components 2.5.1 → 2.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,85 @@
1
+ ## [2.5.5](https://git.cloudhw.cn:3443/front-end/react-components/compare/2.5.4...2.5.5) (2021-12-28)
2
+
3
+
4
+ ### ✨ Features
5
+
6
+ * 数据表格下拉框VtxCombogrid查询参数支持自定义getFieldDecorator.options ([f583594](https://git.cloudhw.cn:3443/front-end/react-components/commit/f583594)) by: **gongjinhua**
7
+ * 表单布局VtxFormLayout内置骨架屏 ([6b4a1eb](https://git.cloudhw.cn:3443/front-end/react-components/commit/6b4a1eb)) by: **gongjinhua**
8
+
9
+
10
+ ### 🐛 Bug Fixes
11
+
12
+ * 修复VtxUpload上传组件当fileList内值无type类型时报错问题 ([02b975e](https://git.cloudhw.cn:3443/front-end/react-components/commit/02b975e)) by: **gongjinhua**
13
+
14
+
15
+ ### 📝 Documentation
16
+
17
+ * 报表容器VtxRpsFrame添加使用注意提醒 ([4690dd0](https://git.cloudhw.cn:3443/front-end/react-components/commit/4690dd0)) by: **gongjinhua**
18
+ * 文档版本号修改 ([f67e0eb](https://git.cloudhw.cn:3443/front-end/react-components/commit/f67e0eb)) by: **gongjinhua**
19
+ * 树选择VtxZtreeSelect添加父子节点选中状态不再关联示例 ([33082f4](https://git.cloudhw.cn:3443/front-end/react-components/commit/33082f4)) by: **gongjinhua**
20
+
21
+
22
+
23
+ ## [2.5.4](https://git.cloudhw.cn:3443/front-end/react-components/compare/2.5.3...2.5.4) (2021-12-20)
24
+
25
+
26
+ ### ✨ Features
27
+
28
+ * 上传超过限制数提示信息添加防抖 ([01e4bf0](https://git.cloudhw.cn:3443/front-end/react-components/commit/01e4bf0)) by: **gongjinhua**
29
+ * 查询布局展开设置悬浮pointer样式 ([0d9fb91](https://git.cloudhw.cn:3443/front-end/react-components/commit/0d9fb91)) by: **gongjinhua**
30
+
31
+
32
+ ### 🎫 Chores
33
+
34
+ * release v2.5.4 ([548c39d](https://git.cloudhw.cn:3443/front-end/react-components/commit/548c39d)) by: **gongjinhua**
35
+
36
+
37
+ ### 🐛 Bug Fixes
38
+
39
+ * 修复多选,上传文件多余限制数量问题,预览图片仅限图片类型 ([766d537](https://git.cloudhw.cn:3443/front-end/react-components/commit/766d537)) by: **xuzhengyun**
40
+
41
+
42
+ ### 📝 Documentation
43
+
44
+ * 报表容器VtxRpsFrame修改参数data_param类型为object|array ([64ecec4](https://git.cloudhw.cn:3443/front-end/react-components/commit/64ecec4)) by: **gongjinhua**
45
+ * 颜色选择器添加placement说明 ([25a957b](https://git.cloudhw.cn:3443/front-end/react-components/commit/25a957b)) by: **gongjinhua**
46
+
47
+
48
+
49
+ ## [2.5.3](https://git.cloudhw.cn:3443/front-end/react-components/compare/2.5.2...2.5.3) (2021-12-04)
50
+
51
+
52
+ ### ✨ Features
53
+
54
+ * http请求入参字段改为data ([107e45e](https://git.cloudhw.cn:3443/front-end/react-components/commit/107e45e)) by: **gongjinhua**
55
+ * 模态框VtxModal内容区域背景色默认为#ffffff ([bb328c6](https://git.cloudhw.cn:3443/front-end/react-components/commit/bb328c6)) by: **gongjinhua**
56
+
57
+
58
+ ### 🎫 Chores
59
+
60
+ * release v2.5.3 ([792f871](https://git.cloudhw.cn:3443/front-end/react-components/commit/792f871)) by: **gongjinhua**
61
+
62
+
63
+ ### 📝 Documentation
64
+
65
+ * 去除无效代码 ([b54db82](https://git.cloudhw.cn:3443/front-end/react-components/commit/b54db82)) by: **gongjinhua**
66
+
67
+
68
+
69
+ ## [2.5.2](https://git.cloudhw.cn:3443/front-end/react-components/compare/2.5.1...2.5.2) (2021-12-02)
70
+
71
+
72
+ ### 🎫 Chores
73
+
74
+ * release v2.5.2 ([33a8ea1](https://git.cloudhw.cn:3443/front-end/react-components/commit/33a8ea1)) by: **gongjinhua**
75
+
76
+
77
+ ### 🐛 Bug Fixes
78
+
79
+ * 修复VtxFormLayout表单布局Pane和Card高度问题 ([6776b9a](https://git.cloudhw.cn:3443/front-end/react-components/commit/6776b9a)) by: **gongjinhua**
80
+
81
+
82
+
1
83
  ## [2.5.1](https://git.cloudhw.cn:3443/front-end/react-components/compare/2.5.0...2.5.1) (2021-12-01)
2
84
 
3
85
 
@@ -9,6 +91,7 @@
9
91
 
10
92
  ### 🎫 Chores
11
93
 
94
+ * release v2.5.1 ([356977c](https://git.cloudhw.cn:3443/front-end/react-components/commit/356977c)) by: **gongjinhua**
12
95
  * 安装less-plugin-npm-import编译less [@import](https://git.cloudhw.cn:3443/import)导入npm文件 ([fd9aa70](https://git.cloudhw.cn:3443/front-end/react-components/commit/fd9aa70)) by: **gongjinhua**
13
96
 
14
97
 
@@ -99,6 +99,7 @@ function VtxCombogrid(props, ref) {
99
99
  startIndex: (current - 1) * pageSize + 1,
100
100
  size: 'small',
101
101
  headFootHeight: 95,
102
+ claerRowSelection: clearSelectedRow,
102
103
  pagination: _objectSpread(_objectSpread({}, pagination), {}, {
103
104
  showSizeChanger: false,
104
105
  onChange: function onChange() {
@@ -168,7 +169,9 @@ function VtxCombogrid(props, ref) {
168
169
  var renderFormItem = function renderFormItem(field) {
169
170
  var name = field.name,
170
171
  label = field.label,
171
- render = field.render;
172
+ render = field.render,
173
+ _field$fieldDecorator = field.fieldDecoratorOptions,
174
+ fieldDecoratorOptions = _field$fieldDecorator === void 0 ? {} : _field$fieldDecorator;
172
175
  return /*#__PURE__*/_react["default"].createElement(_col["default"], {
173
176
  span: 12,
174
177
  key: name
@@ -180,7 +183,7 @@ function VtxCombogrid(props, ref) {
180
183
  wrapperCol: {
181
184
  span: 16
182
185
  }
183
- }, getFieldDecorator(name)(render && render(form))));
186
+ }, getFieldDecorator(name, fieldDecoratorOptions)(render && render(form))));
184
187
  };
185
188
 
186
189
  return /*#__PURE__*/_react["default"].createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-combogrid/Combogrid.jsx"],"names":["VtxCombogrid","props","ref","more","setMore","prefixCls","setPopoverVisible","multiple","onChange","getTableData","columns","searchForms","form","selectedRowKeys","setSelectedRowKeys","spread","rest","getFieldDecorator","defaultPageSize","tableProps","search","submit","reset","pagination","current","pageSize","clearSelectedRow","newTableProps","startIndex","size","headFootHeight","showSizeChanger","onRow","record","onClick","rowSelection","selectedRows","query","length","clear","formLen","isMore","moreSearchForm","slice","renderFormItem","field","name","label","render","span","map","item","idx","Form","create","React","forwardRef","propTypes","PropTypes","string","func","isRequired","array","object","bool","defaultSelectedRowKeys"],"mappings":"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","sourcesContent":["import React, { useState, useImperativeHandle } from 'react';\nimport Form from 'antd/es/form';\nimport Row from 'antd/es/row';\nimport Col from 'antd/es/col';\nimport Button from 'antd/es/button';\nimport useAntdTable from 'ahooks/es/useAntdTable';\nimport PropTypes from 'prop-types';\nimport VtxDatagrid from '../vtx-datagrid';\n\nfunction VtxCombogrid(props, ref) {\n const [more, setMore] = useState(false);\n const {\n prefixCls,\n setPopoverVisible,\n multiple,\n onChange,\n getTableData,\n columns,\n searchForms = [],\n form,\n selectedRowKeys,\n setSelectedRowKeys,\n spread,\n ...rest\n } = props;\n const { getFieldDecorator } = form;\n\n const { tableProps, search } = useAntdTable(getTableData, {\n defaultPageSize: 10,\n form,\n });\n const { submit, reset } = search;\n\n // 表格\n const { pagination } = tableProps;\n const { current, pageSize } = pagination;\n\n const clearSelectedRow = () => {\n onChange && onChange([]);\n setSelectedRowKeys([]);\n };\n\n let newTableProps = {\n ...tableProps,\n columns,\n startIndex: (current - 1) * pageSize + 1,\n size: 'small',\n headFootHeight: 95,\n pagination: {\n ...pagination,\n showSizeChanger: false,\n onChange() {\n if (!spread) {\n clearSelectedRow();\n }\n },\n },\n onRow: record => {\n if (multiple) {\n return {};\n }\n return {\n onClick: () => {\n onChange && onChange([record]);\n setPopoverVisible(false);\n },\n };\n },\n };\n\n if (multiple) {\n newTableProps = {\n ...newTableProps,\n rowSelection: {\n selectedRowKeys,\n onChange(selectedRowKeys, selectedRows) {\n setSelectedRowKeys(selectedRowKeys);\n onChange && onChange(selectedRows);\n },\n },\n };\n }\n\n // 查询和清空会重置selectedRowKeys,因此也需清空文本中的value值\n const query = () => {\n submit();\n if (multiple && selectedRowKeys.length) {\n clearSelectedRow();\n }\n };\n const clear = () => {\n reset();\n if (multiple && selectedRowKeys.length) {\n clearSelectedRow();\n }\n };\n\n // 暴露给父组件使用\n useImperativeHandle(ref, () => ({\n clear,\n }));\n\n // 查询条件是否超过2个,超过2个默认隐藏\n const formLen = searchForms.length;\n const isMore = formLen > 2;\n let moreSearchForm = [];\n if (isMore) {\n moreSearchForm = searchForms.slice(2);\n }\n\n const renderFormItem = field => {\n const { name, label, render } = field;\n return (\n <Col span={12} key={name}>\n <Form.Item label={label} labelCol={{ span: 8 }} wrapperCol={{ span: 16 }}>\n {getFieldDecorator(name)(render && render(form))}\n </Form.Item>\n </Col>\n );\n };\n\n return (\n <div className={`${prefixCls}-popover`} ref={ref}>\n {formLen > 0 && (\n <Row gutter={8}>\n <Col span={18}>\n <Row>\n {searchForms.map((item, idx) => {\n if (idx < 2) {\n return renderFormItem(item);\n }\n })}\n </Row>\n {more && (\n <Row>\n {moreSearchForm.map(item => {\n return renderFormItem(item);\n })}\n </Row>\n )}\n </Col>\n <Col span={6} className={`${prefixCls}-btns`}>\n <Button onClick={query} type=\"primary\" size=\"small\">\n 查询\n </Button>\n <Button onClick={clear} size=\"small\">\n 清空\n </Button>\n {isMore && (\n <Button\n icon=\"more\"\n size=\"small\"\n title=\"更多\"\n onClick={() => setMore(!more)}\n />\n )}\n </Col>\n </Row>\n )}\n <div className={`${prefixCls}-main`}>\n <VtxDatagrid toolbar={false} {...newTableProps} {...rest} />\n </div>\n </div>\n );\n}\n\nexport default Form.create()(React.forwardRef(VtxCombogrid));\n\nVtxCombogrid.propTypes = {\n prefixCls: PropTypes.string,\n getTableData: PropTypes.func.isRequired,\n columns: PropTypes.array,\n searchForms: PropTypes.array,\n form: PropTypes.object,\n multiple: PropTypes.bool,\n onChange: PropTypes.func,\n setPopoverVisible: PropTypes.func,\n selectedRowKeys: PropTypes.array,\n setSelectedRowKeys: PropTypes.func,\n spread: PropTypes.bool,\n defaultSelectedRowKeys: PropTypes.array,\n};\n"],"file":"Combogrid.js"}
1
+ {"version":3,"sources":["vtx-combogrid/Combogrid.jsx"],"names":["VtxCombogrid","props","ref","more","setMore","prefixCls","setPopoverVisible","multiple","onChange","getTableData","columns","searchForms","form","selectedRowKeys","setSelectedRowKeys","spread","rest","getFieldDecorator","defaultPageSize","tableProps","search","submit","reset","pagination","current","pageSize","clearSelectedRow","newTableProps","startIndex","size","headFootHeight","claerRowSelection","showSizeChanger","onRow","record","onClick","rowSelection","selectedRows","query","length","clear","formLen","isMore","moreSearchForm","slice","renderFormItem","field","name","label","render","fieldDecoratorOptions","span","map","item","idx","Form","create","React","forwardRef","propTypes","PropTypes","string","func","isRequired","array","object","bool","defaultSelectedRowKeys"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASA,YAAT,CAAsBC,KAAtB,EAA6BC,GAA7B,EAAkC;AAAA,kBACN,qBAAS,KAAT,CADM;AAAA;AAAA,MACvBC,IADuB;AAAA,MACjBC,OADiB;;AAAA,MAG1BC,SAH0B,GAe1BJ,KAf0B,CAG1BI,SAH0B;AAAA,MAI1BC,iBAJ0B,GAe1BL,KAf0B,CAI1BK,iBAJ0B;AAAA,MAK1BC,QAL0B,GAe1BN,KAf0B,CAK1BM,QAL0B;AAAA,MAM1BC,SAN0B,GAe1BP,KAf0B,CAM1BO,QAN0B;AAAA,MAO1BC,YAP0B,GAe1BR,KAf0B,CAO1BQ,YAP0B;AAAA,MAQ1BC,OAR0B,GAe1BT,KAf0B,CAQ1BS,OAR0B;AAAA,2BAe1BT,KAf0B,CAS1BU,WAT0B;AAAA,MAS1BA,WAT0B,mCASZ,EATY;AAAA,MAU1BC,IAV0B,GAe1BX,KAf0B,CAU1BW,IAV0B;AAAA,MAW1BC,eAX0B,GAe1BZ,KAf0B,CAW1BY,eAX0B;AAAA,MAY1BC,kBAZ0B,GAe1Bb,KAf0B,CAY1Ba,kBAZ0B;AAAA,MAa1BC,MAb0B,GAe1Bd,KAf0B,CAa1Bc,MAb0B;AAAA,MAcvBC,IAduB,4BAe1Bf,KAf0B;;AAAA,MAgBtBgB,iBAhBsB,GAgBAL,IAhBA,CAgBtBK,iBAhBsB;;AAAA,sBAkBC,+BAAaR,YAAb,EAA2B;AACtDS,IAAAA,eAAe,EAAE,EADqC;AAEtDN,IAAAA,IAAI,EAAJA;AAFsD,GAA3B,CAlBD;AAAA,MAkBtBO,UAlBsB,iBAkBtBA,UAlBsB;AAAA,MAkBVC,MAlBU,iBAkBVA,MAlBU;;AAAA,MAsBtBC,MAtBsB,GAsBJD,MAtBI,CAsBtBC,MAtBsB;AAAA,MAsBdC,KAtBc,GAsBJF,MAtBI,CAsBdE,KAtBc,EAwB9B;;AAxB8B,MAyBtBC,UAzBsB,GAyBPJ,UAzBO,CAyBtBI,UAzBsB;AAAA,MA0BtBC,OA1BsB,GA0BAD,UA1BA,CA0BtBC,OA1BsB;AAAA,MA0BbC,QA1Ba,GA0BAF,UA1BA,CA0BbE,QA1Ba;;AA4B9B,MAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;AAC3BlB,IAAAA,SAAQ,IAAIA,SAAQ,CAAC,EAAD,CAApB;AACAM,IAAAA,kBAAkB,CAAC,EAAD,CAAlB;AACH,GAHD;;AAKA,MAAIa,aAAa,mCACVR,UADU;AAEbT,IAAAA,OAAO,EAAPA,OAFa;AAGbkB,IAAAA,UAAU,EAAE,CAACJ,OAAO,GAAG,CAAX,IAAgBC,QAAhB,GAA2B,CAH1B;AAIbI,IAAAA,IAAI,EAAE,OAJO;AAKbC,IAAAA,cAAc,EAAE,EALH;AAMbC,IAAAA,iBAAiB,EAAEL,gBANN;AAObH,IAAAA,UAAU,kCACHA,UADG;AAENS,MAAAA,eAAe,EAAE,KAFX;AAGNxB,MAAAA,QAHM,sBAGK;AACP,YAAI,CAACO,MAAL,EAAa;AACTW,UAAAA,gBAAgB;AACnB;AACJ;AAPK,MAPG;AAgBbO,IAAAA,KAAK,EAAE,eAAAC,MAAM,EAAI;AACb,UAAI3B,QAAJ,EAAc;AACV,eAAO,EAAP;AACH;;AACD,aAAO;AACH4B,QAAAA,OAAO,EAAE,mBAAM;AACX3B,UAAAA,SAAQ,IAAIA,SAAQ,CAAC,CAAC0B,MAAD,CAAD,CAApB;AACA5B,UAAAA,iBAAiB,CAAC,KAAD,CAAjB;AACH;AAJE,OAAP;AAMH;AA1BY,IAAjB;;AA6BA,MAAIC,QAAJ,EAAc;AACVoB,IAAAA,aAAa,mCACNA,aADM;AAETS,MAAAA,YAAY,EAAE;AACVvB,QAAAA,eAAe,EAAfA,eADU;AAEVL,QAAAA,QAFU,oBAEDK,eAFC,EAEgBwB,YAFhB,EAE8B;AACpCvB,UAAAA,kBAAkB,CAACD,eAAD,CAAlB;AACAL,UAAAA,SAAQ,IAAIA,SAAQ,CAAC6B,YAAD,CAApB;AACH;AALS;AAFL,MAAb;AAUH,GAzE6B,CA2E9B;;;AACA,MAAMC,KAAK,GAAG,SAARA,KAAQ,GAAM;AAChBjB,IAAAA,MAAM;;AACN,QAAId,QAAQ,IAAIM,eAAe,CAAC0B,MAAhC,EAAwC;AACpCb,MAAAA,gBAAgB;AACnB;AACJ,GALD;;AAMA,MAAMc,KAAK,GAAG,SAARA,KAAQ,GAAM;AAChBlB,IAAAA,KAAK;;AACL,QAAIf,QAAQ,IAAIM,eAAe,CAAC0B,MAAhC,EAAwC;AACpCb,MAAAA,gBAAgB;AACnB;AACJ,GALD,CAlF8B,CAyF9B;;;AACA,kCAAoBxB,GAApB,EAAyB;AAAA,WAAO;AAC5BsC,MAAAA,KAAK,EAALA;AAD4B,KAAP;AAAA,GAAzB,EA1F8B,CA8F9B;;AACA,MAAMC,OAAO,GAAG9B,WAAW,CAAC4B,MAA5B;AACA,MAAMG,MAAM,GAAGD,OAAO,GAAG,CAAzB;AACA,MAAIE,cAAc,GAAG,EAArB;;AACA,MAAID,MAAJ,EAAY;AACRC,IAAAA,cAAc,GAAGhC,WAAW,CAACiC,KAAZ,CAAkB,CAAlB,CAAjB;AACH;;AAED,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAAC,KAAK,EAAI;AAAA,QACpBC,IADoB,GACgCD,KADhC,CACpBC,IADoB;AAAA,QACdC,KADc,GACgCF,KADhC,CACdE,KADc;AAAA,QACPC,MADO,GACgCH,KADhC,CACPG,MADO;AAAA,gCACgCH,KADhC,CACCI,qBADD;AAAA,QACCA,qBADD,sCACyB,EADzB;AAE5B,wBACI,gCAAC,eAAD;AAAK,MAAA,IAAI,EAAE,EAAX;AAAe,MAAA,GAAG,EAAEH;AAApB,oBACI,gCAAC,gBAAD,CAAM,IAAN;AAAW,MAAA,KAAK,EAAEC,KAAlB;AAAyB,MAAA,QAAQ,EAAE;AAAEG,QAAAA,IAAI,EAAE;AAAR,OAAnC;AAAgD,MAAA,UAAU,EAAE;AAAEA,QAAAA,IAAI,EAAE;AAAR;AAA5D,OACKlC,iBAAiB,CAAC8B,IAAD,EAAOG,qBAAP,CAAjB,CAA+CD,MAAM,IAAIA,MAAM,CAACrC,IAAD,CAA/D,CADL,CADJ,CADJ;AAOH,GATD;;AAWA,sBACI;AAAK,IAAA,SAAS,YAAKP,SAAL,aAAd;AAAwC,IAAA,GAAG,EAAEH;AAA7C,KACKuC,OAAO,GAAG,CAAV,iBACG,gCAAC,eAAD;AAAK,IAAA,MAAM,EAAE;AAAb,kBACI,gCAAC,eAAD;AAAK,IAAA,IAAI,EAAE;AAAX,kBACI,gCAAC,eAAD,QACK9B,WAAW,CAACyC,GAAZ,CAAgB,UAACC,IAAD,EAAOC,GAAP,EAAe;AAC5B,QAAIA,GAAG,GAAG,CAAV,EAAa;AACT,aAAOT,cAAc,CAACQ,IAAD,CAArB;AACH;AACJ,GAJA,CADL,CADJ,EAQKlD,IAAI,iBACD,gCAAC,eAAD,QACKwC,cAAc,CAACS,GAAf,CAAmB,UAAAC,IAAI,EAAI;AACxB,WAAOR,cAAc,CAACQ,IAAD,CAArB;AACH,GAFA,CADL,CATR,CADJ,eAiBI,gCAAC,eAAD;AAAK,IAAA,IAAI,EAAE,CAAX;AAAc,IAAA,SAAS,YAAKhD,SAAL;AAAvB,kBACI,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAEiC,KAAjB;AAAwB,IAAA,IAAI,EAAC,SAA7B;AAAuC,IAAA,IAAI,EAAC;AAA5C,oBADJ,eAII,gCAAC,kBAAD;AAAQ,IAAA,OAAO,EAAEE,KAAjB;AAAwB,IAAA,IAAI,EAAC;AAA7B,oBAJJ,EAOKE,MAAM,iBACH,gCAAC,kBAAD;AACI,IAAA,IAAI,EAAC,MADT;AAEI,IAAA,IAAI,EAAC,OAFT;AAGI,IAAA,KAAK,EAAC,cAHV;AAII,IAAA,OAAO,EAAE;AAAA,aAAMtC,OAAO,CAAC,CAACD,IAAF,CAAb;AAAA;AAJb,IARR,CAjBJ,CAFR,eAqCI;AAAK,IAAA,SAAS,YAAKE,SAAL;AAAd,kBACI,gCAAC,uBAAD;AAAa,IAAA,OAAO,EAAE;AAAtB,KAAiCsB,aAAjC,EAAoDX,IAApD,EADJ,CArCJ,CADJ;AA2CH;;eAEcuC,iBAAKC,MAAL,iBAAcC,kBAAMC,UAAN,CAAiB1D,YAAjB,CAAd,C;;;AAEfA,YAAY,CAAC2D,SAAb,GAAyB;AACrBtD,EAAAA,SAAS,EAAEuD,sBAAUC,MADA;AAErBpD,EAAAA,YAAY,EAAEmD,sBAAUE,IAAV,CAAeC,UAFR;AAGrBrD,EAAAA,OAAO,EAAEkD,sBAAUI,KAHE;AAIrBrD,EAAAA,WAAW,EAAEiD,sBAAUI,KAJF;AAKrBpD,EAAAA,IAAI,EAAEgD,sBAAUK,MALK;AAMrB1D,EAAAA,QAAQ,EAAEqD,sBAAUM,IANC;AAOrB1D,EAAAA,QAAQ,EAAEoD,sBAAUE,IAPC;AAQrBxD,EAAAA,iBAAiB,EAAEsD,sBAAUE,IARR;AASrBjD,EAAAA,eAAe,EAAE+C,sBAAUI,KATN;AAUrBlD,EAAAA,kBAAkB,EAAE8C,sBAAUE,IAVT;AAWrB/C,EAAAA,MAAM,EAAE6C,sBAAUM,IAXG;AAYrBC,EAAAA,sBAAsB,EAAEP,sBAAUI;AAZb,CAAzB","sourcesContent":["import React, { useState, useImperativeHandle } from 'react';\nimport Form from 'antd/es/form';\nimport Row from 'antd/es/row';\nimport Col from 'antd/es/col';\nimport Button from 'antd/es/button';\nimport useAntdTable from 'ahooks/es/useAntdTable';\nimport PropTypes from 'prop-types';\nimport VtxDatagrid from '../vtx-datagrid';\n\nfunction VtxCombogrid(props, ref) {\n const [more, setMore] = useState(false);\n const {\n prefixCls,\n setPopoverVisible,\n multiple,\n onChange,\n getTableData,\n columns,\n searchForms = [],\n form,\n selectedRowKeys,\n setSelectedRowKeys,\n spread,\n ...rest\n } = props;\n const { getFieldDecorator } = form;\n\n const { tableProps, search } = useAntdTable(getTableData, {\n defaultPageSize: 10,\n form,\n });\n const { submit, reset } = search;\n\n // 表格\n const { pagination } = tableProps;\n const { current, pageSize } = pagination;\n\n const clearSelectedRow = () => {\n onChange && onChange([]);\n setSelectedRowKeys([]);\n };\n\n let newTableProps = {\n ...tableProps,\n columns,\n startIndex: (current - 1) * pageSize + 1,\n size: 'small',\n headFootHeight: 95,\n claerRowSelection: clearSelectedRow,\n pagination: {\n ...pagination,\n showSizeChanger: false,\n onChange() {\n if (!spread) {\n clearSelectedRow();\n }\n },\n },\n onRow: record => {\n if (multiple) {\n return {};\n }\n return {\n onClick: () => {\n onChange && onChange([record]);\n setPopoverVisible(false);\n },\n };\n },\n };\n\n if (multiple) {\n newTableProps = {\n ...newTableProps,\n rowSelection: {\n selectedRowKeys,\n onChange(selectedRowKeys, selectedRows) {\n setSelectedRowKeys(selectedRowKeys);\n onChange && onChange(selectedRows);\n },\n },\n };\n }\n\n // 查询和清空会重置selectedRowKeys,因此也需清空文本中的value值\n const query = () => {\n submit();\n if (multiple && selectedRowKeys.length) {\n clearSelectedRow();\n }\n };\n const clear = () => {\n reset();\n if (multiple && selectedRowKeys.length) {\n clearSelectedRow();\n }\n };\n\n // 暴露给父组件使用\n useImperativeHandle(ref, () => ({\n clear,\n }));\n\n // 查询条件是否超过2个,超过2个默认隐藏\n const formLen = searchForms.length;\n const isMore = formLen > 2;\n let moreSearchForm = [];\n if (isMore) {\n moreSearchForm = searchForms.slice(2);\n }\n\n const renderFormItem = field => {\n const { name, label, render, fieldDecoratorOptions = {} } = field;\n return (\n <Col span={12} key={name}>\n <Form.Item label={label} labelCol={{ span: 8 }} wrapperCol={{ span: 16 }}>\n {getFieldDecorator(name, fieldDecoratorOptions)(render && render(form))}\n </Form.Item>\n </Col>\n );\n };\n\n return (\n <div className={`${prefixCls}-popover`} ref={ref}>\n {formLen > 0 && (\n <Row gutter={8}>\n <Col span={18}>\n <Row>\n {searchForms.map((item, idx) => {\n if (idx < 2) {\n return renderFormItem(item);\n }\n })}\n </Row>\n {more && (\n <Row>\n {moreSearchForm.map(item => {\n return renderFormItem(item);\n })}\n </Row>\n )}\n </Col>\n <Col span={6} className={`${prefixCls}-btns`}>\n <Button onClick={query} type=\"primary\" size=\"small\">\n 查询\n </Button>\n <Button onClick={clear} size=\"small\">\n 清空\n </Button>\n {isMore && (\n <Button\n icon=\"more\"\n size=\"small\"\n title=\"更多\"\n onClick={() => setMore(!more)}\n />\n )}\n </Col>\n </Row>\n )}\n <div className={`${prefixCls}-main`}>\n <VtxDatagrid toolbar={false} {...newTableProps} {...rest} />\n </div>\n </div>\n );\n}\n\nexport default Form.create()(React.forwardRef(VtxCombogrid));\n\nVtxCombogrid.propTypes = {\n prefixCls: PropTypes.string,\n getTableData: PropTypes.func.isRequired,\n columns: PropTypes.array,\n searchForms: PropTypes.array,\n form: PropTypes.object,\n multiple: PropTypes.bool,\n onChange: PropTypes.func,\n setPopoverVisible: PropTypes.func,\n selectedRowKeys: PropTypes.array,\n setSelectedRowKeys: PropTypes.func,\n spread: PropTypes.bool,\n defaultSelectedRowKeys: PropTypes.array,\n};\n"],"file":"Combogrid.js"}
@@ -11,6 +11,10 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
13
 
14
+ var _lodash = _interopRequireDefault(require("lodash.merge"));
15
+
16
+ var _skeleton = _interopRequireDefault(require("antd/es/skeleton"));
17
+
14
18
  var _Row = _interopRequireDefault(require("./Row"));
15
19
 
16
20
  var _FormItem = _interopRequireDefault(require("./FormItem"));
@@ -33,13 +37,22 @@ function VtxFormLayout(props) {
33
37
  mode = props.mode,
34
38
  _props$layout = props.layout,
35
39
  layout = _props$layout === void 0 ? 'vertical' : _props$layout,
36
- card = props.card;
40
+ card = props.card,
41
+ skeleton = props.skeleton;
37
42
  var store = {
38
43
  cols: cols,
39
44
  labelColSpan: labelColSpan,
40
45
  mode: mode,
41
46
  layout: layout
42
47
  };
48
+ var defaultSkeleton = {
49
+ loading: false,
50
+ title: false,
51
+ paragraph: {
52
+ width: '100%',
53
+ rows: 4
54
+ }
55
+ };
43
56
  return /*#__PURE__*/_react["default"].createElement(_context.StoreCtx.Provider, {
44
57
  value: store
45
58
  }, /*#__PURE__*/_react["default"].createElement("div", {
@@ -48,7 +61,7 @@ function VtxFormLayout(props) {
48
61
  'vtx-form-layout-view': mode === 'view',
49
62
  'vtx-form-layout-has-card': card
50
63
  })
51
- }, props.children));
64
+ }, /*#__PURE__*/_react["default"].createElement(_skeleton["default"], (0, _lodash["default"])(defaultSkeleton, skeleton), props.children)));
52
65
  }
53
66
 
54
67
  VtxFormLayout.propTypes = {
@@ -57,7 +70,8 @@ VtxFormLayout.propTypes = {
57
70
  mode: _propTypes["default"].oneOf(['view']),
58
71
  layout: _propTypes["default"].oneOf(['horizontal', 'vertical']),
59
72
  children: _propTypes["default"].node,
60
- card: _propTypes["default"].bool
73
+ card: _propTypes["default"].bool,
74
+ skeleton: _propTypes["default"].object
61
75
  };
62
76
  VtxFormLayout.Row = _Row["default"];
63
77
  VtxFormLayout.FormItem = _FormItem["default"];
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-form-layout/index.jsx"],"names":["VtxFormLayout","props","cols","labelColSpan","mode","layout","card","store","children","propTypes","PropTypes","number","oneOf","node","bool","Row","FormItem","Card","Pane","Divider"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8B;AAAA,oBAC8CA,KAD9C,CAClBC,IADkB;AAAA,MAClBA,IADkB,4BACX,CADW;AAAA,4BAC8CD,KAD9C,CACRE,YADQ;AAAA,MACRA,YADQ,oCACO,CADP;AAAA,MACUC,IADV,GAC8CH,KAD9C,CACUG,IADV;AAAA,sBAC8CH,KAD9C,CACgBI,MADhB;AAAA,MACgBA,MADhB,8BACyB,UADzB;AAAA,MACqCC,IADrC,GAC8CL,KAD9C,CACqCK,IADrC;AAE1B,MAAMC,KAAK,GAAG;AACVL,IAAAA,IAAI,EAAJA,IADU;AAEVC,IAAAA,YAAY,EAAZA,YAFU;AAGVC,IAAAA,IAAI,EAAJA,IAHU;AAIVC,IAAAA,MAAM,EAANA;AAJU,GAAd;AAMA,sBACI,gCAAC,iBAAD,CAAU,QAAV;AAAmB,IAAA,KAAK,EAAEE;AAA1B,kBACI;AACI,IAAA,SAAS,EAAE,4BAAW,iBAAX,EAA8B;AACrC,kCAA4BF,MAAM,KAAK,UAAX,IAAyBD,IAAI,KAAK,MADzB;AAErC,8BAAwBA,IAAI,KAAK,MAFI;AAGrC,kCAA4BE;AAHS,KAA9B;AADf,KAOKL,KAAK,CAACO,QAPX,CADJ,CADJ;AAaH;;AAEDR,aAAa,CAACS,SAAd,GAA0B;AACtBP,EAAAA,IAAI,EAAEQ,sBAAUC,MADM;AAEtBR,EAAAA,YAAY,EAAEO,sBAAUC,MAFF;AAGtBP,EAAAA,IAAI,EAAEM,sBAAUE,KAAV,CAAgB,CAAC,MAAD,CAAhB,CAHgB;AAItBP,EAAAA,MAAM,EAAEK,sBAAUE,KAAV,CAAgB,CAAC,YAAD,EAAe,UAAf,CAAhB,CAJc;AAKtBJ,EAAAA,QAAQ,EAAEE,sBAAUG,IALE;AAMtBP,EAAAA,IAAI,EAAEI,sBAAUI;AANM,CAA1B;AASAd,aAAa,CAACe,GAAd,GAAoBA,eAApB;AACAf,aAAa,CAACgB,QAAd,GAAyBA,oBAAzB;AACAhB,aAAa,CAACiB,IAAd,GAAqBA,gBAArB;AACAjB,aAAa,CAACkB,IAAd,GAAqBA,gBAArB;AACAlB,aAAa,CAACmB,OAAd,GAAwBA,mBAAxB;eAEenB,a","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Row from './Row';\nimport FormItem from './FormItem';\nimport Card from './Card';\nimport Pane from './Pane';\nimport Divider from './Divider';\nimport { StoreCtx } from './context';\n\nfunction VtxFormLayout(props) {\n const { cols = 2, labelColSpan = 8, mode, layout = 'vertical', card } = props;\n const store = {\n cols,\n labelColSpan,\n mode,\n layout,\n };\n return (\n <StoreCtx.Provider value={store}>\n <div\n className={classnames('vtx-form-layout', {\n 'vtx-form-layout-vertical': layout === 'vertical' && mode !== 'view',\n 'vtx-form-layout-view': mode === 'view',\n 'vtx-form-layout-has-card': card,\n })}\n >\n {props.children}\n </div>\n </StoreCtx.Provider>\n );\n}\n\nVtxFormLayout.propTypes = {\n cols: PropTypes.number,\n labelColSpan: PropTypes.number,\n mode: PropTypes.oneOf(['view']),\n layout: PropTypes.oneOf(['horizontal', 'vertical']),\n children: PropTypes.node,\n card: PropTypes.bool,\n};\n\nVtxFormLayout.Row = Row;\nVtxFormLayout.FormItem = FormItem;\nVtxFormLayout.Card = Card;\nVtxFormLayout.Pane = Pane;\nVtxFormLayout.Divider = Divider;\n\nexport default VtxFormLayout;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["vtx-form-layout/index.jsx"],"names":["VtxFormLayout","props","cols","labelColSpan","mode","layout","card","skeleton","store","defaultSkeleton","loading","title","paragraph","width","rows","children","propTypes","PropTypes","number","oneOf","node","bool","object","Row","FormItem","Card","Pane","Divider"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8B;AAAA,oBACwDA,KADxD,CAClBC,IADkB;AAAA,MAClBA,IADkB,4BACX,CADW;AAAA,4BACwDD,KADxD,CACRE,YADQ;AAAA,MACRA,YADQ,oCACO,CADP;AAAA,MACUC,IADV,GACwDH,KADxD,CACUG,IADV;AAAA,sBACwDH,KADxD,CACgBI,MADhB;AAAA,MACgBA,MADhB,8BACyB,UADzB;AAAA,MACqCC,IADrC,GACwDL,KADxD,CACqCK,IADrC;AAAA,MAC2CC,QAD3C,GACwDN,KADxD,CAC2CM,QAD3C;AAE1B,MAAMC,KAAK,GAAG;AACVN,IAAAA,IAAI,EAAJA,IADU;AAEVC,IAAAA,YAAY,EAAZA,YAFU;AAGVC,IAAAA,IAAI,EAAJA,IAHU;AAIVC,IAAAA,MAAM,EAANA;AAJU,GAAd;AAMA,MAAMI,eAAe,GAAG;AACpBC,IAAAA,OAAO,EAAE,KADW;AAEpBC,IAAAA,KAAK,EAAE,KAFa;AAGpBC,IAAAA,SAAS,EAAE;AACPC,MAAAA,KAAK,EAAE,MADA;AAEPC,MAAAA,IAAI,EAAE;AAFC;AAHS,GAAxB;AAQA,sBACI,gCAAC,iBAAD,CAAU,QAAV;AAAmB,IAAA,KAAK,EAAEN;AAA1B,kBACI;AACI,IAAA,SAAS,EAAE,4BAAW,iBAAX,EAA8B;AACrC,kCAA4BH,MAAM,KAAK,UAAX,IAAyBD,IAAI,KAAK,MADzB;AAErC,8BAAwBA,IAAI,KAAK,MAFI;AAGrC,kCAA4BE;AAHS,KAA9B;AADf,kBAOI,gCAAC,oBAAD,EAAc,wBAAMG,eAAN,EAAuBF,QAAvB,CAAd,EAAiDN,KAAK,CAACc,QAAvD,CAPJ,CADJ,CADJ;AAaH;;AAEDf,aAAa,CAACgB,SAAd,GAA0B;AACtBd,EAAAA,IAAI,EAAEe,sBAAUC,MADM;AAEtBf,EAAAA,YAAY,EAAEc,sBAAUC,MAFF;AAGtBd,EAAAA,IAAI,EAAEa,sBAAUE,KAAV,CAAgB,CAAC,MAAD,CAAhB,CAHgB;AAItBd,EAAAA,MAAM,EAAEY,sBAAUE,KAAV,CAAgB,CAAC,YAAD,EAAe,UAAf,CAAhB,CAJc;AAKtBJ,EAAAA,QAAQ,EAAEE,sBAAUG,IALE;AAMtBd,EAAAA,IAAI,EAAEW,sBAAUI,IANM;AAOtBd,EAAAA,QAAQ,EAAEU,sBAAUK;AAPE,CAA1B;AAUAtB,aAAa,CAACuB,GAAd,GAAoBA,eAApB;AACAvB,aAAa,CAACwB,QAAd,GAAyBA,oBAAzB;AACAxB,aAAa,CAACyB,IAAd,GAAqBA,gBAArB;AACAzB,aAAa,CAAC0B,IAAd,GAAqBA,gBAArB;AACA1B,aAAa,CAAC2B,OAAd,GAAwBA,mBAAxB;eAEe3B,a","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport merge from 'lodash.merge';\nimport Skeleton from 'antd/es/skeleton';\nimport Row from './Row';\nimport FormItem from './FormItem';\nimport Card from './Card';\nimport Pane from './Pane';\nimport Divider from './Divider';\nimport { StoreCtx } from './context';\n\nfunction VtxFormLayout(props) {\n const { cols = 2, labelColSpan = 8, mode, layout = 'vertical', card, skeleton } = props;\n const store = {\n cols,\n labelColSpan,\n mode,\n layout,\n };\n const defaultSkeleton = {\n loading: false,\n title: false,\n paragraph: {\n width: '100%',\n rows: 4,\n },\n };\n return (\n <StoreCtx.Provider value={store}>\n <div\n className={classnames('vtx-form-layout', {\n 'vtx-form-layout-vertical': layout === 'vertical' && mode !== 'view',\n 'vtx-form-layout-view': mode === 'view',\n 'vtx-form-layout-has-card': card,\n })}\n >\n <Skeleton {...merge(defaultSkeleton, skeleton)}>{props.children}</Skeleton>\n </div>\n </StoreCtx.Provider>\n );\n}\n\nVtxFormLayout.propTypes = {\n cols: PropTypes.number,\n labelColSpan: PropTypes.number,\n mode: PropTypes.oneOf(['view']),\n layout: PropTypes.oneOf(['horizontal', 'vertical']),\n children: PropTypes.node,\n card: PropTypes.bool,\n skeleton: PropTypes.object,\n};\n\nVtxFormLayout.Row = Row;\nVtxFormLayout.FormItem = FormItem;\nVtxFormLayout.Card = Card;\nVtxFormLayout.Pane = Pane;\nVtxFormLayout.Divider = Divider;\n\nexport default VtxFormLayout;\n"],"file":"index.js"}
@@ -14,5 +14,7 @@ require("antd/es/card/style/css");
14
14
 
15
15
  require("antd/es/divider/style/css");
16
16
 
17
+ require("antd/es/skeleton/style/css");
18
+
17
19
  require("./index.css");
18
20
  //# sourceMappingURL=css.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-form-layout/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/form/style/css';\nimport 'antd/es/icon/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/card/style/css';\nimport 'antd/es/divider/style/css';\nimport './index.less';\n"],"file":"css.js"}
1
+ {"version":3,"sources":["vtx-form-layout/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/form/style/css';\nimport 'antd/es/icon/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/card/style/css';\nimport 'antd/es/divider/style/css';\nimport 'antd/es/skeleton/style/css';\nimport './index.less';\n"],"file":"css.js"}
@@ -3,6 +3,10 @@
3
3
  padding: 0 24px;
4
4
  overflow: hidden;
5
5
  }
6
+ .vtx-form-layout .vtx-form-card {
7
+ position: relative;
8
+ overflow: hidden;
9
+ }
6
10
  .vtx-form-layout .vtx-form-card-expand-icon {
7
11
  color: rgba(0, 0, 0, 0.45);
8
12
  transition: transform 0.24s, -webkit-transform 0.24s;
@@ -30,6 +34,10 @@
30
34
  }
31
35
  .vtx-form-layout .vtx-form-pane {
32
36
  position: relative;
37
+ -webkit-box-sizing: border-box;
38
+ box-sizing: border-box;
39
+ width: 100%;
40
+ overflow: hidden;
33
41
  }
34
42
  .vtx-form-layout .vtx-form-pane::after {
35
43
  clear: both;
@@ -41,9 +49,11 @@
41
49
  }
42
50
  .vtx-form-layout .vtx-form-pane-title {
43
51
  margin-bottom: 16px;
52
+ overflow: hidden;
44
53
  color: rgba(0, 0, 0, 0.85);
45
54
  font-weight: 500;
46
55
  line-height: 1.5;
56
+ list-style: none;
47
57
  }
48
58
  .vtx-form-layout .vtx-form-pane-content::after {
49
59
  clear: both;
@@ -14,5 +14,7 @@ require("antd/es/card/style/css");
14
14
 
15
15
  require("antd/es/divider/style/css");
16
16
 
17
+ require("antd/es/skeleton/style/css");
18
+
17
19
  require("./index.less");
18
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-form-layout/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/form/style/css';\nimport 'antd/es/icon/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/card/style/css';\nimport 'antd/es/divider/style/css';\nimport './index.less';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["vtx-form-layout/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/form/style/css';\nimport 'antd/es/icon/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/card/style/css';\nimport 'antd/es/divider/style/css';\nimport 'antd/es/skeleton/style/css';\nimport './index.less';\n"],"file":"index.js"}
@@ -7,6 +7,8 @@
7
7
  padding: 0 24px;
8
8
  overflow: hidden;
9
9
  .vtx-form-card {
10
+ position: relative;
11
+ overflow: hidden;
10
12
  &-expand-icon {
11
13
  color: fade(@black, 45%);
12
14
  transition: transform 0.24s, -webkit-transform 0.24s;
@@ -35,6 +37,9 @@
35
37
  }
36
38
  .vtx-form-pane {
37
39
  position: relative;
40
+ box-sizing: border-box;
41
+ width: 100%;
42
+ overflow: hidden;
38
43
  &::after {
39
44
  clear: both;
40
45
  }
@@ -45,9 +50,11 @@
45
50
  }
46
51
  &-title {
47
52
  margin-bottom: 16px;
53
+ overflow: hidden;
48
54
  color: fade(@black, 85%);
49
55
  font-weight: 500;
50
56
  line-height: @line-height;
57
+ list-style: none;
51
58
  }
52
59
  &-content {
53
60
  &::after {
@@ -20,7 +20,6 @@
20
20
  max-height: calc(100% - 108px);
21
21
  padding: 20px 24px;
22
22
  overflow: auto;
23
- background-color: #fbfbfb;
24
23
  }
25
24
  .vtx-modal .vtx-modal-title {
26
25
  position: relative;
@@ -21,7 +21,6 @@
21
21
  max-height: e('calc(100% - 108px)');
22
22
  padding: 20px 24px;
23
23
  overflow: auto;
24
- background-color: #fbfbfb;
25
24
  }
26
25
  }
27
26
  }
@@ -73,6 +73,7 @@
73
73
  height: 32px;
74
74
  color: #1890ff;
75
75
  line-height: 32px;
76
+ cursor: pointer;
76
77
  }
77
78
  .vtx-row {
78
79
  overflow: hidden;
@@ -72,6 +72,7 @@
72
72
  height: 32px;
73
73
  color: #1890ff;
74
74
  line-height: 32px;
75
+ cursor: pointer;
75
76
  }
76
77
  }
77
78
 
@@ -91,7 +91,7 @@ var VtxSearchMapInput = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref
91
91
  style = props.style;
92
92
  (0, _react.useEffect)(function () {
93
93
  _request["default"].get(getTenantByIdPath, {
94
- body: {
94
+ data: {
95
95
  parameters: JSON.stringify({
96
96
  id: tenantId
97
97
  })
@@ -122,7 +122,7 @@ var VtxSearchMapInput = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref
122
122
  var onOk = function onOk(lglt) {
123
123
  if (lglt) {
124
124
  _request["default"].get(geoconvertPath, {
125
- body: {
125
+ data: {
126
126
  coordtype: mapInfo.coordinate,
127
127
  location: lglt.join(',')
128
128
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-search-map-input/index.jsx"],"names":["DEFAULT_MAP_CENTER","GeoconvertPath","GetTenantByIdPath","TENANTID","VtxSearchMapInput","props","ref","visible","setVisible","mapType","mapCenter","coordinate","mapServer","mapInfo","setMapInfo","address","setAddress","lglt","setLglt","value","location","onChange","geoconvertPath","getTenantByIdPath","tenantId","disabled","placeholder","style","http","get","body","parameters","JSON","stringify","id","then","res","result","data","mapDefJson","longitudeDone","latitudeDone","Object","prototype","toString","call","mapJson","parse","map","item","defaultMap","onOk","coordtype","join","longitude","latitude","handleChange","e","target","propTypes","PropTypes","string","array","func","bool","object"],"mappings":"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","sourcesContent":["import React, { forwardRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Input from 'antd/es/input';\nimport Tooltip from 'antd/es/tooltip';\nimport VtxSearchMap from '@vtx/map/lib/VtxSearchMap';\nimport http from '@vtx/utils/lib/request';\nimport getUrlParam from '@vtx/utils/lib/getUrlParam';\n\n// 默认经纬度\nconst DEFAULT_MAP_CENTER = [116.404, 39.915];\n// 通过经纬度获取地址信息\nconst GeoconvertPath = '/vortexapi/rest/lbs/geoconvert/v2';\n// 获取租户信息\nconst GetTenantByIdPath = '/cloud/management/rest/np/tenant/getTenantById';\n// 租户ID\nconst TENANTID = getUrlParam('tenantId');\n\nconst VtxSearchMapInput = forwardRef((props, ref) => {\n const [visible, setVisible] = useState(false);\n const [mapInfo, setMapInfo] = useState({\n mapType: '',\n mapCenter: DEFAULT_MAP_CENTER,\n coordinate: '',\n mapServer: '',\n });\n const [address, setAddress] = useState();\n const [lglt, setLglt] = useState([]);\n const {\n value,\n location = [],\n onChange,\n geoconvertPath = GeoconvertPath,\n getTenantByIdPath = GetTenantByIdPath,\n tenantId = TENANTID,\n disabled,\n placeholder = '请获取地址信息',\n style,\n } = props;\n\n useEffect(() => {\n http.get(getTenantByIdPath, {\n body: { parameters: JSON.stringify({ id: tenantId }) },\n }).then(res => {\n if (res?.result === 0) {\n const { mapDefJson, longitudeDone, latitudeDone } = res.data || {};\n if (Object.prototype.toString.call(mapDefJson) === '[object String]') {\n const mapJson = JSON.parse(mapDefJson);\n mapJson.map(item => {\n if (item.defaultMap) {\n setMapInfo({\n mapType: item.mapType,\n coordinate: item.coordinate,\n mapCenter:\n latitudeDone && longitudeDone\n ? [longitudeDone, latitudeDone]\n : [],\n });\n }\n });\n }\n }\n });\n }, []);\n\n const onOk = lglt => {\n if (lglt) {\n http.get(geoconvertPath, {\n body: {\n coordtype: mapInfo.coordinate,\n location: lglt.join(','),\n },\n }).then(res => {\n const address = res?.data?.address;\n onChange &&\n onChange(address, {\n lglt,\n longitude: lglt[0],\n latitude: lglt[1],\n });\n });\n } else {\n address && setAddress();\n }\n setLglt(lglt || []);\n setVisible(false);\n };\n\n const handleChange = e => {\n onChange &&\n onChange(e.target.value, {\n lglt,\n longitude: lglt[0],\n latitude: lglt[1],\n });\n };\n\n return (\n <>\n <Tooltip title={value}>\n <Input\n ref={ref}\n placeholder={placeholder}\n addonAfter={!disabled && <a onClick={() => setVisible(true)}>去地图</a>}\n value={value}\n disabled={disabled}\n style={style}\n onChange={handleChange}\n />\n </Tooltip>\n <VtxSearchMap\n {...mapInfo}\n mapCenter={location[0] ? location : mapInfo.mapCenter}\n modal1Visible={visible}\n graphicType=\"point\"\n callback={onOk}\n closeModal={() => setVisible(false)}\n class=\"vtx-search-map-model\"\n />\n </>\n );\n});\n\nVtxSearchMapInput.propTypes = {\n value: PropTypes.string,\n location: PropTypes.array,\n placeholder: PropTypes.string,\n onChange: PropTypes.func,\n geoconvertPath: PropTypes.string,\n getTenantByIdPath: PropTypes.string,\n tenantId: PropTypes.string,\n disabled: PropTypes.bool,\n style: PropTypes.object,\n};\n\nexport default VtxSearchMapInput;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["vtx-search-map-input/index.jsx"],"names":["DEFAULT_MAP_CENTER","GeoconvertPath","GetTenantByIdPath","TENANTID","VtxSearchMapInput","props","ref","visible","setVisible","mapType","mapCenter","coordinate","mapServer","mapInfo","setMapInfo","address","setAddress","lglt","setLglt","value","location","onChange","geoconvertPath","getTenantByIdPath","tenantId","disabled","placeholder","style","http","get","data","parameters","JSON","stringify","id","then","res","result","mapDefJson","longitudeDone","latitudeDone","Object","prototype","toString","call","mapJson","parse","map","item","defaultMap","onOk","coordtype","join","longitude","latitude","handleChange","e","target","propTypes","PropTypes","string","array","func","bool","object"],"mappings":"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","sourcesContent":["import React, { forwardRef, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Input from 'antd/es/input';\nimport Tooltip from 'antd/es/tooltip';\nimport VtxSearchMap from '@vtx/map/lib/VtxSearchMap';\nimport http from '@vtx/utils/lib/request';\nimport getUrlParam from '@vtx/utils/lib/getUrlParam';\n\n// 默认经纬度\nconst DEFAULT_MAP_CENTER = [116.404, 39.915];\n// 通过经纬度获取地址信息\nconst GeoconvertPath = '/vortexapi/rest/lbs/geoconvert/v2';\n// 获取租户信息\nconst GetTenantByIdPath = '/cloud/management/rest/np/tenant/getTenantById';\n// 租户ID\nconst TENANTID = getUrlParam('tenantId');\n\nconst VtxSearchMapInput = forwardRef((props, ref) => {\n const [visible, setVisible] = useState(false);\n const [mapInfo, setMapInfo] = useState({\n mapType: '',\n mapCenter: DEFAULT_MAP_CENTER,\n coordinate: '',\n mapServer: '',\n });\n const [address, setAddress] = useState();\n const [lglt, setLglt] = useState([]);\n const {\n value,\n location = [],\n onChange,\n geoconvertPath = GeoconvertPath,\n getTenantByIdPath = GetTenantByIdPath,\n tenantId = TENANTID,\n disabled,\n placeholder = '请获取地址信息',\n style,\n } = props;\n\n useEffect(() => {\n http.get(getTenantByIdPath, {\n data: { parameters: JSON.stringify({ id: tenantId }) },\n }).then(res => {\n if (res?.result === 0) {\n const { mapDefJson, longitudeDone, latitudeDone } = res.data || {};\n if (Object.prototype.toString.call(mapDefJson) === '[object String]') {\n const mapJson = JSON.parse(mapDefJson);\n mapJson.map(item => {\n if (item.defaultMap) {\n setMapInfo({\n mapType: item.mapType,\n coordinate: item.coordinate,\n mapCenter:\n latitudeDone && longitudeDone\n ? [longitudeDone, latitudeDone]\n : [],\n });\n }\n });\n }\n }\n });\n }, []);\n\n const onOk = lglt => {\n if (lglt) {\n http.get(geoconvertPath, {\n data: {\n coordtype: mapInfo.coordinate,\n location: lglt.join(','),\n },\n }).then(res => {\n const address = res?.data?.address;\n onChange &&\n onChange(address, {\n lglt,\n longitude: lglt[0],\n latitude: lglt[1],\n });\n });\n } else {\n address && setAddress();\n }\n setLglt(lglt || []);\n setVisible(false);\n };\n\n const handleChange = e => {\n onChange &&\n onChange(e.target.value, {\n lglt,\n longitude: lglt[0],\n latitude: lglt[1],\n });\n };\n\n return (\n <>\n <Tooltip title={value}>\n <Input\n ref={ref}\n placeholder={placeholder}\n addonAfter={!disabled && <a onClick={() => setVisible(true)}>去地图</a>}\n value={value}\n disabled={disabled}\n style={style}\n onChange={handleChange}\n />\n </Tooltip>\n <VtxSearchMap\n {...mapInfo}\n mapCenter={location[0] ? location : mapInfo.mapCenter}\n modal1Visible={visible}\n graphicType=\"point\"\n callback={onOk}\n closeModal={() => setVisible(false)}\n class=\"vtx-search-map-model\"\n />\n </>\n );\n});\n\nVtxSearchMapInput.propTypes = {\n value: PropTypes.string,\n location: PropTypes.array,\n placeholder: PropTypes.string,\n onChange: PropTypes.func,\n geoconvertPath: PropTypes.string,\n getTenantByIdPath: PropTypes.string,\n tenantId: PropTypes.string,\n disabled: PropTypes.bool,\n style: PropTypes.object,\n};\n\nexport default VtxSearchMapInput;\n"],"file":"index.js"}
@@ -25,6 +25,8 @@ var _message = _interopRequireDefault(require("antd/es/message"));
25
25
 
26
26
  var _downloadFile = _interopRequireDefault(require("@vtx/utils/lib/downloadFile"));
27
27
 
28
+ var _lodash = _interopRequireDefault(require("lodash.debounce"));
29
+
28
30
  var _FilePreview = _interopRequireDefault(require("./FilePreview"));
29
31
 
30
32
  var _getUrlParam = _interopRequireDefault(require("../_util/getUrlParam"));
@@ -67,7 +69,10 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
67
69
 
68
70
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
69
71
 
70
- //文件预览
72
+ var debouncedMessage = (0, _lodash["default"])(function (msg) {
73
+ _message["default"].error(msg);
74
+ }, 500); //文件预览
75
+
71
76
  var initVPrev = {
72
77
  type: '',
73
78
  //video or file
@@ -123,10 +128,15 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
123
128
  setImageViewer = _useState4[1]; //图片预览
124
129
 
125
130
 
126
- var _useState5 = (0, _react.useState)(null),
131
+ var _useState5 = (0, _react.useState)([]),
127
132
  _useState6 = _slicedToArray(_useState5, 2),
128
- imageCt = _useState6[0],
129
- setImageCt = _useState6[1];
133
+ imageList = _useState6[0],
134
+ setImageList = _useState6[1];
135
+
136
+ var _useState7 = (0, _react.useState)(null),
137
+ _useState8 = _slicedToArray(_useState7, 2),
138
+ imageCt = _useState8[0],
139
+ setImageCt = _useState8[1];
130
140
 
131
141
  var _useSetState = (0, _useSetState3["default"])(initVPrev),
132
142
  _useSetState2 = _slicedToArray(_useSetState, 2),
@@ -146,6 +156,21 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
146
156
  (0, _react.useEffect)(function () {
147
157
  setFileList(getSynFileList(props) || []);
148
158
  }, [flag]);
159
+ (0, _react.useEffect)(function () {
160
+ if (Array.isArray(fileList)) {
161
+ // 只有图片的才可以预览,这边需要判断是否是图片
162
+ var imagelist = []; // 只能通过后缀来判断
163
+
164
+ fileList.map(function (file) {
165
+ var _file$type;
166
+
167
+ if (((_file$type = file.type) === null || _file$type === void 0 ? void 0 : _file$type.indexOf('image')) > -1) {
168
+ imagelist.push(file);
169
+ }
170
+ });
171
+ setImageList(imagelist);
172
+ }
173
+ }, [fileList]);
149
174
  (0, _react.useEffect)(function () {
150
175
  if (imageCt) {
151
176
  setImageViewer(new _viewerjs["default"](imageCt, {}));
@@ -165,6 +190,8 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
165
190
  Authorization: token ? "Bearer ".concat(token) : ''
166
191
  }, rest.headers),
167
192
  onChange: function onChange(info) {
193
+ setFileList(info.fileList);
194
+
168
195
  if (info.file.response && info.file.response.result === 1) {
169
196
  _message["default"].error(info.file.response.errMsg || '上传失败!');
170
197
 
@@ -176,16 +203,19 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
176
203
  } // 此处根据后台返回的数据结构取得文件ID
177
204
 
178
205
 
179
- var vtxId = info.file.response && Array.isArray(info.file.response.data) && info.file.response.data.length > 0 ? info.file.response.data[0].id : undefined;
180
- var newFileList = info.fileList;
181
- var newFile = vtxId ? _objectSpread(_objectSpread({}, info.file), {}, {
182
- id: vtxId,
183
- url: downloadUrl + vtxId,
184
- thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined
185
- }) : _objectSpread({}, info.file);
186
-
187
- if (info.file.status === 'done' && vtxId) {
188
- newFileList = info.fileList.map(function (item) {
206
+ if (info.file.status !== 'uploading') {
207
+ var vtxId = info.file.response && Array.isArray(info.file.response.data) && info.file.response.data.length > 0 ? info.file.response.data[0].id : undefined;
208
+ var newFileList = info.fileList;
209
+ var newFile = vtxId ? _objectSpread(_objectSpread({}, info.file), {}, {
210
+ id: vtxId,
211
+ url: downloadUrl + vtxId,
212
+ thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined
213
+ }) : _objectSpread({}, info.file);
214
+ newFileList = info.fileList.filter(function (item) {
215
+ // 有vtxId代表上传成功,有item.id代表之前上传成功的
216
+ if (vtxId || item.id) return true;
217
+ return false;
218
+ }).map(function (item) {
189
219
  if (item.uid == info.file.uid) {
190
220
  return _objectSpread(_objectSpread({}, item), {}, {
191
221
  id: vtxId,
@@ -196,23 +226,28 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
196
226
 
197
227
  return item;
198
228
  });
199
- } // 更新组件状态
200
229
 
201
-
202
- if (mode == 'single' && info.file.status === 'done') {
203
- setFileList([newFile]);
204
- } else {
205
- setFileList(newFileList);
206
- } // 触发外部方法
207
-
208
-
209
- if (info.file.status === 'done') {
210
- if (typeof onSuccess == 'function') {
211
- onSuccess(newFile);
212
- }
213
- } else if (info.file.status === 'error') {
214
- if (typeof onError == 'function') {
215
- onError(info.file);
230
+ if (mode == 'single') {
231
+ setFileList([newFile]);
232
+ } else {
233
+ setFileList(newFileList);
234
+ } // 更新组件状态
235
+ // if (mode == 'single' && info.file.status === 'done') {
236
+ // setFileList([newFile]);
237
+ // } else {
238
+ // setFileList(newFileList);
239
+ // }
240
+ // 触发外部方法
241
+
242
+
243
+ if (info.file.status === 'done') {
244
+ if (typeof onSuccess == 'function') {
245
+ onSuccess(newFile);
246
+ }
247
+ } else if (info.file.status === 'error') {
248
+ if (typeof onError == 'function') {
249
+ onError(info.file);
250
+ }
216
251
  }
217
252
  }
218
253
  },
@@ -221,7 +256,7 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
221
256
  return _onRemove(file);
222
257
  }
223
258
  },
224
- beforeUpload: function beforeUpload(file) {
259
+ beforeUpload: function beforeUpload(file, afterFileList) {
225
260
  //限制文件大小
226
261
  if (maxFileSize && typeof maxFileSize === 'number') {
227
262
  var limit = file.size < maxFileSize;
@@ -244,10 +279,17 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
244
279
 
245
280
  return false;
246
281
  }
282
+ } // 多选限制文件数量
283
+
284
+
285
+ if (typeof maxNum === 'number' && afterFileList.length + fileList.length > maxNum) {
286
+ // 减少提示错误次数, 思路,防抖 这边有个问题 就是防抖的这个方法 return fasle 不上传
287
+ debouncedMessage("\u6700\u591A\u4E0A\u4F20".concat(maxNum, "\u4E2A"));
288
+ return false;
247
289
  }
248
290
 
249
291
  if (typeof _beforeUpload === 'function') {
250
- _beforeUpload(file);
292
+ _beforeUpload(file, afterFileList);
251
293
  }
252
294
 
253
295
  return true;
@@ -258,13 +300,15 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
258
300
  config.onPreview = props.onPreview;
259
301
  } else {
260
302
  config.onPreview = function (file) {
303
+ var _file$type2, _file$type3;
304
+
261
305
  if (!file.type) {
262
306
  (0, _downloadFile["default"])(downloadUrl + file.id, {
263
307
  fileName: file.name
264
308
  }, 'blob');
265
- } else if (file.type.indexOf('image') > -1) {
309
+ } else if (((_file$type2 = file.type) === null || _file$type2 === void 0 ? void 0 : _file$type2.indexOf('image')) > -1) {
266
310
  handlePreview(file);
267
- } else if (file.type.indexOf('video') > -1) {
311
+ } else if (((_file$type3 = file.type) === null || _file$type3 === void 0 ? void 0 : _file$type3.indexOf('video')) > -1) {
268
312
  // 视频
269
313
  setVPrev({
270
314
  type: 'video',
@@ -318,7 +362,7 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
318
362
  };
319
363
 
320
364
  var handlePreview = function handlePreview(file) {
321
- var imageIndex = fileList.map(function (item) {
365
+ var imageIndex = imageList.map(function (item) {
322
366
  return item.id;
323
367
  }).indexOf(file.id);
324
368
  if (imageIndex == -1) return;
@@ -389,8 +433,10 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
389
433
  ref: function ref(ins) {
390
434
  if (ins) setImageCt(ins);
391
435
  }
392
- }, fileList.filter(function (item) {
393
- return item.type && item.type.indexOf('image') > -1;
436
+ }, imageList.filter(function (item) {
437
+ var _item$type;
438
+
439
+ return item.type && ((_item$type = item.type) === null || _item$type === void 0 ? void 0 : _item$type.indexOf('image')) > -1;
394
440
  }).map(function (item, index) {
395
441
  return /*#__PURE__*/_react["default"].createElement("li", {
396
442
  key: item.uid
@@ -1 +1 @@
1
- {"version":3,"sources":["vtx-upload/index.jsx"],"names":["initVPrev","type","name","url","downloadUrl","visible","initUrl","action","thumbnailUrl","rejectTypes","Dragger","Upload","VtxUpload","props","ref","isDragger","draggerConfig","accept","mode","viewMode","showUploadList","customizedButton","listType","onSuccess","onError","onRemove","maxFileSize","beforeUpload","maxNum","flag","rest","useThumbnail","fileList","setFileList","imageViewer","setImageViewer","imageCt","setImageCt","vPrev","setVPrev","getSynFileList","Viewer","getConfig","token","config","headers","Authorization","onChange","info","file","response","result","message","error","errMsg","flt","pop","vtxId","Array","isArray","data","length","id","undefined","newFileList","newFile","thumbUrl","status","map","item","uid","limit","size","pointIndex","lastIndexOf","fileType","substring","includes","onPreview","fileName","indexOf","handlePreview","showRemoveIcon","imageIndex","update","view","processedFileList","index","console","img","maxWidth","maxHeight","marginTop","marginBottom","mainText","subText","fontSize","color","display","ins","filter","propTypes","PropTypes","bool","object","string","node","previewUrl","func","number","array"],"mappings":"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","sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\nimport useSetState from 'ahooks/es/useSetState';\nimport PropTypes from 'prop-types';\nimport Viewer from 'viewerjs';\nimport Upload from 'antd/es/upload';\nimport Button from 'antd/es/button';\nimport Icon from 'antd/es/icon';\nimport message from 'antd/es/message';\nimport downloadFile from '@vtx/utils/lib/downloadFile';\nimport Prev from './FilePreview';\nimport getUrlParam from '../_util/getUrlParam';\n\n//文件预览\nconst initVPrev = {\n type: '', //video or file\n name: '',\n url: '',\n downloadUrl: '',\n visible: false,\n};\n\nconst initUrl = {\n action: '/cloudFile/common/uploadFile',\n downloadUrl: '/cloudFile/common/downloadFile?id=',\n thumbnailUrl:\n '/vortex/rest/cloud/np/file/downloadFileThumbnail?outputQuality=0.5&scale=0.2&id=',\n //previewUrl: '/onlinePreview',\n};\n//禁止上传的文件类型\nconst rejectTypes = ['.asp', '.aspx', '.jsp', '.exe', '.cgi', '.asa', '.cer', '.cdx', '.hta'];\n\nconst Dragger = Upload.Dragger;\nconst VtxUpload = forwardRef((props, ref) => {\n const {\n isDragger = false, //是否拖拽模式\n draggerConfig = {}, //拖动配置\n accept, //接受上传的文件类型\n mode = 'multiple', //单文件模式or多文件模式\n viewMode, //是否查看模式(隐藏上传按钮)\n showUploadList, //是否展示文件列表\n customizedButton, //自定义上传文字描述\n listType = 'text', //上传列表的样式\n onSuccess, //上传成功\n onError, //上传失败\n onRemove, //删除\n maxFileSize = 5 * 1024 * 1024, //文件大小限制,默认最大5M\n beforeUpload, //上传前回调\n maxNum, //最多上传的文件数量\n flag, //同步数据标记\n ...rest\n } = props;\n // 是否使用缩略图\n const useThumbnail =\n props.useThumbnail && (listType == 'picture' || listType == 'picture-card');\n\n const [fileList, setFileList] = useState([]); //初始化文件列表\n const [imageViewer, setImageViewer] = useState(null); //图片预览\n const [imageCt, setImageCt] = useState(null);\n const [vPrev, setVPrev] = useSetState(initVPrev); //文件预览相关\n\n const url = {\n action: props.action || initUrl.action,\n downloadUrl: props.downloadUrl || initUrl.downloadUrl,\n thumbnailUrl: props.thumbnailUrl || initUrl.thumbnailUrl,\n //previewUrl: props.previewUrl || initUrl.previewUrl,\n };\n const { action, downloadUrl, thumbnailUrl } = url;\n\n useEffect(() => {\n setFileList(getSynFileList(props) || []);\n }, [flag]);\n\n useEffect(() => {\n if (imageCt) {\n setImageViewer(new Viewer(imageCt, {}));\n }\n }, [imageCt]);\n\n const getConfig = () => {\n let token = getUrlParam('token') || '';\n let config = {\n ...rest,\n accept,\n action,\n fileList: fileList,\n listType,\n showUploadList,\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n ...rest.headers,\n },\n onChange(info) {\n if (info.file.response && info.file.response.result === 1) {\n message.error(info.file.response.errMsg || '上传失败!');\n let flt = [...fileList];\n flt.pop();\n setFileList(flt);\n return;\n }\n // 此处根据后台返回的数据结构取得文件ID\n let vtxId =\n info.file.response &&\n Array.isArray(info.file.response.data) &&\n info.file.response.data.length > 0\n ? info.file.response.data[0].id\n : undefined;\n let newFileList = info.fileList;\n let newFile = vtxId\n ? {\n ...info.file,\n id: vtxId,\n url: downloadUrl + vtxId,\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\n }\n : {\n ...info.file,\n };\n\n if (info.file.status === 'done' && vtxId) {\n newFileList = info.fileList.map(item => {\n if (item.uid == info.file.uid) {\n return {\n ...item,\n id: vtxId,\n url: downloadUrl + vtxId,\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\n };\n }\n return item;\n });\n }\n\n // 更新组件状态\n if (mode == 'single' && info.file.status === 'done') {\n setFileList([newFile]);\n } else {\n setFileList(newFileList);\n }\n\n // 触发外部方法\n if (info.file.status === 'done') {\n if (typeof onSuccess == 'function') {\n onSuccess(newFile);\n }\n } else if (info.file.status === 'error') {\n if (typeof onError == 'function') {\n onError(info.file);\n }\n }\n },\n onRemove(file) {\n if (typeof onRemove == 'function') {\n return onRemove(file);\n }\n },\n beforeUpload(file) {\n //限制文件大小\n if (maxFileSize && typeof maxFileSize === 'number') {\n const limit = file.size < maxFileSize;\n if (!limit) {\n message.error(`请上传${maxFileSize / 1024 / 1024}M以内的文件`);\n return false;\n }\n }\n //限制不允许上传的文件类型(通过文件名后缀)\n let pointIndex = file.name ? file.name.lastIndexOf('.') : -1;\n if (pointIndex > -1) {\n let fileType = file.name.substring(pointIndex);\n if (rejectTypes.includes(fileType)) {\n message.error('不支持该文件类型');\n return false;\n }\n }\n\n if (typeof beforeUpload === 'function') {\n beforeUpload(file);\n }\n return true;\n },\n };\n\n if (props.onPreview && typeof props.onPreview === 'function') {\n config.onPreview = props.onPreview;\n } else {\n config.onPreview = file => {\n if (!file.type) {\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\n } else if (file.type.indexOf('image') > -1) {\n handlePreview(file);\n } else if (file.type.indexOf('video') > -1) {\n // 视频\n setVPrev({\n type: 'video',\n name: file.name || '视频预览',\n url: downloadUrl + file.id,\n downloadUrl: downloadUrl + file.id,\n visible: true,\n });\n } else {\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\n }\n\n // TODO 暂无好的文件预览服务,等后续完善,只提供下载\n // else if (\n // file.type == 'application/PDF' ||\n // file.type == 'application/vnd.ms-excel' ||\n // file.type ==\n // 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ||\n // file.type == 'application/msword' ||\n // file.type ==\n // 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n // ) {\n // let url = '';\n // if (props.previewUrl) {\n // url = `${props.previewUrl}?id=${file.id}&fileName=${file.name}`;\n // } else {\n // url = `http://183.215.89.162:8012/onlinePreview?url=http://183.136.177.108:8003/cloudFile/common/downloadFile${encodeURIComponent(\n // '?id=' + file.id + '&fullfilename=' + file.name.replace(/\\s*/g, ''),\n // )}`;\n // }\n\n // setVPrev({\n // type: 'file',\n // name: file.name || '文件预览',\n // url: url,\n // downloadUrl: downloadUrl + file.id,\n // visible: true,\n // });\n // }\n };\n }\n\n // viewMode\n if (viewMode) {\n config.showUploadList = { showRemoveIcon: false };\n }\n\n return config;\n };\n\n const handlePreview = file => {\n const imageIndex = fileList.map(item => item.id).indexOf(file.id);\n if (imageIndex == -1) return;\n imageViewer.update();\n imageViewer.view(imageIndex);\n };\n\n const getSynFileList = props => {\n let processedFileList = props.fileList || [];\n // 单文件模式只取第一个\n if (props.mode == 'single' && processedFileList.length > 1) {\n processedFileList = [processedFileList[0]];\n }\n processedFileList = processedFileList.map((item, index) => {\n // 将外部传入的简易文件数组处理成为组件需要的数组结构\n if (item.name === undefined || item.id === undefined) {\n // eslint-disable-next-line no-console\n console.error('文件列表的name和id属性不能为空');\n }\n return {\n ...item,\n uid: -1 - index,\n status: 'done',\n url: item.url || downloadUrl + item.id,\n thumbUrl: useThumbnail ? item.thumbUrl || thumbnailUrl + item.id : undefined,\n };\n });\n return processedFileList;\n };\n return (\n <>\n {isDragger ? (\n <Dragger {...getConfig()} ref={ref}>\n {draggerConfig?.img ? (\n <img\n src={draggerConfig.img}\n alt=\"\"\n style={{\n maxWidth: 100,\n maxHeight: 100,\n marginTop: '3%',\n marginBottom: '5%',\n }}\n />\n ) : (\n <p className=\"ant-upload-drag-icon\">\n <Icon type=\"inbox\" />\n </p>\n )}\n <p className=\"ant-upload-text\">{draggerConfig?.mainText || '点击或拖拽上传'}</p>\n <p className=\"ant-upload-hint\">\n {draggerConfig?.subText || '支持上传word,excel,png...'}\n </p>\n </Dragger>\n ) : (\n <Upload {...getConfig()} ref={ref}>\n {viewMode || fileList.length >= maxNum\n ? null\n : customizedButton ||\n (listType == 'picture-card' ? (\n <div>\n <Icon type=\"plus\" style={{ fontSize: '28px', color: '#999' }} />\n <div className=\"ant-upload-text\">上传</div>\n </div>\n ) : (\n <Button>\n <Icon type=\"upload\" />\n 上传\n </Button>\n ))}\n </Upload>\n )}\n <div style={{ display: 'none' }}>\n <ul\n ref={ins => {\n if (ins) setImageCt(ins);\n }}\n >\n {fileList\n .filter(item => item.type && item.type.indexOf('image') > -1)\n .map((item, index) => (\n <li key={item.uid}>\n <img\n src={item.url || downloadUrl + item.id}\n alt={item.name || `picture-${index + 1}`}\n />\n </li>\n ))}\n </ul>\n </div>\n {/* 视频预览 */}\n <Prev onCancel={() => setVPrev(initVPrev)} {...vPrev} />\n </>\n );\n});\n\nVtxUpload.propTypes = {\n isDragger: PropTypes.bool,\n draggerConfig: PropTypes.object,\n accept: PropTypes.string,\n mode: PropTypes.string,\n viewMode: PropTypes.bool,\n showUploadList: PropTypes.bool,\n customizedButton: PropTypes.node,\n listType: PropTypes.string,\n action: PropTypes.string,\n downloadUrl: PropTypes.string,\n thumbnailUrl: PropTypes.string,\n previewUrl: PropTypes.string,\n onSuccess: PropTypes.func,\n onError: PropTypes.func,\n onRemove: PropTypes.func,\n onPreview: PropTypes.func,\n maxFileSize: PropTypes.number,\n beforeUpload: PropTypes.func,\n maxNum: PropTypes.number,\n fileList: PropTypes.array,\n flag: PropTypes.number,\n useThumbnail: PropTypes.bool,\n};\nexport default VtxUpload;\n"],"file":"index.js"}
1
+ {"version":3,"sources":["vtx-upload/index.jsx"],"names":["debouncedMessage","msg","message","error","initVPrev","type","name","url","downloadUrl","visible","initUrl","action","thumbnailUrl","rejectTypes","Dragger","Upload","VtxUpload","props","ref","isDragger","draggerConfig","accept","mode","viewMode","showUploadList","customizedButton","listType","onSuccess","onError","onRemove","maxFileSize","beforeUpload","maxNum","flag","rest","useThumbnail","fileList","setFileList","imageViewer","setImageViewer","imageList","setImageList","imageCt","setImageCt","vPrev","setVPrev","getSynFileList","Array","isArray","imagelist","map","file","indexOf","push","Viewer","getConfig","token","config","headers","Authorization","onChange","info","response","result","errMsg","flt","pop","status","vtxId","data","length","id","undefined","newFileList","newFile","thumbUrl","filter","item","uid","afterFileList","limit","size","pointIndex","lastIndexOf","fileType","substring","includes","onPreview","fileName","handlePreview","showRemoveIcon","imageIndex","update","view","processedFileList","index","console","img","maxWidth","maxHeight","marginTop","marginBottom","mainText","subText","fontSize","color","display","ins","propTypes","PropTypes","bool","object","string","node","previewUrl","func","number","array"],"mappings":"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","sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\nimport useSetState from 'ahooks/es/useSetState';\nimport PropTypes from 'prop-types';\nimport Viewer from 'viewerjs';\nimport Upload from 'antd/es/upload';\nimport Button from 'antd/es/button';\nimport Icon from 'antd/es/icon';\nimport message from 'antd/es/message';\nimport downloadFile from '@vtx/utils/lib/downloadFile';\nimport debounce from 'lodash.debounce';\nimport Prev from './FilePreview';\nimport getUrlParam from '../_util/getUrlParam';\n\nconst debouncedMessage = debounce(msg => {\n message.error(msg);\n}, 500);\n\n//文件预览\nconst initVPrev = {\n type: '', //video or file\n name: '',\n url: '',\n downloadUrl: '',\n visible: false,\n};\n\nconst initUrl = {\n action: '/cloudFile/common/uploadFile',\n downloadUrl: '/cloudFile/common/downloadFile?id=',\n thumbnailUrl:\n '/vortex/rest/cloud/np/file/downloadFileThumbnail?outputQuality=0.5&scale=0.2&id=',\n //previewUrl: '/onlinePreview',\n};\n//禁止上传的文件类型\nconst rejectTypes = ['.asp', '.aspx', '.jsp', '.exe', '.cgi', '.asa', '.cer', '.cdx', '.hta'];\n\nconst Dragger = Upload.Dragger;\nconst VtxUpload = forwardRef((props, ref) => {\n const {\n isDragger = false, //是否拖拽模式\n draggerConfig = {}, //拖动配置\n accept, //接受上传的文件类型\n mode = 'multiple', //单文件模式or多文件模式\n viewMode, //是否查看模式(隐藏上传按钮)\n showUploadList, //是否展示文件列表\n customizedButton, //自定义上传文字描述\n listType = 'text', //上传列表的样式\n onSuccess, //上传成功\n onError, //上传失败\n onRemove, //删除\n maxFileSize = 5 * 1024 * 1024, //文件大小限制,默认最大5M\n beforeUpload, //上传前回调\n maxNum, //最多上传的文件数量\n flag, //同步数据标记\n ...rest\n } = props;\n // 是否使用缩略图\n const useThumbnail =\n props.useThumbnail && (listType == 'picture' || listType == 'picture-card');\n\n const [fileList, setFileList] = useState([]); //初始化文件列表\n const [imageViewer, setImageViewer] = useState(null); //图片预览\n const [imageList, setImageList] = useState([]);\n const [imageCt, setImageCt] = useState(null);\n const [vPrev, setVPrev] = useSetState(initVPrev); //文件预览相关\n\n const url = {\n action: props.action || initUrl.action,\n downloadUrl: props.downloadUrl || initUrl.downloadUrl,\n thumbnailUrl: props.thumbnailUrl || initUrl.thumbnailUrl,\n //previewUrl: props.previewUrl || initUrl.previewUrl,\n };\n const { action, downloadUrl, thumbnailUrl } = url;\n\n useEffect(() => {\n setFileList(getSynFileList(props) || []);\n }, [flag]);\n\n useEffect(() => {\n if (Array.isArray(fileList)) {\n // 只有图片的才可以预览,这边需要判断是否是图片\n const imagelist = [];\n // 只能通过后缀来判断\n fileList.map(file => {\n if (file.type?.indexOf('image') > -1) {\n imagelist.push(file);\n }\n });\n setImageList(imagelist);\n }\n }, [fileList]);\n\n useEffect(() => {\n if (imageCt) {\n setImageViewer(new Viewer(imageCt, {}));\n }\n }, [imageCt]);\n\n const getConfig = () => {\n let token = getUrlParam('token') || '';\n let config = {\n ...rest,\n accept,\n action,\n fileList: fileList,\n listType,\n showUploadList,\n headers: {\n Authorization: token ? `Bearer ${token}` : '',\n ...rest.headers,\n },\n onChange(info) {\n setFileList(info.fileList);\n if (info.file.response && info.file.response.result === 1) {\n message.error(info.file.response.errMsg || '上传失败!');\n let flt = [...fileList];\n flt.pop();\n setFileList(flt);\n return;\n }\n // 此处根据后台返回的数据结构取得文件ID\n if (info.file.status !== 'uploading') {\n let vtxId =\n info.file.response &&\n Array.isArray(info.file.response.data) &&\n info.file.response.data.length > 0\n ? info.file.response.data[0].id\n : undefined;\n let newFileList = info.fileList;\n let newFile = vtxId\n ? {\n ...info.file,\n id: vtxId,\n url: downloadUrl + vtxId,\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\n }\n : {\n ...info.file,\n };\n newFileList = info.fileList\n .filter(item => {\n // 有vtxId代表上传成功,有item.id代表之前上传成功的\n if (vtxId || item.id) return true;\n return false;\n })\n .map(item => {\n if (item.uid == info.file.uid) {\n return {\n ...item,\n id: vtxId,\n url: downloadUrl + vtxId,\n thumbUrl: useThumbnail ? thumbnailUrl + vtxId : undefined,\n };\n }\n return item;\n });\n\n if (mode == 'single') {\n setFileList([newFile]);\n } else {\n setFileList(newFileList);\n }\n // 更新组件状态\n // if (mode == 'single' && info.file.status === 'done') {\n // setFileList([newFile]);\n // } else {\n // setFileList(newFileList);\n // }\n\n // 触发外部方法\n if (info.file.status === 'done') {\n if (typeof onSuccess == 'function') {\n onSuccess(newFile);\n }\n } else if (info.file.status === 'error') {\n if (typeof onError == 'function') {\n onError(info.file);\n }\n }\n }\n },\n onRemove(file) {\n if (typeof onRemove == 'function') {\n return onRemove(file);\n }\n },\n beforeUpload(file, afterFileList) {\n //限制文件大小\n if (maxFileSize && typeof maxFileSize === 'number') {\n const limit = file.size < maxFileSize;\n if (!limit) {\n message.error(`请上传${maxFileSize / 1024 / 1024}M以内的文件`);\n return false;\n }\n }\n //限制不允许上传的文件类型(通过文件名后缀)\n let pointIndex = file.name ? file.name.lastIndexOf('.') : -1;\n if (pointIndex > -1) {\n let fileType = file.name.substring(pointIndex);\n if (rejectTypes.includes(fileType)) {\n message.error('不支持该文件类型');\n return false;\n }\n }\n // 多选限制文件数量\n if (typeof maxNum === 'number' && afterFileList.length + fileList.length > maxNum) {\n // 减少提示错误次数, 思路,防抖 这边有个问题 就是防抖的这个方法 return fasle 不上传\n debouncedMessage(`最多上传${maxNum}个`);\n return false;\n }\n\n if (typeof beforeUpload === 'function') {\n beforeUpload(file, afterFileList);\n }\n return true;\n },\n };\n\n if (props.onPreview && typeof props.onPreview === 'function') {\n config.onPreview = props.onPreview;\n } else {\n config.onPreview = file => {\n if (!file.type) {\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\n } else if (file.type?.indexOf('image') > -1) {\n handlePreview(file);\n } else if (file.type?.indexOf('video') > -1) {\n // 视频\n setVPrev({\n type: 'video',\n name: file.name || '视频预览',\n url: downloadUrl + file.id,\n downloadUrl: downloadUrl + file.id,\n visible: true,\n });\n } else {\n downloadFile(downloadUrl + file.id, { fileName: file.name }, 'blob');\n }\n\n // TODO 暂无好的文件预览服务,等后续完善,只提供下载\n // else if (\n // file.type == 'application/PDF' ||\n // file.type == 'application/vnd.ms-excel' ||\n // file.type ==\n // 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' ||\n // file.type == 'application/msword' ||\n // file.type ==\n // 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n // ) {\n // let url = '';\n // if (props.previewUrl) {\n // url = `${props.previewUrl}?id=${file.id}&fileName=${file.name}`;\n // } else {\n // url = `http://183.215.89.162:8012/onlinePreview?url=http://183.136.177.108:8003/cloudFile/common/downloadFile${encodeURIComponent(\n // '?id=' + file.id + '&fullfilename=' + file.name.replace(/\\s*/g, ''),\n // )}`;\n // }\n\n // setVPrev({\n // type: 'file',\n // name: file.name || '文件预览',\n // url: url,\n // downloadUrl: downloadUrl + file.id,\n // visible: true,\n // });\n // }\n };\n }\n\n // viewMode\n if (viewMode) {\n config.showUploadList = { showRemoveIcon: false };\n }\n\n return config;\n };\n\n const handlePreview = file => {\n const imageIndex = imageList.map(item => item.id).indexOf(file.id);\n if (imageIndex == -1) return;\n imageViewer.update();\n imageViewer.view(imageIndex);\n };\n\n const getSynFileList = props => {\n let processedFileList = props.fileList || [];\n // 单文件模式只取第一个\n if (props.mode == 'single' && processedFileList.length > 1) {\n processedFileList = [processedFileList[0]];\n }\n processedFileList = processedFileList.map((item, index) => {\n // 将外部传入的简易文件数组处理成为组件需要的数组结构\n if (item.name === undefined || item.id === undefined) {\n // eslint-disable-next-line no-console\n console.error('文件列表的name和id属性不能为空');\n }\n return {\n ...item,\n uid: -1 - index,\n status: 'done',\n url: item.url || downloadUrl + item.id,\n thumbUrl: useThumbnail ? item.thumbUrl || thumbnailUrl + item.id : undefined,\n };\n });\n return processedFileList;\n };\n return (\n <>\n {isDragger ? (\n <Dragger {...getConfig()} ref={ref}>\n {draggerConfig?.img ? (\n <img\n src={draggerConfig.img}\n alt=\"\"\n style={{\n maxWidth: 100,\n maxHeight: 100,\n marginTop: '3%',\n marginBottom: '5%',\n }}\n />\n ) : (\n <p className=\"ant-upload-drag-icon\">\n <Icon type=\"inbox\" />\n </p>\n )}\n <p className=\"ant-upload-text\">{draggerConfig?.mainText || '点击或拖拽上传'}</p>\n <p className=\"ant-upload-hint\">\n {draggerConfig?.subText || '支持上传word,excel,png...'}\n </p>\n </Dragger>\n ) : (\n <Upload {...getConfig()} ref={ref}>\n {viewMode || fileList.length >= maxNum\n ? null\n : customizedButton ||\n (listType == 'picture-card' ? (\n <div>\n <Icon type=\"plus\" style={{ fontSize: '28px', color: '#999' }} />\n <div className=\"ant-upload-text\">上传</div>\n </div>\n ) : (\n <Button>\n <Icon type=\"upload\" />\n 上传\n </Button>\n ))}\n </Upload>\n )}\n <div style={{ display: 'none' }}>\n <ul\n ref={ins => {\n if (ins) setImageCt(ins);\n }}\n >\n {imageList\n .filter(item => item.type && item.type?.indexOf('image') > -1)\n .map((item, index) => (\n <li key={item.uid}>\n <img\n src={item.url || downloadUrl + item.id}\n alt={item.name || `picture-${index + 1}`}\n />\n </li>\n ))}\n </ul>\n </div>\n {/* 视频预览 */}\n <Prev onCancel={() => setVPrev(initVPrev)} {...vPrev} />\n </>\n );\n});\n\nVtxUpload.propTypes = {\n isDragger: PropTypes.bool,\n draggerConfig: PropTypes.object,\n accept: PropTypes.string,\n mode: PropTypes.string,\n viewMode: PropTypes.bool,\n showUploadList: PropTypes.bool,\n customizedButton: PropTypes.node,\n listType: PropTypes.string,\n action: PropTypes.string,\n downloadUrl: PropTypes.string,\n thumbnailUrl: PropTypes.string,\n previewUrl: PropTypes.string,\n onSuccess: PropTypes.func,\n onError: PropTypes.func,\n onRemove: PropTypes.func,\n onPreview: PropTypes.func,\n maxFileSize: PropTypes.number,\n beforeUpload: PropTypes.func,\n maxNum: PropTypes.number,\n fileList: PropTypes.array,\n flag: PropTypes.number,\n useThumbnail: PropTypes.bool,\n};\nexport default VtxUpload;\n"],"file":"index.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtx/components",
3
- "version": "2.5.1",
3
+ "version": "2.5.5",
4
4
  "description": "React components for Vortex",
5
5
  "keywords": [
6
6
  "react",
@@ -51,7 +51,7 @@
51
51
  "authorName": true
52
52
  },
53
53
  "dependencies": {
54
- "@vtx/map": "^1.0.2",
54
+ "@vtx/map": "latest",
55
55
  "@vtx/utils": "latest",
56
56
  "ahooks": "^2.9.6",
57
57
  "antd": "3.26.19",