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

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 (714) 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 -0
  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/$configuration/index.tsx +60 -60
  13. package/src/packages/components/$dialog/index.tsx +7 -7
  14. package/src/packages/components/$file/index.tsx +255 -255
  15. package/src/packages/components/$image/index.tsx +7 -7
  16. package/src/packages/components/$loading/index.tsx +3 -3
  17. package/src/packages/components/$message/image.service.utils.tsx +161 -161
  18. package/src/packages/components/$message/index.tsx +7 -7
  19. package/src/packages/components/$notice/index.tsx +7 -7
  20. package/src/packages/components/$object/createObjectService.tsx +217 -217
  21. package/src/packages/components/$object/index.ts +5 -5
  22. package/src/packages/components/$object/object.conver.ts +56 -56
  23. package/src/packages/components/$object/object.service.utils.ts +56 -56
  24. package/src/packages/components/$ov/createOvService.ts +86 -86
  25. package/src/packages/components/$ov/index.tsx +5 -5
  26. package/src/packages/components/$ov/ov.utils.ts +11 -11
  27. package/src/packages/components/$previewer/ImagePreviewerFixedContainer.tsx +108 -108
  28. package/src/packages/components/$previewer/image-previewer-fixed-container.scss +18 -18
  29. package/src/packages/components/$previewer/index.tsx +52 -52
  30. package/src/packages/components/$search/SearchFooter.tsx +32 -32
  31. package/src/packages/components/$search/SearchList.tsx +207 -207
  32. package/src/packages/components/$search/SearchServicePanel.tsx +233 -233
  33. package/src/packages/components/$search/createSearchService.tsx +43 -43
  34. package/src/packages/components/$search/index.tsx +6 -6
  35. package/src/packages/components/$search/search-service.scss +221 -221
  36. package/src/packages/components/$search/search.utils.tsx +112 -112
  37. package/src/packages/components/$upload/createUploadService.tsx +57 -57
  38. package/src/packages/components/$upload/upload.utils.ts +18 -18
  39. package/src/packages/components/Address/index.tsx +138 -138
  40. package/src/packages/components/AddressCascade/address-cascade.utils.ts +44 -44
  41. package/src/packages/components/AddressCascade/createAddressCascade.hooks.ts +9 -9
  42. package/src/packages/components/AddressCascade/createAddressCascade.multiple.tsx +53 -53
  43. package/src/packages/components/AddressCascade/createAddressCascade.single.tsx +75 -75
  44. package/src/packages/components/AddressCascade/index.tsx +59 -59
  45. package/src/packages/components/AiChatBox/ai-chat-box.scss +74 -74
  46. package/src/packages/components/AiChatBox/index.tsx +154 -154
  47. package/src/packages/components/Alert/alert.scss +139 -139
  48. package/src/packages/components/Alert/index.tsx +93 -93
  49. package/src/packages/components/Application/application.scss +16 -16
  50. package/src/packages/components/Application/index.tsx +56 -56
  51. package/src/packages/components/Application/service/createApplicationService.tsx +47 -47
  52. package/src/packages/components/Application/service/createApplicationServiceComponent.tsx +41 -41
  53. package/src/packages/components/Application/service/createApplicationServiceManager.tsx +101 -101
  54. package/src/packages/components/Application/service/useApplicationService.tsx +126 -126
  55. package/src/packages/components/Application/theme/theme.ts +282 -282
  56. package/src/packages/components/Application/theme/theme.utils.ts +17 -17
  57. package/src/packages/components/Application/utils/application.utils.ts +21 -21
  58. package/src/packages/components/Application/utils/createServiceReadyObserver.ts +18 -18
  59. package/src/packages/components/ApplicationConfigurationProvider/index.tsx +5 -5
  60. package/src/packages/components/ArrowStep/index.tsx +73 -73
  61. package/src/packages/components/ArrowStepGroup/arrow-step.scss +119 -119
  62. package/src/packages/components/ArrowStepGroup/index.tsx +63 -63
  63. package/src/packages/components/AsyncFormatter/index.tsx +1 -1
  64. package/src/packages/components/AutoLoadingObserver/index.tsx +173 -173
  65. package/src/packages/components/AutoTable/AutoTable.tsx +56 -56
  66. package/src/packages/components/AutoTable/auto-table.scss +463 -463
  67. package/src/packages/components/AutoTable/createTableOptionUser.tsx +77 -77
  68. package/src/packages/components/AutoTable/filter/useTableOption.filter.form.tsx +217 -217
  69. package/src/packages/components/AutoTable/filter/useTableOption.filter.search.tsx +168 -168
  70. package/src/packages/components/AutoTable/filter/useTableOption.filter.state.ts +196 -196
  71. package/src/packages/components/AutoTable/index.tsx +4 -4
  72. package/src/packages/components/AutoTable/setting/useTableOption.setting.all.fitler.tsx +79 -79
  73. package/src/packages/components/AutoTable/setting/useTableOption.setting.cache.tsx +145 -145
  74. package/src/packages/components/AutoTable/setting/useTableOption.setting.config.tsx +260 -260
  75. package/src/packages/components/AutoTable/setting/useTableOption.setting.export.tsx +283 -283
  76. package/src/packages/components/AutoTable/setting/useTableOption.setting.import.tsx +100 -100
  77. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.filter.tsx +385 -385
  78. package/src/packages/components/AutoTable/setting/useTableOption.setting.senior.sort.tsx +123 -123
  79. package/src/packages/components/AutoTable/setting/useTableOption.setting.tsx +109 -109
  80. package/src/packages/components/AutoTable/setting/useTableOption.setting.utils.ts +40 -40
  81. package/src/packages/components/AutoTable/use/useTableOption.buttons.tsx +249 -249
  82. package/src/packages/components/AutoTable/use/useTableOption.cache.ts +235 -235
  83. package/src/packages/components/AutoTable/use/useTableOption.cache.utils.ts +83 -83
  84. package/src/packages/components/AutoTable/use/useTableOption.check.tsx +80 -80
  85. package/src/packages/components/AutoTable/use/useTableOption.column.popper.tsx +491 -491
  86. package/src/packages/components/AutoTable/use/useTableOption.confirm.tsx +122 -122
  87. package/src/packages/components/AutoTable/use/useTableOption.fill.tsx +153 -153
  88. package/src/packages/components/AutoTable/use/useTableOption.hooks.tsx +142 -142
  89. package/src/packages/components/AutoTable/use/useTableOption.loading.tsx +77 -77
  90. package/src/packages/components/AutoTable/use/useTableOption.methods.tsx +515 -515
  91. package/src/packages/components/AutoTable/use/useTableOption.pagination.tsx +191 -191
  92. package/src/packages/components/AutoTable/use/useTableOption.parent.tsx +134 -134
  93. package/src/packages/components/AutoTable/use/useTableOption.permission.tsx +16 -16
  94. package/src/packages/components/AutoTable/use/useTableOption.render.tsx +34 -34
  95. package/src/packages/components/AutoTable/use/useTableOption.sort.ts +198 -198
  96. package/src/packages/components/AutoTable/use/useTableOption.state.tsx +31 -31
  97. package/src/packages/components/AutoTable/use/useTableOption.table.tsx +87 -87
  98. package/src/packages/components/AutoTable/use/useTableOption.tips.tsx +87 -87
  99. package/src/packages/components/AutoTable/use/useTableOptionKeyboard.tsx +111 -111
  100. package/src/packages/components/AutoTable/utils/AutoModule.ts +10 -10
  101. package/src/packages/components/AutoTable/utils/AutoTable.utils.ts +120 -120
  102. package/src/packages/components/AutoTable/utils/TableOption.space.tsx +203 -203
  103. package/src/packages/components/AutoTable/utils/TableOption.url.ts +153 -153
  104. package/src/packages/components/AutoTable/utils/TableOption.utils.tsx +57 -57
  105. package/src/packages/components/AutoTable/utils/buildPlainDefaultUrlConfig.ts +134 -134
  106. package/src/packages/components/AutoWidthInput/auto-width-input.scss +25 -25
  107. package/src/packages/components/AutoWidthInput/index.tsx +67 -67
  108. package/src/packages/components/Badge/badge.scss +71 -71
  109. package/src/packages/components/Badge/index.tsx +52 -52
  110. package/src/packages/components/Box/box.scss +6 -6
  111. package/src/packages/components/Box/index.tsx +2 -1
  112. package/src/packages/components/Button/button.scss +203 -203
  113. package/src/packages/components/Button/index.tsx +213 -213
  114. package/src/packages/components/ButtonGroup/button-group.scss +73 -73
  115. package/src/packages/components/ButtonGroup/index.tsx +43 -43
  116. package/src/packages/components/Card/card.scss +122 -122
  117. package/src/packages/components/Card/index.tsx +74 -74
  118. package/src/packages/components/Carousel/carousel.scss +391 -391
  119. package/src/packages/components/Carousel/index.tsx +591 -591
  120. package/src/packages/components/CarouselItem/index.tsx +77 -77
  121. package/src/packages/components/Cascade/CascadeKeys.tsx +158 -158
  122. package/src/packages/components/Cascade/cascade.scss +111 -111
  123. package/src/packages/components/Cascade/cascade.utils.ts +68 -68
  124. package/src/packages/components/Cascade/createCascadeHooks.ts +12 -12
  125. package/src/packages/components/Cascade/createCascadePopper.tsx +120 -120
  126. package/src/packages/components/Cascade/createCascadeUtils.ts +15 -15
  127. package/src/packages/components/Cascade/createMultipleCascadeRender.tsx +156 -156
  128. package/src/packages/components/Cascade/createSingleCascadeRender.tsx +175 -175
  129. package/src/packages/components/Cascade/index.tsx +106 -106
  130. package/src/packages/components/CascadeKeys/index.tsx +5 -5
  131. package/src/packages/components/CascadePanel/cascade-panel.utils.ts +90 -90
  132. package/src/packages/components/CascadePanel/flat/CascadeFlatPanelNode.tsx +56 -56
  133. package/src/packages/components/CascadePanel/flat/cascade-flat-panel.scss +133 -133
  134. package/src/packages/components/CascadePanel/flat/createCascadeFlatRender.tsx +87 -87
  135. package/src/packages/components/CascadePanel/index.tsx +208 -208
  136. package/src/packages/components/CascadePanel/list/CascadeListPanelItem.tsx +93 -93
  137. package/src/packages/components/CascadePanel/list/CascadeListPanelNode.tsx +69 -69
  138. package/src/packages/components/CascadePanel/list/createCascadeListRender.tsx +31 -31
  139. package/src/packages/components/Checkbox/checkbox.scss +77 -77
  140. package/src/packages/components/Checkbox/index.tsx +141 -141
  141. package/src/packages/components/CheckboxGroup/index.tsx +205 -205
  142. package/src/packages/components/CheckboxInner/checkbox-inner.scss +55 -55
  143. package/src/packages/components/CheckboxInner/index.tsx +34 -34
  144. package/src/packages/components/ClientZoom/index.ts +5 -5
  145. package/src/packages/components/Collapse/collapse.scss +44 -44
  146. package/src/packages/components/Collapse/index.tsx +94 -94
  147. package/src/packages/components/CollapseGroup/index.tsx +70 -70
  148. package/src/packages/components/CollapseTransition/index.tsx +184 -184
  149. package/src/packages/components/ColorPicker/color-picker.scss +64 -64
  150. package/src/packages/components/ColorPicker/sub/ColorAlphaSlider.tsx +43 -43
  151. package/src/packages/components/ColorPicker/sub/ColorHueSlider.tsx +17 -17
  152. package/src/packages/components/ColorPicker/sub/ColorSlider.tsx +163 -163
  153. package/src/packages/components/ColorPicker/sub/ColorSvPanel.tsx +125 -125
  154. package/src/packages/components/ColorPicker/sub/color-alpha-slider.scss +8 -8
  155. package/src/packages/components/ColorPicker/sub/color-hue-slider.scss +3 -3
  156. package/src/packages/components/ColorPicker/sub/color-slider.scss +22 -22
  157. package/src/packages/components/ColorPicker/sub/color-sv-panel.scss +55 -55
  158. package/src/packages/components/ColorPicker/useColorPanelEditor.tsx +119 -119
  159. package/src/packages/components/ColorPicker/useColorPanelHistory.tsx +51 -51
  160. package/src/packages/components/ColorPicker/utils/PlainColor.ts +70 -70
  161. package/src/packages/components/ColorPicker/utils/color-picker.utils.tsx +27 -27
  162. package/src/packages/components/ConfirmPopup/confirm-popup.scss +16 -16
  163. package/src/packages/components/ConfirmPopup/index.tsx +72 -72
  164. package/src/packages/components/Corner/corner.scss +14 -14
  165. package/src/packages/components/Corner/index.tsx +80 -80
  166. package/src/packages/components/DatePicker/createDateRender.multiple.tsx +189 -189
  167. package/src/packages/components/DatePicker/createDateRender.single.tsx +169 -169
  168. package/src/packages/components/DatePicker/createRangeDateRender.range.tsx +114 -114
  169. package/src/packages/components/DatePicker/createRangeDateRender.separate.tsx +120 -120
  170. package/src/packages/components/DatePicker/date.mixin.scss +73 -73
  171. package/src/packages/components/DatePicker/date.scss +542 -542
  172. package/src/packages/components/DatePicker/date.utils.tsx +398 -398
  173. package/src/packages/components/DatePicker/index.tsx +84 -84
  174. package/src/packages/components/DatePicker/panel/DatePanel.tsx +99 -99
  175. package/src/packages/components/DatePicker/panel/DatePanelDate.tsx +278 -278
  176. package/src/packages/components/DatePicker/panel/DatePanelMonth.tsx +190 -190
  177. package/src/packages/components/DatePicker/panel/DatePanelQuarter.tsx +50 -50
  178. package/src/packages/components/DatePicker/panel/DatePanelRange.tsx +146 -146
  179. package/src/packages/components/DatePicker/panel/DatePanelWeek.tsx +52 -52
  180. package/src/packages/components/DatePicker/panel/DatePanelYear.tsx +100 -100
  181. package/src/packages/components/DatePicker/panel/useDatePanel.tsx +618 -618
  182. package/src/packages/components/DatePicker/panel/useDateWeek.tsx +153 -153
  183. package/src/packages/components/DatePicker/useRangeDateRender.tsx +318 -318
  184. package/src/packages/components/Dialog/dialog.scss +261 -261
  185. package/src/packages/components/Dialog/index.tsx +439 -439
  186. package/src/packages/components/Dialog/useDialogMovable.tsx +72 -72
  187. package/src/packages/components/Dialog/utils/dialog.mouse.ts +16 -16
  188. package/src/packages/components/Dialog/utils/dialog.utils.ts +10 -10
  189. package/src/packages/components/Dropdown/dropdown.public.scss +94 -94
  190. package/src/packages/components/Dropdown/dropdown.scss +13 -13
  191. package/src/packages/components/Dropdown/dropdown.utils.tsx +108 -108
  192. package/src/packages/components/Dropdown/index.tsx +174 -174
  193. package/src/packages/components/DropdownGroup/index.tsx +18 -18
  194. package/src/packages/components/DropdownOption/index.tsx +74 -74
  195. package/src/packages/components/DropdownSeparator/index.tsx +8 -8
  196. package/src/packages/components/Empty/empty.scss +14 -14
  197. package/src/packages/components/Empty/index.tsx +48 -48
  198. package/src/packages/components/FilterFormMultiple/filter-form-multiple.scss +36 -36
  199. package/src/packages/components/FilterFormMultiple/index.tsx +288 -288
  200. package/src/packages/components/FilterFormSingle/index.tsx +178 -178
  201. package/src/packages/components/FilterService/filter/filter.city.tsx +85 -85
  202. package/src/packages/components/FilterService/filter/filter.date.tsx +85 -85
  203. package/src/packages/components/FilterService/filter/filter.datetime.tsx +68 -68
  204. package/src/packages/components/FilterService/filter/filter.district.tsx +86 -86
  205. package/src/packages/components/FilterService/filter/filter.number.tsx +66 -66
  206. package/src/packages/components/FilterService/filter/filter.province.tsx +91 -91
  207. package/src/packages/components/FilterService/filter/filter.select.tsx +67 -67
  208. package/src/packages/components/FilterService/filter/filter.text.tsx +57 -57
  209. package/src/packages/components/FilterService/filter/fitler.object.tsx +115 -115
  210. package/src/packages/components/FilterService/index.tsx +250 -250
  211. package/src/packages/components/FilterService/utils/filter.service.utils.ts +138 -138
  212. package/src/packages/components/FilterService/utils/mergeQueryParam.ts +80 -80
  213. package/src/packages/components/Form/form.scss +256 -256
  214. package/src/packages/components/Form/index.tsx +74 -74
  215. package/src/packages/components/Form/layout/useFormLayout.tsx +332 -332
  216. package/src/packages/components/Form/types/any.tsx +54 -54
  217. package/src/packages/components/Form/types/array.tsx +55 -55
  218. package/src/packages/components/Form/types/arrayjson.tsx +15 -15
  219. package/src/packages/components/Form/types/arraystring.tsx +15 -15
  220. package/src/packages/components/Form/types/date.tsx +72 -72
  221. package/src/packages/components/Form/types/datetime.tsx +8 -8
  222. package/src/packages/components/Form/types/email.tsx +11 -11
  223. package/src/packages/components/Form/types/idcard.tsx +13 -13
  224. package/src/packages/components/Form/types/number.tsx +59 -59
  225. package/src/packages/components/Form/types/phone.tsx +11 -11
  226. package/src/packages/components/Form/types/qq.tsx +11 -11
  227. package/src/packages/components/Form/types/string.tsx +68 -68
  228. package/src/packages/components/Form/types/time.tsx +8 -8
  229. package/src/packages/components/Form/validate/createValidation.tsx +278 -278
  230. package/src/packages/components/Form/validate/useFormItemValidation.tsx +122 -122
  231. package/src/packages/components/Form/validate/useFormValidation.tsx +137 -137
  232. package/src/packages/components/Form/validate/validate.utils.tsx +439 -439
  233. package/src/packages/components/FormCascade/index.tsx +6 -6
  234. package/src/packages/components/FormCheckbox/index.tsx +6 -6
  235. package/src/packages/components/FormCheckboxGroup/index.tsx +6 -6
  236. package/src/packages/components/FormColorPicker/index.tsx +6 -6
  237. package/src/packages/components/FormDatePicker/index.tsx +6 -6
  238. package/src/packages/components/FormInput/index.tsx +6 -6
  239. package/src/packages/components/FormInputNumber/index.tsx +6 -6
  240. package/src/packages/components/FormItem/FormItemValidateMessage.tsx +16 -16
  241. package/src/packages/components/FormItem/createFormEditor.tsx +87 -87
  242. package/src/packages/components/FormItem/index.tsx +134 -134
  243. package/src/packages/components/FormRadio/index.tsx +6 -6
  244. package/src/packages/components/FormRadioGroup/index.tsx +6 -6
  245. package/src/packages/components/FormRate/index.tsx +6 -6
  246. package/src/packages/components/FormSelect/index.tsx +6 -6
  247. package/src/packages/components/FormSlider/index.tsx +6 -6
  248. package/src/packages/components/FormTimePicker/index.tsx +6 -6
  249. package/src/packages/components/FormToggle/index.tsx +6 -6
  250. package/src/packages/components/Formatter/index.tsx +64 -64
  251. package/src/packages/components/Grid/GridCol.tsx +73 -73
  252. package/src/packages/components/Grid/GridRow.tsx +91 -91
  253. package/src/packages/components/Grid/grid.scss +109 -109
  254. package/src/packages/components/Grid/grid.utils.ts +21 -21
  255. package/src/packages/components/GridCol/index.tsx +5 -5
  256. package/src/packages/components/GridRow/index.tsx +5 -5
  257. package/src/packages/components/Icon/icon.registry.tsx +21 -21
  258. package/src/packages/components/Icon/icon.scss +12 -12
  259. package/src/packages/components/IconPicker/DefaultIcons.ts +7 -0
  260. package/src/packages/components/IconPicker/icon-picker.scss +43 -0
  261. package/src/packages/components/IconPicker/index.tsx +189 -0
  262. package/src/packages/components/Illustration/index.tsx +28 -28
  263. package/src/packages/components/Image/image.scss +334 -334
  264. package/src/packages/components/Image/index.tsx +168 -168
  265. package/src/packages/components/ImagePreviewer/ImagePreviewer.tsx +574 -574
  266. package/src/packages/components/ImagePreviewer/ImagePreviewerButtonBar.tsx +140 -140
  267. package/src/packages/components/ImagePreviewer/ImagePreviewerCarouselImage.tsx +54 -54
  268. package/src/packages/components/ImagePreviewer/ImagePreviewerGallery.tsx +202 -202
  269. package/src/packages/components/ImagePreviewer/PreviewerLoading.tsx +26 -26
  270. package/src/packages/components/ImagePreviewer/image-previewer.scss +244 -244
  271. package/src/packages/components/ImagePreviewer/image-previewer.utils.tsx +136 -136
  272. package/src/packages/components/ImagePreviewer/index.tsx +5 -5
  273. package/src/packages/components/ImagePreviewer/previewer-loading.scss +52 -52
  274. package/src/packages/components/ImageUploader/index.tsx +242 -242
  275. package/src/packages/components/Input/index.scss +446 -446
  276. package/src/packages/components/Input/index.tsx +153 -153
  277. package/src/packages/components/Input/input.utils.ts +119 -119
  278. package/src/packages/components/Input/useMultipleInput.tsx +126 -126
  279. package/src/packages/components/Input/useSingleInput.tsx +45 -45
  280. package/src/packages/components/Input/useSuggestionInput.tsx +218 -218
  281. package/src/packages/components/Input/useTextareaInput.tsx +155 -155
  282. package/src/packages/components/Input/uses/useInputEnterHandler.tsx +83 -83
  283. package/src/packages/components/Input/uses/useInputHooks.tsx +21 -21
  284. package/src/packages/components/Input/uses/useInputMaxLength.tsx +35 -35
  285. package/src/packages/components/Input/uses/useInputSuffixIcon.tsx +67 -67
  286. package/src/packages/components/InputGroup/index.tsx +31 -31
  287. package/src/packages/components/InputGroup/input-group.scss +46 -46
  288. package/src/packages/components/InputNumber/NumberResize.tsx +111 -111
  289. package/src/packages/components/InputNumber/index.tsx +36 -36
  290. package/src/packages/components/InputNumber/input-number.utils.tsx +96 -96
  291. package/src/packages/components/InputNumber/number.scss +95 -95
  292. package/src/packages/components/InputNumber/number.utils.ts +3 -3
  293. package/src/packages/components/InputNumber/useInputNumber.multiple.tsx +121 -121
  294. package/src/packages/components/InputNumber/useInputNumber.public.tsx +478 -478
  295. package/src/packages/components/InputNumber/useInputNumber.single.tsx +137 -137
  296. package/src/packages/components/KeepAlive/KeepAliveCacheItemWrapper.tsx +114 -114
  297. package/src/packages/components/KeepAlive/index.tsx +77 -77
  298. package/src/packages/components/KeepAlive/utils/keepalive.utils.ts +33 -33
  299. package/src/packages/components/Layout/index.tsx +38 -38
  300. package/src/packages/components/Layout/layout.scss +247 -247
  301. package/src/packages/components/Layout/layout.utils.ts +3 -3
  302. package/src/packages/components/LayoutSection/index.tsx +76 -76
  303. package/src/packages/components/LayoutSection/useLayoutSectionResizer.tsx +184 -184
  304. package/src/packages/components/List/index.tsx +74 -74
  305. package/src/packages/components/List/list.scss +3 -3
  306. package/src/packages/components/ListOption/index.tsx +20 -20
  307. package/src/packages/components/ListPanel/index.tsx +30 -30
  308. package/src/packages/components/ListPanel/list-panel.scss +20 -20
  309. package/src/packages/components/Loading/index.tsx +27 -27
  310. package/src/packages/components/Loading/loading.scss +7 -7
  311. package/src/packages/components/LoadingMask/index.tsx +101 -101
  312. package/src/packages/components/LoadingMask/loading-mask.scss +34 -34
  313. package/src/packages/components/NumberRange/index.tsx +93 -93
  314. package/src/packages/components/Object/createObjectHooks.tsx +13 -13
  315. package/src/packages/components/Object/createObjectRender.multiple.tsx +289 -289
  316. package/src/packages/components/Object/createObjectRender.single.tsx +219 -219
  317. package/src/packages/components/Object/index.tsx +104 -104
  318. package/src/packages/components/Object/object.scss +24 -24
  319. package/src/packages/components/Object/object.utils.ts +56 -56
  320. package/src/packages/components/OuterOperation/index.tsx +5 -5
  321. package/src/packages/components/Ov/index.tsx +23 -23
  322. package/src/packages/components/Ov/ov.utils.ts +9 -9
  323. package/src/packages/components/Ov/usePublicOv.tsx +35 -35
  324. package/src/packages/components/PageCard/index.tsx +48 -48
  325. package/src/packages/components/PageCard/page-card.scss +124 -124
  326. package/src/packages/components/PageCardContent/index.tsx +44 -44
  327. package/src/packages/components/PageCardTitle/index.tsx +51 -51
  328. package/src/packages/components/PageRenderList/index.tsx +22 -22
  329. package/src/packages/components/PageThemeUtils/deepmerge.ts +21 -21
  330. package/src/packages/components/PageThemeUtils/index.tsx +262 -262
  331. package/src/packages/components/Pagination/index.tsx +339 -339
  332. package/src/packages/components/Pagination/pagination.scss +126 -126
  333. package/src/packages/components/Paragraph/index.tsx +46 -46
  334. package/src/packages/components/Paragraph/paragraph.scss +12 -12
  335. package/src/packages/components/ParagraphItem/index.tsx +21 -21
  336. package/src/packages/components/Plc/index.tsx +4 -4
  337. package/src/packages/components/PlcAddress/index.tsx +4 -4
  338. package/src/packages/components/PlcAddressItem/index.tsx +4 -4
  339. package/src/packages/components/PlcCheck/index.tsx +5 -5
  340. package/src/packages/components/PlcCheckbox/index.tsx +4 -4
  341. package/src/packages/components/PlcColorPicker/index.tsx +4 -4
  342. package/src/packages/components/PlcDate/index.tsx +4 -4
  343. package/src/packages/components/PlcDateRange/index.tsx +4 -4
  344. package/src/packages/components/PlcDraggier/index.tsx +5 -5
  345. package/src/packages/components/PlcExpand/index.tsx +5 -5
  346. package/src/packages/components/PlcGroup/index.tsx +4 -4
  347. package/src/packages/components/PlcImage/index.tsx +86 -86
  348. package/src/packages/components/PlcIndex/index.tsx +5 -5
  349. package/src/packages/components/PlcInput/index.tsx +4 -4
  350. package/src/packages/components/PlcNumber/index.tsx +4 -4
  351. package/src/packages/components/PlcObject/index.tsx +53 -53
  352. package/src/packages/components/PlcOperation/index.tsx +5 -5
  353. package/src/packages/components/PlcOv/index.tsx +31 -31
  354. package/src/packages/components/PlcRate/index.tsx +4 -4
  355. package/src/packages/components/PlcSelect/index.tsx +4 -4
  356. package/src/packages/components/PlcTextarea/index.tsx +4 -4
  357. package/src/packages/components/PlcTime/index.tsx +4 -4
  358. package/src/packages/components/PlcTimeRange/index.tsx +4 -4
  359. package/src/packages/components/PlcToggle/index.tsx +4 -4
  360. package/src/packages/components/PlcTree/index.tsx +5 -5
  361. package/src/packages/components/Popup/PopupProvider.tsx +20 -20
  362. package/src/packages/components/Popup/index.tsx +403 -403
  363. package/src/packages/components/Popup/popup.scss +13 -13
  364. package/src/packages/components/ProgressBar/index.tsx +87 -87
  365. package/src/packages/components/ProgressBar/progress-bar.scss +40 -40
  366. package/src/packages/components/ProgressBar/progress.utils.ts +24 -24
  367. package/src/packages/components/ProgressCircle/index.tsx +188 -188
  368. package/src/packages/components/ProgressCircle/progress-circle.scss +44 -44
  369. package/src/packages/components/ProgressMini/index.tsx +98 -98
  370. package/src/packages/components/ProgressMini/progress-mini.scss +17 -17
  371. package/src/packages/components/Radio/index.tsx +137 -137
  372. package/src/packages/components/Radio/radio.scss +79 -79
  373. package/src/packages/components/RadioGroup/index.tsx +62 -62
  374. package/src/packages/components/RadioInner/index.tsx +31 -31
  375. package/src/packages/components/RadioInner/radio-inner.scss +17 -17
  376. package/src/packages/components/Rate/index.tsx +152 -152
  377. package/src/packages/components/Rate/rate.scss +32 -32
  378. package/src/packages/components/Reference/ReferenceProvider.tsx +13 -13
  379. package/src/packages/components/Reference/index.tsx +57 -57
  380. package/src/packages/components/RollingNumber/index.tsx +66 -66
  381. package/src/packages/components/Scroll/HorizontalScrollbar.tsx +96 -96
  382. package/src/packages/components/Scroll/VerticalScrollbar.tsx +102 -102
  383. package/src/packages/components/Scroll/index.tsx +419 -419
  384. package/src/packages/components/Scroll/scroll.scss +168 -168
  385. package/src/packages/components/Scroll/useAutoScroll.ts +68 -68
  386. package/src/packages/components/Segment/index.tsx +39 -39
  387. package/src/packages/components/Segment/segment.scss +46 -46
  388. package/src/packages/components/SegmentGroup/index.tsx +48 -48
  389. package/src/packages/components/Select/SelectPanel.tsx +78 -78
  390. package/src/packages/components/Select/createMultipleSelectRender.tsx +248 -248
  391. package/src/packages/components/Select/createPublicSelectRender.tsx +411 -411
  392. package/src/packages/components/Select/createSelectOptionDecoder.tsx +43 -43
  393. package/src/packages/components/Select/createSingleSelectRender.tsx +133 -133
  394. package/src/packages/components/Select/decodeSelectRenderNode.tsx +52 -52
  395. package/src/packages/components/Select/index.tsx +97 -97
  396. package/src/packages/components/Select/select.scss +101 -101
  397. package/src/packages/components/Select/select.utils.tsx +248 -248
  398. package/src/packages/components/SelectDisplay/index.tsx +30 -30
  399. package/src/packages/components/SelectGroup/index.tsx +37 -37
  400. package/src/packages/components/SelectOption/index.tsx +72 -72
  401. package/src/packages/components/Slider/index.tsx +123 -123
  402. package/src/packages/components/Slider/slider.scss +128 -128
  403. package/src/packages/components/Slider/slider.utils.tsx +71 -71
  404. package/src/packages/components/Slider/useSlider.range.tsx +211 -211
  405. package/src/packages/components/Slider/useSlider.single.tsx +148 -148
  406. package/src/packages/components/Slider/useSliderDotDragier.tsx +66 -66
  407. package/src/packages/components/SortList/index.tsx +191 -191
  408. package/src/packages/components/SortList/sort-list.scss +11 -11
  409. package/src/packages/components/Space/index.tsx +36 -36
  410. package/src/packages/components/Space/space.scss +39 -39
  411. package/src/packages/components/StackCard/index.tsx +416 -416
  412. package/src/packages/components/StackCard/stack-card.scss +40 -40
  413. package/src/packages/components/StackCardItem/index.tsx +24 -24
  414. package/src/packages/components/Step/index.tsx +120 -120
  415. package/src/packages/components/StepGroup/index.tsx +63 -63
  416. package/src/packages/components/StepGroup/step-group.scss +411 -411
  417. package/src/packages/components/StepGroup/step.utils.ts +44 -44
  418. package/src/packages/components/Tab/index.tsx +42 -42
  419. package/src/packages/components/TabGroup/TabsHeader.tsx +105 -105
  420. package/src/packages/components/TabGroup/TabsInner.tsx +60 -60
  421. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontal.tsx +94 -94
  422. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalCard.tsx +15 -15
  423. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalShadow.tsx +15 -15
  424. package/src/packages/components/TabGroup/header/horizontal/TabsHeaderHorizontalText.tsx +66 -66
  425. package/src/packages/components/TabGroup/header/horizontal/tabs-header-card.scss +85 -85
  426. package/src/packages/components/TabGroup/header/horizontal/tabs-header-horizontal.scss +59 -59
  427. package/src/packages/components/TabGroup/header/horizontal/tabs-header-shadow.scss +88 -88
  428. package/src/packages/components/TabGroup/header/horizontal/tabs-header-text.scss +50 -50
  429. package/src/packages/components/TabGroup/header/vertical/TabsHeaderVertical.tsx +24 -24
  430. package/src/packages/components/TabGroup/header/vertical/tabs-header-vertical.scss +116 -116
  431. package/src/packages/components/TabGroup/index.tsx +131 -131
  432. package/src/packages/components/TabGroup/tabs.scss +62 -62
  433. package/src/packages/components/TabGroup/tabs.utils.tsx +22 -22
  434. package/src/packages/components/Table/editor/PlcAddress.tsx +91 -91
  435. package/src/packages/components/Table/editor/PlcAddressItem.tsx +60 -60
  436. package/src/packages/components/Table/editor/PlcCheckbox.tsx +36 -36
  437. package/src/packages/components/Table/editor/PlcColorPicker.tsx +29 -29
  438. package/src/packages/components/Table/editor/PlcDate.tsx +97 -97
  439. package/src/packages/components/Table/editor/PlcDate.utils.tsx +45 -45
  440. package/src/packages/components/Table/editor/PlcDateRange.tsx +73 -73
  441. package/src/packages/components/Table/editor/PlcInput.tsx +21 -21
  442. package/src/packages/components/Table/editor/PlcNumber.tsx +23 -23
  443. package/src/packages/components/Table/editor/PlcRate.tsx +24 -24
  444. package/src/packages/components/Table/editor/PlcSelect.tsx +181 -181
  445. package/src/packages/components/Table/editor/PlcTextarea.tsx +22 -22
  446. package/src/packages/components/Table/editor/PlcTime.tsx +54 -54
  447. package/src/packages/components/Table/editor/PlcTime.utils.ts +15 -15
  448. package/src/packages/components/Table/editor/PlcTimeRange.tsx +66 -66
  449. package/src/packages/components/Table/editor/PlcToggle.tsx +40 -40
  450. package/src/packages/components/Table/index.tsx +4 -4
  451. package/src/packages/components/Table/plc/formatPlcList.tsx +92 -92
  452. package/src/packages/components/Table/plc/group/PlcGroup.tsx +20 -20
  453. package/src/packages/components/Table/plc/plc/Plc.tsx +19 -19
  454. package/src/packages/components/Table/plc/process/copyPlcList.ts +23 -23
  455. package/src/packages/components/Table/plc/process/getPltCellClass.ts +8 -8
  456. package/src/packages/components/Table/plc/process/processAutoFixed.ts +73 -73
  457. package/src/packages/components/Table/plc/process/processHeadPlcList.ts +110 -110
  458. package/src/packages/components/Table/plc/process/processPlcClassAndStyle.ts +43 -43
  459. package/src/packages/components/Table/plc/process/processPlcFixed.ts +81 -81
  460. package/src/packages/components/Table/plc/process/processPlcSort.ts +91 -91
  461. package/src/packages/components/Table/plc/use/useBasePlc.tsx +85 -85
  462. package/src/packages/components/Table/plc/use/useBasePlcGroup.tsx +70 -70
  463. package/src/packages/components/Table/plc/use/usePlc.tsx +136 -136
  464. package/src/packages/components/Table/plc/use/usePlcPropsState.tsx +112 -112
  465. package/src/packages/components/Table/plc/use/useTableAutoSpan.tsx +112 -112
  466. package/src/packages/components/Table/plc/useTablePlc.tsx +229 -229
  467. package/src/packages/components/Table/plc/utils/iteratePlcList.tsx +48 -48
  468. package/src/packages/components/Table/plc/utils/plc.render.ts +122 -122
  469. package/src/packages/components/Table/plc/utils/plc.scope-slots.ts +63 -63
  470. package/src/packages/components/Table/plc/utils/plc.utils.ts +302 -302
  471. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.hooks.tsx +16 -16
  472. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.multiple.tsx +280 -280
  473. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.single.tsx +89 -89
  474. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.tsx +61 -61
  475. package/src/packages/components/Table/standard/PlcCheck/PlcCheck.utils.ts +35 -35
  476. package/src/packages/components/Table/standard/PlcDraggier/PlcDraggier.tsx +55 -55
  477. package/src/packages/components/Table/standard/PlcExclusion.tsx +26 -26
  478. package/src/packages/components/Table/standard/PlcExpand.tsx +204 -204
  479. package/src/packages/components/Table/standard/PlcIndex.tsx +34 -34
  480. package/src/packages/components/Table/standard/PlcOperation/OuterOperation.tsx +210 -210
  481. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.tsx +391 -391
  482. package/src/packages/components/Table/standard/PlcOperation/PlcOperation.utils.tsx +159 -159
  483. package/src/packages/components/Table/standard/PlcOperation/outer-operation.scss +39 -39
  484. package/src/packages/components/Table/standard/PlcOperation/useOperationPermission.ts +53 -53
  485. package/src/packages/components/Table/standard/PlcTree/PlcTree.autoWidth.tsx +52 -52
  486. package/src/packages/components/Table/standard/PlcTree/PlcTree.renderNode.tsx +81 -81
  487. package/src/packages/components/Table/standard/PlcTree/PlcTree.tsx +194 -194
  488. package/src/packages/components/Table/standard/PlcTree/PlcTree.utils.ts +59 -59
  489. package/src/packages/components/Table/standard/PlcTree/PlcTreeHeader.tsx +64 -64
  490. package/src/packages/components/Table/standard/PlcTree/RenderPlcTreeNode.tsx +114 -114
  491. package/src/packages/components/Table/table/Table.tsx +382 -382
  492. package/src/packages/components/Table/table/body/cell.tsx +310 -310
  493. package/src/packages/components/Table/table/body/row.tsx +47 -47
  494. package/src/packages/components/Table/table/body/useCellValue.tsx +145 -145
  495. package/src/packages/components/Table/table/head/head-cell.tsx +100 -100
  496. package/src/packages/components/Table/table/head/useHeadCellResize.ts +79 -79
  497. package/src/packages/components/Table/table/node/useTableNode.tsx +66 -66
  498. package/src/packages/components/Table/table/table.scss +438 -438
  499. package/src/packages/components/Table/table/use/useFixedShadow.ts +48 -48
  500. package/src/packages/components/Table/table/use/useTableDraggier.col.tsx +639 -639
  501. package/src/packages/components/Table/table/use/useTableDraggier.row.tsx +279 -279
  502. package/src/packages/components/Table/table/use/useTableDraggier.tsx +237 -237
  503. package/src/packages/components/Table/table/use/useTableFormEditor.tsx +190 -190
  504. package/src/packages/components/Table/table/use/useTableLoading.tsx +39 -39
  505. package/src/packages/components/Table/table/use/useTableMethods.tsx +65 -65
  506. package/src/packages/components/Table/table/use/useTableModifyEditor.tsx +204 -204
  507. package/src/packages/components/Table/table/use/useTableScroll.tsx +49 -49
  508. package/src/packages/components/Table/table/utils/createTableHooks.ts +70 -70
  509. package/src/packages/components/Table/table/utils/table.utils.ts +286 -286
  510. package/src/packages/components/Table/table/utils/url.utils.ts +23 -23
  511. package/src/packages/components/TableOptionSpace/index.ts +5 -5
  512. package/src/packages/components/TableOptionUtils/index.ts +5 -5
  513. package/src/packages/components/Tag/tag.utils.ts +20 -20
  514. package/src/packages/components/ThemeColor/index.tsx +22 -22
  515. package/src/packages/components/ThemeColor/theme-color.scss +36 -36
  516. package/src/packages/components/ThemeColorSelector/index.tsx +53 -53
  517. package/src/packages/components/ThemeDarkSelector/index.tsx +37 -37
  518. package/src/packages/components/ThemeEditor/index.tsx +199 -199
  519. package/src/packages/components/ThemeEditor/theme-editor.scss +106 -106
  520. package/src/packages/components/ThemeLocaleSelector/index.tsx +41 -41
  521. package/src/packages/components/ThemePrimaryColors/index.ts +5 -5
  522. package/src/packages/components/ThemeShapeSelector/index.tsx +55 -55
  523. package/src/packages/components/ThemeSizeSelector/index.tsx +50 -50
  524. package/src/packages/components/TimePicker/createRangeTimeRender.tsx +80 -80
  525. package/src/packages/components/TimePicker/createSeparateRangeTimeRender.tsx +104 -104
  526. package/src/packages/components/TimePicker/createSingleTimeRender.tsx +202 -202
  527. package/src/packages/components/TimePicker/index.tsx +65 -65
  528. package/src/packages/components/TimePicker/panel/TimeBaseColumn.tsx +136 -136
  529. package/src/packages/components/TimePicker/panel/TimeBasePanel.tsx +172 -172
  530. package/src/packages/components/TimePicker/panel/TimePanel.tsx +94 -94
  531. package/src/packages/components/TimePicker/panel/TimeRangePanel.tsx +141 -141
  532. package/src/packages/components/TimePicker/panel/time-base-column.scss +51 -51
  533. package/src/packages/components/TimePicker/panel/time-base-panel.scss +39 -39
  534. package/src/packages/components/TimePicker/panel/time-panel.utils.ts +16 -16
  535. package/src/packages/components/TimePicker/panel/time-range-panel.scss +9 -9
  536. package/src/packages/components/TimePicker/time.scss +10 -10
  537. package/src/packages/components/TimePicker/time.utils.ts +100 -100
  538. package/src/packages/components/TimePicker/useRangeTimeRender.tsx +236 -236
  539. package/src/packages/components/TimePicker/useTimeHooks.ts +11 -11
  540. package/src/packages/components/Toggle/index.tsx +116 -116
  541. package/src/packages/components/Toggle/toggle.scss +151 -151
  542. package/src/packages/components/Tooltip/index.tsx +118 -118
  543. package/src/packages/components/Tooltip/tooltip.scss +5 -5
  544. package/src/packages/components/Transition/index.tsx +134 -134
  545. package/src/packages/components/Tree/RenderTreeNode.tsx +178 -178
  546. package/src/packages/components/Tree/index.tsx +130 -130
  547. package/src/packages/components/Tree/tree.scss +259 -259
  548. package/src/packages/components/TreeCore/TreeCore.type.tsx +140 -140
  549. package/src/packages/components/TreeCore/createTreeCore.tsx +364 -364
  550. package/src/packages/components/TreeCore/createTreeDraggier.tsx +412 -412
  551. package/src/packages/components/TreeCore/createTreeHooks.ts +16 -16
  552. package/src/packages/components/TreeCore/createTreeMethods.tsx +421 -421
  553. package/src/packages/components/TreeCore/createTreeNode.tsx +244 -244
  554. package/src/packages/components/TreeCore/createTreeProps.ts +76 -76
  555. package/src/packages/components/TreeCore/createTreeUtils.ts +140 -140
  556. package/src/packages/components/TreeCore/fromatNodeData.ts +65 -65
  557. package/src/packages/components/TreeNodeWithMenu/index.tsx +95 -95
  558. package/src/packages/components/TreeNodeWithMenu/tree-node-with-menu.scss +39 -39
  559. package/src/packages/components/TreeNodeWithMenu/treeNodeWithMenu.utils.ts +12 -12
  560. package/src/packages/components/Triangle/index.tsx +88 -88
  561. package/src/packages/components/Triangle/triangle.scss +12 -12
  562. package/src/packages/components/Upload/index.tsx +422 -422
  563. package/src/packages/components/Upload/upload.scss +185 -185
  564. package/src/packages/components/VirtualList/createVirtualDraggier.ts +375 -375
  565. package/src/packages/components/VirtualList/index.tsx +109 -109
  566. package/src/packages/components/VirtualList/useVirtualList.tsx +440 -440
  567. package/src/packages/components/VirtualList/virtual-list.scss +58 -58
  568. package/src/packages/components/VirtualTable/index.tsx +220 -220
  569. package/src/packages/components/VirtualTable/virtual-table.scss +179 -179
  570. package/src/packages/components/_Object/index.tsx +5 -5
  571. package/src/packages/components/buildPlainDefaultUrlConfig/index.tsx +5 -5
  572. package/src/packages/components/createAddressService/index.ts +5 -5
  573. package/src/packages/components/createAutoScrollManager/index.tsx +41 -41
  574. package/src/packages/components/createHttp/http.utils.ts +56 -56
  575. package/src/packages/components/createHttp/index.tsx +29 -29
  576. package/src/packages/components/createObjectService/index.tsx +5 -5
  577. package/src/packages/components/createOvService/index.tsx +5 -5
  578. package/src/packages/components/createPlainAddressService/index.tsx +107 -107
  579. package/src/packages/components/createPopup/index.ts +5 -5
  580. package/src/packages/components/createRequestInterceptor/index.ts +139 -139
  581. package/src/packages/components/createScrollDraggier/index.ts +341 -341
  582. package/src/packages/components/createScrollUtils/index.tsx +163 -163
  583. package/src/packages/components/createSimpleDate/index.ts +49 -49
  584. package/src/packages/components/createTableOptionUser/index.tsx +5 -5
  585. package/src/packages/components/createTransitionHandler/index.ts +46 -46
  586. package/src/packages/components/createUploadService/index.tsx +5 -5
  587. package/src/packages/components/createVirtualDraggier/index.ts +5 -5
  588. package/src/packages/components/createWebDraggier/index.ts +5 -5
  589. package/src/packages/components/i18n/index.tsx +5 -5
  590. package/src/packages/components/loadFile/index.ts +20 -20
  591. package/src/packages/components/nextPopupId/index.ts +5 -5
  592. package/src/packages/components/useAutoScrollUtils/auto-scroll-utils.scss +48 -48
  593. package/src/packages/components/useAutoScrollUtils/index.tsx +86 -86
  594. package/src/packages/components/useContextmenuOptions/index.tsx +40 -40
  595. package/src/packages/components/useDialog/DialogService.tsx +227 -227
  596. package/src/packages/components/useDialog/dialog-service.scss +50 -50
  597. package/src/packages/components/useDialog/dialog.service.utils.tsx +88 -88
  598. package/src/packages/components/useDialog/index.tsx +66 -66
  599. package/src/packages/components/useImage/ImageService.tsx +285 -285
  600. package/src/packages/components/useImage/index.tsx +28 -28
  601. package/src/packages/components/useLoading/LoadingService.tsx +106 -106
  602. package/src/packages/components/useLoading/index.tsx +31 -31
  603. package/src/packages/components/useLoading/loading.service.scss +25 -25
  604. package/src/packages/components/useLoading/loading.service.utils.tsx +13 -13
  605. package/src/packages/components/useMessage/Message.tsx +77 -77
  606. package/src/packages/components/useMessage/MessageContainer.tsx +64 -64
  607. package/src/packages/components/useMessage/MessageManager.tsx +58 -58
  608. package/src/packages/components/useMessage/index.tsx +51 -51
  609. package/src/packages/components/useMessage/message.scss +149 -149
  610. package/src/packages/components/useMessage/message.service.utils.tsx +43 -43
  611. package/src/packages/components/useNotice/Notice.tsx +93 -93
  612. package/src/packages/components/useNotice/NoticeContainer.tsx +65 -65
  613. package/src/packages/components/useNotice/NoticeManager.tsx +58 -58
  614. package/src/packages/components/useNotice/index.tsx +42 -42
  615. package/src/packages/components/useNotice/noitice.service.utils.tsx +48 -48
  616. package/src/packages/components/useNotice/notice.scss +158 -158
  617. package/src/packages/components/usePageRender/index.tsx +3 -3
  618. package/src/packages/components/usePageRenderContext/index.tsx +8 -8
  619. package/src/packages/components/usePopup/PopupItem.tsx +432 -432
  620. package/src/packages/components/usePopup/index.tsx +1 -1
  621. package/src/packages/components/usePopup/popup-item.scss +252 -252
  622. package/src/packages/components/usePopup/refresh/MaxMinTopLeft.ts +38 -38
  623. package/src/packages/components/usePopup/refresh/applyPosition.ts +61 -61
  624. package/src/packages/components/usePopup/refresh/calcPosition.ts +88 -88
  625. package/src/packages/components/usePopup/refresh/refreshArrow.ts +112 -112
  626. package/src/packages/components/usePopup/refresh/refreshPopup.ts +79 -79
  627. package/src/packages/components/usePopup/trigger/useManagerTrigger.click.tsx +56 -56
  628. package/src/packages/components/usePopup/trigger/useManagerTrigger.clickOutside.tsx +39 -39
  629. package/src/packages/components/usePopup/trigger/useManagerTrigger.contextmenu.tsx +59 -59
  630. package/src/packages/components/usePopup/trigger/useManagerTrigger.focus.tsx +30 -30
  631. package/src/packages/components/usePopup/trigger/useManagerTrigger.hover.tsx +60 -60
  632. package/src/packages/components/usePopup/trigger/usePopupTrigger.tsx +56 -56
  633. package/src/packages/components/usePopup/trigger/useReferenceTrigger.tsx +90 -90
  634. package/src/packages/components/usePopup/usePopup.tsx +73 -73
  635. package/src/packages/components/usePopup/usePopupManager.tsx +325 -325
  636. package/src/packages/components/usePopup/utils/closeAllPopper.ts +5 -5
  637. package/src/packages/components/usePopup/utils/createPopperAttrsGetter.ts +5 -5
  638. package/src/packages/components/usePopup/utils/createPopupManagerHooks.tsx +65 -65
  639. package/src/packages/components/usePopup/utils/decodePlacement.ts +16 -16
  640. package/src/packages/components/usePopup/utils/getAvailableDirection.ts +91 -91
  641. package/src/packages/components/usePopup/utils/getBoundary.ts +25 -25
  642. package/src/packages/components/usePopup/utils/getRects.ts +24 -24
  643. package/src/packages/components/usePopup/utils/handleDirection.ts +10 -10
  644. package/src/packages/components/usePopup/utils/ids2map.ts +11 -11
  645. package/src/packages/components/usePopup/utils/popup.utils.ts +239 -239
  646. package/src/packages/components/usePopup/utils/stopPopup.ts +7 -7
  647. package/src/packages/components/usePopupEditor/index.tsx +113 -113
  648. package/src/packages/components/usePopupEditor/popup-editor.utils.ts +15 -15
  649. package/src/packages/components/usePopupManager/index.ts +5 -5
  650. package/src/packages/components/usePopupTrigger/index.tsx +5 -5
  651. package/src/packages/components/useReferenceTrigger/index.tsx +5 -5
  652. package/src/packages/components/useTableFilter/index.ts +73 -73
  653. package/src/packages/components/useTooltip/index.tsx +188 -188
  654. package/src/packages/components/useWatchAutoClear/index.ts +5 -5
  655. package/src/packages/directives/ClickWave/click-wave.scss +57 -57
  656. package/src/packages/directives/ClickWave/index.tsx +78 -78
  657. package/src/packages/directives/ResizeDetector/index.tsx +107 -107
  658. package/src/packages/entry.tsx +1 -0
  659. package/src/packages/i18n/i18n.utils.ts +272 -272
  660. package/src/packages/i18n/index.ts +5 -5
  661. package/src/packages/i18n/lang/en-us.ts +3 -0
  662. package/src/packages/i18n/lang/zh-cn.ts +3 -0
  663. package/src/packages/index.tsx +5 -5
  664. package/src/packages/styles/application/application.public.scss +15 -15
  665. package/src/packages/styles/application/application.public.transition.scss +90 -90
  666. package/src/packages/styles/global.import.scss +194 -194
  667. package/src/packages/uses/createInputPopperAttrs.ts +67 -60
  668. package/src/packages/uses/useCollapseStyles.tsx +56 -56
  669. package/src/packages/uses/useDragHorizontalScroll.ts +81 -81
  670. package/src/packages/uses/useEdit.ts +116 -116
  671. package/src/packages/uses/useFocusHandler.ts +73 -73
  672. package/src/packages/uses/useFunctionWrapper.ts +31 -31
  673. package/src/packages/uses/useMultipleModel.tsx +65 -65
  674. package/src/packages/uses/useRenderReference.tsx +32 -32
  675. package/src/packages/uses/useStyle.tsx +82 -82
  676. package/src/packages/utils/ClientZoom.ts +50 -50
  677. package/src/packages/utils/ComponentUtils.ts +10 -10
  678. package/src/packages/utils/FixInput.ts +3 -3
  679. package/src/packages/utils/InnerTransition.ts +13 -13
  680. package/src/packages/utils/LoadingText.ts +11 -11
  681. package/src/packages/utils/OpenController.ts +15 -15
  682. package/src/packages/utils/buildCycleIndexList.ts +31 -31
  683. package/src/packages/utils/clearFields.ts +16 -16
  684. package/src/packages/utils/color.utils.ts +189 -189
  685. package/src/packages/utils/combineURL.ts +5 -5
  686. package/src/packages/utils/constant.tsx +5 -5
  687. package/src/packages/utils/createAnimate.ts +45 -45
  688. package/src/packages/utils/createCache.ts +32 -32
  689. package/src/packages/utils/createDraggier.ts +256 -256
  690. package/src/packages/utils/createEffectiveHandler.ts +8 -8
  691. package/src/packages/utils/createError.ts +16 -16
  692. package/src/packages/utils/createFlagManager.ts +34 -34
  693. package/src/packages/utils/createKeyHandler.ts +20 -20
  694. package/src/packages/utils/createListUtils.ts +38 -38
  695. package/src/packages/utils/customDeepClone.ts +15 -15
  696. package/src/packages/utils/deepCloneRenderNode.ts +41 -41
  697. package/src/packages/utils/deepIterateObject.ts +14 -14
  698. package/src/packages/utils/findReactElement.tsx +76 -76
  699. package/src/packages/utils/getDeviceInfo.ts +59 -59
  700. package/src/packages/utils/getElementRect.ts +32 -32
  701. package/src/packages/utils/getRowEl.ts +33 -33
  702. package/src/packages/utils/incrementalMerge.ts +8 -8
  703. package/src/packages/utils/inheritSlots.ts +30 -30
  704. package/src/packages/utils/installAllIcons.ts +2 -1
  705. package/src/packages/utils/installAllLazyIcons.ts +17 -17
  706. package/src/packages/utils/isObjectCommonMatch.ts +21 -21
  707. package/src/packages/utils/isSSR.tsx +3 -3
  708. package/src/packages/utils/onParentElementsScroll.tsx +26 -26
  709. package/src/packages/utils/plainDate.ts +203 -203
  710. package/src/packages/utils/renderInputModeTextRangeValue.tsx +25 -25
  711. package/src/packages/utils/renderNothing.tsx +1 -1
  712. package/src/packages/utils/type.ts +11 -11
  713. package/src/packages/utils/useMove.tsx +78 -78
  714. 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>