@vtx/components 3.1.10 → 3.1.11

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.
Files changed (176) hide show
  1. package/CHANGELOG.md +1097 -0
  2. package/README.md +19 -19
  3. package/lib/_util/filterSpecialCharacters.js +6 -6
  4. package/lib/_util/filterSpecialCharacters.js.map +1 -1
  5. package/lib/_util/getComponentProps.js.map +1 -1
  6. package/lib/_util/getUrlParam.js.map +1 -1
  7. package/lib/_util/isFunction.js.map +1 -1
  8. package/lib/_util/isObject.js.map +1 -1
  9. package/lib/_util/useColSize.js.map +1 -1
  10. package/lib/_util/useInterval.js.map +1 -1
  11. package/lib/_util/useSet.js.map +1 -1
  12. package/lib/config.js.map +1 -1
  13. package/lib/index.js +8 -0
  14. package/lib/index.js.map +1 -1
  15. package/lib/vtx-color-picker/index.js.map +1 -1
  16. package/lib/vtx-color-picker/style/css.js.map +1 -1
  17. package/lib/vtx-color-picker/style/index.js.map +1 -1
  18. package/lib/vtx-color-picker/style/index.less +12 -12
  19. package/lib/vtx-combogrid/Combogrid.js.map +1 -1
  20. package/lib/vtx-combogrid/index.js.map +1 -1
  21. package/lib/vtx-combogrid/style/css.js.map +1 -1
  22. package/lib/vtx-combogrid/style/index.js.map +1 -1
  23. package/lib/vtx-combogrid/style/index.less +29 -29
  24. package/lib/vtx-datagrid/Alert.js.map +1 -1
  25. package/lib/vtx-datagrid/ColumnSetting.js.map +1 -1
  26. package/lib/vtx-datagrid/ResizeableTitle.js.map +1 -1
  27. package/lib/vtx-datagrid/index.js.map +1 -1
  28. package/lib/vtx-datagrid/renderColumnButtons.js.map +1 -1
  29. package/lib/vtx-datagrid/style/css.js.map +1 -1
  30. package/lib/vtx-datagrid/style/index.js.map +1 -1
  31. package/lib/vtx-datagrid/style/index.less +193 -193
  32. package/lib/vtx-date-picker/QdatePicker.js.map +1 -1
  33. package/lib/vtx-date-picker/generatePicker.js.map +1 -1
  34. package/lib/vtx-date-picker/index.js.map +1 -1
  35. package/lib/vtx-date-picker/style/css.js.map +1 -1
  36. package/lib/vtx-date-picker/style/index.js.map +1 -1
  37. package/lib/vtx-date-picker/style/index.less +38 -38
  38. package/lib/vtx-editor/index.js.map +1 -1
  39. package/lib/vtx-editor/style/css.js.map +1 -1
  40. package/lib/vtx-editor/style/index.js.map +1 -1
  41. package/lib/vtx-editor/style/index.less +8 -8
  42. package/lib/vtx-ellipsis-text/index.js.map +1 -1
  43. package/lib/vtx-ellipsis-text/style/css.js.map +1 -1
  44. package/lib/vtx-ellipsis-text/style/index.js.map +1 -1
  45. package/lib/vtx-ellipsis-text/style/index.less +13 -13
  46. package/lib/vtx-export/index.js +8 -8
  47. package/lib/vtx-export/index.js.map +1 -1
  48. package/lib/vtx-export/style/css.js.map +1 -1
  49. package/lib/vtx-export/style/index.js.map +1 -1
  50. package/lib/vtx-export/style/index.less +6 -6
  51. package/lib/vtx-form-layout/Card.js.map +1 -1
  52. package/lib/vtx-form-layout/Divider.js.map +1 -1
  53. package/lib/vtx-form-layout/FormItem.js.map +1 -1
  54. package/lib/vtx-form-layout/Pane.js.map +1 -1
  55. package/lib/vtx-form-layout/Row.js.map +1 -1
  56. package/lib/vtx-form-layout/context.js.map +1 -1
  57. package/lib/vtx-form-layout/demo/Modal.less +43 -43
  58. package/lib/vtx-form-layout/index.js.map +1 -1
  59. package/lib/vtx-form-layout/style/css.js.map +1 -1
  60. package/lib/vtx-form-layout/style/index.js.map +1 -1
  61. package/lib/vtx-form-layout/style/index.less +211 -211
  62. package/lib/vtx-image/Image.js.map +1 -1
  63. package/lib/vtx-image/Preview.js.map +1 -1
  64. package/lib/vtx-image/PreviewGroup.js.map +1 -1
  65. package/lib/vtx-image/index.js.map +1 -1
  66. package/lib/vtx-image/style/css.js.map +1 -1
  67. package/lib/vtx-image/style/index.js.map +1 -1
  68. package/lib/vtx-image/style/index.less +63 -63
  69. package/lib/vtx-import/index.js.map +1 -1
  70. package/lib/vtx-import/result.js.map +1 -1
  71. package/lib/vtx-import/style/css.js.map +1 -1
  72. package/lib/vtx-import/style/index.js.map +1 -1
  73. package/lib/vtx-import/style/index.less +8 -8
  74. package/lib/vtx-import2/CheckResult.js +46 -0
  75. package/lib/vtx-import2/CheckResult.js.map +1 -0
  76. package/lib/vtx-import2/Content.js +110 -0
  77. package/lib/vtx-import2/Content.js.map +1 -0
  78. package/lib/vtx-import2/DownloadSvg.js +51 -0
  79. package/lib/vtx-import2/DownloadSvg.js.map +1 -0
  80. package/lib/vtx-import2/ImportResult.js +52 -0
  81. package/lib/vtx-import2/ImportResult.js.map +1 -0
  82. package/lib/vtx-import2/UploadSvg.js +51 -0
  83. package/lib/vtx-import2/UploadSvg.js.map +1 -0
  84. package/lib/vtx-import2/index.js +223 -0
  85. package/lib/vtx-import2/index.js.map +1 -0
  86. package/lib/vtx-import2/style/css.js +10 -0
  87. package/lib/vtx-import2/style/css.js.map +1 -0
  88. package/lib/vtx-import2/style/index.css +125 -0
  89. package/lib/vtx-import2/style/index.js +10 -0
  90. package/lib/vtx-import2/style/index.js.map +1 -0
  91. package/lib/vtx-import2/style/index.less +102 -0
  92. package/lib/vtx-input/TextArea.js.map +1 -1
  93. package/lib/vtx-input/index.js.map +1 -1
  94. package/lib/vtx-input/style/css.js.map +1 -1
  95. package/lib/vtx-input/style/index.js.map +1 -1
  96. package/lib/vtx-input/style/index.less +24 -24
  97. package/lib/vtx-input/useLength.js.map +1 -1
  98. package/lib/vtx-modal/Title.js.map +1 -1
  99. package/lib/vtx-modal/index.js +2 -2
  100. package/lib/vtx-modal/index.js.map +1 -1
  101. package/lib/vtx-modal/style/css.js.map +1 -1
  102. package/lib/vtx-modal/style/index.js.map +1 -1
  103. package/lib/vtx-modal/style/index.less +95 -95
  104. package/lib/vtx-page-layout/Basic.js +2 -2
  105. package/lib/vtx-page-layout/Basic.js.map +1 -1
  106. package/lib/vtx-page-layout/Content.js.map +1 -1
  107. package/lib/vtx-page-layout/Pane.js.map +1 -1
  108. package/lib/vtx-page-layout/TableLayout.js +10 -10
  109. package/lib/vtx-page-layout/TableLayout.js.map +1 -1
  110. package/lib/vtx-page-layout/TableWrap.js.map +1 -1
  111. package/lib/vtx-page-layout/container.js.map +1 -1
  112. package/lib/vtx-page-layout/index.js.map +1 -1
  113. package/lib/vtx-page-layout/style/css.js.map +1 -1
  114. package/lib/vtx-page-layout/style/index.js.map +1 -1
  115. package/lib/vtx-page-layout/style/index.less +138 -138
  116. package/lib/vtx-rps-frame/index.js.map +1 -1
  117. package/lib/vtx-rps-frame/style/css.js.map +1 -1
  118. package/lib/vtx-rps-frame/style/index.js.map +1 -1
  119. package/lib/vtx-rps-frame/style/index.less +8 -8
  120. package/lib/vtx-scrollable-row/index.js.map +1 -1
  121. package/lib/vtx-scrollable-row/style/css.js.map +1 -1
  122. package/lib/vtx-scrollable-row/style/index.js.map +1 -1
  123. package/lib/vtx-scrollable-row/style/index.less +113 -113
  124. package/lib/vtx-search/VtxCol.js.map +1 -1
  125. package/lib/vtx-search/VtxRow.js.map +1 -1
  126. package/lib/vtx-search/index.js.map +1 -1
  127. package/lib/vtx-search/style/css.js.map +1 -1
  128. package/lib/vtx-search/style/index.js.map +1 -1
  129. package/lib/vtx-search/style/index.less +83 -83
  130. package/lib/vtx-search-map-input/index.js +6 -2
  131. package/lib/vtx-search-map-input/index.js.map +1 -1
  132. package/lib/vtx-search-map-input/style/css.js.map +1 -1
  133. package/lib/vtx-search-map-input/style/index.js.map +1 -1
  134. package/lib/vtx-select/index.js.map +1 -1
  135. package/lib/vtx-select/style/css.js.map +1 -1
  136. package/lib/vtx-select/style/index.js.map +1 -1
  137. package/lib/vtx-select/style/index.less +68 -68
  138. package/lib/vtx-signature/index.js.map +1 -1
  139. package/lib/vtx-signature/style/css.js.map +1 -1
  140. package/lib/vtx-signature/style/index.js.map +1 -1
  141. package/lib/vtx-signature/style/index.less +33 -33
  142. package/lib/vtx-split-pane/Pane.js.map +1 -1
  143. package/lib/vtx-split-pane/Resizer.js.map +1 -1
  144. package/lib/vtx-split-pane/SplitPane.js +4 -4
  145. package/lib/vtx-split-pane/SplitPane.js.map +1 -1
  146. package/lib/vtx-split-pane/index.js.map +1 -1
  147. package/lib/vtx-split-pane/style/css.js.map +1 -1
  148. package/lib/vtx-split-pane/style/index.js.map +1 -1
  149. package/lib/vtx-split-pane/style/index.less +76 -76
  150. package/lib/vtx-statistics-column/Back.js.map +1 -1
  151. package/lib/vtx-statistics-column/Item.js.map +1 -1
  152. package/lib/vtx-statistics-column/Total.js.map +1 -1
  153. package/lib/vtx-statistics-column/context.js.map +1 -1
  154. package/lib/vtx-statistics-column/index.js.map +1 -1
  155. package/lib/vtx-statistics-column/style/css.js.map +1 -1
  156. package/lib/vtx-statistics-column/style/index.js.map +1 -1
  157. package/lib/vtx-statistics-column/style/index.less +59 -59
  158. package/lib/vtx-time-picker/index.js.map +1 -1
  159. package/lib/vtx-time-picker/style/css.js.map +1 -1
  160. package/lib/vtx-time-picker/style/index.js.map +1 -1
  161. package/lib/vtx-upload/FilePreview.js.map +1 -1
  162. package/lib/vtx-upload/index.js +13 -2
  163. package/lib/vtx-upload/index.js.map +1 -1
  164. package/lib/vtx-upload/style/css.js.map +1 -1
  165. package/lib/vtx-upload/style/index.js.map +1 -1
  166. package/lib/vtx-upload/style/index.less +61 -61
  167. package/lib/vtx-ztree/index.js +2 -2
  168. package/lib/vtx-ztree/index.js.map +1 -1
  169. package/lib/vtx-ztree/style/css.js.map +1 -1
  170. package/lib/vtx-ztree/style/index.js.map +1 -1
  171. package/lib/vtx-ztree/style/index.less +45 -45
  172. package/lib/vtx-ztree-select/index.js.map +1 -1
  173. package/lib/vtx-ztree-select/style/css.js.map +1 -1
  174. package/lib/vtx-ztree-select/style/index.js.map +1 -1
  175. package/lib/vtx-ztree-select/style/index.less +74 -74
  176. package/package.json +123 -123
@@ -1,59 +1,59 @@
1
- @import (reference) '~antd/lib/style/themes/index.less';
2
- @prefix-cls: vtx-statistics-column;
3
- @statistics-text-color: fade(@black, 65%);
4
-
5
- .@{prefix-cls} {
6
- position: relative;
7
- padding: 20px;
8
- background: @component-background;
9
- &-nowrap {
10
- overflow: hidden;
11
- white-space: nowrap;
12
- }
13
- &-item {
14
- position: relative;
15
- display: inline-block;
16
- text-align: center;
17
- &-space {
18
- padding: 0 24px;
19
- }
20
- &--label {
21
- margin-bottom: 8px;
22
- color: @statistics-text-color;
23
- line-height: 1;
24
- }
25
- &--value {
26
- color: @text-color;
27
- font-size: 24px;
28
- line-height: 1;
29
- }
30
- &_pointer {
31
- cursor: pointer;
32
- }
33
- &-total &--value {
34
- color: #13c2c2;
35
- }
36
- &-total {
37
- &::after {
38
- position: absolute;
39
- top: 50%;
40
- right: 0;
41
- width: 1px;
42
- height: 42px;
43
- background: #e8e8e8;
44
- transform: translate(0, -50%);
45
- content: '';
46
- }
47
- }
48
- }
49
- &-back {
50
- position: absolute;
51
- top: 0;
52
- left: 0;
53
- padding: 0 5px;
54
- color: @component-background;
55
- background-color: @primary-color;
56
- border-radius: @border-radius-base 0 @border-radius-base 0;
57
- cursor: pointer;
58
- }
59
- }
1
+ @import (reference) '~antd/lib/style/themes/index.less';
2
+ @prefix-cls: vtx-statistics-column;
3
+ @statistics-text-color: fade(@black, 65%);
4
+
5
+ .@{prefix-cls} {
6
+ position: relative;
7
+ padding: 20px;
8
+ background: @component-background;
9
+ &-nowrap {
10
+ overflow: hidden;
11
+ white-space: nowrap;
12
+ }
13
+ &-item {
14
+ position: relative;
15
+ display: inline-block;
16
+ text-align: center;
17
+ &-space {
18
+ padding: 0 24px;
19
+ }
20
+ &--label {
21
+ margin-bottom: 8px;
22
+ color: @statistics-text-color;
23
+ line-height: 1;
24
+ }
25
+ &--value {
26
+ color: @text-color;
27
+ font-size: 24px;
28
+ line-height: 1;
29
+ }
30
+ &_pointer {
31
+ cursor: pointer;
32
+ }
33
+ &-total &--value {
34
+ color: #13c2c2;
35
+ }
36
+ &-total {
37
+ &::after {
38
+ position: absolute;
39
+ top: 50%;
40
+ right: 0;
41
+ width: 1px;
42
+ height: 42px;
43
+ background: #e8e8e8;
44
+ transform: translate(0, -50%);
45
+ content: '';
46
+ }
47
+ }
48
+ }
49
+ &-back {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+ padding: 0 5px;
54
+ color: @component-background;
55
+ background-color: @primary-color;
56
+ border-radius: @border-radius-base 0 @border-radius-base 0;
57
+ cursor: pointer;
58
+ }
59
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["VtxTimePicker","props","ref","value","format","rest","newValue","moment","isMoment","React","forwardRef","propTypes","PropTypes","oneOfType","string","instanceOf"],"sources":["vtx-time-picker/index.jsx"],"sourcesContent":["import React from 'react';\nimport TimePicker from 'antd/lib/time-picker';\nimport moment from 'moment';\nimport PropTypes from 'prop-types';\n\nfunction VtxTimePicker(props, ref) {\n const { value, format = 'HH:mm:ss', ...rest } = props;\n const newValue = value ? (moment.isMoment(value) ? value : moment(value, format)) : null;\n return <TimePicker value={newValue} format={format} {...rest} ref={ref} />;\n}\n\nexport default React.forwardRef(VtxTimePicker);\n\nVtxTimePicker.propTypes = {\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(moment)]),\n format: PropTypes.string,\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8BC,GAA9B,EAAmC;EAC/B,IAAQC,KAAR,GAAgDF,KAAhD,CAAQE,KAAR;EAAA,oBAAgDF,KAAhD,CAAeG,MAAf;EAAA,IAAeA,MAAf,8BAAwB,UAAxB;EAAA,IAAuCC,IAAvC,4BAAgDJ,KAAhD;;EACA,IAAMK,QAAQ,GAAGH,KAAK,GAAII,kBAAA,CAAOC,QAAP,CAAgBL,KAAhB,IAAyBA,KAAzB,GAAiC,IAAAI,kBAAA,EAAOJ,KAAP,EAAcC,MAAd,CAArC,GAA8D,IAApF;EACA,oBAAO,gCAAC,sBAAD;IAAY,KAAK,EAAEE,QAAnB;IAA6B,MAAM,EAAEF;EAArC,GAAiDC,IAAjD;IAAuD,GAAG,EAAEH;EAA5D,GAAP;AACH;;4BAEcO,iBAAA,CAAMC,UAAN,CAAiBV,aAAjB,C;;;AAEfA,aAAa,CAACW,SAAd,GAA0B;EACtBR,KAAK,EAAES,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,MAAX,EAAmBF,qBAAA,CAAUG,UAAV,CAAqBR,kBAArB,CAAnB,CAApB,CADe;EAEtBH,MAAM,EAAEQ,qBAAA,CAAUE;AAFI,CAA1B"}
1
+ {"version":3,"file":"index.js","names":["VtxTimePicker","props","ref","value","format","rest","newValue","moment","isMoment","React","forwardRef","propTypes","PropTypes","oneOfType","string","instanceOf"],"sources":["vtx-time-picker/index.jsx"],"sourcesContent":["import React from 'react';\r\nimport TimePicker from 'antd/lib/time-picker';\r\nimport moment from 'moment';\r\nimport PropTypes from 'prop-types';\r\n\r\nfunction VtxTimePicker(props, ref) {\r\n const { value, format = 'HH:mm:ss', ...rest } = props;\r\n const newValue = value ? (moment.isMoment(value) ? value : moment(value, format)) : null;\r\n return <TimePicker value={newValue} format={format} {...rest} ref={ref} />;\r\n}\r\n\r\nexport default React.forwardRef(VtxTimePicker);\r\n\r\nVtxTimePicker.propTypes = {\r\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.instanceOf(moment)]),\r\n format: PropTypes.string,\r\n};\r\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,SAASA,aAAT,CAAuBC,KAAvB,EAA8BC,GAA9B,EAAmC;EAC/B,IAAQC,KAAR,GAAgDF,KAAhD,CAAQE,KAAR;EAAA,oBAAgDF,KAAhD,CAAeG,MAAf;EAAA,IAAeA,MAAf,8BAAwB,UAAxB;EAAA,IAAuCC,IAAvC,4BAAgDJ,KAAhD;;EACA,IAAMK,QAAQ,GAAGH,KAAK,GAAII,kBAAA,CAAOC,QAAP,CAAgBL,KAAhB,IAAyBA,KAAzB,GAAiC,IAAAI,kBAAA,EAAOJ,KAAP,EAAcC,MAAd,CAArC,GAA8D,IAApF;EACA,oBAAO,gCAAC,sBAAD;IAAY,KAAK,EAAEE,QAAnB;IAA6B,MAAM,EAAEF;EAArC,GAAiDC,IAAjD;IAAuD,GAAG,EAAEH;EAA5D,GAAP;AACH;;4BAEcO,iBAAA,CAAMC,UAAN,CAAiBV,aAAjB,C;;;AAEfA,aAAa,CAACW,SAAd,GAA0B;EACtBR,KAAK,EAAES,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,MAAX,EAAmBF,qBAAA,CAAUG,UAAV,CAAqBR,kBAArB,CAAnB,CAApB,CADe;EAEtBH,MAAM,EAAEQ,qBAAA,CAAUE;AAFI,CAA1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\n"],"mappings":";;AAAA"}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\r\n"],"mappings":";;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\n"],"mappings":";;AAAA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-time-picker/style/index.js"],"sourcesContent":["import 'antd/lib/time-picker/style/index';\r\n"],"mappings":";;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilePreview.js","names":["Preview","props","type","name","url","downloadUrl","visible","onCancel","player","timer","setTimeout","document","getElementById","Player","id","width","height","controlPlugins","volume","playbackRate","modalProps","title","cancel","footer","createForm","wrapClassName","destroy","clearTimeout","border","propTypes","PropTypes","string","bool","func","reqURL","formDom","createElement","method","action","style","body","appendChild","submit","remove"],"sources":["vtx-upload/FilePreview.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Player from 'xgplayer/dist/simple_player';\nimport { volume, playbackRate } from 'xgplayer/dist/controls';\nimport Modal from 'antd/lib/modal';\nimport Button from 'antd/lib/button';\n\nfunction Preview(props) {\n const { type, name, url, downloadUrl, visible, onCancel } = props;\n\n let player = null,\n timer = null;\n timer = setTimeout(() => {\n if (type == 'video' && document.getElementById('vs')) {\n player = new Player({\n id: 'vs',\n url: url,\n width: 600,\n height: 337.5,\n controlPlugins: [\n volume, //音量\n playbackRate, //播放倍速\n ],\n playbackRate: [0.5, 0.75, 1, 1.5, 2], //传入倍速可选数组\n });\n }\n }, 500);\n\n let modalProps = {\n title: name,\n visible,\n onCancel: () => cancel(),\n footer: [\n <Button key=\"close\" onClick={() => cancel()}>\n 关闭\n </Button>,\n <Button key=\"download\" type=\"primary\" onClick={() => createForm(downloadUrl)}>\n 下载\n </Button>,\n ],\n };\n if (type == 'file') {\n modalProps = {\n ...modalProps,\n wrapClassName: 'vtx-modal-maxClass',\n };\n }\n if (type == 'video') {\n modalProps = {\n ...modalProps,\n width: 648,\n };\n }\n\n const cancel = () => {\n //销毁播放器\n player && player.destroy();\n timer && clearTimeout(timer);\n onCancel();\n };\n\n return (\n <Modal {...modalProps}>\n {type == 'file' ? (\n <iframe\n src={url}\n style={{ height: '100%', width: '100%', border: 'none' }}\n ></iframe>\n ) : null}\n {type == 'video' ? <div id=\"vs\"></div> : null}\n </Modal>\n );\n}\n\nPreview.propTypes = {\n type: PropTypes.string,\n name: PropTypes.string,\n url: PropTypes.string,\n visible: PropTypes.bool,\n onCancel: PropTypes.func,\n downloadUrl: PropTypes.string,\n};\n\nexport default Preview;\n\nconst createForm = function(reqURL) {\n const formDom = document.createElement('form'); // 定义一个form表单\n formDom.method = 'post';\n formDom.action = reqURL;\n formDom.style = 'display:none';\n document.body.appendChild(formDom); // 将表单放置在web中\n formDom.submit(); // 表单提交\n formDom.remove();\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilePreview.js","names":["Preview","props","type","name","url","downloadUrl","visible","onCancel","player","timer","setTimeout","document","getElementById","Player","id","width","height","controlPlugins","volume","playbackRate","modalProps","title","cancel","footer","createForm","wrapClassName","destroy","clearTimeout","border","propTypes","PropTypes","string","bool","func","reqURL","formDom","createElement","method","action","style","body","appendChild","submit","remove"],"sources":["vtx-upload/FilePreview.jsx"],"sourcesContent":["import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Player from 'xgplayer/dist/simple_player';\r\nimport { volume, playbackRate } from 'xgplayer/dist/controls';\r\nimport Modal from 'antd/lib/modal';\r\nimport Button from 'antd/lib/button';\r\n\r\nfunction Preview(props) {\r\n const { type, name, url, downloadUrl, visible, onCancel } = props;\r\n\r\n let player = null,\r\n timer = null;\r\n timer = setTimeout(() => {\r\n if (type == 'video' && document.getElementById('vs')) {\r\n player = new Player({\r\n id: 'vs',\r\n url: url,\r\n width: 600,\r\n height: 337.5,\r\n controlPlugins: [\r\n volume, //音量\r\n playbackRate, //播放倍速\r\n ],\r\n playbackRate: [0.5, 0.75, 1, 1.5, 2], //传入倍速可选数组\r\n });\r\n }\r\n }, 500);\r\n\r\n let modalProps = {\r\n title: name,\r\n visible,\r\n onCancel: () => cancel(),\r\n footer: [\r\n <Button key=\"close\" onClick={() => cancel()}>\r\n 关闭\r\n </Button>,\r\n <Button key=\"download\" type=\"primary\" onClick={() => createForm(downloadUrl)}>\r\n 下载\r\n </Button>,\r\n ],\r\n };\r\n if (type == 'file') {\r\n modalProps = {\r\n ...modalProps,\r\n wrapClassName: 'vtx-modal-maxClass',\r\n };\r\n }\r\n if (type == 'video') {\r\n modalProps = {\r\n ...modalProps,\r\n width: 648,\r\n };\r\n }\r\n\r\n const cancel = () => {\r\n //销毁播放器\r\n player && player.destroy();\r\n timer && clearTimeout(timer);\r\n onCancel();\r\n };\r\n\r\n return (\r\n <Modal {...modalProps}>\r\n {type == 'file' ? (\r\n <iframe\r\n src={url}\r\n style={{ height: '100%', width: '100%', border: 'none' }}\r\n ></iframe>\r\n ) : null}\r\n {type == 'video' ? <div id=\"vs\"></div> : null}\r\n </Modal>\r\n );\r\n}\r\n\r\nPreview.propTypes = {\r\n type: PropTypes.string,\r\n name: PropTypes.string,\r\n url: PropTypes.string,\r\n visible: PropTypes.bool,\r\n onCancel: PropTypes.func,\r\n downloadUrl: PropTypes.string,\r\n};\r\n\r\nexport default Preview;\r\n\r\nconst createForm = function(reqURL) {\r\n const formDom = document.createElement('form'); // 定义一个form表单\r\n formDom.method = 'post';\r\n formDom.action = reqURL;\r\n formDom.style = 'display:none';\r\n document.body.appendChild(formDom); // 将表单放置在web中\r\n formDom.submit(); // 表单提交\r\n formDom.remove();\r\n};\r\n"],"mappings":"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"}
@@ -148,12 +148,23 @@ var VtxUpload = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
148
148
  _useSetState2 = _slicedToArray(_useSetState, 2),
149
149
  vPrev = _useSetState2[0],
150
150
  setVPrev = _useSetState2[1]; //文件预览相关
151
+ // 参数中拼接token
151
152
 
152
153
 
154
+ function joinToken(str) {
155
+ if (str.indexOf('token=') === -1 && str.indexOf('?') > -1) {
156
+ return str.replace("?", "?token=".concat((0, _getUrlParam["default"])("token") || '', "&"));
157
+ } else if (str.indexOf('?') === -1) {
158
+ return str + "?token=".concat((0, _getUrlParam["default"])("token") || '');
159
+ }
160
+
161
+ return str;
162
+ }
163
+
153
164
  var url = {
154
165
  action: props.action || initUrl.action,
155
- downloadUrl: props.downloadUrl || initUrl.downloadUrl,
156
- thumbnailUrl: props.thumbnailUrl || initUrl.thumbnailUrl //previewUrl: props.previewUrl || initUrl.previewUrl,
166
+ downloadUrl: joinToken(props.downloadUrl || initUrl.downloadUrl),
167
+ thumbnailUrl: joinToken(props.thumbnailUrl || initUrl.thumbnailUrl) //previewUrl: props.previewUrl || initUrl.previewUrl,
157
168
 
158
169
  };
159
170
  var action = url.action,
@@ -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","rest","useThumbnail","undefined","useState","fileList","setFileList","imageViewer","setImageViewer","imageList","setImageList","imageCt","setImageCt","useSetState","vPrev","setVPrev","useEffect","getSynFileList","Array","isArray","imagelist","map","file","indexOf","push","Viewer","getConfig","token","getUrlParam","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","onPreview","downloadFile","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"],"sources":["vtx-upload/index.jsx"],"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/lib/upload';\nimport Button from 'antd/lib/button';\nimport InboxOutlined from '@ant-design/icons/InboxOutlined';\nimport PlusOutlined from '@ant-design/icons/PlusOutlined';\nimport UploadOutlined from '@ant-design/icons/UploadOutlined';\nimport message from 'antd/lib/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===undefined?true: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' && info.file.status !== 'removed') {\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 return 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 <InboxOutlined />\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 <PlusOutlined style={{ fontSize: '28px', color: '#999' }} />\n <div className=\"ant-upload-text\">上传</div>\n </div>\n ) : (\n <Button>\n <UploadOutlined />\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"],"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","rest","useThumbnail","undefined","useState","fileList","setFileList","imageViewer","setImageViewer","imageList","setImageList","imageCt","setImageCt","useSetState","vPrev","setVPrev","joinToken","str","indexOf","replace","getUrlParam","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","onPreview","downloadFile","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"],"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 getUrlParam from '../_util/getUrlParam';\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 ...rest\r\n } = props;\r\n // 是否使用缩略图\r\n const useThumbnail =\r\n (props.useThumbnail===undefined?true:props.useThumbnail) && (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=${getUrlParam(\"token\") || ''}&`);\r\n }else if(str.indexOf('?') === -1){\r\n return str + `?token=${getUrlParam(\"token\") || ''}`;\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(props.thumbnailUrl || initUrl.thumbnailUrl),\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 = getUrlParam('token') || '';\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 };\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 };\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 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 <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 <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,\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};\r\nexport default VtxUpload;\r\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\nimport 'antd/lib/button/style';\nimport 'antd/lib/message/style';\nimport 'antd/lib/modal/style';\nimport 'antd/lib/button/style';\nimport 'viewerjs/dist/viewer.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
1
+ {"version":3,"file":"css.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\r\nimport 'antd/lib/button/style';\r\nimport 'antd/lib/message/style';\r\nimport 'antd/lib/modal/style';\r\nimport 'antd/lib/button/style';\r\nimport 'viewerjs/dist/viewer.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\nimport 'antd/lib/button/style';\nimport 'antd/lib/message/style';\nimport 'antd/lib/modal/style';\nimport 'antd/lib/button/style';\nimport 'viewerjs/dist/viewer.css';\nimport './index.less';\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["vtx-upload/style/index.js"],"sourcesContent":["import 'antd/lib/upload/style';\r\nimport 'antd/lib/button/style';\r\nimport 'antd/lib/message/style';\r\nimport 'antd/lib/modal/style';\r\nimport 'antd/lib/button/style';\r\nimport 'viewerjs/dist/viewer.css';\r\nimport './index.less';\r\n"],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA"}
@@ -1,61 +1,61 @@
1
- @import (reference) '~antd/lib/style/themes/index.less';
2
-
3
- .vtx-ui-upload-uploadct {
4
- overflow: hidden; //upload组件由于float会失去高度
5
- .ant-upload-list-item-info {
6
- &::before {
7
- height: 0 !important;
8
- }
9
- }
10
- }
11
- .vtx_ui_upload_onlinepreview {
12
- width: 100%;
13
- .vtx_ui_upload_previewLine {
14
- position: relative;
15
- padding: 0 8px;
16
- color: @primary-color;
17
- line-height: 25px;
18
- cursor: pointer;
19
- .vtx_ui_upload_iconHint {
20
- margin-right: 5px;
21
- color: #666;
22
- }
23
- .vtx_ui_upload_action_box {
24
- position: absolute;
25
- top: 2px;
26
- right: 8px;
27
- display: none;
28
- .vtx_ui_upload_action_btn {
29
- margin-left: 5px;
30
- color: #aaa;
31
- &:hover {
32
- color: #333;
33
- }
34
- }
35
- }
36
- &:hover {
37
- background-color: #ecf6fd;
38
- .vtx_ui_upload_action_box {
39
- display: inline-block;
40
- }
41
- }
42
- }
43
- }
44
-
45
- .vtx-modal-maxClass {
46
- .ant-modal {
47
- top: 0 !important;
48
- left: 0 !important;
49
- width: 100% !important;
50
- height: 100% !important;
51
- padding-bottom: 0 !important;
52
- overflow: hidden;
53
- .ant-modal-content {
54
- height: 100%;
55
- .ant-modal-body {
56
- height: e('calc(100% - 108px)') !important;
57
- background-color: #fbfbfb;
58
- }
59
- }
60
- }
61
- }
1
+ @import (reference) '~antd/lib/style/themes/index.less';
2
+
3
+ .vtx-ui-upload-uploadct {
4
+ overflow: hidden; //upload组件由于float会失去高度
5
+ .ant-upload-list-item-info {
6
+ &::before {
7
+ height: 0 !important;
8
+ }
9
+ }
10
+ }
11
+ .vtx_ui_upload_onlinepreview {
12
+ width: 100%;
13
+ .vtx_ui_upload_previewLine {
14
+ position: relative;
15
+ padding: 0 8px;
16
+ color: @primary-color;
17
+ line-height: 25px;
18
+ cursor: pointer;
19
+ .vtx_ui_upload_iconHint {
20
+ margin-right: 5px;
21
+ color: #666;
22
+ }
23
+ .vtx_ui_upload_action_box {
24
+ position: absolute;
25
+ top: 2px;
26
+ right: 8px;
27
+ display: none;
28
+ .vtx_ui_upload_action_btn {
29
+ margin-left: 5px;
30
+ color: #aaa;
31
+ &:hover {
32
+ color: #333;
33
+ }
34
+ }
35
+ }
36
+ &:hover {
37
+ background-color: #ecf6fd;
38
+ .vtx_ui_upload_action_box {
39
+ display: inline-block;
40
+ }
41
+ }
42
+ }
43
+ }
44
+
45
+ .vtx-modal-maxClass {
46
+ .ant-modal {
47
+ top: 0 !important;
48
+ left: 0 !important;
49
+ width: 100% !important;
50
+ height: 100% !important;
51
+ padding-bottom: 0 !important;
52
+ overflow: hidden;
53
+ .ant-modal-content {
54
+ height: 100%;
55
+ .ant-modal-body {
56
+ height: e('calc(100% - 108px)') !important;
57
+ background-color: #fbfbfb;
58
+ }
59
+ }
60
+ }
61
+ }
@@ -462,8 +462,8 @@ var VtxZtree = /*#__PURE__*/function (_React$Component) {
462
462
 
463
463
  processShowNodes(zTreeObj, nodesShow, _keywords); // nodes should be reprocessed to show correctly
464
464
  }
465
- /**
466
- * reprocess of nodes before showing
465
+ /**
466
+ * reprocess of nodes before showing
467
467
  */
468
468
 
469
469