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,332 +1,332 @@
1
- import {computed, ExtractPropTypes, inject, PropType, provide, useStyles} from "@peryl/react-compose";
2
- import {createEnum} from "@peryl/utils/createEnum";
3
- import {unit} from "@peryl/utils/unit";
4
- import {removeUnit} from "@peryl/utils/removeUnit";
5
- import {InputMode, ThemeSize, tStyleComputed} from "../../../uses/useStyle";
6
- import ApplicationConfigurationProvider from "../../ApplicationConfigurationProvider";
7
- import {PlainObject} from "@peryl/utils/event";
8
-
9
- /**
10
- * 表单的文本以及内容对齐方式
11
- * @author 韦胜健
12
- * @date 2022.9.4 23:06
13
- */
14
- export const eFormLabelAlign = createEnum(['left', 'center', 'right'] as const);
15
-
16
- /**
17
- * 表单的内容对其方式
18
- * @author 韦胜健
19
- * @date 2022.9.4 23:19
20
- */
21
- export const eFormContentAlign = createEnum([
22
- 'left',
23
- 'center',
24
- 'right'
25
- ] as const);
26
-
27
- /**
28
- * Form布局相关属性
29
- * @author 韦胜健
30
- * @date 2022.9.4 22:46
31
- */
32
- export const FormLayoutPropsOption = {
33
- size: { type: String as PropType<typeof ThemeSize.TYPE> }, // 表单尺寸
34
- column: { type: [String, Number] as PropType<string | number>, default: 1 }, // 多列表单的列数
35
- columnGutter: { type: [Number, String] as PropType<string | number>, default: '16px' }, // 列之间的间距
36
- singleColumnCenter: { type: Boolean as PropType<boolean> }, // 单列的时候会使得表单内容居中,表单文本标题不计宽度,设置该属性为true则使得文本宽度参与计算居中
37
- labelWidth: { type: [String, Number] as PropType<string | number> }, // formItem 文本宽度
38
- labelAlign: { type: String as PropType<typeof eFormLabelAlign.TYPE> }, // 文本对其方式
39
- contentAlign: { type: String as PropType<typeof eFormContentAlign.TYPE> }, // 内容对其方式
40
- singleColumnContentWidth: { type: Number }, // 单列的时候form item content的宽度
41
- width: { type: [String, Number] as PropType<string | number>, }, // 表单宽度
42
- colon: { type: Boolean as PropType<boolean>, default: true }, // label的冒号
43
- verticalLabel: { type: Boolean as PropType<boolean> }, // 纵向的表单
44
- gutter: { type: Number }, // 列间隔
45
- rowGutter: { type: Number }, // 行间隔
46
- validateMessagePosition: { type: String as PropType<typeof FormValidateMessagePosition.TYPE> }, // 校验消息的位置
47
- hideLabel: { type: Boolean }, // 隐藏form-item的label
48
- inputMode: { type: String as PropType<typeof InputMode.TYPE> }, // 内部Input的类型mode
49
- } as const;
50
-
51
- /**
52
- * FormLayoutProps属性类型
53
- * @author 韦胜健
54
- * @date 2022.9.4 22:48
55
- */
56
- export type tFormLayoutPropsType = ExtractPropTypes<typeof FormLayoutPropsOption>;
57
-
58
- /**
59
- * FormItem布局相关属性
60
- * @author 韦胜健
61
- * @date 2022.9.4 22:46
62
- */
63
- export const FormItemLayoutPropsOption = {
64
- hideLabel: { type: Boolean }, // 隐藏label
65
- labelWidth: { type: [String, Number] as PropType<string | number> }, // 显示文本宽度
66
- column: { type: [String, Number] as PropType<string | number>, default: 1 }, // 多列表单的列数
67
- block: { type: Boolean as PropType<boolean> }, // 占用一行
68
- labelAlign: { type: String as PropType<typeof eFormLabelAlign.TYPE> }, // label 对齐方式
69
- contentAlign: { type: String as PropType<typeof eFormContentAlign.TYPE> }, // content 对齐方式
70
- singleColumnContentWidth: { type: Number }, // 单列的时候form item content的宽度
71
- colon: { type: Boolean as PropType<boolean | null>, default: null }, // label的冒号
72
- validateMessagePosition: { type: String as PropType<typeof FormValidateMessagePosition.TYPE> }, // 校验消息的位置
73
- negativeInnerMarginTop: { type: Boolean }, // inner节点启用负的marginTop值
74
- tip: { type: [String, Function] as PropType<string | (() => any)> }, // 提示说明
75
- } as const;
76
-
77
- /**
78
- * FormItemLayoutProps属性类型
79
- * @author 韦胜健
80
- * @date 2022.9.4 22:49
81
- */
82
- export type tFormItemLayoutPropsType = ExtractPropTypes<typeof FormItemLayoutPropsOption>
83
-
84
- /**
85
- * 默认的文本宽度
86
- * @author 韦胜健
87
- * @date 2022.9.4 23:21
88
- */
89
- export const DefaultFormLabelWidth = (() => {
90
- let value = '150px';
91
- return { value };
92
- })();
93
-
94
- /**
95
- * 布局组合
96
- * @author 韦胜健
97
- * @date 2022.9.4 22:50
98
- */
99
- export const useFormLayout = (() => {
100
-
101
- const FORM_LAYOUT_PROVIDER = '@@FORM_LAYOUT_PROVIDER';
102
- const FORM_ITEM_LAYOUT_PROVIDER = '@@FORM_ITEM_LAYOUT_PROVIDER';
103
-
104
- const useForm = (props: tFormLayoutPropsType, styleComputed: tStyleComputed) => {
105
-
106
- const configuration = ApplicationConfigurationProvider.inject();
107
-
108
- /*是否为单列*/
109
- const isSingleColumn = computed(() => props.column === 1);
110
- /*列间距*/
111
- const gutter = computed((): number => {
112
- if (props.gutter != null) {
113
- return removeUnit(props.gutter) as any;
114
- }
115
- /*单列的情况下不设置列间距*/
116
- return isSingleColumn.value ? 0 : FormSizeGutter[styleComputed.value.size];
117
- });
118
- /*行间距*/
119
- const rowGutter = computed((): number => {
120
- if (props.inputMode === 'text') {return 4;}
121
- if (props.rowGutter != null) {
122
- return removeUnit(props.rowGutter) as any;
123
- }
124
- return Math.max(
125
- 1.25 * ((removeUnit(configuration.value.theme.vars[`margin-${styleComputed.value.size}`]) || 0) as number),
126
- 14,
127
- );
128
- });
129
- /*校验消息的位置*/
130
- const validateMessagePosition = computed(() => {
131
- if (!!props.validateMessagePosition) {return props.validateMessagePosition;}
132
-
133
- /*纵向文本的情况下,校验消息默认放在左下角*/
134
- if (props.verticalLabel) {return FormValidateMessagePosition["bottom-right"];}
135
- if (isSingleColumn.value) {
136
- /*单列的情况下,校验消息默认放在右侧*/
137
- return FormValidateMessagePosition['right'];
138
- } else {
139
- /*其他都放在右下角*/
140
- return FormValidateMessagePosition['bottom-right'];
141
- }
142
- });
143
- /*根节点样式*/
144
- const styles = useStyles((styles) => {
145
- if (!isSingleColumn.value) {
146
- // styles.padding = `${rowGutter.value / 2}px ${gutter.value}px`;
147
- }
148
- });
149
- /*inner节点样式,有列间距时拓展宽度*/
150
- const innerStyles = useStyles(style => {
151
- if (!isSingleColumn.value && !!gutter.value) {
152
- style.width = `calc(100% + ${unit(gutter.value)})`;
153
- }
154
- style.margin = `${-rowGutter.value / 2}px ${unit(-gutter.value / 2)}`;
155
- });
156
- const refer = { props, styles, gutter, rowGutter, innerStyles, isSingleColumn, validateMessagePosition };
157
- provide(FORM_LAYOUT_PROVIDER, refer);
158
- return refer;
159
- };
160
-
161
- const useFormItem = (props: tFormItemLayoutPropsType) => {
162
-
163
- const form = inject<ReturnType<typeof useForm>>(FORM_LAYOUT_PROVIDER)!;
164
-
165
- const parentFormItem = inject<PlainObject | null>(FORM_ITEM_LAYOUT_PROVIDER, null);
166
-
167
- /**
168
- * 文本宽度
169
- * @author 韦胜健
170
- * @date 2022.9.4 23:21
171
- */
172
- const labelWidth = computed((): number | string => {
173
- if (form.props.hideLabel) {
174
- return 0;
175
- }
176
- /*纵向文本表单情况下,文本宽度占用整行*/
177
- if (form.props.verticalLabel) {
178
- return '100%';
179
- }
180
- let width = props.labelWidth != null ? props.labelWidth : form.props.labelWidth;
181
-
182
- /*如果没有设置宽度,单列的情况下不设置宽度使得label自动撑开宽度,多列的情况下设置默认宽度*/
183
- if (width == null && form.props.column !== 1) {
184
- width = DefaultFormLabelWidth.value;
185
- } else {
186
- width = Number(width);
187
- }
188
- return width;
189
- });
190
-
191
- /**
192
- * 占用的列数
193
- * @author 韦胜健
194
- * @date 2022.9.4 23:22
195
- */
196
- const column = computed((): number => {
197
- let column = props.column || 1;
198
- if (props.block) {
199
- column = Number(form.props.column);
200
- }
201
- return Number(column);
202
- });
203
-
204
- /**
205
- * 冒号
206
- * @author 韦胜健
207
- * @date 2022.9.4 23:22
208
- */
209
- const colon = computed((): boolean => {
210
- if (props.colon != null) {
211
- return props.colon;
212
- } else {
213
- return form.props.colon;
214
- }
215
- });
216
-
217
- /**
218
- * 文本对其方式
219
- * @author 韦胜健
220
- * @date 2022.9.4 23:22
221
- */
222
- const labelAlign = computed(() => form.props.verticalLabel ? eFormLabelAlign.left : (props.labelAlign || form.props.labelAlign));
223
-
224
- /**
225
- * 内容对其方式
226
- * @author 韦胜健
227
- * @date 2022.9.4 23:22
228
- */
229
- const contentAlign = computed(() => props.contentAlign || form.props.contentAlign);
230
-
231
- const validateMessagePosition = computed(() => props.validateMessagePosition || form.validateMessagePosition.value);
232
- /**
233
- * 根节点样式
234
- * @author 韦胜健
235
- * @date 2022.9.4 23:23
236
- */
237
- const styles = useStyles((styles) => {
238
- styles.width = (() => {
239
- const totalColumn = Number(form.props.column);
240
- const itemColumn = column.value;
241
- if (itemColumn === totalColumn) {
242
- return '100%';
243
- }
244
- return `calc(${Number((itemColumn / totalColumn).toFixed(4)) * 100}%)`;
245
- })();
246
- styles.padding = `0 ${unit(form.gutter.value / 2)}`;
247
- if (!parentFormItem) {
248
- styles.margin = `${form.rowGutter.value / 2}px 0`;
249
- } else {
250
- styles.marginTop = `${form.rowGutter.value}px`;
251
- }
252
- });
253
-
254
- /**
255
- * label节点样式
256
- * @author 韦胜健
257
- * @date 2022.9.4 23:24
258
- */
259
- const labelStyles = useStyles(style => {
260
- if (!form.isSingleColumn.value) {
261
- if (labelWidth.value != null && !form.props.verticalLabel) {
262
- style.width = unit(labelWidth.value);
263
- }
264
- }
265
- });
266
- /**
267
- * content节点样式
268
- * @author 韦胜健
269
- * @date 2022/10/28 10:34
270
- */
271
- const contentStyles = useStyles(style => {
272
- if (!form.isSingleColumn.value) {
273
- if (labelWidth.value != null && !form.props.verticalLabel) {
274
- style.width = `calc(100% - ${unit(labelWidth.value)})`;
275
- }
276
- } else {
277
- style.width = unit((() => {
278
- if (props.singleColumnContentWidth) {
279
- return props.singleColumnContentWidth;
280
- }
281
- if (form.props.singleColumnContentWidth) {
282
- return form.props.singleColumnContentWidth;
283
- }
284
- if (form.props.column === 1 && !!form.props.labelWidth) {
285
- return `calc(100% - ${unit(form.props.labelWidth)})`;
286
- }
287
- return 400;
288
- })());
289
- }
290
- });
291
-
292
- const contentInnerStyles = useStyles(style => {
293
- if (props.negativeInnerMarginTop) {style.marginTop = `-${form.rowGutter.value}px`;}
294
- });
295
-
296
- const refer = {
297
- colon,
298
- labelAlign,
299
- contentAlign,
300
- styles,
301
- labelStyles,
302
- contentStyles,
303
- contentInnerStyles,
304
- form,
305
- validateMessagePosition,
306
- };
307
-
308
- provide(FORM_ITEM_LAYOUT_PROVIDER, refer);
309
-
310
- return refer;
311
- };
312
-
313
- return { useForm, useFormItem };
314
- })();
315
-
316
- /**
317
- * 不同尺寸下的默认列间距
318
- * @author 韦胜健
319
- * @date 2024.7.18 20:52
320
- */
321
- const FormSizeGutter: Record<typeof ThemeSize.TYPE, number> = {
322
- large: 16,
323
- normal: 12,
324
- small: 8,
325
- mini: 4,
326
- };
327
-
328
- export const FormValidateMessagePosition = createEnum([
329
- 'bottom-left',
330
- 'bottom-right',
331
- 'right'
332
- ] as const);
1
+ import {computed, ExtractPropTypes, inject, PropType, provide, useStyles} from "@peryl/react-compose";
2
+ import {createEnum} from "@peryl/utils/createEnum";
3
+ import {unit} from "@peryl/utils/unit";
4
+ import {removeUnit} from "@peryl/utils/removeUnit";
5
+ import {InputMode, ThemeSize, tStyleComputed} from "../../../uses/useStyle";
6
+ import ApplicationConfigurationProvider from "../../ApplicationConfigurationProvider";
7
+ import {PlainObject} from "@peryl/utils/event";
8
+
9
+ /**
10
+ * 表单的文本以及内容对齐方式
11
+ * @author 韦胜健
12
+ * @date 2022.9.4 23:06
13
+ */
14
+ export const eFormLabelAlign = createEnum(['left', 'center', 'right'] as const);
15
+
16
+ /**
17
+ * 表单的内容对其方式
18
+ * @author 韦胜健
19
+ * @date 2022.9.4 23:19
20
+ */
21
+ export const eFormContentAlign = createEnum([
22
+ 'left',
23
+ 'center',
24
+ 'right'
25
+ ] as const);
26
+
27
+ /**
28
+ * Form布局相关属性
29
+ * @author 韦胜健
30
+ * @date 2022.9.4 22:46
31
+ */
32
+ export const FormLayoutPropsOption = {
33
+ size: { type: String as PropType<typeof ThemeSize.TYPE> }, // 表单尺寸
34
+ column: { type: [String, Number] as PropType<string | number>, default: 1 }, // 多列表单的列数
35
+ columnGutter: { type: [Number, String] as PropType<string | number>, default: '16px' }, // 列之间的间距
36
+ singleColumnCenter: { type: Boolean as PropType<boolean> }, // 单列的时候会使得表单内容居中,表单文本标题不计宽度,设置该属性为true则使得文本宽度参与计算居中
37
+ labelWidth: { type: [String, Number] as PropType<string | number> }, // formItem 文本宽度
38
+ labelAlign: { type: String as PropType<typeof eFormLabelAlign.TYPE> }, // 文本对其方式
39
+ contentAlign: { type: String as PropType<typeof eFormContentAlign.TYPE> }, // 内容对其方式
40
+ singleColumnContentWidth: { type: Number }, // 单列的时候form item content的宽度
41
+ width: { type: [String, Number] as PropType<string | number>, }, // 表单宽度
42
+ colon: { type: Boolean as PropType<boolean>, default: true }, // label的冒号
43
+ verticalLabel: { type: Boolean as PropType<boolean> }, // 纵向的表单
44
+ gutter: { type: Number }, // 列间隔
45
+ rowGutter: { type: Number }, // 行间隔
46
+ validateMessagePosition: { type: String as PropType<typeof FormValidateMessagePosition.TYPE> }, // 校验消息的位置
47
+ hideLabel: { type: Boolean }, // 隐藏form-item的label
48
+ inputMode: { type: String as PropType<typeof InputMode.TYPE> }, // 内部Input的类型mode
49
+ } as const;
50
+
51
+ /**
52
+ * FormLayoutProps属性类型
53
+ * @author 韦胜健
54
+ * @date 2022.9.4 22:48
55
+ */
56
+ export type tFormLayoutPropsType = ExtractPropTypes<typeof FormLayoutPropsOption>;
57
+
58
+ /**
59
+ * FormItem布局相关属性
60
+ * @author 韦胜健
61
+ * @date 2022.9.4 22:46
62
+ */
63
+ export const FormItemLayoutPropsOption = {
64
+ hideLabel: { type: Boolean }, // 隐藏label
65
+ labelWidth: { type: [String, Number] as PropType<string | number> }, // 显示文本宽度
66
+ column: { type: [String, Number] as PropType<string | number>, default: 1 }, // 多列表单的列数
67
+ block: { type: Boolean as PropType<boolean> }, // 占用一行
68
+ labelAlign: { type: String as PropType<typeof eFormLabelAlign.TYPE> }, // label 对齐方式
69
+ contentAlign: { type: String as PropType<typeof eFormContentAlign.TYPE> }, // content 对齐方式
70
+ singleColumnContentWidth: { type: Number }, // 单列的时候form item content的宽度
71
+ colon: { type: Boolean as PropType<boolean | null>, default: null }, // label的冒号
72
+ validateMessagePosition: { type: String as PropType<typeof FormValidateMessagePosition.TYPE> }, // 校验消息的位置
73
+ negativeInnerMarginTop: { type: Boolean }, // inner节点启用负的marginTop值
74
+ tip: { type: [String, Function] as PropType<string | (() => any)> }, // 提示说明
75
+ } as const;
76
+
77
+ /**
78
+ * FormItemLayoutProps属性类型
79
+ * @author 韦胜健
80
+ * @date 2022.9.4 22:49
81
+ */
82
+ export type tFormItemLayoutPropsType = ExtractPropTypes<typeof FormItemLayoutPropsOption>
83
+
84
+ /**
85
+ * 默认的文本宽度
86
+ * @author 韦胜健
87
+ * @date 2022.9.4 23:21
88
+ */
89
+ export const DefaultFormLabelWidth = (() => {
90
+ let value = '150px';
91
+ return { value };
92
+ })();
93
+
94
+ /**
95
+ * 布局组合
96
+ * @author 韦胜健
97
+ * @date 2022.9.4 22:50
98
+ */
99
+ export const useFormLayout = (() => {
100
+
101
+ const FORM_LAYOUT_PROVIDER = '@@FORM_LAYOUT_PROVIDER';
102
+ const FORM_ITEM_LAYOUT_PROVIDER = '@@FORM_ITEM_LAYOUT_PROVIDER';
103
+
104
+ const useForm = (props: tFormLayoutPropsType, styleComputed: tStyleComputed) => {
105
+
106
+ const configuration = ApplicationConfigurationProvider.inject();
107
+
108
+ /*是否为单列*/
109
+ const isSingleColumn = computed(() => props.column === 1);
110
+ /*列间距*/
111
+ const gutter = computed((): number => {
112
+ if (props.gutter != null) {
113
+ return removeUnit(props.gutter) as any;
114
+ }
115
+ /*单列的情况下不设置列间距*/
116
+ return isSingleColumn.value ? 0 : FormSizeGutter[styleComputed.value.size];
117
+ });
118
+ /*行间距*/
119
+ const rowGutter = computed((): number => {
120
+ if (props.inputMode === 'text') {return 4;}
121
+ if (props.rowGutter != null) {
122
+ return removeUnit(props.rowGutter) as any;
123
+ }
124
+ return Math.max(
125
+ 1.25 * ((removeUnit(configuration.value.theme.vars[`margin-${styleComputed.value.size}`]) || 0) as number),
126
+ 14,
127
+ );
128
+ });
129
+ /*校验消息的位置*/
130
+ const validateMessagePosition = computed(() => {
131
+ if (!!props.validateMessagePosition) {return props.validateMessagePosition;}
132
+
133
+ /*纵向文本的情况下,校验消息默认放在左下角*/
134
+ if (props.verticalLabel) {return FormValidateMessagePosition["bottom-right"];}
135
+ if (isSingleColumn.value) {
136
+ /*单列的情况下,校验消息默认放在右侧*/
137
+ return FormValidateMessagePosition['right'];
138
+ } else {
139
+ /*其他都放在右下角*/
140
+ return FormValidateMessagePosition['bottom-right'];
141
+ }
142
+ });
143
+ /*根节点样式*/
144
+ const styles = useStyles((styles) => {
145
+ if (!isSingleColumn.value) {
146
+ // styles.padding = `${rowGutter.value / 2}px ${gutter.value}px`;
147
+ }
148
+ });
149
+ /*inner节点样式,有列间距时拓展宽度*/
150
+ const innerStyles = useStyles(style => {
151
+ if (!isSingleColumn.value && !!gutter.value) {
152
+ style.width = `calc(100% + ${unit(gutter.value)})`;
153
+ }
154
+ style.margin = `${-rowGutter.value / 2}px ${unit(-gutter.value / 2)}`;
155
+ });
156
+ const refer = { props, styles, gutter, rowGutter, innerStyles, isSingleColumn, validateMessagePosition };
157
+ provide(FORM_LAYOUT_PROVIDER, refer);
158
+ return refer;
159
+ };
160
+
161
+ const useFormItem = (props: tFormItemLayoutPropsType) => {
162
+
163
+ const form = inject<ReturnType<typeof useForm>>(FORM_LAYOUT_PROVIDER)!;
164
+
165
+ const parentFormItem = inject<PlainObject | null>(FORM_ITEM_LAYOUT_PROVIDER, null);
166
+
167
+ /**
168
+ * 文本宽度
169
+ * @author 韦胜健
170
+ * @date 2022.9.4 23:21
171
+ */
172
+ const labelWidth = computed((): number | string => {
173
+ if (form.props.hideLabel) {
174
+ return 0;
175
+ }
176
+ /*纵向文本表单情况下,文本宽度占用整行*/
177
+ if (form.props.verticalLabel) {
178
+ return '100%';
179
+ }
180
+ let width = props.labelWidth != null ? props.labelWidth : form.props.labelWidth;
181
+
182
+ /*如果没有设置宽度,单列的情况下不设置宽度使得label自动撑开宽度,多列的情况下设置默认宽度*/
183
+ if (width == null && form.props.column !== 1) {
184
+ width = DefaultFormLabelWidth.value;
185
+ } else {
186
+ width = Number(width);
187
+ }
188
+ return width;
189
+ });
190
+
191
+ /**
192
+ * 占用的列数
193
+ * @author 韦胜健
194
+ * @date 2022.9.4 23:22
195
+ */
196
+ const column = computed((): number => {
197
+ let column = props.column || 1;
198
+ if (props.block) {
199
+ column = Number(form.props.column);
200
+ }
201
+ return Number(column);
202
+ });
203
+
204
+ /**
205
+ * 冒号
206
+ * @author 韦胜健
207
+ * @date 2022.9.4 23:22
208
+ */
209
+ const colon = computed((): boolean => {
210
+ if (props.colon != null) {
211
+ return props.colon;
212
+ } else {
213
+ return form.props.colon;
214
+ }
215
+ });
216
+
217
+ /**
218
+ * 文本对其方式
219
+ * @author 韦胜健
220
+ * @date 2022.9.4 23:22
221
+ */
222
+ const labelAlign = computed(() => form.props.verticalLabel ? eFormLabelAlign.left : (props.labelAlign || form.props.labelAlign));
223
+
224
+ /**
225
+ * 内容对其方式
226
+ * @author 韦胜健
227
+ * @date 2022.9.4 23:22
228
+ */
229
+ const contentAlign = computed(() => props.contentAlign || form.props.contentAlign);
230
+
231
+ const validateMessagePosition = computed(() => props.validateMessagePosition || form.validateMessagePosition.value);
232
+ /**
233
+ * 根节点样式
234
+ * @author 韦胜健
235
+ * @date 2022.9.4 23:23
236
+ */
237
+ const styles = useStyles((styles) => {
238
+ styles.width = (() => {
239
+ const totalColumn = Number(form.props.column);
240
+ const itemColumn = column.value;
241
+ if (itemColumn === totalColumn) {
242
+ return '100%';
243
+ }
244
+ return `calc(${Number((itemColumn / totalColumn).toFixed(4)) * 100}%)`;
245
+ })();
246
+ styles.padding = `0 ${unit(form.gutter.value / 2)}`;
247
+ if (!parentFormItem) {
248
+ styles.margin = `${form.rowGutter.value / 2}px 0`;
249
+ } else {
250
+ styles.marginTop = `${form.rowGutter.value}px`;
251
+ }
252
+ });
253
+
254
+ /**
255
+ * label节点样式
256
+ * @author 韦胜健
257
+ * @date 2022.9.4 23:24
258
+ */
259
+ const labelStyles = useStyles(style => {
260
+ if (!form.isSingleColumn.value) {
261
+ if (labelWidth.value != null && !form.props.verticalLabel) {
262
+ style.width = unit(labelWidth.value);
263
+ }
264
+ }
265
+ });
266
+ /**
267
+ * content节点样式
268
+ * @author 韦胜健
269
+ * @date 2022/10/28 10:34
270
+ */
271
+ const contentStyles = useStyles(style => {
272
+ if (!form.isSingleColumn.value) {
273
+ if (labelWidth.value != null && !form.props.verticalLabel) {
274
+ style.width = `calc(100% - ${unit(labelWidth.value)})`;
275
+ }
276
+ } else {
277
+ style.width = unit((() => {
278
+ if (props.singleColumnContentWidth) {
279
+ return props.singleColumnContentWidth;
280
+ }
281
+ if (form.props.singleColumnContentWidth) {
282
+ return form.props.singleColumnContentWidth;
283
+ }
284
+ if (form.props.column === 1 && !!form.props.labelWidth) {
285
+ return `calc(100% - ${unit(form.props.labelWidth)})`;
286
+ }
287
+ return 400;
288
+ })());
289
+ }
290
+ });
291
+
292
+ const contentInnerStyles = useStyles(style => {
293
+ if (props.negativeInnerMarginTop) {style.marginTop = `-${form.rowGutter.value}px`;}
294
+ });
295
+
296
+ const refer = {
297
+ colon,
298
+ labelAlign,
299
+ contentAlign,
300
+ styles,
301
+ labelStyles,
302
+ contentStyles,
303
+ contentInnerStyles,
304
+ form,
305
+ validateMessagePosition,
306
+ };
307
+
308
+ provide(FORM_ITEM_LAYOUT_PROVIDER, refer);
309
+
310
+ return refer;
311
+ };
312
+
313
+ return { useForm, useFormItem };
314
+ })();
315
+
316
+ /**
317
+ * 不同尺寸下的默认列间距
318
+ * @author 韦胜健
319
+ * @date 2024.7.18 20:52
320
+ */
321
+ const FormSizeGutter: Record<typeof ThemeSize.TYPE, number> = {
322
+ large: 16,
323
+ normal: 12,
324
+ small: 8,
325
+ mini: 4,
326
+ };
327
+
328
+ export const FormValidateMessagePosition = createEnum([
329
+ 'bottom-left',
330
+ 'bottom-right',
331
+ 'right'
332
+ ] as const);