@gm-pc/react 1.24.9-beta.11 → 1.24.9-beta.13

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 (399) hide show
  1. package/package.json +3 -3
  2. package/src/common/hooks/index.ts +5 -5
  3. package/src/common/hooks/use_form/index.ts +2 -2
  4. package/src/common/hooks/use_form/use_form.ts +184 -184
  5. package/src/common/hooks/use_form/utils.ts +23 -23
  6. package/src/common/hooks/use_mutation_observer.ts +19 -19
  7. package/src/common/utils/date.ts +28 -28
  8. package/src/common/utils/get_record_partical_object.ts +4 -4
  9. package/src/common/utils/index.ts +3 -3
  10. package/src/common/utils/utils.ts +16 -16
  11. package/src/component/affix/affix.tsx +31 -31
  12. package/src/component/affix/index.ts +2 -2
  13. package/src/component/affix/stories.tsx +16 -16
  14. package/src/component/affix/style.less +3 -3
  15. package/src/component/auto_complete/auto_complete.tsx +202 -202
  16. package/src/component/auto_complete/index.ts +6 -6
  17. package/src/component/auto_complete/stories.tsx +37 -37
  18. package/src/component/auto_full/auto_full.tsx +36 -36
  19. package/src/component/auto_full/index.ts +1 -1
  20. package/src/component/box/box.tsx +29 -29
  21. package/src/component/box/box_form.tsx +83 -83
  22. package/src/component/box/box_pagination.tsx +12 -12
  23. package/src/component/box/box_panel.tsx +91 -91
  24. package/src/component/box/box_table.tsx +57 -57
  25. package/src/component/box/index.ts +10 -10
  26. package/src/component/box/stories.tsx +119 -119
  27. package/src/component/box/style.less +41 -41
  28. package/src/component/button/button.tsx +94 -94
  29. package/src/component/button/button_text.tsx +33 -33
  30. package/src/component/button/index.ts +4 -4
  31. package/src/component/button/stories.tsx +131 -131
  32. package/src/component/button/style.less +158 -158
  33. package/src/component/calendar/calendar.tsx +25 -25
  34. package/src/component/calendar/content.tsx +87 -87
  35. package/src/component/calendar/day.tsx +106 -106
  36. package/src/component/calendar/head.tsx +244 -244
  37. package/src/component/calendar/index.ts +4 -4
  38. package/src/component/calendar/range_calendar.tsx +121 -121
  39. package/src/component/calendar/stories.tsx +54 -54
  40. package/src/component/calendar/style.less +136 -136
  41. package/src/component/calendar/types.ts +54 -54
  42. package/src/component/calendar/week.tsx +27 -27
  43. package/src/component/card/card.tsx +148 -148
  44. package/src/component/card/form_card.tsx +42 -42
  45. package/src/component/card/index.ts +2 -2
  46. package/src/component/card/stories.tsx +90 -90
  47. package/src/component/card/style.less +125 -125
  48. package/src/component/checkbox/checkbox.tsx +75 -75
  49. package/src/component/checkbox/checkbox_group.tsx +51 -51
  50. package/src/component/checkbox/index.ts +5 -5
  51. package/src/component/checkbox/stories.tsx +152 -152
  52. package/src/component/checkbox/style.less +73 -73
  53. package/src/component/checkbox/util.ts +19 -19
  54. package/src/component/collapse/collapse.tsx +27 -27
  55. package/src/component/collapse/index.ts +2 -2
  56. package/src/component/collapse/stories.tsx +21 -21
  57. package/src/component/color_picker/color_list.ts +34 -34
  58. package/src/component/color_picker/color_picker.tsx +43 -43
  59. package/src/component/color_picker/color_select.tsx +97 -97
  60. package/src/component/color_picker/index.ts +2 -2
  61. package/src/component/color_picker/stories.tsx +20 -20
  62. package/src/component/color_picker/style.less +41 -41
  63. package/src/component/config_provider/config_provider.tsx +16 -16
  64. package/src/component/config_provider/context.ts +10 -10
  65. package/src/component/config_provider/index.ts +3 -3
  66. package/src/component/controlled_form/context.tsx +18 -18
  67. package/src/component/controlled_form/controlled_form.tsx +141 -141
  68. package/src/component/controlled_form/index.ts +8 -8
  69. package/src/component/controlled_form/items/index.tsx +115 -115
  70. package/src/component/controlled_form/items/utils.ts +132 -132
  71. package/src/component/controlled_form/stories/components/date_range_filter.tsx +83 -83
  72. package/src/component/controlled_form/stories/components/index.ts +2 -2
  73. package/src/component/controlled_form/stories/components/search_filter.tsx +52 -52
  74. package/src/component/controlled_form/stories/stories.tsx +372 -372
  75. package/src/component/date_picker/date_picker.tsx +183 -183
  76. package/src/component/date_picker/index.ts +2 -2
  77. package/src/component/date_picker/overlay.tsx +106 -106
  78. package/src/component/date_picker/stories.tsx +108 -108
  79. package/src/component/date_picker/style.less +23 -23
  80. package/src/component/date_picker/time_select.tsx +58 -58
  81. package/src/component/date_picker/types.ts +7 -7
  82. package/src/component/date_range_picker/date_range_picker.tsx +144 -144
  83. package/src/component/date_range_picker/index.ts +2 -2
  84. package/src/component/date_range_picker/left.tsx +107 -107
  85. package/src/component/date_range_picker/overlay.tsx +204 -204
  86. package/src/component/date_range_picker/stories.tsx +181 -181
  87. package/src/component/date_range_picker/style.less +41 -41
  88. package/src/component/date_range_picker/time_range_select.tsx +144 -144
  89. package/src/component/date_range_picker/two.tsx +108 -108
  90. package/src/component/date_range_picker/types.ts +42 -42
  91. package/src/component/date_range_picker/util.ts +11 -11
  92. package/src/component/dialog/alert.tsx +38 -38
  93. package/src/component/dialog/confirm.tsx +120 -120
  94. package/src/component/dialog/delete_com.tsx +27 -27
  95. package/src/component/dialog/dialog.tsx +70 -70
  96. package/src/component/dialog/index.ts +16 -16
  97. package/src/component/dialog/prompt.tsx +95 -95
  98. package/src/component/dialog/stories.tsx +195 -195
  99. package/src/component/dialog/types.ts +70 -70
  100. package/src/component/divider/divider.tsx +25 -25
  101. package/src/component/divider/index.ts +2 -2
  102. package/src/component/divider/stories.tsx +14 -14
  103. package/src/component/divider/style.less +29 -29
  104. package/src/component/flex/flex.tsx +133 -133
  105. package/src/component/flex/index.ts +2 -2
  106. package/src/component/flex/stories.tsx +17 -17
  107. package/src/component/flex/style.less +105 -105
  108. package/src/component/flip_number/flip_number.tsx +209 -209
  109. package/src/component/flip_number/index.ts +2 -2
  110. package/src/component/flip_number/stories.tsx +28 -28
  111. package/src/component/flip_number/utils.ts +58 -58
  112. package/src/component/form/context.tsx +15 -15
  113. package/src/component/form/form.tsx +142 -142
  114. package/src/component/form/form_block.tsx +39 -39
  115. package/src/component/form/form_button.tsx +28 -28
  116. package/src/component/form/form_group.tsx +157 -157
  117. package/src/component/form/form_item.tsx +141 -141
  118. package/src/component/form/form_panel.tsx +63 -63
  119. package/src/component/form/index.ts +15 -15
  120. package/src/component/form/stories.tsx +448 -448
  121. package/src/component/form/style.less +159 -159
  122. package/src/component/form/types.ts +110 -110
  123. package/src/component/function_set/function_set.tsx +84 -84
  124. package/src/component/function_set/index.ts +2 -2
  125. package/src/component/function_set/overlay.tsx +41 -41
  126. package/src/component/function_set/stories.tsx +71 -71
  127. package/src/component/function_set/types.ts +15 -15
  128. package/src/component/function_set/utils.ts +21 -21
  129. package/src/component/grid/col.tsx +55 -55
  130. package/src/component/grid/index.ts +3 -3
  131. package/src/component/grid/mixin.less +48 -48
  132. package/src/component/grid/row.tsx +27 -27
  133. package/src/component/grid/stories.tsx +65 -65
  134. package/src/component/grid/style.less +27 -27
  135. package/src/component/grid/types.ts +35 -35
  136. package/src/component/grid/util.ts +12 -12
  137. package/src/component/icon_down_up/icon_down_up.tsx +22 -22
  138. package/src/component/icon_down_up/index.ts +2 -2
  139. package/src/component/icon_down_up/stories.tsx +21 -21
  140. package/src/component/icon_down_up/style.less +10 -10
  141. package/src/component/icon_expand/icon_expand.tsx +22 -22
  142. package/src/component/icon_expand/index.ts +1 -1
  143. package/src/component/img_uploader/img_uploader.tsx +168 -168
  144. package/src/component/img_uploader/index.ts +2 -2
  145. package/src/component/img_uploader/stories.tsx +58 -58
  146. package/src/component/img_uploader/style.less +22 -22
  147. package/src/component/input/index.ts +5 -5
  148. package/src/component/input/input.tsx +24 -24
  149. package/src/component/input/input_close.tsx +51 -51
  150. package/src/component/input/stories.tsx +56 -56
  151. package/src/component/input/style.less +33 -33
  152. package/src/component/input_number/index.ts +2 -2
  153. package/src/component/input_number/input_number.tsx +115 -115
  154. package/src/component/input_number/stories.tsx +27 -27
  155. package/src/component/input_number/style.less +10 -10
  156. package/src/component/input_number/utils.ts +44 -44
  157. package/src/component/label/index.tsx +19 -19
  158. package/src/component/label/stories.tsx +26 -26
  159. package/src/component/label/style.less +34 -34
  160. package/src/component/layout_root/index.ts +2 -2
  161. package/src/component/layout_root/layout_root.tsx +116 -116
  162. package/src/component/layout_root/types.ts +38 -38
  163. package/src/component/level_list/index.ts +2 -2
  164. package/src/component/level_list/level_item.tsx +79 -79
  165. package/src/component/level_list/level_list.tsx +123 -123
  166. package/src/component/level_list/stories/constants.ts +72 -72
  167. package/src/component/level_list/stories/stories.tsx +87 -87
  168. package/src/component/level_list/style.less +41 -41
  169. package/src/component/level_list/types.ts +36 -36
  170. package/src/component/level_list/utils.ts +19 -19
  171. package/src/component/level_select/index.ts +7 -7
  172. package/src/component/level_select/level_select.tsx +216 -216
  173. package/src/component/level_select/multiple_level_select.tsx +104 -104
  174. package/src/component/level_select/stories.tsx +102 -102
  175. package/src/component/level_select/types.ts +38 -38
  176. package/src/component/level_select/util.ts +20 -20
  177. package/src/component/list/base.tsx +129 -129
  178. package/src/component/list/index.ts +3 -3
  179. package/src/component/list/list.tsx +61 -61
  180. package/src/component/list/stories.tsx +113 -113
  181. package/src/component/list/style.less +58 -58
  182. package/src/component/list/types.ts +37 -37
  183. package/src/component/loading/index.ts +10 -10
  184. package/src/component/loading/loading.tsx +26 -26
  185. package/src/component/loading/loading_chunk.tsx +37 -37
  186. package/src/component/loading/loading_full_screen.tsx +45 -45
  187. package/src/component/loading/stories.tsx +43 -43
  188. package/src/component/loading/style.less +69 -69
  189. package/src/component/loading/types.ts +30 -30
  190. package/src/component/mask/index.ts +2 -2
  191. package/src/component/mask/mask.tsx +22 -22
  192. package/src/component/mask/style.less +10 -10
  193. package/src/component/modal/clean_modal.tsx +14 -14
  194. package/src/component/modal/index.ts +5 -5
  195. package/src/component/modal/modal.tsx +145 -145
  196. package/src/component/modal/right_side_modal.tsx +22 -22
  197. package/src/component/modal/stories.tsx +132 -132
  198. package/src/component/modal/style.less +138 -138
  199. package/src/component/modal/types.ts +27 -27
  200. package/src/component/more_select/base.tsx +408 -408
  201. package/src/component/more_select/index.ts +6 -6
  202. package/src/component/more_select/more_select.tsx +137 -137
  203. package/src/component/more_select/render_list_filter.ts +39 -39
  204. package/src/component/more_select/stories.tsx +323 -323
  205. package/src/component/more_select/style.less +72 -72
  206. package/src/component/more_select/types.ts +114 -114
  207. package/src/component/multiple_selection/index.ts +2 -2
  208. package/src/component/multiple_selection/multiple_selection.tsx +118 -118
  209. package/src/component/multiple_selection/stories.tsx +37 -37
  210. package/src/component/multiple_selection/style.less +57 -57
  211. package/src/component/n_progress/index.ts +1 -1
  212. package/src/component/n_progress/n_progress.tsx +39 -39
  213. package/src/component/n_progress/stories.tsx +25 -25
  214. package/src/component/n_progress/style.less +39 -39
  215. package/src/component/nav/a.tsx +7 -7
  216. package/src/component/nav/index.ts +10 -10
  217. package/src/component/nav/nav.tsx +114 -114
  218. package/src/component/nav/nav_item.tsx +98 -98
  219. package/src/component/nav/nav_single_item.tsx +28 -28
  220. package/src/component/nav/popup.tsx +100 -100
  221. package/src/component/nav/portal.ts +17 -17
  222. package/src/component/nav/stories.tsx +152 -152
  223. package/src/component/nav/style.less +246 -246
  224. package/src/component/nav/types.ts +93 -93
  225. package/src/component/pagination/index.ts +2 -2
  226. package/src/component/pagination/left.tsx +45 -45
  227. package/src/component/pagination/page_with_count.tsx +115 -115
  228. package/src/component/pagination/page_without_count.tsx +64 -64
  229. package/src/component/pagination/pagination.tsx +23 -23
  230. package/src/component/pagination/right.tsx +78 -78
  231. package/src/component/pagination/stories.tsx +62 -62
  232. package/src/component/pagination/style.less +51 -51
  233. package/src/component/pagination/types.ts +16 -16
  234. package/src/component/pagination/util.ts +7 -7
  235. package/src/component/popover/index.ts +2 -2
  236. package/src/component/popover/popover.tsx +279 -279
  237. package/src/component/popover/stories.tsx +104 -104
  238. package/src/component/popover/types.ts +25 -25
  239. package/src/component/popover/utils.ts +22 -22
  240. package/src/component/popup/element_in_viewport.ts +33 -33
  241. package/src/component/popup/index.ts +4 -4
  242. package/src/component/popup/popup.tsx +149 -149
  243. package/src/component/popup/popup_content_confirm.tsx +106 -106
  244. package/src/component/popup/style.less +107 -107
  245. package/src/component/price/constant.ts +4 -4
  246. package/src/component/price/event_bus.ts +13 -13
  247. package/src/component/price/index.ts +2 -2
  248. package/src/component/price/price.tsx +152 -152
  249. package/src/component/price/stories.tsx +22 -22
  250. package/src/component/progress/index.ts +2 -2
  251. package/src/component/progress/progress.tsx +53 -53
  252. package/src/component/progress/stories.tsx +20 -20
  253. package/src/component/progress/style.less +35 -35
  254. package/src/component/progress_circle/index.ts +2 -2
  255. package/src/component/progress_circle/progress_circle.tsx +85 -85
  256. package/src/component/progress_circle/stories.tsx +31 -31
  257. package/src/component/progress_circle/style.less +21 -21
  258. package/src/component/radio/index.ts +5 -5
  259. package/src/component/radio/radio.tsx +72 -72
  260. package/src/component/radio/radio_group.tsx +48 -48
  261. package/src/component/radio/stories.tsx +103 -103
  262. package/src/component/radio/style.less +56 -56
  263. package/src/component/radio/util.ts +19 -19
  264. package/src/component/recommend_input/index.ts +2 -2
  265. package/src/component/recommend_input/recommend_input.tsx +100 -100
  266. package/src/component/recommend_input/stories.tsx +47 -47
  267. package/src/component/recommend_input/style.less +25 -25
  268. package/src/component/select/index.ts +2 -2
  269. package/src/component/select/select.tsx +171 -171
  270. package/src/component/select/stories.tsx +140 -140
  271. package/src/component/select/style.less +4 -4
  272. package/src/component/select/types.ts +29 -29
  273. package/src/component/selection/index.ts +2 -2
  274. package/src/component/selection/selection.tsx +162 -162
  275. package/src/component/selection/stories.tsx +45 -45
  276. package/src/component/selection/style.less +65 -65
  277. package/src/component/steps/index.ts +2 -2
  278. package/src/component/steps/steps.tsx +61 -61
  279. package/src/component/steps/stories.tsx +18 -18
  280. package/src/component/steps/style.less +39 -39
  281. package/src/component/storage/index.ts +1 -1
  282. package/src/component/storage/storage.ts +7 -7
  283. package/src/component/storage/stories.tsx +7 -7
  284. package/src/component/switch/index.ts +2 -2
  285. package/src/component/switch/stories.tsx +39 -39
  286. package/src/component/switch/style.less +60 -60
  287. package/src/component/switch/switch.tsx +127 -127
  288. package/src/component/table_select/index.ts +2 -2
  289. package/src/component/table_select/stories.tsx +97 -97
  290. package/src/component/table_select/style.less +20 -20
  291. package/src/component/table_select/table_select.tsx +92 -92
  292. package/src/component/table_select/types.ts +30 -30
  293. package/src/component/table_select/util.ts +15 -15
  294. package/src/component/tabs/index.ts +2 -2
  295. package/src/component/tabs/stories.tsx +172 -172
  296. package/src/component/tabs/style.less +149 -149
  297. package/src/component/tabs/tabs.tsx +232 -232
  298. package/src/component/textarea/index.ts +3 -3
  299. package/src/component/textarea/stories.tsx +37 -37
  300. package/src/component/textarea/style.less +12 -12
  301. package/src/component/textarea/textarea.tsx +22 -22
  302. package/src/component/time_span/index.ts +4 -4
  303. package/src/component/time_span/stories.tsx +87 -87
  304. package/src/component/time_span/style.less +45 -45
  305. package/src/component/time_span/time_span.tsx +129 -129
  306. package/src/component/time_span/time_span_picker.tsx +71 -71
  307. package/src/component/time_span/types.ts +58 -58
  308. package/src/component/time_span/util.ts +18 -18
  309. package/src/component/tip/index.ts +2 -2
  310. package/src/component/tip/stories.tsx +44 -44
  311. package/src/component/tip/style.less +53 -53
  312. package/src/component/tip/tip.tsx +95 -95
  313. package/src/component/tip/types.ts +20 -20
  314. package/src/component/tooltip/index.ts +2 -2
  315. package/src/component/tooltip/stories.tsx +32 -32
  316. package/src/component/tooltip/tooltip.tsx +40 -40
  317. package/src/component/transfer/index.ts +2 -2
  318. package/src/component/transfer/stories.tsx +140 -140
  319. package/src/component/transfer/transfer.tsx +147 -147
  320. package/src/component/transfer/types.ts +42 -42
  321. package/src/component/tree/bottom.tsx +34 -34
  322. package/src/component/tree/find.tsx +73 -73
  323. package/src/component/tree/index.ts +2 -2
  324. package/src/component/tree/item.tsx +75 -75
  325. package/src/component/tree/list.tsx +123 -123
  326. package/src/component/tree/search.tsx +29 -29
  327. package/src/component/tree/stories.tsx +309 -309
  328. package/src/component/tree/style.less +35 -35
  329. package/src/component/tree/tree.tsx +238 -238
  330. package/src/component/tree/types.ts +155 -155
  331. package/src/component/tree/util.ts +208 -208
  332. package/src/component/uploader/default_container.tsx +24 -24
  333. package/src/component/uploader/default_image.tsx +15 -15
  334. package/src/component/uploader/index.ts +10 -10
  335. package/src/component/uploader/stories.tsx +53 -53
  336. package/src/component/uploader/style.less +22 -22
  337. package/src/component/uploader/types.ts +25 -25
  338. package/src/component/uploader/uploader.tsx +62 -62
  339. package/src/component/v_browser/context/browser.ts +7 -7
  340. package/src/component/v_browser/context/browserWindow.ts +7 -7
  341. package/src/component/v_browser/hooks/useWindowEffect.ts +53 -53
  342. package/src/component/v_browser/index.ts +4 -4
  343. package/src/component/v_browser/types.ts +46 -46
  344. package/src/component/v_browser/ui/iframe_portal.tsx +28 -28
  345. package/src/component/v_browser/ui/index.tsx +213 -213
  346. package/src/component/v_browser/ui/style.less +113 -113
  347. package/src/component/v_browser/ui/window_wrapper.tsx +74 -74
  348. package/src/component/v_browser/v_browser.stories.mdx +128 -128
  349. package/src/component/v_browser/v_browser.tsx +287 -287
  350. package/src/css/base.less +64 -64
  351. package/src/css/bg.less +52 -52
  352. package/src/css/border.less +40 -40
  353. package/src/css/cursor.less +19 -19
  354. package/src/css/display.less +16 -16
  355. package/src/css/distance.less +93 -93
  356. package/src/css/error.less +8 -8
  357. package/src/css/other.less +15 -15
  358. package/src/css/overflow.less +23 -23
  359. package/src/css/position.less +11 -11
  360. package/src/css/svg.less +48 -48
  361. package/src/css/text.less +127 -127
  362. package/src/css/var/mixin.less +75 -75
  363. package/src/css/var/variables.less +125 -125
  364. package/src/event_type.ts +11 -11
  365. package/src/index.less +64 -64
  366. package/src/index.ts +61 -61
  367. package/src/svg/calendar-month.svg +8 -8
  368. package/src/svg/calendar-year.svg +13 -13
  369. package/src/svg/calendar.svg +17 -17
  370. package/src/svg/check-detail.svg +18 -18
  371. package/src/svg/close-circle.svg +13 -13
  372. package/src/svg/close-square.svg +12 -12
  373. package/src/svg/closeup.svg +20 -20
  374. package/src/svg/delete.svg +10 -10
  375. package/src/svg/down-small.svg +1 -1
  376. package/src/svg/down.svg +1 -1
  377. package/src/svg/edit-box.svg +17 -17
  378. package/src/svg/edit-pen.svg +17 -17
  379. package/src/svg/empty.svg +27 -27
  380. package/src/svg/expand.svg +21 -21
  381. package/src/svg/left-small.svg +1 -1
  382. package/src/svg/more.svg +10 -10
  383. package/src/svg/next.svg +40 -40
  384. package/src/svg/pen.svg +12 -12
  385. package/src/svg/remove.svg +1 -1
  386. package/src/svg/right-small.svg +1 -1
  387. package/src/svg/search.svg +8 -8
  388. package/src/svg/setting.svg +17 -17
  389. package/src/svg/up-small.svg +1 -1
  390. package/src/svg/up.svg +1 -1
  391. package/src/svg/vbrowser-tab-delete.svg +8 -8
  392. package/src/svg/vbrowser-tab-left.svg +8 -8
  393. package/src/svg/vbrowser-tab-right.svg +8 -8
  394. package/src/types.ts +33 -33
  395. package/src/validator/index.ts +16 -16
  396. package/src/validator/rules.ts +61 -61
  397. package/src/validator/types.ts +10 -10
  398. package/src/validator/validator.ts +95 -95
  399. package/src/var.less +2 -2
@@ -1,119 +1,119 @@
1
- import React from 'react'
2
- import Box from './box'
3
- import { BoxTable, BoxTableInfo } from './box_table'
4
- import BoxPagination from './box_pagination'
5
- import { BoxForm, BoxFormMore } from './box_form'
6
- import BoxPanel from './box_panel'
7
- import { FormItem, FormBlock, FormButton } from '../form'
8
- import { Button } from '../button'
9
- import { Price } from '../price'
10
- import { Pagination } from '../pagination'
11
-
12
- export const ComBox = () => (
13
- <div>
14
- <Box>这是一块内容</Box>
15
- <Box>这是一块内容,内容直接会有 border </Box>
16
- <Box hasGap>这是一块内容,切有内边距</Box>
17
- </div>
18
- )
19
-
20
- export const ComBoxTable = () => (
21
- <div>
22
- <BoxTable
23
- info={<BoxTableInfo>这是左边的内容</BoxTableInfo>}
24
- action={<div>这是右边的内容</div>}
25
- >
26
- <div>真正的内容</div>
27
- </BoxTable>
28
- </div>
29
- )
30
-
31
- export const ComBoxPagination = () => (
32
- <div>
33
- <BoxPagination>
34
- <Pagination
35
- paging={{
36
- offset: 0,
37
- limit: 10,
38
- need_count: true,
39
- count: 100,
40
- has_more: true,
41
- }}
42
- onChange={() => {
43
- // something
44
- }}
45
- />
46
- </BoxPagination>
47
- </div>
48
- )
49
-
50
- export const ComBoxForm = () => (
51
- <div>
52
- <div>一定要用 FormBlock 包起来</div>
53
- <BoxForm labelWidth='4em'>
54
- <FormBlock col={3}>
55
- <FormItem label='商品'>
56
- <input type='text' />
57
- </FormItem>
58
- <FormItem label='啦啦'>
59
- <input type='text' />
60
- </FormItem>
61
- </FormBlock>
62
- <BoxFormMore>
63
- <FormBlock col={3}>
64
- <FormItem label='商品'>
65
- <input type='text' />
66
- </FormItem>
67
- <FormItem label='啦啦'>
68
- <input type='text' />
69
- </FormItem>
70
- <FormItem label='商品'>
71
- <input type='text' />
72
- </FormItem>
73
- <FormItem label='啦啦'>
74
- <input type='text' />
75
- </FormItem>
76
- <FormItem label='商品'>
77
- <input type='text' />
78
- </FormItem>
79
- <FormItem label='啦啦'>
80
- <input type='text' />
81
- </FormItem>
82
- </FormBlock>
83
- </BoxFormMore>
84
- <FormButton>
85
- <Button type='primary' htmlType='submit'>
86
- 搜索
87
- </Button>
88
- <BoxFormMore>
89
- <Button type='link'>重置</Button>
90
- </BoxFormMore>
91
- </FormButton>
92
- </BoxForm>
93
- </div>
94
- )
95
-
96
- export const ComBoxPanel = () => <BoxPanel title='商品明细'>lalala</BoxPanel>
97
-
98
- export const ComBoxPanelWithCollapseAndRight = () => (
99
- <BoxPanel title='商品明细' collapse right={<div>233333333</div>}>
100
- lalala
101
- </BoxPanel>
102
- )
103
- export const ComBoxPanelWithSummary = () => (
104
- <BoxPanel
105
- title='商品明细'
106
- collapse
107
- summary={[
108
- { text: '共计', value: 2 },
109
- { text: '合计', value: Price.getCurrency() + 23389 },
110
- ]}
111
- right={<div>233333333</div>}
112
- >
113
- lalala
114
- </BoxPanel>
115
- )
116
-
117
- export default {
118
- title: '布局/Box',
119
- }
1
+ import React from 'react'
2
+ import Box from './box'
3
+ import { BoxTable, BoxTableInfo } from './box_table'
4
+ import BoxPagination from './box_pagination'
5
+ import { BoxForm, BoxFormMore } from './box_form'
6
+ import BoxPanel from './box_panel'
7
+ import { FormItem, FormBlock, FormButton } from '../form'
8
+ import { Button } from '../button'
9
+ import { Price } from '../price'
10
+ import { Pagination } from '../pagination'
11
+
12
+ export const ComBox = () => (
13
+ <div>
14
+ <Box>这是一块内容</Box>
15
+ <Box>这是一块内容,内容直接会有 border </Box>
16
+ <Box hasGap>这是一块内容,切有内边距</Box>
17
+ </div>
18
+ )
19
+
20
+ export const ComBoxTable = () => (
21
+ <div>
22
+ <BoxTable
23
+ info={<BoxTableInfo>这是左边的内容</BoxTableInfo>}
24
+ action={<div>这是右边的内容</div>}
25
+ >
26
+ <div>真正的内容</div>
27
+ </BoxTable>
28
+ </div>
29
+ )
30
+
31
+ export const ComBoxPagination = () => (
32
+ <div>
33
+ <BoxPagination>
34
+ <Pagination
35
+ paging={{
36
+ offset: 0,
37
+ limit: 10,
38
+ need_count: true,
39
+ count: 100,
40
+ has_more: true,
41
+ }}
42
+ onChange={() => {
43
+ // something
44
+ }}
45
+ />
46
+ </BoxPagination>
47
+ </div>
48
+ )
49
+
50
+ export const ComBoxForm = () => (
51
+ <div>
52
+ <div>一定要用 FormBlock 包起来</div>
53
+ <BoxForm labelWidth='4em'>
54
+ <FormBlock col={3}>
55
+ <FormItem label='商品'>
56
+ <input type='text' />
57
+ </FormItem>
58
+ <FormItem label='啦啦'>
59
+ <input type='text' />
60
+ </FormItem>
61
+ </FormBlock>
62
+ <BoxFormMore>
63
+ <FormBlock col={3}>
64
+ <FormItem label='商品'>
65
+ <input type='text' />
66
+ </FormItem>
67
+ <FormItem label='啦啦'>
68
+ <input type='text' />
69
+ </FormItem>
70
+ <FormItem label='商品'>
71
+ <input type='text' />
72
+ </FormItem>
73
+ <FormItem label='啦啦'>
74
+ <input type='text' />
75
+ </FormItem>
76
+ <FormItem label='商品'>
77
+ <input type='text' />
78
+ </FormItem>
79
+ <FormItem label='啦啦'>
80
+ <input type='text' />
81
+ </FormItem>
82
+ </FormBlock>
83
+ </BoxFormMore>
84
+ <FormButton>
85
+ <Button type='primary' htmlType='submit'>
86
+ 搜索
87
+ </Button>
88
+ <BoxFormMore>
89
+ <Button type='link'>重置</Button>
90
+ </BoxFormMore>
91
+ </FormButton>
92
+ </BoxForm>
93
+ </div>
94
+ )
95
+
96
+ export const ComBoxPanel = () => <BoxPanel title='商品明细'>lalala</BoxPanel>
97
+
98
+ export const ComBoxPanelWithCollapseAndRight = () => (
99
+ <BoxPanel title='商品明细' collapse right={<div>233333333</div>}>
100
+ lalala
101
+ </BoxPanel>
102
+ )
103
+ export const ComBoxPanelWithSummary = () => (
104
+ <BoxPanel
105
+ title='商品明细'
106
+ collapse
107
+ summary={[
108
+ { text: '共计', value: 2 },
109
+ { text: '合计', value: Price.getCurrency() + 23389 },
110
+ ]}
111
+ right={<div>233333333</div>}
112
+ >
113
+ lalala
114
+ </BoxPanel>
115
+ )
116
+
117
+ export default {
118
+ title: '布局/Box',
119
+ }
@@ -1,41 +1,41 @@
1
- .gm-box {
2
- background: white;
3
-
4
- & + .gm-box {
5
- border-top: 1px solid var(--gm-color-border-special);
6
- margin-top: -1px;
7
- }
8
-
9
- &.gm-box-table {
10
- .gm-box-table-header {
11
- padding: 10px 20px;
12
- height: 50px;
13
- background-color: var(--gm-color-bg-back);
14
- border-bottom: 1px solid var(--gm-color-border);
15
- }
16
- }
17
-
18
- &.gm-box-form {
19
- padding: 10px 20px;
20
- }
21
-
22
- &.gm-box-panel {
23
- padding: 20px 0 0 0;
24
-
25
- .gm-box-panel-header {
26
- margin: 0 0 15px;
27
- padding: 0 20px;
28
-
29
- .gm-box-panel-title {
30
- font-size: 14px;
31
- padding-left: 10px;
32
- }
33
-
34
- .gm-box-panel-summary {
35
- border-left: 1px solid var(--gm-color-border);
36
- margin-left: 10px;
37
- padding-left: 10px;
38
- }
39
- }
40
- }
41
- }
1
+ .gm-box {
2
+ background: white;
3
+
4
+ & + .gm-box {
5
+ border-top: 1px solid var(--gm-color-border-special);
6
+ margin-top: -1px;
7
+ }
8
+
9
+ &.gm-box-table {
10
+ .gm-box-table-header {
11
+ padding: 10px 20px;
12
+ height: 50px;
13
+ background-color: var(--gm-color-bg-back);
14
+ border-bottom: 1px solid var(--gm-color-border);
15
+ }
16
+ }
17
+
18
+ &.gm-box-form {
19
+ padding: 10px 20px;
20
+ }
21
+
22
+ &.gm-box-panel {
23
+ padding: 20px 0 0 0;
24
+
25
+ .gm-box-panel-header {
26
+ margin: 0 0 15px;
27
+ padding: 0 20px;
28
+
29
+ .gm-box-panel-title {
30
+ font-size: 14px;
31
+ padding-left: 10px;
32
+ }
33
+
34
+ .gm-box-panel-summary {
35
+ border-left: 1px solid var(--gm-color-border);
36
+ margin-left: 10px;
37
+ padding-left: 10px;
38
+ }
39
+ }
40
+ }
41
+ }
@@ -1,94 +1,94 @@
1
- import React, { FC, useState, MouseEvent, AnchorHTMLAttributes, useContext } from 'react'
2
- import _ from 'lodash'
3
- import classNames from 'classnames'
4
- import { is } from '@gm-common/tool'
5
- import { Loading } from '../loading'
6
- import { ConfigContext } from '../config_provider'
7
-
8
- type ButtonType = 'default' | 'primary' | 'success' | 'danger' | 'link'
9
- type ButtonSize = 'small' | 'middle' | 'large'
10
- type ButtonHTMLType = 'submit' | 'button' | 'reset'
11
-
12
- interface ButtonProps
13
- extends AnchorHTMLAttributes<HTMLButtonElement | HTMLAnchorElement> {
14
- type?: ButtonType
15
- plain?: boolean
16
- size?: ButtonSize
17
- block?: boolean
18
- htmlType?: ButtonHTMLType
19
- loading?: boolean
20
- href?: string
21
- onClick?: (event: MouseEvent<HTMLButtonElement>) => void
22
- disabled?: boolean
23
- }
24
-
25
- const Button: FC<ButtonProps> = ({
26
- type = 'default',
27
- plain,
28
- size = 'middle',
29
- block,
30
- disabled,
31
- onClick = _.noop,
32
- loading,
33
- href,
34
- children,
35
- htmlType = 'button',
36
- className,
37
- ...rest
38
- }) => {
39
- const [isLoading, setIsLoading] = useState(false)
40
- const { fontSize } = useContext(ConfigContext)
41
-
42
- const loadFlag = loading || isLoading
43
-
44
- const handleClick = (
45
- event: MouseEvent<HTMLButtonElement> | MouseEvent<HTMLAnchorElement>
46
- ) => {
47
- if (loadFlag) {
48
- return
49
- }
50
-
51
- const result = onClick(event)
52
-
53
- if (!is.promise(result)) {
54
- return
55
- }
56
-
57
- setIsLoading(true)
58
-
59
- Promise.resolve(result).finally(() => {
60
- setIsLoading(false)
61
- })
62
- }
63
- const Tag = type === 'link' && href ? 'a' : 'button'
64
-
65
- return (
66
- <Tag
67
- {...rest}
68
- type={htmlType}
69
- href={href}
70
- className={classNames(
71
- `gm-btn gm-btn-${type}`,
72
- {
73
- 'gm-btn-block': block,
74
- 'gm-btn-plain': type !== 'link' && plain,
75
- [`gm-btn-${size}`]: size,
76
- [`gm-btn-text-${fontSize}`]: !!fontSize,
77
- },
78
- className
79
- )}
80
- disabled={loadFlag || disabled}
81
- onClick={handleClick}
82
- >
83
- {loadFlag && (
84
- <div style={{ marginRight: 4 }}>
85
- <Loading size='1em' type={type} />
86
- </div>
87
- )}
88
- {children}
89
- </Tag>
90
- )
91
- }
92
-
93
- export default Button
94
- export type { ButtonProps, ButtonType, ButtonSize, ButtonHTMLType }
1
+ import React, { FC, useState, MouseEvent, AnchorHTMLAttributes, useContext } from 'react'
2
+ import _ from 'lodash'
3
+ import classNames from 'classnames'
4
+ import { is } from '@gm-common/tool'
5
+ import { Loading } from '../loading'
6
+ import { ConfigContext } from '../config_provider'
7
+
8
+ type ButtonType = 'default' | 'primary' | 'success' | 'danger' | 'link'
9
+ type ButtonSize = 'small' | 'middle' | 'large'
10
+ type ButtonHTMLType = 'submit' | 'button' | 'reset'
11
+
12
+ interface ButtonProps
13
+ extends AnchorHTMLAttributes<HTMLButtonElement | HTMLAnchorElement> {
14
+ type?: ButtonType
15
+ plain?: boolean
16
+ size?: ButtonSize
17
+ block?: boolean
18
+ htmlType?: ButtonHTMLType
19
+ loading?: boolean
20
+ href?: string
21
+ onClick?: (event: MouseEvent<HTMLButtonElement>) => void
22
+ disabled?: boolean
23
+ }
24
+
25
+ const Button: FC<ButtonProps> = ({
26
+ type = 'default',
27
+ plain,
28
+ size = 'middle',
29
+ block,
30
+ disabled,
31
+ onClick = _.noop,
32
+ loading,
33
+ href,
34
+ children,
35
+ htmlType = 'button',
36
+ className,
37
+ ...rest
38
+ }) => {
39
+ const [isLoading, setIsLoading] = useState(false)
40
+ const { fontSize } = useContext(ConfigContext)
41
+
42
+ const loadFlag = loading || isLoading
43
+
44
+ const handleClick = (
45
+ event: MouseEvent<HTMLButtonElement> | MouseEvent<HTMLAnchorElement>
46
+ ) => {
47
+ if (loadFlag) {
48
+ return
49
+ }
50
+
51
+ const result = onClick(event)
52
+
53
+ if (!is.promise(result)) {
54
+ return
55
+ }
56
+
57
+ setIsLoading(true)
58
+
59
+ Promise.resolve(result).finally(() => {
60
+ setIsLoading(false)
61
+ })
62
+ }
63
+ const Tag = type === 'link' && href ? 'a' : 'button'
64
+
65
+ return (
66
+ <Tag
67
+ {...rest}
68
+ type={htmlType}
69
+ href={href}
70
+ className={classNames(
71
+ `gm-btn gm-btn-${type}`,
72
+ {
73
+ 'gm-btn-block': block,
74
+ 'gm-btn-plain': type !== 'link' && plain,
75
+ [`gm-btn-${size}`]: size,
76
+ [`gm-btn-text-${fontSize}`]: !!fontSize,
77
+ },
78
+ className
79
+ )}
80
+ disabled={loadFlag || disabled}
81
+ onClick={handleClick}
82
+ >
83
+ {loadFlag && (
84
+ <div style={{ marginRight: 4 }}>
85
+ <Loading size='1em' type={type} />
86
+ </div>
87
+ )}
88
+ {children}
89
+ </Tag>
90
+ )
91
+ }
92
+
93
+ export default Button
94
+ export type { ButtonProps, ButtonType, ButtonSize, ButtonHTMLType }
@@ -1,33 +1,33 @@
1
- import React, { MouseEvent, FC, HTMLAttributes } from 'react'
2
- import classNames from 'classnames'
3
-
4
- interface ButtonTextProps extends HTMLAttributes<HTMLSpanElement> {
5
- type?: 'default' | 'primary' | 'success' | 'danger'
6
- disabled?: boolean
7
- onClick?(event: MouseEvent<HTMLSpanElement>): void
8
- }
9
-
10
- const ButtonText: FC<ButtonTextProps> = ({
11
- type = 'default',
12
- disabled,
13
- children,
14
- className,
15
- ...rest
16
- }) => {
17
- return (
18
- <span
19
- {...rest}
20
- className={classNames(
21
- 'gm-button-text',
22
- `gm-button-text-${type}`,
23
- { disabled },
24
- className
25
- )}
26
- >
27
- {children}
28
- </span>
29
- )
30
- }
31
-
32
- export default ButtonText
33
- export type { ButtonTextProps }
1
+ import React, { MouseEvent, FC, HTMLAttributes } from 'react'
2
+ import classNames from 'classnames'
3
+
4
+ interface ButtonTextProps extends HTMLAttributes<HTMLSpanElement> {
5
+ type?: 'default' | 'primary' | 'success' | 'danger'
6
+ disabled?: boolean
7
+ onClick?(event: MouseEvent<HTMLSpanElement>): void
8
+ }
9
+
10
+ const ButtonText: FC<ButtonTextProps> = ({
11
+ type = 'default',
12
+ disabled,
13
+ children,
14
+ className,
15
+ ...rest
16
+ }) => {
17
+ return (
18
+ <span
19
+ {...rest}
20
+ className={classNames(
21
+ 'gm-button-text',
22
+ `gm-button-text-${type}`,
23
+ { disabled },
24
+ className
25
+ )}
26
+ >
27
+ {children}
28
+ </span>
29
+ )
30
+ }
31
+
32
+ export default ButtonText
33
+ export type { ButtonTextProps }
@@ -1,4 +1,4 @@
1
- export { default as Button } from './button'
2
- export { default as ButtonText } from './button_text'
3
- export type { ButtonProps, ButtonType, ButtonSize, ButtonHTMLType } from './button'
4
- export type { ButtonTextProps } from './button_text'
1
+ export { default as Button } from './button'
2
+ export { default as ButtonText } from './button_text'
3
+ export type { ButtonProps, ButtonType, ButtonSize, ButtonHTMLType } from './button'
4
+ export type { ButtonTextProps } from './button_text'