@vtx/components 4.0.0-beta.4 → 4.0.0-beta.40

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 (463) hide show
  1. package/es/index.js +76 -0
  2. package/es/utils/columnSort.js +23 -0
  3. package/es/utils/components/DropdownFooter/index.js +53 -0
  4. package/es/utils/components/DropdownFooter/style.js +25 -0
  5. package/es/utils/components/ErrorBoundary/index.js +53 -0
  6. package/es/utils/components/FieldLabel/index.js +144 -0
  7. package/es/utils/components/FieldLabel/style.js +93 -0
  8. package/es/utils/components/FilterDropdown/index.js +62 -0
  9. package/es/utils/components/FilterDropdown/style.js +26 -0
  10. package/es/utils/components/InlineErrorFormItem/index.js +156 -0
  11. package/es/utils/components/InlineErrorFormItem/style.js +47 -0
  12. package/es/utils/components/LabelIconTip/index.js +68 -0
  13. package/es/utils/components/LabelIconTip/style.js +47 -0
  14. package/es/utils/components/ProFormContext/index.js +41 -0
  15. package/es/utils/conversionMomentValue/index.js +163 -0
  16. package/es/utils/dateArrayFormatter/index.js +36 -0
  17. package/es/utils/filterSpecialCharacters.js +83 -0
  18. package/es/utils/genColumnKey.js +6 -0
  19. package/es/utils/genCopyable/index.js +59 -0
  20. package/es/utils/getComponentProps.js +7 -0
  21. package/es/utils/getFieldPropsOrFormItemProps/index.js +16 -0
  22. package/es/utils/getPlaceholder.js +5 -0
  23. package/es/utils/getToken.js +6 -0
  24. package/es/utils/hooks/useDebounceFn/index.js +71 -0
  25. package/es/utils/hooks/useDebounceValue/index.js +40 -0
  26. package/es/utils/hooks/useDeepCompareEffect/index.js +24 -0
  27. package/es/utils/hooks/useDeepCompareMemo/index.js +15 -0
  28. package/es/utils/hooks/useDocumentTitle/index.js +10 -0
  29. package/es/utils/hooks/useForceRender/index.js +18 -0
  30. package/es/utils/hooks/useLatest/index.js +10 -0
  31. package/es/utils/hooks/usePrevious/index.js +8 -0
  32. package/es/utils/hooks/useReactiveRef/index.js +7 -0
  33. package/es/utils/hooks/useRefCallback/index.js +26 -0
  34. package/es/utils/hooks/useRefFunction/index.js +13 -0
  35. package/es/utils/index.js +72 -0
  36. package/es/utils/isBrowser/index.d.ts +9 -0
  37. package/es/utils/isBrowser/index.js +16 -0
  38. package/es/utils/isDeepEqualReact/index.js +95 -0
  39. package/es/utils/isDropdownValueType/index.js +7 -0
  40. package/es/utils/isFunction.js +3 -0
  41. package/es/utils/isImg/index.js +4 -0
  42. package/es/utils/isNil/index.js +3 -0
  43. package/es/utils/isObject/index.js +3 -0
  44. package/es/utils/isObject.js +3 -0
  45. package/es/utils/isUrl/index.js +17 -0
  46. package/es/utils/merge/index.js +36 -0
  47. package/es/utils/nanoid/index.js +29 -0
  48. package/es/utils/omitBoolean/index.js +11 -0
  49. package/es/utils/omitUndefined/index.js +12 -0
  50. package/es/utils/omitUndefinedAndEmptyArr/index.js +14 -0
  51. package/es/utils/parseValueToMoment/index.js +28 -0
  52. package/es/utils/pickProFormItemProps/index.js +15 -0
  53. package/es/utils/pickProProps/index.js +15 -0
  54. package/es/utils/proFieldParsingText/index.js +161 -0
  55. package/es/utils/runFunction/index.js +10 -0
  56. package/es/utils/sortByGivenOrder.js +36 -0
  57. package/es/utils/sortByKeyArrayExtract.js +38 -0
  58. package/es/utils/stringify/index.js +10 -0
  59. package/es/utils/transformKeySubmitValue/index.js +330 -0
  60. package/es/utils/useColSize.js +20 -0
  61. package/es/utils/useEditableArray/index.js +906 -0
  62. package/es/utils/useEditableMap/index.js +214 -0
  63. package/es/utils/useInterval.js +12 -0
  64. package/es/utils/useMediaQuery/index.js +106 -0
  65. package/es/utils/useMediaQuery/query.js +30 -0
  66. package/es/utils/useMountMergeState/index.js +2 -0
  67. package/es/utils/useSet.js +38 -0
  68. package/es/version.js +3 -0
  69. package/es/vtx-color-picker/index.js +175 -0
  70. package/es/vtx-color-picker/style/index.js +54 -0
  71. package/es/vtx-combogrid/Combogrid.js +252 -0
  72. package/es/vtx-combogrid/index.js +121 -0
  73. package/es/vtx-combogrid/style/index.js +42 -0
  74. package/es/vtx-datagrid/Alert/index.js +49 -0
  75. package/es/vtx-datagrid/Alert/style.js +44 -0
  76. package/es/vtx-datagrid/Store/Provide.js +493 -0
  77. package/es/vtx-datagrid/ToolBar/components/ColumnSetting/index.js +531 -0
  78. package/es/vtx-datagrid/ToolBar/components/ColumnSetting/style.js +86 -0
  79. package/es/vtx-datagrid/ToolBar/components/Density/index.js +53 -0
  80. package/es/vtx-datagrid/ToolBar/components/Fullscreen/index.js +77 -0
  81. package/es/vtx-datagrid/ToolBar/components/TableStyle/index.js +74 -0
  82. package/es/vtx-datagrid/ToolBar/index.js +88 -0
  83. package/es/vtx-datagrid/ToolBar/style.js +59 -0
  84. package/es/vtx-datagrid/index.js +434 -0
  85. package/es/vtx-datagrid/renderColumnButtons.js +117 -0
  86. package/es/vtx-datagrid/style/index.js +142 -0
  87. package/es/vtx-datagrid/style/index.less +242 -0
  88. package/es/vtx-date-picker/QdatePicker.js +152 -0
  89. package/es/vtx-date-picker/generatePicker.js +104 -0
  90. package/es/vtx-date-picker/index.js +49 -0
  91. package/es/vtx-date-picker/style/index.js +39 -0
  92. package/es/vtx-date-picker/style/index.less +39 -0
  93. package/es/vtx-descriptions/Descriptions.js +30 -0
  94. package/es/vtx-descriptions/index.js +3 -0
  95. package/es/vtx-descriptions/style/index.js +19 -0
  96. package/es/vtx-ellipsis-text/index.js +57 -0
  97. package/es/vtx-ellipsis-text/style/index.js +31 -0
  98. package/es/vtx-export/index.js +196 -0
  99. package/es/vtx-export/style/index.js +24 -0
  100. package/es/vtx-export-async/ColumnsSelect.js +63 -0
  101. package/es/vtx-export-async/History.js +260 -0
  102. package/es/vtx-export-async/index.js +429 -0
  103. package/es/vtx-export-async/style/index.js +49 -0
  104. package/es/vtx-export-async/util.js +51 -0
  105. package/es/vtx-form-layout/Card.js +74 -0
  106. package/es/vtx-form-layout/Divider.js +22 -0
  107. package/es/vtx-form-layout/FormItem.js +136 -0
  108. package/es/vtx-form-layout/Pane.js +52 -0
  109. package/es/vtx-form-layout/Row.js +19 -0
  110. package/es/vtx-form-layout/context.js +2 -0
  111. package/es/vtx-form-layout/index.js +80 -0
  112. package/es/vtx-form-layout/style/index.js +261 -0
  113. package/es/vtx-icon/index.js +115 -0
  114. package/es/vtx-icon/svg/alignRightOutlined.js +29 -0
  115. package/es/vtx-icon/svg/columnHeightOutlined.js +25 -0
  116. package/es/vtx-icon/svg/downOutlined.js +24 -0
  117. package/es/vtx-icon/svg/fullscreen.js +25 -0
  118. package/es/vtx-icon/svg/redoOutlined.js +29 -0
  119. package/es/vtx-icon/svg/rightOutlined.js +24 -0
  120. package/es/vtx-icon/svg/settingOutlined.js +29 -0
  121. package/es/vtx-image/Image.js +257 -0
  122. package/es/vtx-image/Preview.js +145 -0
  123. package/es/vtx-image/PreviewGroup.js +81 -0
  124. package/es/vtx-image/index.js +4 -0
  125. package/es/vtx-image/style/index.js +91 -0
  126. package/es/vtx-import/index.js +460 -0
  127. package/es/vtx-import/result.js +85 -0
  128. package/es/vtx-import/style/index.js +29 -0
  129. package/es/vtx-import2/CheckResult.js +45 -0
  130. package/es/vtx-import2/Content.js +104 -0
  131. package/es/vtx-import2/DownloadSvg.js +41 -0
  132. package/es/vtx-import2/ImportResult.js +57 -0
  133. package/es/vtx-import2/UploadSvg.js +41 -0
  134. package/es/vtx-import2/index.js +462 -0
  135. package/es/vtx-import2/style/index.js +151 -0
  136. package/es/vtx-input/TextArea/index.js +66 -0
  137. package/es/vtx-input/TextArea/style.js +30 -0
  138. package/es/vtx-input/index.js +92 -0
  139. package/es/vtx-input/style/index.js +24 -0
  140. package/es/vtx-input/useLength.js +21 -0
  141. package/es/vtx-modal/Title.js +34 -0
  142. package/es/vtx-modal/index.js +246 -0
  143. package/es/vtx-modal/style/index.js +111 -0
  144. package/es/vtx-page-layout/Basic.js +28 -0
  145. package/es/vtx-page-layout/Content.js +43 -0
  146. package/es/vtx-page-layout/Pane.js +40 -0
  147. package/es/vtx-page-layout/TabLayout.js +59 -0
  148. package/es/vtx-page-layout/TableLayout.js +173 -0
  149. package/es/vtx-page-layout/TableWrap.js +37 -0
  150. package/es/vtx-page-layout/TreeLayout.js +73 -0
  151. package/es/vtx-page-layout/container.js +69 -0
  152. package/es/vtx-page-layout/index.js +26 -0
  153. package/es/vtx-page-layout/style/index.js +129 -0
  154. package/es/vtx-provider/index.js +324 -0
  155. package/es/vtx-provider/intl.js +140 -0
  156. package/es/vtx-provider/locale/ar_EG.js +71 -0
  157. package/es/vtx-provider/locale/ca_ES.js +71 -0
  158. package/es/vtx-provider/locale/cs_CZ.js +74 -0
  159. package/es/vtx-provider/locale/de_DE.js +71 -0
  160. package/es/vtx-provider/locale/en_GB.js +73 -0
  161. package/es/vtx-provider/locale/en_US.js +189 -0
  162. package/es/vtx-provider/locale/es_ES.js +71 -0
  163. package/es/vtx-provider/locale/fa_IR.js +71 -0
  164. package/es/vtx-provider/locale/fr_FR.js +71 -0
  165. package/es/vtx-provider/locale/he_IL.js +74 -0
  166. package/es/vtx-provider/locale/hr_HR.js +71 -0
  167. package/es/vtx-provider/locale/id_ID.js +71 -0
  168. package/es/vtx-provider/locale/it_IT.js +71 -0
  169. package/es/vtx-provider/locale/ja_JP.js +71 -0
  170. package/es/vtx-provider/locale/ko_KR.js +71 -0
  171. package/es/vtx-provider/locale/mn_MN.js +71 -0
  172. package/es/vtx-provider/locale/ms_MY.js +71 -0
  173. package/es/vtx-provider/locale/nl_NL.js +74 -0
  174. package/es/vtx-provider/locale/pl_PL.js +71 -0
  175. package/es/vtx-provider/locale/pt_BR.js +71 -0
  176. package/es/vtx-provider/locale/ro_RO.js +74 -0
  177. package/es/vtx-provider/locale/ru_RU.js +71 -0
  178. package/es/vtx-provider/locale/sk_SK.js +74 -0
  179. package/es/vtx-provider/locale/sr_RS.js +71 -0
  180. package/es/vtx-provider/locale/sv_SE.js +74 -0
  181. package/es/vtx-provider/locale/th_TH.js +74 -0
  182. package/es/vtx-provider/locale/tr_TR.js +71 -0
  183. package/es/vtx-provider/locale/uk_UA.js +74 -0
  184. package/es/vtx-provider/locale/uz_UZ.js +71 -0
  185. package/es/vtx-provider/locale/vi_VN.js +71 -0
  186. package/es/vtx-provider/locale/zh_CN.js +201 -0
  187. package/es/vtx-provider/locale/zh_HK.js +83 -0
  188. package/es/vtx-provider/locale/zh_TW.js +74 -0
  189. package/es/vtx-provider/typing/layoutToken.js +60 -0
  190. package/es/vtx-provider/useStyle/index.js +110 -0
  191. package/es/vtx-provider/utils/merge.js +27 -0
  192. package/es/vtx-rps-frame/index.js +164 -0
  193. package/es/vtx-rps-frame/style/index.js +26 -0
  194. package/es/vtx-scrollable-row/index.js +193 -0
  195. package/es/vtx-scrollable-row/style/index.js +108 -0
  196. package/es/vtx-search/index.js +354 -0
  197. package/es/vtx-search/style/index.js +95 -0
  198. package/es/vtx-select/index.js +264 -0
  199. package/es/vtx-select/style/index.js +31 -0
  200. package/es/vtx-signature/index.js +120 -0
  201. package/es/vtx-signature/style/index.js +47 -0
  202. package/es/vtx-split-pane/Resizer.js +47 -0
  203. package/es/vtx-split-pane/SplitPane.js +70 -0
  204. package/es/vtx-split-pane/index.js +3 -0
  205. package/es/vtx-split-pane/style/index.js +29 -0
  206. package/es/vtx-statistics-column/Back.js +27 -0
  207. package/es/vtx-statistics-column/Item.js +54 -0
  208. package/es/vtx-statistics-column/Total.js +54 -0
  209. package/es/vtx-statistics-column/context.js +2 -0
  210. package/es/vtx-statistics-column/index.js +54 -0
  211. package/es/vtx-statistics-column/style/index.js +72 -0
  212. package/es/vtx-time-picker/index.js +63 -0
  213. package/es/vtx-time-picker/style/index.js +0 -0
  214. package/es/vtx-transfer/Transfer.js +30 -0
  215. package/es/vtx-transfer/index.js +3 -0
  216. package/es/vtx-transfer/style/index.js +19 -0
  217. package/es/vtx-transfer-select/TransferSelect.js +143 -0
  218. package/es/vtx-transfer-select/index.js +3 -0
  219. package/es/vtx-transfer-select/style/index.js +19 -0
  220. package/es/vtx-tree/index.js +405 -0
  221. package/es/vtx-tree/style/index.js +50 -0
  222. package/es/vtx-tree/utils.js +73 -0
  223. package/es/vtx-tree-select/index.js +258 -0
  224. package/es/vtx-tree-select/style/index.js +79 -0
  225. package/es/vtx-upload/FilePreview.js +112 -0
  226. package/es/vtx-upload/index.js +468 -0
  227. package/es/vtx-upload/style/index.js +83 -0
  228. package/es/vtx-wang-editor/index.js +421 -0
  229. package/es/vtx-wang-editor/style/index.js +33 -0
  230. package/es/vtx-wang-editor/style/index.less +12 -0
  231. package/es/vtx-wang-editor/wangEditorUtil.js +276 -0
  232. package/lib/index.js +399 -0
  233. package/lib/utils/columnSort.js +29 -0
  234. package/lib/utils/components/DropdownFooter/index.js +62 -0
  235. package/lib/utils/components/DropdownFooter/style.js +31 -0
  236. package/lib/utils/components/ErrorBoundary/index.js +59 -0
  237. package/lib/utils/components/FieldLabel/index.js +152 -0
  238. package/lib/utils/components/FieldLabel/style.js +99 -0
  239. package/lib/utils/components/FilterDropdown/index.js +70 -0
  240. package/lib/utils/components/FilterDropdown/style.js +32 -0
  241. package/lib/utils/components/InlineErrorFormItem/index.js +162 -0
  242. package/lib/utils/components/InlineErrorFormItem/style.js +53 -0
  243. package/lib/utils/components/LabelIconTip/index.js +73 -0
  244. package/lib/utils/components/LabelIconTip/style.js +53 -0
  245. package/lib/utils/components/ProFormContext/index.js +48 -0
  246. package/lib/utils/conversionMomentValue/index.js +170 -0
  247. package/lib/utils/dateArrayFormatter/index.js +43 -0
  248. package/lib/utils/filterSpecialCharacters.js +91 -0
  249. package/lib/utils/genColumnKey.js +12 -0
  250. package/lib/utils/genCopyable/index.js +66 -0
  251. package/lib/utils/getComponentProps.js +13 -0
  252. package/lib/utils/getFieldPropsOrFormItemProps/index.js +21 -0
  253. package/lib/utils/getPlaceholder.js +11 -0
  254. package/lib/utils/getToken.js +12 -0
  255. package/lib/utils/hooks/useDebounceFn/index.js +77 -0
  256. package/lib/utils/hooks/useDebounceValue/index.js +45 -0
  257. package/lib/utils/hooks/useDeepCompareEffect/index.js +33 -0
  258. package/lib/utils/hooks/useDeepCompareMemo/index.js +21 -0
  259. package/lib/utils/hooks/useDocumentTitle/index.js +16 -0
  260. package/lib/utils/hooks/useForceRender/index.js +24 -0
  261. package/lib/utils/hooks/useLatest/index.js +15 -0
  262. package/lib/utils/hooks/usePrevious/index.js +14 -0
  263. package/lib/utils/hooks/useReactiveRef/index.js +14 -0
  264. package/lib/utils/hooks/useRefCallback/index.js +31 -0
  265. package/lib/utils/hooks/useRefFunction/index.js +18 -0
  266. package/lib/utils/index.js +429 -0
  267. package/lib/utils/isBrowser/index.d.ts +9 -0
  268. package/lib/utils/isBrowser/index.js +22 -0
  269. package/lib/utils/isDeepEqualReact/index.js +101 -0
  270. package/lib/utils/isDropdownValueType/index.js +13 -0
  271. package/lib/utils/isFunction.js +9 -0
  272. package/lib/utils/isImg/index.js +10 -0
  273. package/lib/utils/isNil/index.js +9 -0
  274. package/lib/utils/isObject/index.js +9 -0
  275. package/lib/utils/isObject.js +9 -0
  276. package/lib/utils/isUrl/index.js +23 -0
  277. package/lib/utils/merge/index.js +41 -0
  278. package/lib/utils/nanoid/index.js +35 -0
  279. package/lib/utils/omitBoolean/index.js +17 -0
  280. package/lib/utils/omitUndefined/index.js +18 -0
  281. package/lib/utils/omitUndefinedAndEmptyArr/index.js +20 -0
  282. package/lib/utils/parseValueToMoment/index.js +35 -0
  283. package/lib/utils/pickProFormItemProps/index.js +21 -0
  284. package/lib/utils/pickProProps/index.js +21 -0
  285. package/lib/utils/proFieldParsingText/index.js +166 -0
  286. package/lib/utils/runFunction/index.js +16 -0
  287. package/lib/utils/sortByGivenOrder.js +42 -0
  288. package/lib/utils/sortByKeyArrayExtract.js +44 -0
  289. package/lib/utils/stringify/index.js +21 -0
  290. package/lib/utils/transformKeySubmitValue/index.js +337 -0
  291. package/lib/utils/useColSize.js +26 -0
  292. package/lib/utils/useEditableArray/index.js +918 -0
  293. package/lib/utils/useEditableMap/index.js +219 -0
  294. package/lib/utils/useInterval.js +18 -0
  295. package/lib/utils/useMediaQuery/index.js +112 -0
  296. package/lib/utils/useMediaQuery/query.js +36 -0
  297. package/lib/utils/useMountMergeState/index.js +12 -0
  298. package/lib/utils/useSet.js +43 -0
  299. package/lib/version.js +9 -0
  300. package/lib/vtx-color-picker/index.js +182 -0
  301. package/lib/vtx-color-picker/style/index.js +60 -0
  302. package/lib/vtx-combogrid/Combogrid.js +260 -0
  303. package/lib/vtx-combogrid/index.js +129 -0
  304. package/lib/vtx-combogrid/style/index.js +48 -0
  305. package/lib/vtx-datagrid/Alert/index.js +57 -0
  306. package/lib/vtx-datagrid/Alert/style.js +50 -0
  307. package/lib/vtx-datagrid/Store/Provide.js +499 -0
  308. package/lib/vtx-datagrid/ToolBar/components/ColumnSetting/index.js +535 -0
  309. package/lib/vtx-datagrid/ToolBar/components/ColumnSetting/style.js +92 -0
  310. package/lib/vtx-datagrid/ToolBar/components/Density/index.js +59 -0
  311. package/lib/vtx-datagrid/ToolBar/components/Fullscreen/index.js +83 -0
  312. package/lib/vtx-datagrid/ToolBar/components/TableStyle/index.js +80 -0
  313. package/lib/vtx-datagrid/ToolBar/index.js +96 -0
  314. package/lib/vtx-datagrid/ToolBar/style.js +65 -0
  315. package/lib/vtx-datagrid/index.js +443 -0
  316. package/lib/vtx-datagrid/renderColumnButtons.js +123 -0
  317. package/lib/vtx-datagrid/style/index.js +148 -0
  318. package/lib/vtx-datagrid/style/index.less +242 -0
  319. package/lib/vtx-date-picker/QdatePicker.js +157 -0
  320. package/lib/vtx-date-picker/generatePicker.js +111 -0
  321. package/lib/vtx-date-picker/index.js +55 -0
  322. package/lib/vtx-date-picker/style/index.js +45 -0
  323. package/lib/vtx-date-picker/style/index.less +39 -0
  324. package/lib/vtx-descriptions/Descriptions.js +39 -0
  325. package/lib/vtx-descriptions/index.js +15 -0
  326. package/lib/vtx-descriptions/style/index.js +25 -0
  327. package/lib/vtx-ellipsis-text/index.js +65 -0
  328. package/lib/vtx-ellipsis-text/style/index.js +37 -0
  329. package/lib/vtx-export/index.js +202 -0
  330. package/lib/vtx-export/style/index.js +30 -0
  331. package/lib/vtx-export-async/ColumnsSelect.js +69 -0
  332. package/lib/vtx-export-async/History.js +268 -0
  333. package/lib/vtx-export-async/index.js +436 -0
  334. package/lib/vtx-export-async/style/index.js +55 -0
  335. package/lib/vtx-export-async/util.js +57 -0
  336. package/lib/vtx-form-layout/Card.js +83 -0
  337. package/lib/vtx-form-layout/Divider.js +31 -0
  338. package/lib/vtx-form-layout/FormItem.js +142 -0
  339. package/lib/vtx-form-layout/Pane.js +61 -0
  340. package/lib/vtx-form-layout/Row.js +26 -0
  341. package/lib/vtx-form-layout/context.js +8 -0
  342. package/lib/vtx-form-layout/index.js +89 -0
  343. package/lib/vtx-form-layout/style/index.js +267 -0
  344. package/lib/vtx-icon/index.js +135 -0
  345. package/lib/vtx-icon/svg/alignRightOutlined.js +34 -0
  346. package/lib/vtx-icon/svg/columnHeightOutlined.js +31 -0
  347. package/lib/vtx-icon/svg/downOutlined.js +30 -0
  348. package/lib/vtx-icon/svg/fullscreen.js +31 -0
  349. package/lib/vtx-icon/svg/redoOutlined.js +34 -0
  350. package/lib/vtx-icon/svg/rightOutlined.js +30 -0
  351. package/lib/vtx-icon/svg/settingOutlined.js +34 -0
  352. package/lib/vtx-image/Image.js +264 -0
  353. package/lib/vtx-image/Preview.js +151 -0
  354. package/lib/vtx-image/PreviewGroup.js +91 -0
  355. package/lib/vtx-image/index.js +31 -0
  356. package/lib/vtx-image/style/index.js +97 -0
  357. package/lib/vtx-import/index.js +468 -0
  358. package/lib/vtx-import/result.js +92 -0
  359. package/lib/vtx-import/style/index.js +35 -0
  360. package/lib/vtx-import2/CheckResult.js +50 -0
  361. package/lib/vtx-import2/Content.js +113 -0
  362. package/lib/vtx-import2/DownloadSvg.js +47 -0
  363. package/lib/vtx-import2/ImportResult.js +62 -0
  364. package/lib/vtx-import2/UploadSvg.js +47 -0
  365. package/lib/vtx-import2/index.js +467 -0
  366. package/lib/vtx-import2/style/index.js +157 -0
  367. package/lib/vtx-input/TextArea/index.js +75 -0
  368. package/lib/vtx-input/TextArea/style.js +36 -0
  369. package/lib/vtx-input/index.js +100 -0
  370. package/lib/vtx-input/style/index.js +30 -0
  371. package/lib/vtx-input/useLength.js +27 -0
  372. package/lib/vtx-modal/Title.js +42 -0
  373. package/lib/vtx-modal/index.js +252 -0
  374. package/lib/vtx-modal/style/index.js +117 -0
  375. package/lib/vtx-page-layout/Basic.js +36 -0
  376. package/lib/vtx-page-layout/Content.js +50 -0
  377. package/lib/vtx-page-layout/Pane.js +47 -0
  378. package/lib/vtx-page-layout/TabLayout.js +64 -0
  379. package/lib/vtx-page-layout/TableLayout.js +182 -0
  380. package/lib/vtx-page-layout/TableWrap.js +44 -0
  381. package/lib/vtx-page-layout/TreeLayout.js +78 -0
  382. package/lib/vtx-page-layout/container.js +75 -0
  383. package/lib/vtx-page-layout/index.js +32 -0
  384. package/lib/vtx-page-layout/style/index.js +136 -0
  385. package/lib/vtx-provider/index.js +359 -0
  386. package/lib/vtx-provider/intl.js +145 -0
  387. package/lib/vtx-provider/locale/ar_EG.js +77 -0
  388. package/lib/vtx-provider/locale/ca_ES.js +77 -0
  389. package/lib/vtx-provider/locale/cs_CZ.js +80 -0
  390. package/lib/vtx-provider/locale/de_DE.js +77 -0
  391. package/lib/vtx-provider/locale/en_GB.js +79 -0
  392. package/lib/vtx-provider/locale/en_US.js +195 -0
  393. package/lib/vtx-provider/locale/es_ES.js +77 -0
  394. package/lib/vtx-provider/locale/fa_IR.js +77 -0
  395. package/lib/vtx-provider/locale/fr_FR.js +77 -0
  396. package/lib/vtx-provider/locale/he_IL.js +80 -0
  397. package/lib/vtx-provider/locale/hr_HR.js +77 -0
  398. package/lib/vtx-provider/locale/id_ID.js +77 -0
  399. package/lib/vtx-provider/locale/it_IT.js +77 -0
  400. package/lib/vtx-provider/locale/ja_JP.js +77 -0
  401. package/lib/vtx-provider/locale/ko_KR.js +77 -0
  402. package/lib/vtx-provider/locale/mn_MN.js +77 -0
  403. package/lib/vtx-provider/locale/ms_MY.js +77 -0
  404. package/lib/vtx-provider/locale/nl_NL.js +80 -0
  405. package/lib/vtx-provider/locale/pl_PL.js +77 -0
  406. package/lib/vtx-provider/locale/pt_BR.js +77 -0
  407. package/lib/vtx-provider/locale/ro_RO.js +80 -0
  408. package/lib/vtx-provider/locale/ru_RU.js +77 -0
  409. package/lib/vtx-provider/locale/sk_SK.js +80 -0
  410. package/lib/vtx-provider/locale/sr_RS.js +77 -0
  411. package/lib/vtx-provider/locale/sv_SE.js +80 -0
  412. package/lib/vtx-provider/locale/th_TH.js +80 -0
  413. package/lib/vtx-provider/locale/tr_TR.js +77 -0
  414. package/lib/vtx-provider/locale/uk_UA.js +80 -0
  415. package/lib/vtx-provider/locale/uz_UZ.js +77 -0
  416. package/lib/vtx-provider/locale/vi_VN.js +77 -0
  417. package/lib/vtx-provider/locale/zh_CN.js +207 -0
  418. package/lib/vtx-provider/locale/zh_HK.js +89 -0
  419. package/lib/vtx-provider/locale/zh_TW.js +80 -0
  420. package/lib/vtx-provider/typing/layoutToken.js +66 -0
  421. package/lib/vtx-provider/useStyle/index.js +116 -0
  422. package/lib/vtx-provider/utils/merge.js +33 -0
  423. package/lib/vtx-rps-frame/index.js +173 -0
  424. package/lib/vtx-rps-frame/style/index.js +32 -0
  425. package/lib/vtx-scrollable-row/index.js +203 -0
  426. package/lib/vtx-scrollable-row/style/index.js +114 -0
  427. package/lib/vtx-search/index.js +359 -0
  428. package/lib/vtx-search/style/index.js +102 -0
  429. package/lib/vtx-select/index.js +271 -0
  430. package/lib/vtx-select/style/index.js +37 -0
  431. package/lib/vtx-signature/index.js +128 -0
  432. package/lib/vtx-signature/style/index.js +53 -0
  433. package/lib/vtx-split-pane/Resizer.js +52 -0
  434. package/lib/vtx-split-pane/SplitPane.js +78 -0
  435. package/lib/vtx-split-pane/index.js +15 -0
  436. package/lib/vtx-split-pane/style/index.js +35 -0
  437. package/lib/vtx-statistics-column/Back.js +36 -0
  438. package/lib/vtx-statistics-column/Item.js +62 -0
  439. package/lib/vtx-statistics-column/Total.js +62 -0
  440. package/lib/vtx-statistics-column/context.js +8 -0
  441. package/lib/vtx-statistics-column/index.js +63 -0
  442. package/lib/vtx-statistics-column/style/index.js +78 -0
  443. package/lib/vtx-time-picker/index.js +71 -0
  444. package/lib/vtx-time-picker/style/index.js +1 -0
  445. package/lib/vtx-transfer/Transfer.js +39 -0
  446. package/lib/vtx-transfer/index.js +15 -0
  447. package/lib/vtx-transfer/style/index.js +25 -0
  448. package/lib/vtx-transfer-select/TransferSelect.js +151 -0
  449. package/lib/vtx-transfer-select/index.js +15 -0
  450. package/lib/vtx-transfer-select/style/index.js +25 -0
  451. package/lib/vtx-tree/index.js +412 -0
  452. package/lib/vtx-tree/style/index.js +56 -0
  453. package/lib/vtx-tree/utils.js +80 -0
  454. package/lib/vtx-tree-select/index.js +264 -0
  455. package/lib/vtx-tree-select/style/index.js +85 -0
  456. package/lib/vtx-upload/FilePreview.js +117 -0
  457. package/lib/vtx-upload/index.js +474 -0
  458. package/lib/vtx-upload/style/index.js +89 -0
  459. package/lib/vtx-wang-editor/index.js +425 -0
  460. package/lib/vtx-wang-editor/style/index.js +39 -0
  461. package/lib/vtx-wang-editor/style/index.less +12 -0
  462. package/lib/vtx-wang-editor/wangEditorUtil.js +285 -0
  463. package/package.json +44 -29
@@ -0,0 +1,81 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
5
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
6
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
10
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
+ import React, { useState } from 'react';
12
+ import PropTypes from 'prop-types';
13
+ import Preview from "./Preview";
14
+ import { jsx as _jsx } from "react/jsx-runtime";
15
+ import { jsxs as _jsxs } from "react/jsx-runtime";
16
+ export var context = /*#__PURE__*/React.createContext({});
17
+ var Provider = context.Provider;
18
+ export default function PreviewGroup(props) {
19
+ var _useState = useState([]),
20
+ _useState2 = _slicedToArray(_useState, 2),
21
+ photo = _useState2[0],
22
+ setPhoto = _useState2[1];
23
+ var _useState3 = useState(0),
24
+ _useState4 = _slicedToArray(_useState3, 2),
25
+ current = _useState4[0],
26
+ setCurrent = _useState4[1];
27
+ var _useState5 = useState(false),
28
+ _useState6 = _slicedToArray(_useState5, 2),
29
+ visible = _useState6[0],
30
+ setVisible = _useState6[1];
31
+ var onIndexChange = props.onIndexChange;
32
+ var registerImage = function registerImage(_ref) {
33
+ var src = _ref.src,
34
+ alt = _ref.alt,
35
+ id = _ref.id;
36
+ setPhoto(function (oldPhoto) {
37
+ var newPhoto = _toConsumableArray(oldPhoto);
38
+ var index = oldPhoto.findIndex(function (item) {
39
+ return item.id === id;
40
+ });
41
+ if (index < 0) {
42
+ newPhoto.push({
43
+ src: src,
44
+ alt: alt,
45
+ id: id
46
+ });
47
+ } else {
48
+ newPhoto[index] = {
49
+ src: src,
50
+ alt: alt,
51
+ id: id
52
+ };
53
+ }
54
+ return newPhoto;
55
+ });
56
+ };
57
+ return /*#__PURE__*/_jsxs(Provider, {
58
+ value: {
59
+ isPreviewGroup: true,
60
+ current: current,
61
+ setCurrent: setCurrent,
62
+ setShowPreview: setVisible,
63
+ registerImage: registerImage
64
+ },
65
+ children: [props.children, /*#__PURE__*/_jsx(Preview, {
66
+ visible: visible,
67
+ index: photo.findIndex(function (item) {
68
+ return item.id === current;
69
+ }),
70
+ photo: photo,
71
+ onClose: function onClose() {
72
+ return setVisible(false);
73
+ },
74
+ onIndexChange: onIndexChange
75
+ })]
76
+ });
77
+ }
78
+ PreviewGroup.propTypes = {
79
+ children: PropTypes.node,
80
+ onIndexChange: PropTypes.func
81
+ };
@@ -0,0 +1,4 @@
1
+ import VtxImage from "./Image";
2
+ export * from "./Image";
3
+ export { VtxImage };
4
+ export default VtxImage;
@@ -0,0 +1,91 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ import 'viewerjs/dist/viewer.css';
8
+ import { useStyle as useAntdStyle } from "../../vtx-provider";
9
+ var center = function center() {
10
+ return {
11
+ position: 'absolute',
12
+ top: '50%',
13
+ left: '50%',
14
+ '-ms-transform': 'translate(-50%, -50%)',
15
+ '-o-transform': 'translate(-50%, -50%)',
16
+ '-moz-transform': 'translate(-50%, -50%)',
17
+ '-webkit-transform': 'translate(-50%, -50%)',
18
+ transform: 'translate(-50%, -50%)'
19
+ };
20
+ };
21
+ var genVtxImageStyle = function genVtxImageStyle(token) {
22
+ var componentCls = token.componentCls;
23
+ console.log('componentCls', componentCls);
24
+ return _defineProperty(_defineProperty(_defineProperty({}, componentCls, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, '&-aspectFit', {
25
+ position: 'relative',
26
+ height: '100%',
27
+ minHeight: '36px',
28
+ background: '#595959',
29
+ display: 'flex',
30
+ alignItems: 'center',
31
+ justifyContent: 'center',
32
+ overflow: 'hidden',
33
+ 'img': {
34
+ maxWidth: '100%',
35
+ maxHeight: '100%',
36
+ transition: '0.2s all linear'
37
+ }
38
+ }), '&-tool', _defineProperty(_defineProperty({
39
+ position: 'absolute',
40
+ bottom: 0,
41
+ left: 0,
42
+ width: '100%',
43
+ color: '#FFFFFF',
44
+ backgroundColor: 'fade(#595959, 60)',
45
+ padding: '5px',
46
+ display: 'flex',
47
+ alignItems: 'center',
48
+ justifyContent: 'center'
49
+ }, '&>span', {
50
+ display: 'inline-block',
51
+ cursor: 'pointer'
52
+ }), 'span + span', {
53
+ marginLeft: '8px'
54
+ })), '&-preview', {
55
+ 'img': {
56
+ cursor: 'pointer'
57
+ }
58
+ }), '&-nodata, &-error', {
59
+ position: 'relative',
60
+ height: '100%',
61
+ minHeight: '36px',
62
+ background: token.colorBorderSecondary,
63
+ border: "1px solid ".concat(token.colorBorder),
64
+ cursor: 'default',
65
+ 'span': _objectSpread(_objectSpread({}, center()), {}, {
66
+ color: token.colorText
67
+ })
68
+ })), '.viewer-prev, .viewer-next', {
69
+ position: 'fixed',
70
+ top: '50%',
71
+ left: '20px',
72
+ transform: 'translateY(-50%)',
73
+ height: '30px',
74
+ width: '30px',
75
+ display: 'flex',
76
+ alignItems: 'center',
77
+ justifyContent: 'center',
78
+ zoom: '1.5'
79
+ }), '.viewer-next', {
80
+ left: 'inherit',
81
+ right: '20px'
82
+ });
83
+ };
84
+ export function useStyle(prefixCls) {
85
+ return useAntdStyle('VtxImage', function (token) {
86
+ var vtxImageToken = _objectSpread(_objectSpread({}, token), {}, {
87
+ componentCls: ".".concat(prefixCls)
88
+ });
89
+ return [genVtxImageStyle(vtxImageToken)];
90
+ });
91
+ }
@@ -0,0 +1,460 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import React, { useRef, useEffect, useContext } from 'react';
14
+ import { message, Button } from 'antd';
15
+ import PropTypes from 'prop-types';
16
+ import useSet from "../utils/useSet";
17
+ import VtxImportResult from "./result";
18
+ import getToken from "../utils/getToken";
19
+ var token = getToken();
20
+ import md5 from 'md5';
21
+ import { getVtxToken, getSignature } from '@vtx/utils';
22
+ import { useStyle } from "./style/index";
23
+ import { VtxProvider, useIntl } from "../vtx-provider";
24
+ import VtxModal from "../vtx-modal";
25
+ import { jsx as _jsx } from "react/jsx-runtime";
26
+ import { jsxs as _jsxs } from "react/jsx-runtime";
27
+ function VtxImport(props) {
28
+ var intl = useIntl();
29
+ var _useContext = useContext(VtxProvider),
30
+ getPrefixCls = _useContext.getPrefixCls;
31
+ var prefixCls = getPrefixCls('import', props.prefixCls);
32
+ var _useStyle = useStyle(prefixCls),
33
+ wrapSSR = _useStyle.wrapSSR,
34
+ hashId = _useStyle.hashId;
35
+
36
+ // 用 useRef 管理 DOM 引用,而不是 state
37
+ var fileInputRef = useRef(null);
38
+ var iframeRef = useRef(null);
39
+ var formRef = useRef(null);
40
+
41
+ // 用于追踪当前 XHR 请求,方便取消
42
+ var xhrRef = useRef(null);
43
+ var indexRef = useRef(0);
44
+ var _useSet = useSet({
45
+ // fileForm: null, // form表单
46
+ // fileInput: null, // 保存上传的文件
47
+ // iframe: null, // form表单提交之后跳转的
48
+ useFormData: window.FormData ? true : false,
49
+ // 是否查看
50
+ uploading: false,
51
+ // 表单提交的状态
52
+ visible: props.visible || false,
53
+ fileKey: props.fileKey || 'file',
54
+ accept: props.accept || 'application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,text/csv',
55
+ resultVisible: false,
56
+ // 导入结果查看弹窗
57
+ resultData: [],
58
+ // 导入结果查看
59
+ modalWidth: props.modalWidth || 800,
60
+ columns: props.columns || [{
61
+ title: '行号',
62
+ dataIndex: 'lineNum',
63
+ key: 'lineNum'
64
+ }, {
65
+ title: '错误说明',
66
+ dataIndex: 'messages',
67
+ key: 'messages'
68
+ }],
69
+ step: 1,
70
+ chunkSize: props.chunkSize || 10 * 1024 * 1024,
71
+ totalChunk: 0,
72
+ currentIndex: 0,
73
+ chunkId: '',
74
+ chunks: [],
75
+ operation: props.operation || intl.getMessage('import.operation', '导入')
76
+ }),
77
+ _useSet2 = _slicedToArray(_useSet, 2),
78
+ state = _useSet2[0],
79
+ setState = _useSet2[1];
80
+
81
+ // 开始准备文件
82
+ function checkFile(file) {
83
+ if (file.size <= state.chunkSize) {
84
+ upload(file);
85
+ } else {
86
+ setState({
87
+ mode: 'spread'
88
+ });
89
+ var chunks = spreadFile(file);
90
+ setState({
91
+ chunks: chunks,
92
+ chunkId: md5("".concat(new Date().valueOf()).concat(Math.random())),
93
+ totalChunk: chunks.length,
94
+ step: 2
95
+ });
96
+ }
97
+ }
98
+
99
+ // 开始上传
100
+ function startUpload() {
101
+ var dataArr = [];
102
+ state.chunks.forEach(function (e, i) {
103
+ //创建formdata对象
104
+ var data = new FormData();
105
+ // data.append("totalNumber", state.chunks.length)
106
+ data.append('chunkSize', state.chunks.length);
107
+ data.append('chunkNo', i + 1);
108
+ data.append('chunkId', state.chunkId);
109
+ data.append('tenantId', getVtxToken('tenantId'));
110
+ data.append('file', new File([e], fileInputRef.current.files[0].name));
111
+ dataArr.push(data);
112
+ });
113
+ uploadAsync(dataArr);
114
+ }
115
+
116
+ // 上传
117
+ function uploadAsync(list) {
118
+ if (indexRef.current < list.length) {
119
+ var xhr = new XMLHttpRequest();
120
+ xhrRef.current = xhr;
121
+ xhr.onload = function () {
122
+ if (xhr.status === 200) {
123
+ setState({
124
+ currentIndex: indexRef.current + 1
125
+ });
126
+ indexRef.current += 1;
127
+ uploadAsync(list);
128
+ }
129
+ };
130
+ xhr.onerror = function () {
131
+ message.error(intl.getMessage('import.error', '上传失败'));
132
+ };
133
+ // 发送请求
134
+ xhr.open('POST', '/cloudFile/common/uploadChunk', true);
135
+ xhr.send(list[indexRef.current]);
136
+ } else {
137
+ mergeFile();
138
+ }
139
+ }
140
+
141
+ // 合并分片
142
+ function mergeFile() {
143
+ var xhr = new XMLHttpRequest();
144
+ xhrRef.current = xhr;
145
+ // 当上传完成时调用
146
+ xhr.onload = function () {
147
+ if (xhr.status === 200) {
148
+ var _res;
149
+ var res;
150
+ try {
151
+ res = JSON.parse(xhr.responseText);
152
+ } catch (e) {
153
+ message.error(intl.getMessage('import.error', '解析响应失败'));
154
+ setState({
155
+ uploading: false
156
+ });
157
+ return;
158
+ }
159
+ if (((_res = res) === null || _res === void 0 ? void 0 : _res.result) == 0) {
160
+ message.success(intl.getMessage('import.success', '上传成功'));
161
+ chunkUpload(res.data);
162
+ } else {
163
+ var _res2;
164
+ message.error(((_res2 = res) === null || _res2 === void 0 ? void 0 : _res2.msg) || intl.getMessage('import.error', '上传失败'));
165
+ }
166
+ }
167
+ };
168
+ xhr.onerror = function () {
169
+ message.error(intl.getMessage('import.error', '上传失败'));
170
+ };
171
+ // 发送请求
172
+ xhr.open('POST', '/cloudFile/common/mergeChunk', true);
173
+ var data = new FormData();
174
+ data.append('chunkId', state.chunkId);
175
+ data.append('tenantId', getVtxToken('tenantId'));
176
+ data.append('chunkSize', state.chunks.length);
177
+ data.append('fileName', fileInputRef.current.files[0].name);
178
+ xhr.send(data);
179
+ }
180
+
181
+ // 合并切片后上传
182
+ function chunkUpload(data) {
183
+ var postUrl = getPostURL();
184
+ var postData = props.postData || {};
185
+ if (state.useFormData) {
186
+ var request = new XMLHttpRequest();
187
+ xhrRef.current = request;
188
+ // 发送请求
189
+ request.open('POST', postUrl);
190
+ request.setRequestHeader('Authorization', token ? "Bearer ".concat(token) : '');
191
+ request.setRequestHeader('access_token', token ? "".concat(token) : '');
192
+ // 添加操作日志
193
+ request.setRequestHeader('operation', encodeURIComponent(JSON.stringify({
194
+ menuId: sessionStorage.getItem('vtxmenuselectedKeys'),
195
+ operation: state.operation
196
+ })));
197
+ var signature = getSignature(postData);
198
+ for (var key in signature) {
199
+ request.setRequestHeader(key, signature[key]);
200
+ }
201
+ request.onreadystatechange = function (e) {
202
+ if (e.target.readyState == 4) {
203
+ uploadSuccess(e.target.response);
204
+ }
205
+ };
206
+ //创建formdata对象
207
+ var fmd = new FormData();
208
+ fmd.append('tenantId', getVtxToken('tenantId'));
209
+ fmd.append('fileId', data[0].id);
210
+ request.send(fmd);
211
+ }
212
+ }
213
+ function upload() {
214
+ var postUrl = getPostURL();
215
+ var postData = props.postData || {};
216
+ if (state.useFormData) {
217
+ var request = new XMLHttpRequest();
218
+ xhrRef.current = request;
219
+ // 发送请求
220
+ request.open('POST', postUrl);
221
+ request.setRequestHeader('Authorization', token ? "Bearer ".concat(token) : '');
222
+ request.setRequestHeader('access_token', token ? "".concat(token) : '');
223
+ // 添加操作日志
224
+ request.setRequestHeader('operation', encodeURIComponent(JSON.stringify({
225
+ menuId: sessionStorage.getItem('vtxmenuselectedKeys'),
226
+ operation: state.operation
227
+ })));
228
+ var signature = getSignature(postData);
229
+ for (var key in signature) {
230
+ request.setRequestHeader(key, signature[key]);
231
+ }
232
+ request.onreadystatechange = function (e) {
233
+ if (e.target.readyState == 4) {
234
+ uploadSuccess(e.target.response);
235
+ }
236
+ };
237
+ //创建formdata对象
238
+ var fmd = new FormData();
239
+ fmd.append(state.fileKey, fileInputRef.current.files[0]);
240
+ request.send(fmd);
241
+ }
242
+ }
243
+
244
+ // 切片文件
245
+ function spreadFile(file) {
246
+ var chunks = [];
247
+ var start = 0;
248
+ var end;
249
+ while (start < file.size) {
250
+ end = Math.min(start + state.chunkSize, file.size);
251
+ chunks.push(file.slice(start, end));
252
+ start = end;
253
+ }
254
+ return chunks;
255
+ }
256
+
257
+ // 获取上传地址(拼接参数)
258
+ var getPostURL = function getPostURL() {
259
+ var postUrl = props.uploadURL;
260
+ var postData = props.postData || {};
261
+ var postArray = [];
262
+ for (var k in postData) {
263
+ if (postData[k] !== undefined && postData[k] !== null && postData[k] !== '') {
264
+ postArray.push("".concat(k, "=").concat(encodeURIComponent(postData[k])));
265
+ }
266
+ }
267
+ return postArray.length > 0 ? "".concat(postUrl, "?").concat(postArray.join('&')) : postUrl;
268
+ };
269
+ var closeModal = function closeModal() {
270
+ if (fileInputRef.current) {
271
+ fileInputRef.current.value = '';
272
+ }
273
+ if (typeof props.close === 'function') {
274
+ props.close();
275
+ } else {
276
+ setState({
277
+ visible: !state.visible
278
+ });
279
+ }
280
+ };
281
+ // 上传之后的回调 - 展示报错信息
282
+ var uploadSuccess = function uploadSuccess(data) {
283
+ var _parseData;
284
+ if (fileInputRef.current) {
285
+ fileInputRef.current.value = '';
286
+ }
287
+ setState({
288
+ uploading: false
289
+ });
290
+ var parseData;
291
+ try {
292
+ parseData = JSON.parse(data);
293
+ } catch (e) {
294
+ message.error(intl.getMessage('import.error', '解析响应数据失败'));
295
+ return;
296
+ }
297
+ if (typeof props.afterUpload === 'function') {
298
+ afterUpload(data);
299
+ }
300
+ if (Array.isArray((_parseData = parseData) === null || _parseData === void 0 ? void 0 : _parseData.data)) {
301
+ setState({
302
+ resultVisible: true,
303
+ resultData: parseData.data.map(function (item, index) {
304
+ return _objectSpread(_objectSpread({}, item), {}, {
305
+ key: index,
306
+ messages: item.messages.join(',')
307
+ });
308
+ }).filter(function (item) {
309
+ return item.messages.length !== 0;
310
+ })
311
+ });
312
+ } else {
313
+ // 新增其他错误提示
314
+ if (parseData.result !== 0) {
315
+ var _parseData2;
316
+ message.error(((_parseData2 = parseData) === null || _parseData2 === void 0 ? void 0 : _parseData2.msg) || intl.getMessage('import.success', '上传成功'));
317
+ }
318
+ }
319
+ };
320
+ var templateURL = props.templateURL,
321
+ uploadURL = props.uploadURL,
322
+ afterUpload = props.afterUpload,
323
+ beforeUpload = props.beforeUpload;
324
+ var modalProps = {
325
+ className: "".concat(prefixCls, "-modal"),
326
+ open: state.visible,
327
+ title: intl.getMessage('import.operation', '导入'),
328
+ onCancel: function onCancel() {
329
+ return closeModal();
330
+ },
331
+ // maskClosable: false,
332
+ mask: {
333
+ closable: false
334
+ },
335
+ footer: [templateURL ? /*#__PURE__*/_jsx(Button, {
336
+ onClick: function onClick() {
337
+ window.open(templateURL);
338
+ },
339
+ children: intl.getMessage('import.downloadTemplate', '下载模板')
340
+ }, "downloadTemple") : null, /*#__PURE__*/_jsx(Button, {
341
+ type: "primary",
342
+ loading: state.uploading,
343
+ onClick: function onClick() {
344
+ var _fileInputRef$current2;
345
+ if (typeof props.beforeUpload === 'function') {
346
+ var _fileInputRef$current;
347
+ var flag = beforeUpload((_fileInputRef$current = fileInputRef.current) === null || _fileInputRef$current === void 0 || (_fileInputRef$current = _fileInputRef$current.files) === null || _fileInputRef$current === void 0 ? void 0 : _fileInputRef$current[0]);
348
+ if (!flag) {
349
+ fileInputRef.current.value = '';
350
+ return;
351
+ }
352
+ }
353
+ if ((_fileInputRef$current2 = fileInputRef.current) !== null && _fileInputRef$current2 !== void 0 && _fileInputRef$current2.value) {
354
+ setState({
355
+ uploading: true
356
+ });
357
+ // 上传文件
358
+ checkFile(fileInputRef.current.files[0]);
359
+ // const postUrl = getPostURL();
360
+ // if (state.useFormData) {
361
+ // const request = new XMLHttpRequest();
362
+ // request.open('POST', postUrl);
363
+ // request.setRequestHeader(
364
+ // 'Authorization',
365
+ // token ? `Bearer ${token}` : '',
366
+ // );
367
+ // request.setRequestHeader('access_token', token ? `${token}` : '');
368
+ // request.onreadystatechange = e => {
369
+ // if (e.target.readyState == 4) {
370
+ // uploadSuccess(e.target.response);
371
+ // }
372
+ // };
373
+ // const fmd = new FormData();
374
+ // fmd.append(state.fileKey, state.fileInput.files[0]);
375
+ // request.send(fmd);
376
+ // }
377
+ } else {
378
+ message.info(intl.getMessage('import.pleaseSelectFile', '请选择需要上传的文件'));
379
+ }
380
+ },
381
+ children: intl.getMessage('import.upload', '上传')
382
+ }, "uploadSubmit"), /*#__PURE__*/_jsx(Button, {
383
+ onClick: function onClick() {
384
+ closeModal();
385
+ },
386
+ children: intl.getMessage('switch.close', '关闭')
387
+ }, "closeWindow")],
388
+ width: 520
389
+ };
390
+ var resultProps = {
391
+ visible: state.resultVisible,
392
+ dataSource: state.resultData,
393
+ columns: state.columns,
394
+ hideVisible: function hideVisible() {
395
+ setState({
396
+ resultVisible: false
397
+ });
398
+ },
399
+ modalWidth: state.modalWidth
400
+ };
401
+
402
+ // 组件卸载时清理
403
+ useEffect(function () {
404
+ return function () {
405
+ // 取消进行中的 XHR 请求
406
+ if (xhrRef.current) {
407
+ xhrRef.current.abort();
408
+ xhrRef.current = null;
409
+ }
410
+ // 清理文件输入
411
+ if (fileInputRef.current) {
412
+ fileInputRef.current.value = '';
413
+ }
414
+ };
415
+ }, []);
416
+ useEffect(function () {
417
+ if (state.chunkId) {
418
+ startUpload();
419
+ }
420
+ }, [state.chunkId]);
421
+ return wrapSSR( /*#__PURE__*/_jsxs(VtxModal, _objectSpread(_objectSpread({}, modalProps), {}, {
422
+ children: [props.children, /*#__PURE__*/_jsx("form", {
423
+ encType: "multipart/form-data",
424
+ method: "post",
425
+ target: "tmp",
426
+ action: uploadURL,
427
+ ref: formRef,
428
+ children: /*#__PURE__*/_jsx("input", {
429
+ type: "file",
430
+ name: state.fileKey,
431
+ accept: state.accept,
432
+ ref: fileInputRef
433
+ })
434
+ }), /*#__PURE__*/_jsx("iframe", {
435
+ name: "tmp",
436
+ style: {
437
+ display: 'none'
438
+ },
439
+ ref: iframeRef
440
+ }), state.resultVisible && /*#__PURE__*/_jsx(VtxImportResult, _objectSpread({}, resultProps))]
441
+ })));
442
+ }
443
+ VtxImport.propTypes = {
444
+ visible: PropTypes.bool,
445
+ templateURL: PropTypes.string,
446
+ uploadURL: PropTypes.string,
447
+ postData: PropTypes.object,
448
+ fileKey: PropTypes.string,
449
+ accept: PropTypes.string,
450
+ operation: PropTypes.string,
451
+ close: PropTypes.func,
452
+ afterUpload: PropTypes.func,
453
+ modalWidth: PropTypes.number,
454
+ columns: PropTypes.array,
455
+ children: PropTypes.object,
456
+ beforeUpload: PropTypes.func,
457
+ chunkSize: PropTypes.number
458
+ };
459
+ export { VtxImport };
460
+ export default VtxImport;