plain-design 1.0.0-beta.146 → 1.0.0-beta.147

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 (716) hide show
  1. package/README.md +2 -2
  2. package/dist/plain-design.commonjs.min.js +1 -1
  3. package/dist/plain-design.min.css +1 -1
  4. package/dist/plain-design.min.js +1 -1
  5. package/dist/report.html +2 -2
  6. package/package.json +1 -1
  7. package/src/index.ts +1 -1
  8. package/src/packages/build.ts +7 -7
  9. package/src/packages/components/$address/address.utils.ts +31 -31
  10. package/src/packages/components/$address/createAddressService.tsx +208 -208
  11. package/src/packages/components/$address/index.tsx +7 -7
  12. package/src/packages/components/$ai/index.tsx +227 -227
  13. package/src/packages/components/$configuration/index.tsx +60 -60
  14. package/src/packages/components/$dialog/index.tsx +7 -7
  15. package/src/packages/components/$file/index.tsx +255 -255
  16. package/src/packages/components/$image/index.tsx +7 -7
  17. package/src/packages/components/$loading/index.tsx +3 -3
  18. package/src/packages/components/$message/image.service.utils.tsx +161 -161
  19. package/src/packages/components/$message/index.tsx +7 -7
  20. package/src/packages/components/$notice/index.tsx +7 -7
  21. package/src/packages/components/$object/createObjectService.tsx +217 -217
  22. package/src/packages/components/$object/index.ts +5 -5
  23. package/src/packages/components/$object/object.conver.ts +56 -56
  24. package/src/packages/components/$object/object.service.utils.ts +56 -56
  25. package/src/packages/components/$ov/createOvService.ts +86 -86
  26. package/src/packages/components/$ov/index.tsx +5 -5
  27. package/src/packages/components/$ov/ov.utils.ts +11 -11
  28. package/src/packages/components/$previewer/ImagePreviewerFixedContainer.tsx +108 -108
  29. package/src/packages/components/$previewer/image-previewer-fixed-container.scss +18 -18
  30. package/src/packages/components/$previewer/index.tsx +52 -52
  31. package/src/packages/components/$search/SearchFooter.tsx +32 -32
  32. package/src/packages/components/$search/SearchList.tsx +207 -207
  33. package/src/packages/components/$search/SearchServicePanel.tsx +233 -233
  34. package/src/packages/components/$search/createSearchService.tsx +43 -43
  35. package/src/packages/components/$search/index.tsx +6 -6
  36. package/src/packages/components/$search/search-service.scss +221 -221
  37. package/src/packages/components/$search/search.utils.tsx +112 -112
  38. package/src/packages/components/$upload/createUploadService.tsx +57 -57
  39. package/src/packages/components/$upload/upload.utils.ts +18 -18
  40. package/src/packages/components/Address/index.tsx +138 -138
  41. package/src/packages/components/AddressCascade/address-cascade.utils.ts +44 -44
  42. package/src/packages/components/AddressCascade/createAddressCascade.hooks.ts +9 -9
  43. package/src/packages/components/AddressCascade/createAddressCascade.multiple.tsx +53 -53
  44. package/src/packages/components/AddressCascade/createAddressCascade.single.tsx +75 -75
  45. package/src/packages/components/AddressCascade/index.tsx +59 -59
  46. package/src/packages/components/AiChatBox/ai-chat-box.scss +74 -74
  47. package/src/packages/components/AiChatBox/index.tsx +154 -154
  48. package/src/packages/components/Alert/alert.scss +139 -139
  49. package/src/packages/components/Alert/index.tsx +93 -93
  50. package/src/packages/components/Application/application.scss +16 -16
  51. package/src/packages/components/Application/index.tsx +56 -56
  52. package/src/packages/components/Application/service/createApplicationService.tsx +47 -47
  53. package/src/packages/components/Application/service/createApplicationServiceComponent.tsx +41 -41
  54. package/src/packages/components/Application/service/createApplicationServiceManager.tsx +101 -101
  55. package/src/packages/components/Application/service/useApplicationService.tsx +126 -126
  56. package/src/packages/components/Application/theme/theme.ts +282 -282
  57. package/src/packages/components/Application/theme/theme.utils.ts +17 -17
  58. package/src/packages/components/Application/utils/application.utils.ts +21 -21
  59. package/src/packages/components/Application/utils/createServiceReadyObserver.ts +18 -18
  60. package/src/packages/components/ApplicationConfigurationProvider/index.tsx +5 -5
  61. package/src/packages/components/ArrowStep/index.tsx +73 -73
  62. package/src/packages/components/ArrowStepGroup/arrow-step.scss +119 -119
  63. package/src/packages/components/ArrowStepGroup/index.tsx +63 -63
  64. package/src/packages/components/AsyncFormatter/index.tsx +1 -1
  65. package/src/packages/components/AutoLoadingObserver/index.tsx +173 -173
  66. package/src/packages/components/AutoTable/AutoTable.tsx +56 -56
  67. package/src/packages/components/AutoTable/auto-table.scss +463 -463
  68. package/src/packages/components/AutoTable/createTableOptionUser.tsx +77 -77
  69. package/src/packages/components/AutoTable/filter/useTableOption.filter.form.tsx +217 -217
  70. package/src/packages/components/AutoTable/filter/useTableOption.filter.search.tsx +168 -168
  71. package/src/packages/components/AutoTable/filter/useTableOption.filter.state.ts +196 -196
  72. package/src/packages/components/AutoTable/index.tsx +4 -4
  73. package/src/packages/components/AutoTable/setting/useTableOption.setting.all.fitler.tsx +79 -79
  74. package/src/packages/components/AutoTable/setting/useTableOption.setting.cache.tsx +145 -145
  75. package/src/packages/components/AutoTable/setting/useTableOption.setting.config.tsx +260 -260
  76. package/src/packages/components/AutoTable/setting/useTableOption.setting.export.tsx +283 -283
  77. package/src/packages/components/AutoTable/setting/useTableOption.setting.import.tsx +100 -100
  78. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.filter.tsx +385 -385
  79. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.sort.tsx +123 -123
  80. package/src/packages/components/AutoTable/setting/useTableOption.setting.tsx +109 -109
  81. package/src/packages/components/AutoTable/setting/useTableOption.setting.utils.ts +40 -40
  82. package/src/packages/components/AutoTable/use/useTableOption.buttons.tsx +249 -249
  83. package/src/packages/components/AutoTable/use/useTableOption.cache.ts +235 -235
  84. package/src/packages/components/AutoTable/use/useTableOption.cache.utils.ts +83 -83
  85. package/src/packages/components/AutoTable/use/useTableOption.check.tsx +80 -80
  86. package/src/packages/components/AutoTable/use/useTableOption.column.popper.tsx +491 -491
  87. package/src/packages/components/AutoTable/use/useTableOption.confirm.tsx +122 -122
  88. package/src/packages/components/AutoTable/use/useTableOption.fill.tsx +153 -153
  89. package/src/packages/components/AutoTable/use/useTableOption.hooks.tsx +142 -142
  90. package/src/packages/components/AutoTable/use/useTableOption.loading.tsx +77 -77
  91. package/src/packages/components/AutoTable/use/useTableOption.methods.tsx +515 -515
  92. package/src/packages/components/AutoTable/use/useTableOption.pagination.tsx +191 -191
  93. package/src/packages/components/AutoTable/use/useTableOption.parent.tsx +134 -134
  94. package/src/packages/components/AutoTable/use/useTableOption.permission.tsx +16 -16
  95. package/src/packages/components/AutoTable/use/useTableOption.render.tsx +34 -34
  96. package/src/packages/components/AutoTable/use/useTableOption.sort.ts +198 -198
  97. package/src/packages/components/AutoTable/use/useTableOption.state.tsx +31 -31
  98. package/src/packages/components/AutoTable/use/useTableOption.table.tsx +87 -87
  99. package/src/packages/components/AutoTable/use/useTableOption.tips.tsx +87 -87
  100. package/src/packages/components/AutoTable/use/useTableOptionKeyboard.tsx +111 -111
  101. package/src/packages/components/AutoTable/utils/AutoModule.ts +10 -10
  102. package/src/packages/components/AutoTable/utils/AutoTable.utils.ts +120 -120
  103. package/src/packages/components/AutoTable/utils/TableOption.space.tsx +203 -203
  104. package/src/packages/components/AutoTable/utils/TableOption.url.ts +153 -153
  105. package/src/packages/components/AutoTable/utils/TableOption.utils.tsx +57 -57
  106. package/src/packages/components/AutoTable/utils/buildPlainDefaultUrlConfig.ts +134 -134
  107. package/src/packages/components/AutoWidthInput/auto-width-input.scss +25 -25
  108. package/src/packages/components/AutoWidthInput/index.tsx +67 -67
  109. package/src/packages/components/Badge/badge.scss +71 -71
  110. package/src/packages/components/Badge/index.tsx +52 -52
  111. package/src/packages/components/Box/box.scss +6 -6
  112. package/src/packages/components/Box/index.tsx +30 -30
  113. package/src/packages/components/Button/button.scss +203 -203
  114. package/src/packages/components/Button/index.tsx +213 -213
  115. package/src/packages/components/ButtonGroup/button-group.scss +73 -73
  116. package/src/packages/components/ButtonGroup/index.tsx +43 -43
  117. package/src/packages/components/Card/card.scss +122 -122
  118. package/src/packages/components/Card/index.tsx +74 -74
  119. package/src/packages/components/Carousel/carousel.scss +391 -391
  120. package/src/packages/components/Carousel/index.tsx +591 -591
  121. package/src/packages/components/CarouselItem/index.tsx +77 -77
  122. package/src/packages/components/Cascade/CascadeKeys.tsx +158 -158
  123. package/src/packages/components/Cascade/cascade.scss +111 -111
  124. package/src/packages/components/Cascade/cascade.utils.ts +68 -68
  125. package/src/packages/components/Cascade/createCascadeHooks.ts +12 -12
  126. package/src/packages/components/Cascade/createCascadePopper.tsx +120 -120
  127. package/src/packages/components/Cascade/createCascadeUtils.ts +15 -15
  128. package/src/packages/components/Cascade/createMultipleCascadeRender.tsx +156 -156
  129. package/src/packages/components/Cascade/createSingleCascadeRender.tsx +175 -175
  130. package/src/packages/components/Cascade/index.tsx +106 -106
  131. package/src/packages/components/CascadeKeys/index.tsx +5 -5
  132. package/src/packages/components/CascadePanel/cascade-panel.utils.ts +90 -90
  133. package/src/packages/components/CascadePanel/flat/CascadeFlatPanelNode.tsx +56 -56
  134. package/src/packages/components/CascadePanel/flat/cascade-flat-panel.scss +133 -133
  135. package/src/packages/components/CascadePanel/flat/createCascadeFlatRender.tsx +87 -87
  136. package/src/packages/components/CascadePanel/index.tsx +208 -208
  137. package/src/packages/components/CascadePanel/list/CascadeListPanelItem.tsx +93 -93
  138. package/src/packages/components/CascadePanel/list/CascadeListPanelNode.tsx +69 -69
  139. package/src/packages/components/CascadePanel/list/createCascadeListRender.tsx +31 -31
  140. package/src/packages/components/Checkbox/checkbox.scss +77 -77
  141. package/src/packages/components/Checkbox/index.tsx +141 -141
  142. package/src/packages/components/CheckboxGroup/index.tsx +205 -205
  143. package/src/packages/components/CheckboxInner/checkbox-inner.scss +55 -55
  144. package/src/packages/components/CheckboxInner/index.tsx +34 -34
  145. package/src/packages/components/ClientZoom/index.ts +5 -5
  146. package/src/packages/components/Collapse/collapse.scss +44 -44
  147. package/src/packages/components/Collapse/index.tsx +94 -94
  148. package/src/packages/components/CollapseGroup/index.tsx +70 -70
  149. package/src/packages/components/CollapseTransition/index.tsx +184 -184
  150. package/src/packages/components/ColorPicker/ColorPanel.tsx +146 -125
  151. package/src/packages/components/ColorPicker/color-panel.scss +117 -97
  152. package/src/packages/components/ColorPicker/color-picker.scss +64 -64
  153. package/src/packages/components/ColorPicker/index.tsx +144 -131
  154. package/src/packages/components/ColorPicker/sub/ColorAlphaSlider.tsx +43 -43
  155. package/src/packages/components/ColorPicker/sub/ColorHueSlider.tsx +17 -17
  156. package/src/packages/components/ColorPicker/sub/ColorSlider.tsx +163 -163
  157. package/src/packages/components/ColorPicker/sub/ColorSvPanel.tsx +125 -125
  158. package/src/packages/components/ColorPicker/sub/color-alpha-slider.scss +8 -8
  159. package/src/packages/components/ColorPicker/sub/color-hue-slider.scss +3 -3
  160. package/src/packages/components/ColorPicker/sub/color-slider.scss +22 -22
  161. package/src/packages/components/ColorPicker/sub/color-sv-panel.scss +55 -55
  162. package/src/packages/components/ColorPicker/useColorPanelEditor.tsx +119 -119
  163. package/src/packages/components/ColorPicker/useColorPanelHistory.tsx +51 -51
  164. package/src/packages/components/ColorPicker/utils/PlainColor.ts +70 -70
  165. package/src/packages/components/ColorPicker/utils/color-picker.utils.tsx +27 -27
  166. package/src/packages/components/ConfirmPopup/confirm-popup.scss +16 -16
  167. package/src/packages/components/ConfirmPopup/index.tsx +72 -72
  168. package/src/packages/components/Corner/corner.scss +14 -14
  169. package/src/packages/components/Corner/index.tsx +80 -80
  170. package/src/packages/components/DatePicker/createDateRender.multiple.tsx +189 -189
  171. package/src/packages/components/DatePicker/createDateRender.single.tsx +169 -169
  172. package/src/packages/components/DatePicker/createRangeDateRender.range.tsx +114 -114
  173. package/src/packages/components/DatePicker/createRangeDateRender.separate.tsx +120 -120
  174. package/src/packages/components/DatePicker/date.mixin.scss +73 -73
  175. package/src/packages/components/DatePicker/date.scss +542 -542
  176. package/src/packages/components/DatePicker/date.utils.tsx +398 -398
  177. package/src/packages/components/DatePicker/index.tsx +84 -84
  178. package/src/packages/components/DatePicker/panel/DatePanel.tsx +99 -99
  179. package/src/packages/components/DatePicker/panel/DatePanelDate.tsx +278 -278
  180. package/src/packages/components/DatePicker/panel/DatePanelMonth.tsx +190 -190
  181. package/src/packages/components/DatePicker/panel/DatePanelQuarter.tsx +50 -50
  182. package/src/packages/components/DatePicker/panel/DatePanelRange.tsx +146 -146
  183. package/src/packages/components/DatePicker/panel/DatePanelWeek.tsx +52 -52
  184. package/src/packages/components/DatePicker/panel/DatePanelYear.tsx +100 -100
  185. package/src/packages/components/DatePicker/panel/useDatePanel.tsx +618 -618
  186. package/src/packages/components/DatePicker/panel/useDateWeek.tsx +153 -153
  187. package/src/packages/components/DatePicker/useRangeDateRender.tsx +318 -318
  188. package/src/packages/components/Dialog/dialog.scss +261 -261
  189. package/src/packages/components/Dialog/index.tsx +439 -439
  190. package/src/packages/components/Dialog/useDialogMovable.tsx +72 -72
  191. package/src/packages/components/Dialog/utils/dialog.mouse.ts +16 -16
  192. package/src/packages/components/Dialog/utils/dialog.utils.ts +10 -10
  193. package/src/packages/components/Dropdown/dropdown.public.scss +94 -94
  194. package/src/packages/components/Dropdown/dropdown.scss +13 -13
  195. package/src/packages/components/Dropdown/dropdown.utils.tsx +108 -108
  196. package/src/packages/components/Dropdown/index.tsx +174 -174
  197. package/src/packages/components/DropdownGroup/index.tsx +18 -18
  198. package/src/packages/components/DropdownOption/index.tsx +74 -74
  199. package/src/packages/components/DropdownSeparator/index.tsx +8 -8
  200. package/src/packages/components/Empty/empty.scss +14 -14
  201. package/src/packages/components/Empty/index.tsx +48 -48
  202. package/src/packages/components/FilterFormMultiple/filter-form-multiple.scss +36 -36
  203. package/src/packages/components/FilterFormMultiple/index.tsx +288 -288
  204. package/src/packages/components/FilterFormSingle/index.tsx +178 -178
  205. package/src/packages/components/FilterService/filter/filter.city.tsx +85 -85
  206. package/src/packages/components/FilterService/filter/filter.date.tsx +85 -85
  207. package/src/packages/components/FilterService/filter/filter.datetime.tsx +68 -68
  208. package/src/packages/components/FilterService/filter/filter.district.tsx +86 -86
  209. package/src/packages/components/FilterService/filter/filter.number.tsx +66 -66
  210. package/src/packages/components/FilterService/filter/filter.province.tsx +91 -91
  211. package/src/packages/components/FilterService/filter/filter.select.tsx +67 -67
  212. package/src/packages/components/FilterService/filter/filter.text.tsx +57 -57
  213. package/src/packages/components/FilterService/filter/fitler.object.tsx +115 -115
  214. package/src/packages/components/FilterService/index.tsx +250 -250
  215. package/src/packages/components/FilterService/utils/filter.service.utils.ts +138 -138
  216. package/src/packages/components/FilterService/utils/mergeQueryParam.ts +80 -80
  217. package/src/packages/components/Form/form.scss +256 -256
  218. package/src/packages/components/Form/index.tsx +74 -74
  219. package/src/packages/components/Form/layout/useFormLayout.tsx +332 -332
  220. package/src/packages/components/Form/types/any.tsx +54 -54
  221. package/src/packages/components/Form/types/array.tsx +55 -55
  222. package/src/packages/components/Form/types/arrayjson.tsx +15 -15
  223. package/src/packages/components/Form/types/arraystring.tsx +15 -15
  224. package/src/packages/components/Form/types/date.tsx +72 -72
  225. package/src/packages/components/Form/types/datetime.tsx +8 -8
  226. package/src/packages/components/Form/types/email.tsx +11 -11
  227. package/src/packages/components/Form/types/idcard.tsx +13 -13
  228. package/src/packages/components/Form/types/number.tsx +59 -59
  229. package/src/packages/components/Form/types/phone.tsx +11 -11
  230. package/src/packages/components/Form/types/qq.tsx +11 -11
  231. package/src/packages/components/Form/types/string.tsx +68 -68
  232. package/src/packages/components/Form/types/time.tsx +8 -8
  233. package/src/packages/components/Form/validate/createValidation.tsx +278 -278
  234. package/src/packages/components/Form/validate/useFormItemValidation.tsx +122 -122
  235. package/src/packages/components/Form/validate/useFormValidation.tsx +137 -137
  236. package/src/packages/components/Form/validate/validate.utils.tsx +439 -439
  237. package/src/packages/components/FormCascade/index.tsx +6 -6
  238. package/src/packages/components/FormCheckbox/index.tsx +6 -6
  239. package/src/packages/components/FormCheckboxGroup/index.tsx +6 -6
  240. package/src/packages/components/FormColorPicker/index.tsx +6 -6
  241. package/src/packages/components/FormDatePicker/index.tsx +6 -6
  242. package/src/packages/components/FormInput/index.tsx +6 -6
  243. package/src/packages/components/FormInputNumber/index.tsx +6 -6
  244. package/src/packages/components/FormItem/FormItemValidateMessage.tsx +16 -16
  245. package/src/packages/components/FormItem/createFormEditor.tsx +87 -87
  246. package/src/packages/components/FormItem/index.tsx +134 -134
  247. package/src/packages/components/FormRadio/index.tsx +6 -6
  248. package/src/packages/components/FormRadioGroup/index.tsx +6 -6
  249. package/src/packages/components/FormRate/index.tsx +6 -6
  250. package/src/packages/components/FormSelect/index.tsx +6 -6
  251. package/src/packages/components/FormSlider/index.tsx +6 -6
  252. package/src/packages/components/FormTimePicker/index.tsx +6 -6
  253. package/src/packages/components/FormToggle/index.tsx +6 -6
  254. package/src/packages/components/Formatter/index.tsx +64 -64
  255. package/src/packages/components/Grid/GridCol.tsx +73 -73
  256. package/src/packages/components/Grid/GridRow.tsx +91 -91
  257. package/src/packages/components/Grid/grid.scss +109 -109
  258. package/src/packages/components/Grid/grid.utils.ts +21 -21
  259. package/src/packages/components/GridCol/index.tsx +5 -5
  260. package/src/packages/components/GridRow/index.tsx +5 -5
  261. package/src/packages/components/Icon/icon.external.tsx +6 -0
  262. package/src/packages/components/Icon/icon.registry.tsx +21 -21
  263. package/src/packages/components/Icon/icon.scss +12 -12
  264. package/src/packages/components/Illustration/index.tsx +28 -28
  265. package/src/packages/components/Image/image.scss +334 -334
  266. package/src/packages/components/Image/index.tsx +168 -168
  267. package/src/packages/components/ImagePreviewer/ImagePreviewer.tsx +574 -574
  268. package/src/packages/components/ImagePreviewer/ImagePreviewerButtonBar.tsx +140 -140
  269. package/src/packages/components/ImagePreviewer/ImagePreviewerCarouselImage.tsx +54 -54
  270. package/src/packages/components/ImagePreviewer/ImagePreviewerGallery.tsx +202 -202
  271. package/src/packages/components/ImagePreviewer/PreviewerLoading.tsx +26 -26
  272. package/src/packages/components/ImagePreviewer/image-previewer.scss +244 -244
  273. package/src/packages/components/ImagePreviewer/image-previewer.utils.tsx +136 -136
  274. package/src/packages/components/ImagePreviewer/index.tsx +5 -5
  275. package/src/packages/components/ImagePreviewer/previewer-loading.scss +52 -52
  276. package/src/packages/components/ImageUploader/index.tsx +242 -242
  277. package/src/packages/components/Input/index.scss +446 -446
  278. package/src/packages/components/Input/index.tsx +153 -153
  279. package/src/packages/components/Input/input.utils.ts +119 -119
  280. package/src/packages/components/Input/useMultipleInput.tsx +126 -126
  281. package/src/packages/components/Input/useSingleInput.tsx +45 -45
  282. package/src/packages/components/Input/useSuggestionInput.tsx +218 -218
  283. package/src/packages/components/Input/useTextareaInput.tsx +155 -155
  284. package/src/packages/components/Input/uses/useInputEnterHandler.tsx +83 -83
  285. package/src/packages/components/Input/uses/useInputHooks.tsx +21 -21
  286. package/src/packages/components/Input/uses/useInputMaxLength.tsx +35 -35
  287. package/src/packages/components/Input/uses/useInputSuffixIcon.tsx +67 -67
  288. package/src/packages/components/InputGroup/index.tsx +31 -31
  289. package/src/packages/components/InputGroup/input-group.scss +46 -46
  290. package/src/packages/components/InputNumber/NumberResize.tsx +111 -111
  291. package/src/packages/components/InputNumber/index.tsx +36 -36
  292. package/src/packages/components/InputNumber/input-number.utils.tsx +96 -96
  293. package/src/packages/components/InputNumber/number.scss +95 -95
  294. package/src/packages/components/InputNumber/number.utils.ts +3 -3
  295. package/src/packages/components/InputNumber/useInputNumber.multiple.tsx +121 -121
  296. package/src/packages/components/InputNumber/useInputNumber.public.tsx +478 -478
  297. package/src/packages/components/InputNumber/useInputNumber.single.tsx +137 -137
  298. package/src/packages/components/KeepAlive/KeepAliveCacheItemWrapper.tsx +114 -114
  299. package/src/packages/components/KeepAlive/index.tsx +77 -77
  300. package/src/packages/components/KeepAlive/utils/keepalive.utils.ts +33 -33
  301. package/src/packages/components/Layout/index.tsx +38 -38
  302. package/src/packages/components/Layout/layout.scss +247 -247
  303. package/src/packages/components/Layout/layout.utils.ts +3 -3
  304. package/src/packages/components/LayoutSection/index.tsx +76 -76
  305. package/src/packages/components/LayoutSection/useLayoutSectionResizer.tsx +184 -184
  306. package/src/packages/components/List/index.tsx +74 -74
  307. package/src/packages/components/List/list.scss +3 -3
  308. package/src/packages/components/ListOption/index.tsx +20 -20
  309. package/src/packages/components/ListPanel/index.tsx +30 -30
  310. package/src/packages/components/ListPanel/list-panel.scss +20 -20
  311. package/src/packages/components/Loading/index.tsx +27 -27
  312. package/src/packages/components/Loading/loading.scss +7 -7
  313. package/src/packages/components/LoadingMask/index.tsx +101 -101
  314. package/src/packages/components/LoadingMask/loading-mask.scss +34 -34
  315. package/src/packages/components/NumberRange/index.tsx +93 -93
  316. package/src/packages/components/Object/createObjectHooks.tsx +13 -13
  317. package/src/packages/components/Object/createObjectRender.multiple.tsx +289 -289
  318. package/src/packages/components/Object/createObjectRender.single.tsx +219 -219
  319. package/src/packages/components/Object/index.tsx +104 -104
  320. package/src/packages/components/Object/object.scss +24 -24
  321. package/src/packages/components/Object/object.utils.ts +56 -56
  322. package/src/packages/components/OuterOperation/index.tsx +5 -5
  323. package/src/packages/components/Ov/index.tsx +23 -23
  324. package/src/packages/components/Ov/ov.utils.ts +9 -9
  325. package/src/packages/components/Ov/usePublicOv.tsx +35 -35
  326. package/src/packages/components/PageCard/index.tsx +48 -48
  327. package/src/packages/components/PageCard/page-card.scss +124 -124
  328. package/src/packages/components/PageCardContent/index.tsx +44 -44
  329. package/src/packages/components/PageCardTitle/index.tsx +51 -51
  330. package/src/packages/components/PageRenderList/index.tsx +22 -22
  331. package/src/packages/components/PageThemeUtils/deepmerge.ts +21 -21
  332. package/src/packages/components/PageThemeUtils/index.tsx +262 -262
  333. package/src/packages/components/Pagination/index.tsx +339 -339
  334. package/src/packages/components/Pagination/pagination.scss +126 -126
  335. package/src/packages/components/Paragraph/index.tsx +46 -46
  336. package/src/packages/components/Paragraph/paragraph.scss +12 -12
  337. package/src/packages/components/ParagraphItem/index.tsx +21 -21
  338. package/src/packages/components/Plc/index.tsx +4 -4
  339. package/src/packages/components/PlcAddress/index.tsx +4 -4
  340. package/src/packages/components/PlcAddressItem/index.tsx +4 -4
  341. package/src/packages/components/PlcCheck/index.tsx +5 -5
  342. package/src/packages/components/PlcCheckbox/index.tsx +4 -4
  343. package/src/packages/components/PlcColorPicker/index.tsx +4 -4
  344. package/src/packages/components/PlcDate/index.tsx +4 -4
  345. package/src/packages/components/PlcDateRange/index.tsx +4 -4
  346. package/src/packages/components/PlcDraggier/index.tsx +5 -5
  347. package/src/packages/components/PlcExpand/index.tsx +5 -5
  348. package/src/packages/components/PlcGroup/index.tsx +4 -4
  349. package/src/packages/components/PlcImage/index.tsx +86 -86
  350. package/src/packages/components/PlcIndex/index.tsx +5 -5
  351. package/src/packages/components/PlcInput/index.tsx +4 -4
  352. package/src/packages/components/PlcNumber/index.tsx +4 -4
  353. package/src/packages/components/PlcObject/index.tsx +53 -53
  354. package/src/packages/components/PlcOperation/index.tsx +5 -5
  355. package/src/packages/components/PlcOv/index.tsx +31 -31
  356. package/src/packages/components/PlcRate/index.tsx +4 -4
  357. package/src/packages/components/PlcSelect/index.tsx +4 -4
  358. package/src/packages/components/PlcTextarea/index.tsx +4 -4
  359. package/src/packages/components/PlcTime/index.tsx +4 -4
  360. package/src/packages/components/PlcTimeRange/index.tsx +4 -4
  361. package/src/packages/components/PlcToggle/index.tsx +4 -4
  362. package/src/packages/components/PlcTree/index.tsx +5 -5
  363. package/src/packages/components/Popup/PopupProvider.tsx +20 -20
  364. package/src/packages/components/Popup/index.tsx +403 -403
  365. package/src/packages/components/Popup/popup.scss +13 -13
  366. package/src/packages/components/ProgressBar/index.tsx +87 -87
  367. package/src/packages/components/ProgressBar/progress-bar.scss +40 -40
  368. package/src/packages/components/ProgressBar/progress.utils.ts +24 -24
  369. package/src/packages/components/ProgressCircle/index.tsx +188 -188
  370. package/src/packages/components/ProgressCircle/progress-circle.scss +44 -44
  371. package/src/packages/components/ProgressMini/index.tsx +98 -98
  372. package/src/packages/components/ProgressMini/progress-mini.scss +17 -17
  373. package/src/packages/components/Radio/index.tsx +137 -137
  374. package/src/packages/components/Radio/radio.scss +79 -79
  375. package/src/packages/components/RadioGroup/index.tsx +62 -62
  376. package/src/packages/components/RadioInner/index.tsx +31 -31
  377. package/src/packages/components/RadioInner/radio-inner.scss +17 -17
  378. package/src/packages/components/Rate/index.tsx +152 -152
  379. package/src/packages/components/Rate/rate.scss +32 -32
  380. package/src/packages/components/Reference/ReferenceProvider.tsx +13 -13
  381. package/src/packages/components/Reference/index.tsx +57 -57
  382. package/src/packages/components/RollingNumber/index.tsx +66 -66
  383. package/src/packages/components/Scroll/HorizontalScrollbar.tsx +96 -96
  384. package/src/packages/components/Scroll/VerticalScrollbar.tsx +102 -102
  385. package/src/packages/components/Scroll/index.tsx +419 -419
  386. package/src/packages/components/Scroll/scroll.scss +168 -168
  387. package/src/packages/components/Scroll/useAutoScroll.ts +68 -68
  388. package/src/packages/components/Segment/index.tsx +39 -39
  389. package/src/packages/components/Segment/segment.scss +46 -46
  390. package/src/packages/components/SegmentGroup/index.tsx +48 -48
  391. package/src/packages/components/Select/SelectPanel.tsx +78 -78
  392. package/src/packages/components/Select/createMultipleSelectRender.tsx +248 -248
  393. package/src/packages/components/Select/createPublicSelectRender.tsx +411 -411
  394. package/src/packages/components/Select/createSelectOptionDecoder.tsx +43 -43
  395. package/src/packages/components/Select/createSingleSelectRender.tsx +133 -133
  396. package/src/packages/components/Select/decodeSelectRenderNode.tsx +52 -52
  397. package/src/packages/components/Select/index.tsx +97 -97
  398. package/src/packages/components/Select/select.scss +101 -101
  399. package/src/packages/components/Select/select.utils.tsx +248 -248
  400. package/src/packages/components/SelectDisplay/index.tsx +30 -30
  401. package/src/packages/components/SelectGroup/index.tsx +37 -37
  402. package/src/packages/components/SelectOption/index.tsx +72 -72
  403. package/src/packages/components/Slider/index.tsx +123 -123
  404. package/src/packages/components/Slider/slider.scss +128 -128
  405. package/src/packages/components/Slider/slider.utils.tsx +71 -71
  406. package/src/packages/components/Slider/useSlider.range.tsx +211 -211
  407. package/src/packages/components/Slider/useSlider.single.tsx +148 -148
  408. package/src/packages/components/Slider/useSliderDotDragier.tsx +66 -66
  409. package/src/packages/components/SortList/index.tsx +191 -191
  410. package/src/packages/components/SortList/sort-list.scss +11 -11
  411. package/src/packages/components/Space/index.tsx +36 -36
  412. package/src/packages/components/Space/space.scss +39 -39
  413. package/src/packages/components/StackCard/index.tsx +416 -416
  414. package/src/packages/components/StackCard/stack-card.scss +40 -40
  415. package/src/packages/components/StackCardItem/index.tsx +24 -24
  416. package/src/packages/components/Step/index.tsx +120 -120
  417. package/src/packages/components/StepGroup/index.tsx +63 -63
  418. package/src/packages/components/StepGroup/step-group.scss +411 -411
  419. package/src/packages/components/StepGroup/step.utils.ts +44 -44
  420. package/src/packages/components/Tab/index.tsx +42 -42
  421. package/src/packages/components/TabGroup/TabsHeader.tsx +105 -105
  422. package/src/packages/components/TabGroup/TabsInner.tsx +60 -60
  423. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontal.tsx +94 -94
  424. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalCard.tsx +15 -15
  425. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalShadow.tsx +15 -15
  426. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalText.tsx +66 -66
  427. package/src/packages/components/TabGroup/header/horizontal/tabs-header-card.scss +85 -85
  428. package/src/packages/components/TabGroup/header/horizontal/tabs-header-horizontal.scss +59 -59
  429. package/src/packages/components/TabGroup/header/horizontal/tabs-header-shadow.scss +88 -88
  430. package/src/packages/components/TabGroup/header/horizontal/tabs-header-text.scss +50 -50
  431. package/src/packages/components/TabGroup/header/vertical/TabsHeaderVertical.tsx +24 -24
  432. package/src/packages/components/TabGroup/header/vertical/tabs-header-vertical.scss +116 -116
  433. package/src/packages/components/TabGroup/index.tsx +131 -131
  434. package/src/packages/components/TabGroup/tabs.scss +62 -62
  435. package/src/packages/components/TabGroup/tabs.utils.tsx +22 -22
  436. package/src/packages/components/Table/editor/PlcAddress.tsx +91 -91
  437. package/src/packages/components/Table/editor/PlcAddressItem.tsx +60 -60
  438. package/src/packages/components/Table/editor/PlcCheckbox.tsx +36 -36
  439. package/src/packages/components/Table/editor/PlcColorPicker.tsx +29 -29
  440. package/src/packages/components/Table/editor/PlcDate.tsx +97 -97
  441. package/src/packages/components/Table/editor/PlcDate.utils.tsx +45 -45
  442. package/src/packages/components/Table/editor/PlcDateRange.tsx +73 -73
  443. package/src/packages/components/Table/editor/PlcInput.tsx +21 -21
  444. package/src/packages/components/Table/editor/PlcNumber.tsx +23 -23
  445. package/src/packages/components/Table/editor/PlcRate.tsx +24 -24
  446. package/src/packages/components/Table/editor/PlcSelect.tsx +181 -181
  447. package/src/packages/components/Table/editor/PlcTextarea.tsx +22 -22
  448. package/src/packages/components/Table/editor/PlcTime.tsx +54 -54
  449. package/src/packages/components/Table/editor/PlcTime.utils.ts +15 -15
  450. package/src/packages/components/Table/editor/PlcTimeRange.tsx +66 -66
  451. package/src/packages/components/Table/editor/PlcToggle.tsx +40 -40
  452. package/src/packages/components/Table/index.tsx +4 -4
  453. package/src/packages/components/Table/plc/formatPlcList.tsx +92 -92
  454. package/src/packages/components/Table/plc/group/PlcGroup.tsx +20 -20
  455. package/src/packages/components/Table/plc/plc/Plc.tsx +19 -19
  456. package/src/packages/components/Table/plc/process/copyPlcList.ts +23 -23
  457. package/src/packages/components/Table/plc/process/getPltCellClass.ts +8 -8
  458. package/src/packages/components/Table/plc/process/processAutoFixed.ts +73 -73
  459. package/src/packages/components/Table/plc/process/processHeadPlcList.ts +110 -110
  460. package/src/packages/components/Table/plc/process/processPlcClassAndStyle.ts +43 -43
  461. package/src/packages/components/Table/plc/process/processPlcFixed.ts +81 -81
  462. package/src/packages/components/Table/plc/process/processPlcSort.ts +91 -91
  463. package/src/packages/components/Table/plc/use/useBasePlc.tsx +85 -85
  464. package/src/packages/components/Table/plc/use/useBasePlcGroup.tsx +70 -70
  465. package/src/packages/components/Table/plc/use/usePlc.tsx +136 -136
  466. package/src/packages/components/Table/plc/use/usePlcPropsState.tsx +112 -112
  467. package/src/packages/components/Table/plc/use/useTableAutoSpan.tsx +112 -112
  468. package/src/packages/components/Table/plc/useTablePlc.tsx +229 -229
  469. package/src/packages/components/Table/plc/utils/iteratePlcList.tsx +48 -48
  470. package/src/packages/components/Table/plc/utils/plc.render.ts +122 -122
  471. package/src/packages/components/Table/plc/utils/plc.scope-slots.ts +63 -63
  472. package/src/packages/components/Table/plc/utils/plc.utils.ts +302 -302
  473. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.hooks.tsx +16 -16
  474. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.multiple.tsx +280 -280
  475. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.single.tsx +89 -89
  476. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.tsx +61 -61
  477. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.utils.ts +35 -35
  478. package/src/packages/components/Table/standard/PlcDraggier/PlcDraggier.tsx +55 -55
  479. package/src/packages/components/Table/standard/PlcExclusion.tsx +26 -26
  480. package/src/packages/components/Table/standard/PlcExpand.tsx +204 -204
  481. package/src/packages/components/Table/standard/PlcIndex.tsx +34 -34
  482. package/src/packages/components/Table/standard/PlcOperation/OuterOperation.tsx +210 -210
  483. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.tsx +391 -391
  484. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.utils.tsx +159 -159
  485. package/src/packages/components/Table/standard/PlcOperation/outer-operation.scss +39 -39
  486. package/src/packages/components/Table/standard/PlcOperation/useOperationPermission.ts +53 -53
  487. package/src/packages/components/Table/standard/PlcTree/PlcTree.autoWidth.tsx +52 -52
  488. package/src/packages/components/Table/standard/PlcTree/PlcTree.renderNode.tsx +81 -81
  489. package/src/packages/components/Table/standard/PlcTree/PlcTree.tsx +194 -194
  490. package/src/packages/components/Table/standard/PlcTree/PlcTree.utils.ts +59 -59
  491. package/src/packages/components/Table/standard/PlcTree/PlcTreeHeader.tsx +64 -64
  492. package/src/packages/components/Table/standard/PlcTree/RenderPlcTreeNode.tsx +114 -114
  493. package/src/packages/components/Table/table/Table.tsx +382 -382
  494. package/src/packages/components/Table/table/body/cell.tsx +310 -310
  495. package/src/packages/components/Table/table/body/row.tsx +47 -47
  496. package/src/packages/components/Table/table/body/useCellValue.tsx +145 -145
  497. package/src/packages/components/Table/table/head/head-cell.tsx +100 -100
  498. package/src/packages/components/Table/table/head/useHeadCellResize.ts +79 -79
  499. package/src/packages/components/Table/table/node/useTableNode.tsx +66 -66
  500. package/src/packages/components/Table/table/table.scss +438 -438
  501. package/src/packages/components/Table/table/use/useFixedShadow.ts +48 -48
  502. package/src/packages/components/Table/table/use/useTableDraggier.col.tsx +639 -639
  503. package/src/packages/components/Table/table/use/useTableDraggier.row.tsx +279 -279
  504. package/src/packages/components/Table/table/use/useTableDraggier.tsx +237 -237
  505. package/src/packages/components/Table/table/use/useTableFormEditor.tsx +190 -190
  506. package/src/packages/components/Table/table/use/useTableLoading.tsx +39 -39
  507. package/src/packages/components/Table/table/use/useTableMethods.tsx +65 -65
  508. package/src/packages/components/Table/table/use/useTableModifyEditor.tsx +204 -204
  509. package/src/packages/components/Table/table/use/useTableScroll.tsx +49 -49
  510. package/src/packages/components/Table/table/utils/createTableHooks.ts +70 -70
  511. package/src/packages/components/Table/table/utils/table.utils.ts +286 -286
  512. package/src/packages/components/Table/table/utils/url.utils.ts +23 -23
  513. package/src/packages/components/TableOptionSpace/index.ts +5 -5
  514. package/src/packages/components/TableOptionUtils/index.ts +5 -5
  515. package/src/packages/components/Tag/tag.utils.ts +20 -20
  516. package/src/packages/components/ThemeColor/index.tsx +22 -22
  517. package/src/packages/components/ThemeColor/theme-color.scss +36 -36
  518. package/src/packages/components/ThemeColorSelector/index.tsx +53 -53
  519. package/src/packages/components/ThemeDarkSelector/index.tsx +37 -37
  520. package/src/packages/components/ThemeEditor/index.tsx +199 -199
  521. package/src/packages/components/ThemeEditor/theme-editor.scss +106 -106
  522. package/src/packages/components/ThemeLocaleSelector/index.tsx +41 -41
  523. package/src/packages/components/ThemePrimaryColors/index.ts +5 -5
  524. package/src/packages/components/ThemeShapeSelector/index.tsx +55 -55
  525. package/src/packages/components/ThemeSizeSelector/index.tsx +50 -50
  526. package/src/packages/components/TimePicker/createRangeTimeRender.tsx +80 -80
  527. package/src/packages/components/TimePicker/createSeparateRangeTimeRender.tsx +104 -104
  528. package/src/packages/components/TimePicker/createSingleTimeRender.tsx +202 -202
  529. package/src/packages/components/TimePicker/index.tsx +65 -65
  530. package/src/packages/components/TimePicker/panel/TimeBaseColumn.tsx +136 -136
  531. package/src/packages/components/TimePicker/panel/TimeBasePanel.tsx +172 -172
  532. package/src/packages/components/TimePicker/panel/TimePanel.tsx +94 -94
  533. package/src/packages/components/TimePicker/panel/TimeRangePanel.tsx +141 -141
  534. package/src/packages/components/TimePicker/panel/time-base-column.scss +51 -51
  535. package/src/packages/components/TimePicker/panel/time-base-panel.scss +39 -39
  536. package/src/packages/components/TimePicker/panel/time-panel.utils.ts +16 -16
  537. package/src/packages/components/TimePicker/panel/time-range-panel.scss +9 -9
  538. package/src/packages/components/TimePicker/time.scss +10 -10
  539. package/src/packages/components/TimePicker/time.utils.ts +100 -100
  540. package/src/packages/components/TimePicker/useRangeTimeRender.tsx +236 -236
  541. package/src/packages/components/TimePicker/useTimeHooks.ts +11 -11
  542. package/src/packages/components/Toggle/index.tsx +116 -116
  543. package/src/packages/components/Toggle/toggle.scss +151 -151
  544. package/src/packages/components/Tooltip/index.tsx +118 -118
  545. package/src/packages/components/Tooltip/tooltip.scss +5 -5
  546. package/src/packages/components/Transition/index.tsx +134 -134
  547. package/src/packages/components/Tree/RenderTreeNode.tsx +178 -178
  548. package/src/packages/components/Tree/index.tsx +130 -130
  549. package/src/packages/components/Tree/tree.scss +259 -259
  550. package/src/packages/components/TreeCore/TreeCore.type.tsx +140 -140
  551. package/src/packages/components/TreeCore/createTreeCore.tsx +364 -364
  552. package/src/packages/components/TreeCore/createTreeDraggier.tsx +412 -412
  553. package/src/packages/components/TreeCore/createTreeHooks.ts +16 -16
  554. package/src/packages/components/TreeCore/createTreeMethods.tsx +421 -421
  555. package/src/packages/components/TreeCore/createTreeNode.tsx +244 -244
  556. package/src/packages/components/TreeCore/createTreeProps.ts +76 -76
  557. package/src/packages/components/TreeCore/createTreeUtils.ts +140 -140
  558. package/src/packages/components/TreeCore/fromatNodeData.ts +65 -65
  559. package/src/packages/components/TreeNodeWithMenu/index.tsx +95 -95
  560. package/src/packages/components/TreeNodeWithMenu/tree-node-with-menu.scss +39 -39
  561. package/src/packages/components/TreeNodeWithMenu/treeNodeWithMenu.utils.ts +12 -12
  562. package/src/packages/components/Triangle/index.tsx +88 -88
  563. package/src/packages/components/Triangle/triangle.scss +12 -12
  564. package/src/packages/components/Upload/index.tsx +422 -422
  565. package/src/packages/components/Upload/upload.scss +185 -185
  566. package/src/packages/components/VirtualList/createVirtualDraggier.ts +375 -375
  567. package/src/packages/components/VirtualList/index.tsx +109 -109
  568. package/src/packages/components/VirtualList/useVirtualList.tsx +440 -440
  569. package/src/packages/components/VirtualList/virtual-list.scss +58 -58
  570. package/src/packages/components/VirtualTable/index.tsx +220 -220
  571. package/src/packages/components/VirtualTable/virtual-table.scss +179 -179
  572. package/src/packages/components/_Object/index.tsx +5 -5
  573. package/src/packages/components/buildPlainDefaultUrlConfig/index.tsx +5 -5
  574. package/src/packages/components/createAddressService/index.ts +5 -5
  575. package/src/packages/components/createAutoScrollManager/index.tsx +41 -41
  576. package/src/packages/components/createHttp/http.utils.ts +56 -56
  577. package/src/packages/components/createHttp/index.tsx +29 -29
  578. package/src/packages/components/createObjectService/index.tsx +5 -5
  579. package/src/packages/components/createOvService/index.tsx +5 -5
  580. package/src/packages/components/createPlainAddressService/index.tsx +107 -107
  581. package/src/packages/components/createPopup/index.ts +5 -5
  582. package/src/packages/components/createRequestInterceptor/index.ts +139 -139
  583. package/src/packages/components/createScrollDraggier/index.ts +341 -341
  584. package/src/packages/components/createScrollUtils/index.tsx +163 -163
  585. package/src/packages/components/createSimpleDate/index.ts +49 -49
  586. package/src/packages/components/createTableOptionUser/index.tsx +5 -5
  587. package/src/packages/components/createTransitionHandler/index.ts +46 -46
  588. package/src/packages/components/createUploadService/index.tsx +5 -5
  589. package/src/packages/components/createVirtualDraggier/index.ts +5 -5
  590. package/src/packages/components/createWebDraggier/index.ts +5 -5
  591. package/src/packages/components/i18n/index.tsx +5 -5
  592. package/src/packages/components/loadFile/index.ts +20 -20
  593. package/src/packages/components/nextPopupId/index.ts +5 -5
  594. package/src/packages/components/useAutoScrollUtils/auto-scroll-utils.scss +48 -48
  595. package/src/packages/components/useAutoScrollUtils/index.tsx +86 -86
  596. package/src/packages/components/useContextmenuOptions/index.tsx +40 -40
  597. package/src/packages/components/useDialog/DialogService.tsx +227 -227
  598. package/src/packages/components/useDialog/dialog-service.scss +50 -50
  599. package/src/packages/components/useDialog/dialog.service.utils.tsx +88 -88
  600. package/src/packages/components/useDialog/index.tsx +66 -66
  601. package/src/packages/components/useImage/ImageService.tsx +285 -285
  602. package/src/packages/components/useImage/index.tsx +28 -28
  603. package/src/packages/components/useLoading/LoadingService.tsx +106 -106
  604. package/src/packages/components/useLoading/index.tsx +31 -31
  605. package/src/packages/components/useLoading/loading.service.scss +25 -25
  606. package/src/packages/components/useLoading/loading.service.utils.tsx +13 -13
  607. package/src/packages/components/useMessage/Message.tsx +77 -77
  608. package/src/packages/components/useMessage/MessageContainer.tsx +64 -64
  609. package/src/packages/components/useMessage/MessageManager.tsx +58 -58
  610. package/src/packages/components/useMessage/index.tsx +51 -51
  611. package/src/packages/components/useMessage/message.scss +149 -149
  612. package/src/packages/components/useMessage/message.service.utils.tsx +43 -43
  613. package/src/packages/components/useNotice/Notice.tsx +93 -93
  614. package/src/packages/components/useNotice/NoticeContainer.tsx +65 -65
  615. package/src/packages/components/useNotice/NoticeManager.tsx +58 -58
  616. package/src/packages/components/useNotice/index.tsx +42 -42
  617. package/src/packages/components/useNotice/noitice.service.utils.tsx +48 -48
  618. package/src/packages/components/useNotice/notice.scss +158 -158
  619. package/src/packages/components/usePageRender/index.tsx +3 -3
  620. package/src/packages/components/usePageRenderContext/index.tsx +8 -8
  621. package/src/packages/components/usePopup/PopupItem.tsx +432 -432
  622. package/src/packages/components/usePopup/index.tsx +1 -1
  623. package/src/packages/components/usePopup/popup-item.scss +252 -252
  624. package/src/packages/components/usePopup/refresh/MaxMinTopLeft.ts +38 -38
  625. package/src/packages/components/usePopup/refresh/applyPosition.ts +61 -61
  626. package/src/packages/components/usePopup/refresh/calcPosition.ts +88 -88
  627. package/src/packages/components/usePopup/refresh/refreshArrow.ts +112 -112
  628. package/src/packages/components/usePopup/refresh/refreshPopup.ts +79 -79
  629. package/src/packages/components/usePopup/trigger/useManagerTrigger.click.tsx +56 -56
  630. package/src/packages/components/usePopup/trigger/useManagerTrigger.clickOutside.tsx +39 -39
  631. package/src/packages/components/usePopup/trigger/useManagerTrigger.contextmenu.tsx +59 -59
  632. package/src/packages/components/usePopup/trigger/useManagerTrigger.focus.tsx +30 -30
  633. package/src/packages/components/usePopup/trigger/useManagerTrigger.hover.tsx +60 -60
  634. package/src/packages/components/usePopup/trigger/usePopupTrigger.tsx +56 -56
  635. package/src/packages/components/usePopup/trigger/useReferenceTrigger.tsx +90 -90
  636. package/src/packages/components/usePopup/usePopup.tsx +73 -73
  637. package/src/packages/components/usePopup/usePopupManager.tsx +325 -325
  638. package/src/packages/components/usePopup/utils/closeAllPopper.ts +5 -5
  639. package/src/packages/components/usePopup/utils/createPopperAttrsGetter.ts +5 -5
  640. package/src/packages/components/usePopup/utils/createPopupManagerHooks.tsx +65 -65
  641. package/src/packages/components/usePopup/utils/decodePlacement.ts +16 -16
  642. package/src/packages/components/usePopup/utils/getAvailableDirection.ts +91 -91
  643. package/src/packages/components/usePopup/utils/getBoundary.ts +25 -25
  644. package/src/packages/components/usePopup/utils/getRects.ts +24 -24
  645. package/src/packages/components/usePopup/utils/handleDirection.ts +10 -10
  646. package/src/packages/components/usePopup/utils/ids2map.ts +11 -11
  647. package/src/packages/components/usePopup/utils/popup.utils.ts +239 -239
  648. package/src/packages/components/usePopup/utils/stopPopup.ts +7 -7
  649. package/src/packages/components/usePopupEditor/index.tsx +113 -113
  650. package/src/packages/components/usePopupEditor/popup-editor.utils.ts +15 -15
  651. package/src/packages/components/usePopupManager/index.ts +5 -5
  652. package/src/packages/components/usePopupTrigger/index.tsx +5 -5
  653. package/src/packages/components/useReferenceTrigger/index.tsx +5 -5
  654. package/src/packages/components/useTableFilter/index.ts +73 -73
  655. package/src/packages/components/useTooltip/index.tsx +188 -188
  656. package/src/packages/components/useWatchAutoClear/index.ts +5 -5
  657. package/src/packages/directives/ClickWave/click-wave.scss +57 -57
  658. package/src/packages/directives/ClickWave/index.tsx +78 -78
  659. package/src/packages/directives/ResizeDetector/index.tsx +107 -107
  660. package/src/packages/entry.tsx +322 -322
  661. package/src/packages/i18n/i18n.utils.ts +272 -272
  662. package/src/packages/i18n/index.ts +5 -5
  663. package/src/packages/i18n/lang/en-us.ts +4 -0
  664. package/src/packages/i18n/lang/zh-cn.ts +4 -0
  665. package/src/packages/index.tsx +5 -5
  666. package/src/packages/styles/application/application.public.scss +15 -15
  667. package/src/packages/styles/application/application.public.transition.scss +90 -90
  668. package/src/packages/styles/global.import.scss +194 -194
  669. package/src/packages/uses/createInputPopperAttrs.ts +60 -60
  670. package/src/packages/uses/useCollapseStyles.tsx +56 -56
  671. package/src/packages/uses/useDragHorizontalScroll.ts +81 -81
  672. package/src/packages/uses/useEdit.ts +116 -116
  673. package/src/packages/uses/useFocusHandler.ts +73 -73
  674. package/src/packages/uses/useFunctionWrapper.ts +31 -31
  675. package/src/packages/uses/useMultipleModel.tsx +65 -65
  676. package/src/packages/uses/useRenderReference.tsx +32 -32
  677. package/src/packages/uses/useStyle.tsx +82 -82
  678. package/src/packages/utils/ClientZoom.ts +50 -50
  679. package/src/packages/utils/ComponentUtils.ts +10 -10
  680. package/src/packages/utils/FixInput.ts +3 -3
  681. package/src/packages/utils/InnerTransition.ts +13 -13
  682. package/src/packages/utils/LoadingText.ts +11 -11
  683. package/src/packages/utils/OpenController.ts +15 -15
  684. package/src/packages/utils/buildCycleIndexList.ts +31 -31
  685. package/src/packages/utils/clearFields.ts +16 -16
  686. package/src/packages/utils/color.utils.ts +189 -189
  687. package/src/packages/utils/combineURL.ts +5 -5
  688. package/src/packages/utils/constant.tsx +5 -5
  689. package/src/packages/utils/createAnimate.ts +45 -45
  690. package/src/packages/utils/createCache.ts +32 -32
  691. package/src/packages/utils/createDraggier.ts +256 -256
  692. package/src/packages/utils/createEffectiveHandler.ts +8 -8
  693. package/src/packages/utils/createError.ts +16 -16
  694. package/src/packages/utils/createFlagManager.ts +34 -34
  695. package/src/packages/utils/createKeyHandler.ts +20 -20
  696. package/src/packages/utils/createListUtils.ts +38 -38
  697. package/src/packages/utils/customDeepClone.ts +15 -15
  698. package/src/packages/utils/deepCloneRenderNode.ts +41 -41
  699. package/src/packages/utils/deepIterateObject.ts +14 -14
  700. package/src/packages/utils/findReactElement.tsx +76 -76
  701. package/src/packages/utils/getDeviceInfo.ts +59 -59
  702. package/src/packages/utils/getElementRect.ts +32 -32
  703. package/src/packages/utils/getRowEl.ts +33 -33
  704. package/src/packages/utils/incrementalMerge.ts +8 -8
  705. package/src/packages/utils/inheritSlots.ts +30 -30
  706. package/src/packages/utils/installAllIcons.ts +19 -19
  707. package/src/packages/utils/installAllLazyIcons.ts +17 -17
  708. package/src/packages/utils/isObjectCommonMatch.ts +21 -21
  709. package/src/packages/utils/isSSR.tsx +3 -3
  710. package/src/packages/utils/onParentElementsScroll.tsx +26 -26
  711. package/src/packages/utils/plainDate.ts +203 -203
  712. package/src/packages/utils/renderInputModeTextRangeValue.tsx +25 -25
  713. package/src/packages/utils/renderNothing.tsx +1 -1
  714. package/src/packages/utils/type.ts +11 -11
  715. package/src/packages/utils/useMove.tsx +78 -78
  716. package/src/packages/utils/watchEffectAutoClear.ts +28 -28
@@ -1,302 +1,302 @@
1
- import {ComponentEvent, ExtractPropTypes, iMouseEvent, MultipleClass, PropType, StyleProperties} from "@peryl/react-compose";
2
- import {createEnum} from "@peryl/utils/createEnum";
3
- import {PlcPropsHead, tPlcScopeSlots, tPlcSlots} from "./plc.scope-slots";
4
- import {FormItemValidatePropsOption} from "../../../Form/validate/validate.utils";
5
- import {iTableCellRenderScope, iTableNode} from "../../table/utils/table.utils";
6
- import {deepcopy} from "@peryl/utils/deepcopy";
7
- import {PlainObject} from "@peryl/utils/event";
8
- import {omit} from "@peryl/utils/omit";
9
- import {createCounter} from "@peryl/utils/createCounter";
10
- import {iFilterOption} from "../../../FilterService/utils/filter.service.utils";
11
- import {AsyncFormatter} from "../../../AsyncFormatter";
12
- import {Formatter} from "../../../Formatter";
13
-
14
- /**
15
- * 列对其方式
16
- * @author 韦胜健
17
- * @date 2022.10.29 18:15
18
- */
19
- export const ePlcAlign = createEnum(['left', 'center', 'right'] as const);
20
-
21
- /**
22
- * 列冻结位置
23
- * @author 韦胜健
24
- * @date 2022.10.29 18:15
25
- */
26
- export const TablePlcFixedType = createEnum(['left', 'center', 'right'] as const);
27
-
28
- /**
29
- * 列分组属性配置
30
- * @author 韦胜健
31
- * @date 2022.10.29 18:16
32
- */
33
- export const PlcGroupPropsOptions = {
34
- title: { type: String }, // 列标题
35
- align: { type: String as PropType<typeof ePlcAlign.TYPE> }, // 非编辑状态下文本对其方式
36
- noPadding: { type: Boolean }, // 是否不兼容表格的虚拟滚动功能
37
- colDraggable: { type: Boolean, default: null }, // 列是否可以拖拽排序
38
- link: { type: Boolean }, // 超链接样式
39
- tip: { type: [String, Function] as PropType<string | (() => any)> }, // 提示说明
40
-
41
- hide: { type: Boolean }, // 是否隐藏
42
- order: { type: [String, Number] }, // 列排序
43
- fixed: { type: String as PropType<typeof TablePlcFixedType.TYPE>, default: TablePlcFixedType.center },// 冻结列位置:left、right、undefined
44
- autoFixedLeft: { type: Boolean }, // 当出现左固定列的时候,是否自动设置为左固定列
45
- autoFixedRight: { type: Boolean }, // 当出现右固定列的时候,是否自动设置为右固定列
46
-
47
- headCls: {}, // 给表头添加的class
48
- bodyCls: {}, // 给表体添加的class
49
- disableAutoEmitClickTitle: { type: Boolean }, // 禁用自动派发点击列标题的动作
50
- };
51
-
52
- export type iPlcGroupPropsType = Omit<ExtractPropTypes<typeof PlcGroupPropsOptions>, 'order'> & { order?: number | undefined }
53
-
54
- export const PlcValidatePropsOption = omit(FormItemValidatePropsOption, ['field', 'label']);
55
-
56
- /**
57
- * 列属性配置
58
- * @author 韦胜健
59
- * @date 2022.10.29 18:16
60
- */
61
- export const PlcPropsOptions = {
62
- ...PlcGroupPropsOptions,
63
- field: { type: String }, // 列绑定字段
64
- width: { type: [String, Number], default: 120 }, // 列宽度
65
- fit: { type: Boolean }, // 列宽自适应(只有一个列能够自适应)
66
- formatter: { type: [Function, String] as PropType<string | ((value: any, cellRenderScope: Omit<iTableCellRenderScope, 'node'>) => string | number | null | undefined)> }, // 值格式化函数
67
- asyncFormatter: { type: [Function, String] as PropType<string | ((value: any, cellRenderScope: Omit<iTableCellRenderScope, 'node'>) => Promise<string | number | null | undefined>)> }, // 异步格式化函数
68
- formatterOptions: { type: Object as PropType<PlainObject> }, // 格式化的时候的参数
69
- bindId: { type: String }, // 绑定的id,仅用于父子列的情况下有用,当出现父子列时,子列跟随父列的fixed,hidden以及order顺序
70
- parentBindId: { type: String }, // 当前列为子列,这里为父列的bindId
71
- excludeCode: { type: String }, // 配合PlcExclusion使用的标识
72
- hideInForm: { type: Boolean }, // 是否再表单编辑中显示
73
- formLabel: { type: String }, // 在表单编辑中的label文本
74
- overflowTooltip: { type: Boolean }, // 是否在内容文本溢出之后使用tooltip显示
75
- autoRowSpan: { type: Boolean }, // 字段值相同则自动合并行
76
- autoColSpan: { type: Boolean }, // 字段值相同则自动合并列
77
-
78
- // 编辑相关
79
- ...PlcValidatePropsOption, // 校验属性
80
- editable: { type: [Boolean, Function] as PropType<PlcPropsEditable>, default: true },// 是否可编辑
81
- addEditPadding: { type: Boolean }, // 处于编辑状态的时候,是否添加内编辑,只有当行状态为编辑状态,并且列有edit渲染函数或者作用域插槽时,才符合“处于编辑状态”的条件
82
- editColSpan: { type: [Number, Function] as PropType<number | ((node: iTableNode) => number)> }, // 编辑时colspan
83
-
84
- /*---------------------------------------筛选-------------------------------------------*/
85
- // 基础
86
- noFilter: { type: Boolean }, // 该字段不参与搜索
87
- noSort: { type: Boolean }, // 该字段不参与排序
88
- searchField: { type: String }, // 搜索的字段,没有则沿用field
89
- filterType: { type: String, default: 'text' }, // 筛选类型
90
- filterHandler: { type: String, default: 'like' }, // 筛选的子类型
91
- filterConfig: { type: Object as PropType<PlainObject> }, // 筛选配置
92
- // 搜索栏
93
- defaultSearch: { type: Boolean }, // 设置为搜索栏的默认搜索字段
94
- defaultSearchValue: {}, // 默认的搜索值
95
- createSearchFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 search filter option
96
- // 搜索表单
97
- createFormFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 form filter option
98
- // 列搜索
99
- createColumnFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
100
- // 列去重查询
101
- createDistinctFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
102
- // 高级查询
103
- createSeniorFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
104
- };
105
-
106
- export type PlcPropsEditable = boolean | ((node: iTableNode) => boolean)
107
- export type iPlcPropsSourceType = ExtractPropTypes<typeof PlcPropsOptions>
108
- export type iPlcPropsType = Omit<iPlcPropsSourceType, 'width' | 'order'> & { width: number, order?: number | undefined }
109
-
110
- type _iPlcPropsProxyConfig<T, K extends keyof T = keyof T> = { [k in K]: () => T[k] }
111
- export type iPlcPropsProxyConfig = Partial<_iPlcPropsProxyConfig<iPlcPropsSourceType>>
112
-
113
- /**
114
- * 列派发事件配置
115
- * @author 韦胜健
116
- * @date 2022.10.29 18:18
117
- */
118
- export const PlcEmitsOptions = {
119
- onClick: (data: { e: iMouseEvent, scope: iTableCellRenderScope }) => true,
120
- } as const;
121
-
122
- export type iPlcEventType = ComponentEvent<typeof PlcEmitsOptions>
123
-
124
- /**
125
- * Plc与PlcGroup公共属性
126
- * @author 韦胜健
127
- * @date 2022.10.29 18:57
128
- */
129
- export type tPlcPublicAttrsType = {
130
- level: number, // 分组表头层级
131
- rowspan: number, // 表头td的rowspan
132
- colspan: number, // 表头td的colspan
133
- isLastFixedLeft: boolean, // 是否为最后一个左固定列
134
- isFirstFixedRight: boolean, // 是否为第一个右固定列
135
- fixedPosition: { // 固定列的sticky位置
136
- left: number, // 固定时距离左侧距离
137
- right: number, // 固定时距离右侧距离
138
- },
139
- // 列style公共内联样式
140
- styles: {
141
- head: StyleProperties,
142
- body: StyleProperties,
143
- },
144
- // 列公共class样式
145
- classes: {
146
- head: MultipleClass,
147
- body: MultipleClass,
148
- },
149
- isExclude: () => boolean,
150
- }
151
-
152
- /**
153
- * Plc以及PlcGroup公共的一些属性
154
- * @author 韦胜健
155
- * @date 2020/12/18 14:41
156
- */
157
- export const PlcPublicAttrs: tPlcPublicAttrsType = {
158
- level: 0, // 分组表头当前的层级
159
- rowspan: 1, // 渲染表头时,当前占用的行数
160
- colspan: 1, // 渲染表头时,当前占用的列数
161
- isLastFixedLeft: false, // 是否为最后一个左固定列
162
- isFirstFixedRight: false, // 是否为第一个右固定列
163
- fixedPosition: { // 固定列时的距离
164
- left: 0, // 左固定时距离左侧距离
165
- right: 0, // 右固定时距离右侧距离
166
- },
167
- // 列style公共内联样式
168
- styles: {
169
- head: {},
170
- body: {},
171
- },
172
- // 列公共class样式
173
- classes: {
174
- head: [],
175
- body: [],
176
- },
177
- isExclude: () => false,
178
- };
179
-
180
- /**
181
- * 收集得到的plc group引用类型
182
- * @author 韦胜健
183
- * @date 2022.10.29 18:59
184
- */
185
- export type tPlcGroup = tPlcPublicAttrsType & {
186
- plcKey: string, // 列标识
187
- group: true, // 标记当前tPlcType为分组
188
- children: tPlcType[], // 子列信息
189
- props: iPlcGroupPropsType, // plc group属性
190
- refer: () => tPlcGroup, // 自身引用
191
- slots: { head: PlcPropsHead & { isExist: () => boolean } }, // 插槽类型
192
- setDurWidth: (width: number) => void, // 设置宽度
193
- setPropsState: (data: Partial<iPlcGroupPropsType>) => void, // 设置props内部状态
194
- getState: () => iPlcPropsType, // 获取状态
195
- getWidth: () => number, // 获取宽度
196
- }
197
-
198
- /**
199
- * 手机得到的plc引用类型
200
- * @author 韦胜健
201
- * @date 2022.10.29 19:05
202
- */
203
- export type tPlc = tPlcPublicAttrsType & {
204
- plcKey: string, // 列标识
205
- group: false, // 标记当前tPlcType不为分组,为列信息
206
- props: iPlcPropsType, // plc 列属性(非原始,可能是修改过的)
207
- sourceProps: ExtractPropTypes<typeof PlcPropsOptions> & PlainObject, // 原始的列属性
208
- slots: tPlcSlots, // 插槽类型
209
- scopeSlots: tPlcScopeSlots, // 作用域插槽类型
210
- event: iPlcEventType, // 列事件
211
- refer: () => tPlc, // 自身引用
212
- setDurWidth: (width: number) => void, // 设置宽度
213
- setPropsState: (data: Partial<iPlcPropsType>) => void, // 设置内部props状态
214
- getState: () => iPlcPropsType, // 获取状态
215
- isRequired: (data: PlainObject) => boolean, // 字段是否为必填
216
- getWidth: () => number, // 获取宽度
217
- }
218
-
219
- export type tPlcType = tPlcGroup | tPlc
220
-
221
- /**
222
- * 创建默认的plc属性
223
- * @author 韦胜健
224
- * @date 2022/11/7 18:42
225
- */
226
- export function createPlcPropOptions(defaultProps: Partial<ExtractPropTypes<typeof PlcPropsOptions>>) {
227
- const options = deepcopy(PlcPropsOptions);
228
- Object.entries(defaultProps).forEach(([propName, defaultValue]) => {
229
- (options as any)[propName].default = defaultValue;
230
- });
231
- return options;
232
- }
233
-
234
- /**
235
- * 获取一个新的plc bindId
236
- * @author 韦胜健
237
- * @date 2022.12.4 21:57
238
- */
239
- export const nextPlcBindId = createCounter('plc_bind');
240
-
241
- /**
242
- * 获取一个新的plc key
243
- * @author 韦胜健
244
- * @date 2023/1/19 15:55
245
- */
246
- export const nextPlcKey = createCounter('plc_key');
247
-
248
- /**
249
- * 获取plc对应的显示文本值
250
- * @author 韦胜健
251
- * @date 2023.1.14 23:24
252
- */
253
- export async function getPlcDisplayValue({ plc, formData }: { plc: tPlc, formData: PlainObject }) {
254
- const { formatter, asyncFormatter, formatterOptions, field } = plc.props;
255
- if (!field) {return;}
256
- const value = formData[field];
257
-
258
- if (!!asyncFormatter) {
259
- const asyncFormatterFunc = typeof asyncFormatter === "function" ? asyncFormatter : AsyncFormatter[asyncFormatter];
260
- if (!asyncFormatterFunc) {
261
- console.error(`无法识别格式化函数名称:${asyncFormatter}`);
262
- return;
263
- }
264
- return asyncFormatterFunc(value, { ...formatterOptions, plc, row: formData });
265
- } else if (!!formatter) {
266
- const formatterFunc = typeof formatter === "function" ? formatter : Formatter[formatter];
267
- if (!formatterFunc) {
268
- console.error(`无法识别格式化函数名称:${formatterFunc}`);
269
- return;
270
- }
271
- return formatterFunc(value, { ...formatterOptions, plc, row: formData });
272
- } else {
273
- return formData[field];
274
- }
275
- }
276
-
277
- /**
278
- * 获取比较纯净的plc属性
279
- * @author 韦胜健
280
- * @date 2023.1.16 22:52
281
- */
282
- export function getPurePlcProps(props: any) {
283
- return !props ? {} : Object.entries(props).reduce((prev, [key, val]) => {
284
- if (key === 'link' || key.indexOf('on') === 0) {return prev;}
285
- prev[key] = val;
286
- return prev;
287
- }, {} as PlainObject);
288
- }
289
-
290
- export function createProxyProps(props: iPlcPropsSourceType, proxyConfig: iPlcPropsProxyConfig | null | undefined) {
291
- if (!proxyConfig) {
292
- return props;
293
- }
294
- return new Proxy(props, {
295
- get(target: any, key) {
296
- if (!!(proxyConfig as any)[key] && target[key] == null) {
297
- return (proxyConfig as any)[key]();
298
- }
299
- return target[key];
300
- },
301
- });
302
- }
1
+ import {ComponentEvent, ExtractPropTypes, iMouseEvent, MultipleClass, PropType, StyleProperties} from "@peryl/react-compose";
2
+ import {createEnum} from "@peryl/utils/createEnum";
3
+ import {PlcPropsHead, tPlcScopeSlots, tPlcSlots} from "./plc.scope-slots";
4
+ import {FormItemValidatePropsOption} from "../../../Form/validate/validate.utils";
5
+ import {iTableCellRenderScope, iTableNode} from "../../table/utils/table.utils";
6
+ import {deepcopy} from "@peryl/utils/deepcopy";
7
+ import {PlainObject} from "@peryl/utils/event";
8
+ import {omit} from "@peryl/utils/omit";
9
+ import {createCounter} from "@peryl/utils/createCounter";
10
+ import {iFilterOption} from "../../../FilterService/utils/filter.service.utils";
11
+ import {AsyncFormatter} from "../../../AsyncFormatter";
12
+ import {Formatter} from "../../../Formatter";
13
+
14
+ /**
15
+ * 列对其方式
16
+ * @author 韦胜健
17
+ * @date 2022.10.29 18:15
18
+ */
19
+ export const ePlcAlign = createEnum(['left', 'center', 'right'] as const);
20
+
21
+ /**
22
+ * 列冻结位置
23
+ * @author 韦胜健
24
+ * @date 2022.10.29 18:15
25
+ */
26
+ export const TablePlcFixedType = createEnum(['left', 'center', 'right'] as const);
27
+
28
+ /**
29
+ * 列分组属性配置
30
+ * @author 韦胜健
31
+ * @date 2022.10.29 18:16
32
+ */
33
+ export const PlcGroupPropsOptions = {
34
+ title: { type: String }, // 列标题
35
+ align: { type: String as PropType<typeof ePlcAlign.TYPE> }, // 非编辑状态下文本对其方式
36
+ noPadding: { type: Boolean }, // 是否不兼容表格的虚拟滚动功能
37
+ colDraggable: { type: Boolean, default: null }, // 列是否可以拖拽排序
38
+ link: { type: Boolean }, // 超链接样式
39
+ tip: { type: [String, Function] as PropType<string | (() => any)> }, // 提示说明
40
+
41
+ hide: { type: Boolean }, // 是否隐藏
42
+ order: { type: [String, Number] }, // 列排序
43
+ fixed: { type: String as PropType<typeof TablePlcFixedType.TYPE>, default: TablePlcFixedType.center },// 冻结列位置:left、right、undefined
44
+ autoFixedLeft: { type: Boolean }, // 当出现左固定列的时候,是否自动设置为左固定列
45
+ autoFixedRight: { type: Boolean }, // 当出现右固定列的时候,是否自动设置为右固定列
46
+
47
+ headCls: {}, // 给表头添加的class
48
+ bodyCls: {}, // 给表体添加的class
49
+ disableAutoEmitClickTitle: { type: Boolean }, // 禁用自动派发点击列标题的动作
50
+ };
51
+
52
+ export type iPlcGroupPropsType = Omit<ExtractPropTypes<typeof PlcGroupPropsOptions>, 'order'> & { order?: number | undefined }
53
+
54
+ export const PlcValidatePropsOption = omit(FormItemValidatePropsOption, ['field', 'label']);
55
+
56
+ /**
57
+ * 列属性配置
58
+ * @author 韦胜健
59
+ * @date 2022.10.29 18:16
60
+ */
61
+ export const PlcPropsOptions = {
62
+ ...PlcGroupPropsOptions,
63
+ field: { type: String }, // 列绑定字段
64
+ width: { type: [String, Number], default: 120 }, // 列宽度
65
+ fit: { type: Boolean }, // 列宽自适应(只有一个列能够自适应)
66
+ formatter: { type: [Function, String] as PropType<string | ((value: any, cellRenderScope: Omit<iTableCellRenderScope, 'node'>) => string | number | null | undefined)> }, // 值格式化函数
67
+ asyncFormatter: { type: [Function, String] as PropType<string | ((value: any, cellRenderScope: Omit<iTableCellRenderScope, 'node'>) => Promise<string | number | null | undefined>)> }, // 异步格式化函数
68
+ formatterOptions: { type: Object as PropType<PlainObject> }, // 格式化的时候的参数
69
+ bindId: { type: String }, // 绑定的id,仅用于父子列的情况下有用,当出现父子列时,子列跟随父列的fixed,hidden以及order顺序
70
+ parentBindId: { type: String }, // 当前列为子列,这里为父列的bindId
71
+ excludeCode: { type: String }, // 配合PlcExclusion使用的标识
72
+ hideInForm: { type: Boolean }, // 是否再表单编辑中显示
73
+ formLabel: { type: String }, // 在表单编辑中的label文本
74
+ overflowTooltip: { type: Boolean }, // 是否在内容文本溢出之后使用tooltip显示
75
+ autoRowSpan: { type: Boolean }, // 字段值相同则自动合并行
76
+ autoColSpan: { type: Boolean }, // 字段值相同则自动合并列
77
+
78
+ // 编辑相关
79
+ ...PlcValidatePropsOption, // 校验属性
80
+ editable: { type: [Boolean, Function] as PropType<PlcPropsEditable>, default: true },// 是否可编辑
81
+ addEditPadding: { type: Boolean }, // 处于编辑状态的时候,是否添加内编辑,只有当行状态为编辑状态,并且列有edit渲染函数或者作用域插槽时,才符合“处于编辑状态”的条件
82
+ editColSpan: { type: [Number, Function] as PropType<number | ((node: iTableNode) => number)> }, // 编辑时colspan
83
+
84
+ /*---------------------------------------筛选-------------------------------------------*/
85
+ // 基础
86
+ noFilter: { type: Boolean }, // 该字段不参与搜索
87
+ noSort: { type: Boolean }, // 该字段不参与排序
88
+ searchField: { type: String }, // 搜索的字段,没有则沿用field
89
+ filterType: { type: String, default: 'text' }, // 筛选类型
90
+ filterHandler: { type: String, default: 'like' }, // 筛选的子类型
91
+ filterConfig: { type: Object as PropType<PlainObject> }, // 筛选配置
92
+ // 搜索栏
93
+ defaultSearch: { type: Boolean }, // 设置为搜索栏的默认搜索字段
94
+ defaultSearchValue: {}, // 默认的搜索值
95
+ createSearchFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 search filter option
96
+ // 搜索表单
97
+ createFormFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 form filter option
98
+ // 列搜索
99
+ createColumnFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
100
+ // 列去重查询
101
+ createDistinctFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
102
+ // 高级查询
103
+ createSeniorFilterOption: { type: Function as PropType<() => Partial<iFilterOption>> }, // 自定义创建 column filter option
104
+ };
105
+
106
+ export type PlcPropsEditable = boolean | ((node: iTableNode) => boolean)
107
+ export type iPlcPropsSourceType = ExtractPropTypes<typeof PlcPropsOptions>
108
+ export type iPlcPropsType = Omit<iPlcPropsSourceType, 'width' | 'order'> & { width: number, order?: number | undefined }
109
+
110
+ type _iPlcPropsProxyConfig<T, K extends keyof T = keyof T> = { [k in K]: () => T[k] }
111
+ export type iPlcPropsProxyConfig = Partial<_iPlcPropsProxyConfig<iPlcPropsSourceType>>
112
+
113
+ /**
114
+ * 列派发事件配置
115
+ * @author 韦胜健
116
+ * @date 2022.10.29 18:18
117
+ */
118
+ export const PlcEmitsOptions = {
119
+ onClick: (data: { e: iMouseEvent, scope: iTableCellRenderScope }) => true,
120
+ } as const;
121
+
122
+ export type iPlcEventType = ComponentEvent<typeof PlcEmitsOptions>
123
+
124
+ /**
125
+ * Plc与PlcGroup公共属性
126
+ * @author 韦胜健
127
+ * @date 2022.10.29 18:57
128
+ */
129
+ export type tPlcPublicAttrsType = {
130
+ level: number, // 分组表头层级
131
+ rowspan: number, // 表头td的rowspan
132
+ colspan: number, // 表头td的colspan
133
+ isLastFixedLeft: boolean, // 是否为最后一个左固定列
134
+ isFirstFixedRight: boolean, // 是否为第一个右固定列
135
+ fixedPosition: { // 固定列的sticky位置
136
+ left: number, // 固定时距离左侧距离
137
+ right: number, // 固定时距离右侧距离
138
+ },
139
+ // 列style公共内联样式
140
+ styles: {
141
+ head: StyleProperties,
142
+ body: StyleProperties,
143
+ },
144
+ // 列公共class样式
145
+ classes: {
146
+ head: MultipleClass,
147
+ body: MultipleClass,
148
+ },
149
+ isExclude: () => boolean,
150
+ }
151
+
152
+ /**
153
+ * Plc以及PlcGroup公共的一些属性
154
+ * @author 韦胜健
155
+ * @date 2020/12/18 14:41
156
+ */
157
+ export const PlcPublicAttrs: tPlcPublicAttrsType = {
158
+ level: 0, // 分组表头当前的层级
159
+ rowspan: 1, // 渲染表头时,当前占用的行数
160
+ colspan: 1, // 渲染表头时,当前占用的列数
161
+ isLastFixedLeft: false, // 是否为最后一个左固定列
162
+ isFirstFixedRight: false, // 是否为第一个右固定列
163
+ fixedPosition: { // 固定列时的距离
164
+ left: 0, // 左固定时距离左侧距离
165
+ right: 0, // 右固定时距离右侧距离
166
+ },
167
+ // 列style公共内联样式
168
+ styles: {
169
+ head: {},
170
+ body: {},
171
+ },
172
+ // 列公共class样式
173
+ classes: {
174
+ head: [],
175
+ body: [],
176
+ },
177
+ isExclude: () => false,
178
+ };
179
+
180
+ /**
181
+ * 收集得到的plc group引用类型
182
+ * @author 韦胜健
183
+ * @date 2022.10.29 18:59
184
+ */
185
+ export type tPlcGroup = tPlcPublicAttrsType & {
186
+ plcKey: string, // 列标识
187
+ group: true, // 标记当前tPlcType为分组
188
+ children: tPlcType[], // 子列信息
189
+ props: iPlcGroupPropsType, // plc group属性
190
+ refer: () => tPlcGroup, // 自身引用
191
+ slots: { head: PlcPropsHead & { isExist: () => boolean } }, // 插槽类型
192
+ setDurWidth: (width: number) => void, // 设置宽度
193
+ setPropsState: (data: Partial<iPlcGroupPropsType>) => void, // 设置props内部状态
194
+ getState: () => iPlcPropsType, // 获取状态
195
+ getWidth: () => number, // 获取宽度
196
+ }
197
+
198
+ /**
199
+ * 手机得到的plc引用类型
200
+ * @author 韦胜健
201
+ * @date 2022.10.29 19:05
202
+ */
203
+ export type tPlc = tPlcPublicAttrsType & {
204
+ plcKey: string, // 列标识
205
+ group: false, // 标记当前tPlcType不为分组,为列信息
206
+ props: iPlcPropsType, // plc 列属性(非原始,可能是修改过的)
207
+ sourceProps: ExtractPropTypes<typeof PlcPropsOptions> & PlainObject, // 原始的列属性
208
+ slots: tPlcSlots, // 插槽类型
209
+ scopeSlots: tPlcScopeSlots, // 作用域插槽类型
210
+ event: iPlcEventType, // 列事件
211
+ refer: () => tPlc, // 自身引用
212
+ setDurWidth: (width: number) => void, // 设置宽度
213
+ setPropsState: (data: Partial<iPlcPropsType>) => void, // 设置内部props状态
214
+ getState: () => iPlcPropsType, // 获取状态
215
+ isRequired: (data: PlainObject) => boolean, // 字段是否为必填
216
+ getWidth: () => number, // 获取宽度
217
+ }
218
+
219
+ export type tPlcType = tPlcGroup | tPlc
220
+
221
+ /**
222
+ * 创建默认的plc属性
223
+ * @author 韦胜健
224
+ * @date 2022/11/7 18:42
225
+ */
226
+ export function createPlcPropOptions(defaultProps: Partial<ExtractPropTypes<typeof PlcPropsOptions>>) {
227
+ const options = deepcopy(PlcPropsOptions);
228
+ Object.entries(defaultProps).forEach(([propName, defaultValue]) => {
229
+ (options as any)[propName].default = defaultValue;
230
+ });
231
+ return options;
232
+ }
233
+
234
+ /**
235
+ * 获取一个新的plc bindId
236
+ * @author 韦胜健
237
+ * @date 2022.12.4 21:57
238
+ */
239
+ export const nextPlcBindId = createCounter('plc_bind');
240
+
241
+ /**
242
+ * 获取一个新的plc key
243
+ * @author 韦胜健
244
+ * @date 2023/1/19 15:55
245
+ */
246
+ export const nextPlcKey = createCounter('plc_key');
247
+
248
+ /**
249
+ * 获取plc对应的显示文本值
250
+ * @author 韦胜健
251
+ * @date 2023.1.14 23:24
252
+ */
253
+ export async function getPlcDisplayValue({ plc, formData }: { plc: tPlc, formData: PlainObject }) {
254
+ const { formatter, asyncFormatter, formatterOptions, field } = plc.props;
255
+ if (!field) {return;}
256
+ const value = formData[field];
257
+
258
+ if (!!asyncFormatter) {
259
+ const asyncFormatterFunc = typeof asyncFormatter === "function" ? asyncFormatter : AsyncFormatter[asyncFormatter];
260
+ if (!asyncFormatterFunc) {
261
+ console.error(`无法识别格式化函数名称:${asyncFormatter}`);
262
+ return;
263
+ }
264
+ return asyncFormatterFunc(value, { ...formatterOptions, plc, row: formData });
265
+ } else if (!!formatter) {
266
+ const formatterFunc = typeof formatter === "function" ? formatter : Formatter[formatter];
267
+ if (!formatterFunc) {
268
+ console.error(`无法识别格式化函数名称:${formatterFunc}`);
269
+ return;
270
+ }
271
+ return formatterFunc(value, { ...formatterOptions, plc, row: formData });
272
+ } else {
273
+ return formData[field];
274
+ }
275
+ }
276
+
277
+ /**
278
+ * 获取比较纯净的plc属性
279
+ * @author 韦胜健
280
+ * @date 2023.1.16 22:52
281
+ */
282
+ export function getPurePlcProps(props: any) {
283
+ return !props ? {} : Object.entries(props).reduce((prev, [key, val]) => {
284
+ if (key === 'link' || key.indexOf('on') === 0) {return prev;}
285
+ prev[key] = val;
286
+ return prev;
287
+ }, {} as PlainObject);
288
+ }
289
+
290
+ export function createProxyProps(props: iPlcPropsSourceType, proxyConfig: iPlcPropsProxyConfig | null | undefined) {
291
+ if (!proxyConfig) {
292
+ return props;
293
+ }
294
+ return new Proxy(props, {
295
+ get(target: any, key) {
296
+ if (!!(proxyConfig as any)[key] && target[key] == null) {
297
+ return (proxyConfig as any)[key]();
298
+ }
299
+ return target[key];
300
+ },
301
+ });
302
+ }
@@ -1,16 +1,16 @@
1
- import {createHooks, createSyncHooks, RenderNode} from "@peryl/react-compose";
2
- import {iTableCellRenderScope, iTableRowRenderScope} from "../../table/utils/table.utils";
3
-
4
- export function createPlcCheckHooks() {
5
- return {
6
- onRenderNormal: createSyncHooks<(data: { scope: iTableCellRenderScope, content: RenderNode }) => void>(true),
7
- onRenderHead: createSyncHooks<(renderNode: RenderNode) => void>(true),
8
- onClickRow: createHooks<(data: { rowRenderScope: iTableRowRenderScope }) => void>(),
9
-
10
- onTriggerCheckAll: createHooks(),
11
- onTriggerUncheckAll: createHooks(),
12
- onGetSelected: createSyncHooks<(data: any) => void>(),
13
- };
14
- }
15
-
16
- export type iPlcCheckHooks = ReturnType<typeof createPlcCheckHooks>
1
+ import {createHooks, createSyncHooks, RenderNode} from "@peryl/react-compose";
2
+ import {iTableCellRenderScope, iTableRowRenderScope} from "../../table/utils/table.utils";
3
+
4
+ export function createPlcCheckHooks() {
5
+ return {
6
+ onRenderNormal: createSyncHooks<(data: { scope: iTableCellRenderScope, content: RenderNode }) => void>(true),
7
+ onRenderHead: createSyncHooks<(renderNode: RenderNode) => void>(true),
8
+ onClickRow: createHooks<(data: { rowRenderScope: iTableRowRenderScope }) => void>(),
9
+
10
+ onTriggerCheckAll: createHooks(),
11
+ onTriggerUncheckAll: createHooks(),
12
+ onGetSelected: createSyncHooks<(data: any) => void>(),
13
+ };
14
+ }
15
+
16
+ export type iPlcCheckHooks = ReturnType<typeof createPlcCheckHooks>