@teamix/pro 1.4.25-bugfix → 1.4.25-bugfix.2

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 (356) hide show
  1. package/dist/pro.all.min.css +1 -0
  2. package/dist/pro.css +1 -1
  3. package/dist/pro.js +78506 -59443
  4. package/dist/pro.min.css +1 -1
  5. package/dist/pro.min.js +1 -1
  6. package/dist/pro.min.js.LICENSE.txt +13 -6
  7. package/dist/pro.xconsole.min.css +1 -0
  8. package/es/actions/base.js +8 -21
  9. package/es/actions/dialog-component.js +2 -9
  10. package/es/actions/dialog-form.js +37 -75
  11. package/es/actions/dialog-info.js +1 -5
  12. package/es/actions/dialog.js +57 -95
  13. package/es/actions/index.d.ts +7 -0
  14. package/es/actions/index.js +93 -153
  15. package/es/actions/index.scss +6 -1
  16. package/es/actions/link.js +3 -5
  17. package/es/actions/quick.d.ts +2 -0
  18. package/es/actions/quick.js +26 -0
  19. package/es/actions/request.js +12 -27
  20. package/es/actions/utils.js +1 -9
  21. package/es/card/card-container.js +0 -5
  22. package/es/card/divider.js +0 -5
  23. package/es/card/index.js +61 -100
  24. package/es/card/index.scss +15 -0
  25. package/es/card/selectable.js +4 -13
  26. package/es/card/tab.js +1 -10
  27. package/es/card/utils.js +0 -2
  28. package/es/card/xconsole.scss +3 -0
  29. package/es/form/Components/Editable/index.js +16 -55
  30. package/es/form/Components/FormGroup/index.d.ts +1 -0
  31. package/es/form/Components/FormGroup/index.js +7 -22
  32. package/es/form/Components/LightFilter/index.js +15 -35
  33. package/es/form/Components/ProField/index.js +2 -14
  34. package/es/form/Components/ProField/mapDateFormat.js +2 -28
  35. package/es/form/Components/Text/index.d.ts +1 -0
  36. package/es/form/Components/Text/index.js +2 -11
  37. package/es/form/Filter/AdvancedFilter.js +11 -26
  38. package/es/form/Filter/Layout.js +11 -24
  39. package/es/form/Filter/LightFilter.js +13 -24
  40. package/es/form/Filter/SimpleFilter.js +7 -21
  41. package/es/form/Filter/index.js +117 -171
  42. package/es/form/Filter/index2.js +11 -28
  43. package/es/form/Filter/layout.scss +1 -1
  44. package/es/form/Filter/useBindUrl.js +18 -46
  45. package/es/form/Filter/useSpecialProps.js +8 -13
  46. package/es/form/ProForm/addCascadeEffect.d.ts +2 -0
  47. package/es/form/ProForm/addCascadeEffect.js +203 -0
  48. package/es/form/ProForm/customComponent.js +0 -5
  49. package/es/form/ProForm/index.js +30 -38
  50. package/es/form/ProForm/useAutoLayout.js +21 -42
  51. package/es/form/ProForm/useAutoSubmit.js +3 -8
  52. package/es/form/ProForm/useFieldRequest.js +0 -5
  53. package/es/form/ProForm/useFormDisplayValues.js +12 -28
  54. package/es/form/ProForm/useInitialRequest.js +0 -5
  55. package/es/form/SchemaForm/adapterComponent.js +0 -3
  56. package/es/form/SchemaForm/adapterDecorator.d.ts +1 -1
  57. package/es/form/SchemaForm/adapterDecorator.js +0 -8
  58. package/es/form/SchemaForm/adapterType.js +0 -2
  59. package/es/form/SchemaForm/index.js +78 -114
  60. package/es/form/SchemaForm/initializeArrayCards.js +0 -6
  61. package/es/form/SchemaForm/initializeArrayCollapse.js +0 -6
  62. package/es/form/SchemaForm/initializeArrayItems.js +2 -9
  63. package/es/form/SchemaForm/initializeArrayTable.js +21 -34
  64. package/es/form/SchemaForm/initializeDataSource.js +2 -6
  65. package/es/form/SchemaForm/initializeFormButton.js +14 -31
  66. package/es/form/SchemaForm/initializeFormCollapse.js +8 -18
  67. package/es/form/SchemaForm/initializeFormGroup.js +10 -20
  68. package/es/form/SchemaForm/initializeFormStep.js +11 -23
  69. package/es/form/SchemaForm/initializeFormTab.js +10 -20
  70. package/es/form/SchemaForm/initializeReactions.js +9 -33
  71. package/es/form/SchemaForm/initializeRequest.js +2 -16
  72. package/es/form/SchemaForm/initializeRules.js +4 -22
  73. package/es/form/SchemaForm/initializeSelectTable.js +7 -33
  74. package/es/form/SchemaForm/reactions.js +19 -34
  75. package/es/form/docs/ActionResponse.d.ts +1 -0
  76. package/es/form/index.d.ts +9 -9
  77. package/es/form/index.js +0 -9
  78. package/es/form/typing.d.ts +26 -4
  79. package/es/form/utils.d.ts +1 -1
  80. package/es/form/utils.js +4 -49
  81. package/es/form/warning.js +2 -7
  82. package/es/global.scss +3 -1
  83. package/es/index-without-icon.js +4 -3
  84. package/es/index.d.ts +1 -1
  85. package/es/index.js +18 -8
  86. package/es/info/components/InfoGroup/index.js +21 -32
  87. package/es/info/components/InfoValueItem/index.js +66 -119
  88. package/es/info/components/ProInfoItem/index.js +13 -21
  89. package/es/info/components/baseInfo/index.js +17 -27
  90. package/es/info/components/headerInfo/index.js +8 -20
  91. package/es/info/components/tableInfo/index.js +20 -50
  92. package/es/info/index.js +61 -86
  93. package/es/info/typing.d.ts +2 -0
  94. package/es/info/utils/index.js +0 -11
  95. package/es/next-xconsole.scss +34 -0
  96. package/es/nocode/configurators/ProTable.js +1 -22
  97. package/es/nocode/configurators/common.js +5 -6
  98. package/es/nocode/configurators/index.js +2 -3
  99. package/es/nocode/index.js +6 -6
  100. package/es/nocode/pages/editor.js +5 -9
  101. package/es/nocode/pages/index.js +5 -30
  102. package/es/nocode/pages/playground.js +18 -35
  103. package/es/nocode/pages/renderer.js +9 -42
  104. package/es/nocode/playground.js +10 -23
  105. package/es/page-header/index.d.ts +2 -2
  106. package/es/page-header/index.js +40 -76
  107. package/es/page-header/index.scss +2 -1
  108. package/es/page-header/xconsole.scss +5 -0
  109. package/es/sidebar/components/sidebar-container/index.js +54 -69
  110. package/es/sidebar/components/sidebar-container/index.scss +21 -14
  111. package/es/sidebar/components/tree/index.js +100 -138
  112. package/es/sidebar/components/tree-node/components/HoverTooltip/index.js +11 -26
  113. package/es/sidebar/components/tree-node/components/IconAction/index.js +9 -35
  114. package/es/sidebar/components/tree-node/components/IconSwitch/index.d.ts +2 -2
  115. package/es/sidebar/components/tree-node/components/IconSwitch/index.js +12 -25
  116. package/es/sidebar/components/tree-node/components/IconSwitch/index.scss +1 -1
  117. package/es/sidebar/components/tree-node/index.js +42 -84
  118. package/es/sidebar/components/tree-node/index.scss +6 -0
  119. package/es/sidebar/index.d.ts +2 -0
  120. package/es/sidebar/index.js +72 -95
  121. package/es/sidebar/typing.d.ts +4 -0
  122. package/es/sidebar/utils/action-ref.js +2 -7
  123. package/es/sidebar/utils/index.d.ts +5 -2
  124. package/es/sidebar/utils/index.js +41 -98
  125. package/es/table/components/CardView/index.d.ts +5 -0
  126. package/es/table/components/CardView/index.js +392 -0
  127. package/es/table/components/CardView/index.scss +46 -0
  128. package/es/table/components/Filter/index.d.ts +6 -3
  129. package/es/table/components/Filter/index.js +115 -128
  130. package/es/table/components/Layout/index.js +32 -47
  131. package/es/table/components/Layout/index.scss +2 -1
  132. package/es/table/components/LoadMore/index.d.ts +20 -0
  133. package/es/table/components/LoadMore/index.js +88 -0
  134. package/es/table/components/LoadMore/index.scss +19 -0
  135. package/es/table/components/Pagination/index.js +25 -58
  136. package/es/table/components/QuickAction/index.d.ts +1 -0
  137. package/es/table/components/QuickAction/index.js +3 -11
  138. package/es/table/components/ToolBar/CardSwitch.d.ts +8 -0
  139. package/es/table/components/ToolBar/CardSwitch.js +52 -0
  140. package/es/table/components/ToolBar/DensityIcon.js +19 -31
  141. package/es/table/components/ToolBar/FilterColumnIcon.js +87 -125
  142. package/es/table/components/ToolBar/FullScreenIcon.js +7 -62
  143. package/es/table/components/ToolBar/Fullscreen.js +25 -28
  144. package/es/table/components/ToolBar/RefreshIcon.js +162 -27
  145. package/es/table/components/ToolBar/index.d.ts +1 -1
  146. package/es/table/components/ToolBar/index.js +130 -38
  147. package/es/table/components/ToolBar/index.scss +49 -3
  148. package/es/table/index.js +455 -423
  149. package/es/table/index.scss +8 -0
  150. package/es/table/typing.d.ts +125 -6
  151. package/es/table/utils/columnRender.d.ts +3 -3
  152. package/es/table/utils/columnRender.js +39 -79
  153. package/es/table/utils/genProColumnToColumn.d.ts +2 -2
  154. package/es/table/utils/genProColumnToColumn.js +13 -16
  155. package/es/table/utils/index.js +14 -47
  156. package/es/table/utils/pureColumnRender.js +21 -53
  157. package/es/table/utils/pureGenProColumnToColumn.d.ts +1 -1
  158. package/es/table/utils/pureGenProColumnToColumn.js +2 -10
  159. package/es/table/utils/useTableSelection.js +6 -33
  160. package/es/table/utils/util.d.ts +5 -0
  161. package/es/table/utils/util.js +19 -0
  162. package/es/templates/List/index.js +2 -9
  163. package/es/timeline/ProTimeLineItem/index.js +25 -65
  164. package/es/timeline/index.js +8 -22
  165. package/es/timeline/typing.d.ts +1 -0
  166. package/es/utils/message.d.ts +2 -2
  167. package/es/utils/message.js +0 -5
  168. package/es/xconsole.scss +503 -0
  169. package/lib/actions/base.js +8 -24
  170. package/lib/actions/confirm.js +0 -5
  171. package/lib/actions/danger-confirm.js +0 -5
  172. package/lib/actions/danger-pop-confirm.js +0 -4
  173. package/lib/actions/dialog-component.js +2 -15
  174. package/lib/actions/dialog-form.js +36 -89
  175. package/lib/actions/dialog-info.js +1 -10
  176. package/lib/actions/dialog-table.js +0 -5
  177. package/lib/actions/dialog.js +55 -112
  178. package/lib/actions/drawer-form.js +0 -3
  179. package/lib/actions/drawer-info.js +0 -3
  180. package/lib/actions/drawer-table.js +0 -3
  181. package/lib/actions/drawer.js +0 -4
  182. package/lib/actions/error.js +0 -5
  183. package/lib/actions/index.d.ts +7 -0
  184. package/lib/actions/index.js +115 -184
  185. package/lib/actions/index.scss +6 -1
  186. package/lib/actions/link.js +1 -10
  187. package/lib/actions/notice.js +0 -5
  188. package/lib/actions/pop-confirm.js +0 -5
  189. package/lib/actions/quick.d.ts +2 -0
  190. package/lib/actions/quick.js +33 -0
  191. package/lib/actions/request.js +8 -32
  192. package/lib/actions/utils.js +1 -9
  193. package/lib/card/card-container.js +0 -9
  194. package/lib/card/divider.js +0 -7
  195. package/lib/card/index.js +61 -127
  196. package/lib/card/index.scss +15 -0
  197. package/lib/card/selectable.js +4 -20
  198. package/lib/card/tab.js +1 -14
  199. package/lib/card/utils.js +0 -6
  200. package/lib/card/xconsole.scss +3 -0
  201. package/lib/field/index.js +0 -6
  202. package/lib/form/Components/Editable/index.js +15 -65
  203. package/lib/form/Components/FormGroup/index.d.ts +1 -0
  204. package/lib/form/Components/FormGroup/index.js +7 -28
  205. package/lib/form/Components/LightFilter/index.js +15 -47
  206. package/lib/form/Components/ProField/index.js +2 -21
  207. package/lib/form/Components/ProField/mapDateFormat.js +2 -32
  208. package/lib/form/Components/Text/index.d.ts +1 -0
  209. package/lib/form/Components/Text/index.js +2 -16
  210. package/lib/form/Filter/AdvancedFilter.js +11 -34
  211. package/lib/form/Filter/Layout.js +11 -33
  212. package/lib/form/Filter/LightFilter.js +13 -32
  213. package/lib/form/Filter/SimpleFilter.js +5 -27
  214. package/lib/form/Filter/index.js +116 -191
  215. package/lib/form/Filter/index2.js +11 -38
  216. package/lib/form/Filter/layout.scss +1 -1
  217. package/lib/form/Filter/useBindUrl.js +18 -50
  218. package/lib/form/Filter/useSpecialProps.js +6 -13
  219. package/lib/form/ProForm/addCascadeEffect.d.ts +2 -0
  220. package/lib/form/ProForm/addCascadeEffect.js +210 -0
  221. package/lib/form/ProForm/customComponent.js +0 -8
  222. package/lib/form/ProForm/index.js +30 -60
  223. package/lib/form/ProForm/useAutoLayout.js +21 -45
  224. package/lib/form/ProForm/useAutoSubmit.js +1 -10
  225. package/lib/form/ProForm/useFieldRequest.js +0 -8
  226. package/lib/form/ProForm/useFormDisplayValues.js +12 -34
  227. package/lib/form/ProForm/useInitialRequest.js +0 -6
  228. package/lib/form/SchemaForm/adapterComponent.js +0 -6
  229. package/lib/form/SchemaForm/adapterDecorator.d.ts +1 -1
  230. package/lib/form/SchemaForm/adapterDecorator.js +0 -12
  231. package/lib/form/SchemaForm/adapterType.js +0 -5
  232. package/lib/form/SchemaForm/index.js +78 -144
  233. package/lib/form/SchemaForm/initializeArrayCards.js +0 -7
  234. package/lib/form/SchemaForm/initializeArrayCollapse.js +0 -7
  235. package/lib/form/SchemaForm/initializeArrayItems.js +2 -10
  236. package/lib/form/SchemaForm/initializeArrayTable.js +21 -34
  237. package/lib/form/SchemaForm/initializeDataSource.js +2 -8
  238. package/lib/form/SchemaForm/initializeFormButton.js +14 -32
  239. package/lib/form/SchemaForm/initializeFormCollapse.js +8 -18
  240. package/lib/form/SchemaForm/initializeFormGroup.js +10 -20
  241. package/lib/form/SchemaForm/initializeFormStep.js +11 -23
  242. package/lib/form/SchemaForm/initializeFormTab.js +10 -20
  243. package/lib/form/SchemaForm/initializeReactions.js +9 -37
  244. package/lib/form/SchemaForm/initializeRequest.js +2 -18
  245. package/lib/form/SchemaForm/initializeRules.js +4 -24
  246. package/lib/form/SchemaForm/initializeSelectTable.js +7 -36
  247. package/lib/form/SchemaForm/reactions.js +17 -37
  248. package/lib/form/docs/ActionResponse.d.ts +1 -0
  249. package/lib/form/docs/ActionResponse.js +0 -5
  250. package/lib/form/index.d.ts +9 -9
  251. package/lib/form/index.js +0 -25
  252. package/lib/form/typing.d.ts +26 -4
  253. package/lib/form/utils.d.ts +1 -1
  254. package/lib/form/utils.js +4 -61
  255. package/lib/form/warning.js +2 -8
  256. package/lib/global.scss +3 -1
  257. package/lib/hooks/index.js +0 -5
  258. package/lib/index-without-icon.js +2 -36
  259. package/lib/index.d.ts +1 -1
  260. package/lib/index.js +13 -40
  261. package/lib/info/components/InfoGroup/index.js +21 -42
  262. package/lib/info/components/InfoValueItem/index.js +66 -134
  263. package/lib/info/components/ProInfoItem/index.js +13 -29
  264. package/lib/info/components/baseInfo/index.js +17 -39
  265. package/lib/info/components/headerInfo/index.js +8 -31
  266. package/lib/info/components/tableInfo/index.js +20 -62
  267. package/lib/info/index.js +61 -101
  268. package/lib/info/typing.d.ts +2 -0
  269. package/lib/info/utils/index.js +0 -19
  270. package/lib/info/utils/utils.js +0 -1
  271. package/lib/next-xconsole.scss +34 -0
  272. package/lib/nocode/configurators/PageHeader.js +0 -2
  273. package/lib/nocode/configurators/ProTable.js +1 -24
  274. package/lib/nocode/configurators/common.js +5 -10
  275. package/lib/nocode/configurators/index.js +2 -10
  276. package/lib/nocode/configurators/map.js +0 -5
  277. package/lib/nocode/index.js +0 -11
  278. package/lib/nocode/pages/editor.js +5 -19
  279. package/lib/nocode/pages/index.js +3 -35
  280. package/lib/nocode/pages/playground.js +18 -52
  281. package/lib/nocode/pages/renderer.js +9 -53
  282. package/lib/nocode/playground.js +10 -35
  283. package/lib/page-container/index.js +0 -6
  284. package/lib/page-header/index.d.ts +2 -2
  285. package/lib/page-header/index.js +39 -90
  286. package/lib/page-header/index.scss +2 -1
  287. package/lib/page-header/xconsole.scss +5 -0
  288. package/lib/sidebar/components/sidebar-container/index.js +54 -81
  289. package/lib/sidebar/components/sidebar-container/index.scss +21 -14
  290. package/lib/sidebar/components/tree/index.js +100 -152
  291. package/lib/sidebar/components/tree-node/components/HoverTooltip/index.js +11 -34
  292. package/lib/sidebar/components/tree-node/components/IconAction/index.js +9 -46
  293. package/lib/sidebar/components/tree-node/components/IconSwitch/index.d.ts +2 -2
  294. package/lib/sidebar/components/tree-node/components/IconSwitch/index.js +12 -35
  295. package/lib/sidebar/components/tree-node/components/IconSwitch/index.scss +1 -1
  296. package/lib/sidebar/components/tree-node/index.js +42 -100
  297. package/lib/sidebar/components/tree-node/index.scss +6 -0
  298. package/lib/sidebar/index.d.ts +2 -0
  299. package/lib/sidebar/index.js +79 -111
  300. package/lib/sidebar/typing.d.ts +4 -0
  301. package/lib/sidebar/utils/action-ref.js +2 -8
  302. package/lib/sidebar/utils/index.d.ts +5 -2
  303. package/lib/sidebar/utils/index.js +41 -106
  304. package/lib/skeleton/index.js +0 -6
  305. package/lib/table/components/CardView/index.d.ts +5 -0
  306. package/lib/table/components/CardView/index.js +402 -0
  307. package/lib/table/components/CardView/index.scss +46 -0
  308. package/lib/table/components/EmptyContent/index.js +0 -6
  309. package/lib/table/components/Filter/index.d.ts +6 -3
  310. package/lib/table/components/Filter/index.js +114 -137
  311. package/lib/table/components/Layout/index.js +32 -60
  312. package/lib/table/components/Layout/index.scss +2 -1
  313. package/lib/table/components/LoadMore/index.d.ts +20 -0
  314. package/lib/table/components/LoadMore/index.js +99 -0
  315. package/lib/table/components/LoadMore/index.scss +19 -0
  316. package/lib/table/components/Pagination/index.js +25 -68
  317. package/lib/table/components/QuickAction/index.d.ts +1 -0
  318. package/lib/table/components/QuickAction/index.js +3 -15
  319. package/lib/table/components/ToolBar/CardSwitch.d.ts +8 -0
  320. package/lib/table/components/ToolBar/CardSwitch.js +60 -0
  321. package/lib/table/components/ToolBar/DensityIcon.js +19 -42
  322. package/lib/table/components/ToolBar/FilterColumnIcon.js +86 -136
  323. package/lib/table/components/ToolBar/FullScreenIcon.js +10 -74
  324. package/lib/table/components/ToolBar/Fullscreen.js +25 -35
  325. package/lib/table/components/ToolBar/RefreshIcon.js +164 -36
  326. package/lib/table/components/ToolBar/index.d.ts +1 -1
  327. package/lib/table/components/ToolBar/index.js +133 -47
  328. package/lib/table/components/ToolBar/index.scss +49 -3
  329. package/lib/table/index.js +454 -445
  330. package/lib/table/index.scss +8 -0
  331. package/lib/table/typing.d.ts +125 -6
  332. package/lib/table/utils/columnRender.d.ts +3 -3
  333. package/lib/table/utils/columnRender.js +39 -92
  334. package/lib/table/utils/genProColumnToColumn.d.ts +2 -2
  335. package/lib/table/utils/genProColumnToColumn.js +13 -21
  336. package/lib/table/utils/getTableProps.js +0 -2
  337. package/lib/table/utils/getTableSortIcons.js +0 -5
  338. package/lib/table/utils/index.js +12 -55
  339. package/lib/table/utils/pureColumnRender.js +21 -64
  340. package/lib/table/utils/pureGenProColumnToColumn.d.ts +1 -1
  341. package/lib/table/utils/pureGenProColumnToColumn.js +2 -11
  342. package/lib/table/utils/useTableSelection.js +6 -35
  343. package/lib/table/utils/util.d.ts +5 -0
  344. package/lib/table/utils/util.js +25 -0
  345. package/lib/templates/Detail/index.js +0 -5
  346. package/lib/templates/Form/index.js +0 -5
  347. package/lib/templates/List/index.js +2 -19
  348. package/lib/templates/index.js +0 -6
  349. package/lib/timeline/ProTimeLineItem/index.js +25 -76
  350. package/lib/timeline/index.js +8 -33
  351. package/lib/timeline/typing.d.ts +1 -0
  352. package/lib/utils/index.js +0 -6
  353. package/lib/utils/message.d.ts +2 -2
  354. package/lib/utils/message.js +0 -10
  355. package/lib/xconsole.scss +503 -0
  356. package/package.json +1 -1
@@ -1,45 +1,180 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ 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."); }
3
+ 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); }
4
+ 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; }
5
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
1
7
  /**
2
8
  * 刷新
3
9
  */
4
- import { Button, Balloon } from '@alicloudfe/components';
10
+ import { Button, Balloon, Menu, Dropdown } from '@alicloudfe/components';
5
11
  import TeamixIcon from '@teamix/icon';
6
12
  import { usePrefixCls, getMessage } from '@teamix/utils';
7
- import React from 'react';
13
+ import React, { useEffect, useRef, useState } from 'react';
14
+ import { on } from '../../utils';
8
15
  import './index.scss';
9
16
  var cls = usePrefixCls('teamix-pro-table-toolbar-icon');
10
-
11
17
  var LayoutIcon = function LayoutIcon(props) {
12
- var actionRef = props.actionRef; // const [fullscreen, setFullscreen] = useState<boolean>(false);
13
- // // 销毁监听函数
14
- // useEffect(() => {
15
- // return () => {
16
- // actionRef.current?.off?.('refreshIcon');
17
- // };
18
- // }, []);
19
- // // 监听全屏变化
20
- // actionRef.current?.on?.(
21
- // (state: boolean) => {
22
- // setFullscreen(state);
23
- // },
24
- // 'fullScreenState',
25
- // 'refreshIcon',
26
- // );
27
-
18
+ var _autoRefreshProps$dat;
19
+ var actionRef = props.actionRef,
20
+ autoRefresh = props.autoRefresh,
21
+ autoRefreshProps = props.autoRefreshProps;
22
+ var autoRefreshRadio = (_autoRefreshProps$dat = autoRefreshProps === null || autoRefreshProps === void 0 ? void 0 : autoRefreshProps.dataSource) !== null && _autoRefreshProps$dat !== void 0 ? _autoRefreshProps$dat : [{
23
+ label: '每 1 分钟',
24
+ value: 60000
25
+ }, {
26
+ label: '每 3 分钟',
27
+ value: 180000
28
+ }, {
29
+ label: '每 5 分钟',
30
+ value: 300000
31
+ }];
32
+ // dropdown 开关
33
+ var _useState = useState(false),
34
+ _useState2 = _slicedToArray(_useState, 2),
35
+ dropdownVisible = _useState2[0],
36
+ setDropdownVisible = _useState2[1];
37
+ // 自动刷新状态
38
+ var _useState3 = useState(!!autoRefresh),
39
+ _useState4 = _slicedToArray(_useState3, 2),
40
+ autoRefreshVisible = _useState4[0],
41
+ setAutoRefreshVisible = _useState4[1];
42
+ // 间隔时间 ms
43
+ var _useState5 = useState(60000),
44
+ _useState6 = _slicedToArray(_useState5, 2),
45
+ times = _useState6[0],
46
+ setTimes = _useState6[1];
47
+ // 展示计时器时间 s
48
+ var _useState7 = useState(60),
49
+ _useState8 = _slicedToArray(_useState7, 2),
50
+ remainTime = _useState8[0],
51
+ setRemainTime = _useState8[1];
52
+ // 循环计时器
53
+ var timerRef = useRef({
54
+ timer: undefined,
55
+ remain: 60
56
+ });
57
+ useEffect(function () {
58
+ on(function (timer) {
59
+ setTimes(timer);
60
+ timerRef.current.remain = timer / 1000;
61
+ if (timerRef.current.timer) {
62
+ clearInterval(timerRef.current.timer);
63
+ timerRef.current.timer = undefined;
64
+ }
65
+ timerRef.current.timer = setInterval(function () {
66
+ var remainTime = timerRef.current.remain - 1;
67
+ if (remainTime >= 0) {
68
+ setRemainTime(remainTime);
69
+ timerRef.current.remain = remainTime;
70
+ }
71
+ }, 1000);
72
+ }, 'PRO_TABLE_REFRESH_TIMER_FLAG');
73
+ }, []);
74
+ // 下拉菜单显示隐藏回调
75
+ var onDropdownVisibleChange = function onDropdownVisibleChange(state) {
76
+ setDropdownVisible(state);
77
+ };
78
+ // 自动刷新开启关闭回调
79
+ var onAutoRefreshChange = function onAutoRefreshChange(visible) {
80
+ if (visible) {
81
+ var _actionRef$current, _actionRef$current$se;
82
+ (_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$se = _actionRef$current.setAutoRefreshTimers) === null || _actionRef$current$se === void 0 ? void 0 : _actionRef$current$se.call(_actionRef$current, times);
83
+ } else {
84
+ var _actionRef$current2, _actionRef$current2$c;
85
+ (_actionRef$current2 = actionRef.current) === null || _actionRef$current2 === void 0 ? void 0 : (_actionRef$current2$c = _actionRef$current2.clearAutoRefreshTimers) === null || _actionRef$current2$c === void 0 ? void 0 : _actionRef$current2$c.call(_actionRef$current2);
86
+ if (timerRef.current.timer) {
87
+ clearInterval(timerRef.current.timer);
88
+ timerRef.current.timer = undefined;
89
+ timerRef.current.remain = times / 1000;
90
+ setRemainTime(times / 1000);
91
+ }
92
+ }
93
+ setAutoRefreshVisible(visible);
94
+ };
95
+ // 手动刷新回调
96
+ var onManualRefresh = function onManualRefresh() {
97
+ var _actionRef$current3, _actionRef$current3$r;
98
+ (_actionRef$current3 = actionRef.current) === null || _actionRef$current3 === void 0 ? void 0 : (_actionRef$current3$r = _actionRef$current3.refresh) === null || _actionRef$current3$r === void 0 ? void 0 : _actionRef$current3$r.call(_actionRef$current3);
99
+ onDropdownVisibleChange(false);
100
+ };
101
+ // 选择间隔时间回调
102
+ var onTimeRadioChange = function onTimeRadioChange(timer) {
103
+ var _actionRef$current4, _actionRef$current4$s;
104
+ setTimes(timer);
105
+ (_actionRef$current4 = actionRef.current) === null || _actionRef$current4 === void 0 ? void 0 : (_actionRef$current4$s = _actionRef$current4.setAutoRefreshTimers) === null || _actionRef$current4$s === void 0 ? void 0 : _actionRef$current4$s.call(_actionRef$current4, timer);
106
+ };
107
+ // 渲染刷新图标
108
+ var renderRefreshIcon = function renderRefreshIcon() {
109
+ if (!!autoRefresh && autoRefreshVisible && typeof autoRefresh !== 'function') {
110
+ return /*#__PURE__*/React.createElement(TeamixIcon, {
111
+ size: "small",
112
+ type: "auto-refresh-on-line"
113
+ });
114
+ }
115
+ if (!!autoRefresh && !autoRefreshVisible && typeof autoRefresh !== 'function') {
116
+ return /*#__PURE__*/React.createElement(TeamixIcon, {
117
+ size: "small",
118
+ type: "auto-refresh-off-line"
119
+ });
120
+ }
121
+ return /*#__PURE__*/React.createElement(TeamixIcon, {
122
+ size: "small",
123
+ type: "refresh-line"
124
+ });
125
+ };
126
+ // 渲染 Radio
127
+ var renderRadio = autoRefreshRadio.map(function (item) {
128
+ return /*#__PURE__*/React.createElement(Menu.RadioItem, {
129
+ className: cls('time-radio'),
130
+ key: item.value,
131
+ disabled: !autoRefreshVisible,
132
+ checked: times === item.value,
133
+ onChange: function onChange() {
134
+ var _item$value;
135
+ return onTimeRadioChange((_item$value = item === null || item === void 0 ? void 0 : item.value) !== null && _item$value !== void 0 ? _item$value : 0);
136
+ }
137
+ }, item.label);
138
+ });
139
+ if (autoRefresh && typeof autoRefresh !== 'function') {
140
+ return /*#__PURE__*/React.createElement(Dropdown, {
141
+ trigger: /*#__PURE__*/React.createElement(Button, {
142
+ iconSize: "small",
143
+ className: cls()
144
+ }, renderRefreshIcon()),
145
+ visible: dropdownVisible,
146
+ onVisibleChange: onDropdownVisibleChange,
147
+ followTrigger: true,
148
+ cache: true,
149
+ triggerType: ['click'],
150
+ align: "tr br"
151
+ }, /*#__PURE__*/React.createElement("div", {
152
+ className: cls()
153
+ }, /*#__PURE__*/React.createElement(Menu, {
154
+ className: cls('auto-refresh')
155
+ }, /*#__PURE__*/React.createElement(Menu.CheckboxItem, {
156
+ checked: autoRefreshVisible,
157
+ onChange: onAutoRefreshChange
158
+ }, getMessage('autoRefresh'), autoRefreshVisible && /*#__PURE__*/React.createElement("span", null, "\uFF08", remainTime, "s\uFF09")), renderRadio, /*#__PURE__*/React.createElement(Menu.Divider, {
159
+ key: "divider"
160
+ }), /*#__PURE__*/React.createElement("div", {
161
+ className: cls('manual-refresh')
162
+ }, /*#__PURE__*/React.createElement(Button, {
163
+ type: "primary",
164
+ text: true,
165
+ onClick: onManualRefresh
166
+ }, getMessage('manualRefresh'))))));
167
+ }
28
168
  return /*#__PURE__*/React.createElement(Balloon.Tooltip, {
29
169
  trigger: /*#__PURE__*/React.createElement(Button, {
30
170
  iconSize: "small",
31
171
  className: cls(),
32
172
  onClick: function onClick() {
33
- var _actionRef$current, _actionRef$current$re;
34
-
35
- return (_actionRef$current = actionRef.current) === null || _actionRef$current === void 0 ? void 0 : (_actionRef$current$re = _actionRef$current.refresh) === null || _actionRef$current$re === void 0 ? void 0 : _actionRef$current$re.call(_actionRef$current);
173
+ var _actionRef$current5, _actionRef$current5$r;
174
+ return (_actionRef$current5 = actionRef.current) === null || _actionRef$current5 === void 0 ? void 0 : (_actionRef$current5$r = _actionRef$current5.refresh) === null || _actionRef$current5$r === void 0 ? void 0 : _actionRef$current5$r.call(_actionRef$current5);
36
175
  }
37
- }, /*#__PURE__*/React.createElement(TeamixIcon, {
38
- size: "small",
39
- type: "refresh-line"
40
- })),
176
+ }, renderRefreshIcon()),
41
177
  align: "t"
42
178
  }, getMessage('refresh'));
43
179
  };
44
-
45
180
  export default LayoutIcon;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import './index.scss';
3
2
  import { ProTableLayoutProps } from '../../typing';
3
+ import './index.scss';
4
4
  declare const ToolBar: React.FC<ProTableLayoutProps>;
5
5
  export default ToolBar;
@@ -1,22 +1,32 @@
1
1
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
2
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
3
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
4
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5
+ 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."); }
6
+ 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); }
7
+ 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; }
8
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
9
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
10
  import { usePrefixCls } from '@teamix/utils';
8
- import React from 'react';
11
+ import React, { useEffect, useMemo, useRef } from 'react';
12
+ import { Button, Balloon } from '@alicloudfe/components';
13
+ import TeamixIcon from '@teamix/icon';
9
14
  import FullScreenIcon from './FullScreenIcon';
10
15
  import FilterColumnIcon from './FilterColumnIcon';
11
16
  import DensityIcon from './DensityIcon';
12
17
  import RefreshIcon from './RefreshIcon';
18
+ import { useSize, useSafeState } from '@teamix/hooks';
19
+ import debounce from 'lodash.debounce';
13
20
  import './index.scss';
21
+ import CardSwitch from './CardSwitch';
22
+ import cloneDeep from 'lodash.clonedeep';
14
23
  var cls = usePrefixCls('teamix-pro-table-toolbar');
15
24
  var presetToolBarMap = {
16
25
  refresh: RefreshIcon,
17
26
  density: DensityIcon,
18
27
  filtercolumn: FilterColumnIcon,
19
- fullscreen: FullScreenIcon
28
+ fullscreen: FullScreenIcon,
29
+ switchcard: CardSwitch
20
30
  };
21
31
  var presetToolBarName = ['refresh', 'density', 'filtercolumn', 'fullscreen'];
22
32
  var presetToolBar = [{
@@ -36,44 +46,126 @@ var presetToolBar = [{
36
46
  type: 'preset',
37
47
  component: FullScreenIcon
38
48
  }];
39
-
40
49
  var ToolBar = function ToolBar(props) {
41
- var toolBar = props.toolBar;
42
- var toolBarList = toolBar !== false ? presetToolBar : [];
43
-
44
- if (Array.isArray(toolBar)) {
45
- toolBarList = toolBar.map(function (item, index) {
46
- if (typeof item === 'string' && presetToolBarName.includes(item.toLowerCase())) {
50
+ var _toolBarRef$current, _toolBarRef$current$p, _toolBarRef$current$p2;
51
+ var toolBar = props.toolBar,
52
+ fullScreenState = props.fullScreenState,
53
+ switchCardView = props.switchCardView,
54
+ _props$toolBarAutoWid = props.toolBarAutoWidth,
55
+ toolBarAutoWidth = _props$toolBarAutoWid === void 0 ? true : _props$toolBarAutoWid;
56
+ var toolBarRef = useRef(null);
57
+ // const toolBarSize = useSize(toolBarRef);
58
+ // 用于获取内容宽度
59
+ var toolBarContentRef = useRef(null);
60
+ // '.teamix-pro-form-query-filter-layout-inline' 元素
61
+ var layoutInlineDom = (_toolBarRef$current = toolBarRef.current) === null || _toolBarRef$current === void 0 ? void 0 : (_toolBarRef$current$p = _toolBarRef$current.parentElement) === null || _toolBarRef$current$p === void 0 ? void 0 : (_toolBarRef$current$p2 = _toolBarRef$current$p.parentElement) === null || _toolBarRef$current$p2 === void 0 ? void 0 : _toolBarRef$current$p2.parentElement;
62
+ // 监听它的尺寸变化
63
+ var layoutInlineSize = useSize(layoutInlineDom);
64
+ // '.teamix-pro-form-query-filter-layout-left' 元素
65
+ var layoutLeftDom = layoutInlineDom === null || layoutInlineDom === void 0 ? void 0 : layoutInlineDom.firstElementChild;
66
+ var leftWidth = layoutLeftDom === null || layoutLeftDom === void 0 ? void 0 : layoutLeftDom.clientWidth;
67
+ // 展示形式,是否平铺
68
+ var _useSafeState = useSafeState(),
69
+ _useSafeState2 = _slicedToArray(_useSafeState, 2),
70
+ flat = _useSafeState2[0],
71
+ setFlat = _useSafeState2[1];
72
+ // 监听高度,> 32px则切换形态
73
+ useEffect(debounce(function () {
74
+ if ((layoutInlineSize === null || layoutInlineSize === void 0 ? void 0 : layoutInlineSize.width) && leftWidth && toolBarContentRef.current && toolBarAutoWidth) {
75
+ var _toolBarContentRef$cu;
76
+ var width = layoutInlineSize.width,
77
+ height = layoutInlineSize.height;
78
+ if (width - leftWidth <= ((_toolBarContentRef$cu = toolBarContentRef.current) === null || _toolBarContentRef$cu === void 0 ? void 0 : _toolBarContentRef$cu.clientWidth) + 8 || height > 40) {
79
+ setFlat(false);
80
+ } else if (height === 40) {
81
+ setFlat(true);
82
+ }
83
+ }
84
+ }, 300));
85
+ // 初始态
86
+ useEffect(function () {
87
+ if (!((layoutInlineSize === null || layoutInlineSize === void 0 ? void 0 : layoutInlineSize.width) && leftWidth)) {
88
+ setFlat(true);
89
+ }
90
+ }, []);
91
+ var toolBarList = useMemo(function () {
92
+ var result = toolBar !== false ? cloneDeep(presetToolBar) : [];
93
+ if (switchCardView && !result.find(function (item) {
94
+ return item.name === 'switchCard';
95
+ })) {
96
+ result.push({
97
+ type: 'preset',
98
+ name: 'switchCard',
99
+ component: presetToolBarMap['switchcard']
100
+ });
101
+ }
102
+ if (Array.isArray(toolBar)) {
103
+ result = toolBar.map(function (item, index) {
104
+ if (typeof item === 'string' && presetToolBarName.includes(item.toLowerCase())) {
105
+ return {
106
+ type: 'preset',
107
+ name: item,
108
+ component: presetToolBarMap[item.toLowerCase()]
109
+ };
110
+ }
47
111
  return {
48
- type: 'preset',
49
- name: item,
50
- component: presetToolBarMap[item.toLowerCase()]
112
+ type: 'custom',
113
+ name: "custom".concat(index),
114
+ component: item
51
115
  };
116
+ });
117
+ if (!toolBar.includes('switchCard') && switchCardView && !result.find(function (item) {
118
+ return item.name === 'switchCard';
119
+ })) {
120
+ result.push({
121
+ type: 'preset',
122
+ name: 'switchCard',
123
+ component: presetToolBarMap['switchcard']
124
+ });
52
125
  }
53
-
54
- return {
55
- type: 'custom',
56
- name: "custom".concat(index),
57
- component: item
58
- };
59
- });
60
- }
61
-
62
- return /*#__PURE__*/React.createElement("div", {
63
- className: cls()
64
- }, toolBarList.map(function (_ref) {
65
- var type = _ref.type,
126
+ }
127
+ return result;
128
+ }, [toolBar]);
129
+ var renderFlatShape = useMemo(function () {
130
+ return /*#__PURE__*/React.createElement("div", {
131
+ className: cls('content')
132
+ }, toolBarList.map(function (_ref) {
133
+ var type = _ref.type,
66
134
  name = _ref.name,
67
135
  Component = _ref.component;
68
- return /*#__PURE__*/React.createElement("span", {
69
- className: cls(_defineProperty({}, name, true)),
70
- key: name
71
- }, type === 'preset' && /*#__PURE__*/React.createElement(Component, _objectSpread({}, props)), type === 'custom' && /*#__PURE__*/React.createElement("div", {
72
- className: cls({
73
- custom: true
74
- })
75
- }, Component));
76
- }));
136
+ return /*#__PURE__*/React.createElement("span", {
137
+ className: cls('item', _defineProperty({}, name, true)),
138
+ key: name
139
+ }, type === 'preset' && /*#__PURE__*/React.createElement(Component, _objectSpread({}, props)), type === 'custom' && /*#__PURE__*/React.createElement("div", {
140
+ className: cls({
141
+ custom: true
142
+ })
143
+ }, Component));
144
+ }));
145
+ }, [toolBarList]);
146
+ var renderUnFlatShape = function renderUnFlatShape() {
147
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Balloon.Tooltip, {
148
+ triggerType: ['click'],
149
+ popupProps: {
150
+ cache: true
151
+ },
152
+ style: {
153
+ padding: 8
154
+ },
155
+ trigger: /*#__PURE__*/React.createElement(Button, null, /*#__PURE__*/React.createElement(TeamixIcon, {
156
+ type: "more-line"
157
+ })),
158
+ align: "tr"
159
+ }, renderFlatShape));
160
+ };
161
+ return /*#__PURE__*/React.createElement("div", {
162
+ className: cls('', {
163
+ flat: flat
164
+ }),
165
+ ref: toolBarRef
166
+ }, !flat && !fullScreenState ? renderUnFlatShape() : renderFlatShape, /*#__PURE__*/React.createElement("div", {
167
+ className: cls('shadow'),
168
+ ref: toolBarContentRef
169
+ }, renderFlatShape));
77
170
  };
78
-
79
171
  export default ToolBar;
@@ -1,21 +1,41 @@
1
1
  .teamix-pro-table-toolbar {
2
2
  width: 100%;
3
3
  text-align: right;
4
- margin-bottom: 8px;
4
+ // margin-bottom: 8px;
5
+ &-flat {
6
+ margin-left: 8px;
7
+ }
8
+ &-item {
9
+ display: inline-block;
10
+ &:not(:first-child) {
11
+ margin-left: 8px;
12
+ }
13
+ }
14
+ &-content {
15
+ display: flex;
16
+ }
17
+ &-shadow {
18
+ visibility: hidden;
19
+ pointer-events: none;
20
+ opacity: 0;
21
+ height: 0px;
22
+ position: absolute;
23
+ z-index: -1;
24
+ overflow: hidden;
25
+ }
5
26
  }
6
27
  .teamix-pro-table-toolbar-custom {
7
28
  display: inline-block;
8
- margin-left: 8px;
9
29
  }
10
30
 
11
31
  // FullScreen
12
32
  .teamix-pro-table-toolbar-icon {
13
- margin-left: 8px;
14
33
  i {
15
34
  color: var(--color-fill1-6, #848484);
16
35
  }
17
36
  }
18
37
 
38
+
19
39
  // FilterColumn
20
40
  .teamix-pro-table-toolbar-filter-column {
21
41
  min-width: 180px;
@@ -129,3 +149,29 @@
129
149
  }
130
150
  }
131
151
  }
152
+
153
+ // switch card
154
+ .teamix-pro-table-toolbar-switch-card {
155
+ margin-left: 8px;
156
+ label {
157
+ padding-left: 8px;
158
+ padding-right: 8px;
159
+ }
160
+ }
161
+
162
+ // refresh
163
+ .teamix-pro-table-toolbar-icon {
164
+ &-auto-refresh {
165
+ width: 145px;
166
+ }
167
+
168
+ &-manual-refresh {
169
+ text-align: center;
170
+ line-height: 1;
171
+ margin-bottom: 2px;
172
+ }
173
+
174
+ .teamix-pro-table-toolbar-icon-time-radio.teamix-pro-table-toolbar-icon-time-radio.teamix-pro-table-toolbar-icon-time-radio {
175
+ padding-left: 32px;
176
+ }
177
+ }