@para-ui/core 2.2.7-beta → 2.2.9

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 (348) hide show
  1. package/AutoBox/index.d.ts +34 -34
  2. package/AutoBox/index.js +15 -203
  3. package/AutoTips/index.d.ts +27 -27
  4. package/AutoTips/index.js +15 -84
  5. package/Breadcrumbs/index.d.ts +39 -39
  6. package/Breadcrumbs/index.js +15 -227
  7. package/Button/SplitButton.d.ts +61 -62
  8. package/Button/index.d.ts +56 -71
  9. package/Button/index.js +14 -348
  10. package/Button/lang/en_US.d.ts +4 -4
  11. package/Button/lang/index.d.ts +9 -9
  12. package/Button/lang/zh_CN.d.ts +4 -4
  13. package/ButtonGroup/index.d.ts +33 -33
  14. package/ButtonGroup/index.js +14 -128
  15. package/Carousel/index.d.ts +30 -30
  16. package/Carousel/index.js +15 -74
  17. package/Cascader/index.d.ts +52 -52
  18. package/Cascader/index.js +15 -166
  19. package/Cascader/lang/en_US.d.ts +4 -4
  20. package/Cascader/lang/index.d.ts +9 -9
  21. package/Cascader/lang/zh_CN.d.ts +4 -4
  22. package/Checkbox/index.d.ts +40 -40
  23. package/Checkbox/index.js +14 -105
  24. package/CheckboxGroup/index.d.ts +46 -46
  25. package/CheckboxGroup/index.js +14 -138
  26. package/Collapse/collapsePanel.d.ts +30 -30
  27. package/Collapse/index.d.ts +57 -57
  28. package/Collapse/index.js +15 -171
  29. package/Collapse/motion.d.ts +5 -5
  30. package/Collapse/util.d.ts +11 -11
  31. package/CollapseBox/index.d.ts +27 -27
  32. package/CollapseBox/index.js +15 -164
  33. package/CollapseBox/util.d.ts +5 -5
  34. package/ColorPicker/index.d.ts +4 -4
  35. package/ColorPicker/index.js +1 -4
  36. package/ComboSelect/WithTabsCombo/index.d.ts +11 -11
  37. package/ComboSelect/WithTabsCombo/interface.d.ts +141 -141
  38. package/ComboSelect/index.d.ts +11 -11
  39. package/ComboSelect/index.js +14 -1803
  40. package/ComboSelect/interface.d.ts +143 -140
  41. package/ComboSelect/lang/en_US.d.ts +8 -8
  42. package/ComboSelect/lang/index.d.ts +17 -17
  43. package/ComboSelect/lang/zh_CN.d.ts +8 -8
  44. package/ComboSelect/utils.d.ts +12 -12
  45. package/Container/index.d.ts +77 -77
  46. package/Container/index.js +15 -239
  47. package/DatePicker/PickerButton.d.ts +3 -3
  48. package/DatePicker/PickerTag.d.ts +3 -3
  49. package/DatePicker/generatePicker/generateRangePicker.d.ts +4 -4
  50. package/DatePicker/generatePicker/generateSinglePicker.d.ts +11 -11
  51. package/DatePicker/generatePicker/index.d.ts +77 -77
  52. package/DatePicker/index.d.ts +18 -18
  53. package/DatePicker/index.js +14 -733
  54. package/DatePicker/lang/en_US.d.ts +3 -3
  55. package/DatePicker/lang/index.d.ts +7 -7
  56. package/DatePicker/lang/zh_CN.d.ts +3 -3
  57. package/DatePicker/util.d.ts +20 -20
  58. package/Desktop/index.d.ts +55 -57
  59. package/Desktop/index.js +14 -853
  60. package/Drawer/index.d.ts +11 -11
  61. package/Drawer/index.js +14 -186
  62. package/Drawer/interface.d.ts +83 -83
  63. package/Drawer/lang/en_US.d.ts +5 -5
  64. package/Drawer/lang/index.d.ts +11 -11
  65. package/Drawer/lang/zh_CN.d.ts +5 -5
  66. package/Empty/images/index.d.ts +2 -3
  67. package/Empty/index.d.ts +30 -30
  68. package/Empty/index.js +14 -644
  69. package/Empty/lang/en_US.d.ts +6 -6
  70. package/Empty/lang/index.d.ts +13 -13
  71. package/Empty/lang/zh_CN.d.ts +6 -6
  72. package/Form/index.d.ts +181 -181
  73. package/Form/index.js +14 -384
  74. package/FormItem/compoments/defaultCompoments/index.d.ts +19 -19
  75. package/FormItem/compoments/formCheckboxGroup/index.d.ts +8 -8
  76. package/FormItem/compoments/formFile/index.d.ts +38 -38
  77. package/FormItem/compoments/formRadioGroup/index.d.ts +8 -8
  78. package/FormItem/compoments/formSelect/index.d.ts +18 -18
  79. package/FormItem/errorTips.d.ts +12 -12
  80. package/FormItem/index.d.ts +152 -152
  81. package/FormItem/index.js +14 -81
  82. package/FormItem/itemType.d.ts +42 -42
  83. package/FormItem/validateFunction.d.ts +15 -15
  84. package/FunctionModal/dialog.d.ts +58 -58
  85. package/FunctionModal/index.d.ts +8 -8
  86. package/FunctionModal/index.js +14 -39
  87. package/FunctionModal/modalContext.d.ts +14 -15
  88. package/GlobalContext/componentsProps.d.ts +19 -19
  89. package/GlobalContext/confirmLocale.d.ts +7 -7
  90. package/GlobalContext/index.d.ts +28 -28
  91. package/GlobalContext/index.js +16 -41
  92. package/GlobalContext/intl.d.ts +34 -34
  93. package/GlobalContext/useFormatMessage.d.ts +3 -3
  94. package/Help/index.d.ts +20 -18
  95. package/Help/index.js +15 -39
  96. package/HelperText/index.d.ts +19 -19
  97. package/HelperText/index.js +15 -29
  98. package/Hooks/useGlobalProps.d.ts +1 -1
  99. package/InputLang/index.d.ts +49 -49
  100. package/InputLang/index.js +14 -270
  101. package/InputNumber/index.d.ts +74 -74
  102. package/InputNumber/index.js +14 -308
  103. package/Label/index.d.ts +35 -35
  104. package/Label/index.js +14 -81
  105. package/Loading/index.d.ts +17 -17
  106. package/Loading/index.js +15 -47
  107. package/Menu/footerExpansion.d.ts +9 -9
  108. package/Menu/index.d.ts +10 -10
  109. package/Menu/index.js +14 -1232
  110. package/Menu/interface.d.ts +139 -139
  111. package/Menu/logo.d.ts +9 -9
  112. package/Menu/verticalMenuList.d.ts +14 -14
  113. package/Message/index.d.ts +73 -73
  114. package/Message/index.js +15 -222
  115. package/Modal/Confirm/index.d.ts +66 -65
  116. package/Modal/index.d.ts +61 -90
  117. package/Modal/index.js +14 -443
  118. package/Modal/lang/en_US.d.ts +5 -5
  119. package/Modal/lang/index.d.ts +11 -11
  120. package/Modal/lang/zh_CN.d.ts +5 -5
  121. package/MultiBox/index.d.ts +54 -54
  122. package/MultiBox/index.js +14 -231
  123. package/Notification/index.d.ts +52 -52
  124. package/Notification/index.js +15 -266
  125. package/OperateBtn/index.d.ts +59 -59
  126. package/OperateBtn/index.js +14 -260
  127. package/OperateBtn/lang/en_US.d.ts +4 -4
  128. package/OperateBtn/lang/index.d.ts +9 -9
  129. package/OperateBtn/lang/zh_CN.d.ts +4 -4
  130. package/PageHeader/horizontalMeun.d.ts +9 -9
  131. package/PageHeader/horizontalMeunRight.d.ts +9 -9
  132. package/PageHeader/index.d.ts +10 -10
  133. package/PageHeader/index.js +14 -1171
  134. package/PageHeader/interface.d.ts +167 -167
  135. package/Pagination/index.d.ts +33 -33
  136. package/Pagination/index.js +14 -469
  137. package/Pagination/lang/en_US.d.ts +8 -8
  138. package/Pagination/lang/index.d.ts +17 -17
  139. package/Pagination/lang/zh_CN.d.ts +8 -8
  140. package/ParauiProvider/index.d.ts +12 -8
  141. package/ParauiProvider/index.js +15 -53
  142. package/PopConfirm/index.d.ts +56 -58
  143. package/PopConfirm/index.js +14 -189
  144. package/PopConfirm/lang/en_US.d.ts +5 -5
  145. package/PopConfirm/lang/index.d.ts +11 -11
  146. package/PopConfirm/lang/zh_CN.d.ts +5 -5
  147. package/Popover/index.d.ts +14 -14
  148. package/Popover/index.js +15 -66
  149. package/Popper/index.d.ts +13 -0
  150. package/Popper/index.js +16 -0
  151. package/Progress/Line.d.ts +47 -47
  152. package/Progress/Steps.d.ts +17 -17
  153. package/Progress/index.d.ts +81 -81
  154. package/Progress/index.js +20 -358
  155. package/Progress/utils.d.ts +6 -6
  156. package/Querying/images/index.d.ts +2 -3
  157. package/Querying/index.d.ts +26 -26
  158. package/Querying/index.js +14 -762
  159. package/Querying/lang/en_US.d.ts +4 -4
  160. package/Querying/lang/index.d.ts +9 -9
  161. package/Querying/lang/zh_CN.d.ts +4 -4
  162. package/README.md +518 -0
  163. package/Radio/index.d.ts +38 -38
  164. package/Radio/index.js +14 -94
  165. package/RadioGroup/index.d.ts +47 -47
  166. package/RadioGroup/index.js +14 -128
  167. package/Search/index.d.ts +56 -56
  168. package/Search/index.js +14 -220
  169. package/Select/index.d.ts +86 -86
  170. package/Select/index.js +14 -1288
  171. package/Select/lang/en_US.d.ts +5 -5
  172. package/Select/lang/index.d.ts +11 -11
  173. package/Select/lang/zh_CN.d.ts +5 -5
  174. package/SelectInput/index.d.ts +11 -11
  175. package/SelectInput/index.js +14 -51
  176. package/SingleBox/index.d.ts +42 -42
  177. package/SingleBox/index.js +14 -194
  178. package/Slider/index.d.ts +14 -14
  179. package/Slider/index.js +15 -125
  180. package/Slider/interface.d.ts +102 -102
  181. package/Split/index.d.ts +7 -7
  182. package/Split/index.js +15 -134
  183. package/Stepper/icons.d.ts +5 -5
  184. package/Stepper/index.d.ts +39 -49
  185. package/Stepper/index.js +15 -99
  186. package/Switch/index.d.ts +78 -78
  187. package/Switch/index.js +14 -73
  188. package/Table/index.d.ts +10 -10
  189. package/Table/index.js +14 -2725
  190. package/Table/interface.d.ts +202 -202
  191. package/Table/lang/en_US.d.ts +6 -6
  192. package/Table/lang/index.d.ts +13 -13
  193. package/Table/lang/zh_CN.d.ts +6 -6
  194. package/Table/tableBody.d.ts +9 -9
  195. package/Table/tableBodyElement/index.d.ts +15 -15
  196. package/Table/tableBodyInterface.d.ts +67 -67
  197. package/Table/tableContainer/index.d.ts +16 -16
  198. package/Table/tableElement/index.d.ts +17 -17
  199. package/Table/tableHead.d.ts +9 -9
  200. package/Table/tableHeadElement/index.d.ts +15 -15
  201. package/Table/tableHeadInterface.d.ts +30 -26
  202. package/Table/tablePagination.d.ts +9 -9
  203. package/Table/tablePaginationInterFace.d.ts +24 -24
  204. package/Table/tdElement/index.d.ts +15 -15
  205. package/Table/thElement/index.d.ts +15 -15
  206. package/Table/trElement/index.d.ts +15 -15
  207. package/Table/util.d.ts +16 -16
  208. package/Tabs/index.d.ts +48 -69
  209. package/Tabs/index.js +14 -218
  210. package/Tag/TagGroup.d.ts +66 -66
  211. package/Tag/index.d.ts +34 -34
  212. package/Tag/index.js +14 -286
  213. package/Test/index.d.ts +2 -3
  214. package/Test/index.js +16 -9
  215. package/TextField/index.d.ts +93 -93
  216. package/TextField/index.js +14 -686
  217. package/TimePicker/index.d.ts +22 -22
  218. package/TimePicker/index.js +14 -77
  219. package/TimePicker/locale/en_US.d.ts +3 -3
  220. package/TimePicker/locale/zh_CN.d.ts +3 -3
  221. package/TimePicker/style/index.d.ts +1 -1
  222. package/Timeline/index.d.ts +22 -31
  223. package/Timeline/index.js +15 -150
  224. package/ToggleButton/ToggleButtonGroup.d.ts +49 -49
  225. package/ToggleButton/index.d.ts +49 -49
  226. package/ToggleButton/index.js +14 -200
  227. package/Tooltip/index.d.ts +14 -11
  228. package/Tooltip/index.js +15 -335
  229. package/Transfer/index.d.ts +17 -18
  230. package/Transfer/index.js +14 -343
  231. package/Transfer/lang/en_US.d.ts +6 -6
  232. package/Transfer/lang/index.d.ts +13 -13
  233. package/Transfer/lang/zh_CN.d.ts +6 -6
  234. package/Tree/OperateBar/index.d.ts +13 -13
  235. package/Tree/Tree.d.ts +4 -4
  236. package/Tree/index.d.ts +5 -5
  237. package/Tree/index.js +14 -35
  238. package/Tree/interface.d.ts +207 -209
  239. package/Tree/lang/en_US.d.ts +8 -8
  240. package/Tree/lang/index.d.ts +17 -17
  241. package/Tree/lang/zh_CN.d.ts +8 -8
  242. package/Tree/utils/tools.d.ts +26 -26
  243. package/Tree/utils/treeUtil.d.ts +15 -15
  244. package/Upload/Dragger/index.d.ts +10 -10
  245. package/Upload/ErroTip/index.d.ts +13 -13
  246. package/Upload/ImageUpload/index.d.ts +14 -14
  247. package/Upload/ImgCrop/EasyCrop.d.ts +17 -17
  248. package/Upload/ImgCrop/constants.d.ts +7 -7
  249. package/Upload/ImgCrop/index.d.ts +6 -6
  250. package/Upload/ImgCrop/interface.d.ts +24 -24
  251. package/Upload/UploadList/index.d.ts +5 -5
  252. package/Upload/index.d.ts +15 -15
  253. package/Upload/index.js +14 -1542
  254. package/Upload/interface.d.ts +134 -134
  255. package/Upload/lang/en_US.d.ts +12 -12
  256. package/Upload/lang/index.d.ts +25 -25
  257. package/Upload/lang/zh_CN.d.ts +12 -12
  258. package/cdn/AutoBox/index.js +29 -0
  259. package/cdn/AutoTips/index.js +40 -0
  260. package/cdn/Breadcrumbs/index.js +53 -0
  261. package/cdn/Button/index.js +79 -0
  262. package/cdn/ButtonGroup/index.js +79 -0
  263. package/cdn/Carousel/index.js +6 -0
  264. package/cdn/Cascader/index.js +42 -0
  265. package/cdn/Checkbox/index.js +53 -0
  266. package/cdn/CheckboxGroup/index.js +53 -0
  267. package/cdn/Collapse/index.js +27 -0
  268. package/cdn/CollapseBox/index.js +1 -0
  269. package/cdn/ColorPicker/index.js +1 -0
  270. package/cdn/ComboSelect/index.js +438 -0
  271. package/cdn/Container/index.js +1 -0
  272. package/cdn/DatePicker/index.js +185 -0
  273. package/cdn/Desktop/index.js +24 -0
  274. package/cdn/Drawer/index.js +84 -0
  275. package/cdn/Empty/index.js +1 -0
  276. package/cdn/Form/index.js +477 -0
  277. package/cdn/FormItem/index.js +477 -0
  278. package/cdn/FunctionModal/index.js +144 -0
  279. package/cdn/GlobalContext/index.js +1 -0
  280. package/cdn/Help/index.js +53 -0
  281. package/cdn/HelperText/index.js +1 -0
  282. package/cdn/InputLang/index.js +144 -0
  283. package/cdn/InputNumber/index.js +118 -0
  284. package/cdn/Label/index.js +53 -0
  285. package/cdn/Loading/index.js +14 -0
  286. package/cdn/Menu/index.js +40 -0
  287. package/cdn/Message/index.js +53 -0
  288. package/cdn/Modal/index.js +144 -0
  289. package/cdn/MultiBox/index.js +131 -0
  290. package/cdn/Notification/index.js +66 -0
  291. package/cdn/OperateBtn/index.js +92 -0
  292. package/cdn/PageHeader/index.js +92 -0
  293. package/cdn/Pagination/index.js +214 -0
  294. package/cdn/ParauiProvider/index.js +9 -0
  295. package/cdn/PopConfirm/index.js +131 -0
  296. package/cdn/Popover/index.js +16 -0
  297. package/cdn/Popper/index.js +26 -0
  298. package/cdn/Progress/index.js +58 -0
  299. package/cdn/Querying/index.js +1 -0
  300. package/cdn/Radio/index.js +53 -0
  301. package/cdn/RadioGroup/index.js +53 -0
  302. package/cdn/Search/index.js +144 -0
  303. package/cdn/Select/index.js +131 -0
  304. package/cdn/SelectInput/index.js +131 -0
  305. package/cdn/SingleBox/index.js +131 -0
  306. package/cdn/Slider/index.js +16 -0
  307. package/cdn/Split/index.js +1 -0
  308. package/cdn/Stepper/index.js +154 -0
  309. package/cdn/Switch/index.js +71 -0
  310. package/cdn/Table/index.js +292 -0
  311. package/cdn/Tabs/index.js +165 -0
  312. package/cdn/Tag/index.js +27 -0
  313. package/cdn/Test/index.js +1 -0
  314. package/cdn/TextField/index.js +105 -0
  315. package/cdn/TimePicker/index.js +185 -0
  316. package/cdn/Timeline/index.js +16 -0
  317. package/cdn/ToggleButton/index.js +79 -0
  318. package/cdn/Tooltip/index.js +40 -0
  319. package/cdn/Transfer/index.js +170 -0
  320. package/cdn/Tree/index.js +170 -0
  321. package/cdn/Upload/index.js +252 -0
  322. package/index.d.ts +128 -128
  323. package/index.js +19 -160
  324. package/package.json +21 -54
  325. package/style.css +72 -0
  326. package/Dropdown/index.d.ts +0 -25
  327. package/Dropdown/index.js +0 -67
  328. package/Tabs/lang/en_US.d.ts +0 -4
  329. package/Tabs/lang/index.d.ts +0 -9
  330. package/Tabs/lang/zh_CN.d.ts +0 -4
  331. package/Timeline/TimelineItem.d.ts +0 -23
  332. package/Tooltip/interface.d.ts +0 -21
  333. package/Tooltip/utils.d.ts +0 -22
  334. package/_verture/defineProperty-0590dc61.js +0 -16
  335. package/_verture/index-2c0ecd8d.js +0 -778
  336. package/_verture/index-342379c6.js +0 -391
  337. package/_verture/index-a369ca3f.js +0 -4
  338. package/_verture/index-e2881a53.js +0 -16
  339. package/_verture/index-ee85b1cd.js +0 -1555
  340. package/_verture/intl-336570e4.js +0 -65
  341. package/_verture/modalContext-e7cc8067.js +0 -228
  342. package/_verture/slicedToArray-d7722f4b.js +0 -62
  343. package/_verture/style-inject.es-300983ab.js +0 -28
  344. package/_verture/toConsumableArray-f8047a75.js +0 -19
  345. package/_verture/tslib.es6-55ed4bd2.js +0 -38
  346. package/_verture/typeof-498dd2b1.js +0 -11
  347. package/_verture/useFormatMessage-ac9d6acf.js +0 -20
  348. package/_verture/useGlobalProps-af9a2af6.js +0 -12
package/Desktop/index.js CHANGED
@@ -1,853 +1,14 @@
1
- import { _ as _toConsumableArray } from '../_verture/toConsumableArray-f8047a75.js';
2
- import { _ as _slicedToArray } from '../_verture/slicedToArray-d7722f4b.js';
3
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
- import React__default, { useRef, useState, useMemo } from 'react';
5
- import { TextField } from '../TextField/index.js';
6
- import { Button } from '../Button/index.js';
7
- import { DeepClone } from '@paraview/lib';
8
- import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
9
- import '../_verture/typeof-498dd2b1.js';
10
- import '../_verture/tslib.es6-55ed4bd2.js';
11
- import '../Label/index.js';
12
- import '../Help/index.js';
13
- import '../Tooltip/index.js';
14
- import 'rc-tooltip';
15
- import 'rc-tooltip/lib/placements';
16
- import 'clsx';
17
- import '@para-ui/icons/Help';
18
- import '@para-ui/icons/PreviewClose';
19
- import '@para-ui/icons/PreviewOpen';
20
- import '@para-ui/icons/CloseCircle';
21
- import '../AutoTips/index.js';
22
- import '../Loading/index.js';
23
- import '@para-ui/icons/LoadingF';
24
- import '../HelperText/index.js';
25
- import '../_verture/useGlobalProps-af9a2af6.js';
26
- import '@para-ui/core/GlobalContext';
27
- import '../Dropdown/index.js';
28
- import 'rc-dropdown';
29
- import '@para-ui/icons/Forbid';
30
- import '@para-ui/icons/Down';
31
- import '../_verture/useFormatMessage-ac9d6acf.js';
32
-
33
- var css_248z = ".para-desktop {\n width: 100%;\n height: 100%;\n}\n.para-desktop .para-desktop-title {\n display: flex;\n height: 40px;\n line-height: 40px;\n font-size: 17px;\n margin: 15px 0;\n}\n.para-desktop .para-desktop-title > .para-desktop-backlist {\n float: left;\n width: 110px;\n margin: 5px;\n}\n.para-desktop .para-desktop-title > div {\n width: 100%;\n text-align: center;\n}\n.para-desktop .para-desktop-title > div > span {\n cursor: pointer;\n font-weight: bold;\n}\n.para-desktop .para-desktop-box {\n position: relative;\n width: 100%;\n height: calc(100% - 50px);\n}\n.para-desktop .para-desktop-box .desktop-item {\n position: absolute;\n top: 0;\n left: 0;\n background-color: #efefef;\n transition: top 0.5s, left 0.5s;\n user-select: none;\n box-shadow: 4px 4px 6px #dcdde3, -4px -4px 6px #f0f0f0;\n border-radius: 4px;\n cursor: pointer;\n color: #5b5b5b;\n}\n.para-desktop .para-desktop-box .desktop-item .item-name {\n text-align: center;\n position: absolute;\n bottom: 10px;\n width: 100%;\n font-size: 14px;\n}\n.para-desktop .para-desktop-box .desktop-item .item-dir-name {\n overflow: hidden;\n font-size: 17px;\n font-weight: bold;\n padding: 25px 15px;\n word-break: break-word;\n}\n.para-desktop .para-desktop-box .desktop-item .item-body {\n text-align: center;\n}\n.para-desktop .para-desktop-box .desktop-item .item-body img {\n height: 80px;\n margin-top: 25px;\n pointer-events: none;\n}\n.para-desktop .para-desktop-box .item-disable {\n box-shadow: none;\n background-color: #dbdbdb;\n cursor: not-allowed;\n}\n.para-desktop .para-desktop-box .item-disable img {\n opacity: 0.3;\n}\n.para-desktop .para-desktop-box [drag-item=true] {\n z-index: 2;\n transition: none;\n}\n.para-desktop .para-desktop-box [impact=true] {\n background-color: #E9EFFD;\n}\n.para-desktop .para-desktop-box [in-dir=true] {\n display: none !important;\n}\n.para-desktop .para-desktop-box .img-box {\n display: inline-block;\n width: 100%;\n text-align: center;\n margin-top: 10px;\n}\n.para-desktop .para-desktop-box .img-box > img {\n width: 100px;\n height: 100px;\n user-drag: none;\n}\n.para-desktop .para-desktop-box .desktop-dir .img-box {\n display: inline-block;\n}\n.para-desktop .para-desktop-box .desktop-dir .img-box > img {\n width: 40px;\n height: 40px;\n margin: 5px 15px;\n}\n.para-desktop .menu-list {\n position: absolute;\n box-shadow: 4px 4px 6px #dcdde3;\n background-color: #ffffff;\n font-size: 14px;\n border-radius: 4px;\n z-index: 10;\n display: none;\n transition: background-color 0.2s;\n}\n.para-desktop .menu-list .menu-item {\n padding: 5px 15px;\n cursor: pointer;\n}\n.para-desktop .menu-list .menu-item:hover {\n background-color: rgb(246, 246, 246);\n}";
34
- styleInject(css_248z);
35
-
36
- /** 默认图标 */
37
-
38
- var Icon = 'data:image/png;base64,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';
39
- var defaultMatrix = {
40
- width: 200,
41
- height: 150,
42
- gapX: 20,
43
- gapY: 20
44
- };
45
- /** 当前页面渲染map对象 */
46
-
47
- var map = [];
48
- var resizeTimeout;
49
- var saveTimeout;
50
- var dragData;
51
- var impactBorder = 0.3; // 左右碰撞边界阈值 < 0.5,当0.5时则无中心碰撞 | impactBorder | 100% - impactBorder * 2 | impactBorder |
52
-
53
- var dragLock = false;
54
- var dirItem;
55
- var contextMenuData;
56
- var Desktop = function Desktop(props) {
57
- var desktopRef = useRef();
58
- var menuRef = useRef();
59
- var _props$sort = props.sort,
60
- sort = _props$sort === void 0 ? {} : _props$sort;
61
-
62
- var _useState = useState(0),
63
- _useState2 = _slicedToArray(_useState, 2),
64
- line = _useState2[0],
65
- setLine = _useState2[1]; // 每行个数
66
-
67
-
68
- var _useState3 = useState([]),
69
- _useState4 = _slicedToArray(_useState3, 2),
70
- data = _useState4[0],
71
- setData = _useState4[1]; // 数据源
72
-
73
-
74
- var _useState5 = useState('_'),
75
- _useState6 = _slicedToArray(_useState5, 2),
76
- dir = _useState6[0],
77
- setDir = _useState6[1]; // _ 显示列表页, key显示文件夹
78
-
79
-
80
- var _useState7 = useState(false),
81
- _useState8 = _slicedToArray(_useState7, 2),
82
- showInput = _useState8[0],
83
- setShowInput = _useState8[1]; // 显示文件夹名字输入框
84
-
85
-
86
- var _useState9 = useState(''),
87
- _useState10 = _slicedToArray(_useState9, 2),
88
- inputValue = _useState10[0],
89
- setInputValue = _useState10[1]; // 文件夹名字
90
-
91
-
92
- var sortJson = sort[dir] || {};
93
- React__default.useEffect(function () {
94
- document.addEventListener('resize', function () {
95
- clearTimeout(resizeTimeout);
96
- resizeTimeout = setTimeout(function () {
97
- setLine(getLine());
98
- }, 200);
99
- });
100
- window.addEventListener('mousedown', function (e) {
101
- if (e.target.closest('.menu-list')) return;
102
- if (menuRef.current) menuRef.current.style.display = 'none';
103
- });
104
- }, []);
105
- React__default.useEffect(function () {
106
- setLine(getLine());
107
- setData(props.data);
108
- }, [props.data]);
109
- /**
110
- * 计算每行个数
111
- * @return number
112
- */
113
-
114
- var getLine = function getLine() {
115
- var desktop = desktopRef.current;
116
-
117
- if (desktop) {
118
- var rect = desktop.getBoundingClientRect();
119
- var itemLine = rect.width / (defaultMatrix.width + defaultMatrix.gapX) | 0;
120
- return itemLine;
121
- }
122
-
123
- return 1;
124
- };
125
- /**
126
- * 点击事件
127
- * @param e 元素
128
- */
129
-
130
-
131
- var onClick = function onClick(e) {
132
- if (dragLock) return;
133
- var key = e.currentTarget.getAttribute('data-key');
134
- var mapItem = getMapItem(key);
135
- if (mapItem.disable) return false;
136
-
137
- if (mapItem.type !== 'dir') {
138
- props.onClick && props.onClick(mapItem);
139
- return false;
140
- }
141
-
142
- dirItem = mapItem;
143
- setDir(mapItem.key);
144
- };
145
- /**
146
- * 右键菜单
147
- * @param e 元素
148
- */
149
-
150
-
151
- var onContextMenu = function onContextMenu(e) {
152
- if (dir === '_') return;
153
- e.preventDefault();
154
- if (dragLock) return;
155
- var key = e.currentTarget.getAttribute('data-key');
156
- contextMenuData = getMapItem(key);
157
- setPoint(menuRef.current, e.pageX, e.pageY);
158
- menuRef.current.style.display = 'block';
159
- };
160
- /**
161
- * 移出文件夹
162
- * @param e 元素
163
- */
164
-
165
-
166
- var outDir = function outDir(e) {
167
- if (dir === '_') return;
168
- var sortItem = getSortRootItem(dirItem.key);
169
- sortItem.children = sortItem.children.filter(function (key) {
170
- return key !== contextMenuData.key;
171
- });
172
- onSort();
173
-
174
- if (sortItem.children.length > 0) {
175
- var dom = getItemByKey(contextMenuData.key);
176
- if (dom) dom.style.display = 'none';
177
- var i = contextMenuData.index;
178
- var l = map.length - 1;
179
-
180
- for (; i < l; i++) {
181
- var item = map[i + 1];
182
- setNewPoint(item, i);
183
- }
184
-
185
- map.pop();
186
- } else {
187
- // 目录微空退出目录
188
- map.pop();
189
- delete sort[dirItem.key];
190
- backList();
191
- }
192
-
193
- menuRef.current.style.display = 'none';
194
- };
195
- /**
196
- * 返回列表
197
- */
198
-
199
-
200
- var backList = function backList() {
201
- dirItem = null;
202
- setDir('_');
203
- };
204
- /**
205
- * 应用节点
206
- * @param item 数据
207
- * @param index 下标
208
- * @param type 文件夹 / 单个组件
209
- * @return ReactNode
210
- */
211
-
212
-
213
- var getItem = function getItem(item, index, type) {
214
- map[index] = getItemData(item, index, type);
215
- item = map[index];
216
- var style = {
217
- left: map[index].point.x + 'px',
218
- top: map[index].point.y + 'px',
219
- width: defaultMatrix.width,
220
- height: defaultMatrix.height
221
- };
222
- return jsx("div", Object.assign({
223
- className: "desktop-item".concat(item.type === 'dir' ? ' desktop-dir' : '').concat(item.disable ? ' item-disable' : ''),
224
- onContextMenu: onContextMenu,
225
- onClick: onClick,
226
- style: style,
227
- "data-key": item.key,
228
- "data-index": index
229
- }, {
230
- children: type === 'dir' ? jsx("div", Object.assign({
231
- className: 'item-dir-name'
232
- }, {
233
- children: item.displayName
234
- })) : jsxs(Fragment, {
235
- children: [jsx("div", Object.assign({
236
- className: 'item-body'
237
- }, {
238
- children: jsx("img", {
239
- src: item.icon || Icon
240
- })
241
- })), jsx("div", Object.assign({
242
- className: 'item-name'
243
- }, {
244
- children: item.displayName
245
- }))]
246
- })
247
- }), dir + item.key + index + line);
248
- };
249
- /**
250
- * 节点数据
251
- * @param item 当前数据
252
- * @param index 下标
253
- * @param type 文件夹 / 单个组件
254
- */
255
-
256
-
257
- var getItemData = function getItemData(item, index, type) {
258
- return {
259
- index: index,
260
- data: item,
261
- key: item.key,
262
- icon: item.icon,
263
- disable: item.disable || false,
264
- type: type || 'item',
265
- displayName: item.displayName || item.name,
266
- point: getPoint(index),
267
- children: item.children || []
268
- };
269
- };
270
- /**
271
- * 获取位置大小
272
- * @param index 下标
273
- */
274
-
275
-
276
- var getPoint = function getPoint(index) {
277
- var w = defaultMatrix.width + defaultMatrix.gapX;
278
- var h = defaultMatrix.height + defaultMatrix.gapY;
279
- var indexX = index % line; // X行
280
-
281
- var indexY = index / line | 0; // Y行
282
-
283
- return {
284
- x: indexX * w,
285
- y: indexY * h,
286
- width: defaultMatrix.width,
287
- height: defaultMatrix.height
288
- };
289
- };
290
-
291
- var getAppMap = function getAppMap() {
292
- var appmap = {};
293
- props.data.forEach(function (item) {
294
- if (dir === '_') {
295
- appmap[item.key] = item;
296
- } else {
297
- if (dirItem.children.indexOf(item.key) !== -1) appmap[item.key] = item;
298
- }
299
- });
300
- return appmap;
301
- };
302
- /**
303
- * 渲染应用列表
304
- * @return ReactNode
305
- */
306
-
307
-
308
- var getList = React__default.useMemo(function () {
309
- if (line === 0) return null;
310
- map = []; // 存在排序数据
311
-
312
- if (sortJson.length > 0) {
313
- //dataMap
314
- var appmap = getAppMap();
315
- var index = 0;
316
- var list1 = sortJson.map(function (sortItem) {
317
- var key = sortItem.key,
318
- type = sortItem.type;
319
- if (!appmap[key] && type !== 'dir') return;
320
- var item = Object.assign({}, appmap[key]);
321
- delete appmap[key];
322
- var app;
323
-
324
- if (type === 'dir') {
325
- var isNull = true;
326
- sortItem.children.forEach(function (child) {
327
- if (appmap[child]) {
328
- isNull = false;
329
- delete appmap[child];
330
- }
331
- });
332
- if (isNull) return null; // 文件夹为空则不渲染
333
-
334
- app = getItem(sortItem, index, type);
335
- } else app = getItem(item, index);
336
-
337
- index++;
338
- return app;
339
- }); //if (dir === '_') {
340
- // 是否存在排序列表之外的应用
341
-
342
- var newapp = Object.keys(appmap);
343
-
344
- if (newapp.length > 0) {
345
- var list2 = newapp.map(function (key) {
346
- var item = appmap[key];
347
- return getItem(item, map.length);
348
- });
349
- list1 = [].concat(_toConsumableArray(list1), _toConsumableArray(list2));
350
- } //}
351
-
352
-
353
- return list1;
354
- } // 文件夹内部渲染
355
-
356
-
357
- if (dir !== '_' && dirItem) {
358
- var _appmap = getAppMap();
359
-
360
- var _index = 0;
361
- return dirItem.children.map(function (key) {
362
- if (!_appmap[key]) return null; // 过滤已经不存在的应用
363
-
364
- var app = getItem(_appmap[key], _index);
365
- _index++;
366
- return app;
367
- });
368
- } // 默认渲染
369
-
370
-
371
- return props.data.map(function (item, index) {
372
- return getItem(item, index);
373
- });
374
- }, [data, line, dir]);
375
- /**
376
- * mouseDown
377
- * @param e 元素
378
- */
379
-
380
- var onMouseDown = function onMouseDown(e) {
381
- if (dragLock) return; //reset();
382
-
383
- var target = e.target.closest('.desktop-item');
384
- if (!target) return;
385
- var index = target.getAttribute('data-index');
386
- dragData = Object.assign(Object.assign({}, map[index]), {
387
- target: target,
388
- start: {
389
- x: e.pageX,
390
- y: e.pageY
391
- }
392
- });
393
- target.setAttribute('drag-item', 'true');
394
- window.addEventListener('mousemove', onMouseMove);
395
- window.addEventListener('mouseup', onMouseUp);
396
- };
397
- /**
398
- * 拖拽目标
399
- * @param e {MouseEvent} 元素
400
- */
401
-
402
-
403
- var onMouseMove = function onMouseMove(e) {
404
- if (Math.abs(dragData.start.x - e.pageX) > 3) dragLock = true;
405
- var x = dragData.point.x + (e.pageX - dragData.start.x);
406
- var y = dragData.point.y + (e.pageY - dragData.start.y) + desktopRef.current.scrollTop;
407
- setPoint(dragData.target, x, y); // 计算光标碰撞
408
- //const list = Object.keys(map);
409
-
410
- var dragRect = {
411
- x: x,
412
- y: y,
413
- w: dragData.point.x + dragData.point.width,
414
- h: dragData.point.y + dragData.point.height,
415
- width: dragData.point.width,
416
- height: dragData.point.height
417
- };
418
- var dragCentre = {
419
- x: dragRect.x + dragRect.width / 2,
420
- y: dragRect.y + dragRect.height / 2
421
- };
422
-
423
- for (var i = 0, l = map.length; i < l; i++) {
424
- var item = map[i];
425
- if (!item || String(item.key) === String(dragData.key)) continue;
426
- if (item.parent && dir !== item.parent) continue;
427
- /*
428
- * x,y_____
429
- * | |
430
- * |_____w,h
431
- */
432
-
433
- var rect = {
434
- x: item.point.x,
435
- y: item.point.y,
436
- w: item.point.x + item.point.width,
437
- h: item.point.y + item.point.height
438
- };
439
- var border = impactBorder; // 中心点矩阵碰撞检测
440
-
441
- if (checkPointRange(dragCentre, rect)) {
442
- var impactDom = getItemByKey(item.key);
443
- if (!impactDom) continue;
444
- reset('impact');
445
- impactDom.setAttribute('impact', 'true');
446
- dragData.impact = {
447
- data: item,
448
- rect: rect
449
- };
450
- dragData.impact = {
451
- data: item,
452
- rect: rect
453
- };
454
-
455
- if (dragData.data.type === 'dir' || dir !== '_') {
456
- border = 0.5;
457
- } // 计算碰撞位置,左,中,右
458
-
459
-
460
- var _dragCentre = {
461
- x: dragRect.x + dragRect.width / 2,
462
- y: dragRect.y + dragRect.height / 2
463
- };
464
- var width = item.point.width;
465
-
466
- if (_dragCentre.x < rect.x + width * border) {
467
- dragData.position = 'left';
468
- setPoint(impactDom, rect.x + 50);
469
- } else if (_dragCentre.x > rect.w - width * border) {
470
- dragData.position = 'right';
471
- setPoint(impactDom, rect.x - 50);
472
- } else {
473
- dragData.position = 'centre';
474
- setPoint(impactDom, rect.x);
475
- }
476
-
477
- break;
478
- } else reset('impact');
479
- }
480
- };
481
- /**
482
- * 校验位置
483
- * @param point {x: number, y: number}
484
- * @param rect {x: number, y: number, w: number, h: number}
485
- */
486
-
487
-
488
- var checkPointRange = function checkPointRange(point, rect) {
489
- if (point.x > rect.x && point.y > rect.y && point.x < rect.w && point.y < rect.h) return point;
490
- };
491
- /**
492
- * 拖拽目标
493
- * @param e {MouseEvent} 元素
494
- */
495
-
496
-
497
- var onMouseUp = function onMouseUp(e) {
498
- window.removeEventListener('mousemove', onMouseMove);
499
- window.removeEventListener('mouseup', onMouseUp);
500
- setTimeout(function () {
501
- dragLock = false; //ckeckPoint();
502
- }, 100);
503
-
504
- if (dragData.impact) {
505
- var dragMapData = Object.assign({}, map[dragData.index]);
506
- var impact = dragData.impact.data;
507
- var impactDom = getItemByKey(impact.key);
508
-
509
- if (impact.index - dragData.index === -1 && dragData.position === 'right' || // 相邻右侧碰撞
510
- impact.index - dragData.index === 1 && dragData.position === 'left' || // 相邻左侧碰撞
511
- dragData.type === 'dir' && dragData.position === 'centre') {
512
- // 不做任何处理复位拖拽
513
- setPoint(dragData.target, dragData.point.x, dragData.point.y);
514
- reset();
515
- return;
516
- }
517
-
518
- var index = impact.index;
519
- var t;
520
- var l = dragData.index;
521
- var i = index;
522
-
523
- if (index > dragData.index) {
524
- // 碰撞目标在拖拽目标右侧
525
- t = 'R'; //l++;
526
-
527
- if (dragData.position === 'left') {
528
- i--; // 碰撞目标右侧,无需移位
529
-
530
- setPoint(impactDom, impact.point.x, impact.point.y);
531
- index--;
532
- }
533
- } else {
534
- // 碰撞目标在拖拽目标左侧
535
- t = 'L'; //l--;
536
-
537
- if (dragData.position === 'right') {
538
- i++; // 碰撞目标右侧,无需移位
539
-
540
- setPoint(impactDom, impact.point.x, impact.point.y);
541
- index++;
542
- }
543
- }
544
-
545
- Object.assign({}, map[index]); // 顺延坐标
546
-
547
- var temp;
548
-
549
- if (dragData.position === 'centre') {
550
- // 文件夹处理
551
- i = dragData.index;
552
- l = map.length - 1;
553
-
554
- for (; i < l; i++) {
555
- var item = map[i + 1];
556
- setNewPoint(item, i);
557
- }
558
-
559
- map.pop();
560
- } else {
561
- temp = Object.assign({}, map[l]); // 备份移动节点
562
-
563
- if (t === 'R') {
564
- for (; l < i; l++) {
565
- var _item = map[l + 1];
566
- setNewPoint(_item, l);
567
- }
568
- }
569
-
570
- if (t === 'L') {
571
- for (; l > i; l--) {
572
- var _item2 = map[l - 1];
573
- setNewPoint(_item2, l);
574
- }
575
- }
576
-
577
- setNewPoint(temp, i);
578
- } // 拖拽对象坐标设置
579
-
580
-
581
- if (dragData.position === 'centre') {
582
- // 文件夹处理
583
- if (impact.type === 'dir') addDir(impact, dragMapData);else newDir(impact, dragMapData, t);
584
- }
585
-
586
- reset('end');
587
- return;
588
- } else setPoint(dragData.target, dragData.point.x, dragData.point.y);
589
-
590
- reset();
591
- };
592
- /**
593
- * 新建文件夹
594
- * @param item {mapProps} 当前数据
595
- * @param dragMapData 碰撞对象
596
- * @param t 方向
597
- */
598
-
599
-
600
- var newDir = function newDir(item, dragMapData, t) {
601
- if (t === 'R') item.index--;
602
- var key = 'dir_' + item.key + (Math.random() * 1000000 | 0);
603
- map[item.index] = Object.assign(Object.assign({}, item), {
604
- key: key,
605
- point: getPoint(item.index),
606
- type: 'dir',
607
- displayName: '新建文件夹',
608
- children: [item.key, dragMapData.key]
609
- });
610
- var dirDom = getItemByKey(item.key);
611
- dirDom === null || dirDom === void 0 ? void 0 : dirDom.setAttribute('data-key', key);
612
- dirDom === null || dirDom === void 0 ? void 0 : dirDom.classList.add('desktop-dir');
613
- dirDom.innerHTML = "<div class=\"item-dir-name\">".concat(map[item.index].displayName, "</div>");
614
- var dragDataDom = getItemByKey(dragData.key);
615
- dragDataDom === null || dragDataDom === void 0 ? void 0 : dragDataDom.setAttribute('in-dir', 'true');
616
- };
617
- /**
618
- * 添加child
619
- * @param item {mapProps} 当前数据
620
- * @param dragMapData 碰撞对象
621
- */
622
-
623
-
624
- var addDir = function addDir(item, dragMapData) {
625
- var mapItem = getMapItem(item.key);
626
- if (!mapItem) return;
627
- mapItem.children.push(dragMapData.key);
628
- var dragDataDom = getItemByKey(dragData.key);
629
- dragDataDom === null || dragDataDom === void 0 ? void 0 : dragDataDom.setAttribute('in-dir', 'true');
630
- };
631
- /**
632
- * 获取数据
633
- * @param key 键值
634
- */
635
-
636
-
637
- var getMapItem = function getMapItem(key) {
638
- if (!key) return null;
639
-
640
- for (var i = 0, l = map.length; i < l; i++) {
641
- if (map[i].key === key) return map[i];
642
- }
643
-
644
- return null;
645
- };
646
- /**
647
- * 设置位置
648
- * @param item 当前数据
649
- * @param next 下一个节点索引
650
- * @param point 位置
651
- */
652
-
653
-
654
- var setNewPoint = function setNewPoint(item, next, point) {
655
- if (!item) return;
656
- if (!point) point = getPoint(next);
657
- var dom = getItemByKey(item.key);
658
- if (!dom) return;
659
- setPoint(dom, point === null || point === void 0 ? void 0 : point.x, point === null || point === void 0 ? void 0 : point.y); // 重新创建索引
660
-
661
- map[next] = Object.assign({}, item);
662
- map[next].index = next;
663
- map[next].point = point;
664
- dom === null || dom === void 0 ? void 0 : dom.setAttribute('data-index', next);
665
- };
666
- /**
667
- * 复位
668
- */
669
-
670
-
671
- var reset = function reset(type) {
672
- var _a, _b, _c;
673
-
674
- switch (type) {
675
- case "impact":
676
- var impactDom = document.querySelector('[impact="true"]');
677
- if (!impactDom) return;
678
-
679
- if (dragData && dragData.impact) {
680
- setPoint(impactDom, dragData.impact.rect.x, dragData.impact.rect.y);
681
- delete dragData.impact;
682
- }
683
-
684
- impactDom === null || impactDom === void 0 ? void 0 : impactDom.removeAttribute('impact');
685
- break;
686
-
687
- case "end":
688
- dragData = null;
689
- (_a = document.querySelector('[impact="true"]')) === null || _a === void 0 ? void 0 : _a.removeAttribute('impact');
690
- (_b = document.querySelector('[drag-item="true"]')) === null || _b === void 0 ? void 0 : _b.removeAttribute('drag-item');
691
- clearTimeout(saveTimeout);
692
- onSort();
693
- break;
694
-
695
- default:
696
- reset('impact');
697
- dragData = null;
698
- (_c = document.querySelector('[drag-item="true"]')) === null || _c === void 0 ? void 0 : _c.removeAttribute('drag-item');
699
- window.removeEventListener('mousemove', onMouseMove);
700
- window.removeEventListener('mouseup', onMouseUp);
701
- }
702
- };
703
- /**
704
- * 设置dom坐标
705
- * @param dom {HTMLElement | null | undefined} 元素
706
- * @param x 左
707
- * @param y 上
708
- */
709
-
710
-
711
- var setPoint = function setPoint(dom, x, y) {
712
- if (!dom) return;
713
- if (x !== undefined || x !== null) dom.style.left = x + 'px';
714
- if (y !== undefined || y !== null) dom.style.top = y + 'px';
715
- };
716
- /** 排序 */
717
-
718
-
719
- var onSort = function onSort() {
720
- if (!props.onSort) return;
721
- var data = [];
722
- var index = 0;
723
- map.forEach(function (item) {
724
- data[index] = {
725
- key: item.key,
726
- type: item.type
727
- };
728
- if (item.displayName !== undefined) data[index].displayName = item.displayName;
729
- if (item.children.length > 0) data[index].children = item.children;
730
- if (item.parent !== undefined) data[index].parent = item.parent;
731
- index++;
732
- });
733
- var sortData = DeepClone(sort);
734
- if (data.length > 0) sortData[dir] = data;
735
- props.onSort && props.onSort(sortData);
736
- };
737
- /**
738
- * 点击文件夹名字
739
- */
740
-
741
-
742
- var clickDirName = function clickDirName() {
743
- setShowInput(true);
744
- setInputValue(dirItem.displayName || '文件夹');
745
- };
746
- /**
747
- * 失去焦点设置文件夹名字
748
- */
749
-
750
-
751
- var blurInput = function blurInput() {
752
- dirItem.displayName = inputValue;
753
- setShowInput(false);
754
- var sortItem = getSortRootItem(dirItem.key);
755
- sortItem.displayName = inputValue;
756
- onSort();
757
- };
758
- /**
759
- * 通过key查询排序对象所在节点
760
- */
761
-
762
-
763
- var getSortRootItem = function getSortRootItem(key) {
764
- var sortList = sort['_'] || [];
765
-
766
- for (var i = 0, l = sortList.length; i < l; i++) {
767
- var sortItem = sortList[i];
768
- if (sortItem.key === key) return sortItem;
769
- }
770
- };
771
- /**
772
- * 改变输入框
773
- */
774
-
775
-
776
- var changeInput = function changeInput(event) {
777
- setInputValue(event.target.value);
778
- };
779
- /**
780
- * 文件夹头部
781
- */
782
-
783
-
784
- var DirTitleMemo = useMemo(function () {
785
- return dir !== '_' && jsxs("div", Object.assign({
786
- className: "para-desktop-title"
787
- }, {
788
- children: [jsx(Button, Object.assign({
789
- className: "para-desktop-backlist",
790
- onClick: backList
791
- }, {
792
- children: "\u8FD4\u56DE\u4E0A\u7EA7"
793
- })), jsx("div", {
794
- children: showInput ? jsx(TextField, {
795
- value: inputValue,
796
- autoFocus: true,
797
- onChange: changeInput,
798
- onBlur: blurInput
799
- }) : jsx("span", Object.assign({
800
- onClick: clickDirName
801
- }, {
802
- children: dirItem.displayName
803
- }))
804
- })]
805
- }));
806
- }, [dir, showInput, inputValue]);
807
- /**
808
- * 拖拽内容
809
- */
810
-
811
- var DragMemo = useMemo(function () {
812
- return jsx("div", Object.assign({
813
- ref: desktopRef,
814
- className: 'para-desktop-box',
815
- onMouseDown: onMouseDown
816
- }, {
817
- children: getList
818
- }));
819
- }, [line, data, dir, sort]);
820
- /**
821
- * 处理class
822
- * @return {string}
823
- */
824
-
825
- var handClass = function handClass() {
826
- var str = 'para-desktop paraui-desktop';
827
- if (props.className) str += ' ' + props.className;
828
- return str;
829
- };
830
-
831
- return jsxs("div", Object.assign({
832
- className: handClass(),
833
- style: props.style
834
- }, {
835
- children: [DirTitleMemo, DragMemo, jsx("div", Object.assign({
836
- ref: menuRef,
837
- className: 'menu-list'
838
- }, {
839
- children: jsx("div", Object.assign({
840
- className: 'menu-item',
841
- onClick: outDir
842
- }, {
843
- children: "\u79FB\u51FA\u6587\u4EF6\u5939"
844
- }))
845
- }))]
846
- }));
847
- };
848
-
849
- var getItemByKey = function getItemByKey(key) {
850
- return document.querySelector("[data-key=\"".concat(key, "\"]"));
851
- };
852
-
853
- export { Desktop, Desktop as default };
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("@material-ui/core"),require("@paraview/lib")):"function"==typeof define&&define.amd?define(["react","@material-ui/core","@paraview/lib"],t):"object"==typeof exports?exports.ParaUI=t(require("react"),require("@material-ui/core"),require("@paraview/lib")):e.ParaUI=t(e.react,e["@material-ui/core"],e["@paraview/lib"])}(self,(function(e,t,n){return function(){var r={8514:function(e,t,n){(t=n(3645)(!1)).push([e.id,".para-desktop{width:100%;height:100%}.para-desktop .para-desktop-title{display:flex;height:40px;line-height:40px;font-size:17px;margin:15px 0}.para-desktop .para-desktop-title>.para-desktop-backlist{float:left;width:110px;margin:5px}.para-desktop .para-desktop-title>div{width:100%;text-align:center}.para-desktop .para-desktop-title>div>span{cursor:pointer;font-weight:bold}.para-desktop .para-desktop-box{position:relative;width:100%;height:calc(100% - 50px)}.para-desktop .para-desktop-box .desktop-item{position:absolute;top:0;left:0;background-color:#efefef;transition:top .5s,left .5s;user-select:none;box-shadow:4px 4px 6px #dcdde3,-4px -4px 6px #f0f0f0;border-radius:4px;cursor:pointer;color:#5b5b5b}.para-desktop .para-desktop-box .desktop-item .item-name{text-align:center;position:absolute;bottom:10px;width:100%;font-size:14px}.para-desktop .para-desktop-box .desktop-item .item-dir-name{overflow:hidden;font-size:17px;font-weight:bold;padding:25px 15px;word-break:break-word}.para-desktop .para-desktop-box .desktop-item .item-body{text-align:center}.para-desktop .para-desktop-box .desktop-item .item-body img{height:80px;margin-top:25px;pointer-events:none}.para-desktop .para-desktop-box .item-disable{box-shadow:none;background-color:#dbdbdb;cursor:not-allowed}.para-desktop .para-desktop-box .item-disable img{opacity:.3}.para-desktop .para-desktop-box [drag-item=true]{z-index:2;transition:none}.para-desktop .para-desktop-box [impact=true]{background-color:#e9effd}.para-desktop .para-desktop-box [in-dir=true]{display:none !important}.para-desktop .para-desktop-box .img-box{display:inline-block;width:100%;text-align:center;margin-top:10px}.para-desktop .para-desktop-box .img-box>img{width:100px;height:100px;user-drag:none}.para-desktop .para-desktop-box .desktop-dir .img-box{display:inline-block}.para-desktop .para-desktop-box .desktop-dir .img-box>img{width:40px;height:40px;margin:5px 15px}.para-desktop .menu-list{position:absolute;box-shadow:4px 4px 6px #dcdde3;background-color:#fff;font-size:14px;border-radius:4px;z-index:10;display:none;transition:background-color .2s}.para-desktop .menu-list .menu-item{padding:5px 15px;cursor:pointer}.para-desktop .menu-list .menu-item:hover{background-color:#f6f6f6}",""]),e.exports=t},3645:function(e){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=function(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"==typeof btoa){var i=(a=r,p=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),d="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(p),"/*# ".concat(d," */")),o=r.sources.map((function(e){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(e," */")}));return[n].concat(o).concat([i]).join("\n")}var a,p,d;return[n].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var i={};if(r)for(var o=0;o<this.length;o++){var a=this[o][0];null!=a&&(i[a]=!0)}for(var p=0;p<e.length;p++){var d=[].concat(e[p]);r&&i[d[0]]||(n&&(d[2]?d[2]="".concat(n," and ").concat(d[2]):d[2]=n),t.push(d))}},t}},7418:function(e){"use strict";
2
+ /*
3
+ object-assign
4
+ (c) Sindre Sorhus
5
+ @license MIT
6
+ */var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,o){for(var a,p,d=i(e),s=1;s<arguments.length;s++){for(var u in a=Object(arguments[s]))n.call(a,u)&&(d[u]=a[u]);if(t){p=t(a);for(var c=0;c<p.length;c++)r.call(a,p[c])&&(d[p[c]]=a[p[c]])}}return d}},5251:function(e,t,n){"use strict";
7
+ /** @license React v17.0.2
8
+ * react-jsx-runtime.production.min.js
9
+ *
10
+ * Copyright (c) Facebook, Inc. and its affiliates.
11
+ *
12
+ * This source code is licensed under the MIT license found in the
13
+ * LICENSE file in the root directory of this source tree.
14
+ */n(7418);var r=n(8156),i=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var o=Symbol.for;i=o("react.element"),t.Fragment=o("react.fragment")}var a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p=Object.prototype.hasOwnProperty,d={key:!0,ref:!0,__self:!0,__source:!0};function s(e,t,n){var r,o={},s=null,u=null;for(r in void 0!==n&&(s=""+n),void 0!==t.key&&(s=""+t.key),void 0!==t.ref&&(u=t.ref),t)p.call(t,r)&&!d.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===o[r]&&(o[r]=t[r]);return{$$typeof:i,type:e,key:s,ref:u,props:o,_owner:a.current}}t.jsx=s,t.jsxs=s},5893:function(e,t,n){"use strict";e.exports=n(5251)},2203:function(e,t,n){var r=n(3379),i=n(8514);"string"==typeof(i=i.__esModule?i.default:i)&&(i=[[e.id,i,""]]);var o={insert:("body","body"),singleton:!1};r(i,o);e.exports=i.locals||{}},3379:function(e,t,n){"use strict";var r,i=function(){return void 0===r&&(r=Boolean(window&&document&&document.all&&!window.atob)),r},o=function(){var e={};return function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}e[t]=n}return e[t]}}(),a=[];function p(e){for(var t=-1,n=0;n<a.length;n++)if(a[n].identifier===e){t=n;break}return t}function d(e,t){for(var n={},r=[],i=0;i<e.length;i++){var o=e[i],d=t.base?o[0]+t.base:o[0],s=n[d]||0,u="".concat(d," ").concat(s);n[d]=s+1;var c=p(u),l={css:o[1],media:o[2],sourceMap:o[3]};-1!==c?(a[c].references++,a[c].updater(l)):a.push({identifier:u,updater:y(l,t),references:1}),r.push(u)}return r}function s(e){var t=document.createElement("style"),r=e.attributes||{};if(void 0===r.nonce){var i=n.nc;i&&(r.nonce=i)}if(Object.keys(r).forEach((function(e){t.setAttribute(e,r[e])})),"function"==typeof e.insert)e.insert(t);else{var a=o(e.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(t)}return t}var u,c=(u=[],function(e,t){return u[e]=t,u.filter(Boolean).join("\n")});function l(e,t,n,r){var i=n?"":r.media?"@media ".concat(r.media," {").concat(r.css,"}"):r.css;if(e.styleSheet)e.styleSheet.cssText=c(t,i);else{var o=document.createTextNode(i),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(o,a[t]):e.appendChild(o)}}function f(e,t,n){var r=n.css,i=n.media,o=n.sourceMap;if(i?e.setAttribute("media",i):e.removeAttribute("media"),o&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),e.styleSheet)e.styleSheet.cssText=r;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(r))}}var m=null,v=0;function y(e,t){var n,r,i;if(t.singleton){var o=v++;n=m||(m=s(t)),r=l.bind(null,n,o,!1),i=l.bind(null,n,o,!0)}else n=s(t),r=f.bind(null,n,t),i=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(n)};return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else i()}}e.exports=function(e,t){(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=i());var n=d(e=e||[],t);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var r=0;r<n.length;r++){var i=p(n[r]);a[i].references--}for(var o=d(e,t),s=0;s<n.length;s++){var u=p(n[s]);0===a[u].references&&(a[u].updater(),a.splice(u,1))}n=o}}}},670:function(e){"use strict";e.exports=t},8543:function(e){"use strict";e.exports=n},8156:function(t){"use strict";t.exports=e}},i={};function o(e){var t=i[e];if(void 0!==t)return t.exports;var n=i[e]={id:e,exports:{}};return r[e](n,n.exports,o),n.exports}o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nc=void 0;var a={};return function(){"use strict";o.r(a),o.d(a,{Desktop:function(){return b}});var e,t,n,r,i=o(5893),p=o(8156),d=o.n(p),s=o(670),u=o(8543),c=(o(2203),function(){return c=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},c.apply(this,arguments)}),l=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))},f=200,m=150,v=20,y=20,k=[],h=!1,b=function(o){var a=(0,p.useRef)(),b=(0,p.useRef)(),g=o.sort,S=void 0===g?{}:g,q=(0,p.useState)(0),j=q[0],R=q[1],w=(0,p.useState)([]),O=w[0],G=w[1],Z=(0,p.useState)("_"),N=Z[0],M=Z[1],W=(0,p.useState)(!1),J=W[0],T=W[1],P=(0,p.useState)(""),U=P[0],D=P[1],E=S[N]||{};d().useEffect((function(){document.addEventListener("resize",(function(){clearTimeout(e),e=setTimeout((function(){R(L())}),200)})),window.addEventListener("mousedown",(function(e){e.target.closest(".menu-list")||b.current&&(b.current.style.display="none")}))}),[]),d().useEffect((function(){R(L()),G(o.data)}),[o.data]);var z,L=function(){var e=a.current;return e?e.getBoundingClientRect().width/(f+v)|0:1},F=function(e){if(!h){var t=e.currentTarget.getAttribute("data-key"),r=te(t);if(r.disable)return!1;if("dir"!==r.type)return o.onClick&&o.onClick(r),!1;n=r,M(r.key)}},X=function(e){if("_"!==N&&(e.preventDefault(),!h)){var t=e.currentTarget.getAttribute("data-key");r=te(t),ie(b.current,e.pageX,e.pageY),b.current.style.display="block"}},H=function(){n=null,M("_")},V=function(e,t,n){k[t]=C(e,t,n),e=k[t];var r={left:k[t].point.x+"px",top:k[t].point.y+"px",width:f,height:m};return(0,i.jsx)("div",c({className:"desktop-item".concat("dir"===e.type?" desktop-dir":"").concat(e.disable?" item-disable":""),onContextMenu:X,onClick:F,style:r,"data-key":e.key,"data-index":t},{children:"dir"===n?(0,i.jsx)("div",c({className:"item-dir-name"},{children:e.displayName})):(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("div",c({className:"item-body"},{children:(0,i.jsx)("img",{src:e.icon||"data:image/png;base64,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"})})),(0,i.jsx)("div",c({className:"item-name"},{children:e.displayName}))]})}),N+e.key+t+j)},C=function(e,t,n){return{index:t,data:e,key:e.key,icon:e.icon,disable:e.disable||!1,type:n||"item",displayName:e.displayName||e.name,point:Y(t),children:e.children||[]}},Y=function(e){return{x:e%j*(f+v),y:(e/j|0)*(m+y),width:f,height:m}},I=function(){var e={};return o.data.forEach((function(t){("_"===N||-1!==n.children.indexOf(t.key))&&(e[t.key]=t)})),e},B=d().useMemo((function(){if(0===j)return null;if(k=[],E.length>0){var e=I(),t=0,r=E.map((function(n){var r=n.key,i=n.type;if(e[r]||"dir"===i){var o,a=c({},e[r]);if(delete e[r],"dir"===i){var p=!0;if(n.children.forEach((function(t){e[t]&&(p=!1,delete e[t])})),p)return null;o=V(n,t,i)}else o=V(a,t);return t++,o}})),i=Object.keys(e);if(i.length>0){var a=i.map((function(t){var n=e[t];return V(n,k.length)}));r=l(l([],r,!0),a,!0)}return r}if("_"!==N&&n){var p=I(),d=0;return n.children.map((function(e){if(!p[e])return null;var t=V(p[e],d);return d++,t}))}return o.data.map((function(e,t){return V(e,t)}))}),[O,j,N]),K=function(e){if(!h){var n=e.target.closest(".desktop-item");if(n){var r=n.getAttribute("data-index");t=c(c({},k[r]),{target:n,start:{x:e.pageX,y:e.pageY}}),n.setAttribute("drag-item","true"),window.addEventListener("mousemove",A),window.addEventListener("mouseup",_)}}},A=function(e){Math.abs(t.start.x-e.pageX)>3&&(h=!0);var n=t.point.x+(e.pageX-t.start.x),r=t.point.y+(e.pageY-t.start.y)+a.current.scrollTop;ie(t.target,n,r);for(var i=n,o=r,p=(t.point.x,t.point.width,t.point.y,t.point.height,t.point.width),d=t.point.height,s={x:i+p/2,y:o+d/2},u=0,c=k.length;u<c;u++){var l=k[u];if(l&&String(l.key)!==String(t.key)&&(!l.parent||N===l.parent)){var f={x:l.point.x,y:l.point.y,w:l.point.x+l.point.width,h:l.point.y+l.point.height},m=.3;if(Q(s,f)){var v=x(l.key);if(!v)continue;re("impact"),v.setAttribute("impact","true"),t.impact={data:l,rect:f},t.impact={data:l,rect:f},"dir"!==t.data.type&&"_"===N||(m=.5);var y={x:i+p/2,y:o+d/2},b=l.point.width;y.x<f.x+b*m?(t.position="left",ie(v,f.x+50)):y.x>f.w-b*m?(t.position="right",ie(v,f.x-50)):(t.position="centre",ie(v,f.x));break}re("impact")}}},Q=function(e,t){if(e.x>t.x&&e.y>t.y&&e.x<t.w&&e.y<t.h)return e},_=function(e){if(window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",_),setTimeout((function(){h=!1}),100),t.impact){var n=c({},k[t.index]),r=t.impact.data,i=x(r.key);if(r.index-t.index==-1&&"right"===t.position||r.index-t.index==1&&"left"===t.position||"dir"===t.type&&"centre"===t.position)return ie(t.target,t.point.x,t.point.y),void re();var o=r.index,a=void 0,p=t.index,d=o;o>t.index?(a="R","left"===t.position&&(d--,ie(i,r.point.x,r.point.y),o--)):(a="L","right"===t.position&&(d++,ie(i,r.point.x,r.point.y),o++));c({},k[o]);var s=void 0;if("centre"===t.position){for(d=t.index,p=k.length-1;d<p;d++){var u=k[d+1];ne(u,d)}k.pop()}else{if(s=c({},k[p]),"R"===a)for(;p<d;p++){u=k[p+1];ne(u,p)}if("L"===a)for(;p>d;p--){u=k[p-1];ne(u,p)}ne(s,d)}return"centre"===t.position&&("dir"===r.type?ee(r,n):$(r,n,a)),void re("end")}ie(t.target,t.point.x,t.point.y),re()},$=function(e,n,r){"R"===r&&e.index--;var i="dir_"+e.key+(1e6*Math.random()|0);k[e.index]=c(c({},e),{key:i,point:Y(e.index),type:"dir",displayName:"新建文件夹",children:[e.key,n.key]});var o=x(e.key);null==o||o.setAttribute("data-key",i),null==o||o.classList.add("desktop-dir"),o.innerHTML='<div class="item-dir-name">'.concat(k[e.index].displayName,"</div>");var a=x(t.key);null==a||a.setAttribute("in-dir","true")},ee=function(e,n){var r=te(e.key);if(r){r.children.push(n.key);var i=x(t.key);null==i||i.setAttribute("in-dir","true")}},te=function(e){if(!e)return null;for(var t=0,n=k.length;t<n;t++)if(k[t].key===e)return k[t];return null},ne=function(e,t,n){if(e){n||(n=Y(t));var r=x(e.key);r&&(ie(r,null==n?void 0:n.x,null==n?void 0:n.y),k[t]=c({},e),k[t].index=t,k[t].point=n,null==r||r.setAttribute("data-index",t))}},re=function(e){var n,r,i;switch(e){case"impact":var o=document.querySelector('[impact="true"]');if(!o)return;t&&t.impact&&(ie(o,t.impact.rect.x,t.impact.rect.y),delete t.impact),null==o||o.removeAttribute("impact");break;case"end":t=null,null===(n=document.querySelector('[impact="true"]'))||void 0===n||n.removeAttribute("impact"),null===(r=document.querySelector('[drag-item="true"]'))||void 0===r||r.removeAttribute("drag-item"),clearTimeout(undefined),oe();break;default:re("impact"),t=null,null===(i=document.querySelector('[drag-item="true"]'))||void 0===i||i.removeAttribute("drag-item"),window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",_)}},ie=function(e,t,n){e&&(void 0===t&&null===t||(e.style.left=t+"px"),void 0===n&&null===n||(e.style.top=n+"px"))},oe=function(){if(o.onSort){var e=[],t=0;k.forEach((function(n){e[t]={key:n.key,type:n.type},void 0!==n.displayName&&(e[t].displayName=n.displayName),n.children.length>0&&(e[t].children=n.children),void 0!==n.parent&&(e[t].parent=n.parent),t++}));var n=(0,u.DeepClone)(S);e.length>0&&(n[N]=e),o.onSort&&o.onSort(n)}},ae=function(){T(!0),D(n.displayName||"文件夹")},pe=function(){n.displayName=U,T(!1),de(n.key).displayName=U,oe()},de=function(e){for(var t=S._||[],n=0,r=t.length;n<r;n++){var i=t[n];if(i.key===e)return i}},se=function(e){D(e.target.value)},ue=(0,p.useMemo)((function(){return"_"!==N&&(0,i.jsxs)("div",c({className:"para-desktop-title"},{children:[(0,i.jsx)(s.Button,c({className:"para-desktop-backlist",onClick:H},{children:"返回上级"})),(0,i.jsx)("div",{children:J?(0,i.jsx)(s.TextField,{value:U,autoFocus:!0,onChange:se,onBlur:pe}):(0,i.jsx)("span",c({onClick:ae},{children:n.displayName}))})]}))}),[N,J,U]),ce=(0,p.useMemo)((function(){return(0,i.jsx)("div",c({ref:a,className:"para-desktop-box",onMouseDown:K},{children:B}))}),[j,O,N,S]);return(0,i.jsxs)("div",c({className:(z="para-desktop paraui-desktop",o.className&&(z+=" "+o.className),z)},{children:[ue,ce,(0,i.jsx)("div",c({ref:b,className:"menu-list"},{children:(0,i.jsx)("div",c({className:"menu-item",onClick:function(e){if("_"!==N){var t=de(n.key);if(t.children=t.children.filter((function(e){return e!==r.key})),oe(),t.children.length>0){var i=x(r.key);i&&(i.style.display="none");for(var o=r.index,a=k.length-1;o<a;o++){var p=k[o+1];ne(p,o)}k.pop()}else k.pop(),delete S[n.key],H();b.current.style.display="none"}}},{children:"移出文件夹"}))}))]}))},x=function(e){return document.querySelector('[data-key="'.concat(e,'"]'))};a.default=b}(),a}()}));