@tendaui/react 1.2.4 → 1.3.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 (787) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +1 -1
  3. package/es/_chunks/dep--nQ-cjme.js +45 -0
  4. package/es/_chunks/dep--nQ-cjme.js.map +1 -0
  5. package/es/_chunks/{dep-DTlQ2dCA.js → dep--qagmRQa.js} +2 -2
  6. package/es/_chunks/{dep-DTlQ2dCA.js.map → dep--qagmRQa.js.map} +1 -1
  7. package/es/_chunks/{dep-Dr5wkz0z.js → dep--svkhMCP.js} +12 -12
  8. package/es/_chunks/{dep-Dr5wkz0z.js.map → dep--svkhMCP.js.map} +1 -1
  9. package/es/_chunks/{dep-Bjfn7Zv_.js → dep-2HsCYcmp.js} +5 -5
  10. package/es/_chunks/{dep-Bjfn7Zv_.js.map → dep-2HsCYcmp.js.map} +1 -1
  11. package/es/_chunks/{dep-CkmtEv0Y.js → dep-B2D1svZy.js} +4 -2
  12. package/es/_chunks/dep-B2D1svZy.js.map +1 -0
  13. package/es/_chunks/{dep-BuIAffJt.js → dep-BI5F2D3y.js} +23 -13
  14. package/es/_chunks/dep-BI5F2D3y.js.map +1 -0
  15. package/es/_chunks/dep-BK4_iOSv.js +68 -0
  16. package/es/_chunks/dep-BK4_iOSv.js.map +1 -0
  17. package/es/_chunks/{dep-BYlJzn45.js → dep-BOj-ayw6.js} +26 -26
  18. package/es/_chunks/{dep-BYlJzn45.js.map → dep-BOj-ayw6.js.map} +1 -1
  19. package/es/_chunks/{dep-D68MD94M.js → dep-BZdpKjaa.js} +18 -18
  20. package/es/_chunks/{dep-D68MD94M.js.map → dep-BZdpKjaa.js.map} +1 -1
  21. package/es/_chunks/{dep-aX8qrQpB.js → dep-BbOvNxhg.js} +4 -4
  22. package/es/_chunks/{dep-aX8qrQpB.js.map → dep-BbOvNxhg.js.map} +1 -1
  23. package/es/_chunks/{dep-oUgTcXgm.js → dep-Blkje0_M.js} +2 -2
  24. package/es/_chunks/{dep-oUgTcXgm.js.map → dep-Blkje0_M.js.map} +1 -1
  25. package/es/_chunks/{dep-DJmE940f.js → dep-CHpQ3xhh.js} +2 -2
  26. package/es/_chunks/dep-CHpQ3xhh.js.map +1 -0
  27. package/es/_chunks/{dep-DX65P8M9.js → dep-CPjkUfQu.js} +2 -2
  28. package/es/_chunks/{dep-DX65P8M9.js.map → dep-CPjkUfQu.js.map} +1 -1
  29. package/es/_chunks/dep-CSzOEACo.js +165 -0
  30. package/es/_chunks/dep-CSzOEACo.js.map +1 -0
  31. package/es/_chunks/{dep-CJCt0IS0.js → dep-Cd1UOXnJ.js} +14 -14
  32. package/es/_chunks/{dep-CJCt0IS0.js.map → dep-Cd1UOXnJ.js.map} +1 -1
  33. package/es/_chunks/{dep-DQ6kXoi8.js → dep-DHWwZ2Nj.js} +2 -2
  34. package/es/_chunks/{dep-DQ6kXoi8.js.map → dep-DHWwZ2Nj.js.map} +1 -1
  35. package/es/_chunks/{dep-Tshfumgl.js → dep-DYFbjXzW.js} +2 -2
  36. package/es/_chunks/{dep-Tshfumgl.js.map → dep-DYFbjXzW.js.map} +1 -1
  37. package/es/_chunks/{dep-C_wPqvpm.js → dep-D_qcGLah.js} +2 -2
  38. package/es/_chunks/{dep-C_wPqvpm.js.map → dep-D_qcGLah.js.map} +1 -1
  39. package/es/_chunks/dep-DbVHGoUC.js.map +1 -1
  40. package/es/_chunks/{dep-CsSvR9wN.js → dep-DfsP8eqT.js} +21 -21
  41. package/es/_chunks/{dep-CsSvR9wN.js.map → dep-DfsP8eqT.js.map} +1 -1
  42. package/es/_chunks/dep-Dl5DFuGU.js +2001 -0
  43. package/es/_chunks/dep-Dl5DFuGU.js.map +1 -0
  44. package/es/_chunks/{dep-DURB9x8g.js → dep-Dnwq3YvL.js} +36 -21
  45. package/es/_chunks/dep-Dnwq3YvL.js.map +1 -0
  46. package/es/_chunks/{dep-B4_O1Vgv.js → dep-Dr3i7zFt.js} +12 -12
  47. package/es/_chunks/{dep-B4_O1Vgv.js.map → dep-Dr3i7zFt.js.map} +1 -1
  48. package/es/_chunks/{dep-CD_4-1Xb.js → dep-UHQn9biR.js} +5 -5
  49. package/es/_chunks/dep-UHQn9biR.js.map +1 -0
  50. package/es/_chunks/{dep-ByzdZjUR.js → dep-bWaVq_y3.js} +2 -2
  51. package/es/_chunks/{dep-ByzdZjUR.js.map → dep-bWaVq_y3.js.map} +1 -1
  52. package/es/_chunks/{dep-DwWrhxkd.js → dep-grkSd2UB.js} +3 -3
  53. package/es/_chunks/{dep-DwWrhxkd.js.map → dep-grkSd2UB.js.map} +1 -1
  54. package/es/_chunks/{dep-CMPsNAXF.js → dep-hCWFQAqL.js} +15 -9
  55. package/es/_chunks/dep-hCWFQAqL.js.map +1 -0
  56. package/es/_chunks/{dep-D6YxJv-F.js → dep-spxR0DG0.js} +3 -3
  57. package/es/_chunks/{dep-D6YxJv-F.js.map → dep-spxR0DG0.js.map} +1 -1
  58. package/es/_chunks/{dep-gy8uvBaS.js → dep-u1x3x6MJ.js} +2 -2
  59. package/es/_chunks/{dep-gy8uvBaS.js.map → dep-u1x3x6MJ.js.map} +1 -1
  60. package/es/alert/Alert.js +25 -24
  61. package/es/alert/Alert.js.map +1 -1
  62. package/es/alert/_example/base.js +27 -0
  63. package/es/alert/_example/base.js.map +1 -0
  64. package/es/alert/_example/collapse.js +14 -0
  65. package/es/alert/_example/collapse.js.map +1 -0
  66. package/es/alert/index.js +6 -5
  67. package/es/alert/index.js.map +1 -1
  68. package/es/badge/Badge.js +6 -5
  69. package/es/badge/Badge.js.map +1 -1
  70. package/es/badge/_example/base.js +11 -0
  71. package/es/badge/_example/base.js.map +1 -0
  72. package/es/badge/_example/count.js +38 -0
  73. package/es/badge/_example/count.js.map +1 -0
  74. package/es/badge/_example/custom-color.js +48 -0
  75. package/es/badge/_example/custom-color.js.map +1 -0
  76. package/es/badge/_example/dot.js +36 -0
  77. package/es/badge/_example/dot.js.map +1 -0
  78. package/es/badge/_example/max-count.js +37 -0
  79. package/es/badge/_example/max-count.js.map +1 -0
  80. package/es/badge/_example/offset.js +41 -0
  81. package/es/badge/_example/offset.js.map +1 -0
  82. package/es/badge/_example/shape.js +47 -0
  83. package/es/badge/_example/shape.js.map +1 -0
  84. package/es/badge/_example/show-zero.js +31 -0
  85. package/es/badge/_example/show-zero.js.map +1 -0
  86. package/es/badge/_example/size.js +54 -0
  87. package/es/badge/_example/size.js.map +1 -0
  88. package/es/badge/_example/standalone.js +27 -0
  89. package/es/badge/_example/standalone.js.map +1 -0
  90. package/es/badge/_example/text-count.js +32 -0
  91. package/es/badge/_example/text-count.js.map +1 -0
  92. package/es/badge/_example/with-button.js +33 -0
  93. package/es/badge/_example/with-button.js.map +1 -0
  94. package/es/badge/index.js +3 -2
  95. package/es/badge/index.js.map +1 -1
  96. package/es/button/Button.js +10 -9
  97. package/es/button/Button.js.map +1 -1
  98. package/es/button/__tests__/Button.test.js +54700 -0
  99. package/es/button/__tests__/Button.test.js.map +1 -0
  100. package/es/button/_example/base.js +3 -3
  101. package/es/button/_example/base.js.map +1 -1
  102. package/es/button/_example/block.js +26 -0
  103. package/es/button/_example/block.js.map +1 -0
  104. package/es/button/_example/disabled.js +32 -0
  105. package/es/button/_example/disabled.js.map +1 -0
  106. package/es/button/_example/ghost.js +32 -0
  107. package/es/button/_example/ghost.js.map +1 -0
  108. package/es/button/_example/icon.js +10 -10
  109. package/es/button/_example/icon.js.map +1 -1
  110. package/es/button/_example/link.js +24 -0
  111. package/es/button/_example/link.js.map +1 -0
  112. package/es/button/_example/loading.js +28 -0
  113. package/es/button/_example/loading.js.map +1 -0
  114. package/es/button/_example/shape.js +31 -0
  115. package/es/button/_example/shape.js.map +1 -0
  116. package/es/button/_example/size.js +25 -0
  117. package/es/button/_example/size.js.map +1 -0
  118. package/es/button/_example/suffix.js +23 -0
  119. package/es/button/_example/suffix.js.map +1 -0
  120. package/es/button/_example/theme.js +25 -0
  121. package/es/button/_example/theme.js.map +1 -0
  122. package/es/button/_example/variant-base.js +30 -0
  123. package/es/button/_example/variant-base.js.map +1 -0
  124. package/es/button/_example/variant-dashed.js +30 -0
  125. package/es/button/_example/variant-dashed.js.map +1 -0
  126. package/es/button/_example/variant-outline.js +30 -0
  127. package/es/button/_example/variant-outline.js.map +1 -0
  128. package/es/button/_example/variant-text.js +30 -0
  129. package/es/button/_example/variant-text.js.map +1 -0
  130. package/es/button/index.js +5 -4
  131. package/es/button/index.js.map +1 -1
  132. package/es/button/style/index.css +3 -3
  133. package/es/checkbox/Checkbox.js +6 -5
  134. package/es/checkbox/Checkbox.js.map +1 -1
  135. package/es/checkbox/CheckboxGroup.js +6 -5
  136. package/es/checkbox/CheckboxGroup.js.map +1 -1
  137. package/es/checkbox/_example/base.js +9 -0
  138. package/es/checkbox/_example/base.js.map +1 -0
  139. package/es/checkbox/_example/controlled.js +19 -0
  140. package/es/checkbox/_example/controlled.js.map +1 -0
  141. package/es/checkbox/_example/group-disabled.js +20 -0
  142. package/es/checkbox/_example/group-disabled.js.map +1 -0
  143. package/es/checkbox/_example/group-with-check-all.js +41 -0
  144. package/es/checkbox/_example/group-with-check-all.js.map +1 -0
  145. package/es/checkbox/_example/group-with-max.js +34 -0
  146. package/es/checkbox/_example/group-with-max.js.map +1 -0
  147. package/es/checkbox/_example/group-with-options.js +40 -0
  148. package/es/checkbox/_example/group-with-options.js.map +1 -0
  149. package/es/checkbox/_example/group.js +33 -0
  150. package/es/checkbox/_example/group.js.map +1 -0
  151. package/es/checkbox/_example/states.js +27 -0
  152. package/es/checkbox/_example/states.js.map +1 -0
  153. package/es/checkbox/index.js +6 -5
  154. package/es/checkbox/index.js.map +1 -1
  155. package/es/color-picker/ColorPickPanel.js +76 -12
  156. package/es/color-picker/ColorPickPanel.js.map +1 -1
  157. package/es/color-picker/ColorPicker.js +67 -18
  158. package/es/color-picker/ColorPicker.js.map +1 -1
  159. package/es/color-picker/_example/base.js +26 -0
  160. package/es/color-picker/_example/base.js.map +1 -0
  161. package/es/color-picker/_example/borderless.js +29 -0
  162. package/es/color-picker/_example/borderless.js.map +1 -0
  163. package/es/color-picker/_example/clearable.js +29 -0
  164. package/es/color-picker/_example/clearable.js.map +1 -0
  165. package/es/color-picker/_example/disabled.js +29 -0
  166. package/es/color-picker/_example/disabled.js.map +1 -0
  167. package/es/color-picker/_example/formats.js +79 -0
  168. package/es/color-picker/_example/formats.js.map +1 -0
  169. package/es/color-picker/_example/manual-input.js +91 -0
  170. package/es/color-picker/_example/manual-input.js.map +1 -0
  171. package/es/color-picker/_example/recent-colors.js +31 -0
  172. package/es/color-picker/_example/recent-colors.js.map +1 -0
  173. package/es/color-picker/_example/swatch-colors.js +27 -0
  174. package/es/color-picker/_example/swatch-colors.js.map +1 -0
  175. package/es/color-picker/_example/with-alpha.js +35 -0
  176. package/es/color-picker/_example/with-alpha.js.map +1 -0
  177. package/es/color-picker/components/panel/alpha.js +5 -4
  178. package/es/color-picker/components/panel/alpha.js.map +1 -1
  179. package/es/color-picker/components/panel/format/index.js +25 -23
  180. package/es/color-picker/components/panel/format/index.js.map +1 -1
  181. package/es/color-picker/components/panel/format/inputs.js +20 -18
  182. package/es/color-picker/components/panel/format/inputs.js.map +1 -1
  183. package/es/color-picker/components/panel/header.js +16 -14
  184. package/es/color-picker/components/panel/header.js.map +1 -1
  185. package/es/color-picker/components/panel/hue.js +5 -4
  186. package/es/color-picker/components/panel/hue.js.map +1 -1
  187. package/es/color-picker/components/panel/index.js +73 -9
  188. package/es/color-picker/components/panel/index.js.map +1 -1
  189. package/es/color-picker/components/panel/saturation.js +6 -5
  190. package/es/color-picker/components/panel/saturation.js.map +1 -1
  191. package/es/color-picker/components/panel/slider.js +9 -8
  192. package/es/color-picker/components/panel/slider.js.map +1 -1
  193. package/es/color-picker/components/panel/swatches.js +17 -16
  194. package/es/color-picker/components/panel/swatches.js.map +1 -1
  195. package/es/color-picker/components/trigger.js +58 -25
  196. package/es/color-picker/components/trigger.js.map +1 -1
  197. package/es/color-picker/index.js +63 -20
  198. package/es/color-picker/index.js.map +1 -1
  199. package/es/color-picker/utils/color-picker/index.js +4 -67
  200. package/es/color-picker/utils/color-picker/index.js.map +1 -1
  201. package/es/common/Check.js +11 -10
  202. package/es/common/Check.js.map +1 -1
  203. package/es/common/FakeArrow.js +6 -5
  204. package/es/common/FakeArrow.js.map +1 -1
  205. package/es/common/PluginContainer.js +4 -3
  206. package/es/common/PluginContainer.js.map +1 -1
  207. package/es/common/Portal.js +3 -2
  208. package/es/common/Portal.js.map +1 -1
  209. package/es/config-provider/ConfigContext.js +303 -4
  210. package/es/config-provider/ConfigContext.js.map +1 -1
  211. package/es/config-provider/ConfigProvider.js +17 -4
  212. package/es/config-provider/ConfigProvider.js.map +1 -1
  213. package/es/config-provider/index.js +2 -1
  214. package/es/config-provider/index.js.map +1 -1
  215. package/es/dialog/Dialog.js +19 -18
  216. package/es/dialog/Dialog.js.map +1 -1
  217. package/es/dialog/DialogCard.js +8 -7
  218. package/es/dialog/DialogCard.js.map +1 -1
  219. package/es/dialog/_example/base.js +32 -0
  220. package/es/dialog/_example/base.js.map +1 -0
  221. package/es/dialog/_example/confirm-loading.js +38 -0
  222. package/es/dialog/_example/confirm-loading.js.map +1 -0
  223. package/es/dialog/_example/custom-buttons.js +36 -0
  224. package/es/dialog/_example/custom-buttons.js.map +1 -0
  225. package/es/dialog/_example/full-screen.js +33 -0
  226. package/es/dialog/_example/full-screen.js.map +1 -0
  227. package/es/dialog/_example/hide-buttons.js +50 -0
  228. package/es/dialog/_example/hide-buttons.js.map +1 -0
  229. package/es/dialog/_example/modeless.js +30 -0
  230. package/es/dialog/_example/modeless.js.map +1 -0
  231. package/es/dialog/_example/placement.js +53 -0
  232. package/es/dialog/_example/placement.js.map +1 -0
  233. package/es/dialog/_example/plugin-example.js +81 -0
  234. package/es/dialog/_example/plugin-example.js.map +1 -0
  235. package/es/dialog/_example/themes.js +62 -0
  236. package/es/dialog/_example/themes.js.map +1 -0
  237. package/es/dialog/index.js +10 -9
  238. package/es/dialog/index.js.map +1 -1
  239. package/es/dialog/plugin.js +15 -14
  240. package/es/dialog/plugin.js.map +1 -1
  241. package/es/dialog/style/index.css +3 -3
  242. package/es/drawer/Drawer.js +46 -37
  243. package/es/drawer/Drawer.js.map +1 -1
  244. package/es/drawer/_example/custom-header-footer.js +78 -0
  245. package/es/drawer/_example/custom-header-footer.js.map +1 -0
  246. package/es/drawer/_example/default.js +61 -0
  247. package/es/drawer/_example/default.js.map +1 -0
  248. package/es/drawer/_example/events.js +81 -0
  249. package/es/drawer/_example/events.js.map +1 -0
  250. package/es/drawer/_example/no-footer.js +62 -0
  251. package/es/drawer/_example/no-footer.js.map +1 -0
  252. package/es/drawer/_example/no-overlay.js +62 -0
  253. package/es/drawer/_example/no-overlay.js.map +1 -0
  254. package/es/drawer/_example/placement.js +91 -0
  255. package/es/drawer/_example/placement.js.map +1 -0
  256. package/es/drawer/_example/size-draggable.js +65 -0
  257. package/es/drawer/_example/size-draggable.js.map +1 -0
  258. package/es/drawer/_example/size.js +96 -0
  259. package/es/drawer/_example/size.js.map +1 -0
  260. package/es/drawer/index.js +9 -8
  261. package/es/drawer/index.js.map +1 -1
  262. package/es/drawer/style/index.css +4 -4
  263. package/es/fireworks/Fireworks.js +7 -6
  264. package/es/fireworks/Fireworks.js.map +1 -1
  265. package/es/fireworks/index.js +3 -2
  266. package/es/fireworks/index.js.map +1 -1
  267. package/es/form/Form.js +26 -173
  268. package/es/form/Form.js.map +1 -1
  269. package/es/form/FormContext.js +5 -5
  270. package/es/form/FormContext.js.map +1 -1
  271. package/es/form/FormItem.js +12 -11
  272. package/es/form/FormItem.js.map +1 -1
  273. package/es/form/FormList.js +2 -2
  274. package/es/form/FormList.js.map +1 -1
  275. package/es/form/_example/complex.js +105 -0
  276. package/es/form/_example/complex.js.map +1 -0
  277. package/es/form/_example/default.js +87 -0
  278. package/es/form/_example/default.js.map +1 -0
  279. package/es/form/_example/disabled.js +40 -0
  280. package/es/form/_example/disabled.js.map +1 -0
  281. package/es/form/_example/form-list.js +122 -0
  282. package/es/form/_example/form-list.js.map +1 -0
  283. package/es/form/_example/inline-layout.js +32 -0
  284. package/es/form/_example/inline-layout.js.map +1 -0
  285. package/es/form/_example/label-align.js +73 -0
  286. package/es/form/_example/label-align.js.map +1 -0
  287. package/es/form/_example/methods.js +118 -0
  288. package/es/form/_example/methods.js.map +1 -0
  289. package/es/form/_example/validation.js +97 -0
  290. package/es/form/_example/validation.js.map +1 -0
  291. package/es/form/hooks/useFormItemStyle.js +5 -4
  292. package/es/form/hooks/useFormItemStyle.js.map +1 -1
  293. package/es/form/hooks/useInstance.js +5 -4
  294. package/es/form/hooks/useInstance.js.map +1 -1
  295. package/es/form/index.js +22 -17
  296. package/es/form/index.js.map +1 -1
  297. package/es/form/style/index.css +6 -6
  298. package/es/hooks/useDragSorter.js +4 -4
  299. package/es/hooks/useDragSorter.js.map +1 -1
  300. package/es/index.js +37 -30
  301. package/es/index.js.map +1 -1
  302. package/es/input/Input.js +165 -26
  303. package/es/input/Input.js.map +1 -1
  304. package/es/input/InputGroup.js +2 -2
  305. package/es/input/InputGroup.js.map +1 -1
  306. package/es/input/_example/auto-width.js +53 -0
  307. package/es/input/_example/auto-width.js.map +1 -0
  308. package/es/input/_example/borderless.js +52 -0
  309. package/es/input/_example/borderless.js.map +1 -0
  310. package/es/input/_example/clearable.js +54 -0
  311. package/es/input/_example/clearable.js.map +1 -0
  312. package/es/input/_example/default.js +37 -0
  313. package/es/input/_example/default.js.map +1 -0
  314. package/es/input/_example/disabled-readonly.js +48 -0
  315. package/es/input/_example/disabled-readonly.js.map +1 -0
  316. package/es/input/_example/events.js +87 -0
  317. package/es/input/_example/events.js.map +1 -0
  318. package/es/input/_example/group.js +47 -0
  319. package/es/input/_example/group.js.map +1 -0
  320. package/es/input/_example/label-suffix.js +48 -0
  321. package/es/input/_example/label-suffix.js.map +1 -0
  322. package/es/input/_example/max-length.js +44 -0
  323. package/es/input/_example/max-length.js.map +1 -0
  324. package/es/input/_example/password.js +43 -0
  325. package/es/input/_example/password.js.map +1 -0
  326. package/es/input/_example/sizes.js +47 -0
  327. package/es/input/_example/sizes.js.map +1 -0
  328. package/es/input/_example/status.js +55 -0
  329. package/es/input/_example/status.js.map +1 -0
  330. package/es/input/_example/text-align.js +50 -0
  331. package/es/input/_example/text-align.js.map +1 -0
  332. package/es/input/_example/with-icon.js +48 -0
  333. package/es/input/_example/with-icon.js.map +1 -0
  334. package/es/input/index.js +6 -5
  335. package/es/input/index.js.map +1 -1
  336. package/es/input/style/index.css +18 -9
  337. package/es/input-number/InputNumber.js +19 -18
  338. package/es/input-number/InputNumber.js.map +1 -1
  339. package/es/input-number/_example/align.js +88 -0
  340. package/es/input-number/_example/align.js.map +1 -0
  341. package/es/input-number/_example/auto-width.js +54 -0
  342. package/es/input-number/_example/auto-width.js.map +1 -0
  343. package/es/input-number/_example/default.js +55 -0
  344. package/es/input-number/_example/default.js.map +1 -0
  345. package/es/input-number/_example/events.js +103 -0
  346. package/es/input-number/_example/events.js.map +1 -0
  347. package/es/input-number/_example/format.js +94 -0
  348. package/es/input-number/_example/format.js.map +1 -0
  349. package/es/input-number/_example/large-number.js +81 -0
  350. package/es/input-number/_example/large-number.js.map +1 -0
  351. package/es/input-number/_example/min-max.js +70 -0
  352. package/es/input-number/_example/min-max.js.map +1 -0
  353. package/es/input-number/_example/sizes.js +128 -0
  354. package/es/input-number/_example/sizes.js.map +1 -0
  355. package/es/input-number/_example/status.js +175 -0
  356. package/es/input-number/_example/status.js.map +1 -0
  357. package/es/input-number/_example/step-and-decimal.js +70 -0
  358. package/es/input-number/_example/step-and-decimal.js.map +1 -0
  359. package/es/input-number/_example/themes.js +80 -0
  360. package/es/input-number/_example/themes.js.map +1 -0
  361. package/es/input-number/_example/with-suffix.js +74 -0
  362. package/es/input-number/_example/with-suffix.js.map +1 -0
  363. package/es/input-number/index.js +9 -8
  364. package/es/input-number/index.js.map +1 -1
  365. package/es/input-number/style/index.css +12 -12
  366. package/es/input-number/useInputNumber.js +5 -4
  367. package/es/input-number/useInputNumber.js.map +1 -1
  368. package/es/ip-input/IPInput.js +5 -4
  369. package/es/ip-input/IPInput.js.map +1 -1
  370. package/es/ip-input/_example/controlled.js +65 -0
  371. package/es/ip-input/_example/controlled.js.map +1 -0
  372. package/es/ip-input/_example/default.js +27 -0
  373. package/es/ip-input/_example/default.js.map +1 -0
  374. package/es/ip-input/_example/full-featured.js +48 -0
  375. package/es/ip-input/_example/full-featured.js.map +1 -0
  376. package/es/ip-input/_example/ipv6.js +47 -0
  377. package/es/ip-input/_example/ipv6.js.map +1 -0
  378. package/es/ip-input/_example/keyboard-navigation.js +46 -0
  379. package/es/ip-input/_example/keyboard-navigation.js.map +1 -0
  380. package/es/ip-input/_example/paste-demo.js +54 -0
  381. package/es/ip-input/_example/paste-demo.js.map +1 -0
  382. package/es/ip-input/_example/states.js +52 -0
  383. package/es/ip-input/_example/states.js.map +1 -0
  384. package/es/ip-input/_example/with-cidr.js +47 -0
  385. package/es/ip-input/_example/with-cidr.js.map +1 -0
  386. package/es/ip-input/index.js +5 -4
  387. package/es/ip-input/index.js.map +1 -1
  388. package/es/layout/Aside.js +5 -4
  389. package/es/layout/Aside.js.map +1 -1
  390. package/es/layout/Layout.js +10 -9
  391. package/es/layout/Layout.js.map +1 -1
  392. package/es/layout/_example/combine-left.js +68 -0
  393. package/es/layout/_example/combine-left.js.map +1 -0
  394. package/es/layout/_example/combine-right.js +68 -0
  395. package/es/layout/_example/combine-right.js.map +1 -0
  396. package/es/layout/_example/custom-aside-width.js +69 -0
  397. package/es/layout/_example/custom-aside-width.js.map +1 -0
  398. package/es/layout/_example/custom-height.js +59 -0
  399. package/es/layout/_example/custom-height.js.map +1 -0
  400. package/es/layout/_example/double-sidebar.js +72 -0
  401. package/es/layout/_example/double-sidebar.js.map +1 -0
  402. package/es/layout/_example/side-navigation-right.js +66 -0
  403. package/es/layout/_example/side-navigation-right.js.map +1 -0
  404. package/es/layout/_example/side-navigation.js +66 -0
  405. package/es/layout/_example/side-navigation.js.map +1 -0
  406. package/es/layout/_example/top-navigation.js +57 -0
  407. package/es/layout/_example/top-navigation.js.map +1 -0
  408. package/es/layout/index.js +4 -3
  409. package/es/layout/index.js.map +1 -1
  410. package/es/list/List.js +18 -17
  411. package/es/list/List.js.map +1 -1
  412. package/es/list/ListItem.js +7 -6
  413. package/es/list/ListItem.js.map +1 -1
  414. package/es/list/ListItemMeta.js +12 -11
  415. package/es/list/ListItemMeta.js.map +1 -1
  416. package/es/list/_example/async-loading.js +114 -0
  417. package/es/list/_example/async-loading.js.map +1 -0
  418. package/es/list/_example/default.js +62 -0
  419. package/es/list/_example/default.js.map +1 -0
  420. package/es/list/_example/header-footer.js +98 -0
  421. package/es/list/_example/header-footer.js.map +1 -0
  422. package/es/list/_example/multiline.js +66 -0
  423. package/es/list/_example/multiline.js.map +1 -0
  424. package/es/list/_example/scroll-loading.js +133 -0
  425. package/es/list/_example/scroll-loading.js.map +1 -0
  426. package/es/list/_example/sizes.js +94 -0
  427. package/es/list/_example/sizes.js.map +1 -0
  428. package/es/list/_example/split.js +93 -0
  429. package/es/list/_example/split.js.map +1 -0
  430. package/es/list/_example/stripe.js +68 -0
  431. package/es/list/_example/stripe.js.map +1 -0
  432. package/es/list/_example/virtual-scroll.js +97 -0
  433. package/es/list/_example/virtual-scroll.js.map +1 -0
  434. package/es/list/_example/with-image.js +72 -0
  435. package/es/list/_example/with-image.js.map +1 -0
  436. package/es/list/index.js +6 -5
  437. package/es/list/index.js.map +1 -1
  438. package/es/list/style/index.css +5 -5
  439. package/es/loading/Gradient.js +8 -7
  440. package/es/loading/Gradient.js.map +1 -1
  441. package/es/loading/Loading.js +14 -13
  442. package/es/loading/Loading.js.map +1 -1
  443. package/es/loading/_example/default.js +30 -0
  444. package/es/loading/_example/default.js.map +1 -0
  445. package/es/loading/_example/delay.js +70 -0
  446. package/es/loading/_example/delay.js.map +1 -0
  447. package/es/loading/_example/fullscreen.js +38 -0
  448. package/es/loading/_example/fullscreen.js.map +1 -0
  449. package/es/loading/_example/inherit-color.js +58 -0
  450. package/es/loading/_example/inherit-color.js.map +1 -0
  451. package/es/loading/_example/no-overlay.js +28 -0
  452. package/es/loading/_example/no-overlay.js.map +1 -0
  453. package/es/loading/_example/sizes.js +84 -0
  454. package/es/loading/_example/sizes.js.map +1 -0
  455. package/es/loading/_example/with-text.js +41 -0
  456. package/es/loading/_example/with-text.js.map +1 -0
  457. package/es/loading/_example/wrapper.js +41 -0
  458. package/es/loading/_example/wrapper.js.map +1 -0
  459. package/es/loading/index.js +4 -3
  460. package/es/loading/index.js.map +1 -1
  461. package/es/notification/NotifyContainer.js +7 -6
  462. package/es/notification/NotifyContainer.js.map +1 -1
  463. package/es/notification/NotifyContext.js +7 -6
  464. package/es/notification/NotifyContext.js.map +1 -1
  465. package/es/notification/NotifyItem.js +20 -19
  466. package/es/notification/NotifyItem.js.map +1 -1
  467. package/es/notification/_example/default.js +55 -0
  468. package/es/notification/_example/default.js.map +1 -0
  469. package/es/notification/_example/long-content.js +36 -0
  470. package/es/notification/_example/long-content.js.map +1 -0
  471. package/es/notification/_example/stacking.js +56 -0
  472. package/es/notification/_example/stacking.js.map +1 -0
  473. package/es/notification/_example/types.js +75 -0
  474. package/es/notification/_example/types.js.map +1 -0
  475. package/es/notification/_example/usage-example.js +68 -0
  476. package/es/notification/_example/usage-example.js.map +1 -0
  477. package/es/notification/index.js +3 -2
  478. package/es/notification/index.js.map +1 -1
  479. package/es/notification/style/index.css +4 -4
  480. package/es/popup/Popup.js +30 -17
  481. package/es/popup/Popup.js.map +1 -1
  482. package/es/popup/_example/controlled.js +55 -0
  483. package/es/popup/_example/controlled.js.map +1 -0
  484. package/es/popup/_example/custom-content.js +81 -0
  485. package/es/popup/_example/custom-content.js.map +1 -0
  486. package/es/popup/_example/default.js +24 -0
  487. package/es/popup/_example/default.js.map +1 -0
  488. package/es/popup/_example/delay.js +43 -0
  489. package/es/popup/_example/delay.js.map +1 -0
  490. package/es/popup/_example/disabled.js +35 -0
  491. package/es/popup/_example/disabled.js.map +1 -0
  492. package/es/popup/_example/no-arrow.js +32 -0
  493. package/es/popup/_example/no-arrow.js.map +1 -0
  494. package/es/popup/_example/placements.js +138 -0
  495. package/es/popup/_example/placements.js.map +1 -0
  496. package/es/popup/_example/triggers.js +49 -0
  497. package/es/popup/_example/triggers.js.map +1 -0
  498. package/es/popup/index.js +5 -4
  499. package/es/popup/index.js.map +1 -1
  500. package/es/radio/Radio.js +8 -7
  501. package/es/radio/Radio.js.map +1 -1
  502. package/es/radio/RadioGroup.js +8 -7
  503. package/es/radio/RadioGroup.js.map +1 -1
  504. package/es/radio/_example/allow-uncheck.js +37 -0
  505. package/es/radio/_example/allow-uncheck.js.map +1 -0
  506. package/es/radio/_example/button-style.js +79 -0
  507. package/es/radio/_example/button-style.js.map +1 -0
  508. package/es/radio/_example/controlled.js +19 -0
  509. package/es/radio/_example/controlled.js.map +1 -0
  510. package/es/radio/_example/default.js +11 -0
  511. package/es/radio/_example/default.js.map +1 -0
  512. package/es/radio/_example/group-disabled.js +34 -0
  513. package/es/radio/_example/group-disabled.js.map +1 -0
  514. package/es/radio/_example/group-with-options.js +40 -0
  515. package/es/radio/_example/group-with-options.js.map +1 -0
  516. package/es/radio/_example/group.js +33 -0
  517. package/es/radio/_example/group.js.map +1 -0
  518. package/es/radio/_example/sizes.js +57 -0
  519. package/es/radio/_example/sizes.js.map +1 -0
  520. package/es/radio/_example/states.js +25 -0
  521. package/es/radio/_example/states.js.map +1 -0
  522. package/es/radio/index.js +8 -7
  523. package/es/radio/index.js.map +1 -1
  524. package/es/select/Option.js +10 -9
  525. package/es/select/Option.js.map +1 -1
  526. package/es/select/OptionGroup.js +4 -3
  527. package/es/select/OptionGroup.js.map +1 -1
  528. package/es/select/PopupContent.js +5 -4
  529. package/es/select/PopupContent.js.map +1 -1
  530. package/es/select/Select.js +21 -20
  531. package/es/select/Select.js.map +1 -1
  532. package/es/select/_example/collapsed.js +55 -0
  533. package/es/select/_example/collapsed.js.map +1 -0
  534. package/es/select/_example/creatable.js +61 -0
  535. package/es/select/_example/creatable.js.map +1 -0
  536. package/es/select/_example/custom-content.js +41 -0
  537. package/es/select/_example/custom-content.js.map +1 -0
  538. package/es/select/_example/default.js +54 -0
  539. package/es/select/_example/default.js.map +1 -0
  540. package/es/select/_example/disabled.js +54 -0
  541. package/es/select/_example/disabled.js.map +1 -0
  542. package/es/select/_example/filterable.js +44 -0
  543. package/es/select/_example/filterable.js.map +1 -0
  544. package/es/select/_example/group-options.js +57 -0
  545. package/es/select/_example/group-options.js.map +1 -0
  546. package/es/select/_example/label-suffix.js +51 -0
  547. package/es/select/_example/label-suffix.js.map +1 -0
  548. package/es/select/_example/loading.js +45 -0
  549. package/es/select/_example/loading.js.map +1 -0
  550. package/es/select/_example/multiple.js +58 -0
  551. package/es/select/_example/multiple.js.map +1 -0
  552. package/es/select/_example/sizes.js +54 -0
  553. package/es/select/_example/sizes.js.map +1 -0
  554. package/es/select/_example/status.js +66 -0
  555. package/es/select/_example/status.js.map +1 -0
  556. package/es/select/index.js +12 -11
  557. package/es/select/index.js.map +1 -1
  558. package/es/select-input/SelectInput.js +14 -13
  559. package/es/select-input/SelectInput.js.map +1 -1
  560. package/es/select-input/hook/useMultiple.js +9 -8
  561. package/es/select-input/hook/useMultiple.js.map +1 -1
  562. package/es/select-input/hook/useSingle.js +9 -8
  563. package/es/select-input/hook/useSingle.js.map +1 -1
  564. package/es/select-input/index.js +8 -7
  565. package/es/select-input/index.js.map +1 -1
  566. package/es/slider/Slider.js +37 -27
  567. package/es/slider/Slider.js.map +1 -1
  568. package/es/slider/SliderHandleButton.js +3 -3
  569. package/es/slider/SliderHandleButton.js.map +1 -1
  570. package/es/slider/_example/custom-label.js +33 -0
  571. package/es/slider/_example/custom-label.js.map +1 -0
  572. package/es/slider/_example/default.js +33 -0
  573. package/es/slider/_example/default.js.map +1 -0
  574. package/es/slider/_example/disabled.js +38 -0
  575. package/es/slider/_example/disabled.js.map +1 -0
  576. package/es/slider/_example/marks.js +61 -0
  577. package/es/slider/_example/marks.js.map +1 -0
  578. package/es/slider/_example/range.js +30 -0
  579. package/es/slider/_example/range.js.map +1 -0
  580. package/es/slider/_example/step.js +31 -0
  581. package/es/slider/_example/step.js.map +1 -0
  582. package/es/slider/_example/vertical.js +67 -0
  583. package/es/slider/_example/vertical.js.map +1 -0
  584. package/es/slider/_example/with-input-number.js +55 -0
  585. package/es/slider/_example/with-input-number.js.map +1 -0
  586. package/es/slider/index.js +9 -8
  587. package/es/slider/index.js.map +1 -1
  588. package/es/slider/style/index.css +8 -8
  589. package/es/switch/Switch.js +13 -12
  590. package/es/switch/Switch.js.map +1 -1
  591. package/es/switch/_example/async-change.js +36 -0
  592. package/es/switch/_example/async-change.js.map +1 -0
  593. package/es/switch/_example/before-change.js +31 -0
  594. package/es/switch/_example/before-change.js.map +1 -0
  595. package/es/switch/_example/controlled.js +23 -0
  596. package/es/switch/_example/controlled.js.map +1 -0
  597. package/es/switch/_example/custom-value.js +50 -0
  598. package/es/switch/_example/custom-value.js.map +1 -0
  599. package/es/switch/_example/default.js +11 -0
  600. package/es/switch/_example/default.js.map +1 -0
  601. package/es/switch/_example/disabled.js +72 -0
  602. package/es/switch/_example/disabled.js.map +1 -0
  603. package/es/switch/_example/loading.js +44 -0
  604. package/es/switch/_example/loading.js.map +1 -0
  605. package/es/switch/_example/sizes.js +60 -0
  606. package/es/switch/_example/sizes.js.map +1 -0
  607. package/es/switch/_example/with-label.js +48 -0
  608. package/es/switch/_example/with-label.js.map +1 -0
  609. package/es/switch/index.js +6 -5
  610. package/es/switch/index.js.map +1 -1
  611. package/es/switch/style/index.css +56 -0
  612. package/es/tab/TabBar.js +8 -7
  613. package/es/tab/TabBar.js.map +1 -1
  614. package/es/tab/TabNav.js +12 -11
  615. package/es/tab/TabNav.js.map +1 -1
  616. package/es/tab/TabNavItem.js +11 -10
  617. package/es/tab/TabNavItem.js.map +1 -1
  618. package/es/tab/TabPanel.js +6 -4
  619. package/es/tab/TabPanel.js.map +1 -1
  620. package/es/tab/Tabs.js +20 -19
  621. package/es/tab/Tabs.js.map +1 -1
  622. package/es/tab/_example/addable.js +92 -0
  623. package/es/tab/_example/addable.js.map +1 -0
  624. package/es/tab/_example/card-theme.js +66 -0
  625. package/es/tab/_example/card-theme.js.map +1 -0
  626. package/es/tab/_example/default.js +65 -0
  627. package/es/tab/_example/default.js.map +1 -0
  628. package/es/tab/_example/disabled.js +99 -0
  629. package/es/tab/_example/disabled.js.map +1 -0
  630. package/es/tab/_example/lazy.js +73 -0
  631. package/es/tab/_example/lazy.js.map +1 -0
  632. package/es/tab/_example/placement.js +96 -0
  633. package/es/tab/_example/placement.js.map +1 -0
  634. package/es/tab/_example/removable.js +78 -0
  635. package/es/tab/_example/removable.js.map +1 -0
  636. package/es/tab/_example/sizes.js +85 -0
  637. package/es/tab/_example/sizes.js.map +1 -0
  638. package/es/tab/_example/with-action.js +71 -0
  639. package/es/tab/_example/with-action.js.map +1 -0
  640. package/es/tab/index.js +8 -7
  641. package/es/tab/index.js.map +1 -1
  642. package/es/tab/style/index.css +8 -8
  643. package/es/table/Cell.js +10 -11
  644. package/es/table/Cell.js.map +1 -1
  645. package/es/table/Ellipsis.js +77 -0
  646. package/es/table/Ellipsis.js.map +1 -0
  647. package/es/table/TBody.js +16 -13
  648. package/es/table/TBody.js.map +1 -1
  649. package/es/table/THead.js +7 -6
  650. package/es/table/THead.js.map +1 -1
  651. package/es/table/TR.js +9 -5
  652. package/es/table/TR.js.map +1 -1
  653. package/es/table/Table.js +14 -11
  654. package/es/table/Table.js.map +1 -1
  655. package/es/table/_example/alignment.js +96 -0
  656. package/es/table/_example/alignment.js.map +1 -0
  657. package/es/table/_example/auto-width.js +90 -0
  658. package/es/table/_example/auto-width.js.map +1 -0
  659. package/es/table/_example/bordered-stripe-hover.js +96 -0
  660. package/es/table/_example/bordered-stripe-hover.js.map +1 -0
  661. package/es/table/_example/bordered.js +94 -0
  662. package/es/table/_example/bordered.js.map +1 -0
  663. package/es/table/_example/cell-click.js +107 -0
  664. package/es/table/_example/cell-click.js.map +1 -0
  665. package/es/table/_example/complex.js +131 -0
  666. package/es/table/_example/complex.js.map +1 -0
  667. package/es/table/_example/custom-cell.js +115 -0
  668. package/es/table/_example/custom-cell.js.map +1 -0
  669. package/es/table/_example/custom-empty.js +64 -0
  670. package/es/table/_example/custom-empty.js.map +1 -0
  671. package/es/table/_example/custom-row-class-name.js +105 -0
  672. package/es/table/_example/custom-row-class-name.js.map +1 -0
  673. package/es/table/_example/default.js +93 -0
  674. package/es/table/_example/default.js.map +1 -0
  675. package/es/table/_example/ellipsis.js +96 -0
  676. package/es/table/_example/ellipsis.js.map +1 -0
  677. package/es/table/_example/empty.js +58 -0
  678. package/es/table/_example/empty.js.map +1 -0
  679. package/es/table/_example/fixed-width.js +98 -0
  680. package/es/table/_example/fixed-width.js.map +1 -0
  681. package/es/table/_example/hover.js +94 -0
  682. package/es/table/_example/hover.js.map +1 -0
  683. package/es/table/_example/row-click.js +100 -0
  684. package/es/table/_example/row-click.js.map +1 -0
  685. package/es/table/_example/sizes.js +111 -0
  686. package/es/table/_example/sizes.js.map +1 -0
  687. package/es/table/_example/stripe.js +94 -0
  688. package/es/table/_example/stripe.js.map +1 -0
  689. package/es/table/_example/vertical-align.js +110 -0
  690. package/es/table/_example/vertical-align.js.map +1 -0
  691. package/es/table/hooks/index.js +6 -5
  692. package/es/table/hooks/index.js.map +1 -1
  693. package/es/table/index.js +6 -3
  694. package/es/table/index.js.map +1 -1
  695. package/es/table/style/index.css +11 -10
  696. package/es/tag/Tag.js +8 -7
  697. package/es/tag/Tag.js.map +1 -1
  698. package/es/tag/_example/closable.js +43 -0
  699. package/es/tag/_example/closable.js.map +1 -0
  700. package/es/tag/_example/default.js +24 -0
  701. package/es/tag/_example/default.js.map +1 -0
  702. package/es/tag/_example/disabled.js +26 -0
  703. package/es/tag/_example/disabled.js.map +1 -0
  704. package/es/tag/_example/sizes.js +24 -0
  705. package/es/tag/_example/sizes.js.map +1 -0
  706. package/es/tag/_example/variants.js +49 -0
  707. package/es/tag/_example/variants.js.map +1 -0
  708. package/es/tag/index.js +4 -3
  709. package/es/tag/index.js.map +1 -1
  710. package/es/tag-input/TagInput.js +10 -9
  711. package/es/tag-input/TagInput.js.map +1 -1
  712. package/es/tag-input/_example/collapsed.js +39 -0
  713. package/es/tag-input/_example/collapsed.js.map +1 -0
  714. package/es/tag-input/_example/controlled-uncontrolled.js +47 -0
  715. package/es/tag-input/_example/controlled-uncontrolled.js.map +1 -0
  716. package/es/tag-input/_example/default.js +31 -0
  717. package/es/tag-input/_example/default.js.map +1 -0
  718. package/es/tag-input/_example/disabled-readonly.js +50 -0
  719. package/es/tag-input/_example/disabled-readonly.js.map +1 -0
  720. package/es/tag-input/_example/events.js +84 -0
  721. package/es/tag-input/_example/events.js.map +1 -0
  722. package/es/tag-input/_example/excess-display.js +40 -0
  723. package/es/tag-input/_example/excess-display.js.map +1 -0
  724. package/es/tag-input/_example/max-tags.js +36 -0
  725. package/es/tag-input/_example/max-tags.js.map +1 -0
  726. package/es/tag-input/_example/sizes.js +51 -0
  727. package/es/tag-input/_example/sizes.js.map +1 -0
  728. package/es/tag-input/_example/status.js +49 -0
  729. package/es/tag-input/_example/status.js.map +1 -0
  730. package/es/tag-input/_example/with-label.js +31 -0
  731. package/es/tag-input/_example/with-label.js.map +1 -0
  732. package/es/tag-input/hooks/useTagList.js +11 -10
  733. package/es/tag-input/hooks/useTagList.js.map +1 -1
  734. package/es/tag-input/index.js +7 -6
  735. package/es/tag-input/index.js.map +1 -1
  736. package/es/tag-input/useTagList.js +11 -10
  737. package/es/tag-input/useTagList.js.map +1 -1
  738. package/es/tooltip/Tooltip.js +100 -0
  739. package/es/tooltip/Tooltip.js.map +1 -0
  740. package/es/tooltip/_example/base.js +32 -0
  741. package/es/tooltip/_example/base.js.map +1 -0
  742. package/es/tooltip/_example/custom-content.js +62 -0
  743. package/es/tooltip/_example/custom-content.js.map +1 -0
  744. package/es/tooltip/_example/placement.js +31 -0
  745. package/es/tooltip/_example/placement.js.map +1 -0
  746. package/es/tooltip/_example/theme.js +47 -0
  747. package/es/tooltip/_example/theme.js.map +1 -0
  748. package/es/tooltip/index.js +36 -0
  749. package/es/tooltip/index.js.map +1 -0
  750. package/es/tooltip/style/index.css +59 -0
  751. package/es/tooltip/style/index.js +2 -0
  752. package/es/tooltip/style/index.js.map +1 -0
  753. package/es/utils/log/index.js.map +1 -1
  754. package/package.json +3 -3
  755. package/es/_chunks/dep-5U9UjDaf.js +0 -345
  756. package/es/_chunks/dep-5U9UjDaf.js.map +0 -1
  757. package/es/_chunks/dep-BuIAffJt.js.map +0 -1
  758. package/es/_chunks/dep-CD_4-1Xb.js.map +0 -1
  759. package/es/_chunks/dep-CMPsNAXF.js.map +0 -1
  760. package/es/_chunks/dep-CkmtEv0Y.js.map +0 -1
  761. package/es/_chunks/dep-DJmE940f.js.map +0 -1
  762. package/es/_chunks/dep-DURB9x8g.js.map +0 -1
  763. package/es/alert/style/css.js +0 -1
  764. package/es/badge/style/css.js +0 -1
  765. package/es/button/style/css.js +0 -1
  766. package/es/checkbox/style/css.js +0 -1
  767. package/es/color-picker/style/css.js +0 -1
  768. package/es/dialog/style/css.js +0 -1
  769. package/es/drawer/style/css.js +0 -1
  770. package/es/fireworks/style/css.js +0 -0
  771. package/es/form/style/css.js +0 -1
  772. package/es/input/style/css.js +0 -1
  773. package/es/input-number/style/css.js +0 -1
  774. package/es/ip-input/style/css.js +0 -1
  775. package/es/layout/style/css.js +0 -1
  776. package/es/list/style/css.js +0 -1
  777. package/es/loading/style/css.js +0 -1
  778. package/es/notification/style/css.js +0 -1
  779. package/es/popup/style/css.js +0 -1
  780. package/es/radio/style/css.js +0 -0
  781. package/es/select/style/css.js +0 -1
  782. package/es/select-input/style/css.js +0 -1
  783. package/es/slider/style/css.js +0 -1
  784. package/es/switch/style/css.js +0 -1
  785. package/es/table/style/css.js +0 -1
  786. package/es/tag/style/css.js +0 -1
  787. package/es/tag-input/style/css.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","sources":["../../../components/utils/ref.ts","../../../components/hooks/useWindowSize.ts","../../../components/utils/isFragment.ts","../../../components/utils/refs.ts","../../../components/popup/hooks/useTrigger.ts","../../../components/hooks/usePopper.ts","../../../components/popup/defaultProps.ts","../../../components/popup/Popup.tsx"],"sourcesContent":["export function getRefDom<T = HTMLElement>(domRef: React.RefObject<T>) {\n if (domRef.current && typeof domRef.current === \"object\" && \"currentElement\" in domRef.current) {\n return domRef.current.currentElement;\n }\n return domRef.current;\n}\n","import { useEffect, useState } from \"react\";\nimport { debounce } from \"lodash-es\";\nimport { getWindowSize } from \"../utils/dom\";\n\nexport interface WindowSize {\n width: number;\n height: number;\n}\n\nfunction useWindowSize(): WindowSize {\n const [size, setSize] = useState(getWindowSize);\n\n useEffect(() => {\n function handleResize() {\n setSize(getWindowSize());\n }\n\n const debounceResize = debounce(handleResize, 400);\n\n window.addEventListener(\"resize\", debounceResize);\n\n return () => {\n window.removeEventListener(\"resize\", debounceResize);\n debounceResize.cancel();\n };\n }, []);\n\n return size;\n}\n\nexport default useWindowSize;\n","// Source from:\n// https://github.com/react-component/util/blob/master/src/React/isFragment.ts\n\nconst REACT_ELEMENT_TYPE_18 = Symbol.for(\"react.element\");\nconst REACT_ELEMENT_TYPE_19 = Symbol.for(\"react.transitional.element\");\nconst REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\n\n/**\n * Compatible with React 18 or 19 to check if node is a Fragment.\n */\nexport default function isFragment(object: React.ReactElement | null | undefined): boolean {\n if (!object || typeof object !== \"object\") return false;\n\n const obj = object as unknown as { $$typeof?: symbol; type?: symbol | React.ElementType };\n\n return (\n // React Element type\n (obj.$$typeof === REACT_ELEMENT_TYPE_18 || obj.$$typeof === REACT_ELEMENT_TYPE_19) &&\n // React Fragment type\n obj.type === REACT_FRAGMENT_TYPE\n );\n}\n","// Source from:\n// https://github.com/react-component/util/blob/master/src/ref.ts\n\nimport { isValidElement } from \"react\";\nimport { ForwardRef, isMemo } from \"react-is\";\nimport isFragment from \"./isFragment\";\n\n// 判断是否支持 ref 透传\nexport const supportRef = (nodeOrComponent: unknown): boolean => {\n if (!nodeOrComponent) {\n return false;\n }\n\n // React 19 no need `forwardRef` anymore. So just pass if is a React element.\n\n if (\n isReactElement(nodeOrComponent as React.ReactNode) &&\n Object.prototype.propertyIsEnumerable.call((nodeOrComponent as React.ReactElement).props, \"ref\")\n ) {\n return true;\n }\n\n const type = isMemo(nodeOrComponent)\n ? (nodeOrComponent as { type: { type: unknown } }).type.type\n : (nodeOrComponent as { type: unknown }).type;\n\n // Function component node\n if (\n typeof type === \"function\" &&\n !(type as { prototype?: { render?: unknown } }).prototype?.render &&\n (type as { $$typeof?: symbol }).$$typeof !== ForwardRef\n ) {\n return false;\n }\n\n // Class component\n if (\n typeof nodeOrComponent === \"function\" &&\n !(nodeOrComponent as { prototype?: { render?: unknown } }).prototype?.render &&\n (nodeOrComponent as { $$typeof?: symbol }).$$typeof !== ForwardRef\n ) {\n return false;\n }\n return true;\n};\n\n// 获取 ref 中的 dom 元素\nexport function getRefDom<T = HTMLElement>(domRef: React.RefObject<T>) {\n if (domRef.current && typeof domRef.current === \"object\" && \"currentElement\" in domRef.current) {\n return (domRef.current as { currentElement: HTMLElement }).currentElement;\n }\n return domRef.current;\n}\n\ninterface RefAttributes<T> extends React.Attributes {\n ref: React.Ref<T>;\n}\n\nfunction isReactElement(node: React.ReactNode) {\n return isValidElement(node) && !isFragment(node);\n}\n\nexport const supportNodeRef = <T = HTMLElement>(node: React.ReactNode): node is React.ReactElement & RefAttributes<T> =>\n isReactElement(node) && supportRef(node);\n\n/**\n * In React 19. `ref` is not a property from node.\n * But a property from `props.ref`.\n * To check if `props.ref` exist or fallback to `ref`.\n */\nexport const getNodeRef = <T = HTMLElement>(node: React.ReactNode): React.Ref<T> | null => {\n if (node && isReactElement(node)) {\n const ele = node as React.ReactElement & { ref?: React.Ref<T> };\n\n // Source from:\n // https://github.com/mui/material-ui/blob/master/packages/mui-utils/src/getReactNodeRef/getReactNodeRef.ts\n\n return Object.prototype.propertyIsEnumerable.call(ele.props, \"ref\") ? ele.props.ref : ele.ref;\n }\n return null;\n};\n","import React, { useRef, useEffect, isValidElement, useCallback, useMemo } from \"react\";\nimport { isFragment } from \"react-is\";\nimport { supportRef, getRefDom, getNodeRef } from \"../../utils/refs\";\nimport composeRefs from \"../../utils/composeRefs\";\nimport { off, on } from \"../../utils/listener\";\nimport classNames from \"classnames\";\nimport { TNode } from \"../../common\";\nconst ESC_KEY = \"Escape\";\n\ninterface UseTriggerProps {\n content: TNode;\n disabled?: boolean;\n trigger: \"hover\" | \"click\" | \"mousedown\" | \"focus\" | \"context-menu\" | undefined;\n visible: boolean | undefined;\n onVisibleChange: (\n visible: boolean,\n context: {\n e?:\n | React.MouseEvent<HTMLElement>\n | React.TouchEvent<HTMLElement>\n | React.FocusEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>;\n trigger: string;\n }\n ) => void;\n triggerRef: React.RefObject<HTMLElement>;\n delay?: number | [number, number] | number[];\n}\n\nexport default function useTrigger({\n content,\n disabled,\n trigger,\n visible,\n onVisibleChange,\n triggerRef,\n delay\n}: UseTriggerProps) {\n const hasPopupMouseDown = useRef(false);\n const mouseDownTimer = useRef(0);\n const visibleTimer = useRef(null);\n const triggerDataKey = useRef<string>(\"\");\n const leaveFlag = useRef(false); // 防止多次触发显隐\n\n // 在 effect 中初始化 triggerDataKey,避免在渲染期间调用不纯函数\n useEffect(() => {\n if (!triggerDataKey.current) {\n triggerDataKey.current = `t-popup--${Math.random().toFixed(10)}`;\n }\n }, []);\n\n // 禁用和无内容时不展示\n const shouldToggle = useMemo(() => {\n if (disabled) return false; // 禁用\n return !disabled && content === 0 ? true : content; // 无内容时\n }, [disabled, content]);\n\n // 解析 delay 数据类型\n const [appearDelay = 0, exitDelay = 0] = useMemo(() => {\n if (Array.isArray(delay)) return delay;\n return [delay, delay];\n }, [delay]);\n\n function callFuncWithDelay({ delay, callback }: { delay?: number; callback: () => void }) {\n if (delay) {\n clearTimeout(visibleTimer.current);\n visibleTimer.current = setTimeout(callback, delay);\n } else {\n callback();\n }\n }\n\n // 点击 trigger overlay 以外的元素关闭\n useEffect(() => {\n if (!shouldToggle) return;\n\n const handleDocumentClick = (e: MouseEvent | TouchEvent) => {\n if (getRefDom(triggerRef)?.contains?.(e.target as Node) || hasPopupMouseDown.current) {\n return;\n }\n if (visible) {\n onVisibleChange(false, { trigger: \"document\" });\n }\n };\n on(document, \"mousedown\", handleDocumentClick);\n on(document, \"touchend\", handleDocumentClick);\n\n // 清理事件监听\n return () => {\n off(document, \"mousedown\", handleDocumentClick);\n off(document, \"touchend\", handleDocumentClick);\n };\n }, [shouldToggle, visible, onVisibleChange, triggerRef]);\n\n // 弹出内容交互处理\n function getPopupProps(): React.HTMLAttributes<HTMLElement> {\n if (!shouldToggle) return {};\n\n return {\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n console.log(\"popup mouse enter\");\n // leaveFlag表示是从 trigger 元素 hover 过来的,避免频繁显示隐藏\n if (trigger === \"hover\" && !leaveFlag.current) {\n // 清除延迟显示定时器\n clearTimeout(visibleTimer.current);\n // 立即显示\n onVisibleChange(true, { e, trigger: \"trigger-element-hover\" });\n }\n },\n onMouseLeave: (e: React.MouseEvent<HTMLElement>) => {\n console.log(\"popup mouse leave\");\n if (trigger === \"hover\") {\n // 防止 鼠标移出后,马上移入 popup 元素,导致 popup 重新显示 特别是有延迟显示时 是一个防抖标志\n leaveFlag.current = true;\n\n // 清除延迟显示定时器\n clearTimeout(visibleTimer.current);\n // 立即隐藏\n onVisibleChange(false, { e, trigger: \"trigger-element-hover\" });\n }\n },\n onMouseDown: () => {\n // 清除鼠标按下定时器\n clearTimeout(mouseDownTimer.current);\n // 鼠标按下时,触发 useEffect 中的 document click 事件,点击trigger和popup元素 不需要隐藏\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n // 事件处理完毕后,重置标志\n hasPopupMouseDown.current = false;\n });\n },\n // 触摸结束时,和mouseDown 类似\n\n onTouchEnd: () => {\n clearTimeout(mouseDownTimer.current);\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n hasPopupMouseDown.current = false;\n });\n }\n };\n }\n\n // 整理 trigger props\n function getTriggerProps(triggerNode: React.ReactElement<React.HTMLAttributes<HTMLElement>>) {\n if (!shouldToggle) return {};\n\n const triggerProps: React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> } = {\n className: visible ? classNames(triggerNode.props.className, `t-popup-open`) : triggerNode.props.className,\n onMouseDown: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"mousedown\") {\n callFuncWithDelay({\n delay: visible ? appearDelay : exitDelay,\n callback: () =>\n onVisibleChange(!visible, {\n e,\n trigger: \"trigger-element-mousedown\"\n })\n });\n }\n triggerNode.props.onMouseDown?.(e);\n },\n onClick: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"click\") {\n callFuncWithDelay({\n // appearDelay 和 exitDelay 分别表示点击时的延迟显示和隐藏\n delay: visible ? appearDelay : exitDelay,\n callback: () =>\n onVisibleChange(!visible, {\n e,\n trigger: \"trigger-element-click\"\n })\n });\n }\n triggerNode.props.onClick?.(e);\n },\n onTouchStart: (e: React.TouchEvent<HTMLElement>) => {\n if (trigger === \"hover\" || trigger === \"mousedown\") {\n // leaveFlag 表示是从 trigger 元素 hover 过来的,避免频繁显示隐藏\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onTouchStart?.(e);\n },\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"hover\") {\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onMouseEnter?.(e);\n },\n onMouseLeave: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"hover\") {\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: exitDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onMouseLeave?.(e);\n },\n onFocus: (e: React.FocusEvent<HTMLElement>) => {\n if (trigger === \"focus\") {\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-focus\" })\n });\n }\n triggerNode.props.onFocus?.(e);\n },\n onBlur: (e: React.FocusEvent<HTMLElement>) => {\n if (trigger === \"focus\") {\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"trigger-element-blur\" })\n });\n }\n triggerNode.props.onBlur?.(e);\n },\n onContextMenu: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"context-menu\") {\n e.preventDefault();\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"context-menu\" })\n });\n }\n triggerNode.props.onContextMenu?.(e);\n },\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => {\n if (e?.key === ESC_KEY) {\n callFuncWithDelay({\n delay: exitDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"keydown-esc\" })\n });\n }\n triggerNode.props.onKeyDown?.(e);\n }\n };\n // 如果支持 ref 透传,composeRefs 返回一个函数,当组件挂载时,执行函数,triggerRef 和 tiggerNode 指向触发元素的dom\n if (supportRef(triggerNode)) {\n triggerProps.ref = composeRefs(triggerRef, getNodeRef(triggerNode));\n } else {\n // 标记 trigger 元素\n triggerProps[\"data-popup\"] = triggerDataKey.current;\n }\n\n return triggerProps;\n }\n\n // 整理 trigger 元素\n function getTriggerNode(children: React.ReactNode) {\n const triggerNode =\n isValidElement(children) && !isFragment(children) ? children : React.createElement(\"span\", {}, children);\n\n return React.cloneElement(triggerNode, getTriggerProps(triggerNode));\n }\n\n // ref 透传失败时使用 dom 查找\n const getTriggerDom = useCallback(() => {\n if (typeof document === \"undefined\") return {};\n return document.querySelector(`[data-popup=\"${triggerDataKey.current}\"]`);\n }, []);\n\n return {\n getTriggerNode,\n getPopupProps,\n getTriggerDom\n };\n}\n","// https://github.com/floating-ui/react-popper/blob/master/src/usePopper.js\n// React popper was archived by the owner on Dec 6, 2024.\n// to maintain this hook in the repo since upgrading to support React 19.0\nimport { useMemo, useRef, useState } from \"react\";\nimport { flushSync } from \"react-dom\";\nimport {\n createPopper as defaultCreatePopper,\n type Options as PopperOptions,\n type VirtualElement,\n type State as PopperState,\n type Instance as PopperInstance\n} from \"@popperjs/core\";\n\nimport isEqual from \"react-fast-compare\";\nimport useIsomorphicLayoutEffect from \"./useLayoutEffect\";\nimport type { Styles } from \"../common\";\n\ntype Options = Partial<\n PopperOptions & {\n createPopper: typeof defaultCreatePopper;\n }\n>;\n\ntype Attributes = {\n [key: string]: { [key: string]: string };\n};\n\ntype State = {\n styles: Record<string, Styles>;\n attributes: Attributes;\n};\n\nimport type { ModifierPhases } from \"@popperjs/core\";\n\ninterface Modifier {\n name: string;\n enabled?: boolean;\n phase?: ModifierPhases;\n fn?: (data: { state: PopperState }) => void;\n requires?: string[];\n}\n\nconst EMPTY_MODIFIERS: Modifier[] = [];\n\ntype UsePopperResult = {\n state?: PopperState;\n styles: Record<string, Styles>;\n attributes: Attributes;\n update: PopperInstance[\"update\"] | null;\n forceUpdate: PopperInstance[\"forceUpdate\"] | null;\n};\n\nconst fromEntries = <T>(entries: Array<[string, T]>): Record<string, T> =>\n entries.reduce(\n (acc, [key, value]) => {\n acc[key] = value;\n return acc;\n },\n {} as Record<string, T>\n );\n\nconst usePopper = (\n referenceElement?: Element | VirtualElement,\n popperElement?: HTMLElement,\n options: Options = {}\n): UsePopperResult => {\n const prevOptions = useRef<PopperOptions>(null);\n\n const optionsWithDefaults = {\n onFirstUpdate: options.onFirstUpdate,\n placement: options.placement || \"bottom\",\n strategy: options.strategy || \"absolute\",\n modifiers: options.modifiers || EMPTY_MODIFIERS\n };\n\n const [state, setState] = useState<State>({\n styles: {\n popper: {\n position: optionsWithDefaults.strategy,\n left: \"0\",\n top: \"0\"\n },\n arrow: {\n position: \"absolute\"\n }\n },\n attributes: {}\n });\n\n const updateStateModifier = useMemo(\n () => ({\n name: \"updateState\",\n enabled: true,\n phase: \"write\" as ModifierPhases,\n fn: ({ state }: { state: PopperState }) => {\n const elements = Object.keys(state.elements);\n\n flushSync(() => {\n setState({\n styles: fromEntries(elements.map((element) => [element, state.styles[element] || {}])) as Record<\n string,\n Styles\n >,\n attributes: fromEntries(elements.map((element) => [element, state.attributes[element]])) as Attributes\n });\n });\n },\n requires: [\"computeStyles\"]\n }),\n []\n );\n\n const popperOptions = useMemo(() => {\n const newOptions = {\n onFirstUpdate: optionsWithDefaults.onFirstUpdate,\n placement: optionsWithDefaults.placement,\n strategy: optionsWithDefaults.strategy,\n modifiers: [\n ...optionsWithDefaults.modifiers,\n updateStateModifier,\n {\n name: \"applyStyles\",\n enabled: false,\n phase: \"write\" as ModifierPhases\n }\n ]\n };\n\n // 使用 setTimeout 避免在渲染期间访问 ref\n setTimeout(() => {\n if (!isEqual(prevOptions.current, newOptions)) {\n prevOptions.current = newOptions;\n }\n }, 0);\n\n return newOptions;\n }, [\n optionsWithDefaults.onFirstUpdate,\n optionsWithDefaults.placement,\n optionsWithDefaults.strategy,\n optionsWithDefaults.modifiers,\n updateStateModifier\n ]);\n\n const popperInstanceRef = useRef<PopperInstance | null>(null);\n\n useIsomorphicLayoutEffect(() => {\n if (popperInstanceRef.current) {\n popperInstanceRef.current.setOptions(popperOptions);\n }\n }, [popperOptions]);\n\n useIsomorphicLayoutEffect(() => {\n if (referenceElement == null || popperElement == null) {\n return;\n }\n\n const createPopper = options.createPopper || defaultCreatePopper;\n const popperInstance = createPopper(referenceElement, popperElement, popperOptions);\n\n popperInstanceRef.current = popperInstance;\n\n return () => {\n popperInstance.destroy();\n popperInstanceRef.current = null;\n };\n }, [referenceElement, popperElement, options.createPopper]);\n\n const getPopperInstance = () => popperInstanceRef.current;\n\n return {\n get state() {\n const instance = getPopperInstance();\n return instance ? instance.state : undefined;\n },\n styles: state.styles,\n attributes: state.attributes,\n get update() {\n const instance = getPopperInstance();\n return instance ? instance.update : null;\n },\n get forceUpdate() {\n const instance = getPopperInstance();\n return instance ? instance.forceUpdate : null;\n }\n };\n};\n\nexport default usePopper;\n","/**\n * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC\n * */\n\nimport { TdPopupProps } from \"./type\";\n\nexport const popupDefaultProps: TdPopupProps = {\n destroyOnClose: false,\n hideEmptyPopup: false,\n placement: \"top\",\n showArrow: false,\n trigger: \"hover\"\n};\n","import { Placement, type Options } from \"@popperjs/core\";\nimport { debounce, isFunction } from \"lodash-es\";\nimport React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState } from \"react\";\nimport { getRefDom } from \"../utils/ref\";\nimport Portal from \"../portal/Portal\";\nimport useControlled from \"../hooks/useControlled\";\nimport useDefaultProps from \"../hooks/useDefaultProps\";\nimport useMutationObserver from \"../hooks/useMutationObserver\";\nimport useWindowSize from \"../hooks/useWindowSize\";\nimport useTrigger from \"./hooks/useTrigger\";\nimport type { TdPopupProps, PopupVisibleChangeContext } from \"./type\";\nimport usePopper from \"../hooks/usePopper\";\nimport { popupDefaultProps } from \"./defaultProps\";\nimport classNames from \"classnames\";\nimport { CSSTransition } from \"react-transition-group\";\nimport { getCssVarsValue } from \"../utils/style\";\nimport useConfig from \"../hooks/useConfig\";\n\nexport interface PopupProps extends TdPopupProps {\n // 是否触发展开收起动画,内部下拉式组件使用\n expandAnimation?: boolean;\n // 更新内容区域滚动条\n updateScrollTop?: (content: HTMLDivElement) => void;\n}\n\nexport interface PopupRef {\n /** 获取 popper 实例 */\n getPopper: () => ReturnType<typeof usePopper>;\n /** 获取 Popup dom 元素 */\n getPopupElement: () => HTMLDivElement;\n /** 获取 portal dom 元素 */\n getPortalElement: () => HTMLDivElement;\n /** 获取内容区域 dom 元素 */\n getPopupContentElement: () => HTMLDivElement;\n /** 设置 popup 显示隐藏 */\n setVisible: (visible: boolean) => void;\n}\n\nconst Popup = forwardRef<PopupRef, PopupProps>((originalProps, ref) => {\n const props = useDefaultProps<PopupProps>(originalProps, popupDefaultProps);\n const { classPrefix } = useConfig();\n const {\n trigger,\n content,\n placement,\n showArrow,\n destroyOnClose,\n overlayClassName,\n overlayInnerClassName,\n overlayStyle,\n overlayInnerStyle,\n triggerElement,\n children = triggerElement,\n disabled,\n zIndex,\n onScroll,\n onScrollToBottom,\n delay,\n hideEmptyPopup,\n updateScrollTop\n } = props;\n\n // 全局配置\n const { height: windowHeight, width: windowWidth } = useWindowSize();\n const handleVisibleChange = (visible: boolean, context: PopupVisibleChangeContext) => {\n props.onVisibleChange?.(visible, context);\n };\n const [visible, onVisibleChangeInternal] = useControlled(props, \"visible\", handleVisibleChange);\n // 适配 useTrigger 的类型\n const onVisibleChangeForTrigger = (\n visible: boolean,\n context: {\n e?:\n | React.MouseEvent<HTMLElement>\n | React.TouchEvent<HTMLElement>\n | React.FocusEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>;\n trigger: string;\n }\n ) => {\n const popupContext: PopupVisibleChangeContext = {\n e: context.e as any,\n trigger: context.trigger as any\n };\n onVisibleChangeInternal(visible, popupContext);\n };\n // 记录 popup 元素\n // 如果内容为 null 或 undefined,且 hideEmptyPopup 为 true,则不展示 popup\n const [popupElement, setPopupElement] = useState(null);\n const triggerRef = useRef(null); // 记录 trigger 元素\n const popupRef = useRef(null); // popup dom 元素,css transition 需要用\n const portalRef = useRef(null); // portal dom 元素\n const contentRef = useRef(null); // 内容部分\n const popperRef = useRef<ReturnType<typeof usePopper> | null>(null); // 保存 popper 实例\n\n // 默认动画时长\n const DEFAULT_TRANSITION_TIMEOUT = 180;\n\n // 处理切换 panel 为 null 和正常内容动态切换的情况\n useEffect(() => {\n if (!content && hideEmptyPopup) {\n requestAnimationFrame(() => setPopupElement(null));\n }\n }, [content, hideEmptyPopup]);\n\n // 判断展示浮层\n const showOverlay = useMemo(() => {\n if (hideEmptyPopup && !content) return false;\n return visible || popupElement;\n }, [hideEmptyPopup, content, visible, popupElement]);\n\n // 转化 placement\n const popperPlacement = useMemo(\n () => placement && (placement.replace(/-(left|top)$/, \"-start\").replace(/-(right|bottom)$/, \"-end\") as Placement),\n [placement]\n );\n // 获取 triggerNode\n const { getTriggerNode, getPopupProps, getTriggerDom } = useTrigger({\n triggerRef,\n content,\n disabled,\n trigger,\n visible,\n delay,\n onVisibleChange: onVisibleChangeForTrigger\n });\n // 传入popperjs 配置选项\n const popperOptions = props.popperOptions as Options;\n const { placement: _ignored, ...restPopperOptions } = popperOptions || {};\n // Suppress unused variable warning\n void _ignored;\n\n // popperRef 表示 popper 实例\n popperRef.current = usePopper(getRefDom(triggerRef) as HTMLElement | null, popupElement, {\n placement: popperPlacement as Placement,\n ...restPopperOptions\n });\n\n // arrow modifier 用于显示箭头\n const hasArrowModifier = popperOptions?.modifiers?.some((modifier) => modifier.name === \"arrow\");\n const { styles, attributes } = popperRef.current;\n // 获取 triggerNode\n // 如果 children 是函数,则调用函数获取 triggerNode\n // getTriggerNode 设置触发元素的事件\n const triggerNode = isFunction(children) ? getTriggerNode(children({ visible })) : getTriggerNode(children);\n\n const updateTimeRef = useRef(null);\n // 监听 trigger 节点或内容变化动态更新 popup 定位\n useMutationObserver(getRefDom(triggerRef) as HTMLElement | null, () => {\n const triggerDom = getRefDom(triggerRef) as HTMLElement | null;\n const isDisplayNone = triggerDom ? getCssVarsValue(\"display\", triggerDom) === \"none\" : true;\n if (visible && !isDisplayNone) {\n clearTimeout(updateTimeRef.current);\n updateTimeRef.current = setTimeout(() => popperRef.current?.update?.(), 0);\n }\n });\n // 清理定时器\n useEffect(() => () => clearTimeout(updateTimeRef.current), []);\n\n // 窗口尺寸变化时调整位置\n useEffect(() => {\n if (visible) {\n requestAnimationFrame(() => popperRef.current?.update?.());\n }\n }, [visible, content, windowHeight, windowWidth]);\n\n // 下拉展开时更新内部滚动条\n useEffect(() => {\n if (!triggerRef.current) triggerRef.current = getTriggerDom();\n if (visible) {\n updateScrollTop?.(contentRef.current);\n }\n }, [visible, updateScrollTop, getTriggerDom]);\n\n function handleExited() {\n if (!destroyOnClose && popupElement) {\n (popupElement as HTMLElement).style.display = \"none\";\n }\n }\n function handleEnter() {\n if (!destroyOnClose && popupElement) {\n popupElement.style.display = \"block\";\n }\n }\n\n function handleScroll(e: React.WheelEvent<HTMLDivElement>) {\n onScroll?.({ e });\n\n // 防止多次触发添加截流\n const debounceOnScrollBottom = debounce((e) => onScrollToBottom?.({ e }), 100);\n\n const { scrollTop, clientHeight, scrollHeight } = e.target as HTMLDivElement;\n // windows 下滚动会出现小数,所以这里取整\n if (clientHeight + Math.floor(scrollTop) === scrollHeight) {\n // touch bottom\n debounceOnScrollBottom(e);\n }\n }\n\n // 整理浮层样式\n function getOverlayStyle(overlayStyle: TdPopupProps[\"overlayStyle\"]) {\n const triggerDom = getRefDom(triggerRef) as HTMLElement | null;\n if (triggerDom && popupRef.current && typeof overlayStyle === \"function\") {\n return { ...overlayStyle(triggerDom, popupRef.current) };\n }\n return { ...overlayStyle };\n }\n\n const overlay = showOverlay && (\n <CSSTransition\n appear\n in={visible}\n timeout={DEFAULT_TRANSITION_TIMEOUT}\n nodeRef={portalRef}\n unmountOnExit={destroyOnClose}\n onEnter={handleEnter}\n onExited={handleExited}\n classNames={`${classPrefix}-portal`}\n >\n <Portal triggerNode={getRefDom(triggerRef) as HTMLElement | null} attach=\"body\" ref={portalRef}>\n <CSSTransition appear timeout={0} in={visible} nodeRef={popupRef} classNames={`${classPrefix}-popup`}>\n <div\n ref={(node) => {\n if (node) {\n popupRef.current = node;\n setPopupElement(node);\n }\n }}\n style={{\n ...styles.popper,\n zIndex,\n ...getOverlayStyle(overlayStyle)\n }}\n className={classNames(`${classPrefix}-popup`, overlayClassName, \"\")}\n {...attributes.popper}\n {...getPopupProps()}\n >\n <div\n ref={contentRef}\n className={classNames(\n `${classPrefix}-popup__content`,\n {\n [`${classPrefix}-popup__content--arrow`]: showArrow\n },\n overlayInnerClassName\n )}\n style={getOverlayStyle(overlayInnerStyle)}\n onScroll={handleScroll}\n >\n {content}\n {showArrow && (\n <div\n style={styles.arrow}\n className={`${classPrefix}-popup__arrow`}\n {...(hasArrowModifier && { \"data-popper-arrow\": \"\" })}\n />\n )}\n </div>\n </div>\n </CSSTransition>\n </Portal>\n </CSSTransition>\n );\n // 使用 useImperativeHandle 暴露给父组件\n // 这样父组件可以通过 ref 获取 popper 实例、popup 元素\n // portal 元素和内容区域元素\n // 以及设置 popup 的显示隐藏状态\n useImperativeHandle(ref, () => ({\n getPopper: () => popperRef.current,\n getPopupElement: () => popupRef.current,\n getPortalElement: () => portalRef.current,\n getPopupContentElement: () => contentRef.current,\n setVisible: (visible: boolean) =>\n onVisibleChangeInternal(visible, { trigger: \"document\" } as PopupVisibleChangeContext)\n }));\n // 这里使用 React.Fragment 包裹 triggerNode 和 overlay,确保返回一个单一的父节点\n // 这样可以避免在渲染时出现多个根节点的错误\n return (\n <React.Fragment>\n {triggerNode}\n {overlay}\n </React.Fragment>\n );\n});\n\nPopup.displayName = \"Popup\";\n\nexport default Popup;\n"],"names":["getRefDom","domRef","current","_typeof","currentElement","useWindowSize","_useState","useState","getWindowSize","_useState2","_slicedToArray","size","setSize","useEffect","handleResize","debounceResize","debounce","window","addEventListener","removeEventListener","cancel","REACT_ELEMENT_TYPE_18","Symbol","REACT_ELEMENT_TYPE_19","REACT_FRAGMENT_TYPE","isFragment","object","obj","$$typeof","type","supportRef","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","isReactElement","Object","prototype","propertyIsEnumerable","call","props","isMemo","render","ForwardRef","node","isValidElement","supportNodeRef","getNodeRef","ele","ref","ESC_KEY","useTrigger","_ref","content","disabled","trigger","visible","onVisibleChange","triggerRef","delay","hasPopupMouseDown","useRef","mouseDownTimer","visibleTimer","triggerDataKey","leaveFlag","Math","random","toFixed","shouldToggle","useMemo","_useMemo","Array","isArray","_useMemo2","_useMemo2$","appearDelay","_useMemo2$2","exitDelay","callFuncWithDelay","_ref2","callback","clearTimeout","setTimeout","handleDocumentClick","e","_getRefDom","_getRefDom$contains","contains","target","on","document","off","getPopupProps","onMouseEnter","console","log","onMouseLeave","onMouseDown","onTouchEnd","getTriggerProps","triggerNode","triggerProps","className","classNames","_triggerNode$props$on","_triggerNode$props","onClick","_triggerNode$props$on2","_triggerNode$props2","onTouchStart","_triggerNode$props$on3","_triggerNode$props3","_triggerNode$props$on4","_triggerNode$props4","_triggerNode$props$on5","_triggerNode$props5","onFocus","_triggerNode$props$on6","_triggerNode$props6","onBlur","_triggerNode$props$on7","_triggerNode$props7","onContextMenu","_triggerNode$props$on8","_triggerNode$props8","preventDefault","onKeyDown","_triggerNode$props$on9","_triggerNode$props9","key","composeRefs","getTriggerNode","children","React","createElement","cloneElement","getTriggerDom","useCallback","querySelector","concat","EMPTY_MODIFIERS","fromEntries","entries","reduce","acc","value","usePopper","referenceElement","popperElement","options","arguments","length","undefined","prevOptions","optionsWithDefaults","onFirstUpdate","placement","strategy","modifiers","styles","popper","position","left","top","arrow","attributes","state","setState","updateStateModifier","name","enabled","phase","fn","_ref3","elements","keys","flushSync","map","element","requires","popperOptions","newOptions","_toConsumableArray","isEqual","popperInstanceRef","useIsomorphicLayoutEffect","setOptions","createPopper","defaultCreatePopper","popperInstance","destroy","getPopperInstance","instance","update","forceUpdate","popupDefaultProps","destroyOnClose","hideEmptyPopup","showArrow","Popup","forwardRef","originalProps","_popperOptions$modifi","useDefaultProps","_useConfig","useConfig","classPrefix","overlayClassName","overlayInnerClassName","overlayStyle","overlayInnerStyle","triggerElement","_props$children","zIndex","onScroll","onScrollToBottom","updateScrollTop","_useWindowSize","windowHeight","height","windowWidth","width","handleVisibleChange","context","_props$onVisibleChang","_useControlled","useControlled","_useControlled2","onVisibleChangeInternal","onVisibleChangeForTrigger","popupContext","popupElement","setPopupElement","popupRef","portalRef","contentRef","popperRef","DEFAULT_TRANSITION_TIMEOUT","requestAnimationFrame","showOverlay","popperPlacement","replace","_useTrigger","_ignored","restPopperOptions","_objectWithoutProperties","_excluded","_objectSpread","hasArrowModifier","some","modifier","_popperRef$current","isFunction","updateTimeRef","useMutationObserver","triggerDom","isDisplayNone","getCssVarsValue","_popperRef$current2","_popperRef$current2$u","_popperRef$current3","_popperRef$current3$u","handleExited","style","display","handleEnter","handleScroll","debounceOnScrollBottom","_e$target","scrollTop","clientHeight","scrollHeight","floor","getOverlayStyle","overlay","CSSTransition","appear","timeout","nodeRef","unmountOnExit","onEnter","onExited","Portal","attach","_defineProperty","useImperativeHandle","getPopper","getPopupElement","getPortalElement","getPopupContentElement","setVisible","Fragment","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","sources":["../../../components/utils/ref.ts","../../../components/hooks/useWindowSize.ts","../../../components/utils/isFragment.ts","../../../components/utils/refs.ts","../../../components/popup/hooks/useTrigger.ts","../../../components/hooks/usePopper.ts","../../../components/popup/defaultProps.ts","../../../components/popup/Popup.tsx"],"sourcesContent":["export function getRefDom<T = HTMLElement>(domRef: React.RefObject<T>) {\n if (domRef.current && typeof domRef.current === \"object\" && \"currentElement\" in domRef.current) {\n return domRef.current.currentElement;\n }\n return domRef.current;\n}\n","import { useEffect, useState } from \"react\";\nimport { debounce } from \"lodash-es\";\nimport { getWindowSize } from \"../utils/dom\";\n\nexport interface WindowSize {\n width: number;\n height: number;\n}\n\nfunction useWindowSize(): WindowSize {\n const [size, setSize] = useState(getWindowSize);\n\n useEffect(() => {\n function handleResize() {\n setSize(getWindowSize());\n }\n\n const debounceResize = debounce(handleResize, 400);\n\n window.addEventListener(\"resize\", debounceResize);\n\n return () => {\n window.removeEventListener(\"resize\", debounceResize);\n debounceResize.cancel();\n };\n }, []);\n\n return size;\n}\n\nexport default useWindowSize;\n","// Source from:\n// https://github.com/react-component/util/blob/master/src/React/isFragment.ts\n\nconst REACT_ELEMENT_TYPE_18 = Symbol.for(\"react.element\");\nconst REACT_ELEMENT_TYPE_19 = Symbol.for(\"react.transitional.element\");\nconst REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\n\n/**\n * Compatible with React 18 or 19 to check if node is a Fragment.\n */\nexport default function isFragment(object: React.ReactElement | null | undefined): boolean {\n if (!object || typeof object !== \"object\") return false;\n\n const obj = object as unknown as { $$typeof?: symbol; type?: symbol | React.ElementType };\n\n return (\n // React Element type\n (obj.$$typeof === REACT_ELEMENT_TYPE_18 || obj.$$typeof === REACT_ELEMENT_TYPE_19) &&\n // React Fragment type\n obj.type === REACT_FRAGMENT_TYPE\n );\n}\n","// Source from:\n// https://github.com/react-component/util/blob/master/src/ref.ts\n\nimport { isValidElement } from \"react\";\nimport { ForwardRef, isMemo } from \"react-is\";\nimport isFragment from \"./isFragment\";\n\n// 判断是否支持 ref 透传\nexport const supportRef = (nodeOrComponent: unknown): boolean => {\n if (!nodeOrComponent) {\n return false;\n }\n\n // React 19 no need `forwardRef` anymore. So just pass if is a React element.\n\n if (\n isReactElement(nodeOrComponent as React.ReactNode) &&\n Object.prototype.propertyIsEnumerable.call((nodeOrComponent as React.ReactElement).props, \"ref\")\n ) {\n return true;\n }\n\n const type = isMemo(nodeOrComponent)\n ? (nodeOrComponent as { type: { type: unknown } }).type.type\n : (nodeOrComponent as { type: unknown }).type;\n\n // Function component node\n if (\n typeof type === \"function\" &&\n !(type as { prototype?: { render?: unknown } }).prototype?.render &&\n (type as { $$typeof?: symbol }).$$typeof !== ForwardRef\n ) {\n return false;\n }\n\n // Class component\n if (\n typeof nodeOrComponent === \"function\" &&\n !(nodeOrComponent as { prototype?: { render?: unknown } }).prototype?.render &&\n (nodeOrComponent as { $$typeof?: symbol }).$$typeof !== ForwardRef\n ) {\n return false;\n }\n return true;\n};\n\n// 获取 ref 中的 dom 元素\nexport function getRefDom<T = HTMLElement>(domRef: React.RefObject<T>) {\n if (domRef.current && typeof domRef.current === \"object\" && \"currentElement\" in domRef.current) {\n return (domRef.current as { currentElement: HTMLElement }).currentElement;\n }\n return domRef.current;\n}\n\ninterface RefAttributes<T> extends React.Attributes {\n ref: React.Ref<T>;\n}\n\nfunction isReactElement(node: React.ReactNode) {\n return isValidElement(node) && !isFragment(node);\n}\n\nexport const supportNodeRef = <T = HTMLElement>(node: React.ReactNode): node is React.ReactElement & RefAttributes<T> =>\n isReactElement(node) && supportRef(node);\n\n/**\n * In React 19. `ref` is not a property from node.\n * But a property from `props.ref`.\n * To check if `props.ref` exist or fallback to `ref`.\n */\nexport const getNodeRef = <T = HTMLElement>(node: React.ReactNode): React.Ref<T> | null => {\n if (node && isReactElement(node)) {\n const ele = node as React.ReactElement & { ref?: React.Ref<T> };\n\n // Source from:\n // https://github.com/mui/material-ui/blob/master/packages/mui-utils/src/getReactNodeRef/getReactNodeRef.ts\n\n return Object.prototype.propertyIsEnumerable.call(ele.props, \"ref\") ? ele.props.ref : ele.ref;\n }\n return null;\n};\n","import React, { useRef, useEffect, isValidElement, useCallback, useMemo } from \"react\";\nimport { isFragment } from \"react-is\";\nimport { supportRef, getRefDom, getNodeRef } from \"../../utils/refs\";\nimport composeRefs from \"../../utils/composeRefs\";\nimport { off, on } from \"../../utils/listener\";\nimport classNames from \"classnames\";\nimport { TNode } from \"../../common\";\nconst ESC_KEY = \"Escape\";\n\ninterface UseTriggerProps {\n content: TNode;\n disabled?: boolean;\n trigger: \"hover\" | \"click\" | \"mousedown\" | \"focus\" | \"context-menu\" | undefined;\n visible: boolean | undefined;\n onVisibleChange: (\n visible: boolean,\n context: {\n e?:\n | React.MouseEvent<HTMLElement>\n | React.TouchEvent<HTMLElement>\n | React.FocusEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>;\n trigger: string;\n }\n ) => void;\n triggerRef: React.RefObject<HTMLElement>;\n delay?: number | [number, number] | number[];\n}\n\nexport default function useTrigger({\n content,\n disabled,\n trigger,\n visible,\n onVisibleChange,\n triggerRef,\n delay\n}: UseTriggerProps) {\n const hasPopupMouseDown = useRef(false);\n const mouseDownTimer = useRef(0);\n const visibleTimer = useRef(null);\n const triggerDataKey = useRef<string>(\"\");\n const leaveFlag = useRef(false); // 防止多次触发显隐\n\n // 在 effect 中初始化 triggerDataKey,避免在渲染期间调用不纯函数\n useEffect(() => {\n if (!triggerDataKey.current) {\n triggerDataKey.current = `t-popup--${Math.random().toFixed(10)}`;\n }\n }, []);\n\n // 禁用和无内容时不展示\n const shouldToggle = useMemo(() => {\n if (disabled) return false; // 禁用\n return !disabled && content === 0 ? true : content; // 无内容时\n }, [disabled, content]);\n\n // 解析 delay 数据类型\n const [appearDelay = 0, exitDelay = 0] = useMemo(() => {\n if (Array.isArray(delay)) return delay;\n return [delay, delay];\n }, [delay]);\n\n function callFuncWithDelay({ delay, callback }: { delay?: number; callback: () => void }) {\n if (delay) {\n clearTimeout(visibleTimer.current);\n visibleTimer.current = setTimeout(callback, delay);\n } else {\n callback();\n }\n }\n\n // 点击 trigger overlay 以外的元素关闭\n useEffect(() => {\n if (!shouldToggle) return;\n\n const handleDocumentClick = (e: MouseEvent | TouchEvent) => {\n if (getRefDom(triggerRef)?.contains?.(e.target as Node) || hasPopupMouseDown.current) {\n return;\n }\n if (visible) {\n onVisibleChange(false, { trigger: \"document\" });\n }\n };\n on(document, \"mousedown\", handleDocumentClick);\n on(document, \"touchend\", handleDocumentClick);\n\n // 清理事件监听\n return () => {\n off(document, \"mousedown\", handleDocumentClick);\n off(document, \"touchend\", handleDocumentClick);\n };\n }, [shouldToggle, visible, onVisibleChange, triggerRef]);\n\n // 弹出内容交互处理\n function getPopupProps(): React.HTMLAttributes<HTMLElement> {\n if (!shouldToggle) return {};\n\n return {\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n console.log(\"popup mouse enter\");\n // leaveFlag表示是从 trigger 元素 hover 过来的,避免频繁显示隐藏\n if (trigger === \"hover\" && !leaveFlag.current) {\n // 清除延迟显示定时器\n clearTimeout(visibleTimer.current);\n // 立即显示\n onVisibleChange(true, { e, trigger: \"trigger-element-hover\" });\n }\n },\n onMouseLeave: (e: React.MouseEvent<HTMLElement>) => {\n console.log(\"popup mouse leave\");\n if (trigger === \"hover\") {\n // 防止 鼠标移出后,马上移入 popup 元素,导致 popup 重新显示 特别是有延迟显示时 是一个防抖标志\n leaveFlag.current = true;\n\n // 清除延迟显示定时器\n clearTimeout(visibleTimer.current);\n // 立即隐藏\n onVisibleChange(false, { e, trigger: \"trigger-element-hover\" });\n }\n },\n onMouseDown: () => {\n // 清除鼠标按下定时器\n clearTimeout(mouseDownTimer.current);\n // 鼠标按下时,触发 useEffect 中的 document click 事件,点击trigger和popup元素 不需要隐藏\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n // 事件处理完毕后,重置标志\n hasPopupMouseDown.current = false;\n });\n },\n // 触摸结束时,和mouseDown 类似\n\n onTouchEnd: () => {\n clearTimeout(mouseDownTimer.current);\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n hasPopupMouseDown.current = false;\n });\n }\n };\n }\n\n // 整理 trigger props\n function getTriggerProps(triggerNode: React.ReactElement<React.HTMLAttributes<HTMLElement>>) {\n if (!shouldToggle) return {};\n\n const triggerProps: React.HTMLAttributes<HTMLElement> & { ref?: React.Ref<HTMLElement> } = {\n className: visible ? classNames(triggerNode.props.className, `t-popup-open`) : triggerNode.props.className,\n onMouseDown: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"mousedown\") {\n callFuncWithDelay({\n delay: visible ? appearDelay : exitDelay,\n callback: () =>\n onVisibleChange(!visible, {\n e,\n trigger: \"trigger-element-mousedown\"\n })\n });\n }\n triggerNode.props.onMouseDown?.(e);\n },\n onClick: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"click\") {\n callFuncWithDelay({\n // appearDelay 和 exitDelay 分别表示点击时的延迟显示和隐藏\n delay: visible ? appearDelay : exitDelay,\n callback: () =>\n onVisibleChange(!visible, {\n e,\n trigger: \"trigger-element-click\"\n })\n });\n }\n triggerNode.props.onClick?.(e);\n },\n onTouchStart: (e: React.TouchEvent<HTMLElement>) => {\n if (trigger === \"hover\" || trigger === \"mousedown\") {\n // leaveFlag 表示是从 trigger 元素 hover 过来的,避免频繁显示隐藏\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onTouchStart?.(e);\n },\n onMouseEnter: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"hover\") {\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onMouseEnter?.(e);\n },\n onMouseLeave: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"hover\") {\n leaveFlag.current = false;\n callFuncWithDelay({\n delay: exitDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"trigger-element-hover\" })\n });\n }\n triggerNode.props.onMouseLeave?.(e);\n },\n onFocus: (e: React.FocusEvent<HTMLElement>) => {\n if (trigger === \"focus\") {\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"trigger-element-focus\" })\n });\n }\n triggerNode.props.onFocus?.(e);\n },\n onBlur: (e: React.FocusEvent<HTMLElement>) => {\n if (trigger === \"focus\") {\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"trigger-element-blur\" })\n });\n }\n triggerNode.props.onBlur?.(e);\n },\n onContextMenu: (e: React.MouseEvent<HTMLElement>) => {\n if (trigger === \"context-menu\") {\n e.preventDefault();\n callFuncWithDelay({\n delay: appearDelay,\n callback: () => onVisibleChange(true, { e, trigger: \"context-menu\" })\n });\n }\n triggerNode.props.onContextMenu?.(e);\n },\n onKeyDown: (e: React.KeyboardEvent<HTMLElement>) => {\n if (e?.key === ESC_KEY) {\n callFuncWithDelay({\n delay: exitDelay,\n callback: () => onVisibleChange(false, { e, trigger: \"keydown-esc\" })\n });\n }\n triggerNode.props.onKeyDown?.(e);\n }\n };\n // 如果支持 ref 透传,composeRefs 返回一个函数,当组件挂载时,执行函数,triggerRef 和 tiggerNode 指向触发元素的dom\n if (supportRef(triggerNode)) {\n triggerProps.ref = composeRefs(triggerRef, getNodeRef(triggerNode));\n } else {\n // 标记 trigger 元素\n triggerProps[\"data-popup\"] = triggerDataKey.current;\n }\n\n return triggerProps;\n }\n\n // 整理 trigger 元素\n function getTriggerNode(children: React.ReactNode) {\n const triggerNode =\n isValidElement(children) && !isFragment(children) ? children : React.createElement(\"span\", {}, children);\n\n return React.cloneElement(triggerNode, getTriggerProps(triggerNode));\n }\n\n // ref 透传失败时使用 dom 查找\n const getTriggerDom = useCallback(() => {\n if (typeof document === \"undefined\") return {};\n return document.querySelector(`[data-popup=\"${triggerDataKey.current}\"]`);\n }, []);\n\n return {\n getTriggerNode,\n getPopupProps,\n getTriggerDom\n };\n}\n","// https://github.com/floating-ui/react-popper/blob/master/src/usePopper.js\n// React popper was archived by the owner on Dec 6, 2024.\n// to maintain this hook in the repo since upgrading to support React 19.0\nimport { useMemo, useRef, useState } from \"react\";\nimport { flushSync } from \"react-dom\";\nimport {\n createPopper as defaultCreatePopper,\n type Options as PopperOptions,\n type VirtualElement,\n type State as PopperState,\n type Instance as PopperInstance\n} from \"@popperjs/core\";\n\nimport isEqual from \"react-fast-compare\";\nimport useIsomorphicLayoutEffect from \"./useLayoutEffect\";\nimport type { Styles } from \"../common\";\n\ntype Options = Partial<\n PopperOptions & {\n createPopper: typeof defaultCreatePopper;\n }\n>;\n\ntype Attributes = {\n [key: string]: { [key: string]: string };\n};\n\ntype State = {\n styles: Record<string, Styles>;\n attributes: Attributes;\n};\n\nimport type { ModifierPhases } from \"@popperjs/core\";\n\ninterface Modifier {\n name: string;\n enabled?: boolean;\n phase?: ModifierPhases;\n fn?: (data: { state: PopperState }) => void;\n requires?: string[];\n}\n\nconst EMPTY_MODIFIERS: Modifier[] = [];\n\ntype UsePopperResult = {\n state?: PopperState;\n styles: Record<string, Styles>;\n attributes: Attributes;\n update: PopperInstance[\"update\"] | null;\n forceUpdate: PopperInstance[\"forceUpdate\"] | null;\n};\n\nconst fromEntries = <T>(entries: Array<[string, T]>): Record<string, T> =>\n entries.reduce(\n (acc, [key, value]) => {\n acc[key] = value;\n return acc;\n },\n {} as Record<string, T>\n );\n\nconst usePopper = (\n referenceElement?: Element | VirtualElement,\n popperElement?: HTMLElement,\n options: Options = {}\n): UsePopperResult => {\n const prevOptions = useRef<PopperOptions>(null);\n\n const optionsWithDefaults = {\n onFirstUpdate: options.onFirstUpdate,\n placement: options.placement || \"bottom\",\n strategy: options.strategy || \"absolute\",\n modifiers: options.modifiers || EMPTY_MODIFIERS\n };\n\n const [state, setState] = useState<State>({\n styles: {\n popper: {\n position: optionsWithDefaults.strategy,\n left: \"0\",\n top: \"0\"\n },\n arrow: {\n position: \"absolute\"\n }\n },\n attributes: {}\n });\n\n const updateStateModifier = useMemo(\n () => ({\n name: \"updateState\",\n enabled: true,\n phase: \"write\" as ModifierPhases,\n fn: ({ state }: { state: PopperState }) => {\n const elements = Object.keys(state.elements);\n\n flushSync(() => {\n setState({\n styles: fromEntries(elements.map((element) => [element, state.styles[element] || {}])) as Record<\n string,\n Styles\n >,\n attributes: fromEntries(elements.map((element) => [element, state.attributes[element]])) as Attributes\n });\n });\n },\n requires: [\"computeStyles\"]\n }),\n []\n );\n\n const popperOptions = useMemo(() => {\n const newOptions = {\n onFirstUpdate: optionsWithDefaults.onFirstUpdate,\n placement: optionsWithDefaults.placement,\n strategy: optionsWithDefaults.strategy,\n modifiers: [\n ...optionsWithDefaults.modifiers,\n updateStateModifier,\n {\n name: \"applyStyles\",\n enabled: false,\n phase: \"write\" as ModifierPhases\n }\n ]\n };\n\n // 使用 setTimeout 避免在渲染期间访问 ref\n setTimeout(() => {\n if (!isEqual(prevOptions.current, newOptions)) {\n prevOptions.current = newOptions;\n }\n }, 0);\n\n return newOptions;\n }, [\n optionsWithDefaults.onFirstUpdate,\n optionsWithDefaults.placement,\n optionsWithDefaults.strategy,\n optionsWithDefaults.modifiers,\n updateStateModifier\n ]);\n\n const popperInstanceRef = useRef<PopperInstance | null>(null);\n\n useIsomorphicLayoutEffect(() => {\n if (popperInstanceRef.current) {\n popperInstanceRef.current.setOptions(popperOptions);\n }\n }, [popperOptions]);\n\n useIsomorphicLayoutEffect(() => {\n if (referenceElement == null || popperElement == null) {\n return;\n }\n\n const createPopper = options.createPopper || defaultCreatePopper;\n const popperInstance = createPopper(referenceElement, popperElement, popperOptions);\n\n popperInstanceRef.current = popperInstance;\n\n return () => {\n popperInstance.destroy();\n popperInstanceRef.current = null;\n };\n }, [referenceElement, popperElement, options.createPopper]);\n\n const getPopperInstance = () => popperInstanceRef.current;\n\n return {\n get state() {\n const instance = getPopperInstance();\n return instance ? instance.state : undefined;\n },\n styles: state.styles,\n attributes: state.attributes,\n get update() {\n const instance = getPopperInstance();\n return instance ? instance.update : null;\n },\n get forceUpdate() {\n const instance = getPopperInstance();\n return instance ? instance.forceUpdate : null;\n }\n };\n};\n\nexport default usePopper;\n","/**\n * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC\n * */\n\nimport { TdPopupProps } from \"./type\";\n\nexport const popupDefaultProps: TdPopupProps = {\n destroyOnClose: false,\n hideEmptyPopup: false,\n placement: \"top\",\n showArrow: false,\n trigger: \"hover\"\n};\n","import { Placement, type Options } from \"@popperjs/core\";\nimport { debounce, isFunction } from \"lodash-es\";\nimport React, { forwardRef, useEffect, useImperativeHandle, useMemo, useRef, useState } from \"react\";\nimport { getRefDom } from \"../utils/ref\";\nimport Portal from \"../portal/Portal\";\nimport useControlled from \"../hooks/useControlled\";\nimport useDefaultProps from \"../hooks/useDefaultProps\";\nimport useMutationObserver from \"../hooks/useMutationObserver\";\nimport useWindowSize from \"../hooks/useWindowSize\";\nimport useTrigger from \"./hooks/useTrigger\";\nimport type { TdPopupProps, PopupVisibleChangeContext } from \"./type\";\nimport usePopper from \"../hooks/usePopper\";\nimport { popupDefaultProps } from \"./defaultProps\";\nimport classNames from \"classnames\";\nimport { CSSTransition } from \"react-transition-group\";\nimport { getCssVarsValue } from \"../utils/style\";\nimport useConfig from \"../hooks/useConfig\";\n\nexport interface PopupProps extends TdPopupProps {\n // 是否触发展开收起动画,内部下拉式组件使用\n expandAnimation?: boolean;\n // 更新内容区域滚动条\n updateScrollTop?: (content: HTMLDivElement) => void;\n}\n\nexport interface PopupRef {\n /** 获取 popper 实例 */\n getPopper: () => ReturnType<typeof usePopper>;\n /** 获取 Popup dom 元素 */\n getPopupElement: () => HTMLDivElement;\n /** 获取 portal dom 元素 */\n getPortalElement: () => HTMLDivElement;\n /** 获取内容区域 dom 元素 */\n getPopupContentElement: () => HTMLDivElement;\n /** 设置 popup 显示隐藏 */\n setVisible: (visible: boolean) => void;\n}\n\nconst Popup = forwardRef<PopupRef, PopupProps>((originalProps, ref) => {\n const props = useDefaultProps<PopupProps>(originalProps, popupDefaultProps);\n const { classPrefix, direction } = useConfig();\n const {\n trigger,\n content,\n placement,\n showArrow,\n destroyOnClose,\n overlayClassName,\n overlayInnerClassName,\n overlayStyle,\n overlayInnerStyle,\n triggerElement,\n children = triggerElement,\n disabled,\n zIndex,\n onScroll,\n onScrollToBottom,\n delay,\n hideEmptyPopup,\n updateScrollTop\n } = props;\n\n // 全局配置\n const { height: windowHeight, width: windowWidth } = useWindowSize();\n const handleVisibleChange = (visible: boolean, context: PopupVisibleChangeContext) => {\n props.onVisibleChange?.(visible, context);\n };\n const [visible, onVisibleChangeInternal] = useControlled(props, \"visible\", handleVisibleChange);\n // 适配 useTrigger 的类型\n const onVisibleChangeForTrigger = (\n visible: boolean,\n context: {\n e?:\n | React.MouseEvent<HTMLElement>\n | React.TouchEvent<HTMLElement>\n | React.FocusEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>;\n trigger: string;\n }\n ) => {\n const popupContext: PopupVisibleChangeContext = {\n e: context.e as any,\n trigger: context.trigger as any\n };\n onVisibleChangeInternal(visible, popupContext);\n };\n // 记录 popup 元素\n // 如果内容为 null 或 undefined,且 hideEmptyPopup 为 true,则不展示 popup\n const [popupElement, setPopupElement] = useState(null);\n const triggerRef = useRef(null); // 记录 trigger 元素\n const popupRef = useRef(null); // popup dom 元素,css transition 需要用\n const portalRef = useRef(null); // portal dom 元素\n const contentRef = useRef(null); // 内容部分\n const popperRef = useRef<ReturnType<typeof usePopper> | null>(null); // 保存 popper 实例\n\n // 默认动画时长\n const DEFAULT_TRANSITION_TIMEOUT = 180;\n\n // 处理切换 panel 为 null 和正常内容动态切换的情况\n useEffect(() => {\n if (!content && hideEmptyPopup) {\n requestAnimationFrame(() => setPopupElement(null));\n }\n }, [content, hideEmptyPopup]);\n\n // 判断展示浮层\n const showOverlay = useMemo(() => {\n if (hideEmptyPopup && !content) return false;\n return visible || popupElement;\n }, [hideEmptyPopup, content, visible, popupElement]);\n\n // 转化 placement\n const popperPlacement = useMemo(() => {\n if (!placement) return placement;\n const normalized = placement.replace(/-(left|top)$/, \"-start\").replace(/-(right|bottom)$/, \"-end\");\n if (direction !== \"rtl\") return normalized as Placement;\n const parts = normalized.split(\"-\");\n const mirrored = parts\n .map((part) => {\n if (part === \"left\") return \"right\";\n if (part === \"right\") return \"left\";\n if (part === \"start\") return \"end\";\n if (part === \"end\") return \"start\";\n return part;\n })\n .join(\"-\");\n return mirrored as Placement;\n }, [placement, direction]);\n // 获取 triggerNode\n const { getTriggerNode, getPopupProps, getTriggerDom } = useTrigger({\n triggerRef,\n content,\n disabled,\n trigger,\n visible,\n delay,\n onVisibleChange: onVisibleChangeForTrigger\n });\n // 传入popperjs 配置选项\n const popperOptions = props.popperOptions as Options;\n const { placement: _ignored, ...restPopperOptions } = popperOptions || {};\n // Suppress unused variable warning\n void _ignored;\n\n // popperRef 表示 popper 实例\n popperRef.current = usePopper(getRefDom(triggerRef) as HTMLElement | null, popupElement, {\n placement: popperPlacement as Placement,\n ...restPopperOptions\n });\n\n // arrow modifier 用于显示箭头\n const hasArrowModifier = popperOptions?.modifiers?.some((modifier) => modifier.name === \"arrow\");\n const { styles, attributes } = popperRef.current;\n // 获取 triggerNode\n // 如果 children 是函数,则调用函数获取 triggerNode\n // getTriggerNode 设置触发元素的事件\n const triggerNode = isFunction(children) ? getTriggerNode(children({ visible })) : getTriggerNode(children);\n\n const updateTimeRef = useRef(null);\n // 监听 trigger 节点或内容变化动态更新 popup 定位\n useMutationObserver(getRefDom(triggerRef) as HTMLElement | null, () => {\n const triggerDom = getRefDom(triggerRef) as HTMLElement | null;\n const isDisplayNone = triggerDom ? getCssVarsValue(\"display\", triggerDom) === \"none\" : true;\n if (visible && !isDisplayNone) {\n clearTimeout(updateTimeRef.current);\n updateTimeRef.current = setTimeout(() => popperRef.current?.update?.(), 0);\n }\n });\n // 清理定时器\n useEffect(() => () => clearTimeout(updateTimeRef.current), []);\n\n // 窗口尺寸变化时调整位置\n useEffect(() => {\n if (visible) {\n requestAnimationFrame(() => popperRef.current?.update?.());\n }\n }, [visible, content, windowHeight, windowWidth]);\n\n // 下拉展开时更新内部滚动条\n useEffect(() => {\n if (!triggerRef.current) triggerRef.current = getTriggerDom();\n if (visible) {\n updateScrollTop?.(contentRef.current);\n }\n }, [visible, updateScrollTop, getTriggerDom]);\n\n function handleExited() {\n if (!destroyOnClose && popupElement) {\n (popupElement as HTMLElement).style.display = \"none\";\n }\n }\n function handleEnter() {\n if (!destroyOnClose && popupElement) {\n popupElement.style.display = \"block\";\n }\n }\n\n function handleScroll(e: React.WheelEvent<HTMLDivElement>) {\n onScroll?.({ e });\n\n // 防止多次触发添加截流\n const debounceOnScrollBottom = debounce((e) => onScrollToBottom?.({ e }), 100);\n\n const { scrollTop, clientHeight, scrollHeight } = e.target as HTMLDivElement;\n // windows 下滚动会出现小数,所以这里取整\n if (clientHeight + Math.floor(scrollTop) === scrollHeight) {\n // touch bottom\n debounceOnScrollBottom(e);\n }\n }\n\n // 整理浮层样式\n function getOverlayStyle(overlayStyle: TdPopupProps[\"overlayStyle\"]) {\n const triggerDom = getRefDom(triggerRef) as HTMLElement | null;\n if (triggerDom && popupRef.current && typeof overlayStyle === \"function\") {\n return { ...overlayStyle(triggerDom, popupRef.current) };\n }\n return { ...overlayStyle };\n }\n\n const overlay = showOverlay && (\n <CSSTransition\n appear\n in={visible}\n timeout={DEFAULT_TRANSITION_TIMEOUT}\n nodeRef={portalRef}\n unmountOnExit={destroyOnClose}\n onEnter={handleEnter}\n onExited={handleExited}\n classNames={`${classPrefix}-portal`}\n >\n <Portal triggerNode={getRefDom(triggerRef) as HTMLElement | null} attach=\"body\" ref={portalRef}>\n <CSSTransition appear timeout={0} in={visible} nodeRef={popupRef} classNames={`${classPrefix}-popup`}>\n <div\n ref={(node) => {\n if (node) {\n popupRef.current = node;\n setPopupElement(node);\n }\n }}\n style={{\n ...styles.popper,\n zIndex,\n ...getOverlayStyle(overlayStyle)\n }}\n className={classNames(`${classPrefix}-popup`, overlayClassName, \"\")}\n {...attributes.popper}\n {...getPopupProps()}\n >\n <div\n ref={contentRef}\n className={classNames(\n `${classPrefix}-popup__content`,\n {\n [`${classPrefix}-popup__content--arrow`]: showArrow\n },\n overlayInnerClassName\n )}\n style={getOverlayStyle(overlayInnerStyle)}\n onScroll={handleScroll}\n >\n {content}\n {showArrow && (\n <div\n style={styles.arrow}\n className={`${classPrefix}-popup__arrow`}\n {...(hasArrowModifier && { \"data-popper-arrow\": \"\" })}\n />\n )}\n </div>\n </div>\n </CSSTransition>\n </Portal>\n </CSSTransition>\n );\n // 使用 useImperativeHandle 暴露给父组件\n // 这样父组件可以通过 ref 获取 popper 实例、popup 元素\n // portal 元素和内容区域元素\n // 以及设置 popup 的显示隐藏状态\n useImperativeHandle(ref, () => ({\n getPopper: () => popperRef.current,\n getPopupElement: () => popupRef.current,\n getPortalElement: () => portalRef.current,\n getPopupContentElement: () => contentRef.current,\n setVisible: (visible: boolean) =>\n onVisibleChangeInternal(visible, { trigger: \"document\" } as PopupVisibleChangeContext)\n }));\n // 这里使用 React.Fragment 包裹 triggerNode 和 overlay,确保返回一个单一的父节点\n // 这样可以避免在渲染时出现多个根节点的错误\n return (\n <React.Fragment>\n {triggerNode}\n {overlay}\n </React.Fragment>\n );\n});\n\nPopup.displayName = \"Popup\";\n\nexport default Popup;\n"],"names":["getRefDom","domRef","current","_typeof","currentElement","useWindowSize","_useState","useState","getWindowSize","_useState2","_slicedToArray","size","setSize","useEffect","handleResize","debounceResize","debounce","window","addEventListener","removeEventListener","cancel","REACT_ELEMENT_TYPE_18","Symbol","REACT_ELEMENT_TYPE_19","REACT_FRAGMENT_TYPE","isFragment","object","obj","$$typeof","type","supportRef","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","isReactElement","Object","prototype","propertyIsEnumerable","call","props","isMemo","render","ForwardRef","node","isValidElement","supportNodeRef","getNodeRef","ele","ref","ESC_KEY","useTrigger","_ref","content","disabled","trigger","visible","onVisibleChange","triggerRef","delay","hasPopupMouseDown","useRef","mouseDownTimer","visibleTimer","triggerDataKey","leaveFlag","Math","random","toFixed","shouldToggle","useMemo","_useMemo","Array","isArray","_useMemo2","_useMemo2$","appearDelay","_useMemo2$2","exitDelay","callFuncWithDelay","_ref2","callback","clearTimeout","setTimeout","handleDocumentClick","e","_getRefDom","_getRefDom$contains","contains","target","on","document","off","getPopupProps","onMouseEnter","console","log","onMouseLeave","onMouseDown","onTouchEnd","getTriggerProps","triggerNode","triggerProps","className","classNames","_triggerNode$props$on","_triggerNode$props","onClick","_triggerNode$props$on2","_triggerNode$props2","onTouchStart","_triggerNode$props$on3","_triggerNode$props3","_triggerNode$props$on4","_triggerNode$props4","_triggerNode$props$on5","_triggerNode$props5","onFocus","_triggerNode$props$on6","_triggerNode$props6","onBlur","_triggerNode$props$on7","_triggerNode$props7","onContextMenu","_triggerNode$props$on8","_triggerNode$props8","preventDefault","onKeyDown","_triggerNode$props$on9","_triggerNode$props9","key","composeRefs","getTriggerNode","children","React","createElement","cloneElement","getTriggerDom","useCallback","querySelector","concat","EMPTY_MODIFIERS","fromEntries","entries","reduce","acc","value","usePopper","referenceElement","popperElement","options","arguments","length","undefined","prevOptions","optionsWithDefaults","onFirstUpdate","placement","strategy","modifiers","styles","popper","position","left","top","arrow","attributes","state","setState","updateStateModifier","name","enabled","phase","fn","_ref3","elements","keys","flushSync","map","element","requires","popperOptions","newOptions","_toConsumableArray","isEqual","popperInstanceRef","useIsomorphicLayoutEffect","setOptions","createPopper","defaultCreatePopper","popperInstance","destroy","getPopperInstance","instance","update","forceUpdate","popupDefaultProps","destroyOnClose","hideEmptyPopup","showArrow","Popup","forwardRef","originalProps","_popperOptions$modifi","useDefaultProps","_useConfig","useConfig","classPrefix","direction","overlayClassName","overlayInnerClassName","overlayStyle","overlayInnerStyle","triggerElement","_props$children","zIndex","onScroll","onScrollToBottom","updateScrollTop","_useWindowSize","windowHeight","height","windowWidth","width","handleVisibleChange","context","_props$onVisibleChang","_useControlled","useControlled","_useControlled2","onVisibleChangeInternal","onVisibleChangeForTrigger","popupContext","popupElement","setPopupElement","popupRef","portalRef","contentRef","popperRef","DEFAULT_TRANSITION_TIMEOUT","requestAnimationFrame","showOverlay","popperPlacement","normalized","replace","parts","split","mirrored","part","join","_useTrigger","_ignored","restPopperOptions","_objectWithoutProperties","_excluded","_objectSpread","hasArrowModifier","some","modifier","_popperRef$current","isFunction","updateTimeRef","useMutationObserver","triggerDom","isDisplayNone","getCssVarsValue","_popperRef$current2","_popperRef$current2$u","_popperRef$current3","_popperRef$current3$u","handleExited","style","display","handleEnter","handleScroll","debounceOnScrollBottom","_e$target","scrollTop","clientHeight","scrollHeight","floor","getOverlayStyle","overlay","CSSTransition","appear","timeout","nodeRef","unmountOnExit","onEnter","onExited","Portal","attach","_defineProperty","useImperativeHandle","getPopper","getPopupElement","getPortalElement","getPopupContentElement","setVisible","Fragment","displayName"],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { _ as _slicedToArray } from '../../_chunks/dep-CzLhKWCf.js';
2
+ import React__default, { useState } from 'react';
3
+ import { Button, Popup } from '@tendaui/react';
4
+
5
+ var ControlledDemo = function ControlledDemo() {
6
+ var _useState = useState(false),
7
+ _useState2 = _slicedToArray(_useState, 2),
8
+ visible = _useState2[0],
9
+ setVisible = _useState2[1];
10
+ return /* @__PURE__ */React__default.createElement("div", {
11
+ style: {
12
+ padding: "40px",
13
+ display: "flex",
14
+ flexDirection: "column",
15
+ gap: "16px",
16
+ alignItems: "center"
17
+ }
18
+ }, /* @__PURE__ */React__default.createElement("div", {
19
+ style: {
20
+ display: "flex",
21
+ gap: "8px"
22
+ }
23
+ }, /* @__PURE__ */React__default.createElement(Button, {
24
+ onClick: function onClick() {
25
+ return setVisible(true);
26
+ }
27
+ }, "\u6253\u5F00"), /* @__PURE__ */React__default.createElement(Button, {
28
+ onClick: function onClick() {
29
+ return setVisible(false);
30
+ }
31
+ }, "\u5173\u95ED"), /* @__PURE__ */React__default.createElement(Button, {
32
+ onClick: function onClick() {
33
+ return setVisible(!visible);
34
+ }
35
+ }, "\u5207\u6362")), /* @__PURE__ */React__default.createElement(Popup, {
36
+ visible: visible,
37
+ onVisibleChange: function onVisibleChange(v) {
38
+ return setVisible(v);
39
+ },
40
+ content: /* @__PURE__ */React__default.createElement("div", {
41
+ style: {
42
+ padding: "12px"
43
+ }
44
+ }, /* @__PURE__ */React__default.createElement("p", null, "\u8FD9\u662F\u53D7\u63A7\u7684\u5F39\u51FA\u5C42"), /* @__PURE__ */React__default.createElement(Button, {
45
+ size: "small",
46
+ onClick: function onClick() {
47
+ return setVisible(false);
48
+ }
49
+ }, "\u5173\u95ED")),
50
+ showArrow: true
51
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u89E6\u53D1\u5143\u7D20")));
52
+ };
53
+
54
+ export { ControlledDemo as default };
55
+ //# sourceMappingURL=controlled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controlled.js","sources":["../../../../components/popup/_example/controlled.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { Popup, Button } from \"@tendaui/react\";\n\nconst ControlledDemo = () => {\n const [visible, setVisible] = useState(false);\n return (\n <div style={{ padding: \"40px\", display: \"flex\", flexDirection: \"column\", gap: \"16px\", alignItems: \"center\" }}>\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <Button onClick={() => setVisible(true)}>打开</Button>\n <Button onClick={() => setVisible(false)}>关闭</Button>\n <Button onClick={() => setVisible(!visible)}>切换</Button>\n </div>\n <Popup\n visible={visible}\n onVisibleChange={(v) => setVisible(v)}\n content={\n <div style={{ padding: \"12px\" }}>\n <p>这是受控的弹出层</p>\n <Button size=\"small\" onClick={() => setVisible(false)}>\n 关闭\n </Button>\n </div>\n }\n showArrow\n >\n <Button>触发元素</Button>\n </Popup>\n </div>\n );\n};\n\nexport default ControlledDemo;"],"names":["ControlledDemo","_useState","useState","_useState2","_slicedToArray","visible","setVisible","React","createElement","style","padding","display","flexDirection","gap","alignItems","Button","onClick","Popup","onVisibleChange","v","content","size","showArrow"],"mappings":";;;;AAGA,IAAMA,iBAAiB,SAAjBA,iBAAuB;AAC3B,EAAA,IAAAC,SAAA,GAA8BC,SAAS,KAAK,CAAA;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAArCI,IAAAA,OAAA,GAAAF,UAAA,CAAA,CAAA,CAAA;AAASG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,sBACEI,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,OAAA,EAAS;AAAQC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,aAAA,EAAe,QAAA;AAAUC,MAAAA,GAAA,EAAK,MAAA;AAAQC,MAAAA,YAAY;AAAS;AAAA,GAAA,iBACzGP,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEE,MAAAA,SAAS,MAAA;AAAQE,MAAAA,GAAA,EAAK;AAAM;AAAA,GAAA,iBACxCN,cAAA,CAAAC,aAAA,CAACO,MAAA,EAAA;IAAOC,SAAS,SAATA;aAAeV,UAAA,CAAW,IAAI,CAAA;AAAA,IAAA;GAAA,EAAG,cAAE,CAAA,8CAC1CS,MAAA,EAAA;IAAOC,OAAA,EAAS,SAATA,OAAAA,GAAA;MAAA,OAAeV,UAAA,CAAW,KAAK,CAAA;AAAA,IAAA;GAAA,EAAG,cAAE,CAAA,iBAC5CC,cAAA,CAAAC,aAAA,CAACO,MAAA,EAAA;IAAOC,OAAA,EAAS,SAATA,OAAAA,GAAA;AAAA,MAAA,OAAeV,UAAA,CAAW,CAACD,OAAO,CAAA;AAAA,IAAA;GAAA,EAAG,cAAE,CACjD,CAAA,iBACAE,cAAA,CAAAC,aAAA,CAACS,KAAA,EAAA;AACCZ,IAAAA,OAAA,EAAAA,OAAA;AACAa,IAAAA,eAAA,EAAiB,SAAjBA,eAAAA,CAAkBC,CAAA,EAAA;MAAA,OAAMb,UAAA,CAAWa,CAAC,CAAA;AAAA,IAAA,CAAA;AACpCC,IAAAA,OAAA,8CACG,KAAA,EAAA;AAAIX,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;AAAA,KAAA,iBAC5BH,cAAA,CAAAC,aAAA,CAAC,GAAA,EAAA,IAAA,EAAE,kDAAQ,kBACXD,cAAA,CAAAC,aAAA,CAACO,MAAA,EAAA;AAAOM,MAAAA,MAAK,OAAA;MAAQL,OAAA,EAAS,SAATA,OAAAA,GAAA;QAAA,OAAeV,UAAA,CAAW,KAAK,CAAA;AAAA,MAAA;KAAA,EAAG,cAEvD,CACF,CAAA;AAEFgB,IAAAA,SAAA,EAAS;AAAA,GAAA,iBAETf,cAAA,CAAAC,aAAA,CAACO,cAAO,0BAAI,CACd,CACF,CAAA;AAEJ;;;;"}
@@ -0,0 +1,81 @@
1
+ import React__default from 'react';
2
+ import { Popup, Button } from '@tendaui/react';
3
+
4
+ var CustomContentDemo = function CustomContentDemo() {
5
+ return /* @__PURE__ */React__default.createElement("div", {
6
+ style: {
7
+ padding: "40px",
8
+ display: "flex",
9
+ gap: "16px",
10
+ justifyContent: "center"
11
+ }
12
+ }, /* @__PURE__ */React__default.createElement(Popup, {
13
+ trigger: "click",
14
+ content: /* @__PURE__ */React__default.createElement("div", {
15
+ style: {
16
+ padding: "16px",
17
+ width: "200px"
18
+ }
19
+ }, /* @__PURE__ */React__default.createElement("h4", {
20
+ style: {
21
+ margin: "0 0 8px 0"
22
+ }
23
+ }, "\u6807\u9898"), /* @__PURE__ */React__default.createElement("p", {
24
+ style: {
25
+ margin: "0 0 12px 0",
26
+ color: "#666",
27
+ fontSize: "12px"
28
+ }
29
+ }, "\u8FD9\u662F\u4E00\u6BB5\u63CF\u8FF0\u6587\u5B57\uFF0C\u53EF\u4EE5\u653E\u7F6E\u66F4\u591A\u5185\u5BB9\u3002"), /* @__PURE__ */React__default.createElement("div", {
30
+ style: {
31
+ display: "flex",
32
+ gap: "8px",
33
+ justifyContent: "flex-end"
34
+ }
35
+ }, /* @__PURE__ */React__default.createElement(Button, {
36
+ size: "small",
37
+ variant: "outline"
38
+ }, "\u53D6\u6D88"), /* @__PURE__ */React__default.createElement(Button, {
39
+ size: "small",
40
+ theme: "primary"
41
+ }, "\u786E\u5B9A"))),
42
+ showArrow: true
43
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u81EA\u5B9A\u4E49\u5185\u5BB9")), /* @__PURE__ */React__default.createElement(Popup, {
44
+ trigger: "hover",
45
+ content: /* @__PURE__ */React__default.createElement("div", {
46
+ style: {
47
+ padding: "12px"
48
+ }
49
+ }, /* @__PURE__ */React__default.createElement("div", {
50
+ style: {
51
+ display: "flex",
52
+ alignItems: "center",
53
+ gap: "8px"
54
+ }
55
+ }, /* @__PURE__ */React__default.createElement("div", {
56
+ style: {
57
+ width: "40px",
58
+ height: "40px",
59
+ borderRadius: "50%",
60
+ background: "var(--td-brand-color)",
61
+ display: "flex",
62
+ alignItems: "center",
63
+ justifyContent: "center",
64
+ color: "#fff"
65
+ }
66
+ }, "A"), /* @__PURE__ */React__default.createElement("div", null, /* @__PURE__ */React__default.createElement("div", {
67
+ style: {
68
+ fontWeight: "bold"
69
+ }
70
+ }, "\u7528\u6237\u540D"), /* @__PURE__ */React__default.createElement("div", {
71
+ style: {
72
+ fontSize: "12px",
73
+ color: "#999"
74
+ }
75
+ }, "user@example.com")))),
76
+ showArrow: true
77
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u7528\u6237\u5361\u7247")));
78
+ };
79
+
80
+ export { CustomContentDemo as default };
81
+ //# sourceMappingURL=custom-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-content.js","sources":["../../../../components/popup/_example/custom-content.tsx"],"sourcesContent":["import React from \"react\";\nimport { Popup, Button } from \"@tendaui/react\";\n\nconst CustomContentDemo = () => {\n return (\n <div style={{ padding: \"40px\", display: \"flex\", gap: \"16px\", justifyContent: \"center\" }}>\n <Popup\n trigger=\"click\"\n content={\n <div style={{ padding: \"16px\", width: \"200px\" }}>\n <h4 style={{ margin: \"0 0 8px 0\" }}>标题</h4>\n <p style={{ margin: \"0 0 12px 0\", color: \"#666\", fontSize: \"12px\" }}>\n 这是一段描述文字,可以放置更多内容。\n </p>\n <div style={{ display: \"flex\", gap: \"8px\", justifyContent: \"flex-end\" }}>\n <Button size=\"small\" variant=\"outline\">\n 取消\n </Button>\n <Button size=\"small\" theme=\"primary\">\n 确定\n </Button>\n </div>\n </div>\n }\n showArrow\n >\n <Button>自定义内容</Button>\n </Popup>\n\n <Popup\n trigger=\"hover\"\n content={\n <div style={{ padding: \"12px\" }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\" }}>\n <div\n style={{\n width: \"40px\",\n height: \"40px\",\n borderRadius: \"50%\",\n background: \"var(--td-brand-color)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: \"#fff\"\n }}\n >\n A\n </div>\n <div>\n <div style={{ fontWeight: \"bold\" }}>用户名</div>\n <div style={{ fontSize: \"12px\", color: \"#999\" }}>user@example.com</div>\n </div>\n </div>\n </div>\n }\n showArrow\n >\n <Button>用户卡片</Button>\n </Popup>\n </div>\n );\n};\n\nexport default CustomContentDemo;"],"names":["CustomContentDemo","React","createElement","style","padding","display","gap","justifyContent","Popup","trigger","content","width","margin","color","fontSize","Button","size","variant","theme","showArrow","alignItems","height","borderRadius","background","fontWeight"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import React__default from 'react';
2
+ import { Popup, Button } from '@tendaui/react';
3
+
4
+ var DefaultDemo = function DefaultDemo() {
5
+ return /* @__PURE__ */React__default.createElement("div", {
6
+ style: {
7
+ padding: "40px",
8
+ display: "flex",
9
+ justifyContent: "center"
10
+ }
11
+ }, /* @__PURE__ */React__default.createElement(Popup, {
12
+ trigger: "click",
13
+ placement: "top",
14
+ content: /* @__PURE__ */React__default.createElement("div", {
15
+ style: {
16
+ padding: "12px"
17
+ }
18
+ }, "\u8FD9\u662F\u5F39\u51FA\u5C42\u5185\u5BB9"),
19
+ showArrow: true
20
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u70B9\u51FB\u663E\u793A Popup")));
21
+ };
22
+
23
+ export { DefaultDemo as default };
24
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.js","sources":["../../../../components/popup/_example/default.tsx"],"sourcesContent":["import React from \"react\";\nimport { Popup, Button } from \"@tendaui/react\";\n\nconst DefaultDemo = () => {\n return (\n <div style={{ padding: \"40px\", display: \"flex\", justifyContent: \"center\" }}>\n <Popup \n trigger=\"click\" \n placement=\"top\" \n content={<div style={{ padding: \"12px\" }}>这是弹出层内容</div>}\n showArrow\n >\n <Button>点击显示 Popup</Button>\n </Popup>\n </div>\n );\n};\n\nexport default DefaultDemo;"],"names":["DefaultDemo","React","createElement","style","padding","display","justifyContent","Popup","trigger","placement","content","showArrow","Button"],"mappings":";;;AAGA,IAAMA,cAAc,SAAdA,cAAoB;AACxB,EAAA,sBACEC,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,OAAA,EAAS;AAAQC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,cAAA,EAAgB;AAAS;AAAA,GAAA,iBACvEL,cAAA,CAAAC,aAAA,CAACK,KAAA,EAAA;AACCC,IAAAA,OAAA,EAAQ,OAAA;AACRC,IAAAA,SAAA,EAAU,KAAA;AACVC,IAAAA,OAAA,8CAAU,KAAA,EAAA;AAAIP,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;OAAG,4CAAO,CAAA;AACjDO,IAAAA,SAAA,EAAS;AAAA,GAAA,iBAETV,cAAA,CAAAC,aAAA,CAACU,cAAO,gCAAU,CACpB,CACF,CAAA;AAEJ;;;;"}
@@ -0,0 +1,43 @@
1
+ import React__default from 'react';
2
+ import { Popup, Button } from '@tendaui/react';
3
+
4
+ var DelayDemo = function DelayDemo() {
5
+ return /* @__PURE__ */React__default.createElement("div", {
6
+ style: {
7
+ padding: "40px",
8
+ display: "flex",
9
+ gap: "16px",
10
+ justifyContent: "center"
11
+ }
12
+ }, /* @__PURE__ */React__default.createElement(Popup, {
13
+ trigger: "hover",
14
+ content: /* @__PURE__ */React__default.createElement("div", {
15
+ style: {
16
+ padding: "12px"
17
+ }
18
+ }, "\u5EF6\u8FDF 500ms \u663E\u793A"),
19
+ delay: [500, 0],
20
+ showArrow: true
21
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u5EF6\u8FDF\u663E\u793A")), /* @__PURE__ */React__default.createElement(Popup, {
22
+ trigger: "hover",
23
+ content: /* @__PURE__ */React__default.createElement("div", {
24
+ style: {
25
+ padding: "12px"
26
+ }
27
+ }, "\u5EF6\u8FDF 500ms \u9690\u85CF"),
28
+ delay: [0, 500],
29
+ showArrow: true
30
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u5EF6\u8FDF\u9690\u85CF")), /* @__PURE__ */React__default.createElement(Popup, {
31
+ trigger: "hover",
32
+ content: /* @__PURE__ */React__default.createElement("div", {
33
+ style: {
34
+ padding: "12px"
35
+ }
36
+ }, "\u5EF6\u8FDF 300ms \u663E\u793A\u548C\u9690\u85CF"),
37
+ delay: 300,
38
+ showArrow: true
39
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u7EDF\u4E00\u5EF6\u8FDF")));
40
+ };
41
+
42
+ export { DelayDemo as default };
43
+ //# sourceMappingURL=delay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delay.js","sources":["../../../../components/popup/_example/delay.tsx"],"sourcesContent":["import React from \"react\";\nimport { Popup, Button } from \"@tendaui/react\";\n\nconst DelayDemo = () => {\n return (\n <div style={{ padding: \"40px\", display: \"flex\", gap: \"16px\", justifyContent: \"center\" }}>\n <Popup\n trigger=\"hover\"\n content={<div style={{ padding: \"12px\" }}>延迟 500ms 显示</div>}\n delay={[500, 0]}\n showArrow\n >\n <Button>延迟显示</Button>\n </Popup>\n <Popup\n trigger=\"hover\"\n content={<div style={{ padding: \"12px\" }}>延迟 500ms 隐藏</div>}\n delay={[0, 500]}\n showArrow\n >\n <Button>延迟隐藏</Button>\n </Popup>\n <Popup\n trigger=\"hover\"\n content={<div style={{ padding: \"12px\" }}>延迟 300ms 显示和隐藏</div>}\n delay={300}\n showArrow\n >\n <Button>统一延迟</Button>\n </Popup>\n </div>\n );\n};\n\nexport default DelayDemo;"],"names":["DelayDemo","React","createElement","style","padding","display","gap","justifyContent","Popup","trigger","content","delay","showArrow","Button"],"mappings":";;;AAGA,IAAMA,YAAY,SAAZA,YAAkB;AACtB,EAAA,sBACEC,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK,MAAA;AAAQC,MAAAA,cAAA,EAAgB;AAAS;AAAA,GAAA,iBACpFN,cAAA,CAAAC,aAAA,CAACM,KAAA,EAAA;AACCC,IAAAA,OAAA,EAAQ,OAAA;AACRC,IAAAA,OAAA,8CAAU,KAAA,EAAA;AAAIP,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;OAAG,iCAAW,CAAA;AACrDO,IAAAA,KAAA,EAAO,CAAC,GAAA,EAAK,CAAC,CAAA;AACdC,IAAAA,SAAA,EAAS;GAAA,iBAETX,cAAA,CAAAC,aAAA,CAACW,cAAO,0BAAI,CACd,CAAA,iBACAZ,cAAA,CAAAC,aAAA,CAACM,KAAA,EAAA;AACCC,IAAAA,OAAA,EAAQ,OAAA;AACRC,IAAAA,OAAA,8CAAU,KAAA,EAAA;AAAIP,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;OAAG,iCAAW,CAAA;AACrDO,IAAAA,KAAA,EAAO,CAAC,CAAA,EAAG,GAAG,CAAA;AACdC,IAAAA,SAAA,EAAS;GAAA,iBAETX,cAAA,CAAAC,aAAA,CAACW,cAAO,0BAAI,CACd,CAAA,iBACAZ,cAAA,CAAAC,aAAA,CAACM,KAAA,EAAA;AACCC,IAAAA,OAAA,EAAQ,OAAA;AACRC,IAAAA,OAAA,8CAAU,KAAA,EAAA;AAAIP,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;OAAG,mDAAc,CAAA;AACxDO,IAAAA,KAAA,EAAO,GAAA;AACPC,IAAAA,SAAA,EAAS;AAAA,GAAA,iBAETX,cAAA,CAAAC,aAAA,CAACW,cAAO,0BAAI,CACd,CACF,CAAA;AAEJ;;;;"}
@@ -0,0 +1,35 @@
1
+ import React__default from 'react';
2
+ import { Popup, Button } from '@tendaui/react';
3
+
4
+ var DisabledDemo = function DisabledDemo() {
5
+ return /* @__PURE__ */React__default.createElement("div", {
6
+ style: {
7
+ padding: "40px",
8
+ display: "flex",
9
+ gap: "16px",
10
+ justifyContent: "center"
11
+ }
12
+ }, /* @__PURE__ */React__default.createElement(Popup, {
13
+ trigger: "click",
14
+ content: /* @__PURE__ */React__default.createElement("div", {
15
+ style: {
16
+ padding: "12px"
17
+ }
18
+ }, "\u6B63\u5E38\u72B6\u6001"),
19
+ showArrow: true
20
+ }, /* @__PURE__ */React__default.createElement(Button, null, "\u6B63\u5E38")), /* @__PURE__ */React__default.createElement(Popup, {
21
+ trigger: "click",
22
+ content: /* @__PURE__ */React__default.createElement("div", {
23
+ style: {
24
+ padding: "12px"
25
+ }
26
+ }, "\u7981\u7528\u72B6\u6001"),
27
+ showArrow: true,
28
+ disabled: true
29
+ }, /* @__PURE__ */React__default.createElement(Button, {
30
+ disabled: true
31
+ }, "\u7981\u7528")));
32
+ };
33
+
34
+ export { DisabledDemo as default };
35
+ //# sourceMappingURL=disabled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disabled.js","sources":["../../../../components/popup/_example/disabled.tsx"],"sourcesContent":["import React from \"react\";\nimport { Popup, Button } from \"@tendaui/react\";\n\nconst DisabledDemo = () => {\n return (\n <div style={{ padding: \"40px\", display: \"flex\", gap: \"16px\", justifyContent: \"center\" }}>\n <Popup trigger=\"click\" content={<div style={{ padding: \"12px\" }}>正常状态</div>} showArrow>\n <Button>正常</Button>\n </Popup>\n <Popup trigger=\"click\" content={<div style={{ padding: \"12px\" }}>禁用状态</div>} showArrow disabled>\n <Button disabled>禁用</Button>\n </Popup>\n </div>\n );\n};\n\nexport default DisabledDemo;"],"names":["DisabledDemo","React","createElement","style","padding","display","gap","justifyContent","Popup","trigger","content","showArrow","Button","disabled"],"mappings":";;;AAGA,IAAMA,eAAe,SAAfA,eAAqB;AACzB,EAAA,sBACEC,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,OAAA,EAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK,MAAA;AAAQC,MAAAA,cAAA,EAAgB;AAAS;AAAA,GAAA,iBACpFN,cAAA,CAAAC,aAAA,CAACM,KAAA,EAAA;AAAMC,IAAAA,OAAA,EAAQ,OAAA;AAAQC,IAAAA,OAAA,iBAAST,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;KAAA,EAAG,0BAAI,CAAA;AAAQO,IAAAA,SAAA,EAAS;GAAA,8CACnFC,MAAA,EAAA,IAAA,EAAO,cAAE,CACZ,CAAA,iBACAX,cAAA,CAAAC,aAAA,CAACM,KAAA,EAAA;AAAMC,IAAAA,OAAA,EAAQ,OAAA;AAAQC,IAAAA,OAAA,iBAAST,cAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,MAAAA,KAAA,EAAO;AAAEC,QAAAA,OAAA,EAAS;AAAO;KAAA,EAAG,0BAAI,CAAA;AAAQO,IAAAA,SAAA,EAAS,IAAA;AAACE,IAAAA,QAAA,EAAQ;AAAA,GAAA,iBAC7FZ,cAAA,CAAAC,aAAA,CAACU,MAAA,EAAA;AAAOC,IAAAA,QAAA,EAAQ;AAAA,GAAA,EAAC,cAAE,CACrB,CACF,CAAA;AAEJ;;;;"}