plain-design 1.0.0-beta.10 → 1.0.0-beta.101

Sign up to get free protection for your applications and to get access to all the features.
Files changed (517) hide show
  1. package/dist/plain-design.commonjs.min.js +3 -3
  2. package/dist/plain-design.min.css +63 -48
  3. package/dist/plain-design.min.js +3 -3
  4. package/dist/report.html +5 -5
  5. package/package.json +49 -47
  6. package/src/packages/build.ts +2 -10
  7. package/src/packages/components/$address/createAddressService.tsx +20 -1
  8. package/src/packages/components/$file/index.tsx +1 -1
  9. package/src/packages/components/$loading/index.tsx +3 -0
  10. package/src/packages/components/$message/image.service.utils.tsx +2 -2
  11. package/src/packages/components/$object/createObjectService.tsx +38 -24
  12. package/src/packages/components/$object/object.service.utils.ts +7 -3
  13. package/src/packages/components/$previewer/ImagePreviewerFixedContainer.tsx +108 -0
  14. package/src/packages/components/$previewer/image-previewer-fixed-container.scss +18 -0
  15. package/src/packages/components/$previewer/index.tsx +52 -0
  16. package/src/packages/components/$search/SearchFooter.tsx +32 -0
  17. package/src/packages/components/$search/SearchList.tsx +207 -0
  18. package/src/packages/components/$search/SearchServicePanel.tsx +233 -0
  19. package/src/packages/components/$search/createSearchService.tsx +43 -0
  20. package/src/packages/components/$search/index.tsx +6 -0
  21. package/src/packages/components/$search/search-service.scss +220 -0
  22. package/src/packages/components/$search/search.utils.tsx +112 -0
  23. package/src/packages/components/$upload/createUploadService.tsx +1 -1
  24. package/src/packages/components/AddressCascade/createAddressCascade.multiple.tsx +1 -0
  25. package/src/packages/components/AddressCascade/createAddressCascade.single.tsx +1 -0
  26. package/src/packages/components/AddressCascade/index.tsx +2 -0
  27. package/src/packages/components/Alert/alert.scss +7 -4
  28. package/src/packages/components/Alert/index.tsx +4 -4
  29. package/src/packages/components/Application/index.tsx +6 -3
  30. package/src/packages/components/Application/service/createApplicationServiceManager.tsx +5 -2
  31. package/src/packages/components/Application/service/useApplicationService.tsx +2 -0
  32. package/src/packages/components/Application/theme/theme.ts +50 -28
  33. package/src/packages/components/Application/utils/application.utils.ts +2 -6
  34. package/src/packages/components/ArrowStepGroup/arrow-step.scss +17 -4
  35. package/src/packages/components/AutoLoadingObserver/index.tsx +173 -0
  36. package/src/packages/components/AutoTable/AutoTable.tsx +1 -1
  37. package/src/packages/components/AutoTable/auto-table.scss +62 -20
  38. package/src/packages/components/AutoTable/filter/useTableOption.filter.form.tsx +6 -7
  39. package/src/packages/components/AutoTable/filter/useTableOption.filter.search.tsx +5 -5
  40. package/src/packages/components/AutoTable/setting/useTableOption.setting.all.fitler.tsx +4 -4
  41. package/src/packages/components/AutoTable/setting/useTableOption.setting.cache.tsx +16 -16
  42. package/src/packages/components/AutoTable/setting/useTableOption.setting.config.tsx +11 -11
  43. package/src/packages/components/AutoTable/setting/useTableOption.setting.export.tsx +20 -20
  44. package/src/packages/components/AutoTable/setting/useTableOption.setting.import.tsx +1 -1
  45. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.filter.tsx +11 -11
  46. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.sort.tsx +7 -7
  47. package/src/packages/components/AutoTable/setting/useTableOption.setting.tsx +2 -2
  48. package/src/packages/components/AutoTable/use/useTableOption.buttons.tsx +30 -18
  49. package/src/packages/components/AutoTable/use/useTableOption.cache.ts +1 -1
  50. package/src/packages/components/AutoTable/use/useTableOption.check.tsx +1 -1
  51. package/src/packages/components/AutoTable/use/useTableOption.column.popper.tsx +10 -9
  52. package/src/packages/components/AutoTable/use/useTableOption.confirm.tsx +3 -3
  53. package/src/packages/components/AutoTable/use/useTableOption.fill.tsx +2 -1
  54. package/src/packages/components/AutoTable/use/useTableOption.hooks.tsx +9 -1
  55. package/src/packages/components/AutoTable/use/useTableOption.loading.tsx +9 -3
  56. package/src/packages/components/AutoTable/use/useTableOption.methods.tsx +19 -17
  57. package/src/packages/components/AutoTable/use/useTableOption.pagination.tsx +8 -3
  58. package/src/packages/components/AutoTable/use/useTableOption.sort.ts +5 -5
  59. package/src/packages/components/AutoTable/use/useTableOption.state.tsx +1 -0
  60. package/src/packages/components/AutoTable/use/useTableOption.table.tsx +10 -3
  61. package/src/packages/components/AutoTable/use/useTableOption.tips.tsx +1 -1
  62. package/src/packages/components/AutoTable/utils/TableOption.space.tsx +4 -0
  63. package/src/packages/components/AutoTable/utils/TableOption.utils.tsx +1 -1
  64. package/src/packages/components/Badge/badge.scss +1 -1
  65. package/src/packages/components/Box/box.scss +6 -0
  66. package/src/packages/components/Box/index.tsx +30 -0
  67. package/src/packages/components/Button/button.scss +41 -9
  68. package/src/packages/components/Button/index.tsx +69 -11
  69. package/src/packages/components/ButtonGroup/button-group.scss +2 -2
  70. package/src/packages/components/ButtonGroup/index.tsx +1 -1
  71. package/src/packages/components/Card/card.scss +1 -1
  72. package/src/packages/components/Carousel/carousel.scss +391 -0
  73. package/src/packages/components/Carousel/index.tsx +569 -22
  74. package/src/packages/components/CarouselItem/index.tsx +77 -0
  75. package/src/packages/components/Cascade/cascade.scss +2 -2
  76. package/src/packages/components/Cascade/createMultipleCascadeRender.tsx +1 -1
  77. package/src/packages/components/Cascade/createSingleCascadeRender.tsx +2 -2
  78. package/src/packages/components/Cascade/index.tsx +1 -1
  79. package/src/packages/components/CascadePanel/flat/cascade-flat-panel.scss +22 -34
  80. package/src/packages/components/CascadePanel/flat/createCascadeFlatRender.tsx +1 -1
  81. package/src/packages/components/CascadePanel/list/CascadeListPanelItem.tsx +3 -3
  82. package/src/packages/components/Checkbox/checkbox.scss +4 -0
  83. package/src/packages/components/Checkbox/index.tsx +1 -1
  84. package/src/packages/components/CheckboxGroup/index.tsx +2 -2
  85. package/src/packages/components/CheckboxInner/checkbox-inner.scss +2 -1
  86. package/src/packages/components/ColorPicker/color-picker.scss +6 -0
  87. package/src/packages/components/ConfirmPopup/confirm-popup.scss +16 -0
  88. package/src/packages/components/ConfirmPopup/index.tsx +72 -0
  89. package/src/packages/components/Corner/corner.scss +14 -0
  90. package/src/packages/components/Corner/index.tsx +80 -0
  91. package/src/packages/components/DatePicker/createDateRender.multiple.tsx +1 -0
  92. package/src/packages/components/DatePicker/createDateRender.single.tsx +1 -0
  93. package/src/packages/components/DatePicker/createRangeDateRender.range.tsx +33 -25
  94. package/src/packages/components/DatePicker/createRangeDateRender.separate.tsx +11 -3
  95. package/src/packages/components/DatePicker/date.scss +2 -2
  96. package/src/packages/components/DatePicker/date.utils.tsx +4 -3
  97. package/src/packages/components/DatePicker/index.tsx +2 -2
  98. package/src/packages/components/DatePicker/panel/DatePanelDate.tsx +7 -7
  99. package/src/packages/components/DatePicker/panel/DatePanelMonth.tsx +12 -12
  100. package/src/packages/components/DatePicker/useRangeDateRender.tsx +1 -0
  101. package/src/packages/components/Dialog/dialog.scss +7 -4
  102. package/src/packages/components/Dialog/index.tsx +15 -25
  103. package/src/packages/components/Dropdown/dropdown.public.scss +10 -0
  104. package/src/packages/components/Dropdown/dropdown.utils.tsx +4 -3
  105. package/src/packages/components/Dropdown/index.tsx +2 -2
  106. package/src/packages/components/DropdownOption/index.tsx +3 -3
  107. package/src/packages/components/DropdownSeparator/index.tsx +8 -0
  108. package/src/packages/components/Empty/index.tsx +1 -1
  109. package/src/packages/components/FilterFormMultiple/filter-form-multiple.scss +10 -1
  110. package/src/packages/components/FilterFormMultiple/index.tsx +34 -13
  111. package/src/packages/components/FilterFormSingle/index.tsx +9 -4
  112. package/src/packages/components/FilterService/filter/filter.city.tsx +4 -4
  113. package/src/packages/components/FilterService/filter/filter.date.tsx +4 -4
  114. package/src/packages/components/FilterService/filter/filter.datetime.tsx +2 -2
  115. package/src/packages/components/FilterService/filter/filter.district.tsx +4 -4
  116. package/src/packages/components/FilterService/filter/filter.number.tsx +1 -1
  117. package/src/packages/components/FilterService/filter/filter.province.tsx +4 -4
  118. package/src/packages/components/FilterService/filter/filter.select.tsx +3 -3
  119. package/src/packages/components/FilterService/filter/filter.text.tsx +4 -4
  120. package/src/packages/components/FilterService/filter/fitler.object.tsx +4 -4
  121. package/src/packages/components/FilterService/index.tsx +7 -7
  122. package/src/packages/components/FilterService/utils/filter.service.utils.ts +1 -1
  123. package/src/packages/components/Form/form.scss +85 -2
  124. package/src/packages/components/Form/index.tsx +10 -1
  125. package/src/packages/components/Form/layout/useFormLayout.tsx +88 -23
  126. package/src/packages/components/Form/types/any.tsx +6 -6
  127. package/src/packages/components/Form/types/array.tsx +7 -7
  128. package/src/packages/components/Form/types/date.tsx +6 -6
  129. package/src/packages/components/Form/types/email.tsx +1 -1
  130. package/src/packages/components/Form/types/idcard.tsx +1 -1
  131. package/src/packages/components/Form/types/number.tsx +7 -7
  132. package/src/packages/components/Form/types/phone.tsx +1 -1
  133. package/src/packages/components/Form/types/qq.tsx +1 -1
  134. package/src/packages/components/Form/types/string.tsx +7 -7
  135. package/src/packages/components/Form/validate/createValidation.tsx +6 -2
  136. package/src/packages/components/Form/validate/useFormValidation.tsx +21 -16
  137. package/src/packages/components/Form/validate/validate.utils.tsx +4 -1
  138. package/src/packages/components/FormItem/FormItemValidateMessage.tsx +16 -0
  139. package/src/packages/components/FormItem/index.tsx +31 -18
  140. package/src/packages/components/Formatter/index.tsx +1 -1
  141. package/src/packages/components/Grid/GridCol.tsx +4 -3
  142. package/src/packages/components/Grid/GridRow.tsx +42 -6
  143. package/src/packages/components/Grid/grid.scss +2 -2
  144. package/src/packages/components/Image/image.scss +5 -4
  145. package/src/packages/components/Image/index.tsx +15 -14
  146. package/src/packages/components/ImagePreviewer/ImagePreviewer.tsx +574 -0
  147. package/src/packages/components/ImagePreviewer/ImagePreviewerButtonBar.tsx +140 -0
  148. package/src/packages/components/ImagePreviewer/ImagePreviewerCarouselImage.tsx +54 -0
  149. package/src/packages/components/ImagePreviewer/ImagePreviewerGallery.tsx +202 -0
  150. package/src/packages/components/ImagePreviewer/PreviewerLoading.tsx +26 -0
  151. package/src/packages/components/ImagePreviewer/image-previewer.scss +244 -0
  152. package/src/packages/components/ImagePreviewer/image-previewer.utils.tsx +136 -0
  153. package/src/packages/components/ImagePreviewer/index.tsx +5 -0
  154. package/src/packages/components/ImagePreviewer/previewer-loading.scss +52 -0
  155. package/src/packages/components/ImageUploader/index.tsx +10 -8
  156. package/src/packages/components/Input/index.scss +57 -13
  157. package/src/packages/components/Input/index.tsx +22 -6
  158. package/src/packages/components/Input/input.utils.ts +3 -2
  159. package/src/packages/components/Input/useMultipleInput.tsx +17 -92
  160. package/src/packages/components/Input/useSingleInput.tsx +15 -13
  161. package/src/packages/components/Input/useTextareaInput.tsx +23 -20
  162. package/src/packages/components/Input/uses/useInputEnterHandler.tsx +1 -1
  163. package/src/packages/components/Input/uses/useInputHooks.tsx +11 -11
  164. package/src/packages/components/Input/uses/useInputSuffixIcon.tsx +12 -8
  165. package/src/packages/components/InputNumber/NumberResize.tsx +14 -1
  166. package/src/packages/components/InputNumber/index.tsx +1 -1
  167. package/src/packages/components/InputNumber/input-number.utils.tsx +7 -5
  168. package/src/packages/components/InputNumber/number.scss +17 -2
  169. package/src/packages/components/InputNumber/useInputNumber.public.tsx +25 -6
  170. package/src/packages/components/Loading/loading.scss +2 -0
  171. package/src/packages/components/LoadingMask/index.tsx +1 -1
  172. package/src/packages/components/Object/createObjectRender.multiple.tsx +1 -1
  173. package/src/packages/components/Object/createObjectRender.single.tsx +7 -3
  174. package/src/packages/components/Object/object.scss +15 -2
  175. package/src/packages/components/Object/object.utils.ts +3 -1
  176. package/src/packages/components/PageCard/index.tsx +48 -0
  177. package/src/packages/components/PageCard/page-card.scss +124 -0
  178. package/src/packages/components/PageCardContent/index.tsx +44 -0
  179. package/src/packages/components/PageCardTitle/index.tsx +51 -0
  180. package/src/packages/components/PageRenderList/index.tsx +22 -0
  181. package/src/packages/components/PageThemeUtils/deepmerge.ts +21 -0
  182. package/src/packages/components/PageThemeUtils/index.tsx +184 -49
  183. package/src/packages/components/Pagination/index.tsx +7 -7
  184. package/src/packages/components/Pagination/pagination.scss +4 -3
  185. package/src/packages/components/Paragraph/index.tsx +46 -0
  186. package/src/packages/components/Paragraph/paragraph.scss +12 -0
  187. package/src/packages/components/ParagraphItem/index.tsx +21 -0
  188. package/src/packages/components/PlcImage/index.tsx +8 -2
  189. package/src/packages/components/PlcObject/index.tsx +1 -1
  190. package/src/packages/components/PlcOv/index.tsx +14 -4
  191. package/src/packages/components/Popup/PopupProvider.tsx +1 -2
  192. package/src/packages/components/Popup/index.tsx +13 -3
  193. package/src/packages/components/ProgressBar/progress-bar.scss +1 -1
  194. package/src/packages/components/RollingNumber/index.tsx +66 -0
  195. package/src/packages/components/Scroll/index.tsx +47 -9
  196. package/src/packages/components/Scroll/scroll.scss +4 -2
  197. package/src/packages/components/Select/SelectPanel.tsx +4 -1
  198. package/src/packages/components/Select/createMultipleSelectRender.tsx +4 -4
  199. package/src/packages/components/Select/createPublicSelectRender.tsx +1 -1
  200. package/src/packages/components/Select/select.utils.tsx +1 -1
  201. package/src/packages/components/SelectDisplay/index.tsx +1 -1
  202. package/src/packages/components/SelectGroup/index.tsx +37 -0
  203. package/src/packages/components/Slider/index.tsx +1 -1
  204. package/src/packages/components/Slider/slider.scss +1 -1
  205. package/src/packages/components/SortList/index.tsx +191 -0
  206. package/src/packages/components/SortList/sort-list.scss +11 -0
  207. package/src/packages/components/Space/index.tsx +36 -0
  208. package/src/packages/components/Space/space.scss +39 -0
  209. package/src/packages/components/StackCard/index.tsx +416 -0
  210. package/src/packages/components/StackCard/stack-card.scss +40 -0
  211. package/src/packages/components/StackCardItem/index.tsx +24 -0
  212. package/src/packages/components/StepGroup/step-group.scss +9 -9
  213. package/src/packages/components/TabGroup/TabsInner.tsx +5 -3
  214. package/src/packages/components/TabGroup/header/horizontal/tabs-header-horizontal.scss +0 -1
  215. package/src/packages/components/TabGroup/index.tsx +5 -1
  216. package/src/packages/components/TabGroup/tabs.scss +26 -0
  217. package/src/packages/components/Table/editor/PlcAddress.tsx +7 -7
  218. package/src/packages/components/Table/editor/PlcDate.utils.tsx +1 -1
  219. package/src/packages/components/Table/editor/PlcTime.utils.ts +1 -1
  220. package/src/packages/components/Table/plc/use/useBasePlc.tsx +1 -1
  221. package/src/packages/components/Table/plc/useTablePlc.tsx +1 -1
  222. package/src/packages/components/Table/plc/utils/plc.utils.ts +1 -1
  223. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.multiple.tsx +4 -4
  224. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.tsx +1 -1
  225. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.utils.ts +1 -1
  226. package/src/packages/components/Table/standard/PlcExpand.tsx +20 -22
  227. package/src/packages/components/Table/standard/PlcIndex.tsx +1 -1
  228. package/src/packages/components/Table/standard/PlcOperation/OuterOperation.tsx +5 -4
  229. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.tsx +7 -7
  230. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.utils.tsx +2 -0
  231. package/src/packages/components/Table/standard/PlcOperation/outer-operation.scss +5 -3
  232. package/src/packages/components/Table/standard/PlcTree/PlcTree.renderNode.tsx +7 -4
  233. package/src/packages/components/Table/standard/PlcTree/PlcTree.tsx +1 -1
  234. package/src/packages/components/Table/standard/PlcTree/PlcTree.utils.ts +1 -1
  235. package/src/packages/components/Table/standard/PlcTree/RenderPlcTreeNode.tsx +2 -1
  236. package/src/packages/components/Table/table/Table.tsx +11 -3
  237. package/src/packages/components/Table/table/body/cell.tsx +17 -12
  238. package/src/packages/components/Table/table/body/row.tsx +1 -1
  239. package/src/packages/components/Table/table/body/useCellValue.tsx +10 -6
  240. package/src/packages/components/Table/table/table.scss +20 -16
  241. package/src/packages/components/Table/table/use/useTableDraggier.row.tsx +20 -8
  242. package/src/packages/components/Table/table/use/useTableDraggier.tsx +1 -1
  243. package/src/packages/components/Table/table/use/useTableFormEditor.tsx +6 -4
  244. package/src/packages/components/Table/table/use/useTableModifyEditor.tsx +8 -8
  245. package/src/packages/components/Table/table/utils/createTableHooks.ts +4 -2
  246. package/src/packages/components/Table/table/utils/table.utils.ts +7 -1
  247. package/src/packages/components/ThemeColor/index.tsx +22 -0
  248. package/src/packages/components/ThemeColor/theme-color.scss +36 -0
  249. package/src/packages/components/ThemeColorSelector/index.tsx +53 -0
  250. package/src/packages/components/ThemeDarkSelector/index.tsx +37 -0
  251. package/src/packages/components/ThemeEditor/index.tsx +199 -0
  252. package/src/packages/components/ThemeEditor/theme-editor.scss +106 -0
  253. package/src/packages/components/ThemeLocaleSelector/index.tsx +41 -0
  254. package/src/packages/components/ThemeShapeSelector/index.tsx +55 -0
  255. package/src/packages/components/ThemeSizeSelector/index.tsx +50 -0
  256. package/src/packages/components/TimePicker/createRangeTimeRender.tsx +11 -3
  257. package/src/packages/components/TimePicker/createSeparateRangeTimeRender.tsx +11 -3
  258. package/src/packages/components/TimePicker/createSingleTimeRender.tsx +1 -0
  259. package/src/packages/components/TimePicker/index.tsx +1 -1
  260. package/src/packages/components/TimePicker/time.utils.ts +2 -1
  261. package/src/packages/components/TimePicker/useRangeTimeRender.tsx +1 -0
  262. package/src/packages/components/Toggle/index.tsx +6 -2
  263. package/src/packages/components/Toggle/toggle.scss +102 -98
  264. package/src/packages/components/Transition/index.tsx +2 -1
  265. package/src/packages/components/Tree/RenderTreeNode.tsx +7 -3
  266. package/src/packages/components/Tree/index.tsx +4 -3
  267. package/src/packages/components/Tree/tree.scss +8 -1
  268. package/src/packages/components/TreeCore/createTreeDraggier.tsx +62 -52
  269. package/src/packages/components/TreeCore/createTreeMethods.tsx +1 -0
  270. package/src/packages/components/TreeCore/createTreeProps.ts +1 -1
  271. package/src/packages/components/TreeCore/createTreeUtils.ts +1 -1
  272. package/src/packages/components/TreeNodeWithMenu/index.tsx +44 -6
  273. package/src/packages/components/TreeNodeWithMenu/tree-node-with-menu.scss +1 -0
  274. package/src/packages/components/TreeNodeWithMenu/treeNodeWithMenu.utils.ts +12 -0
  275. package/src/packages/components/Upload/index.tsx +12 -12
  276. package/src/packages/components/VirtualList/createVirtualDraggier.ts +375 -0
  277. package/src/packages/components/VirtualList/index.tsx +56 -10
  278. package/src/packages/components/VirtualList/useVirtualList.tsx +239 -115
  279. package/src/packages/components/VirtualList/virtual-list.scss +41 -18
  280. package/src/packages/components/VirtualTable/index.tsx +29 -16
  281. package/src/packages/components/VirtualTable/virtual-table.scss +2 -3
  282. package/src/packages/components/createAutoScrollManager/index.tsx +41 -0
  283. package/src/packages/components/createHttp/index.tsx +4 -1
  284. package/src/packages/components/createPlainAddressService/index.tsx +12 -6
  285. package/src/packages/components/createRequestInterceptor/index.ts +139 -0
  286. package/src/packages/components/createScrollDraggier/index.ts +341 -0
  287. package/src/packages/components/createTransitionHandler/index.ts +46 -0
  288. package/src/packages/components/createVirtualDraggier/index.ts +5 -0
  289. package/src/packages/components/createWebDraggier/index.ts +5 -0
  290. package/src/packages/components/loadFile/index.ts +20 -0
  291. package/src/packages/components/useAutoScrollUtils/index.tsx +1 -1
  292. package/src/packages/components/useDialog/DialogService.tsx +22 -10
  293. package/src/packages/components/useDialog/index.tsx +2 -2
  294. package/src/packages/components/useImage/ImageService.tsx +35 -12
  295. package/src/packages/components/useLoading/LoadingService.tsx +106 -0
  296. package/src/packages/components/useLoading/index.tsx +31 -0
  297. package/src/packages/components/useLoading/loading.service.scss +25 -0
  298. package/src/packages/components/useLoading/loading.service.utils.tsx +13 -0
  299. package/src/packages/components/useMessage/Message.tsx +9 -3
  300. package/src/packages/components/useMessage/index.tsx +1 -1
  301. package/src/packages/components/useMessage/message.scss +7 -3
  302. package/src/packages/components/useNotice/Notice.tsx +4 -2
  303. package/src/packages/components/useNotice/index.tsx +2 -2
  304. package/src/packages/components/useNotice/notice.scss +3 -3
  305. package/src/packages/components/usePageRender/index.tsx +3 -0
  306. package/src/packages/components/usePageRenderContext/index.tsx +8 -0
  307. package/src/packages/components/usePopup/PopupItem.tsx +60 -28
  308. package/src/packages/components/usePopup/popup-item.scss +34 -3
  309. package/src/packages/components/usePopup/refresh/MaxMinTopLeft.ts +38 -0
  310. package/src/packages/components/usePopup/refresh/calcPosition.ts +7 -4
  311. package/src/packages/components/usePopup/refresh/refreshPopup.ts +3 -1
  312. package/src/packages/components/usePopup/trigger/useManagerTrigger.clickOutside.tsx +2 -2
  313. package/src/packages/components/usePopup/usePopup.tsx +23 -7
  314. package/src/packages/components/usePopup/usePopupManager.tsx +2 -1
  315. package/src/packages/components/usePopup/utils/popup.utils.ts +8 -4
  316. package/src/packages/components/useTooltip/index.tsx +14 -3
  317. package/src/packages/directives/ResizeDetector/index.tsx +10 -3
  318. package/src/packages/entry.tsx +95 -4
  319. package/src/packages/i18n/i18n.utils.ts +235 -111
  320. package/src/packages/i18n/index.ts +4 -3
  321. package/src/packages/i18n/lang/en-us.ts +257 -185
  322. package/src/packages/i18n/lang/zh-cn.ts +72 -0
  323. package/src/packages/styles/application/application.public.scss +7 -0
  324. package/src/packages/styles/global.import.scss +17 -1
  325. package/src/packages/uses/useCollapseStyles.tsx +56 -0
  326. package/src/packages/uses/useDragHorizontalScroll.ts +82 -0
  327. package/src/packages/uses/useEdit.ts +5 -1
  328. package/src/packages/uses/useStyle.tsx +20 -6
  329. package/src/packages/utils/ComponentUtils.ts +10 -0
  330. package/src/packages/utils/buildCycleIndexList.ts +31 -0
  331. package/src/packages/utils/createDraggier.ts +256 -0
  332. package/src/packages/utils/createListUtils.ts +38 -0
  333. package/src/packages/utils/findReactElement.tsx +2 -2
  334. package/src/packages/utils/getDeviceInfo.ts +44 -44
  335. package/src/packages/utils/inheritSlots.ts +28 -0
  336. package/src/packages/utils/onParentElementsScroll.tsx +1 -1
  337. package/src/packages/utils/plainDate.ts +6 -2
  338. package/src/packages/utils/renderInputModeTextRangeValue.tsx +25 -0
  339. package/src/packages/utils/watchEffectAutoClear.ts +19 -7
  340. package/src/packages/components/CarouselGroup/carousel.scss +0 -143
  341. package/src/packages/components/CarouselGroup/index.tsx +0 -274
  342. package/src/packages/components/createProvider/index.ts +0 -5
  343. package/src/packages/utils/createProvider.tsx +0 -35
  344. package/src/packages/utils/doNothing.ts +0 -3
  345. package/src/packages/utils/findParentElement.ts +0 -12
  346. package/src/packages/utils/formatServiceOptions.ts +0 -7
  347. package/src/packages/utils/getElement.ts +0 -17
  348. package/src/packages/utils/getElementParents.ts +0 -9
  349. package/src/packages/utils/getScrollParent.ts +0 -11
  350. package/src/packages/utils/iterate.ts +0 -53
  351. package/src/packages/utils/omit.ts +0 -6
  352. package/src/packages/utils/pick.ts +0 -11
  353. package/src/packages/utils/runOnce.tsx +0 -14
  354. package/src/pages/data/address.json +0 -39317
  355. package/src/pages/data/data-1.json +0 -754
  356. package/src/pages/data/data-2.json +0 -3006
  357. package/src/pages/data/data-200.json +0 -5206
  358. package/src/pages/data/data-2000.json +0 -51954
  359. package/src/pages/data/data-50.json +0 -2075
  360. package/src/pages/data/data.json +0 -30002
  361. package/src/pages/data/demo.json +0 -1702
  362. package/src/pages/data/mock.database.js +0 -43
  363. package/src/pages/data/mock.js +0 -141
  364. package/src/pages/data/tree.data.json +0 -87
  365. package/src/pages/env/config/local.js +0 -3
  366. package/src/pages/env/config/prod.js +0 -3
  367. package/src/pages/env/config/undefined.js +0 -1
  368. package/src/pages/env/env.d.ts +0 -4
  369. package/src/pages/env/index.ts +0 -1
  370. package/src/pages/history/createHistory.ts +0 -94
  371. package/src/pages/history/history.utils.ts +0 -64
  372. package/src/pages/index/App.tsx +0 -17
  373. package/src/pages/index/Demo/DemoLine.tsx +0 -23
  374. package/src/pages/index/Demo/DemoRow.scss +0 -128
  375. package/src/pages/index/Demo/DemoRow.tsx +0 -71
  376. package/src/pages/index/Demo/DemoRow.utils.ts +0 -23
  377. package/src/pages/index/Demo/DemoRowController.tsx +0 -45
  378. package/src/pages/index/Demo/index.ts +0 -8
  379. package/src/pages/index/app.scss +0 -197
  380. package/src/pages/index/components/AutoTable/AutoHeightAutoRow.tsx +0 -51
  381. package/src/pages/index/components/AutoTable/AutoHeightFixedRow.tsx +0 -50
  382. package/src/pages/index/components/AutoTable/AutoTableBasicUsage.tsx +0 -75
  383. package/src/pages/index/components/AutoTable/AutoTableCascade.tsx +0 -99
  384. package/src/pages/index/components/AutoTable/AutoTableDefaultSearch.tsx +0 -73
  385. package/src/pages/index/components/AutoTable/AutoTableFiles.tsx +0 -26
  386. package/src/pages/index/components/AutoTable/AutoTableFill.tsx +0 -51
  387. package/src/pages/index/components/AutoTable/AutoTableGroupUsage.tsx +0 -71
  388. package/src/pages/index/components/AutoTable/AutoTableObjectPicker.tsx +0 -181
  389. package/src/pages/index/components/AutoTable/AutoTableOvList.tsx +0 -80
  390. package/src/pages/index/components/AutoTable/AutoTableProductList.tsx +0 -98
  391. package/src/pages/index/components/AutoTable/AutoTableRowFormatter.tsx +0 -58
  392. package/src/pages/index/components/AutoTable/FixedHeightAutoRow.tsx +0 -50
  393. package/src/pages/index/components/AutoTable/FixedHeightFixedRow.tsx +0 -49
  394. package/src/pages/index/components/bus/DemoAddress.tsx +0 -181
  395. package/src/pages/index/components/bus/DemoAddressCascade.tsx +0 -132
  396. package/src/pages/index/components/bus/DemoFilter.tsx +0 -184
  397. package/src/pages/index/components/columns/DemoPlcAddress.tsx +0 -161
  398. package/src/pages/index/components/columns/DemoPlcDate.tsx +0 -363
  399. package/src/pages/index/components/columns/DemoPlcSelect.tsx +0 -505
  400. package/src/pages/index/components/columns/DemoPlcTime.tsx +0 -293
  401. package/src/pages/index/components/columns/DemoTableColumns.tsx +0 -88
  402. package/src/pages/index/components/form/DemoFormBasic.tsx +0 -516
  403. package/src/pages/index/components/form/DemoFormBlur.tsx +0 -204
  404. package/src/pages/index/components/form/DemoFormDynamicFields.tsx +0 -54
  405. package/src/pages/index/components/form/DemoFormEditControl.tsx +0 -164
  406. package/src/pages/index/components/form/DemoFormElement.tsx +0 -207
  407. package/src/pages/index/components/form/DemoFormLayout.scss +0 -7
  408. package/src/pages/index/components/form/DemoFormLayout.tsx +0 -311
  409. package/src/pages/index/components/form/DemoFormSimplify.tsx +0 -587
  410. package/src/pages/index/components/form/DemoFormSize.tsx +0 -274
  411. package/src/pages/index/components/form/DemoFormVertical.tsx +0 -280
  412. package/src/pages/index/components/normal/DemoAlert.tsx +0 -66
  413. package/src/pages/index/components/normal/DemoBadge.tsx +0 -53
  414. package/src/pages/index/components/normal/DemoButton.tsx +0 -300
  415. package/src/pages/index/components/normal/DemoCard.tsx +0 -176
  416. package/src/pages/index/components/normal/DemoCarousel.tsx +0 -125
  417. package/src/pages/index/components/normal/DemoCascade.tsx +0 -880
  418. package/src/pages/index/components/normal/DemoCheckbox.scss +0 -24
  419. package/src/pages/index/components/normal/DemoCheckbox.tsx +0 -294
  420. package/src/pages/index/components/normal/DemoCollapse.tsx +0 -104
  421. package/src/pages/index/components/normal/DemoColor.scss +0 -20
  422. package/src/pages/index/components/normal/DemoColor.tsx +0 -82
  423. package/src/pages/index/components/normal/DemoColorPicker.tsx +0 -163
  424. package/src/pages/index/components/normal/DemoDate.tsx +0 -443
  425. package/src/pages/index/components/normal/DemoDialog.tsx +0 -507
  426. package/src/pages/index/components/normal/DemoDropdown.tsx +0 -463
  427. package/src/pages/index/components/normal/DemoGrid.scss +0 -26
  428. package/src/pages/index/components/normal/DemoGrid.tsx +0 -181
  429. package/src/pages/index/components/normal/DemoIcon.tsx +0 -39
  430. package/src/pages/index/components/normal/DemoImage.tsx +0 -122
  431. package/src/pages/index/components/normal/DemoInput.scss +0 -0
  432. package/src/pages/index/components/normal/DemoInput.tsx +0 -790
  433. package/src/pages/index/components/normal/DemoKeepAlive.tsx +0 -505
  434. package/src/pages/index/components/normal/DemoLayout.tsx +0 -144
  435. package/src/pages/index/components/normal/DemoList.scss +0 -15
  436. package/src/pages/index/components/normal/DemoList.tsx +0 -82
  437. package/src/pages/index/components/normal/DemoLoading.tsx +0 -86
  438. package/src/pages/index/components/normal/DemoNumber.tsx +0 -266
  439. package/src/pages/index/components/normal/DemoPagination.tsx +0 -164
  440. package/src/pages/index/components/normal/DemoPopup.tsx +0 -695
  441. package/src/pages/index/components/normal/DemoProgress.tsx +0 -133
  442. package/src/pages/index/components/normal/DemoRadio.scss +0 -16
  443. package/src/pages/index/components/normal/DemoRadio.tsx +0 -188
  444. package/src/pages/index/components/normal/DemoRate.tsx +0 -77
  445. package/src/pages/index/components/normal/DemoScroll.scss +0 -22
  446. package/src/pages/index/components/normal/DemoScroll.tsx +0 -300
  447. package/src/pages/index/components/normal/DemoSegment.tsx +0 -71
  448. package/src/pages/index/components/normal/DemoSelect.tsx +0 -819
  449. package/src/pages/index/components/normal/DemoSlider.tsx +0 -128
  450. package/src/pages/index/components/normal/DemoStep.scss +0 -18
  451. package/src/pages/index/components/normal/DemoStep.tsx +0 -291
  452. package/src/pages/index/components/normal/DemoTab.tsx +0 -338
  453. package/src/pages/index/components/normal/DemoTag.tsx +0 -100
  454. package/src/pages/index/components/normal/DemoTime.tsx +0 -403
  455. package/src/pages/index/components/normal/DemoToggle.tsx +0 -56
  456. package/src/pages/index/components/normal/DemoTooltip.tsx +0 -120
  457. package/src/pages/index/components/normal/DemoTree.tsx +0 -1168
  458. package/src/pages/index/components/normal/DemoUpload.tsx +0 -484
  459. package/src/pages/index/components/normal/DemoVirtualList.tsx +0 -378
  460. package/src/pages/index/components/service/DemoDialogService.tsx +0 -248
  461. package/src/pages/index/components/service/DemoFileService.tsx +0 -110
  462. package/src/pages/index/components/service/DemoMessageService.tsx +0 -100
  463. package/src/pages/index/components/service/DemoNoticeService.tsx +0 -99
  464. package/src/pages/index/components/service/DemoPopupService.tsx +0 -325
  465. package/src/pages/index/components/table/DemoPlcOperation.tsx +0 -307
  466. package/src/pages/index/components/table/DemoTableBasic.tsx +0 -220
  467. package/src/pages/index/components/table/DemoTableCheck.tsx +0 -78
  468. package/src/pages/index/components/table/DemoTableClassAndStyle.scss +0 -18
  469. package/src/pages/index/components/table/DemoTableClassAndStyle.tsx +0 -112
  470. package/src/pages/index/components/table/DemoTableColDraggable.tsx +0 -80
  471. package/src/pages/index/components/table/DemoTableEdit.tsx +0 -136
  472. package/src/pages/index/components/table/DemoTableExpand.tsx +0 -181
  473. package/src/pages/index/components/table/DemoTableFixed.tsx +0 -131
  474. package/src/pages/index/components/table/DemoTableFormatter.tsx +0 -66
  475. package/src/pages/index/components/table/DemoTableOverflowTooltip.tsx +0 -67
  476. package/src/pages/index/components/table/DemoTableRowDraggable.tsx +0 -106
  477. package/src/pages/index/components/table/DemoTableSlots.tsx +0 -153
  478. package/src/pages/index/components/table/DemoTableSpan.tsx +0 -167
  479. package/src/pages/index/components/table/DemoTableTree.tsx +0 -976
  480. package/src/pages/index/components/table/DemoVirtualTable.tsx +0 -274
  481. package/src/pages/index/components/test/DemoI18n.tsx +0 -27
  482. package/src/pages/index/components/test/DemoI18n2.jsx +0 -11
  483. package/src/pages/index/home/AppContent.tsx +0 -69
  484. package/src/pages/index/home/AppHead.tsx +0 -105
  485. package/src/pages/index/home/AppHome.tsx +0 -16
  486. package/src/pages/index/home/AppMenu.tsx +0 -38
  487. package/src/pages/index/home/menus.tsx +0 -218
  488. package/src/pages/index/home/plain-design.png +0 -0
  489. package/src/pages/index/main.tsx +0 -23
  490. package/src/pages/index/nav/$nav.ts +0 -41
  491. package/src/pages/index/pages.d.ts +0 -6
  492. package/src/pages/libs/iconfont-fontcls/demo.css +0 -539
  493. package/src/pages/libs/iconfont-fontcls/demo_index.html +0 -303
  494. package/src/pages/libs/iconfont-fontcls/iconfont.css +0 -35
  495. package/src/pages/libs/iconfont-fontcls/iconfont.js +0 -1
  496. package/src/pages/libs/iconfont-fontcls/iconfont.json +0 -44
  497. package/src/pages/libs/iconfont-fontcls/iconfont.ttf +0 -0
  498. package/src/pages/libs/iconfont-fontcls/iconfont.woff +0 -0
  499. package/src/pages/libs/iconfont-fontcls/iconfont.woff2 +0 -0
  500. package/src/pages/libs/iconfont-symbol/demo.css +0 -539
  501. package/src/pages/libs/iconfont-symbol/demo_index.html +0 -303
  502. package/src/pages/libs/iconfont-symbol/iconfont.css +0 -35
  503. package/src/pages/libs/iconfont-symbol/iconfont.js +0 -1
  504. package/src/pages/libs/iconfont-symbol/iconfont.json +0 -44
  505. package/src/pages/libs/iconfont-symbol/iconfont.ttf +0 -0
  506. package/src/pages/libs/iconfont-symbol/iconfont.woff +0 -0
  507. package/src/pages/libs/iconfont-symbol/iconfont.woff2 +0 -0
  508. package/src/pages/libs/install.iconfont-fontcls.tsx +0 -11
  509. package/src/pages/libs/install.iconfont-symbol.scss +0 -7
  510. package/src/pages/libs/install.iconfont-symbol.tsx +0 -14
  511. package/src/pages/module/address.ts +0 -27
  512. package/src/pages/module/http.ts +0 -24
  513. package/src/pages/module/index.ts +0 -19
  514. package/src/pages/module/object.ts +0 -5
  515. package/src/pages/module/ov.tsx +0 -13
  516. package/src/pages/module/upload.ts +0 -9
  517. package/src/pages/module/useTableOption.ts +0 -28
@@ -1,4 +1,4 @@
1
- import {findParentElement} from "../../../utils/findParentElement";
1
+ import {findParentElement} from "plain-utils/dom/findParentElement";
2
2
  import {hasClass} from "plain-utils/dom/hasClass";
3
3
  import {tPlc} from "../../Table/plc/utils/plc.utils";
4
4
  import {computed, designComponent, getComponentCls, iMouseEvent, PropType, reactive, toRaw} from "plain-design-composition";
@@ -67,7 +67,7 @@ export const useTableOptionColumnPopper = AutoModule.createRegistration((
67
67
  filterState.useState<Record<string, undefined | iFilterFormSingleData>>({
68
68
  seq: 1,
69
69
  key: 'column-search',
70
- title: i18n('table.columnFilter').d('列搜索'),
70
+ title: i18n.$it('table.columnFilter').d('列搜索'),
71
71
  getActiveFilterCount: () => {
72
72
  return Object.values(innerState.data).reduce((prev, item) => {
73
73
  return prev + (item?.filterQueryParam.queries?.length || 0);
@@ -176,7 +176,7 @@ export const useTableOptionColumnPopper = AutoModule.createRegistration((
176
176
  filterState.useState<Record<string, undefined | PlainObject[]>>({
177
177
  seq: 1,
178
178
  key: 'distinct-search',
179
- title: i18n('table.distinctFilter').d('去重筛选'),
179
+ title: i18n.$it('table.distinctFilter').d('去重筛选'),
180
180
  getActiveFilterCount: () => {
181
181
  return Object.values(innerState.data).reduce((prev, item) => {
182
182
  return prev + ((!!item && item.length > 0) ? 1 : 0);
@@ -213,7 +213,7 @@ export const useTableOptionColumnPopper = AutoModule.createRegistration((
213
213
  };
214
214
  if (!handler) {
215
215
  list.push({
216
- display: () => i18n('table.filterTipInclude', { field: filterOption.label, val: vals }).d(`${filterOption.label}包含${vals}`),
216
+ display: () => i18n.$it('table.filterTipInclude', { field: filterOption.label, val: vals }).d(`${filterOption.label}包含${vals}`),
217
217
  onClick,
218
218
  onClear,
219
219
  });
@@ -255,10 +255,11 @@ export const useTableOptionColumnPopper = AutoModule.createRegistration((
255
255
  // console.log(externalQueryParam);
256
256
 
257
257
  $dialog({
258
- title: i18n('table.distinctFilter').d('去重筛选'),
258
+ title: i18n.$it('table.distinctFilter').d('去重筛选'),
259
259
  size: config.size,
260
260
  confirmButton: true,
261
261
  cancelButton: true,
262
+ noContentPadding: true,
262
263
  handleConfirm: () => {onConfirm(field, openState.data);},
263
264
  render: () => {
264
265
  return (
@@ -360,8 +361,8 @@ export const useTableOptionColumnPopper = AutoModule.createRegistration((
360
361
  if (!filterOption) {return null;}
361
362
  return (
362
363
  <ButtonGroup className="auto-table-column-popper-button-group" size={config.size}>
363
- <Button label={i18n('table.distinctFilter').d('去重筛选')} icon="pi-select-all" size={config.size} onClick={() => distinctHandler.open(plc)}/>
364
- <Tooltip message={i18n('table.clearDistinctFilter').d('清空去重筛选')}><Button icon="pi-delete" size={config.size} onClick={() => distinctHandler.clear(filterOption.field)}/></Tooltip>
364
+ <Button label={i18n.$it('table.distinctFilter').d('去重筛选')} icon="pi-select-all" size={config.size} onClick={() => distinctHandler.open(plc)}/>
365
+ <Tooltip message={i18n.$it('table.clearDistinctFilter').d('清空去重筛选')}><Button icon="pi-delete" size={config.size} onClick={() => distinctHandler.clear(filterOption.field)}/></Tooltip>
365
366
  </ButtonGroup>
366
367
  );
367
368
  })();
@@ -432,8 +433,8 @@ const SortSwitcher = designComponent({
432
433
  const emitDesc = () => emit.onChange('desc');
433
434
  return () => (
434
435
  <div className="auto-table-sort-switcher">
435
- <Button label={i18n('base.asc').d('升序')} icon="pi-sort-descending" status={props.type === 'asc' ? 'primary' : undefined} onClick={emitAsc}/>
436
- <Button label={i18n('base.desc').d('降序')} icon="pi-sort-ascending" status={props.type === 'desc' ? 'primary' : undefined} onClick={emitDesc}/>
436
+ <Button label={i18n.$it('base.asc').d('升序')} icon="pi-sort-descending" status={props.type === 'asc' ? 'primary' : undefined} onClick={emitAsc}/>
437
+ <Button label={i18n.$it('base.desc').d('降序')} icon="pi-sort-ascending" status={props.type === 'desc' ? 'primary' : undefined} onClick={emitDesc}/>
437
438
  </div>
438
439
  );
439
440
  },
@@ -67,7 +67,7 @@ export const useTableOptionConfirm = AutoModule.createRegistration(({ hooks }) =
67
67
  if (state.status === eTableOptionStatus.normal) {return prev;}
68
68
  const buttons: iTableOuterOperationConfig[] = [
69
69
  {
70
- label: state.handlers.length === 1 && !!state.handlers[0].cancelText ? state.handlers[0].cancelText : i18n('base.cancel').d('取消'),
70
+ label: state.handlers.length === 1 && !!state.handlers[0].cancelText ? state.handlers[0].cancelText : i18n.$it('base.cancel').d('取消'),
71
71
  position: 'outer',
72
72
  code: 'outer-cancel',
73
73
  icon: 'pi-undo',
@@ -75,7 +75,7 @@ export const useTableOptionConfirm = AutoModule.createRegistration(({ hooks }) =
75
75
  handler: () => close.cancel(),
76
76
  },
77
77
  {
78
- label: state.handlers.length === 1 && !!state.handlers[0].confirmText ? state.handlers[0].confirmText : i18n('base.confirm').d('保存'),
78
+ label: state.handlers.length === 1 && !!state.handlers[0].confirmText ? state.handlers[0].confirmText : i18n.$it('base.confirm').d('保存'),
79
79
  mode: 'fill',
80
80
  position: 'outer',
81
81
  code: 'outer-confirm',
@@ -86,7 +86,7 @@ export const useTableOptionConfirm = AutoModule.createRegistration(({ hooks }) =
86
86
  ];
87
87
  if (state.status === eTableOptionStatus.insert || state.status === eTableOptionStatus.batchInsert) {
88
88
  buttons.unshift({
89
- label: i18n('table.continueCreate').d('继续新建'),
89
+ label: i18n.$it('table.continueCreate').d('继续新建'),
90
90
  position: 'outer',
91
91
  code: 'outer-next-insert',
92
92
  icon: 'pi-plus',
@@ -80,6 +80,7 @@ export const useTableOptionFill = AutoModule.createRegistration((
80
80
  };
81
81
  })();
82
82
 
83
+ await delay(73)
83
84
  /**
84
85
  * 计算可以用来渲染行的高度
85
86
  * parent.top+parent.height可以得到父节点底边界的top值;
@@ -101,7 +102,7 @@ export const useTableOptionFill = AutoModule.createRegistration((
101
102
  });*/
102
103
 
103
104
  /*计算撑满高度的行数*/
104
- const showRows = Math.floor(availableHeight / bodyRowHeight) - 1;
105
+ const showRows = Math.floor(availableHeight / bodyRowHeight);
105
106
 
106
107
  /*更新分页查询信息*/
107
108
  pagination.state.size = showRows;
@@ -29,7 +29,8 @@ export const useTableOptionHooks = AutoModule.createRegistration(() => {
29
29
  onRefAutoTableEl: createHooks<(el: HTMLDivElement | null) => void>(), // AutoTable el引用
30
30
  onTableSetup: createSyncHooks<() => void>(), // AutoTable初始化
31
31
  onTableDestroy: createSyncHooks<() => void>(), // AutoTable销毁
32
- onTableRender: createRenderHook(), // AutoTable渲染主体内容
32
+ onTableOuterRender: createRenderHook(), // AutoTable渲染外部内容
33
+ onTableRender: createRenderHook(), // AutoTable渲染内部内容
33
34
  onTableClass: createSyncHooks<(list: any[]) => void>(),// AutoTable计算class
34
35
  onRefBaseTable: createHooks<(refer: iTableRefer | null) => void>(),// 获取base table的引用
35
36
  onBaseTableSetup: createSyncHooks<(refer: iTableRefer) => void>(), // basic table初始化动作
@@ -128,5 +129,12 @@ export const useTableOptionHooks = AutoModule.createRegistration(() => {
128
129
  onAfterBatchUpsert: createHooks<(responseData: iUrlResponseData['batchInsert'] | iUrlResponseData['batchUpdate']) => void>(),
129
130
  };
130
131
  const hooks = _hooks as typeof _hooks & TableOptionSpace.iTableOptionHooks;
132
+
133
+ hooks.onTableOuterRender.use({
134
+ separate: false,
135
+ processor: ({ list, render }) => {list.push({ render, key: 'table-render', seq: 1 });},
136
+ render: () => (<div className="auto-table-body">{hooks.onTableRender.exec()}</div>),
137
+ });
138
+
131
139
  return hooks;
132
140
  });
@@ -19,8 +19,10 @@ export const useTableOptionLoading = AutoModule.createRegistration(({ hooks }) =
19
19
  metas: [] as iTableOptionLoadingMeta[],
20
20
  });
21
21
 
22
+ const isLoading = () => !!state.metas.length;
23
+
22
24
  hooks.onTableRender.use({
23
- processor: ({ list, render }) => {!!state.metas.length && list.push({ render, key: 'loading', seq: 0 });},
25
+ processor: ({ list, render }) => {isLoading() && list.push({ render, key: 'loading', seq: 0 });},
24
26
  render: () => (
25
27
  !!state.metas.length && <div className="auto-table-loading-wrapper">
26
28
  {(() => {
@@ -31,7 +33,7 @@ export const useTableOptionLoading = AutoModule.createRegistration(({ hooks }) =
31
33
  return (
32
34
  <div className="auto-table-loading-inner">
33
35
  <Loading type="delta"/>
34
- <span>{meta.message || i18n('base.loading').d('加载中')}</span>
36
+ <span>{meta.message || i18n.$it('base.loading').d('加载中')}</span>
35
37
  </div>
36
38
  );
37
39
  }
@@ -40,6 +42,10 @@ export const useTableOptionLoading = AutoModule.createRegistration(({ hooks }) =
40
42
  )
41
43
  });
42
44
 
45
+ hooks.onTableClass.use((classList) => {
46
+ isLoading() && classList.push('auto-table-loading');
47
+ });
48
+
43
49
  const minTimerDuration = 500;
44
50
 
45
51
  const loading = (meta?: Omit<iTableOptionLoadingMeta, 'id'>) => {
@@ -59,7 +65,7 @@ export const useTableOptionLoading = AutoModule.createRegistration(({ hooks }) =
59
65
  };
60
66
  };
61
67
 
62
- return { state, loading };
68
+ return { state, loading, isLoading };
63
69
  });
64
70
 
65
71
  const nextLoadingId = createCounter('auto_table_loading');
@@ -63,7 +63,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
63
63
  await utils.selectCurrent(state.list[0][config.keyField]);
64
64
  return state.currentNode!;
65
65
  }
66
- $notice.error(i18n('table.pleaseSelectOneRecord').d('请选中一条数据'));
66
+ $notice.error(i18n.$it('table.pleaseSelectOneRecord').d('请选中一条数据'));
67
67
  throw new Error('no current node');
68
68
  },
69
69
  ...(() => {
@@ -120,7 +120,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
120
120
  onAfterLoad?: (responseData: iUrlResponseData["query"]) => any,
121
121
  onLoaded?: (responseData: iUrlResponseData["query"]) => any,
122
122
  }) => {
123
- const closeLoading = loading.loading({ message: i18n('base.loading').d('加载中') });
123
+ const closeLoading = loading.loading({ message: i18n.$it('base.loading').d('加载中') });
124
124
  try {
125
125
  await editMethods.save();
126
126
  if (!loadParam || loadParam.awaitInit !== false) {
@@ -161,6 +161,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
161
161
  }
162
162
  };
163
163
  const reload = async (reloadParam?: { size?: number }) => {
164
+ if (!state.isInit) {state.isInit = true;}
164
165
  await load({
165
166
  page: 1,
166
167
  size: reloadParam?.size,
@@ -170,7 +171,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
170
171
  });
171
172
  };
172
173
  const queryCount = async (): Promise<number> => {
173
- const closeLoading = loading.loading({ message: i18n('table.queryTotal').d('查询总数') });
174
+ const closeLoading = loading.loading({ message: i18n.$it('table.queryTotal').d('查询总数') });
174
175
  try {
175
176
  const queryParam = await getLoadQueryParam();
176
177
  const responseData = await urlUtils.request({
@@ -210,7 +211,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
210
211
  await loadingMethods.save();
211
212
  node = node || await utils.getCurrentNode();
212
213
  if (!node) {
213
- return $notice.warn(i18n('table.selectRowToDelete').d('请选中一行要删除的数据'));
214
+ return $notice.warn(i18n.$it('table.selectRowToDelete').d('请选中一行要删除的数据'));
214
215
  }
215
216
  const { page, size } = utils.getPageState();
216
217
  const { data, state: { index } } = node;
@@ -218,7 +219,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
218
219
  size: config.size,
219
220
  render: () => (
220
221
  <div style={{ minWidth: '300px', minHeight: '40px', display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
221
- {i18n('table.areYouSureYouWantToDeleteTheData', { index: (page - 1) * size + index + 1 }).d(`确定要删除第${(page - 1) * size + index + 1}条数据吗?`)}
222
+ {i18n.$it('table.areYouSureYouWantToDeleteTheData', { index: (page - 1) * size + index + 1 }).d(`确定要删除第${(page - 1) * size + index + 1}条数据吗?`)}
222
223
  </div>
223
224
  )
224
225
  });
@@ -233,7 +234,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
233
234
  }
234
235
  });
235
236
  if (!!deleteResult.message) {
236
- return $notice.error(`${i18n('table.deleteFailed').d('删除失败')}:${deleteResult.message}`);
237
+ return $notice.error(`${i18n.$it('table.deleteFailed').d('删除失败')}:${deleteResult.message}`);
237
238
  }
238
239
  await pageMethods.load();
239
240
  } finally {
@@ -244,7 +245,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
244
245
  })());
245
246
 
246
247
  const saveInsert = async (editRow: any) => {
247
- const closeLoading = loading.loading({ message: i18n('table.savingData').d('正在保存') });
248
+ const closeLoading = loading.loading({ message: i18n.$it('table.savingData').d('正在保存') });
248
249
  try {
249
250
  const saveRowPrev = await hooks.onBeforeSaveRow.exec(editRow);
250
251
  const newRowResult = await urlUtils.request({
@@ -281,7 +282,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
281
282
  const validateResult = await newNode.validate();
282
283
  if (!!validateResult) {
283
284
  const { validateResultData, node: { state: { index } } } = validateResult;
284
- $message.error(`${i18n('table.articleDataVerificationFailed', { index: index + 1 }).d(`第${index + 1}条记录校验不通过`)},${validateResultData[0].label}:${validateResultData[0].message}`);
285
+ $message.error(`${i18n.$it('table.articleDataVerificationFailed', { index: index + 1 }).d(`第${index + 1}条记录校验不通过`)},${validateResultData[0].label}:${validateResultData[0].message}`);
285
286
  return Promise.reject(validateResult);
286
287
  }
287
288
  const saveRow = await saveInsert(newNode.state.editRow);
@@ -298,7 +299,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
298
299
  const editForm = async () => {
299
300
  await table.formEditor.methods.edit({
300
301
  node: table.methods.createTableNode(newRowData, 0),
301
- title: i18n('base.edit.edit').d('编辑'),
302
+ title: i18n.$it('base.edit.edit').d('编辑'),
302
303
  onConfirm: async (newNode) => {
303
304
  const saveRow = await saveInsert(newNode.state.editRow);
304
305
  state.list.unshift(saveRow);
@@ -325,7 +326,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
325
326
  let newRows = batchInsertConfig?.rows || await (async () => {
326
327
  const num = await new Promise<number>((resolve, reject) => {
327
328
  $dialog({
328
- title: i18n('table.pleaseEnterTheNumberOfRowsToCreate').d('请输入要新建的行数'),
329
+ title: i18n.$it('table.pleaseEnterTheNumberOfRowsToCreate').d('请输入要新建的行数'),
329
330
  size: config.size,
330
331
  editRequired: true,
331
332
  editType: 'number',
@@ -343,7 +344,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
343
344
  };
344
345
 
345
346
  const saveUpdate = async (editRow: any) => {
346
- const closeLoading = loading.loading({ message: i18n('table.savingData').d('正在保存') });
347
+ const closeLoading = loading.loading({ message: i18n.$it('table.savingData').d('正在保存') });
347
348
  try {
348
349
  const saveRowPrev = await hooks.onBeforeSaveRow.exec(editRow);
349
350
  const newRowResult = await urlUtils.request({
@@ -372,7 +373,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
372
373
  const validateResult = await node.validate();
373
374
  if (!!validateResult) {
374
375
  const { validateResultData, node: { state: { index } } } = validateResult;
375
- $message.error(`${i18n('table.articleDataVerificationFailed', { index: index + 1 }).d(`第${index + 1}条记录校验不通过`)},${validateResultData[0].label}:${validateResultData[0].message}`);
376
+ $message.error(`${i18n.$it('table.articleDataVerificationFailed', { index: index + 1 }).d(`第${index + 1}条记录校验不通过`)},${validateResultData[0].label}:${validateResultData[0].message}`);
376
377
  return Promise.reject(validateResult);
377
378
  }
378
379
  const changeNode = utils.getChangeNode(node);
@@ -396,7 +397,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
396
397
  const editForm = async () => {
397
398
  await state.getTable()!.formEditor.methods.edit({
398
399
  node,
399
- title: i18n('base.edit.edit').d('编辑'),
400
+ title: i18n.$it('base.edit.edit').d('编辑'),
400
401
  onConfirm: async (updateNode) => {
401
402
  const saveRow = await saveUpdate(updateNode.state.editRow);
402
403
  await node.saveEdit(saveRow);
@@ -420,7 +421,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
420
421
  });
421
422
  });
422
423
  if (!Object.keys(editRow).length) {return;}
423
- const closeLoading = loading.loading({ message: i18n('table.savingData').d('正在保存') });
424
+ const closeLoading = loading.loading({ message: i18n.$it('table.savingData').d('正在保存') });
424
425
  try {
425
426
  await urlUtils.request({
426
427
  type: 'batchUpdate',
@@ -442,7 +443,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
442
443
 
443
444
  const batchDelete = async () => {
444
445
  const rows = await check.openToCheck();
445
- const closeLoading = loading.loading({ message: i18n('table.deleting').d('正在删除') });
446
+ const closeLoading = loading.loading({ message: i18n.$it('table.deleting').d('正在删除') });
446
447
  try {
447
448
  const deleteResult = await urlUtils.request({
448
449
  type: 'batchDelete',
@@ -452,9 +453,9 @@ export const useTableOptionMethods = AutoModule.createRegistration((
452
453
  beforeRequest: async requestConfig => {await hooks.onBeforeDelete.exec(requestConfig);}
453
454
  });
454
455
  if (!!deleteResult.message) {
455
- return $notice.error(`${i18n('table.deleteFailed').d('删除失败')}:${deleteResult.message}`);
456
+ return $notice.error(`${i18n.$it('table.deleteFailed').d('删除失败')}:${deleteResult.message}`);
456
457
  }
457
- $notice.success(i18n('table.deleteSucceed').d('删除成功'));
458
+ $notice.success(i18n.$it('table.deleteSucceed').d('删除成功'));
458
459
  confirm.close.clear();
459
460
  await pageMethods.load();
460
461
  } finally {
@@ -488,6 +489,7 @@ export const useTableOptionMethods = AutoModule.createRegistration((
488
489
  })();
489
490
 
490
491
  hooks.onTableSetup.use(() => {
492
+ if (state.isInit) {return;}
491
493
  if (config.loadOnStart !== false) {pageMethods.reload();}
492
494
  });
493
495
 
@@ -55,7 +55,7 @@ export const useTableOptionPagination = AutoModule.createRegistration((
55
55
  } else {
56
56
  const total = await tableMethods.pageMethods.queryCount();
57
57
  if (!total) {
58
- const msg = i18n('table.queryTotalFailed').d('查询总数失败');
58
+ const msg = i18n.$it('table.queryTotalFailed').d('查询总数失败');
59
59
  $notice.error(msg);
60
60
  throw new Error(msg);
61
61
  }
@@ -71,6 +71,11 @@ export const useTableOptionPagination = AutoModule.createRegistration((
71
71
  pageSizeOptions: deepcopy(config.pageSizeOptions),
72
72
  });
73
73
 
74
+ if (!!config.showRows && state.pageSizeOptions.indexOf(config.showRows) === -1) {
75
+ const index = state.pageSizeOptions.findIndex(i => i > config.showRows);
76
+ state.pageSizeOptions.splice(index, 0, config.showRows);
77
+ }
78
+
74
79
  const handler = {
75
80
  onSizeChange: async (size: number) => {await methods.changeSize(size);},
76
81
  onJump: async (page: number) => {await methods.jump(page);},
@@ -109,13 +114,13 @@ export const useTableOptionPagination = AutoModule.createRegistration((
109
114
  ...config.paginationAttrs,
110
115
  }}
111
116
  >
112
- <span>{i18n('base.total').d('总共')}</span>
117
+ <span>{i18n.$it('base.total').d('总共')}</span>
113
118
  {state.total == null ?
114
119
  <span className="auto-table-pagination-total-number" onClick={tableMethods.pageMethods.queryCount}>
115
120
  {total.value}+
116
121
  </span> :
117
122
  total.value}
118
- <span>{i18n('base.data').d('条数据')}</span>
123
+ <span>{i18n.$it('base.data').d('条数据')}</span>
119
124
  </Pagination>
120
125
  </div>
121
126
  ),
@@ -79,7 +79,7 @@ export const useTableOptionSortState = AutoModule.createRegistration((
79
79
  filterState.useState({
80
80
  seq: 1,
81
81
  key: 'option-sort',
82
- title: i18n('base.sort').d('排序'),
82
+ title: i18n.$it('base.sort').d('排序'),
83
83
  getActiveFilterCount: () => 0,
84
84
  applyCache() {/*do nothing*/},
85
85
  getCache: () => {/*do nothing*/},
@@ -127,9 +127,9 @@ export const useTableOptionSortState = AutoModule.createRegistration((
127
127
  if (!!state.data.singleParam) {
128
128
  const { field, desc } = state.data.singleParam;
129
129
  const title = tableState.getSourceFlatPlcList().find(i => i.props.field === field)?.props.title;
130
- const sortType = desc ? i18n('base.desc').d('降序') : i18n('base.asc').d('升序');
130
+ const sortType = desc ? i18n.$it('base.desc').d('降序') : i18n.$it('base.asc').d('升序');
131
131
  list.push({
132
- display: () => i18n('table.sortInTypeOrderOfField', { description: title + sortType }).d(`按照${title}${sortType}排序`),
132
+ display: () => i18n.$it('table.sortInTypeOrderOfField', { description: title + sortType }).d(`按照${title}${sortType}排序`),
133
133
  onClear: (e?: iMouseEvent) => {
134
134
  e?.stopPropagation();
135
135
  state.data.singleParam = null;
@@ -142,11 +142,11 @@ export const useTableOptionSortState = AutoModule.createRegistration((
142
142
  if (!!state.data.seniorParam?.length) {
143
143
  const description = state.data.seniorParam!.map(({ field, desc }) => {
144
144
  const title = tableState.getSourceFlatPlcList().find(i => i.props.field === field)?.props.title;
145
- const sortType = desc ? i18n('base.desc').d('降序') : i18n('base.asc').d('升序');
145
+ const sortType = desc ? i18n.$it('base.desc').d('降序') : i18n.$it('base.asc').d('升序');
146
146
  return `${title}${sortType}`;
147
147
  }).join(',');
148
148
  list.push({
149
- display: () => i18n('table.sortInTypeOrderOfField', { description }).d(`按照${description}排序`),
149
+ display: () => i18n.$it('table.sortInTypeOrderOfField', { description }).d(`按照${description}排序`),
150
150
  onClear: (e?: iMouseEvent) => {
151
151
  e?.stopPropagation();
152
152
  state.data.seniorParam = [];
@@ -14,6 +14,7 @@ declare module '../utils/TableOption.space' {
14
14
 
15
15
  export const useTableOptionState = AutoModule.createRegistration(({ config, hooks }) => {
16
16
  const state: TableOptionSpace.iTableOptionState = reactive({
17
+ isInit: false,
17
18
  getTable: () => null,
18
19
  getAutoTable: () => null,
19
20
  list: [],
@@ -5,7 +5,7 @@ import {PlainObject} from "plain-utils/utils/event";
5
5
  import '../utils/TableOption.space';
6
6
  import {PlcIndex} from "../../Table/standard/PlcIndex";
7
7
  import {AutoModule} from "../utils/AutoModule";
8
- import {iMouseEvent} from "plain-design-composition";
8
+ import {Fragment, iMouseEvent} from "plain-design-composition";
9
9
 
10
10
  declare module '../utils/TableOption.space' {
11
11
  namespace TableOptionSpace {
@@ -46,11 +46,18 @@ export const useTableOptionTable = AutoModule.createRegistration((
46
46
  hooks.onRenderColumns.use({
47
47
  processor: ({ list, render }) => {list.push({ key: 'index', seq: 0, render });},
48
48
  render: () => <>
49
- {config.indexing != false && <PlcIndex start={(pagination.state.page - 1) * pagination.state.size}/>}
50
- {render.default()}
49
+ {config.indexing != false && <PlcIndex start={(pagination.state.page - 1) * pagination.state.size} key="key_standard_index"/>}
50
+ <Fragment key="key_option_render">{render.default()}</Fragment>
51
51
  </>
52
52
  });
53
53
 
54
+ hooks.onTableRender.use({
55
+ processor: ({ list, render }) => {config.title && list.push({ key: 'table_title', seq: 3, render });},
56
+ render: () => (
57
+ <div className="auto-table-title">{config.title}</div>
58
+ )
59
+ });
60
+
54
61
  hooks.onTableRender.use({
55
62
  processor: ({ list, render }) => {list.push({ key: 'table', seq: 5, render });},
56
63
  render: () => {
@@ -54,7 +54,7 @@ export const RenderTableOptionTips = designComponent({
54
54
  {tips.map((tip, index) => (
55
55
  <RenderTableOptionTipItem tip={tip} key={index}/>
56
56
  ))}
57
- {!props.hideClearButton && <Button mode="text" icon="pi-delete" label={i18n('table.clearAll').d('全部清空')} onClick={emit.onClearAll}/>}
57
+ {!props.hideClearButton && <Button size="small" mode="text" icon="pi-delete" label={i18n.$it('table.clearAll').d('全部清空')} onClick={emit.onClearAll}/>}
58
58
  </div>
59
59
  );
60
60
  };
@@ -50,6 +50,7 @@ export namespace TableOptionSpace {
50
50
  * @date 2022.12.20 10:47
51
51
  */
52
52
  export interface iTableOptionCustomConfig {
53
+ title?: string, // 表格标题
53
54
  url?: iUrl, // 请求配置
54
55
  data?: any[], // 默认数据
55
56
  fill?: boolean, // 是否自动计算高度
@@ -118,6 +119,7 @@ export namespace TableOptionSpace {
118
119
  * @date 2023/2/7 9:47
119
120
  */
120
121
  export interface iTableOptionState {
122
+ isInit: boolean,
121
123
  getTable: () => null | iTableRefer,
122
124
  getAutoTable: () => null | iAutoTableRefer;
123
125
  list: PlainObject[],
@@ -160,6 +162,8 @@ export namespace TableOptionSpace {
160
162
  */
161
163
  export interface iTableOption {
162
164
  config: iTableOptionConfig;
165
+ useConfig: iTableOptionUseConfig,
166
+ defaultConfig: iTableOptionDefaultConfig,
163
167
  clone: iTableOptionClone;
164
168
  }
165
169
 
@@ -38,7 +38,7 @@ export const TableOptionUtils = (() => {
38
38
  if (description === null) {return null;}
39
39
  return {
40
40
  display: () => <>
41
- {`${filterOption!.label}${handler.label}${!description ? '' : ':'}`}
41
+ {`${filterOption!.label} ${handler.label()} ${!description ? '' : ':'}`}
42
42
  {description}
43
43
  </>,
44
44
  onClick,
@@ -18,7 +18,7 @@
18
18
  @include statusMixin(badge-content) {
19
19
  background-color: $color-6;
20
20
  border-radius: 100px;
21
- color: white;
21
+ color: plv(pbfc);
22
22
  }
23
23
 
24
24
  &.badge-content-top {
@@ -0,0 +1,6 @@
1
+ @include comp(box) {
2
+
3
+ @include sizeMixin(box, (font-size, border-radius)) {
4
+ }
5
+
6
+ }
@@ -0,0 +1,30 @@
1
+ import {designComponent, getComponentCls, useClassCache} from "plain-design-composition";
2
+ import {StyleProps, useStyle} from "../../uses/useStyle";
3
+ import {EditProps, useEdit} from "../../uses/useEdit";
4
+ import './box.scss';
5
+
6
+ export const Box = designComponent({
7
+ name: "box",
8
+ props: {
9
+ ...StyleProps,
10
+ ...EditProps,
11
+ },
12
+ slots: ['default'],
13
+ setup({ props, slots }) {
14
+
15
+ const { styleComputed } = useStyle();
16
+ useEdit();
17
+
18
+ const classes = useClassCache(() => [
19
+ getComponentCls('box'),
20
+ `box-size-${styleComputed.value.size}`,
21
+ `box-shape-${styleComputed.value.size}`,
22
+ ]);
23
+
24
+ return () => (
25
+ <div className={classes.value}>
26
+ {slots.default()}
27
+ </div>
28
+ );
29
+ },
30
+ });
@@ -7,10 +7,11 @@
7
7
  outline: none;
8
8
  position: relative;
9
9
  text-align: center;
10
- line-height: 1.5715;
10
+ line-height: plv(line-height);
11
11
  white-space: nowrap;
12
12
  display: inline-block;
13
13
  user-select: none;
14
+ z-index: 1;
14
15
 
15
16
  @include public-style;
16
17
 
@@ -37,7 +38,7 @@
37
38
  @include statusMixin(button) {
38
39
  background-color: $color-6;
39
40
  border-color: $color-6;
40
- color: white;
41
+ color: plv(pbfc);
41
42
  @include hover(button) {
42
43
  background-color: $color-4;
43
44
  border-color: $color-4;
@@ -108,6 +109,33 @@
108
109
  }
109
110
  }
110
111
 
112
+ &.button-mode-stroke {
113
+ @include statusMixin(button) {
114
+ background-color: plv(bg-2);
115
+ border-color: plv(secondary-light-3);
116
+ color: plv(text-2);
117
+
118
+ @include active(button) {
119
+ border-color: $color-6;
120
+ color: $color-6;
121
+ }
122
+
123
+ &:not(.button-disabled):hover {
124
+ border-color: $color-6;
125
+ color: $color-6;
126
+ }
127
+
128
+ &.button-disabled {
129
+ border-color: $color-2;
130
+ color: $color-2;
131
+ }
132
+ }
133
+
134
+ &:after {
135
+ //display: none !important;
136
+ }
137
+ }
138
+
111
139
  &.button-mode-text {
112
140
  padding: 0;
113
141
  min-width: initial;
@@ -141,17 +169,17 @@
141
169
  }
142
170
  }
143
171
 
144
- .#{componentName(icon)} {
172
+ .#{componentName(icon)}, .#{componentName(loading)} {
145
173
  //vertical-align: text-top;
146
174
  position: relative;
147
- top: 1px;
175
+ top: 0.15em;
148
176
  }
149
177
 
150
- &:not(.button-icon-only) {
151
- & > .button-icon {
152
- margin-right: 4px;
153
- }
154
- }
178
+ //&:not(.button-icon-only) {
179
+ // & > .button-icon {
180
+ // margin-right: 4px;
181
+ // }
182
+ //}
155
183
 
156
184
  &.button-no-padding {
157
185
  padding: 0;
@@ -168,4 +196,8 @@
168
196
  & > span + .#{componentName(icon)} {
169
197
  margin-left: 4px;
170
198
  }
199
+
200
+ &:hover {
201
+ z-index: 4;
202
+ }
171
203
  }