@douyinfe/semi-ui 2.1.3 → 2.1.4-alpha.0

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 (752) hide show
  1. package/_base/_story/index.scss +14 -0
  2. package/_base/_story/index.stories.js +118 -0
  3. package/_base/_story/index.stories.tsx +55 -0
  4. package/_base/base.scss +3 -0
  5. package/_base/base.ts +36 -0
  6. package/_base/baseComponent.tsx +78 -0
  7. package/_base/reactUtils.ts +43 -0
  8. package/_portal/_story/portal.stories.js +17 -0
  9. package/_portal/index.tsx +112 -0
  10. package/_test_/utils/dom/index.js +9 -0
  11. package/_test_/utils/function/index.js +1 -0
  12. package/_test_/utils/function/sleep.js +9 -0
  13. package/_test_/utils/index.js +4 -0
  14. package/_test_/utils/table/index.js +310 -0
  15. package/_test_/utils/tooltip/index.js +39 -0
  16. package/_utils/index.ts +157 -0
  17. package/anchor/__test__/anchor.test.js +59 -0
  18. package/anchor/_story/anchor.stories.js +266 -0
  19. package/anchor/_story/anchor.stories.tsx +165 -0
  20. package/anchor/anchor-context.ts +13 -0
  21. package/anchor/index.tsx +296 -0
  22. package/anchor/link.tsx +136 -0
  23. package/autoComplete/__test__/autoComplete.test.js +456 -0
  24. package/autoComplete/_story/CustomTrigger/index.jsx +106 -0
  25. package/autoComplete/_story/autoComplete.stories.js +349 -0
  26. package/autoComplete/_story/autoComplete.stories.tsx +87 -0
  27. package/autoComplete/index.tsx +476 -0
  28. package/avatar/__test__/avatar.test.js +363 -0
  29. package/avatar/__test__/avatarGroup.test.js +193 -0
  30. package/avatar/_story/Demo.tsx +22 -0
  31. package/avatar/_story/avatar.stories.js +191 -0
  32. package/avatar/_story/avatar.stories.tsx +7 -0
  33. package/avatar/avatarGroup.tsx +81 -0
  34. package/avatar/index.tsx +163 -0
  35. package/avatar/interface.ts +51 -0
  36. package/backtop/__test__/backtop.test.js +49 -0
  37. package/backtop/_story/backtop.stories.js +37 -0
  38. package/backtop/_story/backtop.stories.tsx +30 -0
  39. package/backtop/index.tsx +112 -0
  40. package/badge/__test__/badge.test.js +123 -0
  41. package/badge/_story/Demo.tsx +16 -0
  42. package/badge/_story/badge.stories.js +91 -0
  43. package/badge/_story/badge.stories.tsx +8 -0
  44. package/badge/index.tsx +80 -0
  45. package/banner/__test__/banner.test.js +58 -0
  46. package/banner/_story/Demo.tsx +14 -0
  47. package/banner/_story/banner.stories.js +45 -0
  48. package/banner/_story/banner.stories.tsx +8 -0
  49. package/banner/index.tsx +172 -0
  50. package/breadcrumb/__test__/breadcrumb.test.js +219 -0
  51. package/breadcrumb/_story/Demo.tsx +24 -0
  52. package/breadcrumb/_story/breadcrumb.stories.js +317 -0
  53. package/breadcrumb/_story/breadcrumb.stories.tsx +45 -0
  54. package/breadcrumb/bread-context.tsx +13 -0
  55. package/breadcrumb/index.tsx +293 -0
  56. package/breadcrumb/item.tsx +207 -0
  57. package/button/Button.tsx +125 -0
  58. package/button/__test__/button.test.js +49 -0
  59. package/button/_story/Demo.tsx +51 -0
  60. package/button/_story/button.stories.js +280 -0
  61. package/button/_story/button.stories.tsx +10 -0
  62. package/button/buttonGroup.tsx +47 -0
  63. package/button/index.tsx +38 -0
  64. package/button/splitButtonGroup.tsx +27 -0
  65. package/calendar/__test__/calendar.test.js +163 -0
  66. package/calendar/_story/Demo.tsx +20 -0
  67. package/calendar/_story/calendar.stories.js +405 -0
  68. package/calendar/_story/calendar.stories.tsx +5 -0
  69. package/calendar/dayCalendar.tsx +191 -0
  70. package/calendar/dayCol.tsx +156 -0
  71. package/calendar/index.tsx +61 -0
  72. package/calendar/interface.ts +42 -0
  73. package/calendar/monthCalendar.tsx +399 -0
  74. package/calendar/rangeCalendar.tsx +270 -0
  75. package/calendar/timeCol.tsx +64 -0
  76. package/calendar/weekCalendar.tsx +271 -0
  77. package/card/__test__/card.test.js +202 -0
  78. package/card/_story/card.stories.js +555 -0
  79. package/card/_story/card.stories.tsx +100 -0
  80. package/card/cardGroup.tsx +63 -0
  81. package/card/index.tsx +243 -0
  82. package/card/meta.tsx +73 -0
  83. package/cascader/__test__/cascader.test.js +1030 -0
  84. package/cascader/_story/CustomTrigger/index.jsx +63 -0
  85. package/cascader/_story/Demo.tsx +63 -0
  86. package/cascader/_story/cascader.stories.js +1213 -0
  87. package/cascader/_story/cascader.stories.tsx +6 -0
  88. package/cascader/index.tsx +901 -0
  89. package/cascader/item.tsx +301 -0
  90. package/checkbox/__test__/checkbox.test.js +85 -0
  91. package/checkbox/__test__/checkboxGroup.test.js +148 -0
  92. package/checkbox/_story/Demo.tsx +27 -0
  93. package/checkbox/_story/checkbox.stories.js +943 -0
  94. package/checkbox/_story/checkbox.stories.tsx +8 -0
  95. package/checkbox/checkbox.tsx +200 -0
  96. package/checkbox/checkboxGroup.tsx +171 -0
  97. package/checkbox/checkboxInner.tsx +88 -0
  98. package/checkbox/context.ts +14 -0
  99. package/checkbox/index.tsx +19 -0
  100. package/collapse/__test__/collapse.test.js +148 -0
  101. package/collapse/_story/Demo.tsx +28 -0
  102. package/collapse/_story/accordion.stories.js +143 -0
  103. package/collapse/_story/accordion.stories.tsx +8 -0
  104. package/collapse/collapse-context.tsx +18 -0
  105. package/collapse/index.tsx +119 -0
  106. package/collapse/item.tsx +139 -0
  107. package/collapsible/_story/Demo.tsx +41 -0
  108. package/collapsible/_story/Nested/index.js +101 -0
  109. package/collapsible/_story/collapsible.stories.js +588 -0
  110. package/collapsible/_story/collapsible.stories.tsx +7 -0
  111. package/collapsible/index.tsx +156 -0
  112. package/configProvider/_story/ChangeTimeZone/index.js +183 -0
  113. package/configProvider/_story/GetPopupContainer/index.js +194 -0
  114. package/configProvider/_story/RTLDirection/RTLForm.jsx +313 -0
  115. package/configProvider/_story/RTLDirection/RTLTable.jsx +94 -0
  116. package/configProvider/_story/RTLDirection/RTLWrapper.tsx +27 -0
  117. package/configProvider/_story/configProvider.stories.js +30 -0
  118. package/configProvider/context.tsx +14 -0
  119. package/configProvider/index.tsx +48 -0
  120. package/datePicker/__test__/datePicker.test.js +873 -0
  121. package/datePicker/_story/AllTypes/index.js +19 -0
  122. package/datePicker/_story/AutoSwitchDate/index.jsx +14 -0
  123. package/datePicker/_story/Autofocus/index.js +11 -0
  124. package/datePicker/_story/BetterRangePicker/index.jsx +172 -0
  125. package/datePicker/_story/Callbacks/index.jsx +24 -0
  126. package/datePicker/_story/ControlledDemo/index.js +149 -0
  127. package/datePicker/_story/CustomTrigger/index.jsx +36 -0
  128. package/datePicker/_story/Cycled/index.jsx +11 -0
  129. package/datePicker/_story/DateOffset/index.js +83 -0
  130. package/datePicker/_story/DatePickerSlot/index.jsx +83 -0
  131. package/datePicker/_story/DatePickerSlot/index.scss +7 -0
  132. package/datePicker/_story/DatePickerTimeZone/index.jsx +27 -0
  133. package/datePicker/_story/Density/index.jsx +69 -0
  134. package/datePicker/_story/DisabledDate/index.js +189 -0
  135. package/datePicker/_story/ExceptionDemo/index.js +20 -0
  136. package/datePicker/_story/Multiple/index.jsx +24 -0
  137. package/datePicker/_story/NeedConfirm/index.jsx +94 -0
  138. package/datePicker/_story/OnChangeWithDateFirst/index.jsx +37 -0
  139. package/datePicker/_story/OverPopover/index.jsx +22 -0
  140. package/datePicker/_story/RenderDate/index.js +21 -0
  141. package/datePicker/_story/RenderFullDate/index.js +56 -0
  142. package/datePicker/_story/RenderFullDate/index.scss +23 -0
  143. package/datePicker/_story/SyncSwitchMonth/index.js +45 -0
  144. package/datePicker/_story/TimePickerOpts/index.jsx +16 -0
  145. package/datePicker/_story/datePicker.stories.js +636 -0
  146. package/datePicker/_story/datePicker.stories.tsx +230 -0
  147. package/datePicker/dateInput.tsx +358 -0
  148. package/datePicker/datePicker.tsx +647 -0
  149. package/datePicker/footer.tsx +29 -0
  150. package/datePicker/index.tsx +71 -0
  151. package/datePicker/month.tsx +388 -0
  152. package/datePicker/monthsGrid.tsx +615 -0
  153. package/datePicker/navigation.tsx +120 -0
  154. package/datePicker/quickControl.tsx +54 -0
  155. package/datePicker/yearAndMonth.tsx +228 -0
  156. package/descriptions/__test__/descriptions.test.js +167 -0
  157. package/descriptions/_story/Demo.tsx +36 -0
  158. package/descriptions/_story/descriptions.stories.js +95 -0
  159. package/descriptions/_story/descriptions.stories.tsx +6 -0
  160. package/descriptions/descriptions-context.ts +11 -0
  161. package/descriptions/index.tsx +82 -0
  162. package/descriptions/item.tsx +63 -0
  163. package/dist/umd/semi-ui.js +253 -257
  164. package/dist/umd/semi-ui.js.map +1 -1
  165. package/dist/umd/semi-ui.min.js +1 -1
  166. package/dist/umd/semi-ui.min.js.map +1 -1
  167. package/dropdown/__test__/dropdown.test.js +308 -0
  168. package/dropdown/_story/AutoClose/index.js +120 -0
  169. package/dropdown/_story/DisabledItem/index.js +31 -0
  170. package/dropdown/_story/InHoverElements/index.js +25 -0
  171. package/dropdown/_story/InHoverElements/index.scss +16 -0
  172. package/dropdown/_story/MultiDropdown/index.js +34 -0
  173. package/dropdown/_story/WrapAvatar/index.jsx +10 -0
  174. package/dropdown/_story/dropdown.stories.js +331 -0
  175. package/dropdown/_story/dropdown.stories.tsx +28 -0
  176. package/dropdown/_story/inTable/index.js +194 -0
  177. package/dropdown/context.ts +6 -0
  178. package/dropdown/dropdownDivider.tsx +23 -0
  179. package/dropdown/dropdownItem.tsx +104 -0
  180. package/dropdown/dropdownMenu.tsx +28 -0
  181. package/dropdown/dropdownTitle.tsx +36 -0
  182. package/dropdown/index.tsx +239 -0
  183. package/empty/__test__/empty.test.js +63 -0
  184. package/empty/_story/Demo.tsx +10 -0
  185. package/empty/_story/empty.stories.js +53 -0
  186. package/empty/_story/empty.stories.tsx +8 -0
  187. package/empty/index.tsx +127 -0
  188. package/form/__test__/arrayField.test.js +204 -0
  189. package/form/__test__/baseForm/baseForm.test.js +628 -0
  190. package/form/__test__/baseForm/onChange.test.js +144 -0
  191. package/form/__test__/errorMessage.test.js +59 -0
  192. package/form/__test__/field.test.js +426 -0
  193. package/form/__test__/formApi.test.js +422 -0
  194. package/form/__test__/group.test.js +108 -0
  195. package/form/__test__/hoc.test.js +24 -0
  196. package/form/__test__/label.test.js +69 -0
  197. package/form/__test__/section.test.js +49 -0
  198. package/form/__test__/slot.test.js +108 -0
  199. package/form/_story/Debug/bugDemo.jsx +219 -0
  200. package/form/_story/Debug/childDidMount.jsx +30 -0
  201. package/form/_story/Debug/myRadio.jsx +32 -0
  202. package/form/_story/DynamicField/arrayFieldDemo.jsx +320 -0
  203. package/form/_story/DynamicField/nestArrayField.jsx +159 -0
  204. package/form/_story/FieldProps/bigNumberFieldPath.jsx +73 -0
  205. package/form/_story/FieldProps/convert.jsx +100 -0
  206. package/form/_story/FieldProps/fieldRef.jsx +74 -0
  207. package/form/_story/FieldProps/helpAndExtra.jsx +136 -0
  208. package/form/_story/FieldProps/pureField.jsx +0 -0
  209. package/form/_story/FieldProps/rulesUpdateDemo.js +116 -0
  210. package/form/_story/FormApi/arrayDemo.jsx +97 -0
  211. package/form/_story/FormApi/formApiDemo.jsx +82 -0
  212. package/form/_story/FormApi/resetDemo.jsx +41 -0
  213. package/form/_story/FormApi/setValuesDemo.jsx +133 -0
  214. package/form/_story/HOC/displayName.jsx +19 -0
  215. package/form/_story/HOC/withFieldDemo.jsx +216 -0
  216. package/form/_story/Hook/hookDemo.jsx +195 -0
  217. package/form/_story/Layout/layoutDemo.jsx +348 -0
  218. package/form/_story/Layout/modalFormDemo.jsx +94 -0
  219. package/form/_story/Layout/slotDemo.jsx +126 -0
  220. package/form/_story/Performance/performanceDemo.jsx +440 -0
  221. package/form/_story/Performance/selectUseReactNode.jsx +110 -0
  222. package/form/_story/Reference/inform.test.js +110 -0
  223. package/form/_story/Validate/validateDemo.jsx +421 -0
  224. package/form/_story/demo.jsx +397 -0
  225. package/form/_story/form.stories.js +506 -0
  226. package/form/_story/form.stories.tsx +176 -0
  227. package/form/arrayField.tsx +199 -0
  228. package/form/baseForm.tsx +290 -0
  229. package/form/context.tsx +18 -0
  230. package/form/errorMessage.tsx +80 -0
  231. package/form/field.tsx +79 -0
  232. package/form/group.tsx +91 -0
  233. package/form/hoc/withField.tsx +559 -0
  234. package/form/hoc/withFormApi.tsx +11 -0
  235. package/form/hoc/withFormState.tsx +11 -0
  236. package/form/hooks/index.ts +12 -0
  237. package/form/hooks/useArrayFieldState.tsx +9 -0
  238. package/form/hooks/useFieldApi.tsx +21 -0
  239. package/form/hooks/useFieldState.tsx +18 -0
  240. package/form/hooks/useFormApi.tsx +6 -0
  241. package/form/hooks/useFormState.tsx +9 -0
  242. package/form/hooks/useFormUpdater.tsx +6 -0
  243. package/form/hooks/useStateWithGetter.ts +13 -0
  244. package/form/index.tsx +42 -0
  245. package/form/interface.ts +132 -0
  246. package/form/label.tsx +79 -0
  247. package/form/section.tsx +38 -0
  248. package/form/slot.tsx +165 -0
  249. package/getBabelConfig.js +37 -0
  250. package/grid/__test__/calculateGutter.test.js +50 -0
  251. package/grid/_story/demo.scss +23 -0
  252. package/grid/_story/grid.stories.js +290 -0
  253. package/grid/_story/grid.stories.tsx +15 -0
  254. package/grid/col.tsx +133 -0
  255. package/grid/index.tsx +7 -0
  256. package/grid/row.tsx +174 -0
  257. package/gulpfile.js +116 -0
  258. package/iconButton/_story/iconButton.stories.tsx +16 -0
  259. package/iconButton/index.tsx +130 -0
  260. package/icons/_story/Others/add-template-icon.jsx +0 -0
  261. package/icons/_story/Others/add-template-icon.svg +10 -0
  262. package/icons/_story/Others/hangup.svg +3 -0
  263. package/icons/_story/Others/index.js +24 -0
  264. package/icons/_story/Others/xianglin.svg +3 -0
  265. package/icons/_story/icon.stories.js +63 -0
  266. package/icons/_story/icon.stories.tsx +46 -0
  267. package/icons/index.tsx +5 -0
  268. package/index.ts +94 -0
  269. package/input/__test__/input.test.js +245 -0
  270. package/input/__test__/textArea.test.js +119 -0
  271. package/input/_story/Demo.tsx +33 -0
  272. package/input/_story/TextareaDemo.tsx +27 -0
  273. package/input/_story/input.scss +0 -0
  274. package/input/_story/input.stories.js +887 -0
  275. package/input/_story/input.stories.tsx +11 -0
  276. package/input/index.tsx +444 -0
  277. package/input/inputGroup.tsx +119 -0
  278. package/input/textarea.tsx +330 -0
  279. package/inputNumber/__test__/inputNumber.test.js +370 -0
  280. package/inputNumber/_story/input.stories.tsx +17 -0
  281. package/inputNumber/_story/inputNumber.scss +10 -0
  282. package/inputNumber/_story/inputNumber.stories.js +643 -0
  283. package/inputNumber/index.tsx +480 -0
  284. package/layout/Sider.tsx +116 -0
  285. package/layout/__test__/layout.test.js +51 -0
  286. package/layout/_story/layout.stories.js +305 -0
  287. package/layout/_story/layout.stories.tsx +13 -0
  288. package/layout/index.tsx +126 -0
  289. package/layout/layout-context.ts +18 -0
  290. package/lib/cjs/datePicker/dateInput.d.ts +1 -1
  291. package/lib/cjs/datePicker/datePicker.d.ts +1 -1
  292. package/lib/cjs/datePicker/monthsGrid.d.ts +1 -1
  293. package/lib/cjs/radio/radio.d.ts +1 -1
  294. package/lib/cjs/radio/radioGroup.d.ts +1 -1
  295. package/lib/cjs/timePicker/TimePicker.d.ts +2 -2
  296. package/lib/cjs/timePicker/TimeShape.d.ts +1 -1
  297. package/lib/cjs/timePicker/index.d.ts +2 -2
  298. package/lib/cjs/typography/title.d.ts +1 -1
  299. package/lib/cjs/upload/index.d.ts +1 -1
  300. package/lib/es/datePicker/dateInput.d.ts +1 -1
  301. package/lib/es/datePicker/datePicker.d.ts +1 -1
  302. package/lib/es/datePicker/monthsGrid.d.ts +1 -1
  303. package/lib/es/radio/radio.d.ts +1 -1
  304. package/lib/es/radio/radioGroup.d.ts +1 -1
  305. package/lib/es/timePicker/TimePicker.d.ts +2 -2
  306. package/lib/es/timePicker/TimeShape.d.ts +1 -1
  307. package/lib/es/timePicker/index.d.ts +2 -2
  308. package/lib/es/typography/title.d.ts +1 -1
  309. package/lib/es/upload/index.d.ts +1 -1
  310. package/list/__test__/list.test.js +264 -0
  311. package/list/_story/list.stories.js +920 -0
  312. package/list/_story/list.stories.tsx +26 -0
  313. package/list/index.tsx +173 -0
  314. package/list/item.tsx +109 -0
  315. package/list/list-context.ts +15 -0
  316. package/locale/README.md +53 -0
  317. package/locale/_story/locale.stories.js +221 -0
  318. package/locale/_story/locale.stories.tsx +57 -0
  319. package/locale/context.tsx +5 -0
  320. package/locale/interface.ts +152 -0
  321. package/locale/localeConsumer.tsx +58 -0
  322. package/locale/localeProvider.tsx +35 -0
  323. package/locale/source/ar.ts +156 -0
  324. package/locale/source/en_GB.ts +156 -0
  325. package/locale/source/en_US.ts +156 -0
  326. package/locale/source/id_ID.ts +157 -0
  327. package/locale/source/ja_JP.ts +157 -0
  328. package/locale/source/ko_KR.ts +157 -0
  329. package/locale/source/ms_MY.ts +156 -0
  330. package/locale/source/pt_BR.ts +164 -0
  331. package/locale/source/ru_RU.ts +159 -0
  332. package/locale/source/th_TH.ts +160 -0
  333. package/locale/source/tr_TR.ts +156 -0
  334. package/locale/source/vi_VN.ts +159 -0
  335. package/locale/source/zh_CN.ts +157 -0
  336. package/locale/source/zh_TW.ts +157 -0
  337. package/modal/ConfirmModal.tsx +89 -0
  338. package/modal/Modal.tsx +415 -0
  339. package/modal/ModalContent.tsx +276 -0
  340. package/modal/__test__/confirm.test.js +203 -0
  341. package/modal/__test__/modal.test.js +324 -0
  342. package/modal/_story/CollapsibleInModal/index.jsx +100 -0
  343. package/modal/_story/DynamicContext/context.js +8 -0
  344. package/modal/_story/DynamicContext/index.jsx +30 -0
  345. package/modal/_story/modal.stories.js +251 -0
  346. package/modal/_story/modal.stories.tsx +41 -0
  347. package/modal/confirm.tsx +121 -0
  348. package/modal/index.tsx +13 -0
  349. package/modal/useModal/HookModal.tsx +62 -0
  350. package/modal/useModal/index.tsx +72 -0
  351. package/motions/Rotate.tsx +64 -0
  352. package/navigation/CollapseButton.tsx +47 -0
  353. package/navigation/Footer.tsx +72 -0
  354. package/navigation/Header.tsx +80 -0
  355. package/navigation/Item.tsx +274 -0
  356. package/navigation/OpenIconTransition.tsx +57 -0
  357. package/navigation/README.md +10 -0
  358. package/navigation/SubNav.tsx +376 -0
  359. package/navigation/SubNavTransition.tsx +58 -0
  360. package/navigation/__test__/navigation.test.js +274 -0
  361. package/navigation/_story/AutoOpen/index.js +69 -0
  362. package/navigation/_story/ControlledSelectedKeys/index.js +78 -0
  363. package/navigation/_story/DisabledNav/index.js +46 -0
  364. package/navigation/_story/ItemsChange/index.js +41 -0
  365. package/navigation/_story/LinkNav/index.jsx +90 -0
  366. package/navigation/_story/MountUnmount/index.js +57 -0
  367. package/navigation/_story/WithChildren/index.js +119 -0
  368. package/navigation/_story/WithRouter/index.js +111 -0
  369. package/navigation/_story/navigation.stories.js +330 -0
  370. package/navigation/_story/navigation.stories.tsx +101 -0
  371. package/navigation/index.tsx +427 -0
  372. package/navigation/nav-context.ts +9 -0
  373. package/notification/NoticeTransition.tsx +68 -0
  374. package/notification/__test__/notification.test.js +325 -0
  375. package/notification/_story/Demo.tsx +29 -0
  376. package/notification/_story/notification.stories.js +225 -0
  377. package/notification/_story/notification.stories.tsx +6 -0
  378. package/notification/_story/useNotification/context.js +3 -0
  379. package/notification/_story/useNotification/index.jsx +29 -0
  380. package/notification/index.tsx +265 -0
  381. package/notification/notice.tsx +185 -0
  382. package/notification/useNotification/HookNotice.tsx +36 -0
  383. package/notification/useNotification/index.tsx +94 -0
  384. package/overflowList/__test__/overflowList.test.js +31 -0
  385. package/overflowList/_story/Demo.tsx +36 -0
  386. package/overflowList/_story/overflowList.stories.js +356 -0
  387. package/overflowList/_story/overflowList.stories.tsx +7 -0
  388. package/overflowList/index.tsx +279 -0
  389. package/overflowList/intersectionObserver.tsx +93 -0
  390. package/package.json +2 -7
  391. package/pagination/__test__/pagination.test.js +255 -0
  392. package/pagination/_story/pagination.stories.js +148 -0
  393. package/pagination/_story/pagination.stories.tsx +11 -0
  394. package/pagination/index.tsx +450 -0
  395. package/popconfirm/__test__/popconfirm.test.js +131 -0
  396. package/popconfirm/_story/DynamicDisable/index.jsx +25 -0
  397. package/popconfirm/_story/InTable/index.js +75 -0
  398. package/popconfirm/_story/ShowArrow/index.jsx +141 -0
  399. package/popconfirm/_story/TitlePopconfirm/index.js +130 -0
  400. package/popconfirm/_story/TypesConfirm/index.jsx +121 -0
  401. package/popconfirm/_story/popconfirm.stories.js +170 -0
  402. package/popconfirm/_story/popconfirm.stories.tsx +20 -0
  403. package/popconfirm/index.tsx +239 -0
  404. package/popover/Arrow.tsx +66 -0
  405. package/popover/__test__/popover.test.js +52 -0
  406. package/popover/_story/ArrowPointAtCenter/index.jsx +138 -0
  407. package/popover/_story/BtnClose/index.jsx +80 -0
  408. package/popover/_story/NestedPopover/index.js +41 -0
  409. package/popover/_story/PopRight/index.js +25 -0
  410. package/popover/_story/PopRight/index.scss +25 -0
  411. package/popover/_story/SelectInPopover/index.jsx +38 -0
  412. package/popover/_story/popover.stories.js +574 -0
  413. package/popover/_story/popover.stories.tsx +53 -0
  414. package/popover/index.tsx +156 -0
  415. package/progress/__test__/progress.test.js +127 -0
  416. package/progress/_story/progress.stories.js +71 -0
  417. package/progress/_story/progress.stories.tsx +11 -0
  418. package/progress/index.tsx +245 -0
  419. package/radio/__test__/radio.test.jsx +91 -0
  420. package/radio/__test__/radioGroup.test.jsx +164 -0
  421. package/radio/_story/Demo.tsx +34 -0
  422. package/radio/_story/radio.scss +4 -0
  423. package/radio/_story/radio.stories.js +857 -0
  424. package/radio/_story/radio.stories.tsx +7 -0
  425. package/radio/context.ts +25 -0
  426. package/radio/index.tsx +12 -0
  427. package/radio/radio.tsx +244 -0
  428. package/radio/radioGroup.tsx +204 -0
  429. package/radio/radioInner.tsx +130 -0
  430. package/rating/__test__/rating.test.js +265 -0
  431. package/rating/_story/rating.stories.js +97 -0
  432. package/rating/_story/rating.stories.tsx +11 -0
  433. package/rating/index.tsx +283 -0
  434. package/rating/item.tsx +111 -0
  435. package/resizeObserver/index.tsx +115 -0
  436. package/scripts/compileDist.js +52 -0
  437. package/scripts/compileLib.js +13 -0
  438. package/scripts/compileScss.js +25 -0
  439. package/scrollList/__test__/scrollList.test.js +226 -0
  440. package/scrollList/_story/ScrollList/index.js +66 -0
  441. package/scrollList/_story/WheelList/index.js +116 -0
  442. package/scrollList/_story/scrolllist.stories.js +26 -0
  443. package/scrollList/_story/scrolllist.stories.tsx +131 -0
  444. package/scrollList/index.tsx +65 -0
  445. package/scrollList/scrollItem.tsx +509 -0
  446. package/select/__test__/select.test.js +1266 -0
  447. package/select/_story/CustomTrigger/index.jsx +21 -0
  448. package/select/_story/select.scss +51 -0
  449. package/select/_story/select.stories.js +2852 -0
  450. package/select/_story/select.stories.tsx +195 -0
  451. package/select/index.tsx +1121 -0
  452. package/select/option.tsx +157 -0
  453. package/select/optionGroup.tsx +42 -0
  454. package/select/utils.tsx +76 -0
  455. package/select/virtualRow.tsx +13 -0
  456. package/sideSheet/SideSheetContent.tsx +174 -0
  457. package/sideSheet/SideSheetTransition.tsx +104 -0
  458. package/sideSheet/__test__/sideSheet.test.js +319 -0
  459. package/sideSheet/_story/sideSheet.stories.js +379 -0
  460. package/sideSheet/_story/sideSheet.stories.tsx +48 -0
  461. package/sideSheet/index.tsx +268 -0
  462. package/skeleton/__test__/skeleton.test.js +32 -0
  463. package/skeleton/_story/skeleton.stories.js +82 -0
  464. package/skeleton/_story/skeleton.stories.tsx +61 -0
  465. package/skeleton/index.tsx +62 -0
  466. package/skeleton/item.tsx +82 -0
  467. package/slider/__test__/__snapshots__/slider.test.js.snap +5 -0
  468. package/slider/__test__/slider.test.js +155 -0
  469. package/slider/_story/Demo.scss +3 -0
  470. package/slider/_story/Demo.tsx +28 -0
  471. package/slider/_story/slider.stories.js +404 -0
  472. package/slider/_story/slider.stories.tsx +7 -0
  473. package/slider/index.tsx +561 -0
  474. package/space/__test__/space.test.js +99 -0
  475. package/space/_story/space.stories.js +254 -0
  476. package/space/_story/space.stories.tsx +26 -0
  477. package/space/index.tsx +95 -0
  478. package/space/utils.ts +24 -0
  479. package/spin/__test__/spin.test.js +46 -0
  480. package/spin/_story/Demo.tsx +10 -0
  481. package/spin/_story/spin.stories.js +92 -0
  482. package/spin/_story/spin.stories.tsx +6 -0
  483. package/spin/icon.tsx +54 -0
  484. package/spin/index.tsx +131 -0
  485. package/steps/__test__/steps.test.js +372 -0
  486. package/steps/_story/steps.stories.js +306 -0
  487. package/steps/_story/steps.stories.tsx +17 -0
  488. package/steps/basicStep.tsx +130 -0
  489. package/steps/basicSteps.tsx +110 -0
  490. package/steps/context.ts +7 -0
  491. package/steps/fillStep.tsx +113 -0
  492. package/steps/fillSteps.tsx +96 -0
  493. package/steps/index.tsx +69 -0
  494. package/steps/navStep.tsx +63 -0
  495. package/steps/navSteps.tsx +73 -0
  496. package/steps/step.tsx +37 -0
  497. package/switch/__test__/switch.test.js +128 -0
  498. package/switch/_story/switch.stories.js +160 -0
  499. package/switch/_story/switch.stories.tsx +124 -0
  500. package/switch/index.tsx +155 -0
  501. package/table/Body/BaseRow.tsx +361 -0
  502. package/table/Body/ExpandedRow.tsx +155 -0
  503. package/table/Body/SectionRow.tsx +200 -0
  504. package/table/Body/index.tsx +842 -0
  505. package/table/ColGroup.tsx +66 -0
  506. package/table/Column.tsx +17 -0
  507. package/table/ColumnFilter.tsx +203 -0
  508. package/table/ColumnSelection.tsx +88 -0
  509. package/table/ColumnShape.ts +33 -0
  510. package/table/ColumnSorter.tsx +58 -0
  511. package/table/CustomExpandIcon.tsx +95 -0
  512. package/table/HeadTable.tsx +118 -0
  513. package/table/ResizableHeaderCell.tsx +44 -0
  514. package/table/ResizableTable.tsx +176 -0
  515. package/table/Table.tsx +1384 -0
  516. package/table/TableCell.tsx +355 -0
  517. package/table/TableContextProvider.tsx +53 -0
  518. package/table/TableHeader.tsx +183 -0
  519. package/table/TableHeaderRow.tsx +180 -0
  520. package/table/TablePagination.tsx +52 -0
  521. package/table/__test__/table.test.js +1887 -0
  522. package/table/_story/BetterScrollbar.tsx +115 -0
  523. package/table/_story/ChildrenData/index.js +251 -0
  524. package/table/_story/ChildrenDataInnerSelected/index.js +221 -0
  525. package/table/_story/ChildrenDataSelected/index.js +247 -0
  526. package/table/_story/ControlledPagination/index.jsx +232 -0
  527. package/table/_story/ControlledSortOrder/index.jsx +85 -0
  528. package/table/_story/CustomComponents/index.js +101 -0
  529. package/table/_story/CustomExpandIcons/index.js +97 -0
  530. package/table/_story/CustomFilterDropdownItem/index.jsx +98 -0
  531. package/table/_story/DefaultSortOrder.tsx +120 -0
  532. package/table/_story/Demos/columnRender.jsx +131 -0
  533. package/table/_story/Demos/controlledPagination.jsx +125 -0
  534. package/table/_story/Demos/customFilter.jsx +110 -0
  535. package/table/_story/Demos/default.jsx +82 -0
  536. package/table/_story/Demos/dynamic.jsx +594 -0
  537. package/table/_story/Demos/expand.jsx +114 -0
  538. package/table/_story/Demos/filterAndSorter.jsx +102 -0
  539. package/table/_story/Demos/fixed.jsx +117 -0
  540. package/table/_story/Demos/fullRender.jsx +131 -0
  541. package/table/_story/Demos/group.jsx +109 -0
  542. package/table/_story/Demos/headerMerge.jsx +121 -0
  543. package/table/_story/Demos/headerMergeJSX.jsx +83 -0
  544. package/table/_story/Demos/infiniteScroll.jsx +118 -0
  545. package/table/_story/Demos/onRow.jsx +114 -0
  546. package/table/_story/Demos/pagination.jsx +101 -0
  547. package/table/_story/Demos/resizable copy.jsx +102 -0
  548. package/table/_story/Demos/resizable.jsx +183 -0
  549. package/table/_story/Demos/rowSelection.jsx +130 -0
  550. package/table/_story/Demos/sortTree.jsx +218 -0
  551. package/table/_story/Demos/sortable.jsx +183 -0
  552. package/table/_story/Demos/span.jsx +155 -0
  553. package/table/_story/Demos/tree.jsx +109 -0
  554. package/table/_story/Demos/treeSelect.jsx +196 -0
  555. package/table/_story/Demos/virtualized.jsx +103 -0
  556. package/table/_story/Demos/zebra.jsx +124 -0
  557. package/table/_story/DragableTable/index.jsx +156 -0
  558. package/table/_story/DragableTable/index.scss +7 -0
  559. package/table/_story/DynamicFilters/data.json +105 -0
  560. package/table/_story/DynamicFilters/index.js +81 -0
  561. package/table/_story/DynamicTable/index.jsx +569 -0
  562. package/table/_story/EventTable/index.jsx +76 -0
  563. package/table/_story/Expand/index.js +85 -0
  564. package/table/_story/ExpandAllGroupRows/index.jsx +90 -0
  565. package/table/_story/ExpandAllRows/index.jsx +111 -0
  566. package/table/_story/ExpandRowByClick.jsx +77 -0
  567. package/table/_story/FilterWithNewDataTable/index.jsx +108 -0
  568. package/table/_story/FixAllColumnsWithoutWidth.tsx +52 -0
  569. package/table/_story/FixRenderReturnProps.jsx +105 -0
  570. package/table/_story/FixedExpandedRows/index.js +105 -0
  571. package/table/_story/FixedGroups/index.js +80 -0
  572. package/table/_story/FixedTable/index.js +92 -0
  573. package/table/_story/FnTable/index.js +103 -0
  574. package/table/_story/FullRender/index.jsx +135 -0
  575. package/table/_story/GroupedCols/index.jsx +83 -0
  576. package/table/_story/GroupedColsFixed/index.jsx +95 -0
  577. package/table/_story/GroupedColsFixedJSX/index.jsx +122 -0
  578. package/table/_story/GroupedColsFixedVirtualized/index.jsx +107 -0
  579. package/table/_story/GroupedColsFixedVirtualizedGroups/index.jsx +110 -0
  580. package/table/_story/GroupedRows/index.js +83 -0
  581. package/table/_story/GroupedRowsFixed/index.js +81 -0
  582. package/table/_story/InSideSheet/index.jsx +90 -0
  583. package/table/_story/InfiniteScroll/index.js +115 -0
  584. package/table/_story/JSXAsyncData/index.jsx +47 -0
  585. package/table/_story/JSXColumnPropColumn.jsx +57 -0
  586. package/table/_story/JSXColumnsComplex.jsx +174 -0
  587. package/table/_story/JSXColumnsNest.tsx +74 -0
  588. package/table/_story/JSXColumnsSmiple.jsx +53 -0
  589. package/table/_story/JSXFixedTable/index.js +224 -0
  590. package/table/_story/JSXTitles/index.js +55 -0
  591. package/table/_story/LinkedScroll/index.jsx +137 -0
  592. package/table/_story/LinkedScroll/index.scss +0 -0
  593. package/table/_story/MassiveColumns/index.jsx +109 -0
  594. package/table/_story/MassiveColumns/index.scss +9 -0
  595. package/table/_story/ModalTable/index.jsx +228 -0
  596. package/table/_story/PagintaionTable/index.js +123 -0
  597. package/table/_story/Perf/Render/complex.jsx +191 -0
  598. package/table/_story/Perf/Render/context.jsx +72 -0
  599. package/table/_story/Perf/Render/controlledSelection.jsx +103 -0
  600. package/table/_story/Perf/Render/index.jsx +95 -0
  601. package/table/_story/Perf/Render/onRow.jsx +112 -0
  602. package/table/_story/Perf/Render/resizableSelection.jsx +193 -0
  603. package/table/_story/Perf/Virtualized/index.jsx +65 -0
  604. package/table/_story/Perf/index.js +8 -0
  605. package/table/_story/RTL/AlignScrollBar.jsx +17 -0
  606. package/table/_story/RTL/index.js +2 -0
  607. package/table/_story/RenderPagination/index.jsx +161 -0
  608. package/table/_story/ResizableColumns/index.jsx +95 -0
  609. package/table/_story/ResizableColumns/index.scss +30 -0
  610. package/table/_story/ResizableTable/index.jsx +85 -0
  611. package/table/_story/ScrollBar/index.jsx +71 -0
  612. package/table/_story/SelectedRows/index.js +137 -0
  613. package/table/_story/TableSpan/index.jsx +117 -0
  614. package/table/_story/TabsTable/index.jsx +78 -0
  615. package/table/_story/TestClone/index.js +0 -0
  616. package/table/_story/VirtualTableOnCell/index.jsx +84 -0
  617. package/table/_story/VirtualizedDynamicData/index.jsx +111 -0
  618. package/table/_story/VirtualizedGroupedRows/index.jsx +135 -0
  619. package/table/_story/VirtualizedNotFixed/index.js +89 -0
  620. package/table/_story/VritualizedDataSelected/index.js +273 -0
  621. package/table/_story/WarnColumnWithoutDataIndex.tsx +71 -0
  622. package/table/_story/WithSideSheet/index.js +82 -0
  623. package/table/_story/data/big.json +8205 -0
  624. package/table/_story/data/big2.json +42271 -0
  625. package/table/_story/table.stories.js +595 -0
  626. package/table/_story/table.stories.tsx +382 -0
  627. package/table/_story/virtualized/index.js +92 -0
  628. package/table/_story/virtualizedFixed/index.js +131 -0
  629. package/table/getColumns.tsx +34 -0
  630. package/table/index.tsx +44 -0
  631. package/table/interface.ts +320 -0
  632. package/table/table-context.ts +28 -0
  633. package/table/utils.ts +123 -0
  634. package/tabs/TabBar.tsx +248 -0
  635. package/tabs/TabPane.tsx +116 -0
  636. package/tabs/TabPaneTransition.tsx +67 -0
  637. package/tabs/__test__/tabs.test.js +208 -0
  638. package/tabs/_story/Demo.tsx +30 -0
  639. package/tabs/_story/search.jsx +37 -0
  640. package/tabs/_story/tabs.stories.js +797 -0
  641. package/tabs/_story/tabs.stories.tsx +6 -0
  642. package/tabs/index.tsx +300 -0
  643. package/tabs/interface.ts +83 -0
  644. package/tabs/tabs-context.ts +6 -0
  645. package/tag/_story/Demo.tsx +22 -0
  646. package/tag/_story/tag.stories.js +234 -0
  647. package/tag/_story/tag.stories.tsx +6 -0
  648. package/tag/group.tsx +131 -0
  649. package/tag/index.tsx +132 -0
  650. package/tag/interface.ts +48 -0
  651. package/tagInput/__test__/tagInput.test.js +352 -0
  652. package/tagInput/_story/tagInput.stories.js +414 -0
  653. package/tagInput/_story/tagInput.stories.tsx +24 -0
  654. package/tagInput/index.tsx +440 -0
  655. package/timePicker/Combobox.tsx +331 -0
  656. package/timePicker/PanelShape.ts +8 -0
  657. package/timePicker/TimeInput.tsx +205 -0
  658. package/timePicker/TimePicker.tsx +531 -0
  659. package/timePicker/TimeShape.ts +19 -0
  660. package/timePicker/__test__/timePicker.test.js +283 -0
  661. package/timePicker/_story/Callbacks/index.jsx +24 -0
  662. package/timePicker/_story/CustomTrigger/index.jsx +35 -0
  663. package/timePicker/_story/DisabledTime/index.jsx +17 -0
  664. package/timePicker/_story/timepicker.stories.js +264 -0
  665. package/timePicker/_story/timepicker.stories.tsx +18 -0
  666. package/timePicker/index.tsx +47 -0
  667. package/timeline/__test__/timeline.test.js +237 -0
  668. package/timeline/_story/timeline.stories.js +171 -0
  669. package/timeline/_story/timeline.stories.tsx +15 -0
  670. package/timeline/index.tsx +96 -0
  671. package/timeline/item.tsx +76 -0
  672. package/toast/ToastTransition.tsx +43 -0
  673. package/toast/__test__/toast-command-call.test.js +63 -0
  674. package/toast/__test__/toast.test.js +104 -0
  675. package/toast/_story/Demo.tsx +22 -0
  676. package/toast/_story/toast.stories.js +98 -0
  677. package/toast/_story/toast.stories.tsx +7 -0
  678. package/toast/index.tsx +234 -0
  679. package/toast/toast.tsx +148 -0
  680. package/toast/useToast/HookToast.tsx +35 -0
  681. package/toast/useToast/index.tsx +79 -0
  682. package/tooltip/ArrowBoundingShape.ts +8 -0
  683. package/tooltip/TooltipStyledTransition.tsx +30 -0
  684. package/tooltip/TriangleArrow.tsx +12 -0
  685. package/tooltip/TriangleArrowVertical.tsx +12 -0
  686. package/tooltip/__test__/tooltip.test.js +320 -0
  687. package/tooltip/_story/ArrowPointAtCenter/index.jsx +137 -0
  688. package/tooltip/_story/ContainerPosition/index.jsx +15 -0
  689. package/tooltip/_story/ContainerPosition/index.scss +10 -0
  690. package/tooltip/_story/CustomContainer/index.jsx +39 -0
  691. package/tooltip/_story/DangerousHtml/index.js +30 -0
  692. package/tooltip/_story/Edge/index.js +16 -0
  693. package/tooltip/_story/InTable/index.jsx +86 -0
  694. package/tooltip/_story/Safari/autoAdjust.js +23 -0
  695. package/tooltip/_story/ScrollDemo/index.js +65 -0
  696. package/tooltip/_story/story.scss +50 -0
  697. package/tooltip/_story/tooltip.stories.js +690 -0
  698. package/tooltip/_story/tooltip.stories.tsx +54 -0
  699. package/tooltip/index.tsx +646 -0
  700. package/transfer/__test__/transfer.test.js +324 -0
  701. package/transfer/_story/transfer.scss +124 -0
  702. package/transfer/_story/transfer.stories.js +758 -0
  703. package/transfer/_story/transfer.stories.tsx +80 -0
  704. package/transfer/index.tsx +652 -0
  705. package/tree/__test__/autosizer.test.js +102 -0
  706. package/tree/__test__/tree.test.js +842 -0
  707. package/tree/__test__/treeMultiple.test.js +593 -0
  708. package/tree/__test__/treeNodeProps.test.js +192 -0
  709. package/tree/_story/BigData.jsx +58 -0
  710. package/tree/_story/Demo.tsx +72 -0
  711. package/tree/_story/bigDataGen.jsx +98 -0
  712. package/tree/_story/data.js +3 -0
  713. package/tree/_story/tree.stories.js +2172 -0
  714. package/tree/_story/tree.stories.tsx +7 -0
  715. package/tree/autoSizer.tsx +86 -0
  716. package/tree/collapse.tsx +144 -0
  717. package/tree/index.tsx +754 -0
  718. package/tree/interface.ts +141 -0
  719. package/tree/nodeList.tsx +87 -0
  720. package/tree/treeContext.tsx +49 -0
  721. package/tree/treeNode.tsx +401 -0
  722. package/tree/treeUtil.tsx +14 -0
  723. package/treeSelect/__test__/treeMultiple.test.js +676 -0
  724. package/treeSelect/__test__/treeSelect.test.js +783 -0
  725. package/treeSelect/_story/CustomTrigger/index.jsx +47 -0
  726. package/treeSelect/_story/Demo.tsx +83 -0
  727. package/treeSelect/_story/treeSelect.stories.js +1155 -0
  728. package/treeSelect/_story/treeSelect.stories.tsx +7 -0
  729. package/treeSelect/index.tsx +1288 -0
  730. package/trigger/__test__/trigger.test.js +17 -0
  731. package/trigger/index.tsx +45 -0
  732. package/tsconfig.json +32 -0
  733. package/typography/__test__/typography.test.js +74 -0
  734. package/typography/_story/typography.stories.js +629 -0
  735. package/typography/_story/typography.stories.tsx +175 -0
  736. package/typography/base.tsx +628 -0
  737. package/typography/copyable.tsx +135 -0
  738. package/typography/index.tsx +24 -0
  739. package/typography/interface.ts +27 -0
  740. package/typography/paragraph.tsx +77 -0
  741. package/typography/text.tsx +68 -0
  742. package/typography/title.tsx +74 -0
  743. package/typography/typography.tsx +41 -0
  744. package/typography/util.tsx +141 -0
  745. package/upload/__test__/dragUpload.test.js +122 -0
  746. package/upload/__test__/upload.test.js +896 -0
  747. package/upload/_story/upload.stories.js +943 -0
  748. package/upload/_story/upload.stories.tsx +13 -0
  749. package/upload/fileCard.tsx +270 -0
  750. package/upload/index.tsx +538 -0
  751. package/upload/interface.ts +59 -0
  752. package/webpack.config.js +86 -0
@@ -0,0 +1,943 @@
1
+ import React, { useCallback, useMemo, useState } from 'react';
2
+ import Button from '../../button';
3
+ import Popover from '../../popover';
4
+ import Checkbox from '../index';
5
+ import CheckboxGroup from '../checkboxGroup';
6
+ import { Col, Input, Row } from '../../index';
7
+ import { IconClose } from '@douyinfe/semi-icons';
8
+
9
+ export default {
10
+ title: 'Checkbox',
11
+ }
12
+
13
+ export const CheckboxDefault = () => {
14
+ return (
15
+ <div>
16
+ <Checkbox onChange={e => console.log(e)} value={1} onChange={v => console.log(v)}>
17
+ hello
18
+ </Checkbox>
19
+ <br />
20
+ <Checkbox checked>这是一个受控的checked=true的checkbox,没有配onChange</Checkbox>
21
+ <br />
22
+ <Checkbox defaultChecked>这是一个不受控的defaultChecked=true的checkbox</Checkbox>
23
+ <br />
24
+ <Checkbox disabled>这是一个受控的disabled=true的checkbox</Checkbox>
25
+ <br />
26
+ <Checkbox checked disabled>
27
+ 既checked又disabled
28
+ </Checkbox>
29
+ <br />
30
+ <Checkbox indeterminate>indeterminate</Checkbox>
31
+ </div>
32
+ );
33
+ };
34
+
35
+ export const CheckboxWithoutText = () => {
36
+ return (
37
+ <div>
38
+ <Checkbox onChange={e => console.log(e)} />
39
+ </div>
40
+ );
41
+ };
42
+
43
+ class CheckboxControl extends React.Component {
44
+ state = {
45
+ checked: true,
46
+ disabled: false,
47
+ };
48
+ toggleChecked = () => {
49
+ this.setState({
50
+ checked: !this.state.checked,
51
+ });
52
+ };
53
+ toggleDisable = () => {
54
+ this.setState({
55
+ disabled: !this.state.disabled,
56
+ });
57
+ };
58
+ onChange = e => {
59
+ console.log('checked = ', e.target.checked);
60
+ this.setState({
61
+ checked: e.target.checked,
62
+ });
63
+ };
64
+
65
+ render() {
66
+ const label = `${this.state.checked ? 'Checked' : 'Unchecked'}-${
67
+ this.state.disabled ? 'Disabled' : 'Enabled'
68
+ }`;
69
+ return (
70
+ <div>
71
+ <p
72
+ style={{
73
+ marginBottom: '20px',
74
+ }}
75
+ >
76
+ <Checkbox
77
+ checked={this.state.checked}
78
+ disabled={this.state.disabled}
79
+ onChange={this.onChange}
80
+ >
81
+ {label}
82
+ </Checkbox>
83
+ </p>
84
+ <p>
85
+ <Button type="primary" size="small" onClick={this.toggleChecked}>
86
+ {!this.state.checked ? 'Check' : 'Uncheck'}
87
+ </Button>
88
+ <Button
89
+ style={{
90
+ marginLeft: '10px',
91
+ }}
92
+ type="primary"
93
+ size="small"
94
+ onClick={this.toggleDisable}
95
+ >
96
+ {!this.state.disabled ? 'Disable' : 'Enable'}
97
+ </Button>
98
+ </p>
99
+ </div>
100
+ );
101
+ }
102
+ }
103
+
104
+ export const CheckboxControlledDisabledChecked = () => <CheckboxControl />;
105
+
106
+ CheckboxControlledDisabledChecked.story = {
107
+ name: 'checkbox controlled disabled & checked',
108
+ };
109
+
110
+ class GroupDemo extends React.Component {
111
+ constructor() {
112
+ super();
113
+ this.state = {
114
+ value: [],
115
+ };
116
+ this.onChange = this.onChange.bind(this);
117
+ }
118
+
119
+ onChange(value) {
120
+ console.log(value);
121
+ this.setState({
122
+ value: value,
123
+ });
124
+ }
125
+
126
+ render() {
127
+ let { value } = this.state;
128
+ return (
129
+ <>
130
+ 水平Group
131
+ <Checkbox.Group direction="horizontal" onChange={v => console.log(v)}>
132
+ <Checkbox value="dy">抖音</Checkbox>
133
+ <Checkbox value="hotsoon">火山</Checkbox>
134
+ <Checkbox value="toutiao">今日头条</Checkbox>
135
+ <Checkbox value="xigua">西瓜视频</Checkbox>
136
+ </Checkbox.Group>
137
+ <br />
138
+ <br />
139
+ 垂直Group
140
+ <Checkbox.Group onChange={v => console.log(v)}>
141
+ <Checkbox value="dy">抖音</Checkbox>
142
+ <Checkbox value="hotsoon">火山</Checkbox>
143
+ <Checkbox value="toutiao">今日头条</Checkbox>
144
+ <Checkbox value="xigua">西瓜视频</Checkbox>
145
+ </Checkbox.Group>
146
+ <br />
147
+ <br />
148
+ 默认Group
149
+ <Checkbox.Group direction="horizontal" defaultValue={['xigua']} onChange={console.log}>
150
+ <Checkbox value="dy">抖音</Checkbox>
151
+ <Checkbox value="hotsoon">火山</Checkbox>
152
+ <Checkbox value="toutiao">今日头条</Checkbox>
153
+ <Checkbox value="xigua">西瓜视频</Checkbox>
154
+ </Checkbox.Group>
155
+ <br />
156
+ <br />
157
+ 受控Group
158
+ <Checkbox.Group direction="horizontal" value={value} onChange={console.log}>
159
+ <Checkbox value="dy">抖音</Checkbox>
160
+ <Checkbox value="hotsoon">火山</Checkbox>
161
+ <Checkbox value="toutiao">今日头条</Checkbox>
162
+ <Checkbox value="xigua">西瓜视频</Checkbox>
163
+ </Checkbox.Group>
164
+ <br />
165
+ <br />
166
+ 受控Group+onChange
167
+ <Checkbox.Group direction="horizontal" value={value} onChange={this.onChange}>
168
+ <Checkbox value="dy">抖音</Checkbox>
169
+ <Checkbox value="hotsoon">火山</Checkbox>
170
+ <Checkbox value="toutiao">今日头条</Checkbox>
171
+ <Checkbox value="xigua">西瓜视频</Checkbox>
172
+ </Checkbox.Group>
173
+ <br />
174
+ <br />
175
+ disabled
176
+ <Checkbox.Group disabled>
177
+ <Checkbox value="dy">抖音</Checkbox>
178
+ <Checkbox value="hotsoon">火山</Checkbox>
179
+ <Checkbox value="toutiao">今日头条</Checkbox>
180
+ <Checkbox value="xigua">西瓜视频</Checkbox>
181
+ </Checkbox.Group>
182
+ </>
183
+ );
184
+ }
185
+ }
186
+
187
+ export const CheckboxGroupDemo = () => <GroupDemo />;
188
+
189
+ export const CheckboxGroupWithOptions = () => {
190
+ function onChange(checkedValues) {
191
+ console.log('checked = ', checkedValues);
192
+ }
193
+
194
+ const plainOptions = ['green', 'red', 'pink'];
195
+ const options = [
196
+ {
197
+ label: 'green',
198
+ value: 'green',
199
+ },
200
+ {
201
+ label: 'red',
202
+ value: 'red',
203
+ },
204
+ {
205
+ label: 'pink',
206
+ value: 'pink',
207
+ disabled: true,
208
+ },
209
+ ];
210
+ const optionsWithDisabled = [
211
+ {
212
+ label: 'green',
213
+ value: 'green',
214
+ },
215
+ {
216
+ label: 'red',
217
+ value: 'red',
218
+ },
219
+ {
220
+ label: 'pink',
221
+ value: 'pink',
222
+ disabled: false,
223
+ },
224
+ ];
225
+ return (
226
+ <div>
227
+ default
228
+ <CheckboxGroup options={plainOptions} defaultValue={['green']} onChange={onChange} />
229
+ <br />
230
+ <br />
231
+ 受控
232
+ <CheckboxGroup options={plainOptions} value={['green']} onChange={onChange} />
233
+ <br />
234
+ 最后一个disabled
235
+ <br />
236
+ <CheckboxGroup options={options} defaultValue={['red']} onChange={onChange} />
237
+ <br />
238
+ 全体disabled, 优先父级disabled,次选子级disabled
239
+ <br />
240
+ <CheckboxGroup
241
+ options={optionsWithDisabled}
242
+ disabled
243
+ defaultValue={['green']}
244
+ onChange={onChange}
245
+ />
246
+ </div>
247
+ );
248
+ };
249
+
250
+ export const CheckboxGroupWithOtherTypeChild = () => {
251
+ return (
252
+ <CheckboxGroup>
253
+ <div className="test">
254
+ <Checkbox value="green" extra="苹果">
255
+ green
256
+ </Checkbox>
257
+ <Checkbox value="red" extra="梨">
258
+ red
259
+ </Checkbox>
260
+ <Checkbox value="pink" extra="橙子">
261
+ pink
262
+ </Checkbox>
263
+ </div>
264
+ </CheckboxGroup>
265
+ );
266
+ };
267
+
268
+ CheckboxGroupWithOtherTypeChild.story = {
269
+ name: 'checkboxGroup-直接后代是其他类型Node',
270
+ };
271
+
272
+ export const CheckboxExtra = () => {
273
+ let options = [
274
+ {
275
+ label: 'green',
276
+ value: 'green',
277
+ extra: '苹果',
278
+ },
279
+ {
280
+ label: 'red',
281
+ value: 'red',
282
+ extra: '梨',
283
+ },
284
+ {
285
+ label: 'pink',
286
+ value: 'pink',
287
+ disabled: true,
288
+ extra: '橙子',
289
+ },
290
+ ];
291
+ return (
292
+ <div>
293
+ checkbox
294
+ <Checkbox
295
+ onChange={e => console.log(e)}
296
+ extra="我是副文本,这是辅助的文本,辅助文本会更长一些,甚至还可能换行"
297
+ >
298
+ 我是主文本
299
+ </Checkbox>
300
+ <Checkbox
301
+ style={{
302
+ width: 200,
303
+ }}
304
+ onChange={e => console.log(e)}
305
+ extra="我是副文本,这是辅助的文本,辅助文本会更长一些,甚至还可能换行"
306
+ >
307
+ 我是主文本
308
+ </Checkbox>
309
+ <br />
310
+ <br />
311
+ checkboxGroup
312
+ <CheckboxGroup>
313
+ <Checkbox value="green" extra="苹果">
314
+ green
315
+ </Checkbox>
316
+ <Checkbox value="red" extra="梨">
317
+ red
318
+ </Checkbox>
319
+ <Checkbox value="pink" extra="橙子">
320
+ pink
321
+ </Checkbox>
322
+ </CheckboxGroup>
323
+ <br />
324
+ <br />
325
+ checkboxGroup with options
326
+ <CheckboxGroup options={options}></CheckboxGroup>
327
+ </div>
328
+ );
329
+ };
330
+
331
+ export const CheckboxGrid = () => {
332
+ return (
333
+ <Checkbox.Group
334
+ style={{
335
+ width: '100%',
336
+ }}
337
+ onChange={v => console.log(v)}
338
+ >
339
+ <Row>
340
+ <Col span={8}>
341
+ <Checkbox value="A">
342
+ 无限长的一串字The Storybook webapp UI can be customised with this addon. It can be used
343
+ to change the header, show/hide various UI elements and to enable full-screen mode by
344
+ default.
345
+ </Checkbox>
346
+ </Col>
347
+ <Col span={8}>
348
+ <Checkbox value="B">B</Checkbox>
349
+ </Col>
350
+ <Col span={8}>
351
+ <Checkbox value="C">C</Checkbox>
352
+ </Col>
353
+ <Col span={8}>
354
+ <Checkbox value="D">D</Checkbox>
355
+ </Col>
356
+ <Col span={8}>
357
+ <Checkbox value="E">E</Checkbox>
358
+ </Col>
359
+ </Row>
360
+ </Checkbox.Group>
361
+ );
362
+ };
363
+
364
+ CheckboxGrid.story = {
365
+ name: 'checkbox + grid',
366
+ };
367
+
368
+ export const IndeterminateDemo = () => {
369
+ const options = ['yellow', 'green', 'red'];
370
+ const defaultCheckedColors = ['yellow', 'red'];
371
+
372
+ const [checkedList, setCheckList] = useState(defaultCheckedColors);
373
+ const [indeterminate, setIndeterminate] = useState(true);
374
+ const [checkAll, setCheckAll] = useState(false);
375
+
376
+ const onCheckListChange = checkedList => {
377
+ setCheckList([...checkedList]);
378
+ setIndeterminate(!!checkedList.length && checkedList.length < options.length);
379
+ setCheckAll(checkedList.length === options.length);
380
+ };
381
+
382
+ const onCheckAllChange = e => {
383
+ setCheckList([...(e.target.checked ? options : [])]);
384
+ setIndeterminate(false);
385
+ setCheckAll(e.target.checked);
386
+ };
387
+
388
+ return (
389
+ <div>
390
+ <div
391
+ style={{
392
+ borderBottom: '1px solid #E9E9E9',
393
+ }}
394
+ >
395
+ <Checkbox indeterminate={indeterminate} onChange={onCheckAllChange} checked={checkAll}>
396
+ Check all
397
+ </Checkbox>
398
+ </div>
399
+ <br />
400
+ <CheckboxGroup options={options} value={checkedList} onChange={onCheckListChange} />
401
+ </div>
402
+ );
403
+ };
404
+
405
+ export const CheckboxRenderInDiv = () => (
406
+ <>
407
+ <div
408
+ onClick={(...args) => {
409
+ console.log('clicked checkbox outer: ', ...args);
410
+ }}
411
+ >
412
+ <Checkbox
413
+ onChange={(...args) => {
414
+ console.log('clicked checkbox: ', ...args);
415
+ }}
416
+ />
417
+ </div>
418
+ </>
419
+ );
420
+
421
+ export const CheckboxInPopover = () => (
422
+ <div>
423
+ <Popover
424
+ content={
425
+ <div>
426
+ <Checkbox>选项一</Checkbox>
427
+ <Checkbox defaultChecked>选项二</Checkbox>
428
+ <Checkbox>选项三</Checkbox>
429
+ </div>
430
+ }
431
+ >
432
+ <Button>click me</Button>
433
+ </Popover>
434
+ </div>
435
+ )
436
+
437
+ const SwitchCheckedFromTrue2Undefined = () => {
438
+ const [props, setProps] = useState();
439
+ const [flag, setFlag] = useState(0);
440
+
441
+ const change = () => {
442
+ if (flag === 0) {
443
+ setFlag(1);
444
+ setProps({ checked: true });
445
+ } else {
446
+ setFlag(0);
447
+ setProps({ checked: false });
448
+ }
449
+ };
450
+
451
+ return (
452
+ <>
453
+ <Checkbox {...props}>123</Checkbox>
454
+ <Button onClick={() => change()}>switch</Button>
455
+ </>
456
+ );
457
+ };
458
+
459
+ export const CheckboxSwitchCheckedTrueUndefined = () => <SwitchCheckedFromTrue2Undefined />;
460
+
461
+ CheckboxSwitchCheckedTrueUndefined.story = {
462
+ name: 'checkbox switch checked: true => undefined',
463
+ };
464
+
465
+ const TransformSelect = props => {
466
+ const { onChange, value, options = [], defaultValue = [], placeholder } = props;
467
+ const [currentValue, setCurrentValue] = useState([]);
468
+ const [inputValue, setInputValue] = useState(''); // 变化
469
+
470
+ const onSelectChange = useCallback(() => {
471
+ setCurrentValue(currentValue);
472
+ onChange && onChange(currentValue);
473
+ }, []); // 选择某一个
474
+
475
+ const removeValue = useCallback(
476
+ currentIndex => {
477
+ currentValue.splice(currentIndex, 1);
478
+ onSelectChange([...currentValue]);
479
+ },
480
+ [currentValue]
481
+ ); // 选择所有
482
+
483
+ const selectAllValue = useCallback(() => {
484
+ const value = options.map(option => option.value);
485
+ onSelectChange(value);
486
+ }, [options]);
487
+ const viewsOptions = useMemo(() => {
488
+ if (inputValue) {
489
+ const newOptions = options.filter(option => option.label.indexOf(inputValue) !== -1);
490
+ return newOptions;
491
+ }
492
+
493
+ return options;
494
+ }, [options, inputValue]);
495
+ return (
496
+ <div>
497
+ <div>
498
+ <div>
499
+ <Input
500
+ value={inputValue}
501
+ prefix="search"
502
+ clearable
503
+ onChange={value => setInputValue(value)}
504
+ placeholder={placeholder}
505
+ />
506
+ </div>
507
+ <div>
508
+ <span>{`共 ${options.length} 项`}</span>
509
+ <Button type="tertiary" size="small" theme="borderless" onClick={() => selectAllValue()}>
510
+ 全选
511
+ </Button>
512
+ </div>
513
+ <div>
514
+ <CheckboxGroup
515
+ options={viewsOptions}
516
+ value={currentValue}
517
+ onChange={onSelectChange}
518
+ direction="vertical"
519
+ />
520
+ </div>
521
+ </div>
522
+ <div>
523
+ <div>
524
+ <span>{`已选 ${currentValue.length} 项`}</span>
525
+ <Button
526
+ type="tertiary"
527
+ size="small"
528
+ theme="borderless"
529
+ onClick={() => onSelectChange([])}
530
+ >
531
+ 清空
532
+ </Button>
533
+ </div>
534
+ <div>
535
+ {currentValue.length > 0 ? (
536
+ currentValue.map((value, idx) => {
537
+ // 不存在不需要展示
538
+ const option = options.find(option => option.value === value);
539
+ return (
540
+ <div key={option.key ? option.key : idx}>
541
+ <span>{option.label}</span>
542
+ <span onClick={() => removeValue(idx)}>
543
+ <IconClose size="small" />
544
+ </span>
545
+ </div>
546
+ );
547
+ })
548
+ ) : (
549
+ <div>暂无内容,可从左侧勾选</div>
550
+ )}
551
+ </div>
552
+ </div>
553
+ </div>
554
+ );
555
+ };
556
+
557
+ export const BugDemo = () => <TransformSelect />;
558
+
559
+ export const CheckboxGroupCardStyle = () => (
560
+ <>
561
+ <div>常见情况</div>
562
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
563
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
564
+ 多选框标题
565
+ </Checkbox>
566
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
567
+ 多选框标题
568
+ </Checkbox>
569
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
570
+ 多选框标题
571
+ </Checkbox>
572
+ </CheckboxGroup>
573
+ <br />
574
+ <br />
575
+ <div>radio disabled</div>
576
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
577
+ <Checkbox value="1" disabled extra="Semi Design" style={{ width: 280 }}>
578
+ 多选框标题
579
+ </Checkbox>
580
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
581
+ 多选框标题
582
+ </Checkbox>
583
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
584
+ 多选框标题
585
+ </Checkbox>
586
+ </CheckboxGroup>
587
+ <br />
588
+ <br />
589
+ <div>checkboxGroup disabled</div>
590
+ <CheckboxGroup type="card" direction="horizontal" disabled defaultValue={['1']}>
591
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
592
+ 多选框标题
593
+ </Checkbox>
594
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
595
+ 多选框标题
596
+ </Checkbox>
597
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
598
+ 多选框标题
599
+ </Checkbox>
600
+ </CheckboxGroup>
601
+ <br />
602
+ <br />
603
+ <div>文字很长,并且没有设置宽度,因此换行显示</div>
604
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
605
+ <Checkbox
606
+ value="1"
607
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
608
+ >
609
+ 多选框标题
610
+ </Checkbox>
611
+ <Checkbox
612
+ value="2"
613
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
614
+ >
615
+ 多选框标题
616
+ </Checkbox>
617
+ <Checkbox
618
+ value="3"
619
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
620
+ >
621
+ 多选框标题
622
+ </Checkbox>
623
+ </CheckboxGroup>
624
+ <br />
625
+ <br />
626
+ <div>设置了width=180</div>
627
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
628
+ <Checkbox
629
+ value="1"
630
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
631
+ style={{ width: 180 }}
632
+ >
633
+ 多选框标题
634
+ </Checkbox>
635
+ <Checkbox
636
+ value="2"
637
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
638
+ style={{ width: 180 }}
639
+ >
640
+ 多选框标题
641
+ </Checkbox>
642
+ <Checkbox
643
+ value="3"
644
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
645
+ style={{ width: 180 }}
646
+ >
647
+ 多选框标题
648
+ </Checkbox>
649
+ </CheckboxGroup>
650
+ <br />
651
+ <br />
652
+ <div>没有extra,width=180</div>
653
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
654
+ <Checkbox value="1" style={{ width: 180 }}>
655
+ 多选框标题
656
+ </Checkbox>
657
+ <Checkbox value="2" style={{ width: 180 }}>
658
+ 多选框标题
659
+ </Checkbox>
660
+ <Checkbox value="3" style={{ width: 180 }}>
661
+ 多选框标题
662
+ </Checkbox>
663
+ </CheckboxGroup>
664
+ <br />
665
+ <br />
666
+ <div>没有标题,width=380</div>
667
+ <CheckboxGroup type="card" direction="horizontal" defaultValue={['1']}>
668
+ <Checkbox
669
+ value="1"
670
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
671
+ style={{ width: 380 }}
672
+ ></Checkbox>
673
+ <Checkbox
674
+ value="2"
675
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
676
+ style={{ width: 380 }}
677
+ ></Checkbox>
678
+ <Checkbox
679
+ value="3"
680
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
681
+ style={{ width: 380 }}
682
+ ></Checkbox>
683
+ </CheckboxGroup>
684
+ <br />
685
+ <br />
686
+ <hr />
687
+ <div>下面是垂直的情况:</div>
688
+ <div>常见情况</div>
689
+ <CheckboxGroup direction="vertical" type="card" defaultValue={['1']}>
690
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
691
+ 多选框标题
692
+ </Checkbox>
693
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
694
+ 多选框标题
695
+ </Checkbox>
696
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
697
+ 多选框标题
698
+ </Checkbox>
699
+ </CheckboxGroup>
700
+ <br />
701
+ <br />
702
+ <div>没有设置宽度</div>
703
+ <CheckboxGroup direction="vertical" type="card" defaultValue={['1']}>
704
+ <Checkbox
705
+ value="1"
706
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
707
+ >
708
+ 多选框标题
709
+ </Checkbox>
710
+ <Checkbox
711
+ value="2"
712
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
713
+ >
714
+ 多选框标题
715
+ </Checkbox>
716
+ <Checkbox
717
+ value="3"
718
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
719
+ >
720
+ 多选框标题
721
+ </Checkbox>
722
+ </CheckboxGroup>
723
+ <br />
724
+ <br />
725
+ <div>设置了width=380</div>
726
+ <CheckboxGroup direction="vertical" type="card" defaultValue={['1']}>
727
+ <Checkbox
728
+ value="1"
729
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
730
+ style={{ width: 380 }}
731
+ >
732
+ 多选框标题
733
+ </Checkbox>
734
+ <Checkbox
735
+ value="2"
736
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
737
+ style={{ width: 380 }}
738
+ >
739
+ 多选框标题
740
+ </Checkbox>
741
+ <Checkbox
742
+ value="3"
743
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
744
+ style={{ width: 380 }}
745
+ >
746
+ 多选框标题
747
+ </Checkbox>
748
+ </CheckboxGroup>
749
+ </>
750
+ );
751
+
752
+ export const CheckboxGroupPureCardStyle = () => (
753
+ <>
754
+ <div>常见情况</div>
755
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
756
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
757
+ 多选框标题
758
+ </Checkbox>
759
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
760
+ 多选框标题
761
+ </Checkbox>
762
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
763
+ 多选框标题
764
+ </Checkbox>
765
+ </CheckboxGroup>
766
+ <br />
767
+ <br />
768
+ <div>radio disabled</div>
769
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
770
+ <Checkbox value="1" disabled extra="Semi Design" style={{ width: 280 }}>
771
+ 多选框标题
772
+ </Checkbox>
773
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
774
+ 多选框标题
775
+ </Checkbox>
776
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
777
+ 多选框标题
778
+ </Checkbox>
779
+ </CheckboxGroup>
780
+ <br />
781
+ <br />
782
+ <div>checkboxGroup disabled</div>
783
+ <CheckboxGroup type="pureCard" disabled defaultValue={['1']}>
784
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
785
+ 多选框标题
786
+ </Checkbox>
787
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
788
+ 多选框标题
789
+ </Checkbox>
790
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
791
+ 多选框标题
792
+ </Checkbox>
793
+ </CheckboxGroup>
794
+ <br />
795
+ <br />
796
+ <div>文字很长,并且没有设置宽度,因此换行显示</div>
797
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
798
+ <Checkbox
799
+ value="1"
800
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
801
+ >
802
+ 多选框标题
803
+ </Checkbox>
804
+ <Checkbox
805
+ value="2"
806
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
807
+ >
808
+ 多选框标题
809
+ </Checkbox>
810
+ <Checkbox
811
+ value="3"
812
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
813
+ >
814
+ 多选框标题
815
+ </Checkbox>
816
+ </CheckboxGroup>
817
+ <br />
818
+ <br />
819
+ <div>设置了width=180</div>
820
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
821
+ <Checkbox
822
+ value="1"
823
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
824
+ style={{ width: 180 }}
825
+ >
826
+ 多选框标题
827
+ </Checkbox>
828
+ <Checkbox
829
+ value="2"
830
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
831
+ style={{ width: 180 }}
832
+ >
833
+ 多选框标题
834
+ </Checkbox>
835
+ <Checkbox
836
+ value="3"
837
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
838
+ style={{ width: 180 }}
839
+ >
840
+ 多选框标题
841
+ </Checkbox>
842
+ </CheckboxGroup>
843
+ <br />
844
+ <br />
845
+ <div>没有extra,width=180</div>
846
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
847
+ <Checkbox value="1" style={{ width: 180 }}>
848
+ 多选框标题
849
+ </Checkbox>
850
+ <Checkbox value="2" style={{ width: 180 }}>
851
+ 多选框标题
852
+ </Checkbox>
853
+ <Checkbox value="3" style={{ width: 180 }}>
854
+ 多选框标题
855
+ </Checkbox>
856
+ </CheckboxGroup>
857
+ <br />
858
+ <br />
859
+ <div>没有标题,width=380</div>
860
+ <CheckboxGroup type="pureCard" defaultValue={['1']}>
861
+ <Checkbox
862
+ value="1"
863
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
864
+ style={{ width: 380 }}
865
+ ></Checkbox>
866
+ <Checkbox
867
+ value="2"
868
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
869
+ style={{ width: 380 }}
870
+ ></Checkbox>
871
+ <Checkbox
872
+ value="3"
873
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
874
+ style={{ width: 380 }}
875
+ ></Checkbox>
876
+ </CheckboxGroup>
877
+ <br />
878
+ <br />
879
+ <hr />
880
+ <div>下面是垂直的情况:</div>
881
+ <div>常见情况</div>
882
+ <CheckboxGroup direction="vertical" type="pureCard" defaultValue={['1']}>
883
+ <Checkbox value="1" extra="Semi Design" style={{ width: 280 }}>
884
+ 多选框标题
885
+ </Checkbox>
886
+ <Checkbox value="2" extra="Semi Design" style={{ width: 280 }}>
887
+ 多选框标题
888
+ </Checkbox>
889
+ <Checkbox value="3" extra="Semi Design" style={{ width: 280 }}>
890
+ 多选框标题
891
+ </Checkbox>
892
+ </CheckboxGroup>
893
+ <br />
894
+ <br />
895
+ <div>没有设置宽度</div>
896
+ <CheckboxGroup direction="vertical" type="pureCard" defaultValue={['1']}>
897
+ <Checkbox
898
+ value="1"
899
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
900
+ >
901
+ 多选框标题
902
+ </Checkbox>
903
+ <Checkbox
904
+ value="2"
905
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
906
+ >
907
+ 多选框标题
908
+ </Checkbox>
909
+ <Checkbox
910
+ value="3"
911
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
912
+ >
913
+ 多选框标题
914
+ </Checkbox>
915
+ </CheckboxGroup>
916
+ <br />
917
+ <br />
918
+ <div>设置了width=380</div>
919
+ <CheckboxGroup direction="vertical" type="pureCard" defaultValue={['1']}>
920
+ <Checkbox
921
+ value="1"
922
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
923
+ style={{ width: 380 }}
924
+ >
925
+ 多选框标题
926
+ </Checkbox>
927
+ <Checkbox
928
+ value="2"
929
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
930
+ style={{ width: 380 }}
931
+ >
932
+ 多选框标题
933
+ </Checkbox>
934
+ <Checkbox
935
+ value="3"
936
+ extra="Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统"
937
+ style={{ width: 380 }}
938
+ >
939
+ 多选框标题
940
+ </Checkbox>
941
+ </CheckboxGroup>
942
+ </>
943
+ );