one-design-next 0.0.4-alpha.100

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 (520) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +134 -0
  3. package/dist/_util/canUseDom.d.ts +1 -0
  4. package/dist/_util/canUseDom.js +3 -0
  5. package/dist/_util/color.d.ts +103 -0
  6. package/dist/_util/color.js +250 -0
  7. package/dist/_util/date.d.ts +53 -0
  8. package/dist/_util/date.js +657 -0
  9. package/dist/_util/focusManager.d.ts +12 -0
  10. package/dist/_util/focusManager.js +56 -0
  11. package/dist/_util/queueMtPolyfill.d.ts +5 -0
  12. package/dist/_util/queueMtPolyfill.js +19 -0
  13. package/dist/_util/time.d.ts +44 -0
  14. package/dist/_util/time.js +150 -0
  15. package/dist/_util/useActive.d.ts +6 -0
  16. package/dist/_util/useActive.js +25 -0
  17. package/dist/_util/useControlledState.d.ts +8 -0
  18. package/dist/_util/useControlledState.js +30 -0
  19. package/dist/_util/useLayoutEffect.d.ts +4 -0
  20. package/dist/_util/useLayoutEffect.js +30 -0
  21. package/dist/alert/index.d.ts +63 -0
  22. package/dist/alert/index.js +137 -0
  23. package/dist/alert/style/index.css +184 -0
  24. package/dist/alert/style/index.d.ts +2 -0
  25. package/dist/alert/style/index.js +2 -0
  26. package/dist/auto-complete/index.d.ts +64 -0
  27. package/dist/auto-complete/index.js +149 -0
  28. package/dist/avatar/index.d.ts +68 -0
  29. package/dist/avatar/index.js +177 -0
  30. package/dist/avatar/primitive.d.ts +6 -0
  31. package/dist/avatar/primitive.js +23 -0
  32. package/dist/avatar/style/index.css +74 -0
  33. package/dist/avatar/style/index.d.ts +2 -0
  34. package/dist/avatar/style/index.js +2 -0
  35. package/dist/button/index.d.ts +15 -0
  36. package/dist/button/index.js +64 -0
  37. package/dist/button/style/index.css +338 -0
  38. package/dist/button/style/index.d.ts +2 -0
  39. package/dist/button/style/index.js +2 -0
  40. package/dist/calendar/index.d.ts +25 -0
  41. package/dist/calendar/index.js +379 -0
  42. package/dist/calendar/style/index.css +5 -0
  43. package/dist/calendar/style/index.d.ts +2 -0
  44. package/dist/calendar/style/index.js +2 -0
  45. package/dist/card/header.d.ts +26 -0
  46. package/dist/card/header.js +37 -0
  47. package/dist/card/index.d.ts +24 -0
  48. package/dist/card/index.js +31 -0
  49. package/dist/card/style/index.css +141 -0
  50. package/dist/card/style/index.d.ts +1 -0
  51. package/dist/card/style/index.js +1 -0
  52. package/dist/cascader/CascaderOptionContent.d.ts +20 -0
  53. package/dist/cascader/CascaderOptionContent.js +85 -0
  54. package/dist/cascader/Panel.d.ts +53 -0
  55. package/dist/cascader/Panel.js +131 -0
  56. package/dist/cascader/index.d.ts +59 -0
  57. package/dist/cascader/index.js +436 -0
  58. package/dist/cascader/style/index.css +414 -0
  59. package/dist/cascader/style/index.d.ts +2 -0
  60. package/dist/cascader/style/index.js +2 -0
  61. package/dist/cascader/utils.d.ts +14 -0
  62. package/dist/cascader/utils.js +109 -0
  63. package/dist/chart/index.d.ts +14 -0
  64. package/dist/chart/index.js +11 -0
  65. package/dist/chart/style/index.css +1 -0
  66. package/dist/chart/style/index.d.ts +2 -0
  67. package/dist/chart/style/index.js +2 -0
  68. package/dist/checkbox/Checkbox.d.ts +77 -0
  69. package/dist/checkbox/Checkbox.js +178 -0
  70. package/dist/checkbox/Context.d.ts +35 -0
  71. package/dist/checkbox/Context.js +2 -0
  72. package/dist/checkbox/Group.d.ts +68 -0
  73. package/dist/checkbox/Group.js +151 -0
  74. package/dist/checkbox/index.d.ts +5 -0
  75. package/dist/checkbox/index.js +3 -0
  76. package/dist/checkbox/style/index.css +330 -0
  77. package/dist/checkbox/style/index.d.ts +2 -0
  78. package/dist/checkbox/style/index.js +2 -0
  79. package/dist/collapse/index.d.ts +43 -0
  80. package/dist/collapse/index.js +111 -0
  81. package/dist/collapse/primitive.d.ts +21 -0
  82. package/dist/collapse/primitive.js +103 -0
  83. package/dist/collapse/style/index.css +59 -0
  84. package/dist/collapse/style/index.d.ts +2 -0
  85. package/dist/collapse/style/index.js +2 -0
  86. package/dist/color-picker/index.d.ts +55 -0
  87. package/dist/color-picker/index.js +588 -0
  88. package/dist/color-picker/style/index.css +135 -0
  89. package/dist/color-picker/style/index.d.ts +2 -0
  90. package/dist/color-picker/style/index.js +2 -0
  91. package/dist/config-provider/index.d.ts +46 -0
  92. package/dist/config-provider/index.js +37 -0
  93. package/dist/date-picker/MonthPicker.d.ts +31 -0
  94. package/dist/date-picker/MonthPicker.js +161 -0
  95. package/dist/date-picker/QuarterPicker.d.ts +36 -0
  96. package/dist/date-picker/QuarterPicker.js +168 -0
  97. package/dist/date-picker/YearPicker.d.ts +13 -0
  98. package/dist/date-picker/YearPicker.js +84 -0
  99. package/dist/date-picker/index.d.ts +240 -0
  100. package/dist/date-picker/index.js +1249 -0
  101. package/dist/date-picker/style/index.css +511 -0
  102. package/dist/date-picker/style/index.d.ts +2 -0
  103. package/dist/date-picker/style/index.js +2 -0
  104. package/dist/date-range-picker/index.d.ts +58 -0
  105. package/dist/date-range-picker/index.js +1043 -0
  106. package/dist/dialog/index.d.ts +139 -0
  107. package/dist/dialog/index.js +300 -0
  108. package/dist/dialog/style/index.css +228 -0
  109. package/dist/dialog/style/index.d.ts +2 -0
  110. package/dist/dialog/style/index.js +2 -0
  111. package/dist/dialog/useModalPosition.d.ts +6 -0
  112. package/dist/dialog/useModalPosition.js +34 -0
  113. package/dist/drawer/index.d.ts +92 -0
  114. package/dist/drawer/index.js +214 -0
  115. package/dist/drawer/style/index.css +244 -0
  116. package/dist/drawer/style/index.d.ts +2 -0
  117. package/dist/drawer/style/index.js +2 -0
  118. package/dist/dropdown/index.d.ts +91 -0
  119. package/dist/dropdown/index.js +846 -0
  120. package/dist/dropdown/style/index.css +206 -0
  121. package/dist/dropdown/style/index.d.ts +2 -0
  122. package/dist/dropdown/style/index.js +2 -0
  123. package/dist/ellipsis-text/index.d.ts +19 -0
  124. package/dist/ellipsis-text/index.js +97 -0
  125. package/dist/ellipsis-text/style/index.css +1 -0
  126. package/dist/ellipsis-text/style/index.d.ts +2 -0
  127. package/dist/ellipsis-text/style/index.js +2 -0
  128. package/dist/empty/index.d.ts +20 -0
  129. package/dist/empty/index.js +2398 -0
  130. package/dist/empty/style/index.css +80 -0
  131. package/dist/empty/style/index.d.ts +2 -0
  132. package/dist/empty/style/index.js +2 -0
  133. package/dist/form/index.d.ts +106 -0
  134. package/dist/form/index.js +272 -0
  135. package/dist/form/style/index.css +84 -0
  136. package/dist/form/style/index.d.ts +2 -0
  137. package/dist/form/style/index.js +2 -0
  138. package/dist/hover-fill/index.d.ts +50 -0
  139. package/dist/hover-fill/index.js +258 -0
  140. package/dist/hover-fill/style/index.css +35 -0
  141. package/dist/hover-fill/style/index.d.ts +2 -0
  142. package/dist/hover-fill/style/index.js +2 -0
  143. package/dist/icon/index.d.ts +11 -0
  144. package/dist/icon/index.js +102 -0
  145. package/dist/icon/style/index.css +15 -0
  146. package/dist/icon/style/index.d.ts +2 -0
  147. package/dist/icon/style/index.js +2 -0
  148. package/dist/icon/svg/alert/alert-circle-filled.svg +1 -0
  149. package/dist/icon/svg/alert/alert-circle.svg +1 -0
  150. package/dist/icon/svg/alert/help-circle-filled.svg +1 -0
  151. package/dist/icon/svg/alert/help-circle.svg +1 -0
  152. package/dist/icon/svg/alert/info-circle-filled.svg +1 -0
  153. package/dist/icon/svg/alert/info-circle.svg +1 -0
  154. package/dist/icon/svg/alert/stop.svg +1 -0
  155. package/dist/icon/svg/alert/warning-filled.svg +1 -0
  156. package/dist/icon/svg/alert/warning.svg +1 -0
  157. package/dist/icon/svg/content/QRcode.svg +1 -0
  158. package/dist/icon/svg/content/bell-filled.svg +1 -0
  159. package/dist/icon/svg/content/bell.svg +1 -0
  160. package/dist/icon/svg/content/bidding.svg +1 -0
  161. package/dist/icon/svg/content/calendar.svg +1 -0
  162. package/dist/icon/svg/content/code.svg +1 -0
  163. package/dist/icon/svg/content/customColumn.svg +1 -0
  164. package/dist/icon/svg/content/data.svg +1 -0
  165. package/dist/icon/svg/content/dataReport-filled.svg +1 -0
  166. package/dist/icon/svg/content/dataReport.svg +1 -0
  167. package/dist/icon/svg/content/download-1.svg +1 -0
  168. package/dist/icon/svg/content/download-filled.svg +1 -0
  169. package/dist/icon/svg/content/download.svg +1 -0
  170. package/dist/icon/svg/content/exchange.svg +1 -0
  171. package/dist/icon/svg/content/filter-filled.svg +1 -0
  172. package/dist/icon/svg/content/filter.svg +1 -0
  173. package/dist/icon/svg/content/hot-filled.svg +1 -0
  174. package/dist/icon/svg/content/hot.svg +1 -0
  175. package/dist/icon/svg/content/link.svg +1 -0
  176. package/dist/icon/svg/content/location.svg +1 -0
  177. package/dist/icon/svg/content/maxSize.svg +1 -0
  178. package/dist/icon/svg/content/mobile-filled.svg +1 -0
  179. package/dist/icon/svg/content/mobile.svg +1 -0
  180. package/dist/icon/svg/content/mute.svg +1 -0
  181. package/dist/icon/svg/content/mutiImage-filled.svg +1 -0
  182. package/dist/icon/svg/content/mutiImage.svg +1 -0
  183. package/dist/icon/svg/content/refresh.svg +1 -0
  184. package/dist/icon/svg/content/report.svg +1 -0
  185. package/dist/icon/svg/content/save.svg +1 -0
  186. package/dist/icon/svg/content/search-bold.svg +1 -0
  187. package/dist/icon/svg/content/search-filled.svg +1 -0
  188. package/dist/icon/svg/content/search.svg +1 -0
  189. package/dist/icon/svg/content/setting.svg +1 -0
  190. package/dist/icon/svg/content/share.svg +1 -0
  191. package/dist/icon/svg/content/sort.svg +1 -0
  192. package/dist/icon/svg/content/sound.svg +1 -0
  193. package/dist/icon/svg/content/sticker-filled.svg +1 -0
  194. package/dist/icon/svg/content/sticker.svg +1 -0
  195. package/dist/icon/svg/content/tag-filled.svg +1 -0
  196. package/dist/icon/svg/content/tag.svg +1 -0
  197. package/dist/icon/svg/content/thumbDown-filled.svg +1 -0
  198. package/dist/icon/svg/content/thumbDown.svg +1 -0
  199. package/dist/icon/svg/content/thumbUp-filled.svg +1 -0
  200. package/dist/icon/svg/content/thumbUp.svg +1 -0
  201. package/dist/icon/svg/content/time-bold.svg +1 -0
  202. package/dist/icon/svg/content/time.svg +1 -0
  203. package/dist/icon/svg/content/verify.svg +1 -0
  204. package/dist/icon/svg/content/video.svg +1 -0
  205. package/dist/icon/svg/content/videoScreenshot.svg +1 -0
  206. package/dist/icon/svg/content/zoomIn.svg +1 -0
  207. package/dist/icon/svg/content/zoomOut.svg +1 -0
  208. package/dist/icon/svg/data/compare.svg +1 -0
  209. package/dist/icon/svg/data/histogram.svg +1 -0
  210. package/dist/icon/svg/editor/cancel-circle-filled.svg +1 -0
  211. package/dist/icon/svg/editor/cancel-circle.svg +1 -0
  212. package/dist/icon/svg/editor/cancel.svg +1 -0
  213. package/dist/icon/svg/editor/check-circle-filled.svg +1 -0
  214. package/dist/icon/svg/editor/check-circle.svg +1 -0
  215. package/dist/icon/svg/editor/check.svg +1 -0
  216. package/dist/icon/svg/editor/copy.svg +1 -0
  217. package/dist/icon/svg/editor/custom-filled.svg +1 -0
  218. package/dist/icon/svg/editor/custom.svg +1 -0
  219. package/dist/icon/svg/editor/delete.svg +1 -0
  220. package/dist/icon/svg/editor/deleteAD-filled.svg +1 -0
  221. package/dist/icon/svg/editor/draggable.svg +1 -0
  222. package/dist/icon/svg/editor/edit.svg +1 -0
  223. package/dist/icon/svg/editor/import.svg +1 -0
  224. package/dist/icon/svg/editor/minus-circle-filled.svg +1 -0
  225. package/dist/icon/svg/editor/minus-circle.svg +1 -0
  226. package/dist/icon/svg/editor/minus.svg +1 -0
  227. package/dist/icon/svg/editor/modify-bold.svg +1 -0
  228. package/dist/icon/svg/editor/modify.svg +1 -0
  229. package/dist/icon/svg/editor/multiCreate.svg +1 -0
  230. package/dist/icon/svg/editor/mutiSelect-filled.svg +1 -0
  231. package/dist/icon/svg/editor/mutiSelect.svg +1 -0
  232. package/dist/icon/svg/editor/pause-filled.svg +1 -0
  233. package/dist/icon/svg/editor/play-filled.svg +1 -0
  234. package/dist/icon/svg/editor/plus-circle-filled.svg +1 -0
  235. package/dist/icon/svg/editor/plus-circle.svg +1 -0
  236. package/dist/icon/svg/editor/plus.svg +1 -0
  237. package/dist/icon/svg/editor/send.svg +1 -0
  238. package/dist/icon/svg/editor/subdivide.svg +1 -0
  239. package/dist/icon/svg/navigation/arrowDown-filled.svg +1 -0
  240. package/dist/icon/svg/navigation/arrowDown.svg +1 -0
  241. package/dist/icon/svg/navigation/arrowLeft-filled.svg +1 -0
  242. package/dist/icon/svg/navigation/arrowLeft.svg +1 -0
  243. package/dist/icon/svg/navigation/arrowRight-filled.svg +1 -0
  244. package/dist/icon/svg/navigation/arrowRight.svg +1 -0
  245. package/dist/icon/svg/navigation/arrowUp-filled.svg +1 -0
  246. package/dist/icon/svg/navigation/arrowUp.svg +1 -0
  247. package/dist/icon/svg/navigation/bottom-filled.svg +1 -0
  248. package/dist/icon/svg/navigation/bottom.svg +1 -0
  249. package/dist/icon/svg/navigation/doubleLeft-filled.svg +1 -0
  250. package/dist/icon/svg/navigation/doubleLeft.svg +1 -0
  251. package/dist/icon/svg/navigation/doubleRight-filled.svg +1 -0
  252. package/dist/icon/svg/navigation/doubleRight.svg +1 -0
  253. package/dist/icon/svg/navigation/down-bold.svg +1 -0
  254. package/dist/icon/svg/navigation/down-filled.svg +1 -0
  255. package/dist/icon/svg/navigation/down.svg +1 -0
  256. package/dist/icon/svg/navigation/fall-filled.svg +1 -0
  257. package/dist/icon/svg/navigation/fold.svg +1 -0
  258. package/dist/icon/svg/navigation/fullScreen.svg +1 -0
  259. package/dist/icon/svg/navigation/left-bold.svg +1 -0
  260. package/dist/icon/svg/navigation/left-filled.svg +1 -0
  261. package/dist/icon/svg/navigation/left.svg +1 -0
  262. package/dist/icon/svg/navigation/leftFirst-filled.svg +1 -0
  263. package/dist/icon/svg/navigation/leftFirst.svg +1 -0
  264. package/dist/icon/svg/navigation/logout.svg +1 -0
  265. package/dist/icon/svg/navigation/menu.svg +1 -0
  266. package/dist/icon/svg/navigation/menuLeft-bold.svg +1 -0
  267. package/dist/icon/svg/navigation/menuLeft.svg +1 -0
  268. package/dist/icon/svg/navigation/menuRight-bold.svg +1 -0
  269. package/dist/icon/svg/navigation/menuRight.svg +1 -0
  270. package/dist/icon/svg/navigation/more-vertical.svg +1 -0
  271. package/dist/icon/svg/navigation/more.svg +1 -0
  272. package/dist/icon/svg/navigation/pointerLeft-filled.svg +1 -0
  273. package/dist/icon/svg/navigation/pointerRight-filled.svg +1 -0
  274. package/dist/icon/svg/navigation/right-bold.svg +1 -0
  275. package/dist/icon/svg/navigation/right-filled.svg +1 -0
  276. package/dist/icon/svg/navigation/right.svg +1 -0
  277. package/dist/icon/svg/navigation/rightLast-filled.svg +1 -0
  278. package/dist/icon/svg/navigation/rightLast.svg +1 -0
  279. package/dist/icon/svg/navigation/rise-filled.svg +1 -0
  280. package/dist/icon/svg/navigation/top-filled.svg +1 -0
  281. package/dist/icon/svg/navigation/top.svg +1 -0
  282. package/dist/icon/svg/navigation/unfold-filled.svg +1 -0
  283. package/dist/icon/svg/navigation/unfold.svg +1 -0
  284. package/dist/icon/svg/navigation/up-bold.svg +1 -0
  285. package/dist/icon/svg/navigation/up-filled.svg +1 -0
  286. package/dist/icon/svg/navigation/up.svg +1 -0
  287. package/dist/icon/svg/product/AIFile.svg +1 -0
  288. package/dist/icon/svg/product/LandingPage.svg +1 -0
  289. package/dist/icon/svg/product/addressBook.svg +1 -0
  290. package/dist/icon/svg/product/alarmClock.svg +1 -0
  291. package/dist/icon/svg/product/asset-square.svg +1 -0
  292. package/dist/icon/svg/product/assetProtecting.svg +1 -0
  293. package/dist/icon/svg/product/autoAD-square-filled.svg +1 -0
  294. package/dist/icon/svg/product/card-distribute.svg +1 -0
  295. package/dist/icon/svg/product/channels-square-filled.svg +1 -0
  296. package/dist/icon/svg/product/channels.svg +1 -0
  297. package/dist/icon/svg/product/chart.svg +3 -0
  298. package/dist/icon/svg/product/chatBubble-filled.svg +1 -0
  299. package/dist/icon/svg/product/checkBadge.svg +1 -0
  300. package/dist/icon/svg/product/comments.svg +1 -0
  301. package/dist/icon/svg/product/container.svg +1 -0
  302. package/dist/icon/svg/product/dataAuth.svg +1 -0
  303. package/dist/icon/svg/product/dataBoard.svg +1 -0
  304. package/dist/icon/svg/product/dataBox.svg +1 -0
  305. package/dist/icon/svg/product/dataFolder.svg +1 -0
  306. package/dist/icon/svg/product/dataRising.svg +1 -0
  307. package/dist/icon/svg/product/detect.svg +1 -0
  308. package/dist/icon/svg/product/exposure-filled.svg +1 -0
  309. package/dist/icon/svg/product/extendedConfig.svg +1 -0
  310. package/dist/icon/svg/product/file-filled.svg +1 -0
  311. package/dist/icon/svg/product/flag.svg +1 -0
  312. package/dist/icon/svg/product/flame.svg +1 -0
  313. package/dist/icon/svg/product/folderZip.svg +1 -0
  314. package/dist/icon/svg/product/folderzip-bold.svg +1 -0
  315. package/dist/icon/svg/product/guideBook.svg +1 -0
  316. package/dist/icon/svg/product/hosting.svg +1 -0
  317. package/dist/icon/svg/product/icon-outlined.svg +1 -0
  318. package/dist/icon/svg/product/idea-bold.svg +1 -0
  319. package/dist/icon/svg/product/idea.svg +1 -0
  320. package/dist/icon/svg/product/image-bold.svg +1 -0
  321. package/dist/icon/svg/product/image-filled.svg +1 -0
  322. package/dist/icon/svg/product/image.svg +1 -0
  323. package/dist/icon/svg/product/images.svg +1 -0
  324. package/dist/icon/svg/product/keyword.svg +1 -0
  325. package/dist/icon/svg/product/linkSquare.svg +1 -0
  326. package/dist/icon/svg/product/lock.svg +1 -0
  327. package/dist/icon/svg/product/magic-filled.svg +1 -0
  328. package/dist/icon/svg/product/magic.svg +1 -0
  329. package/dist/icon/svg/product/miniProgram.svg +1 -0
  330. package/dist/icon/svg/product/minigame-filled.svg +1 -0
  331. package/dist/icon/svg/product/mobilePage.svg +1 -0
  332. package/dist/icon/svg/product/moments-filled.svg +1 -0
  333. package/dist/icon/svg/product/notepad-bold.svg +1 -0
  334. package/dist/icon/svg/product/notepad.svg +1 -0
  335. package/dist/icon/svg/product/offiaccount-filled.svg +1 -0
  336. package/dist/icon/svg/product/playing.svg +1 -0
  337. package/dist/icon/svg/product/qualification.svg +1 -0
  338. package/dist/icon/svg/product/quickFile.svg +1 -0
  339. package/dist/icon/svg/product/ringStruckture.svg +1 -0
  340. package/dist/icon/svg/product/searchAD-filled.svg +1 -0
  341. package/dist/icon/svg/product/searchAD.svg +1 -0
  342. package/dist/icon/svg/product/shield-filled.svg +1 -0
  343. package/dist/icon/svg/product/shield.svg +1 -0
  344. package/dist/icon/svg/product/shop.svg +1 -0
  345. package/dist/icon/svg/product/shopping.svg +1 -0
  346. package/dist/icon/svg/product/star-filled.svg +1 -0
  347. package/dist/icon/svg/product/star.svg +1 -0
  348. package/dist/icon/svg/product/support-bold.svg +1 -0
  349. package/dist/icon/svg/product/target.svg +1 -0
  350. package/dist/icon/svg/product/targeting.svg +1 -0
  351. package/dist/icon/svg/product/task-filled.svg +1 -0
  352. package/dist/icon/svg/product/task.svg +1 -0
  353. package/dist/icon/svg/product/template.svg +1 -0
  354. package/dist/icon/svg/product/templateBag.svg +1 -0
  355. package/dist/icon/svg/product/text.svg +1 -0
  356. package/dist/icon/svg/product/treeStructure.svg +1 -0
  357. package/dist/icon/svg/product/user-add.svg +3 -0
  358. package/dist/icon/svg/product/user-circle.svg +1 -0
  359. package/dist/icon/svg/product/user-edit.svg +1 -0
  360. package/dist/icon/svg/product/user-pack.svg +1 -0
  361. package/dist/icon/svg/product/userList.svg +1 -0
  362. package/dist/icon/svg/product/userPack.svg +1 -0
  363. package/dist/icon/svg/product/users-bold.svg +1 -0
  364. package/dist/icon/svg/product/users.svg +1 -0
  365. package/dist/icon/svg/product/videoBag-filled.svg +1 -0
  366. package/dist/icon/svg/product/viewMask.svg +1 -0
  367. package/dist/icon/svg/product/wallet.svg +1 -0
  368. package/dist/icon/svg/product/wechatBubble-filled.svg +1 -0
  369. package/dist/icon/svg/product/wechatBubble.svg +1 -0
  370. package/dist/icon/svg/product/wechatSearch.svg +1 -0
  371. package/dist/icon/svg/product/writing.svg +1 -0
  372. package/dist/icon/svg-data.d.ts +479 -0
  373. package/dist/icon/svg-data.js +481 -0
  374. package/dist/icon/test-icons.html +122 -0
  375. package/dist/icon/types.d.ts +3 -0
  376. package/dist/icon/types.js +5 -0
  377. package/dist/index.d.ts +52 -0
  378. package/dist/index.js +57 -0
  379. package/dist/input/index.d.ts +82 -0
  380. package/dist/input/index.js +451 -0
  381. package/dist/input/style/index.css +244 -0
  382. package/dist/input/style/index.d.ts +2 -0
  383. package/dist/input/style/index.js +2 -0
  384. package/dist/input-number/index.d.ts +41 -0
  385. package/dist/input-number/index.js +431 -0
  386. package/dist/input-number/style/index.css +65 -0
  387. package/dist/input-number/style/index.d.ts +2 -0
  388. package/dist/input-number/style/index.js +2 -0
  389. package/dist/input-otp/index.d.ts +71 -0
  390. package/dist/input-otp/index.js +87 -0
  391. package/dist/input-otp/style/index.css +110 -0
  392. package/dist/input-otp/style/index.d.ts +2 -0
  393. package/dist/input-otp/style/index.js +2 -0
  394. package/dist/layout/index.d.ts +3 -0
  395. package/dist/layout/index.js +3 -0
  396. package/dist/layout/layout.d.ts +32 -0
  397. package/dist/layout/layout.js +203 -0
  398. package/dist/layout/mp-layout.d.ts +68 -0
  399. package/dist/layout/mp-layout.js +204 -0
  400. package/dist/layout/style/index.css +464 -0
  401. package/dist/layout/style/index.d.ts +2 -0
  402. package/dist/layout/style/index.js +2 -0
  403. package/dist/link/index.d.ts +37 -0
  404. package/dist/link/index.js +46 -0
  405. package/dist/link/style/index.css +39 -0
  406. package/dist/link/style/index.d.ts +2 -0
  407. package/dist/link/style/index.js +2 -0
  408. package/dist/loading/index.d.ts +11 -0
  409. package/dist/loading/index.js +46 -0
  410. package/dist/loading/style/index.css +84 -0
  411. package/dist/loading/style/index.d.ts +2 -0
  412. package/dist/loading/style/index.js +2 -0
  413. package/dist/message/MessageBase.d.ts +86 -0
  414. package/dist/message/MessageBase.js +395 -0
  415. package/dist/message/MessageReact16.d.ts +2 -0
  416. package/dist/message/MessageReact16.js +86 -0
  417. package/dist/message/MessageReact18.d.ts +2 -0
  418. package/dist/message/MessageReact18.js +98 -0
  419. package/dist/message/index.d.ts +3 -0
  420. package/dist/message/index.js +7 -0
  421. package/dist/message/style/index.css +121 -0
  422. package/dist/message/style/index.d.ts +2 -0
  423. package/dist/message/style/index.js +2 -0
  424. package/dist/modal-base/gap.d.ts +14 -0
  425. package/dist/modal-base/gap.js +31 -0
  426. package/dist/modal-base/index.d.ts +26 -0
  427. package/dist/modal-base/index.js +114 -0
  428. package/dist/number-flow/index.d.ts +13 -0
  429. package/dist/number-flow/index.js +25 -0
  430. package/dist/number-flow/style/index.css +1 -0
  431. package/dist/number-flow/style/index.d.ts +2 -0
  432. package/dist/number-flow/style/index.js +2 -0
  433. package/dist/pagination/index.d.ts +63 -0
  434. package/dist/pagination/index.js +424 -0
  435. package/dist/pagination/style/index.css +135 -0
  436. package/dist/pagination/style/index.d.ts +2 -0
  437. package/dist/pagination/style/index.js +2 -0
  438. package/dist/pop-base/index.d.ts +143 -0
  439. package/dist/pop-base/index.js +381 -0
  440. package/dist/pop-base/mergeProps.d.ts +37 -0
  441. package/dist/pop-base/mergeProps.js +144 -0
  442. package/dist/pop-base/style/index.css +123 -0
  443. package/dist/pop-base/style/index.d.ts +2 -0
  444. package/dist/pop-base/style/index.js +2 -0
  445. package/dist/pop-base/useForkRef.d.ts +5 -0
  446. package/dist/pop-base/useForkRef.js +52 -0
  447. package/dist/popover/index.d.ts +4 -0
  448. package/dist/popover/index.js +9 -0
  449. package/dist/radio/index.d.ts +35 -0
  450. package/dist/radio/index.js +77 -0
  451. package/dist/radio/primitive.d.ts +5 -0
  452. package/dist/radio/primitive.js +28 -0
  453. package/dist/radio/style/index.css +224 -0
  454. package/dist/radio/style/index.d.ts +2 -0
  455. package/dist/radio/style/index.js +2 -0
  456. package/dist/scroll-area/index.d.ts +29 -0
  457. package/dist/scroll-area/index.js +118 -0
  458. package/dist/scroll-area/style/index.css +107 -0
  459. package/dist/scroll-area/style/index.d.ts +2 -0
  460. package/dist/scroll-area/style/index.js +2 -0
  461. package/dist/select/index.d.ts +86 -0
  462. package/dist/select/index.js +275 -0
  463. package/dist/select/style/index.css +1473 -0
  464. package/dist/select/style/index.d.ts +2 -0
  465. package/dist/select/style/index.js +2 -0
  466. package/dist/select/useIcons.d.ts +25 -0
  467. package/dist/select/useIcons.js +80 -0
  468. package/dist/select/utils.d.ts +9 -0
  469. package/dist/select/utils.js +40 -0
  470. package/dist/slider/index.d.ts +69 -0
  471. package/dist/slider/index.js +264 -0
  472. package/dist/slider/style/index.css +210 -0
  473. package/dist/slider/style/index.d.ts +2 -0
  474. package/dist/slider/style/index.js +2 -0
  475. package/dist/style/base.css +296 -0
  476. package/dist/style/index.d.ts +7 -0
  477. package/dist/style/index.js +18 -0
  478. package/dist/style/theme-adui.css +352 -0
  479. package/dist/switch/index.d.ts +12 -0
  480. package/dist/switch/index.js +55 -0
  481. package/dist/switch/style/index.css +149 -0
  482. package/dist/switch/style/index.d.ts +2 -0
  483. package/dist/switch/style/index.js +2 -0
  484. package/dist/table/TableCellContent.d.ts +20 -0
  485. package/dist/table/TableCellContent.js +82 -0
  486. package/dist/table/index.d.ts +97 -0
  487. package/dist/table/index.js +796 -0
  488. package/dist/table/style/index.css +301 -0
  489. package/dist/table/style/index.d.ts +2 -0
  490. package/dist/table/style/index.js +2 -0
  491. package/dist/table/useSelection.d.ts +13 -0
  492. package/dist/table/useSelection.js +268 -0
  493. package/dist/tabs/index.d.ts +51 -0
  494. package/dist/tabs/index.js +697 -0
  495. package/dist/tabs/style/index.css +305 -0
  496. package/dist/tabs/style/index.d.ts +2 -0
  497. package/dist/tabs/style/index.js +2 -0
  498. package/dist/text-swap/index.d.ts +58 -0
  499. package/dist/text-swap/index.js +280 -0
  500. package/dist/text-swap/style/index.css +29 -0
  501. package/dist/text-swap/style/index.d.ts +2 -0
  502. package/dist/text-swap/style/index.js +2 -0
  503. package/dist/time-picker/index.d.ts +67 -0
  504. package/dist/time-picker/index.js +945 -0
  505. package/dist/time-picker/style/index.css +153 -0
  506. package/dist/time-picker/style/index.d.ts +2 -0
  507. package/dist/time-picker/style/index.js +2 -0
  508. package/dist/tooltip/index.d.ts +10 -0
  509. package/dist/tooltip/index.js +178 -0
  510. package/dist/tree-select/index.d.ts +25 -0
  511. package/dist/tree-select/index.js +140 -0
  512. package/dist/tree-select/style/index.css +180 -0
  513. package/dist/tree-select/style/index.d.ts +1 -0
  514. package/dist/tree-select/style/index.js +1 -0
  515. package/dist/virtual-list/index.d.ts +98 -0
  516. package/dist/virtual-list/index.js +56 -0
  517. package/dist/virtual-list/style/index.css +9 -0
  518. package/dist/virtual-list/style/index.d.ts +2 -0
  519. package/dist/virtual-list/style/index.js +2 -0
  520. package/package.json +132 -0
@@ -0,0 +1,34 @@
1
+ import { useEffect, useRef, useLayoutEffect } from 'react';
2
+ export default function useModalPosition(_ref) {
3
+ var visible = _ref.visible,
4
+ modalContentRef = _ref.modalContentRef,
5
+ enabled = _ref.enabled;
6
+ var mousePosRef = useRef(null);
7
+ var getClickPosition = function getClickPosition(e) {
8
+ if (!enabled) return;
9
+ mousePosRef.current = {
10
+ x: e.clientX,
11
+ y: e.clientY
12
+ };
13
+ setTimeout(function () {
14
+ mousePosRef.current = null;
15
+ }, 100);
16
+ };
17
+ useLayoutEffect(function () {
18
+ if (!enabled) return;
19
+ window.addEventListener('click', getClickPosition, true);
20
+ return function () {
21
+ window.removeEventListener('click', getClickPosition, true);
22
+ };
23
+ }, [enabled]);
24
+ useEffect(function () {
25
+ if (!enabled) return;
26
+ setTimeout(function () {
27
+ if (!visible) return;
28
+ // 动画渲染初始位置
29
+ if (mousePosRef.current && modalContentRef.current) {
30
+ modalContentRef.current.style.transformOrigin = "".concat(mousePosRef.current.x - modalContentRef.current.offsetLeft, "px ").concat(mousePosRef.current.y - modalContentRef.current.offsetTop, "px");
31
+ }
32
+ }, 0);
33
+ }, [visible, modalContentRef, enabled]);
34
+ }
@@ -0,0 +1,92 @@
1
+ import React from 'react';
2
+ import './style';
3
+ export interface DrawerProps {
4
+ children?: React.ReactNode;
5
+ /**
6
+ * @description 包裹层类名
7
+ */
8
+ className?: string;
9
+ /**
10
+ * @description 挂载容器
11
+ */
12
+ container?: HTMLElement;
13
+ /**
14
+ * @description 是否启用层级提升
15
+ */
16
+ elevated?: boolean;
17
+ /**
18
+ * @description 是否显示遮罩
19
+ * @default true
20
+ */
21
+ maskVisible?: boolean;
22
+ /**
23
+ * @description 是否支持点击遮罩关闭
24
+ * @default true
25
+ */
26
+ maskClosable?: boolean;
27
+ /**
28
+ * @description 遮罩样式
29
+ */
30
+ maskStyle?: React.CSSProperties;
31
+ /**
32
+ * @description 遮罩类名
33
+ */
34
+ maskClassName?: string;
35
+ /**
36
+ * @description 回调
37
+ */
38
+ onVisibleChange?: (visible: boolean) => void;
39
+ /**
40
+ * @description 内边距
41
+ * @default 0
42
+ */
43
+ padding?: number;
44
+ /**
45
+ * @description 位置
46
+ * @default 'right'
47
+ */
48
+ placement?: 'top' | 'left' | 'right' | 'bottom';
49
+ /**
50
+ * @description 样式
51
+ */
52
+ style?: React.CSSProperties;
53
+ /**
54
+ * @description 是否显示
55
+ */
56
+ visible?: boolean;
57
+ /**
58
+ * @description 层级
59
+ */
60
+ zIndex?: number | string;
61
+ /**
62
+ * @description 步骤
63
+ */
64
+ steps?: React.ReactNode[];
65
+ /**
66
+ * @description 当前步骤
67
+ */
68
+ step?: number;
69
+ /**
70
+ * @description 步骤过渡类型
71
+ * @default 'slide'
72
+ */
73
+ stepTransitionType?: 'slide' | 'fade';
74
+ /**
75
+ * @description 标题
76
+ */
77
+ title?: React.ReactNode;
78
+ /**
79
+ * @description 描述
80
+ */
81
+ desc?: React.ReactNode;
82
+ /**
83
+ * @description 是否显示关闭按钮
84
+ */
85
+ closable?: boolean;
86
+ /**
87
+ * @description 关闭按钮位置
88
+ */
89
+ closePlacement?: 'start' | 'end';
90
+ }
91
+ declare const Drawer: React.FC<DrawerProps>;
92
+ export default Drawer;
@@ -0,0 +1,214 @@
1
+ 'use client';
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
7
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
8
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
9
+ import React, { useEffect, useRef } from 'react';
10
+ import Icon from "../icon";
11
+ import { ModalClose, ModalContent, ModalDescription, ModalHeader, ModalOverlay, ModalPortal, ModalRoot, ModalTitle } from "../modal-base";
12
+ import "./style";
13
+ var defaultProps = {
14
+ visible: undefined,
15
+ onVisibleChange: undefined,
16
+ placement: 'right',
17
+ padding: 0,
18
+ elevated: false,
19
+ maskVisible: true,
20
+ maskClosable: true,
21
+ maskStyle: undefined,
22
+ maskClassName: undefined,
23
+ steps: undefined,
24
+ step: undefined,
25
+ stepTransitionType: 'slide',
26
+ closable: false,
27
+ closePlacement: 'start'
28
+ };
29
+ var Drawer = function Drawer(_ref) {
30
+ var _ref$visible = _ref.visible,
31
+ visible = _ref$visible === void 0 ? defaultProps.visible : _ref$visible,
32
+ _ref$onVisibleChange = _ref.onVisibleChange,
33
+ onVisibleChange = _ref$onVisibleChange === void 0 ? defaultProps.onVisibleChange : _ref$onVisibleChange,
34
+ _ref$placement = _ref.placement,
35
+ placement = _ref$placement === void 0 ? defaultProps.placement : _ref$placement,
36
+ _ref$padding = _ref.padding,
37
+ padding = _ref$padding === void 0 ? defaultProps.padding : _ref$padding,
38
+ _ref$elevated = _ref.elevated,
39
+ elevated = _ref$elevated === void 0 ? defaultProps.elevated : _ref$elevated,
40
+ _ref$maskVisible = _ref.maskVisible,
41
+ maskVisible = _ref$maskVisible === void 0 ? defaultProps.maskVisible : _ref$maskVisible,
42
+ _ref$maskClosable = _ref.maskClosable,
43
+ maskClosable = _ref$maskClosable === void 0 ? defaultProps.maskClosable : _ref$maskClosable,
44
+ _ref$maskStyle = _ref.maskStyle,
45
+ maskStyle = _ref$maskStyle === void 0 ? defaultProps.maskStyle : _ref$maskStyle,
46
+ _ref$maskClassName = _ref.maskClassName,
47
+ maskClassName = _ref$maskClassName === void 0 ? defaultProps.maskClassName : _ref$maskClassName,
48
+ children = _ref.children,
49
+ _ref$steps = _ref.steps,
50
+ steps = _ref$steps === void 0 ? defaultProps.steps : _ref$steps,
51
+ _ref$step = _ref.step,
52
+ step = _ref$step === void 0 ? defaultProps.step : _ref$step,
53
+ _ref$stepTransitionTy = _ref.stepTransitionType,
54
+ stepTransitionType = _ref$stepTransitionTy === void 0 ? defaultProps.stepTransitionType : _ref$stepTransitionTy,
55
+ style = _ref.style,
56
+ className = _ref.className,
57
+ zIndex = _ref.zIndex,
58
+ container = _ref.container,
59
+ title = _ref.title,
60
+ desc = _ref.desc,
61
+ _ref$closable = _ref.closable,
62
+ closable = _ref$closable === void 0 ? defaultProps.closable : _ref$closable,
63
+ _ref$closePlacement = _ref.closePlacement,
64
+ closePlacement = _ref$closePlacement === void 0 ? defaultProps.closePlacement : _ref$closePlacement;
65
+ var paddingStylePack = {
66
+ borderRadius: padding
67
+ };
68
+ var stepsRef = useRef(null);
69
+ if (placement === 'top' || placement === 'bottom') {
70
+ paddingStylePack.left = padding;
71
+ paddingStylePack.right = padding;
72
+ } else {
73
+ paddingStylePack.top = padding;
74
+ paddingStylePack.bottom = padding;
75
+ }
76
+ if (placement === 'top') {
77
+ paddingStylePack.top = padding;
78
+ } else if (placement === 'bottom') {
79
+ paddingStylePack.bottom = padding;
80
+ } else if (placement === 'left') {
81
+ paddingStylePack.left = padding;
82
+ } else if (placement === 'right') {
83
+ paddingStylePack.right = padding;
84
+ }
85
+ var resetStyle = function resetStyle() {
86
+ var wrapper = document.querySelector('[data-odn-drawer-wrapper]');
87
+ if (wrapper) {
88
+ wrapper.style.backgroundColor = '';
89
+ wrapper.style.borderRadius = '';
90
+ wrapper.style.transform = '';
91
+ }
92
+ document.body.style.backgroundColor = '';
93
+ };
94
+ useEffect(function () {
95
+ var wrapper = document.querySelector('[data-odn-drawer-wrapper]');
96
+ if (!wrapper) {
97
+ return;
98
+ }
99
+ if (elevated) {
100
+ if (visible) {
101
+ document.body.style.backgroundColor = '#000';
102
+ var isVertical = placement === 'top' || placement === 'bottom';
103
+ var x = '0';
104
+ var y = '0';
105
+ var transformOrigin = '';
106
+ if (placement === 'top') {
107
+ y = '-14px';
108
+ transformOrigin = '50% 100%';
109
+ } else if (placement === 'bottom') {
110
+ y = '14px';
111
+ transformOrigin = '50% 0%';
112
+ } else if (placement === 'left') {
113
+ x = '-14px';
114
+ transformOrigin = '100% 50%';
115
+ } else if (placement === 'right') {
116
+ x = '14px';
117
+ transformOrigin = '0% 50%';
118
+ }
119
+ var scale = !isVertical ? (window.innerHeight - 26) / window.innerHeight : (window.innerWidth - 26) / window.innerWidth;
120
+ wrapper.style.backgroundColor = '#fff';
121
+ wrapper.style.borderRadius = '8px';
122
+ wrapper.style.transform = "scale(".concat(scale, ") translate3d(").concat(x, ", ").concat(y, ", 0)");
123
+ wrapper.style.transformOrigin = transformOrigin;
124
+ wrapper.style.transitionProperty = 'transform, border-radius';
125
+ wrapper.style.transitionDuration = '0.4s';
126
+ wrapper.style.transitionTimingFunction = 'cubic-bezier(0.32, 0.72, 0, 1)';
127
+ } else {
128
+ resetStyle();
129
+ }
130
+ } else {
131
+ resetStyle();
132
+ }
133
+ }, [elevated, visible]);
134
+ useEffect(function () {
135
+ return function () {
136
+ resetStyle();
137
+ };
138
+ }, []);
139
+ useEffect(function () {
140
+ setTimeout(function () {
141
+ if (stepsRef.current) {
142
+ var currentStepEl = stepsRef.current.querySelector("[data-odn-drawer-step][data-odn-drawer-step-index=\"".concat(step, "\"]"));
143
+ if (currentStepEl) {
144
+ stepsRef.current.style.height = "".concat(currentStepEl.clientHeight, "px");
145
+ }
146
+ }
147
+ }, 0);
148
+ }, [steps, step]);
149
+ var drawerStyle = _objectSpread(_objectSpread({
150
+ zIndex: zIndex ? Number(zIndex) : undefined
151
+ }, style), elevated ? {} : paddingStylePack);
152
+ var handlePointerDownOutside = function handlePointerDownOutside(event) {
153
+ if (!maskVisible || !maskClosable) {
154
+ event.preventDefault();
155
+ }
156
+ };
157
+ return /*#__PURE__*/React.createElement(ModalRoot, {
158
+ open: visible,
159
+ onOpenChange: onVisibleChange
160
+ }, /*#__PURE__*/React.createElement(ModalPortal, {
161
+ container: container
162
+ }, maskVisible && /*#__PURE__*/React.createElement(ModalOverlay, {
163
+ visible: visible,
164
+ "data-odn-modal-overlay": "drawer",
165
+ style: maskStyle,
166
+ className: maskClassName
167
+ }), /*#__PURE__*/React.createElement(ModalContent, {
168
+ "data-odn-drawer-content": true,
169
+ "data-odn-drawer-placement": placement,
170
+ "data-odn-drawer-wrapper": true,
171
+ style: drawerStyle,
172
+ className: className,
173
+ onPointerDownOutside: handlePointerDownOutside,
174
+ onOpenAutoFocus: function onOpenAutoFocus(e) {
175
+ e.preventDefault();
176
+ }
177
+ }, !title && /*#__PURE__*/React.createElement(ModalTitle, {
178
+ "data-odn-visually-hidden": true
179
+ }, "Drawer"), !desc && /*#__PURE__*/React.createElement(ModalDescription, {
180
+ "data-odn-visually-hidden": true
181
+ }, "Drawer content"), (!!title || !!desc || closable) && /*#__PURE__*/React.createElement(ModalHeader, {
182
+ "data-odn-drawer-header": true,
183
+ "data-odn-drawer-header-close-placement": closePlacement
184
+ }, closable && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ModalClose, {
185
+ asChild: true
186
+ }, /*#__PURE__*/React.createElement(Icon, {
187
+ name: "cancel",
188
+ size: 24,
189
+ "data-odn-drawer-close-button": true
190
+ })), /*#__PURE__*/React.createElement("div", {
191
+ "data-odn-drawer-header-divider": true
192
+ })), (!!title || !!desc) && /*#__PURE__*/React.createElement("div", {
193
+ "data-odn-drawer-header-content": true
194
+ }, !!title && /*#__PURE__*/React.createElement(ModalTitle, {
195
+ "data-odn-drawer-title": true
196
+ }, title), !!desc && /*#__PURE__*/React.createElement(ModalDescription, {
197
+ "data-odn-drawer-description": true
198
+ }, desc))), steps ? /*#__PURE__*/React.createElement("div", {
199
+ "data-odn-drawer-steps": true,
200
+ "data-odn-drawer-step-transition-type": stepTransitionType,
201
+ ref: stepsRef
202
+ }, steps.map(function (currentStep, index) {
203
+ return /*#__PURE__*/React.createElement("div", {
204
+ key: index,
205
+ "data-odn-drawer-step": true,
206
+ "data-odn-drawer-step-index": index,
207
+ "data-odn-drawer-step-active": step === index,
208
+ "data-odn-drawer-step-prev": step !== undefined && step < index,
209
+ "data-odn-drawer-step-next": step !== undefined && step > index,
210
+ "data-odn-drawer-step-transition-type": stepTransitionType
211
+ }, currentStep);
212
+ })) : children)));
213
+ };
214
+ export default Drawer;
@@ -0,0 +1,244 @@
1
+ html {
2
+ --odn-drawer-overlay-background: rgba(0, 0, 0, 0.45);
3
+ --odn-drawer-header-padding-inline: 20px;
4
+ --odn-drawer-header-height: 64px;
5
+ --odn-drawer-header-border: 1px solid var(--odn-color-black-4);
6
+ }
7
+
8
+ @layer components {
9
+ [data-odn-drawer-header] {
10
+ display: flex;
11
+ align-items: center;
12
+ gap: 16px;
13
+ padding: 0 var(--odn-drawer-header-padding-inline);
14
+ height: var(--odn-drawer-header-height);
15
+ border-bottom: var(--odn-drawer-header-border);
16
+ }
17
+ [data-odn-drawer-header-close-placement=end] {
18
+ flex-direction: row-reverse;
19
+ }
20
+ [data-odn-drawer-header-content] {
21
+ flex: 1;
22
+ }
23
+ [data-odn-drawer-title] {
24
+ font-size: 16px;
25
+ line-height: 24px;
26
+ font-weight: 600;
27
+ color: var(--odn-color-black-12);
28
+ }
29
+ [data-odn-drawer-description] {
30
+ font-size: 13px;
31
+ line-height: 22px;
32
+ color: var(--odn-color-black-10);
33
+ }
34
+ [data-odn-drawer-header-divider] {
35
+ flex: none;
36
+ width: 1px;
37
+ height: 16px;
38
+ background-color: var(--odn-color-black-3);
39
+ }
40
+ [data-odn-drawer-close-button] {
41
+ flex: none;
42
+ width: 24px;
43
+ height: 24px;
44
+ fill: var(--odn-color-black-11);
45
+ cursor: pointer;
46
+ }
47
+ [data-odn-drawer-close-button]:hover {
48
+ fill: var(--odn-color-black-12);
49
+ }
50
+ [data-odn-modal-overlay=drawer] {
51
+ position: fixed;
52
+ inset: 0;
53
+ z-index: var(--odn-z-index-modal);
54
+ background: var(--odn-drawer-overlay-background);
55
+ overflow: hidden !important;
56
+ }
57
+ [data-odn-drawer-content] {
58
+ position: fixed;
59
+ z-index: var(--odn-z-index-modal);
60
+ display: flex;
61
+ flex-direction: column;
62
+ background-color: #fff;
63
+ pointer-events: initial;
64
+ overflow: auto;
65
+ }
66
+ [data-odn-drawer-content][data-odn-drawer-placement=left],
67
+ [data-odn-drawer-content][data-odn-drawer-placement=right] {
68
+ top: 0;
69
+ bottom: 0;
70
+ min-width: 200px;
71
+ }
72
+ [data-odn-drawer-content][data-odn-drawer-placement=left] {
73
+ left: 0;
74
+ }
75
+ [data-odn-drawer-content][data-odn-drawer-placement=right] {
76
+ right: 0;
77
+ }
78
+ [data-odn-drawer-content][data-odn-drawer-placement=top],
79
+ [data-odn-drawer-content][data-odn-drawer-placement=bottom] {
80
+ left: 0;
81
+ right: 0;
82
+ min-height: 280px;
83
+ }
84
+ [data-odn-drawer-content][data-odn-drawer-placement=top] {
85
+ top: 0;
86
+ }
87
+ [data-odn-drawer-content][data-odn-drawer-placement=bottom] {
88
+ bottom: 0;
89
+ }
90
+ [data-odn-modal-overlay=drawer][data-state=open] {
91
+ animation: overlayFadeIn 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
92
+ }
93
+ [data-odn-modal-overlay=drawer][data-state=closed] {
94
+ animation: overlayFadeOut 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
95
+ }
96
+ @keyframes overlayFadeIn {
97
+ from {
98
+ background: rgba(0, 0, 0, 0);
99
+ }
100
+ to {
101
+ background: var(--odn-drawer-overlay-background);
102
+ }
103
+ }
104
+ @keyframes overlayFadeOut {
105
+ from {
106
+ background: var(--odn-drawer-overlay-background);
107
+ }
108
+ to {
109
+ background: rgba(0, 0, 0, 0);
110
+ }
111
+ }
112
+ /* Drawer content animations */
113
+ [data-odn-drawer-content][data-state=open] {
114
+ animation: drawerContentIn 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
115
+ }
116
+ [data-odn-drawer-content][data-state=closed] {
117
+ animation: drawerContentOut 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
118
+ }
119
+ /* Right placement animations */
120
+ @keyframes drawerContentIn {
121
+ from {
122
+ transform: translate3d(100%, 0, 0);
123
+ }
124
+ to {
125
+ transform: translate3d(0, 0, 0);
126
+ }
127
+ }
128
+ @keyframes drawerContentOut {
129
+ from {
130
+ transform: translate3d(0, 0, 0);
131
+ }
132
+ to {
133
+ transform: translate3d(100%, 0, 0);
134
+ }
135
+ }
136
+ /* Left placement animations */
137
+ [data-odn-drawer-content][data-odn-drawer-placement=left][data-state=open] {
138
+ animation: drawerContentInLeft 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
139
+ }
140
+ [data-odn-drawer-content][data-odn-drawer-placement=left][data-state=closed] {
141
+ animation: drawerContentOutLeft 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
142
+ }
143
+ @keyframes drawerContentInLeft {
144
+ from {
145
+ transform: translate3d(-100%, 0, 0);
146
+ }
147
+ to {
148
+ transform: translate3d(0, 0, 0);
149
+ }
150
+ }
151
+ @keyframes drawerContentOutLeft {
152
+ from {
153
+ transform: translate3d(0, 0, 0);
154
+ }
155
+ to {
156
+ transform: translate3d(-100%, 0, 0);
157
+ }
158
+ }
159
+ /* Top placement animations */
160
+ [data-odn-drawer-content][data-odn-drawer-placement=top][data-state=open] {
161
+ animation: drawerContentInTop 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
162
+ }
163
+ [data-odn-drawer-content][data-odn-drawer-placement=top][data-state=closed] {
164
+ animation: drawerContentOutTop 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
165
+ }
166
+ @keyframes drawerContentInTop {
167
+ from {
168
+ transform: translate3d(0, -100%, 0);
169
+ }
170
+ to {
171
+ transform: translate3d(0, 0, 0);
172
+ }
173
+ }
174
+ @keyframes drawerContentOutTop {
175
+ from {
176
+ transform: translate3d(0, 0, 0);
177
+ }
178
+ to {
179
+ transform: translate3d(0, -100%, 0);
180
+ }
181
+ }
182
+ /* Bottom placement animations */
183
+ [data-odn-drawer-content][data-odn-drawer-placement=bottom][data-state=open] {
184
+ animation: drawerContentInBottom 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
185
+ }
186
+ [data-odn-drawer-content][data-odn-drawer-placement=bottom][data-state=closed] {
187
+ animation: drawerContentOutBottom 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
188
+ }
189
+ @keyframes drawerContentInBottom {
190
+ from {
191
+ transform: translate3d(0, 100%, 0);
192
+ }
193
+ to {
194
+ transform: translate3d(0, 0, 0);
195
+ }
196
+ }
197
+ @keyframes drawerContentOutBottom {
198
+ from {
199
+ transform: translate3d(0, 0, 0);
200
+ }
201
+ to {
202
+ transform: translate3d(0, 100%, 0);
203
+ }
204
+ }
205
+ [data-odn-drawer-steps] {
206
+ position: relative;
207
+ overflow: hidden;
208
+ transition: height 0.3s cubic-bezier(0.32, 0.72, 0, 1);
209
+ }
210
+ [data-odn-drawer-step] {
211
+ position: absolute;
212
+ top: 0;
213
+ left: 0;
214
+ width: 100%;
215
+ height: auto;
216
+ }
217
+ [data-odn-drawer-steps][data-odn-drawer-step-transition-type=fade],
218
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=fade] {
219
+ transition: all 0.3s cubic-bezier(0.32, 0.72, 0, 1);
220
+ }
221
+ [data-odn-drawer-steps][data-odn-drawer-step-transition-type=slide],
222
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=slide] {
223
+ transition: all 0.8s cubic-bezier(0.32, 0.72, 0, 1);
224
+ }
225
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=fade][data-odn-drawer-step-prev=true],
226
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=fade][data-odn-drawer-step-next=true] {
227
+ opacity: 0;
228
+ }
229
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=fade][data-odn-drawer-step-active=true] {
230
+ opacity: 1;
231
+ }
232
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=slide][data-odn-drawer-step-prev=true] {
233
+ opacity: 0;
234
+ transform: translate3d(100%, 0, 0);
235
+ }
236
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=slide][data-odn-drawer-step-next=true] {
237
+ opacity: 0;
238
+ transform: translate3d(-100%, 0, 0);
239
+ }
240
+ [data-odn-drawer-step][data-odn-drawer-step-transition-type=slide][data-odn-drawer-step-active=true] {
241
+ opacity: 1;
242
+ transform: translate3d(0, 0, 0);
243
+ }
244
+ }
@@ -0,0 +1,2 @@
1
+ import '../../style';
2
+ import "./index.scss";
@@ -0,0 +1,2 @@
1
+ import "../../style";
2
+ import "./index.css";
@@ -0,0 +1,91 @@
1
+ /**
2
+ * 多选的设计稿来源于互选需求:https://www.figma.com/design/DBgqcGDjdPnr7XObtGY7ES/%F0%9F%94%B5%E3%80%90%E5%B9%BF%E5%91%8A%E4%B8%BB%E4%BE%A7%E3%80%91%E4%BA%92%E9%80%89%E5%B9%B3%E5%8F%B0---%E4%BD%93%E9%AA%8C%E5%8D%87%E7%BA%A7%E4%B8%93%E9%A1%B9?node-id=461-72709&t=r6iaLWzcmAk5VXR6-4
3
+ */
4
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
5
+ import * as React from 'react';
6
+ import './style';
7
+ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): React.JSX.Element;
8
+ declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): React.JSX.Element;
9
+ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
10
+ declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
11
+ sideOffset?: number | undefined;
12
+ matchWidth?: boolean | undefined;
13
+ zIndex?: string | number | undefined;
14
+ } & React.RefAttributes<HTMLDivElement>>;
15
+ declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): React.JSX.Element;
16
+ declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
17
+ inset?: boolean | undefined;
18
+ variant?: "default" | "destructive" | undefined;
19
+ } & React.RefAttributes<HTMLDivElement>>;
20
+ declare function DropdownMenuCheckboxItem({ children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): React.JSX.Element;
21
+ declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): React.JSX.Element;
22
+ declare function DropdownMenuRadioItem({ children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): React.JSX.Element;
23
+ declare function DropdownMenuLabel({ inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
24
+ inset?: boolean;
25
+ }): React.JSX.Element;
26
+ declare function DropdownMenuSeparator({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): React.JSX.Element;
27
+ declare function DropdownMenuShortcut({ ...props }: React.ComponentProps<'span'>): React.JSX.Element;
28
+ declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): React.JSX.Element;
29
+ declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
30
+ inset?: boolean | undefined;
31
+ } & React.RefAttributes<HTMLDivElement>>;
32
+ declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
33
+ export type DropdownMenuItemType = 'item' | 'label' | 'separator' | 'group';
34
+ export interface BaseDropdownMenuItemData {
35
+ disabled?: boolean;
36
+ }
37
+ export interface DropdownMenuItemConfig extends BaseDropdownMenuItemData {
38
+ type?: 'item';
39
+ value: string;
40
+ label: React.ReactNode;
41
+ shortcut?: string;
42
+ icon?: string;
43
+ children?: DropdownMenuItemData[];
44
+ }
45
+ export interface DropdownMenuLabelConfig extends BaseDropdownMenuItemData {
46
+ type: 'label';
47
+ label: React.ReactNode;
48
+ }
49
+ export interface DropdownMenuSeparatorConfig extends BaseDropdownMenuItemData {
50
+ type: 'separator';
51
+ }
52
+ export interface DropdownMenuGroupConfig extends BaseDropdownMenuItemData {
53
+ type: 'group';
54
+ children: DropdownMenuItemData[];
55
+ }
56
+ export type DropdownMenuItemData = DropdownMenuItemConfig | DropdownMenuLabelConfig | DropdownMenuSeparatorConfig | DropdownMenuGroupConfig;
57
+ export interface BaseDropdownProps {
58
+ menu?: DropdownMenuItemData[];
59
+ children: React.ReactNode;
60
+ placement?: 'top' | 'left' | 'right' | 'bottom' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | 'leftTop' | 'leftBottom' | 'rightTop' | 'rightBottom';
61
+ visible?: boolean;
62
+ onVisibleChange?: (visible: boolean) => void;
63
+ trigger?: 'click' | 'hover' | 'contextMenu';
64
+ disabled?: boolean;
65
+ allowSelectAll?: boolean;
66
+ matchWidth?: boolean;
67
+ /**
68
+ * @description z-index
69
+ */
70
+ zIndex?: number | string;
71
+ }
72
+ export interface DropdownRadioProps extends BaseDropdownProps {
73
+ selectable: true;
74
+ multiple?: false;
75
+ value?: string;
76
+ onSelect?: (value: string) => void;
77
+ }
78
+ export interface DropdownCheckboxProps extends BaseDropdownProps {
79
+ selectable: true;
80
+ multiple: true;
81
+ value?: string[];
82
+ onSelect?: (values: string[]) => void;
83
+ }
84
+ export interface DropdownNormalProps extends BaseDropdownProps {
85
+ selectable?: false;
86
+ onSelect?: (value: string) => void;
87
+ }
88
+ export type DropdownProps = DropdownRadioProps | DropdownCheckboxProps | DropdownNormalProps;
89
+ declare const Dropdown: React.FC<DropdownProps>;
90
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, };
91
+ export default Dropdown;