@para-ui/core 5.0.0-beta.12 → 5.0.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/AGENTS.md +315 -0
  2. package/AlignBox/component.json +89 -0
  3. package/Anchor/component.json +130 -0
  4. package/Argv/component.json +216 -0
  5. package/AutoBox/component.json +133 -0
  6. package/AutoButton/component.json +109 -0
  7. package/AutoTips/component.json +121 -0
  8. package/Badge/component.json +92 -0
  9. package/Breadcrumbs/component.json +142 -0
  10. package/Button/component.json +168 -0
  11. package/ButtonGroup/component.json +132 -0
  12. package/Card/component.json +162 -0
  13. package/Carousel/component.json +142 -0
  14. package/Cascader/component.json +196 -0
  15. package/Checkbox/component.json +138 -0
  16. package/CheckboxGroup/component.json +152 -0
  17. package/CodeEditor/component.json +189 -0
  18. package/Collapse/component.json +166 -0
  19. package/CollapseBox/component.json +84 -0
  20. package/CollapseLayout/component.json +155 -0
  21. package/ColorPicker/component.json +142 -0
  22. package/ComboSelect/component.json +181 -0
  23. package/Container/component.json +111 -0
  24. package/ContentBox/component.json +81 -0
  25. package/CopyText/component.json +118 -0
  26. package/CycleSelector/component.json +98 -0
  27. package/DatePicker/component.json +192 -0
  28. package/Descriptions/component.json +142 -0
  29. package/Desktop/component.json +171 -0
  30. package/DragVerify/component.json +114 -0
  31. package/Drawer/component.json +200 -0
  32. package/Dropdown/component.json +147 -0
  33. package/DynamicMultiBox/component.json +278 -0
  34. package/Empty/component.json +123 -0
  35. package/FieldForm/component.json +196 -0
  36. package/Form/component.json +161 -0
  37. package/FormItem/component.json +171 -0
  38. package/FunctionModal/component.json +197 -0
  39. package/Help/component.json +118 -0
  40. package/HelperText/component.json +126 -0
  41. package/Image/component.json +165 -0
  42. package/InputCode/component.json +191 -0
  43. package/InputLang/component.json +205 -0
  44. package/InputNumber/component.json +162 -0
  45. package/Label/component.json +126 -0
  46. package/Loading/component.json +91 -0
  47. package/Menu/component.json +180 -0
  48. package/Message/component.json +246 -0
  49. package/Modal/component.json +277 -0
  50. package/MultiBox/component.json +216 -0
  51. package/Notification/component.json +184 -0
  52. package/OperateBtn/component.json +134 -0
  53. package/PageHeader/component.json +112 -0
  54. package/Pagination/component.json +181 -0
  55. package/PasswordRules/component.json +105 -0
  56. package/PopConfirm/component.json +227 -0
  57. package/PopMenu/component.json +131 -0
  58. package/Popover/component.json +165 -0
  59. package/Progress/component.json +161 -0
  60. package/Prompt/component.json +144 -0
  61. package/Querying/component.json +96 -0
  62. package/QuickReply/component.json +129 -0
  63. package/Radio/component.json +136 -0
  64. package/RadioGroup/component.json +149 -0
  65. package/RangeInput/component.json +198 -0
  66. package/Result/component.json +104 -0
  67. package/ScrollBar/component.json +115 -0
  68. package/Search/component.json +177 -0
  69. package/Select/component.json +244 -0
  70. package/SelectInput/component.json +184 -0
  71. package/Selector/component.json +203 -0
  72. package/SelectorPicker/component.json +179 -0
  73. package/SingleBox/component.json +151 -0
  74. package/Slider/component.json +181 -0
  75. package/SortBox/component.json +108 -0
  76. package/Status/component.json +104 -0
  77. package/Stepper/component.json +129 -0
  78. package/Switch/component.json +207 -0
  79. package/Table/component.json +547 -0
  80. package/Tabs/component.json +227 -0
  81. package/Tag/component.json +221 -0
  82. package/TextEditor/component.json +186 -0
  83. package/TextField/component.json +290 -0
  84. package/TimePicker/component.json +176 -0
  85. package/Timeline/component.json +110 -0
  86. package/Title/component.json +156 -0
  87. package/ToggleButton/component.json +153 -0
  88. package/Tooltip/component.json +176 -0
  89. package/Transfer/component.json +157 -0
  90. package/Tree/component.json +512 -0
  91. package/Upload/component.json +450 -0
  92. package/ai-workflows/01-crud-list-multi-drawer.md +278 -0
  93. package/ai-workflows/02-rbac-operation-buttons.md +290 -0
  94. package/ai-workflows/03-complex-form-async-cascade.md +350 -0
  95. package/ai-workflows/04-array-field-form.md +281 -0
  96. package/ai-workflows/05-popconfirm-async-message-queue.md +333 -0
  97. package/ai-workflows/06-modal-drawer-form-workflow.md +385 -0
  98. package/ai-workflows/07-search-filter-table-trio.md +387 -0
  99. package/ai-workflows/08-table-advanced-features.md +365 -0
  100. package/ai-workflows/09-batch-operation-export-progress.md +367 -0
  101. package/ai-workflows/10-cross-component-state-coordination.md +412 -0
  102. package/es/AlignBox/component.json +89 -0
  103. package/es/AlignBox/index.css +1 -1
  104. package/es/AlignBox/index.d.ts +6 -2
  105. package/es/AlignBox/index.js +1 -1
  106. package/es/AlignBox/style/index.css +1 -1
  107. package/es/Anchor/anchorMenu/index.d.ts +2 -1
  108. package/es/Anchor/anchorMenu/index.js +36 -33
  109. package/es/Anchor/component.json +130 -0
  110. package/es/Anchor/index.js +50 -47
  111. package/es/Anchor/type.d.ts +8 -4
  112. package/es/Argv/component.json +216 -0
  113. package/es/Argv/index.d.ts +5 -6
  114. package/es/AutoBox/component.json +133 -0
  115. package/es/AutoBox/index.d.ts +3 -3
  116. package/es/AutoBox/index.js +1 -1
  117. package/es/AutoBox/protal.d.ts +2 -2
  118. package/es/AutoBox/protal.js +32 -29
  119. package/es/AutoButton/component.json +109 -0
  120. package/es/AutoButton/index.js +1 -1
  121. package/es/AutoTips/autoTipsMultiline/index.d.ts +1 -1
  122. package/es/AutoTips/autoTipsMultiline/index.js +1 -1
  123. package/es/AutoTips/component.json +121 -0
  124. package/es/Badge/component.json +92 -0
  125. package/es/Breadcrumbs/component.json +142 -0
  126. package/es/Breadcrumbs/index.js +1 -1
  127. package/es/Button/SplitButton.d.ts +2 -2
  128. package/es/Button/component.json +168 -0
  129. package/es/Button/index.js +44 -44
  130. package/es/ButtonGroup/component.json +132 -0
  131. package/es/ButtonGroup/index.d.ts +1 -1
  132. package/es/Card/component.json +162 -0
  133. package/es/Card/index.d.ts +2 -2
  134. package/es/Card/index.js +2 -2
  135. package/es/Carousel/component.json +142 -0
  136. package/es/Carousel/index.d.ts +1 -1
  137. package/es/Cascader/component.json +196 -0
  138. package/es/Cascader/hooks/useEntities.js +7 -7
  139. package/es/Cascader/interface.d.ts +1 -0
  140. package/es/Cascader/utils/commonUtil.d.ts +1 -1
  141. package/es/Cascader/utils/commonUtil.js +16 -16
  142. package/es/Cascader/utils/treeUtil.d.ts +14 -5
  143. package/es/Cascader/utils/treeUtil.js +1 -1
  144. package/es/Checkbox/component.json +138 -0
  145. package/es/CheckboxGroup/component.json +152 -0
  146. package/es/CodeEditor/component.json +189 -0
  147. package/es/CodeEditor/index.d.ts +10 -9
  148. package/es/Collapse/component.json +166 -0
  149. package/es/Collapse/index.d.ts +1 -1
  150. package/es/Collapse/index.js +23 -22
  151. package/es/CollapseBox/component.json +84 -0
  152. package/es/CollapseLayout/component.json +155 -0
  153. package/es/ColorPicker/component.json +142 -0
  154. package/es/ComboSelect/component.json +181 -0
  155. package/es/ComboSelect/index.js +73 -68
  156. package/es/ComboSelect/interface.d.ts +2 -2
  157. package/es/ComboSelect/utils.d.ts +3 -3
  158. package/es/ComboSelect/utils.js +1 -1
  159. package/es/Container/component.json +111 -0
  160. package/es/ContentBox/component.json +81 -0
  161. package/es/CopyText/component.json +118 -0
  162. package/es/CycleSelector/component.json +98 -0
  163. package/es/CycleSelector/index.js +14 -13
  164. package/es/DatePicker/component.json +192 -0
  165. package/es/DatePicker/generatePicker/generateRangePicker.js +10 -10
  166. package/es/DatePicker/generatePicker/generateSinglePicker.js +1 -1
  167. package/es/Descriptions/component.json +142 -0
  168. package/es/Descriptions/index.d.ts +1 -1
  169. package/es/Desktop/component.json +171 -0
  170. package/es/DragVerify/component.json +114 -0
  171. package/es/DragVerify/index.js +19 -19
  172. package/es/Drawer/component.json +200 -0
  173. package/es/Drawer/index.js +86 -86
  174. package/es/Drawer/interface.d.ts +1 -1
  175. package/es/Drawer/util.d.ts +1 -6
  176. package/es/Drawer/util.js +9 -6
  177. package/es/Dropdown/component.json +147 -0
  178. package/es/DynamicMultiBox/component.json +278 -0
  179. package/es/DynamicMultiBox/formItem.d.ts +1 -1
  180. package/es/DynamicMultiBox/rowForm.d.ts +2 -2
  181. package/es/Empty/component.json +123 -0
  182. package/es/Empty/index.css +1 -1
  183. package/es/Empty/index.d.ts +2 -2
  184. package/es/Empty/index.js +27 -26
  185. package/es/Empty/style/index.css +1 -1
  186. package/es/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
  187. package/es/FieldForm/FieldFormItem/index.d.ts +6 -6
  188. package/es/FieldForm/Form.d.ts +2 -2
  189. package/es/FieldForm/FormList.d.ts +2 -2
  190. package/es/FieldForm/component.json +196 -0
  191. package/es/FieldForm/context.d.ts +5 -1
  192. package/es/FieldForm/context.js +2 -2
  193. package/es/FieldForm/hooks/useForm.d.ts +4 -3
  194. package/es/FieldForm/hooks/useFormInstance.d.ts +1 -1
  195. package/es/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
  196. package/es/FieldForm/hooks/useFormItemStatus.js +2 -2
  197. package/es/FieldForm/hooks/useItemRef.d.ts +1 -1
  198. package/es/FieldForm/hooks/useItemRef.js +6 -6
  199. package/es/Form/component.json +161 -0
  200. package/es/Form/index.d.ts +52 -49
  201. package/es/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
  202. package/es/FormItem/compoments/defaultCompoments/index.js +12 -11
  203. package/es/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
  204. package/es/FormItem/compoments/formFile/index.js +8 -8
  205. package/es/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
  206. package/es/FormItem/compoments/formSelect/index.d.ts +1 -1
  207. package/es/FormItem/component.json +171 -0
  208. package/es/FormItem/index.d.ts +5 -5
  209. package/es/FormItem/index.js +23 -23
  210. package/es/FormItem/itemType.js +1 -1
  211. package/es/FunctionModal/component.json +197 -0
  212. package/es/FunctionModal/dialog.d.ts +1 -1
  213. package/es/FunctionModal/modalContext.d.ts +4 -1
  214. package/es/Help/component.json +118 -0
  215. package/es/HelperText/component.json +126 -0
  216. package/es/Image/component.json +165 -0
  217. package/es/InputCode/component.json +191 -0
  218. package/es/InputCode/index.d.ts +2 -2
  219. package/es/InputLang/component.json +205 -0
  220. package/es/InputLang/index.js +1 -1
  221. package/es/InputNumber/component.json +162 -0
  222. package/es/Label/component.json +126 -0
  223. package/es/Label/index.d.ts +2 -2
  224. package/es/Loading/component.json +91 -0
  225. package/es/Menu/component.json +180 -0
  226. package/es/Message/component.json +246 -0
  227. package/es/Message/index.d.ts +2 -2
  228. package/es/Message/index.js +2 -2
  229. package/es/Modal/Confirm/index.d.ts +1 -1
  230. package/es/Modal/component.json +277 -0
  231. package/es/Modal/index.d.ts +85 -5
  232. package/es/Modal/index.js +159 -122
  233. package/es/Modal/interface.d.ts +1 -0
  234. package/es/MultiBox/component.json +216 -0
  235. package/es/MultiBox/index.js +19 -14
  236. package/es/Notification/component.json +184 -0
  237. package/es/OperateBtn/component.json +134 -0
  238. package/es/OperateBtn/index.d.ts +3 -3
  239. package/es/PageHeader/component.json +112 -0
  240. package/es/Pagination/component.json +181 -0
  241. package/es/Pagination/index.js +15 -15
  242. package/es/PasswordRules/component.json +105 -0
  243. package/es/PasswordRules/index.d.ts +4 -4
  244. package/es/PopConfirm/component.json +227 -0
  245. package/es/PopConfirm/index.d.ts +1 -1
  246. package/es/PopConfirm/index.js +1 -1
  247. package/es/PopMenu/component.json +131 -0
  248. package/es/PopMenu/hooks.d.ts +1 -1
  249. package/es/PopMenu/index.js +8 -8
  250. package/es/Popover/component.json +165 -0
  251. package/es/Popover/index.js +1 -1
  252. package/es/Progress/component.json +161 -0
  253. package/es/Prompt/component.json +144 -0
  254. package/es/Querying/component.json +96 -0
  255. package/es/Querying/index.css +1 -1
  256. package/es/Querying/index.d.ts +2 -2
  257. package/es/Querying/index.js +20 -19
  258. package/es/Querying/style/index.css +1 -1
  259. package/es/QuickReply/component.json +129 -0
  260. package/es/QuickReply/index.d.ts +1 -1
  261. package/es/Radio/component.json +136 -0
  262. package/es/RadioGroup/component.json +149 -0
  263. package/es/RangeInput/component.json +198 -0
  264. package/es/RangeInput/index.js +1 -1
  265. package/es/Result/component.json +104 -0
  266. package/es/ScrollBar/component.json +115 -0
  267. package/es/Search/component.json +177 -0
  268. package/es/Search/index.d.ts +1 -1
  269. package/es/Select/component.json +244 -0
  270. package/es/Select/index.js +113 -113
  271. package/es/SelectInput/component.json +184 -0
  272. package/es/Selector/component.json +203 -0
  273. package/es/Selector/index.js +28 -27
  274. package/es/Selector/interface.d.ts +1 -1
  275. package/es/Selector/selectorMain/index.js +2 -2
  276. package/es/Selector/selectorNode/index.js +1 -1
  277. package/es/Selector/util.d.ts +2 -2
  278. package/es/SelectorPicker/component.json +179 -0
  279. package/es/SelectorPicker/index.d.ts +5 -5
  280. package/es/SelectorPicker/index.js +15 -15
  281. package/es/SingleBox/component.json +151 -0
  282. package/es/SingleBox/index.d.ts +2 -2
  283. package/es/Slider/component.json +181 -0
  284. package/es/SortBox/component.json +108 -0
  285. package/es/Status/component.json +104 -0
  286. package/es/Stepper/component.json +129 -0
  287. package/es/Stepper/index.d.ts +2 -2
  288. package/es/Switch/component.json +207 -0
  289. package/es/Switch/index.css +1 -1
  290. package/es/Switch/index.d.ts +3 -2
  291. package/es/Switch/index.js +60 -59
  292. package/es/Switch/style/index.css +1 -1
  293. package/es/Table/component.json +547 -0
  294. package/es/Table/index.d.ts +2 -2
  295. package/es/Table/index.js +414 -414
  296. package/es/Table/interface.d.ts +6 -0
  297. package/es/Tabs/component.json +227 -0
  298. package/es/Tag/component.json +221 -0
  299. package/es/Tag/index.css +1 -1
  300. package/es/Tag/index.d.ts +1 -1
  301. package/es/Tag/index.js +20 -20
  302. package/es/Tag/style/index.css +1 -1
  303. package/es/TextEditor/component.json +186 -0
  304. package/es/TextEditor/index.d.ts +5 -5
  305. package/es/TextField/component.json +290 -0
  306. package/es/TextField/index.d.ts +2 -2
  307. package/es/TimePicker/component.json +176 -0
  308. package/es/Timeline/component.json +110 -0
  309. package/es/Title/component.json +156 -0
  310. package/es/ToggleButton/component.json +153 -0
  311. package/es/Tooltip/component.json +176 -0
  312. package/es/Tooltip/index.js +58 -53
  313. package/es/Tooltip/interface.d.ts +14 -1
  314. package/es/Tooltip/utils.js +6 -6
  315. package/es/Transfer/component.json +157 -0
  316. package/es/Tree/component.json +512 -0
  317. package/es/Upload/component.json +450 -0
  318. package/es/Utils/type.d.ts +0 -2
  319. package/es/index.d.ts +2 -0
  320. package/es/index.js +1 -1
  321. package/es/locale/en_US.d.ts +361 -0
  322. package/es/locale/en_US.js +364 -0
  323. package/es/locale/index.d.ts +1 -723
  324. package/es/locale/index2.js +10 -0
  325. package/es/locale/zh_CN.d.ts +361 -0
  326. package/es/locale/zh_CN.js +364 -0
  327. package/lib/AlignBox/component.json +89 -0
  328. package/lib/AlignBox/index.css +1 -1
  329. package/lib/AlignBox/index.d.ts +6 -2
  330. package/lib/AlignBox/index.js +1 -1
  331. package/lib/AlignBox/style/index.css +1 -1
  332. package/lib/Anchor/anchorMenu/index.d.ts +2 -1
  333. package/lib/Anchor/anchorMenu/index.js +1 -1
  334. package/lib/Anchor/component.json +130 -0
  335. package/lib/Anchor/index.js +1 -1
  336. package/lib/Anchor/type.d.ts +8 -4
  337. package/lib/Argv/component.json +216 -0
  338. package/lib/Argv/index.d.ts +5 -6
  339. package/lib/AutoBox/component.json +133 -0
  340. package/lib/AutoBox/index.d.ts +3 -3
  341. package/lib/AutoBox/index.js +1 -1
  342. package/lib/AutoBox/protal.d.ts +2 -2
  343. package/lib/AutoBox/protal.js +1 -1
  344. package/lib/AutoButton/component.json +109 -0
  345. package/lib/AutoButton/index.js +1 -1
  346. package/lib/AutoTips/autoTipsMultiline/index.d.ts +1 -1
  347. package/lib/AutoTips/autoTipsMultiline/index.js +1 -1
  348. package/lib/AutoTips/component.json +121 -0
  349. package/lib/Badge/component.json +92 -0
  350. package/lib/Breadcrumbs/component.json +142 -0
  351. package/lib/Breadcrumbs/index.js +1 -1
  352. package/lib/Button/SplitButton.d.ts +2 -2
  353. package/lib/Button/component.json +168 -0
  354. package/lib/Button/index.js +1 -1
  355. package/lib/ButtonGroup/component.json +132 -0
  356. package/lib/ButtonGroup/index.d.ts +1 -1
  357. package/lib/Card/component.json +162 -0
  358. package/lib/Card/index.d.ts +2 -2
  359. package/lib/Card/index.js +1 -1
  360. package/lib/Carousel/component.json +142 -0
  361. package/lib/Carousel/index.d.ts +1 -1
  362. package/lib/Cascader/component.json +196 -0
  363. package/lib/Cascader/hooks/useEntities.js +1 -1
  364. package/lib/Cascader/interface.d.ts +1 -0
  365. package/lib/Cascader/utils/commonUtil.d.ts +1 -1
  366. package/lib/Cascader/utils/commonUtil.js +1 -1
  367. package/lib/Cascader/utils/treeUtil.d.ts +14 -5
  368. package/lib/Cascader/utils/treeUtil.js +1 -1
  369. package/lib/Checkbox/component.json +138 -0
  370. package/lib/CheckboxGroup/component.json +152 -0
  371. package/lib/CodeEditor/component.json +189 -0
  372. package/lib/CodeEditor/index.d.ts +10 -9
  373. package/lib/Collapse/component.json +166 -0
  374. package/lib/Collapse/index.d.ts +1 -1
  375. package/lib/Collapse/index.js +1 -1
  376. package/lib/CollapseBox/component.json +84 -0
  377. package/lib/CollapseLayout/component.json +155 -0
  378. package/lib/ColorPicker/component.json +142 -0
  379. package/lib/ComboSelect/component.json +181 -0
  380. package/lib/ComboSelect/index.js +1 -1
  381. package/lib/ComboSelect/interface.d.ts +2 -2
  382. package/lib/ComboSelect/utils.d.ts +3 -3
  383. package/lib/ComboSelect/utils.js +1 -1
  384. package/lib/Container/component.json +111 -0
  385. package/lib/ContentBox/component.json +81 -0
  386. package/lib/CopyText/component.json +118 -0
  387. package/lib/CycleSelector/component.json +98 -0
  388. package/lib/CycleSelector/index.js +1 -1
  389. package/lib/DatePicker/component.json +192 -0
  390. package/lib/DatePicker/generatePicker/generateRangePicker.js +1 -1
  391. package/lib/DatePicker/generatePicker/generateSinglePicker.js +1 -1
  392. package/lib/Descriptions/component.json +142 -0
  393. package/lib/Descriptions/index.d.ts +1 -1
  394. package/lib/Desktop/component.json +171 -0
  395. package/lib/DragVerify/component.json +114 -0
  396. package/lib/DragVerify/index.js +1 -1
  397. package/lib/Drawer/component.json +200 -0
  398. package/lib/Drawer/index.js +1 -1
  399. package/lib/Drawer/interface.d.ts +1 -1
  400. package/lib/Drawer/util.d.ts +1 -6
  401. package/lib/Drawer/util.js +1 -1
  402. package/lib/Dropdown/component.json +147 -0
  403. package/lib/DynamicMultiBox/component.json +278 -0
  404. package/lib/DynamicMultiBox/formItem.d.ts +1 -1
  405. package/lib/DynamicMultiBox/rowForm.d.ts +2 -2
  406. package/lib/Empty/component.json +123 -0
  407. package/lib/Empty/index.css +1 -1
  408. package/lib/Empty/index.d.ts +2 -2
  409. package/lib/Empty/index.js +1 -1
  410. package/lib/Empty/style/index.css +1 -1
  411. package/lib/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
  412. package/lib/FieldForm/FieldFormItem/index.d.ts +6 -6
  413. package/lib/FieldForm/Form.d.ts +2 -2
  414. package/lib/FieldForm/FormList.d.ts +2 -2
  415. package/lib/FieldForm/component.json +196 -0
  416. package/lib/FieldForm/context.d.ts +5 -1
  417. package/lib/FieldForm/context.js +1 -1
  418. package/lib/FieldForm/hooks/useForm.d.ts +4 -3
  419. package/lib/FieldForm/hooks/useFormInstance.d.ts +1 -1
  420. package/lib/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
  421. package/lib/FieldForm/hooks/useFormItemStatus.js +1 -1
  422. package/lib/FieldForm/hooks/useItemRef.d.ts +1 -1
  423. package/lib/FieldForm/hooks/useItemRef.js +1 -1
  424. package/lib/Form/component.json +161 -0
  425. package/lib/Form/index.d.ts +52 -49
  426. package/lib/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
  427. package/lib/FormItem/compoments/defaultCompoments/index.js +1 -1
  428. package/lib/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
  429. package/lib/FormItem/compoments/formFile/index.js +1 -1
  430. package/lib/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
  431. package/lib/FormItem/compoments/formSelect/index.d.ts +1 -1
  432. package/lib/FormItem/component.json +171 -0
  433. package/lib/FormItem/index.d.ts +5 -5
  434. package/lib/FormItem/index.js +1 -1
  435. package/lib/FormItem/itemType.js +1 -1
  436. package/lib/FunctionModal/component.json +197 -0
  437. package/lib/FunctionModal/dialog.d.ts +1 -1
  438. package/lib/FunctionModal/modalContext.d.ts +4 -1
  439. package/lib/Help/component.json +118 -0
  440. package/lib/HelperText/component.json +126 -0
  441. package/lib/Image/component.json +165 -0
  442. package/lib/InputCode/component.json +191 -0
  443. package/lib/InputCode/index.d.ts +2 -2
  444. package/lib/InputLang/component.json +205 -0
  445. package/lib/InputLang/index.js +1 -1
  446. package/lib/InputNumber/component.json +162 -0
  447. package/lib/Label/component.json +126 -0
  448. package/lib/Label/index.d.ts +2 -2
  449. package/lib/Loading/component.json +91 -0
  450. package/lib/Menu/component.json +180 -0
  451. package/lib/Message/component.json +246 -0
  452. package/lib/Message/index.d.ts +2 -2
  453. package/lib/Message/index.js +1 -1
  454. package/lib/Modal/Confirm/index.d.ts +1 -1
  455. package/lib/Modal/component.json +277 -0
  456. package/lib/Modal/index.d.ts +85 -5
  457. package/lib/Modal/index.js +1 -1
  458. package/lib/Modal/interface.d.ts +1 -0
  459. package/lib/MultiBox/component.json +216 -0
  460. package/lib/MultiBox/index.js +1 -1
  461. package/lib/Notification/component.json +184 -0
  462. package/lib/OperateBtn/component.json +134 -0
  463. package/lib/OperateBtn/index.d.ts +3 -3
  464. package/lib/PageHeader/component.json +112 -0
  465. package/lib/Pagination/component.json +181 -0
  466. package/lib/Pagination/index.js +1 -1
  467. package/lib/PasswordRules/component.json +105 -0
  468. package/lib/PasswordRules/index.d.ts +4 -4
  469. package/lib/PopConfirm/component.json +227 -0
  470. package/lib/PopConfirm/index.d.ts +1 -1
  471. package/lib/PopConfirm/index.js +1 -1
  472. package/lib/PopMenu/component.json +131 -0
  473. package/lib/PopMenu/hooks.d.ts +1 -1
  474. package/lib/PopMenu/index.js +1 -1
  475. package/lib/Popover/component.json +165 -0
  476. package/lib/Popover/index.js +1 -1
  477. package/lib/Progress/component.json +161 -0
  478. package/lib/Prompt/component.json +144 -0
  479. package/lib/Querying/component.json +96 -0
  480. package/lib/Querying/index.css +1 -1
  481. package/lib/Querying/index.d.ts +2 -2
  482. package/lib/Querying/index.js +1 -1
  483. package/lib/Querying/style/index.css +1 -1
  484. package/lib/QuickReply/component.json +129 -0
  485. package/lib/QuickReply/index.d.ts +1 -1
  486. package/lib/Radio/component.json +136 -0
  487. package/lib/RadioGroup/component.json +149 -0
  488. package/lib/RangeInput/component.json +198 -0
  489. package/lib/RangeInput/index.js +1 -1
  490. package/lib/Result/component.json +104 -0
  491. package/lib/ScrollBar/component.json +115 -0
  492. package/lib/Search/component.json +177 -0
  493. package/lib/Search/index.d.ts +1 -1
  494. package/lib/Select/component.json +244 -0
  495. package/lib/Select/index.js +1 -1
  496. package/lib/SelectInput/component.json +184 -0
  497. package/lib/Selector/component.json +203 -0
  498. package/lib/Selector/index.js +1 -1
  499. package/lib/Selector/interface.d.ts +1 -1
  500. package/lib/Selector/selectorMain/index.js +1 -1
  501. package/lib/Selector/selectorNode/index.js +1 -1
  502. package/lib/Selector/util.d.ts +2 -2
  503. package/lib/SelectorPicker/component.json +179 -0
  504. package/lib/SelectorPicker/index.d.ts +5 -5
  505. package/lib/SelectorPicker/index.js +1 -1
  506. package/lib/SingleBox/component.json +151 -0
  507. package/lib/SingleBox/index.d.ts +2 -2
  508. package/lib/Slider/component.json +181 -0
  509. package/lib/SortBox/component.json +108 -0
  510. package/lib/Status/component.json +104 -0
  511. package/lib/Stepper/component.json +129 -0
  512. package/lib/Stepper/index.d.ts +2 -2
  513. package/lib/Switch/component.json +207 -0
  514. package/lib/Switch/index.css +1 -1
  515. package/lib/Switch/index.d.ts +3 -2
  516. package/lib/Switch/index.js +1 -1
  517. package/lib/Switch/style/index.css +1 -1
  518. package/lib/Table/component.json +547 -0
  519. package/lib/Table/index.d.ts +2 -2
  520. package/lib/Table/index.js +1 -1
  521. package/lib/Table/interface.d.ts +6 -0
  522. package/lib/Tabs/component.json +227 -0
  523. package/lib/Tag/component.json +221 -0
  524. package/lib/Tag/index.css +1 -1
  525. package/lib/Tag/index.d.ts +1 -1
  526. package/lib/Tag/index.js +1 -1
  527. package/lib/Tag/style/index.css +1 -1
  528. package/lib/TextEditor/component.json +186 -0
  529. package/lib/TextEditor/index.d.ts +5 -5
  530. package/lib/TextField/component.json +290 -0
  531. package/lib/TextField/index.d.ts +2 -2
  532. package/lib/TimePicker/component.json +176 -0
  533. package/lib/Timeline/component.json +110 -0
  534. package/lib/Title/component.json +156 -0
  535. package/lib/ToggleButton/component.json +153 -0
  536. package/lib/Tooltip/component.json +176 -0
  537. package/lib/Tooltip/index.js +1 -1
  538. package/lib/Tooltip/interface.d.ts +14 -1
  539. package/lib/Tooltip/utils.js +1 -1
  540. package/lib/Transfer/component.json +157 -0
  541. package/lib/Tree/component.json +512 -0
  542. package/lib/Upload/component.json +450 -0
  543. package/lib/Utils/type.d.ts +0 -2
  544. package/lib/index.d.ts +2 -0
  545. package/lib/index.js +1 -1
  546. package/lib/locale/en_US.d.ts +361 -0
  547. package/lib/locale/en_US.js +2 -0
  548. package/lib/locale/index.d.ts +1 -723
  549. package/lib/locale/index2.js +2 -0
  550. package/lib/locale/zh_CN.d.ts +361 -0
  551. package/lib/locale/zh_CN.js +2 -0
  552. package/package.json +9 -3
  553. /package/es/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
  554. /package/es/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
  555. /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
  556. /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
@@ -0,0 +1,227 @@
1
+ {
2
+ "name": "PopConfirm",
3
+ "category": "Feedback",
4
+ "description": "点击元素,弹出气泡确认框,用于危险操作二次确认",
5
+ "semantic": {
6
+ "intent": [
7
+ "二次确认",
8
+ "防止误操作",
9
+ "轻量级确认"
10
+ ],
11
+ "useCases": [
12
+ "删除操作",
13
+ "风险操作",
14
+ "状态变更"
15
+ ],
16
+ "riskLevel": "high"
17
+ },
18
+ "variants": {
19
+ "default": {
20
+ "meaning": "默认样式"
21
+ }
22
+ },
23
+ "states": [
24
+ "visible",
25
+ "hidden",
26
+ "loading"
27
+ ],
28
+ "idealProps": {
29
+ "title": {
30
+ "type": "string | ReactNode",
31
+ "description": "确认框标题(src/Popconfirm/index.tsx:117 `title && <div>` 实证:未传时不渲染标题区域)"
32
+ },
33
+ "content": {
34
+ "type": "string | ReactNode",
35
+ "description": "确认框正文内容(src/Popconfirm/index.tsx:119 `content && <div>` 实证:独立于 title 渲染,支持 ReactNode)"
36
+ },
37
+ "onOk": {
38
+ "type": "function",
39
+ "signature": "() => void",
40
+ "description": "点击确认按钮的回调(src/Popconfirm/index.tsx:63 `handleOk` → `onOk?.()` 实证)。签名是 `() => void`,**不接收参数**。⚠️ onOk 调用后组件会自动调 handleClose 关闭弹框(非受控模式下)"
41
+ },
42
+ "onCancel": {
43
+ "type": "function",
44
+ "signature": "() => void",
45
+ "description": "点击取消按钮的回调(src/Popconfirm/index.tsx:60 `handleCancel` → `onCancel?.()` 实证)。签名是 `() => void`,**不接收参数**。onCancel 调用后同样会自动 handleClose"
46
+ },
47
+ "okText": {
48
+ "type": "string",
49
+ "default": "确定",
50
+ "description": "确认按钮文字(src/Popconfirm/index.tsx:170 `okText ?? intl({id:'ok'})` 实证,未传时使用 i18n 默认值)"
51
+ },
52
+ "cancelText": {
53
+ "type": "string",
54
+ "default": "取消",
55
+ "description": "取消按钮文字(src/Popconfirm/index.tsx:158 `cancelText ?? intl({id:'cancel'})` 实证)"
56
+ },
57
+ "okButtonProps": {
58
+ "type": "object",
59
+ "objectShape": {
60
+ "disabled": { "type": "boolean", "description": "禁用确认按钮" },
61
+ "loading": { "type": "boolean", "description": "确认按钮 loading 状态" },
62
+ "variant": { "type": "'contained' | 'outlined' | 'text'", "description": "按钮样式变体" },
63
+ "size": { "type": "'small' | 'medium' | 'large'", "description": "按钮尺寸" }
64
+ },
65
+ "description": "确认按钮属性(ButtonProps 子集)。⚠️ okButtonDanger=true 时 danger 样式优先级高于 okButtonProps.danger(src:168 `danger={okButtonDanger ?? okButtonProps?.danger}` 实证)"
66
+ },
67
+ "trigger": {
68
+ "type": "enum",
69
+ "values": [
70
+ "click",
71
+ "hover"
72
+ ],
73
+ "default": "click",
74
+ "description": "触发方式(src/Popconfirm/index.tsx:82 解构默认值 'click' 实证)"
75
+ },
76
+ "type": {
77
+ "type": "enum",
78
+ "values": ["success", "info", "error", "warning"],
79
+ "default": "warning",
80
+ "description": "图标类型(src/Popconfirm/index.tsx:83 解构默认 'warning' 实证,`iconMapping` 字典按 type 取对应 icon)"
81
+ },
82
+ "open": {
83
+ "type": "boolean",
84
+ "default": false,
85
+ "description": "是否显示弹框(受控,需配合 controllable=true 才生效)。src:175 `controllable && setInOpen(open)` 实证:**单独传 open 不生效——必须同时传 controllable={true}**"
86
+ },
87
+ "controllable": {
88
+ "type": "boolean",
89
+ "default": false,
90
+ "description": "是否启用受控模式(src:73 `!controllable` 判断实证)。true 时内部不自动切换 inOpen,完全由 open prop 控制;false(默认) 时为非受控,点击确定/取消自动关闭"
91
+ },
92
+ "showCancel": {
93
+ "type": "boolean",
94
+ "default": true,
95
+ "description": "是否显示取消按钮(src:152-160 `showCancel &&` 实证)"
96
+ },
97
+ "okButtonDanger": {
98
+ "type": "boolean",
99
+ "default": false,
100
+ "description": "确认按钮是否显示危险(红色)样式(src:168 优先级高于 okButtonProps.danger)"
101
+ },
102
+ "countdown": {
103
+ "type": "boolean",
104
+ "default": false,
105
+ "description": "是否启用确认按钮倒计时(src:92-112 useEffect 实证)。倒计时进行时确认按钮 disabled,倒计时结束自动解除。搭配 countdownTime 设置时长"
106
+ },
107
+ "countdownTime": {
108
+ "type": "number",
109
+ "default": 5,
110
+ "description": "倒计时时长(秒,src:88 解构默认值 5 实证)。countdown=true 时生效"
111
+ },
112
+ "onClose": {
113
+ "type": "function",
114
+ "signature": "() => void",
115
+ "description": "弹框关闭回调(src:66-72 `handleClose` → `onClose?.()` 实证)。**非受控模式下**:确定/取消/点击外部都会触发 onClose。受控模式(controllable=true)下不触发自动关闭流程"
116
+ },
117
+ "onCountdownFinish": {
118
+ "type": "function",
119
+ "signature": "() => void",
120
+ "description": "倒计时完成回调(src:100 `onCountdownFinish?.()` 实证)。countdown=true 时,倒计时到 0 触发"
121
+ },
122
+ "placement": {
123
+ "type": "enum",
124
+ "values": ["top", "bottom", "left", "right", "top-start", "top-end", "bottom-start", "bottom-end"],
125
+ "default": "top-start",
126
+ "description": "弹框弹出位置(src:89 解构默认 'top-start' 实证,透传给 Tooltip placement)"
127
+ }
128
+ },
129
+ "do": [
130
+ "在执行不可逆或高风险操作前使用 PopConfirm",
131
+ "提供明确的标题和内容描述(title + content 分层,title 是主判断,content 是补充说明)",
132
+ "高危操作(如删除)使用 okButtonDanger={true} 突出危险样式,提示用户谨慎操作",
133
+ "需要强制用户读完提示再确认时使用 countdown={true},配合 countdownTime 控制等待时长",
134
+ "受控模式必须 controllable={true} + open={state} 配合使用,单独传 open 无效"
135
+ ],
136
+ "dont": [
137
+ "滥用 PopConfirm 导致用户疲劳(非关键操作不应确认)",
138
+ "在 PopConfirm 中放置过多复杂内容(应使用 Modal)",
139
+ "不要假设 onOk/onCancel 有参数——签名是 `() => void`,无参数(src 实证)",
140
+ "不要单独传 open={true} 而不传 controllable={true}——非受控模式下 open prop 被忽略(src:175 实证)",
141
+ "不要在 actions 自定义底部按钮后还期望 onOk/onCancel 被触发——传了 actions 时默认按钮区域被完全替换"
142
+ ],
143
+ "events": {
144
+ "onOk": {
145
+ "signature": "() => void",
146
+ "asyncSupported": false,
147
+ "examples": [
148
+ "点击确认按钮触发,非受控模式下弹框自动关闭",
149
+ "高危删除操作:onOk 内调 deleteItem(id) 执行删除逻辑",
150
+ "配合 okButtonDanger={true}:onOk 显示红色按钮,用户点击后执行危险操作"
151
+ ],
152
+ "commonMistakes": [
153
+ "假设 onOk 接收参数(如 event)→ 签名是 () => void,无参数(src:63-65 `onOk?.()` 实证)",
154
+ "在 onOk 内调 setOpen(false) 手动关闭 → 非受控模式下 handleOk 已自动调 handleClose 关闭,无需手动干预",
155
+ "假设 async onOk 能自动等待 → PopConfirm 不支持 asyncSupported,onOk 不 await,调用立即返回"
156
+ ]
157
+ },
158
+ "onCancel": {
159
+ "signature": "() => void",
160
+ "asyncSupported": false,
161
+ "examples": [
162
+ "点击取消按钮触发,弹框自动关闭",
163
+ "onCancel 内重置临时状态(如清空输入框)",
164
+ "showCancel=false 时 onCancel 不会被触发(取消按钮不显示)"
165
+ ],
166
+ "commonMistakes": [
167
+ "假设 onCancel 接收 event 参数 → 签名是 () => void(src:60-62 `onCancel?.()` 实证)",
168
+ "把 onCancel 和 onClose 混用 → onCancel 只绑定取消按钮,onClose 在任何关闭路径后触发",
169
+ "传 showCancel={false} 后仍期望 onCancel 触发 → 按钮不渲染,用户无法点击触发"
170
+ ]
171
+ },
172
+ "onClose": {
173
+ "signature": "() => void",
174
+ "asyncSupported": false,
175
+ "examples": [
176
+ "非受控模式下,确定/取消/点击外部都会触发 onClose",
177
+ "用于清理弹框关闭后的状态(如重置 loading 标志)",
178
+ "受控模式(controllable=true)下由业务方手动控制 open,onClose 作为通知回调"
179
+ ],
180
+ "commonMistakes": [
181
+ "受控模式下期望 onClose 自动关闭弹框 → controllable=true 时 handleClose 内 setInOpen 不被调用,需业务方 setOpen(false)",
182
+ "假设 onClose 和 onCancel 是同一个 → onClose 是统一关闭通知,onCancel 只绑取消按钮",
183
+ "非受控下在 onOk 内又调 setOpen(false) 与 onClose 重复 → 非受控模式已自动关闭"
184
+ ]
185
+ },
186
+ "onCountdownFinish": {
187
+ "signature": "() => void",
188
+ "asyncSupported": false,
189
+ "examples": [
190
+ "countdown=true 倒计时到 0 时触发,此时确认按钮解禁",
191
+ "用于记录用户是否耐心等待完整倒计时(埋点场景)",
192
+ "倒计时完成后触发提示音或动画"
193
+ ],
194
+ "commonMistakes": [
195
+ "仅传 onCountdownFinish 而未传 countdown={true} → countdown=false 时不会启动计时,回调不触发",
196
+ "假设倒计时完成后弹框自动关闭 → onCountdownFinish 只是通知,不自动关闭,需在回调内手动处理",
197
+ "假设倒计时单位是毫秒 → countdownTime 单位是秒(src:88 默认值 5 = 5秒)"
198
+ ]
199
+ }
200
+ },
201
+ "typescriptPitfalls": [
202
+ {
203
+ "issue": "onOk / onCancel 的类型声明是 Function,不是具体签名,直接用 any 会丢类型安全",
204
+ "wrong": "onOk={(val: any) => doDelete(val)} // onOk 无参数,val 永远是 undefined",
205
+ "right": "onOk={() => doDelete(id)} // 正确:() => void,id 从外部闭包获取"
206
+ },
207
+ {
208
+ "issue": "受控模式需同时传 controllable={true},单独传 open 无效",
209
+ "wrong": "<PopConfirm open={isOpen} onClose={() => setIsOpen(false)} /> // open 被忽略,非受控模式",
210
+ "right": "<PopConfirm open={isOpen} controllable={true} onClose={() => setIsOpen(false)} />"
211
+ },
212
+ {
213
+ "issue": "type 枚举控制图标,不接受 'danger' 等非法值",
214
+ "wrong": "<PopConfirm type='danger' /> // 'danger' 不在枚举里,iconMapping 会取 undefined",
215
+ "right": "<PopConfirm type='error' okButtonDanger={true} /> // 危险操作:type='error' 图标 + okButtonDanger 红色按钮"
216
+ },
217
+ {
218
+ "issue": "countdown 倒计时单位是秒,不是毫秒",
219
+ "wrong": "<PopConfirm countdown={true} countdownTime={3000} /> // 3000 秒 = 50 分钟,几乎不会结束",
220
+ "right": "<PopConfirm countdown={true} countdownTime={3} /> // 3 秒倒计时"
221
+ }
222
+ ],
223
+ "mapping": {
224
+ "realComponent": "PopConfirm",
225
+ "adapter": null
226
+ }
227
+ }
@@ -59,7 +59,7 @@ export interface PopConfirmProps {
59
59
  onCountdownFinish?: () => void;
60
60
  /** 浮层渲染容器,默认body */
61
61
  getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;
62
- [name: string]: any;
62
+ [name: string]: unknown;
63
63
  }
64
64
  export declare const PopConfirm: FC<PopConfirmProps>;
65
65
  export default PopConfirm;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const e=require("../_virtual/jsx-runtime.js"),s=require("react"),Y=require("../node_modules/@para-ui/icons/CheckCircleF/index.js"),Z=require("../node_modules/@para-ui/icons/WarningCircle/index.js"),ee=require("../node_modules/@para-ui/icons/CloseCircleF/index.js"),ne=require("../node_modules/@para-ui/icons/WarningCircleF/index.js"),b=require("../Button/index.js"),se=require("../Tooltip/index.js"),i=require("clsx"),te=require("../GlobalContext/useFormatMessage.js"),oe=require("./lang/index.js"),f=require("../GlobalContext/constant.js"),re=require("../GlobalContext/usePopupContainer.js");;/* empty css */const ie={success:e.jsxRuntimeExports.jsx(Y.CheckCircleF,{}),warning:e.jsxRuntimeExports.jsx(ne.WarningCircleF,{}),error:e.jsxRuntimeExports.jsx(ee.CloseCircleF,{}),info:e.jsxRuntimeExports.jsx(Z.WarningCircle,{})},q=w=>{const{trigger:N="click",type:k="warning",title:t,content:c,description:j,icon:P,okText:$,cancelText:T,onOk:y,onCancel:B,okButtonProps:a,cancelButtonProps:F,placement:I="top-start",className:O,overlayClassName:M,style:S,children:_,open:l=!1,controllable:u=!1,showCancel:z=!0,bubble:W=!0,okButtonDanger:D,countdown:o,countdownTime:C=5,actions:V,onClose:p,onCountdownFinish:A,getPopupContainer:G,...H}=w,g=te.default("PopConfirm",oe.default),R=s.useRef(),J=re.default(R,G),[x,m]=s.useState(!1),r=s.useRef(),[d,h]=s.useState(C),E=s.useMemo(()=>o&&d>=1,[o,d]);s.useEffect(()=>(o&&(x?(h(C),r.current=setInterval(()=>{h(n=>n<=1?(A?.(),clearInterval(r.current),0):n-1)},1e3)):clearInterval(r.current)),()=>{clearInterval(r.current)}),[x,o]);const K=()=>{B?.(),v()},L=()=>{y?.(),v()},v=()=>{u||(m(!1),p?.())},Q=n=>{u?l&&p?.():(m(n),n||p?.())};s.useEffect(()=>{u&&m(l)},[l]);const U=()=>{const n=e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[z&&e.jsxRuntimeExports.jsx(b.Button,{className:`${f.$prefixCls}-popconfirm-btn`,onClick:K,variant:"outlined",size:"small",...F,children:T??g({id:"cancel"})}),e.jsxRuntimeExports.jsx(b.Button,{className:`${f.$prefixCls}-popconfirm-btn`,onClick:L,variant:"contained",size:"small",...a,danger:D??a?.danger,disabled:E?!0:a?.disabled,children:E?`${d}s`:$??g({id:"ok"})})]});return e.jsxRuntimeExports.jsxs("div",{className:i("popconfirm-wrapper"),style:S,onClick:X=>{W||X.stopPropagation()},children:[e.jsxRuntimeExports.jsxs("div",{className:"popconfirm-message",children:[e.jsxRuntimeExports.jsx("span",{className:"popconfirm-message-icon",children:P||ie[k]}),e.jsxRuntimeExports.jsxs("div",{className:"popconfirm-message-body",children:[t&&e.jsxRuntimeExports.jsx("div",{className:"popconfirm-message-title",children:t}),c&&e.jsxRuntimeExports.jsx("div",{className:i("popconfirm-message-content",t?"":"without-title"),children:c}),j&&e.jsxRuntimeExports.jsx("div",{className:i("popconfirm-message-description",t||c?"":"without-title-or-content"),children:j})]})]}),e.jsxRuntimeExports.jsx("div",{className:"popconfirm-btns",children:V??n})]})};return e.jsxRuntimeExports.jsx(se.Tooltip,{...H,ref:R,trigger:N,open:x,arrow:!1,placement:I,title:U(),onVisibleChange:Q,overlayClassName:i(`${f.$prefixCls}-popconfirm`,M,O),getPopupContainer:J,children:_})};exports.PopConfirm=q;exports.default=q;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const e=require("../_virtual/jsx-runtime.js"),s=require("react"),Y=require("../node_modules/@para-ui/icons/CheckCircleF/index.js"),Z=require("../node_modules/@para-ui/icons/WarningCircle/index.js"),ee=require("../node_modules/@para-ui/icons/CloseCircleF/index.js"),ne=require("../node_modules/@para-ui/icons/WarningCircleF/index.js"),b=require("../Button/index.js"),se=require("../Tooltip/index.js"),i=require("clsx"),te=require("../GlobalContext/useFormatMessage.js"),oe=require("./lang/index.js"),f=require("../GlobalContext/constant.js"),re=require("../GlobalContext/usePopupContainer.js");;/* empty css */const ie={success:e.jsxRuntimeExports.jsx(Y.CheckCircleF,{}),warning:e.jsxRuntimeExports.jsx(ne.WarningCircleF,{}),error:e.jsxRuntimeExports.jsx(ee.CloseCircleF,{}),info:e.jsxRuntimeExports.jsx(Z.WarningCircle,{})},q=w=>{const{trigger:N="click",type:k="warning",title:t,content:c,description:j,icon:P,okText:$,cancelText:T,onOk:y,onCancel:B,okButtonProps:a,cancelButtonProps:F,placement:I="top-start",className:O,overlayClassName:M,style:S,children:_,open:l=!1,controllable:u=!1,showCancel:z=!0,bubble:W=!0,okButtonDanger:D,countdown:o,countdownTime:C=5,actions:V,onClose:p,onCountdownFinish:A,getPopupContainer:G,...H}=w,g=te.default("PopConfirm",oe.default),R=s.useRef(null),J=re.default(R,G),[x,m]=s.useState(!1),r=s.useRef(),[d,h]=s.useState(C),E=s.useMemo(()=>o&&d>=1,[o,d]);s.useEffect(()=>(o&&(x?(h(C),r.current=setInterval(()=>{h(n=>n<=1?(A?.(),clearInterval(r.current),0):n-1)},1e3)):clearInterval(r.current)),()=>{clearInterval(r.current)}),[x,o]);const K=()=>{B?.(),v()},L=()=>{y?.(),v()},v=()=>{u||(m(!1),p?.())},Q=n=>{u?l&&p?.():(m(n),n||p?.())};s.useEffect(()=>{u&&m(l)},[l]);const U=()=>{const n=e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[z&&e.jsxRuntimeExports.jsx(b.Button,{className:`${f.$prefixCls}-popconfirm-btn`,onClick:K,variant:"outlined",size:"small",...F,children:T??g({id:"cancel"})}),e.jsxRuntimeExports.jsx(b.Button,{className:`${f.$prefixCls}-popconfirm-btn`,onClick:L,variant:"contained",size:"small",...a,danger:D??a?.danger,disabled:E?!0:a?.disabled,children:E?`${d}s`:$??g({id:"ok"})})]});return e.jsxRuntimeExports.jsxs("div",{className:i("popconfirm-wrapper"),style:S,onClick:X=>{W||X.stopPropagation()},children:[e.jsxRuntimeExports.jsxs("div",{className:"popconfirm-message",children:[e.jsxRuntimeExports.jsx("span",{className:"popconfirm-message-icon",children:P||ie[k]}),e.jsxRuntimeExports.jsxs("div",{className:"popconfirm-message-body",children:[t&&e.jsxRuntimeExports.jsx("div",{className:"popconfirm-message-title",children:t}),c&&e.jsxRuntimeExports.jsx("div",{className:i("popconfirm-message-content",t?"":"without-title"),children:c}),j&&e.jsxRuntimeExports.jsx("div",{className:i("popconfirm-message-description",t||c?"":"without-title-or-content"),children:j})]})]}),e.jsxRuntimeExports.jsx("div",{className:"popconfirm-btns",children:V??n})]})};return e.jsxRuntimeExports.jsx(se.Tooltip,{...H,ref:R,trigger:N,open:x,arrow:!1,placement:I,title:U(),onVisibleChange:Q,overlayClassName:i(`${f.$prefixCls}-popconfirm`,M,O),getPopupContainer:J,children:_})};exports.PopConfirm=q;exports.default=q;
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,131 @@
1
+ {
2
+ "name": "PopMenu",
3
+ "category": "Navigation",
4
+ "description": "下拉级联菜单,支持分组、子菜单嵌套和受控选中态,基于 Popover 实现",
5
+ "semantic": {
6
+ "intent": [
7
+ "更多操作",
8
+ "收纳命令",
9
+ "选择"
10
+ ],
11
+ "useCases": [
12
+ "操作栏更多",
13
+ "导航菜单",
14
+ "过滤器"
15
+ ],
16
+ "riskLevel": "low"
17
+ },
18
+ "variants": {
19
+ "default": {
20
+ "meaning": "标准下拉菜单"
21
+ }
22
+ },
23
+ "states": [
24
+ "visible",
25
+ "hidden"
26
+ ],
27
+ "idealProps": {
28
+ "data": {
29
+ "type": "PopMenuListItemProps[] | PopMenuGroupItemProps[]",
30
+ "description": "菜单数据源;**PopMenuListItemProps** = { name: string(必填,唯一 key); title?: string(显示文案); disabled?: boolean; disabledTip?: string; help?: string; render?: (handle: IPopMenuHandler) => ReactElement(自定义渲染); onClick?: (name, item?, path?) => void; children?: PopMenuListItemProps[](子菜单)};**PopMenuGroupItemProps** = { list: PopMenuListItemProps[] }(用于分组,混合传时未分组项自动聚合到末尾组)"
31
+ },
32
+ "direction": {
33
+ "type": "enum",
34
+ "values": ["left", "right"],
35
+ "default": "left",
36
+ "description": "弹出方向;left=右侧展开(默认 placement=bottomRight);right=左侧展开(默认 placement=bottomLeft)"
37
+ },
38
+ "onChange": {
39
+ "type": "(value: TPopMenuValue) => void",
40
+ "description": "选中项变化时的回调;**TPopMenuValue = string[]**(选中路径数组);每次点击叶子节点时触发"
41
+ },
42
+ "onClick": {
43
+ "type": "(name: string, item?: PopMenuListItemProps, path?: string[]) => void",
44
+ "description": "点击菜单项时的回调;name=当前项的 name 字段;path=从根到当前项的 name 路径数组(不含当前项)"
45
+ },
46
+ "value": {
47
+ "type": "TPopMenuValue",
48
+ "description": "当前选中的菜单路径数组(受控);**TPopMenuValue = string[]**;每个元素是对应层级的 name 值"
49
+ },
50
+ "children": {
51
+ "type": "ReactNode",
52
+ "description": "触发浮层的目标节点(包裹在内层 div 里,ref 由 PopMenu 内部管理,可传任意 ReactNode)"
53
+ },
54
+ "menuClassName": {
55
+ "type": "string",
56
+ "description": "菜单列表容器的自定义 className(src/PopMenu/index.tsx:28 interface 实证)"
57
+ },
58
+ "menuStyle": {
59
+ "type": "React.CSSProperties",
60
+ "description": "菜单列表容器的自定义样式"
61
+ },
62
+ "contentClassName": {
63
+ "type": "string",
64
+ "description": "触发节点外层 div 的自定义 className"
65
+ },
66
+ "contentStyle": {
67
+ "type": "React.CSSProperties",
68
+ "description": "触发节点外层 div 的自定义样式"
69
+ }
70
+ },
71
+ "do": [
72
+ "收纳低频操作——标准场景传 data 数组,每项必须有 name 字段(唯一 key)",
73
+ "Label 简短清晰,子菜单层级不超过 2 层",
74
+ "危险操作通过 PopMenuListItemProps.disabled + disabledTip 做防误操作提示",
75
+ "需要自定义菜单项(如带图标/颜色)时用 render 函数,形参 handle.closeMenu() 可手动关闭浮层"
76
+ ],
77
+ "dont": [
78
+ "Dropdown 层级过深 (>2)——嵌套层级过多用户迷失,超过 2 层改用 Modal 表单",
79
+ "Dropdown 内放置过度复杂的表单",
80
+ "用数组下标作为 name——name 用于选中值追踪,必须全局唯一字符串"
81
+ ],
82
+ "events": {
83
+ "onClick": {
84
+ "signature": "(name: string, item?: PopMenuListItemProps, path?: string[]) => void",
85
+ "asyncSupported": false,
86
+ "examples": [
87
+ "基本点击:onClick={(name, item) => { handleAction(name); }}",
88
+ "获取完整路径:onClick={(name, item, path) => { console.log([...path, name]); }} // path 是父级 name 数组,不含当前",
89
+ "自定义渲染中关闭浮层:render={(handle) => <div onClick={() => { doAction(); handle.closeMenu(); }}>自定义项</div>}"
90
+ ],
91
+ "commonMistakes": [
92
+ "期望 onClick 在父节点(有 children 的项)点击时触发——有子菜单的节点展开子菜单,不触发 onClick;只有叶子节点触发",
93
+ "用 item.name 做显示文案——显示文案是 item.title;item.name 是唯一 key",
94
+ "假设 path 包含当前节点——path 只包含父级路径,不含当前点击项;完整路径是 [...path, name]"
95
+ ]
96
+ },
97
+ "onChange": {
98
+ "signature": "(value: TPopMenuValue) => void",
99
+ "asyncSupported": false,
100
+ "examples": [
101
+ "受控选中:onChange={(val) => setValue(val)}",
102
+ "value 是 string[],如 ['group1', 'item2'] 表示选中了 group1 下的 item2"
103
+ ],
104
+ "commonMistakes": [
105
+ "假设 value 是单个字符串——TPopMenuValue = string[],即使只有一级也是数组",
106
+ "onClick 和 onChange 重复处理同一逻辑——onClick 含 name+item+path 更精细;onChange 只有路径数组"
107
+ ]
108
+ }
109
+ },
110
+ "typescriptPitfalls": [
111
+ {
112
+ "issue": "data 中每个 item 的 name 字段必填(string),缺少会导致选中态追踪失效",
113
+ "wrong": "data={[{ title: '编辑' }, { title: '删除' }]} // 缺少 name 字段,TS 报错",
114
+ "right": "data={[{ name: 'edit', title: '编辑' }, { name: 'delete', title: '删除' }]}"
115
+ },
116
+ {
117
+ "issue": "TPopMenuValue 是 string[],value 和 onChange 的类型都是数组,不是单个字符串",
118
+ "wrong": "value='edit' onChange={(val: string) => setValue(val)} // 类型不匹配",
119
+ "right": "value={['edit']} onChange={(val: string[]) => setValue(val)}"
120
+ },
121
+ {
122
+ "issue": "PopMenuListItemProps.render 的形参是 IPopMenuHandler 对象,不是 React event",
123
+ "wrong": "render={(e) => <div onClick={() => e.preventDefault()}>...</div>} // e 不是事件",
124
+ "right": "render={(handle) => <div onClick={() => { doAction(); handle.closeMenu(); }}>...</div>} // handle.closeMenu() 关闭浮层"
125
+ }
126
+ ],
127
+ "mapping": {
128
+ "realComponent": "PopMenu",
129
+ "adapter": null
130
+ }
131
+ }
@@ -1,5 +1,5 @@
1
1
  import { default as React } from 'react';
2
- export declare const useComponentWidth: (efts: any[]) => {
2
+ export declare const useComponentWidth: (efts: React.DependencyList) => {
3
3
  width: number;
4
4
  ref: React.RefObject<HTMLDivElement>;
5
5
  };
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const n=require("../_virtual/jsx-runtime.js"),r=require("clsx"),S=require("react"),m=require("../GlobalContext/constant.js"),I=require("../Popover/index.js"),d=require("./context.js"),$=require("./hooks.js");;/* empty css */const k=require("./list.js"),l=u=>{const{overlayClassName:x,data:h,children:i,menuClassName:f,menuStyle:v,contentClassName:j,contentStyle:y,value:C,onChange:g,onClick:P,path:R,...e}=u,{width:q,ref:M}=$.useComponentWidth([i]),c=S.useRef(),{handle:a,menuIndex:E}=d.usePopMenuContext(),N=()=>{const o=[],s={list:[]};return h.forEach(t=>{typeof t=="object"&&t!==null&&"list"in t?o.push(t):s.list.push(t)}),s.list?.length&&o.push(s),n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:o.map((t,p)=>n.jsxRuntimeExports.jsx(k.default,{direction:e.direction,list:t.list,className:r(f,{"pop-menu-separator":p!==o.length-1}),style:v},p))})},b=()=>e.placement?e.placement:e.direction==="right"?"bottomLeft":"bottomRight";return n.jsxRuntimeExports.jsx(d.PopMenuProvider,{value:{menuIndex:E+1,path:R||[],direction:e.direction||"left",props:u,value:C||[],onChange:g||(()=>{}),onClick:P||(()=>{}),handle:{closeMenu:()=>{typeof e?.visible>"u"&&(c?.current?.close(),a&&a?.closeMenu?.())}}},children:n.jsxRuntimeExports.jsx(I.Popover,{...e,isPopover:!0,ref:c,overlayClassName:r(`${m.$prefixCls}-pop-menu`,x),overlayInnerStyle:{minWidth:q,...e.overlayInnerStyle},content:N(),placement:b(),children:n.jsxRuntimeExports.jsx("div",{ref:M,className:r(`${m.$prefixCls}-pop-menu-content`,j),style:y,children:i})})})};l.displayName="PopMenu";exports.PopMenu=l;exports.default=l;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const n=require("../_virtual/jsx-runtime.js"),r=require("clsx"),S=require("react"),m=require("../GlobalContext/constant.js"),I=require("../Popover/index.js"),d=require("./context.js"),$=require("./hooks.js");;/* empty css */const k=require("./list.js"),l=u=>{const{overlayClassName:x,data:h,children:i,menuClassName:f,menuStyle:v,contentClassName:j,contentStyle:y,value:C,onChange:g,onClick:P,path:R,...e}=u,{width:q,ref:M}=$.useComponentWidth([i]),c=S.useRef(null),{handle:a,menuIndex:E}=d.usePopMenuContext(),N=()=>{const o=[],s={list:[]};return h.forEach(t=>{typeof t=="object"&&t!==null&&"list"in t?o.push(t):s.list.push(t)}),s.list?.length&&o.push(s),n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:o.map((t,p)=>n.jsxRuntimeExports.jsx(k.default,{direction:e.direction,list:t.list,className:r(f,{"pop-menu-separator":p!==o.length-1}),style:v},p))})},b=()=>e.placement?e.placement:e.direction==="right"?"bottomLeft":"bottomRight";return n.jsxRuntimeExports.jsx(d.PopMenuProvider,{value:{menuIndex:E+1,path:R||[],direction:e.direction||"left",props:u,value:C||[],onChange:g||(()=>{}),onClick:P||(()=>{}),handle:{closeMenu:()=>{typeof e?.visible>"u"&&(c?.current?.close(),a&&a?.closeMenu?.())}}},children:n.jsxRuntimeExports.jsx(I.Popover,{...e,isPopover:!0,ref:c,overlayClassName:r(`${m.$prefixCls}-pop-menu`,x),overlayInnerStyle:{minWidth:q,...e.overlayInnerStyle},content:N(),placement:b(),children:n.jsxRuntimeExports.jsx("div",{ref:M,className:r(`${m.$prefixCls}-pop-menu-content`,j),style:y,children:i})})})};l.displayName="PopMenu";exports.PopMenu=l;exports.default=l;
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,165 @@
1
+ {
2
+ "name": "Popover",
3
+ "category": "Data Display",
4
+ "description": "点击/鼠标移入元素,弹出气泡式的卡片浮层,支持标题+内容的富内容承载",
5
+ "semantic": {
6
+ "intent": [
7
+ "展示详情",
8
+ "复杂操作",
9
+ "承载内容"
10
+ ],
11
+ "useCases": [
12
+ "用户信息卡片",
13
+ "复杂筛选配置",
14
+ "帮助文档预览"
15
+ ],
16
+ "riskLevel": "normal"
17
+ },
18
+ "variants": {
19
+ "default": {
20
+ "meaning": "默认样式"
21
+ }
22
+ },
23
+ "states": [
24
+ "visible",
25
+ "hidden"
26
+ ],
27
+ "idealProps": {
28
+ "content": {
29
+ "type": "ReactNode",
30
+ "description": "卡片内容主体"
31
+ },
32
+ "title": {
33
+ "type": "string | ReactNode",
34
+ "description": "卡片标题。**不传时浮层不渲染标题区**(无空白占位);如需仅展示 content,省略 title 即可"
35
+ },
36
+ "children": {
37
+ "type": "ReactElement",
38
+ "description": "**触发浮层的目标节点**——必须是『单一可接收 ref 的 React 元素』(rc-tooltip 内部约束,需挂 ref 监听事件)。传 string / Fragment / 多个并列节点会导致 ref 挂载失败、触发不生效。当业务方接到 ReactNode 类型的 trigger 节点(可能是字符串 / Fragment / 数组)时,外层包一层 `<span style={{ display: 'inline-block' }}>` 兜底"
39
+ },
40
+ "placement": {
41
+ "type": "enum",
42
+ "values": [
43
+ "top",
44
+ "left",
45
+ "right",
46
+ "bottom",
47
+ "topLeft",
48
+ "topRight",
49
+ "bottomLeft",
50
+ "bottomRight",
51
+ "leftTop",
52
+ "leftBottom",
53
+ "rightTop",
54
+ "rightBottom"
55
+ ],
56
+ "default": "bottom",
57
+ "description": "弹出位置(src/Popover/index.tsx:65 实证默认 `bottom`,非 `top`)"
58
+ },
59
+ "trigger": {
60
+ "type": "enum",
61
+ "values": [
62
+ "hover",
63
+ "focus",
64
+ "click",
65
+ "contextMenu"
66
+ ],
67
+ "default": "click",
68
+ "description": "触发行为。`contextMenu` 时由内部 rc-tooltip 自动 preventDefault 浏览器原生右键菜单。**仅支持单值,不支持数组形式**——多种触发需用受控模式(visible + onVisibleChange + 业务方自行监听多种事件)"
69
+ },
70
+ "visible": {
71
+ "type": "boolean",
72
+ "default": false,
73
+ "description": "**控制显示(受控,src 真实主名)**——Popover 继承 TooltipProps,src/Tooltip/index.tsx:25 取 `visible ?? open`,visible 优先。新代码任选其一;不要同时传。**受控语义**:传 visible 后 Popover 完全受控,用户的 click / hover / contextMenu 不会自动切换内部 state,仅触发 onVisibleChange 让父组件决定是否改 visible(请求改变 vs 直接改变)"
74
+ },
75
+ "open": {
76
+ "type": "boolean",
77
+ "default": false,
78
+ "description": "`visible` 的别名(antd 风格)"
79
+ },
80
+ "onVisibleChange": {
81
+ "type": "function",
82
+ "signature": "(visible: boolean) => void",
83
+ "description": "**显示隐藏回调(src 真实事件名是 onVisibleChange,不是 onOpenChange)**。受控时仍会被调用——表示父组件应改变 visible;非受控时由 Popover 内部 state 切换并同时回调"
84
+ },
85
+ "arrow": {
86
+ "type": "boolean",
87
+ "default": false,
88
+ "description": "是否显示箭头(src/Popover/index.tsx:69 实证默认 `false`,非 `true`)"
89
+ },
90
+ "getPopupContainer": {
91
+ "type": "function",
92
+ "signature": "(triggerNode: HTMLElement) => HTMLElement",
93
+ "description": "指定弹层的挂载容器(src/Tooltip/interface.tsx:41 实证,Popover 继承 TooltipProps)。默认挂载到 body;传入函数返回目标 DOM 节点可实现局部定位(如 Modal 内的 Popover 挂载到 Modal 容器,避免层叠问题)。**函数在浮层首次展示时调用**,须确保此时目标 DOM 已挂载"
94
+ },
95
+ "mouseEnterDelay": {
96
+ "type": "number",
97
+ "default": 0.1,
98
+ "description": "鼠标移入后弹出延迟(单位:秒,src/Popover/index.tsx:67 defaultProps 实证默认 0.1)。`trigger='hover'` 时生效;设为 0 则立即弹出"
99
+ },
100
+ "mouseLeaveDelay": {
101
+ "type": "number",
102
+ "default": 0.1,
103
+ "description": "鼠标移出后消失延迟(单位:秒,src/Popover/index.tsx:68 defaultProps 实证默认 0.1)。`trigger='hover'` 时生效;用于防止鼠标从 trigger 移至浮层时浮层闪烁消失"
104
+ },
105
+ "defaultVisible": {
106
+ "type": "boolean",
107
+ "default": false,
108
+ "description": "⚠️ **非受控初始可见性**(rc-tooltip prop,src/Popover/index.tsx:193 defaultProps 实证默认 false)。与 `visible`/`open` 互斥——传 `visible` 后为受控模式,`defaultVisible` 失效。**仅控制首次渲染时的初始展开状态**,之后由 trigger 事件驱动内部 state,父组件无需管理"
109
+ }
110
+ },
111
+ "do": [
112
+ "当内容较多或包含交互(如按钮、链接)时使用 Popover",
113
+ "提供清晰的关闭方式(如果不是 hover 触发)",
114
+ "**children 必须是单一可接收 ref 的 React 元素**:`<Button>` / `<span>` / 自定义 forwardRef 组件均可;传业务接到的 ReactNode 时外层包 `<span style={{display:'inline-block'}}>` 兜底",
115
+ "**省略 title 不渲染标题区**(无空白占位);只展示 content 时直接不传 title 即可(覆盖『无标题快速详情』场景)",
116
+ "**右键菜单场景**:`trigger='contextMenu'`,内部自动 preventDefault;可配合 `visible + onVisibleChange` 实现『点击菜单项后关闭浮层』",
117
+ "**外部按钮控制显隐**:用 `visible + onVisibleChange` 受控;trigger prop 决定 onVisibleChange 被调用的时机(hover/click/contextMenu)",
118
+ "**纯受控 + 任意 trigger 时父组件应忽略 onVisibleChange 请求**(DEFECT-001):trigger 缺 'none' / 'manual' 选项,纯受控场景下用户点击/悬停/右键仍触发 onVisibleChange — 父组件直接保留 visible state 不响应即可,不要主动反向 setState;不需要交互时通过 unmount 完全屏蔽"
119
+ ],
120
+ "dont": [
121
+ "仅用于展示简单文本(应使用 Tooltip)",
122
+ "弹出层级过深或遮挡关键信息",
123
+ "**不要给 children 传字符串 / Fragment / 数组**——rc-tooltip 内部约束需挂 ref 监听事件,非元素 children 会让触发失效;如必须传 ReactNode,外层包 inline-block span",
124
+ "**不要传 `onOpenChange`**——src 真实事件名是 `onVisibleChange`,传 onOpenChange 不会触发任何回调",
125
+ "**不要给 trigger 传数组**(如 `['click', 'contextMenu']`)——src 类型仅单值字符串联合;多种触发用受控模式自行监听",
126
+ "不要假设传 visible 后 trigger 仍会切换内部 state——受控模式下 trigger 仅决定 onVisibleChange 被调用的时机,由父组件决定是否真改 visible"
127
+ ],
128
+ "events": {
129
+ "onVisibleChange": {
130
+ "signature": "(visible: boolean) => void",
131
+ "asyncSupported": false,
132
+ "examples": [
133
+ "非受控监听:onVisibleChange={(v) => console.log('浮层', v ? '展开' : '收起')}",
134
+ "受控开关:visible={open} onVisibleChange={(v) => setOpen(v)}",
135
+ "点击浮层内关闭按钮后同步状态:onVisibleChange={(v) => { if (!v) setOpen(false); }}"
136
+ ],
137
+ "commonMistakes": [
138
+ "事件名写成 onOpenChange——Popover 的事件名是 onVisibleChange,onOpenChange 不会触发",
139
+ "受控时在 onVisibleChange 里 setState(false) 来关闭——可行,但若 trigger='click' 则点击外部也会触发关闭,需确保 state 正确响应",
140
+ "同时传 visible 和 open——visible 优先,二者同时传会造成混乱,任选其一"
141
+ ]
142
+ }
143
+ },
144
+ "typescriptPitfalls": [
145
+ {
146
+ "issue": "trigger 不支持数组,只支持单字符串联合类型",
147
+ "wrong": "trigger={['click', 'hover']} // TS 类型报错,src 仅支持单值",
148
+ "right": "trigger='click' // 单一触发;需多种触发时用 visible + onVisibleChange 受控模式"
149
+ },
150
+ {
151
+ "issue": "onVisibleChange 事件名——src 真实字段名,不是 antd v5 的 onOpenChange",
152
+ "wrong": "onOpenChange={(v) => setOpen(v)} // 不会触发,TS 可能不报错(spread 透传),但无效果",
153
+ "right": "onVisibleChange={(v) => setOpen(v)}"
154
+ },
155
+ {
156
+ "issue": "children 须是单一 ReactElement,传 string 或 Fragment 导致触发失效且无 TS 报错",
157
+ "wrong": "// TS 接受 ReactNode,但 rc-tooltip 运行时挂 ref 失败:\n<Popover content={...}>{someStringOrFragment}</Popover>",
158
+ "right": "<Popover content={...}><span style={{ display: 'inline-block' }}>{someStringOrFragment}</span></Popover>"
159
+ }
160
+ ],
161
+ "mapping": {
162
+ "realComponent": "Popover",
163
+ "adapter": null
164
+ }
165
+ }
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const t=require("../_virtual/jsx-runtime.js"),i=require("react"),f=require("../Tooltip/index.js"),u=require("../GlobalContext/constant.js"),v=require("../GlobalContext/usePopupContainer.js"),d=require("clsx");;/* empty css */const o=i.forwardRef((s,r)=>{const{title:n,content:l,...p}=s,e=i.useRef(),x=v.default(e,s.getPopupContainer);i.useEffect(()=>{r&&(typeof r=="function"?r(e.current):r.current=e.current)},[e.current]);const m=c=>!n&&!l?null:t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[n&&t.jsxRuntimeExports.jsx("div",{className:`${c}-title`,children:n}),t.jsxRuntimeExports.jsx("div",{className:`${c}-inner-content`,children:l})]}),a=`${u.$rcPrefixCls}-popover`;return t.jsxRuntimeExports.jsx(f.Tooltip,{...p,isPopover:!0,prefixCls:a,overlayClassName:d(`${u.$prefixCls}-popover`,s.overlayClassName),ref:e,title:m(a),transitionName:`${u.$rcPrefixCls}-popover-zoom-big`,getPopupContainer:x})});o.displayName="Popover";o.defaultProps={placement:"bottom",trigger:"click",mouseEnterDelay:.1,mouseLeaveDelay:.1,arrow:!1};exports.Popover=o;exports.default=o;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const t=require("../_virtual/jsx-runtime.js"),i=require("react"),f=require("../Tooltip/index.js"),u=require("../GlobalContext/constant.js"),v=require("../GlobalContext/usePopupContainer.js"),d=require("clsx");;/* empty css */const o=i.forwardRef((s,r)=>{const{title:n,content:l,...p}=s,e=i.useRef(null),x=v.default(e,s.getPopupContainer);i.useEffect(()=>{r&&(typeof r=="function"?r(e.current):r.current=e.current)},[e.current]);const m=c=>!n&&!l?null:t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[n&&t.jsxRuntimeExports.jsx("div",{className:`${c}-title`,children:n}),t.jsxRuntimeExports.jsx("div",{className:`${c}-inner-content`,children:l})]}),a=`${u.$rcPrefixCls}-popover`;return t.jsxRuntimeExports.jsx(f.Tooltip,{...p,isPopover:!0,prefixCls:a,overlayClassName:d(`${u.$prefixCls}-popover`,s.overlayClassName),ref:e,title:m(a),transitionName:`${u.$rcPrefixCls}-popover-zoom-big`,getPopupContainer:x})});o.displayName="Popover";o.defaultProps={placement:"bottom",trigger:"click",mouseEnterDelay:.1,mouseLeaveDelay:.1,arrow:!1};exports.Popover=o;exports.default=o;
2
2
  //# sourceMappingURL=index.js.map