@para-ui/core 5.0.0-beta.11 → 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 (650) 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 +52 -49
  111. package/es/Anchor/type.d.ts +8 -4
  112. package/es/Argv/component.json +216 -0
  113. package/es/Argv/dataGenerator/index.js +1 -1
  114. package/es/Argv/index.d.ts +5 -6
  115. package/es/Argv/index.js +1 -1
  116. package/es/AutoBox/component.json +133 -0
  117. package/es/AutoBox/index.d.ts +3 -3
  118. package/es/AutoBox/index.js +1 -1
  119. package/es/AutoBox/protal.d.ts +2 -2
  120. package/es/AutoBox/protal.js +33 -30
  121. package/es/AutoButton/component.json +109 -0
  122. package/es/AutoButton/index.js +1 -1
  123. package/es/AutoTips/autoTipsMultiline/index.d.ts +1 -1
  124. package/es/AutoTips/autoTipsMultiline/index.js +1 -1
  125. package/es/AutoTips/component.json +121 -0
  126. package/es/AutoTips/index.js +1 -1
  127. package/es/Badge/component.json +92 -0
  128. package/es/Breadcrumbs/component.json +142 -0
  129. package/es/Breadcrumbs/index.js +1 -1
  130. package/es/Button/SplitButton.d.ts +2 -2
  131. package/es/Button/component.json +168 -0
  132. package/es/Button/index.js +44 -44
  133. package/es/ButtonGroup/component.json +132 -0
  134. package/es/ButtonGroup/index.d.ts +1 -1
  135. package/es/Card/component.json +162 -0
  136. package/es/Card/index.d.ts +2 -2
  137. package/es/Card/index.js +2 -2
  138. package/es/Carousel/component.json +142 -0
  139. package/es/Carousel/index.d.ts +1 -1
  140. package/es/Cascader/Cascader.js +1 -1
  141. package/es/Cascader/OptionList/Column.js +1 -1
  142. package/es/Cascader/OptionList/index.js +1 -1
  143. package/es/Cascader/component.json +196 -0
  144. package/es/Cascader/hooks/useEntities.js +7 -7
  145. package/es/Cascader/interface.d.ts +1 -0
  146. package/es/Cascader/utils/commonUtil.d.ts +1 -1
  147. package/es/Cascader/utils/commonUtil.js +16 -16
  148. package/es/Cascader/utils/treeUtil.d.ts +14 -5
  149. package/es/Cascader/utils/treeUtil.js +1 -1
  150. package/es/Checkbox/component.json +138 -0
  151. package/es/CheckboxGroup/component.json +152 -0
  152. package/es/CheckboxGroup/index.js +1 -1
  153. package/es/CodeEditor/component.json +189 -0
  154. package/es/CodeEditor/index.d.ts +11 -10
  155. package/es/CodeEditor/index.js +19 -19
  156. package/es/Collapse/component.json +166 -0
  157. package/es/Collapse/index.d.ts +1 -1
  158. package/es/Collapse/index.js +23 -22
  159. package/es/CollapseBox/component.json +84 -0
  160. package/es/CollapseLayout/component.json +155 -0
  161. package/es/ColorPicker/component.json +142 -0
  162. package/es/ComboSelect/component.json +181 -0
  163. package/es/ComboSelect/index.js +115 -109
  164. package/es/ComboSelect/interface.d.ts +2 -2
  165. package/es/ComboSelect/utils.d.ts +3 -3
  166. package/es/ComboSelect/utils.js +1 -1
  167. package/es/Container/component.json +111 -0
  168. package/es/ContentBox/component.json +81 -0
  169. package/es/CopyText/component.json +118 -0
  170. package/es/CycleSelector/component.json +98 -0
  171. package/es/CycleSelector/index.js +14 -13
  172. package/es/DatePicker/component.json +192 -0
  173. package/es/DatePicker/generatePicker/generateRangePicker.js +11 -11
  174. package/es/DatePicker/generatePicker/generateSinglePicker.js +2 -2
  175. package/es/Descriptions/component.json +142 -0
  176. package/es/Descriptions/index.d.ts +1 -1
  177. package/es/Desktop/component.json +171 -0
  178. package/es/Desktop/index.js +1 -1
  179. package/es/DragVerify/component.json +114 -0
  180. package/es/DragVerify/index.js +19 -19
  181. package/es/Drawer/component.json +200 -0
  182. package/es/Drawer/index.js +86 -86
  183. package/es/Drawer/interface.d.ts +1 -1
  184. package/es/Drawer/util.d.ts +1 -6
  185. package/es/Drawer/util.js +9 -6
  186. package/es/Dropdown/component.json +147 -0
  187. package/es/Dropdown/index.js +1 -1
  188. package/es/DynamicMultiBox/component.json +278 -0
  189. package/es/DynamicMultiBox/formItem.d.ts +1 -1
  190. package/es/DynamicMultiBox/index.js +1 -1
  191. package/es/DynamicMultiBox/rowForm.d.ts +2 -2
  192. package/es/Empty/component.json +123 -0
  193. package/es/Empty/index.css +1 -1
  194. package/es/Empty/index.d.ts +2 -2
  195. package/es/Empty/index.js +27 -26
  196. package/es/Empty/style/index.css +1 -1
  197. package/es/FieldForm/FieldFormItem/ItemHolder.js +1 -1
  198. package/es/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
  199. package/es/FieldForm/FieldFormItem/StatusProvider.js +1 -1
  200. package/es/FieldForm/FieldFormItem/index.d.ts +6 -6
  201. package/es/FieldForm/Form.d.ts +2 -2
  202. package/es/FieldForm/Form.js +1 -1
  203. package/es/FieldForm/FormItemInput.js +1 -1
  204. package/es/FieldForm/FormItemLabel.js +1 -1
  205. package/es/FieldForm/FormList.d.ts +2 -2
  206. package/es/FieldForm/component.json +196 -0
  207. package/es/FieldForm/context.d.ts +5 -1
  208. package/es/FieldForm/context.js +2 -2
  209. package/es/FieldForm/hooks/useForm.d.ts +4 -3
  210. package/es/FieldForm/hooks/useFormInstance.d.ts +1 -1
  211. package/es/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
  212. package/es/FieldForm/hooks/useFormItemStatus.js +2 -2
  213. package/es/FieldForm/hooks/useItemRef.d.ts +1 -1
  214. package/es/FieldForm/hooks/useItemRef.js +6 -6
  215. package/es/Form/component.json +161 -0
  216. package/es/Form/index.d.ts +52 -49
  217. package/es/Form/index.js +1 -1
  218. package/es/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
  219. package/es/FormItem/compoments/defaultCompoments/index.js +12 -11
  220. package/es/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
  221. package/es/FormItem/compoments/formFile/index.js +8 -8
  222. package/es/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
  223. package/es/FormItem/compoments/formSelect/index.d.ts +1 -1
  224. package/es/FormItem/component.json +171 -0
  225. package/es/FormItem/index.d.ts +5 -5
  226. package/es/FormItem/index.js +23 -23
  227. package/es/FormItem/itemType.js +1 -1
  228. package/es/FunctionModal/component.json +197 -0
  229. package/es/FunctionModal/dialog.d.ts +1 -1
  230. package/es/FunctionModal/modalContext.d.ts +4 -1
  231. package/es/GlobalContext/confirmLocale.js +1 -1
  232. package/es/GlobalContext/index.js +1 -1
  233. package/es/Help/component.json +118 -0
  234. package/es/HelperText/component.json +126 -0
  235. package/es/Image/PreviewGroup.js +1 -1
  236. package/es/Image/component.json +165 -0
  237. package/es/Image/index.js +1 -1
  238. package/es/InputCode/component.json +191 -0
  239. package/es/InputCode/index.d.ts +2 -2
  240. package/es/InputLang/component.json +205 -0
  241. package/es/InputLang/index.js +2 -2
  242. package/es/InputNumber/component.json +162 -0
  243. package/es/Label/component.json +126 -0
  244. package/es/Label/index.d.ts +2 -2
  245. package/es/Loading/component.json +91 -0
  246. package/es/Menu/component.json +180 -0
  247. package/es/Menu/verticalMenuList.js +1 -1
  248. package/es/Message/component.json +246 -0
  249. package/es/Message/index.d.ts +2 -2
  250. package/es/Message/index.js +2 -2
  251. package/es/Modal/Confirm/index.d.ts +1 -1
  252. package/es/Modal/Confirm/index.js +1 -1
  253. package/es/Modal/component.json +277 -0
  254. package/es/Modal/index.d.ts +85 -5
  255. package/es/Modal/index.js +159 -122
  256. package/es/Modal/interface.d.ts +1 -0
  257. package/es/MultiBox/component.json +216 -0
  258. package/es/MultiBox/index.js +19 -14
  259. package/es/Notification/component.json +184 -0
  260. package/es/OperateBtn/component.json +134 -0
  261. package/es/OperateBtn/index.d.ts +3 -3
  262. package/es/PageHeader/component.json +112 -0
  263. package/es/PageHeader/horizontalMeun.js +1 -1
  264. package/es/PageHeader/horizontalMeunRight.js +1 -1
  265. package/es/Pagination/component.json +181 -0
  266. package/es/Pagination/index.js +15 -15
  267. package/es/ParauiProvider/index.js +1 -1
  268. package/es/PasswordRules/component.json +105 -0
  269. package/es/PasswordRules/index.d.ts +4 -4
  270. package/es/PopConfirm/component.json +227 -0
  271. package/es/PopConfirm/index.d.ts +1 -1
  272. package/es/PopConfirm/index.js +1 -1
  273. package/es/PopMenu/component.json +131 -0
  274. package/es/PopMenu/hooks.d.ts +1 -1
  275. package/es/PopMenu/index.js +8 -8
  276. package/es/Popover/component.json +165 -0
  277. package/es/Popover/index.js +1 -1
  278. package/es/Progress/component.json +161 -0
  279. package/es/Prompt/component.json +144 -0
  280. package/es/Querying/component.json +96 -0
  281. package/es/Querying/index.css +1 -1
  282. package/es/Querying/index.d.ts +2 -2
  283. package/es/Querying/index.js +20 -19
  284. package/es/Querying/style/index.css +1 -1
  285. package/es/QuickReply/QuickReplyCode/index.js +1 -1
  286. package/es/QuickReply/component.json +129 -0
  287. package/es/QuickReply/index.d.ts +1 -1
  288. package/es/Radio/component.json +136 -0
  289. package/es/RadioGroup/component.json +149 -0
  290. package/es/RangeInput/component.json +198 -0
  291. package/es/RangeInput/index.js +20 -20
  292. package/es/Result/component.json +104 -0
  293. package/es/ScrollBar/component.json +115 -0
  294. package/es/Search/component.json +177 -0
  295. package/es/Search/index.d.ts +1 -1
  296. package/es/Select/component.json +244 -0
  297. package/es/Select/index.js +114 -114
  298. package/es/SelectInput/component.json +184 -0
  299. package/es/Selector/component.json +203 -0
  300. package/es/Selector/index.js +56 -50
  301. package/es/Selector/interface.d.ts +2 -2
  302. package/es/Selector/selectorData/index.js +1 -1
  303. package/es/Selector/selectorMain/index.js +3 -3
  304. package/es/Selector/selectorNode/index.js +1 -1
  305. package/es/Selector/util.d.ts +3 -3
  306. package/es/Selector/util.js +6 -12
  307. package/es/SelectorPicker/component.json +179 -0
  308. package/es/SelectorPicker/index.d.ts +5 -5
  309. package/es/SelectorPicker/index.js +15 -15
  310. package/es/SingleBox/component.json +151 -0
  311. package/es/SingleBox/index.d.ts +2 -2
  312. package/es/Slider/component.json +181 -0
  313. package/es/SortBox/component.json +108 -0
  314. package/es/Status/component.json +104 -0
  315. package/es/Stepper/component.json +129 -0
  316. package/es/Stepper/index.d.ts +2 -2
  317. package/es/Switch/component.json +207 -0
  318. package/es/Switch/index.css +1 -1
  319. package/es/Switch/index.d.ts +3 -2
  320. package/es/Switch/index.js +60 -59
  321. package/es/Switch/style/index.css +1 -1
  322. package/es/Table/component.json +547 -0
  323. package/es/Table/index.d.ts +2 -2
  324. package/es/Table/index.js +385 -382
  325. package/es/Table/interface.d.ts +30 -0
  326. package/es/Table/tableHead.js +1 -1
  327. package/es/Table/util.d.ts +1 -1
  328. package/es/Table/util.js +3 -12
  329. package/es/Tabs/component.json +227 -0
  330. package/es/Tag/component.json +221 -0
  331. package/es/Tag/index.css +1 -1
  332. package/es/Tag/index.d.ts +1 -1
  333. package/es/Tag/index.js +20 -20
  334. package/es/Tag/style/index.css +1 -1
  335. package/es/TextEditor/component.json +186 -0
  336. package/es/TextEditor/index.d.ts +5 -5
  337. package/es/TextEditor/index.js +1 -1
  338. package/es/TextField/component.json +290 -0
  339. package/es/TextField/index.d.ts +2 -2
  340. package/es/TextField/index.js +1 -1
  341. package/es/TimePicker/component.json +176 -0
  342. package/es/Timeline/component.json +110 -0
  343. package/es/Title/component.json +156 -0
  344. package/es/ToggleButton/component.json +153 -0
  345. package/es/ToggleButton/index.js +1 -1
  346. package/es/Tooltip/component.json +176 -0
  347. package/es/Tooltip/index.js +58 -53
  348. package/es/Tooltip/interface.d.ts +14 -1
  349. package/es/Tooltip/utils.js +6 -6
  350. package/es/Transfer/component.json +157 -0
  351. package/es/Tree/OperateBar/index.js +1 -1
  352. package/es/Tree/Tree.js +3 -3
  353. package/es/Tree/component.json +512 -0
  354. package/es/Tree/interface.d.ts +1 -1
  355. package/es/Upload/component.json +450 -0
  356. package/es/Upload/util.js +1 -1
  357. package/es/Utils/snack-kit-shims.d.ts +18 -0
  358. package/es/Utils/snack-kit-shims.js +19 -0
  359. package/es/Utils/type.d.ts +0 -2
  360. package/es/_virtual/index.js +5 -3
  361. package/es/_virtual/index2.js +2 -5
  362. package/es/index.d.ts +2 -0
  363. package/es/index.js +1 -1
  364. package/es/locale/en_US.d.ts +361 -0
  365. package/es/locale/en_US.js +364 -0
  366. package/es/locale/index.d.ts +1 -723
  367. package/es/locale/index2.js +10 -0
  368. package/es/locale/zh_CN.d.ts +361 -0
  369. package/es/locale/zh_CN.js +364 -0
  370. package/es/node_modules/classnames/index.js +1 -1
  371. package/lib/AlignBox/component.json +89 -0
  372. package/lib/AlignBox/index.css +1 -1
  373. package/lib/AlignBox/index.d.ts +6 -2
  374. package/lib/AlignBox/index.js +1 -1
  375. package/lib/AlignBox/style/index.css +1 -1
  376. package/lib/Anchor/anchorMenu/index.d.ts +2 -1
  377. package/lib/Anchor/anchorMenu/index.js +1 -1
  378. package/lib/Anchor/component.json +130 -0
  379. package/lib/Anchor/index.js +1 -1
  380. package/lib/Anchor/type.d.ts +8 -4
  381. package/lib/Argv/component.json +216 -0
  382. package/lib/Argv/dataGenerator/index.js +1 -1
  383. package/lib/Argv/index.d.ts +5 -6
  384. package/lib/Argv/index.js +1 -1
  385. package/lib/AutoBox/component.json +133 -0
  386. package/lib/AutoBox/index.d.ts +3 -3
  387. package/lib/AutoBox/index.js +1 -1
  388. package/lib/AutoBox/protal.d.ts +2 -2
  389. package/lib/AutoBox/protal.js +1 -1
  390. package/lib/AutoButton/component.json +109 -0
  391. package/lib/AutoButton/index.js +1 -1
  392. package/lib/AutoTips/autoTipsMultiline/index.d.ts +1 -1
  393. package/lib/AutoTips/autoTipsMultiline/index.js +1 -1
  394. package/lib/AutoTips/component.json +121 -0
  395. package/lib/AutoTips/index.js +1 -1
  396. package/lib/Badge/component.json +92 -0
  397. package/lib/Breadcrumbs/component.json +142 -0
  398. package/lib/Breadcrumbs/index.js +1 -1
  399. package/lib/Button/SplitButton.d.ts +2 -2
  400. package/lib/Button/component.json +168 -0
  401. package/lib/Button/index.js +1 -1
  402. package/lib/ButtonGroup/component.json +132 -0
  403. package/lib/ButtonGroup/index.d.ts +1 -1
  404. package/lib/Card/component.json +162 -0
  405. package/lib/Card/index.d.ts +2 -2
  406. package/lib/Card/index.js +1 -1
  407. package/lib/Carousel/component.json +142 -0
  408. package/lib/Carousel/index.d.ts +1 -1
  409. package/lib/Cascader/Cascader.js +1 -1
  410. package/lib/Cascader/OptionList/Column.js +1 -1
  411. package/lib/Cascader/OptionList/index.js +1 -1
  412. package/lib/Cascader/component.json +196 -0
  413. package/lib/Cascader/hooks/useEntities.js +1 -1
  414. package/lib/Cascader/interface.d.ts +1 -0
  415. package/lib/Cascader/utils/commonUtil.d.ts +1 -1
  416. package/lib/Cascader/utils/commonUtil.js +1 -1
  417. package/lib/Cascader/utils/treeUtil.d.ts +14 -5
  418. package/lib/Cascader/utils/treeUtil.js +1 -1
  419. package/lib/Checkbox/component.json +138 -0
  420. package/lib/CheckboxGroup/component.json +152 -0
  421. package/lib/CheckboxGroup/index.js +1 -1
  422. package/lib/CodeEditor/component.json +189 -0
  423. package/lib/CodeEditor/index.d.ts +11 -10
  424. package/lib/CodeEditor/index.js +1 -1
  425. package/lib/Collapse/component.json +166 -0
  426. package/lib/Collapse/index.d.ts +1 -1
  427. package/lib/Collapse/index.js +1 -1
  428. package/lib/CollapseBox/component.json +84 -0
  429. package/lib/CollapseLayout/component.json +155 -0
  430. package/lib/ColorPicker/component.json +142 -0
  431. package/lib/ComboSelect/component.json +181 -0
  432. package/lib/ComboSelect/index.js +1 -1
  433. package/lib/ComboSelect/interface.d.ts +2 -2
  434. package/lib/ComboSelect/utils.d.ts +3 -3
  435. package/lib/ComboSelect/utils.js +1 -1
  436. package/lib/Container/component.json +111 -0
  437. package/lib/ContentBox/component.json +81 -0
  438. package/lib/CopyText/component.json +118 -0
  439. package/lib/CycleSelector/component.json +98 -0
  440. package/lib/CycleSelector/index.js +1 -1
  441. package/lib/DatePicker/component.json +192 -0
  442. package/lib/DatePicker/generatePicker/generateRangePicker.js +1 -1
  443. package/lib/DatePicker/generatePicker/generateSinglePicker.js +1 -1
  444. package/lib/Descriptions/component.json +142 -0
  445. package/lib/Descriptions/index.d.ts +1 -1
  446. package/lib/Desktop/component.json +171 -0
  447. package/lib/Desktop/index.js +1 -1
  448. package/lib/DragVerify/component.json +114 -0
  449. package/lib/DragVerify/index.js +1 -1
  450. package/lib/Drawer/component.json +200 -0
  451. package/lib/Drawer/index.js +1 -1
  452. package/lib/Drawer/interface.d.ts +1 -1
  453. package/lib/Drawer/util.d.ts +1 -6
  454. package/lib/Drawer/util.js +1 -1
  455. package/lib/Dropdown/component.json +147 -0
  456. package/lib/Dropdown/index.js +1 -1
  457. package/lib/DynamicMultiBox/component.json +278 -0
  458. package/lib/DynamicMultiBox/formItem.d.ts +1 -1
  459. package/lib/DynamicMultiBox/index.js +1 -1
  460. package/lib/DynamicMultiBox/rowForm.d.ts +2 -2
  461. package/lib/Empty/component.json +123 -0
  462. package/lib/Empty/index.css +1 -1
  463. package/lib/Empty/index.d.ts +2 -2
  464. package/lib/Empty/index.js +1 -1
  465. package/lib/Empty/style/index.css +1 -1
  466. package/lib/FieldForm/FieldFormItem/ItemHolder.js +1 -1
  467. package/lib/FieldForm/FieldFormItem/MemoInput.d.ts +2 -2
  468. package/lib/FieldForm/FieldFormItem/StatusProvider.js +1 -1
  469. package/lib/FieldForm/FieldFormItem/index.d.ts +6 -6
  470. package/lib/FieldForm/Form.d.ts +2 -2
  471. package/lib/FieldForm/Form.js +1 -1
  472. package/lib/FieldForm/FormItemInput.js +1 -1
  473. package/lib/FieldForm/FormItemLabel.js +1 -1
  474. package/lib/FieldForm/FormList.d.ts +2 -2
  475. package/lib/FieldForm/component.json +196 -0
  476. package/lib/FieldForm/context.d.ts +5 -1
  477. package/lib/FieldForm/context.js +1 -1
  478. package/lib/FieldForm/hooks/useForm.d.ts +4 -3
  479. package/lib/FieldForm/hooks/useFormInstance.d.ts +1 -1
  480. package/lib/FieldForm/hooks/useFormItemStatus.d.ts +9 -5
  481. package/lib/FieldForm/hooks/useFormItemStatus.js +1 -1
  482. package/lib/FieldForm/hooks/useItemRef.d.ts +1 -1
  483. package/lib/FieldForm/hooks/useItemRef.js +1 -1
  484. package/lib/Form/component.json +161 -0
  485. package/lib/Form/index.d.ts +52 -49
  486. package/lib/Form/index.js +1 -1
  487. package/lib/FormItem/compoments/defaultCompoments/index.d.ts +5 -5
  488. package/lib/FormItem/compoments/defaultCompoments/index.js +1 -1
  489. package/lib/FormItem/compoments/formCheckboxGroup/index.d.ts +2 -2
  490. package/lib/FormItem/compoments/formFile/index.js +1 -1
  491. package/lib/FormItem/compoments/formRadioGroup/index.d.ts +1 -1
  492. package/lib/FormItem/compoments/formSelect/index.d.ts +1 -1
  493. package/lib/FormItem/component.json +171 -0
  494. package/lib/FormItem/index.d.ts +5 -5
  495. package/lib/FormItem/index.js +1 -1
  496. package/lib/FormItem/itemType.js +1 -1
  497. package/lib/FunctionModal/component.json +197 -0
  498. package/lib/FunctionModal/dialog.d.ts +1 -1
  499. package/lib/FunctionModal/modalContext.d.ts +4 -1
  500. package/lib/GlobalContext/confirmLocale.js +1 -1
  501. package/lib/GlobalContext/index.js +1 -1
  502. package/lib/Help/component.json +118 -0
  503. package/lib/HelperText/component.json +126 -0
  504. package/lib/Image/PreviewGroup.js +1 -1
  505. package/lib/Image/component.json +165 -0
  506. package/lib/Image/index.js +1 -1
  507. package/lib/InputCode/component.json +191 -0
  508. package/lib/InputCode/index.d.ts +2 -2
  509. package/lib/InputLang/component.json +205 -0
  510. package/lib/InputLang/index.js +1 -1
  511. package/lib/InputNumber/component.json +162 -0
  512. package/lib/Label/component.json +126 -0
  513. package/lib/Label/index.d.ts +2 -2
  514. package/lib/Loading/component.json +91 -0
  515. package/lib/Menu/component.json +180 -0
  516. package/lib/Menu/verticalMenuList.js +1 -1
  517. package/lib/Message/component.json +246 -0
  518. package/lib/Message/index.d.ts +2 -2
  519. package/lib/Message/index.js +1 -1
  520. package/lib/Modal/Confirm/index.d.ts +1 -1
  521. package/lib/Modal/Confirm/index.js +1 -1
  522. package/lib/Modal/component.json +277 -0
  523. package/lib/Modal/index.d.ts +85 -5
  524. package/lib/Modal/index.js +1 -1
  525. package/lib/Modal/interface.d.ts +1 -0
  526. package/lib/MultiBox/component.json +216 -0
  527. package/lib/MultiBox/index.js +1 -1
  528. package/lib/Notification/component.json +184 -0
  529. package/lib/OperateBtn/component.json +134 -0
  530. package/lib/OperateBtn/index.d.ts +3 -3
  531. package/lib/PageHeader/component.json +112 -0
  532. package/lib/PageHeader/horizontalMeun.js +1 -1
  533. package/lib/PageHeader/horizontalMeunRight.js +1 -1
  534. package/lib/Pagination/component.json +181 -0
  535. package/lib/Pagination/index.js +1 -1
  536. package/lib/ParauiProvider/index.js +1 -1
  537. package/lib/PasswordRules/component.json +105 -0
  538. package/lib/PasswordRules/index.d.ts +4 -4
  539. package/lib/PopConfirm/component.json +227 -0
  540. package/lib/PopConfirm/index.d.ts +1 -1
  541. package/lib/PopConfirm/index.js +1 -1
  542. package/lib/PopMenu/component.json +131 -0
  543. package/lib/PopMenu/hooks.d.ts +1 -1
  544. package/lib/PopMenu/index.js +1 -1
  545. package/lib/Popover/component.json +165 -0
  546. package/lib/Popover/index.js +1 -1
  547. package/lib/Progress/component.json +161 -0
  548. package/lib/Prompt/component.json +144 -0
  549. package/lib/Querying/component.json +96 -0
  550. package/lib/Querying/index.css +1 -1
  551. package/lib/Querying/index.d.ts +2 -2
  552. package/lib/Querying/index.js +1 -1
  553. package/lib/Querying/style/index.css +1 -1
  554. package/lib/QuickReply/QuickReplyCode/index.js +1 -1
  555. package/lib/QuickReply/component.json +129 -0
  556. package/lib/QuickReply/index.d.ts +1 -1
  557. package/lib/Radio/component.json +136 -0
  558. package/lib/RadioGroup/component.json +149 -0
  559. package/lib/RangeInput/component.json +198 -0
  560. package/lib/RangeInput/index.js +1 -1
  561. package/lib/Result/component.json +104 -0
  562. package/lib/ScrollBar/component.json +115 -0
  563. package/lib/Search/component.json +177 -0
  564. package/lib/Search/index.d.ts +1 -1
  565. package/lib/Select/component.json +244 -0
  566. package/lib/Select/index.js +1 -1
  567. package/lib/SelectInput/component.json +184 -0
  568. package/lib/Selector/component.json +203 -0
  569. package/lib/Selector/index.js +1 -1
  570. package/lib/Selector/interface.d.ts +2 -2
  571. package/lib/Selector/selectorData/index.js +1 -1
  572. package/lib/Selector/selectorMain/index.js +1 -1
  573. package/lib/Selector/selectorNode/index.js +1 -1
  574. package/lib/Selector/util.d.ts +3 -3
  575. package/lib/Selector/util.js +1 -1
  576. package/lib/SelectorPicker/component.json +179 -0
  577. package/lib/SelectorPicker/index.d.ts +5 -5
  578. package/lib/SelectorPicker/index.js +1 -1
  579. package/lib/SingleBox/component.json +151 -0
  580. package/lib/SingleBox/index.d.ts +2 -2
  581. package/lib/Slider/component.json +181 -0
  582. package/lib/SortBox/component.json +108 -0
  583. package/lib/Status/component.json +104 -0
  584. package/lib/Stepper/component.json +129 -0
  585. package/lib/Stepper/index.d.ts +2 -2
  586. package/lib/Switch/component.json +207 -0
  587. package/lib/Switch/index.css +1 -1
  588. package/lib/Switch/index.d.ts +3 -2
  589. package/lib/Switch/index.js +1 -1
  590. package/lib/Switch/style/index.css +1 -1
  591. package/lib/Table/component.json +547 -0
  592. package/lib/Table/index.d.ts +2 -2
  593. package/lib/Table/index.js +1 -1
  594. package/lib/Table/interface.d.ts +30 -0
  595. package/lib/Table/tableHead.js +1 -1
  596. package/lib/Table/util.d.ts +1 -1
  597. package/lib/Table/util.js +1 -1
  598. package/lib/Tabs/component.json +227 -0
  599. package/lib/Tag/component.json +221 -0
  600. package/lib/Tag/index.css +1 -1
  601. package/lib/Tag/index.d.ts +1 -1
  602. package/lib/Tag/index.js +1 -1
  603. package/lib/Tag/style/index.css +1 -1
  604. package/lib/TextEditor/component.json +186 -0
  605. package/lib/TextEditor/index.d.ts +5 -5
  606. package/lib/TextEditor/index.js +1 -1
  607. package/lib/TextField/component.json +290 -0
  608. package/lib/TextField/index.d.ts +2 -2
  609. package/lib/TextField/index.js +1 -1
  610. package/lib/TimePicker/component.json +176 -0
  611. package/lib/Timeline/component.json +110 -0
  612. package/lib/Title/component.json +156 -0
  613. package/lib/ToggleButton/component.json +153 -0
  614. package/lib/ToggleButton/index.js +1 -1
  615. package/lib/Tooltip/component.json +176 -0
  616. package/lib/Tooltip/index.js +1 -1
  617. package/lib/Tooltip/interface.d.ts +14 -1
  618. package/lib/Tooltip/utils.js +1 -1
  619. package/lib/Transfer/component.json +157 -0
  620. package/lib/Tree/OperateBar/index.js +2 -2
  621. package/lib/Tree/Tree.js +1 -1
  622. package/lib/Tree/component.json +512 -0
  623. package/lib/Tree/interface.d.ts +1 -1
  624. package/lib/Upload/component.json +450 -0
  625. package/lib/Upload/util.js +1 -1
  626. package/lib/Utils/snack-kit-shims.d.ts +18 -0
  627. package/lib/Utils/snack-kit-shims.js +2 -0
  628. package/lib/Utils/type.d.ts +0 -2
  629. package/lib/_virtual/index.js +1 -1
  630. package/lib/_virtual/index2.js +1 -1
  631. package/lib/index.d.ts +2 -0
  632. package/lib/index.js +1 -1
  633. package/lib/locale/en_US.d.ts +361 -0
  634. package/lib/locale/en_US.js +2 -0
  635. package/lib/locale/index.d.ts +1 -723
  636. package/lib/locale/index2.js +2 -0
  637. package/lib/locale/zh_CN.d.ts +361 -0
  638. package/lib/locale/zh_CN.js +2 -0
  639. package/lib/node_modules/classnames/index.js +1 -1
  640. package/package.json +11 -4
  641. package/es/_virtual/index3.js +0 -5
  642. package/es/_virtual/index4.js +0 -5
  643. package/es/node_modules/@para-snack/core/dist/index.js +0 -5231
  644. package/lib/_virtual/index3.js +0 -2
  645. package/lib/_virtual/index4.js +0 -2
  646. package/lib/node_modules/@para-snack/core/dist/index.js +0 -20
  647. /package/es/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
  648. /package/es/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
  649. /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.d.ts +0 -0
  650. /package/lib/{Utils/Hooks → Hooks}/useResizeObserver.js +0 -0
@@ -0,0 +1,156 @@
1
+ {
2
+ "name": "Title",
3
+ "category": "Data Display",
4
+ "description": "区块标题组件,支持图标、副标题、帮助提示、链接和可折叠内容区",
5
+ "semantic": {
6
+ "intent": [
7
+ "标题展示",
8
+ "区块标识",
9
+ "内容折叠"
10
+ ],
11
+ "useCases": [
12
+ "卡片标题",
13
+ "模块标题",
14
+ "页面标题",
15
+ "带折叠的配置区"
16
+ ],
17
+ "riskLevel": "low"
18
+ },
19
+ "variants": {
20
+ "default": {
21
+ "meaning": "默认无图标样式(显示左侧竖线 ink 装饰)"
22
+ },
23
+ "withIcon": {
24
+ "meaning": "带图标样式(传 icon prop 后替换左侧竖线,size 生效)"
25
+ },
26
+ "collapsible": {
27
+ "meaning": "可折叠样式(传 collapseContent 或 children 后变为可展开/折叠区)"
28
+ }
29
+ },
30
+ "states": [
31
+ "default",
32
+ "collapsed",
33
+ "expanded"
34
+ ],
35
+ "idealProps": {
36
+ "title": {
37
+ "type": "ReactNode",
38
+ "description": "主标题文字,必须传",
39
+ "required": true
40
+ },
41
+ "subTitle": {
42
+ "type": "ReactNode",
43
+ "description": "副标题(显示在主标题右侧,支持超长 AutoTips 截断)"
44
+ },
45
+ "icon": {
46
+ "type": "ReactNode",
47
+ "description": "自定义图标(显示在标题左侧,替换默认竖线装饰;传入时 size prop 生效)"
48
+ },
49
+ "collapseContent": {
50
+ "type": "ReactNode",
51
+ "description": "可折叠内容区,传入后标题右侧显示展开/折叠箭头;与 children 二选一(children 优先级高于 collapseContent)"
52
+ },
53
+ "titleTooltip": {
54
+ "type": "ReactNode",
55
+ "description": "标题旁的帮助提示内容,显示 ? 图标,hover 展示内容",
56
+ "required": false
57
+ },
58
+ "titoleTooltipIcon": {
59
+ "type": "ReactNode",
60
+ "description": "⚠️ typo:prop 名是 titoleTooltipIcon(原码如此),自定义帮助提示图标节点",
61
+ "required": false
62
+ },
63
+ "link": {
64
+ "type": "{ href: string; text: ReactNode; target?: string; onClick?: React.MouseEventHandler<HTMLElement> }",
65
+ "description": "渲染在标题旁的链接",
66
+ "objectShape": {
67
+ "href": { "type": "string", "description": "链接地址", "required": true },
68
+ "text": { "type": "ReactNode", "description": "链接文字", "required": true },
69
+ "target": { "type": "string", "description": "同 <a> target 属性,如 '_blank'", "required": false },
70
+ "onClick": { "type": "React.MouseEventHandler<HTMLElement>", "description": "点击链接回调", "required": false }
71
+ },
72
+ "required": false
73
+ },
74
+ "defaultCollapse": {
75
+ "type": "boolean",
76
+ "description": "折叠内容默认是否展开;⚠️ 只有传了 collapseContent 或 children 时才有效",
77
+ "default": false,
78
+ "required": false
79
+ },
80
+ "placement": {
81
+ "type": "enum",
82
+ "values": [
83
+ "bottom-end", "bottom-start", "bottom",
84
+ "left-end", "left-start", "left",
85
+ "right-end", "right-start", "right",
86
+ "top-end", "top-start", "top"
87
+ ],
88
+ "description": "帮助提示方向(titleTooltip 的 Tooltip 弹出方向)",
89
+ "required": false
90
+ },
91
+ "arrow": {
92
+ "type": "boolean",
93
+ "description": "帮助提示 Tooltip 是否显示箭头",
94
+ "required": false
95
+ },
96
+ "size": {
97
+ "type": "enum",
98
+ "values": ["small", "medium", "large"],
99
+ "description": "尺寸,仅在传了 icon 时有效(控制图标容器大小)",
100
+ "default": "medium",
101
+ "required": false
102
+ },
103
+ "collapseClassName": {
104
+ "type": "string",
105
+ "description": "折叠容器自定义 className",
106
+ "required": false
107
+ }
108
+ },
109
+ "do": [
110
+ "保持标题文字简洁,复杂说明放入 titleTooltip",
111
+ "有折叠内容区时传 collapseContent 或 children 而非手动实现展开逻辑",
112
+ "defaultCollapse=true 可让初始态展开(需同时传 collapseContent 或 children)",
113
+ "link 对象的 target 默认 '_blank',如需当前页跳转传 target='_self'"
114
+ ],
115
+ "dont": [
116
+ "不要同时传 collapseContent 和 children——组件优先渲染 children(src/Title/index.tsx:164 `children || collapseContent`)",
117
+ "不要把 size 当通用字体大小控制——size 仅在 icon 存在时控制图标容器,不影响文字大小",
118
+ "标题文字过长——subTitle 有 AutoTips 截断,但 title 本身不截断,应保持简洁",
119
+ "层级混乱——嵌套 Title 时保持标题层级与视觉层级一致"
120
+ ],
121
+ "events": {
122
+ "link.onClick": {
123
+ "signature": "React.MouseEventHandler<HTMLElement>",
124
+ "asyncSupported": false,
125
+ "examples": [
126
+ "link={{ href: '#', text: '查看详情', onClick: (e) => { e.preventDefault(); navigate('/detail'); } }}",
127
+ "点击链接后进行埋点统计:onClick: (e) => { track('title_link_click'); }"
128
+ ],
129
+ "commonMistakes": [
130
+ "既传 href 又在 onClick 中做跳转——会导致跳转两次,需在 onClick 中 e.preventDefault()",
131
+ "link.target 不传默认 '_blank',如需当前页跳转忘记传 target='_self'"
132
+ ]
133
+ }
134
+ },
135
+ "typescriptPitfalls": [
136
+ {
137
+ "issue": "prop 名 titoleTooltipIcon 有 typo(不是 titleTooltipIcon)",
138
+ "wrong": "<Title title='设置' titleTooltip='配置说明' titleTooltipIcon={<HelpIcon />} />",
139
+ "right": "<Title title='设置' titleTooltip='配置说明' titoleTooltipIcon={<HelpIcon />} /> // 注意 titole 而非 title"
140
+ },
141
+ {
142
+ "issue": "defaultCollapse 没传 collapseContent/children 时无效",
143
+ "wrong": "// 只传 defaultCollapse 没传内容\n<Title title='配置' defaultCollapse={true} /> // 不会显示折叠箭头",
144
+ "right": "<Title title='配置' defaultCollapse={true} collapseContent={<Form />} />"
145
+ },
146
+ {
147
+ "issue": "children 和 collapseContent 同时传时 children 优先,collapseContent 被忽略",
148
+ "wrong": "<Title title='配置' collapseContent={<A />}><B /></Title> // A 组件不会渲染",
149
+ "right": "// 只传其中一个\n<Title title='配置' collapseContent={<A />} /> // 或 <Title title='配置'><B /></Title>"
150
+ }
151
+ ],
152
+ "mapping": {
153
+ "realComponent": "Title",
154
+ "adapter": null
155
+ }
156
+ }
@@ -0,0 +1,153 @@
1
+ {
2
+ "name": "ToggleButton",
3
+ "category": "Data Entry",
4
+ "description": "切换按钮,用于单个选中/取消选中操作;ToggleButtonGroup 用于多按钮单选/多选场景",
5
+ "semantic": {
6
+ "intent": [
7
+ "切换选择",
8
+ "开关",
9
+ "视图模式切换"
10
+ ],
11
+ "useCases": [
12
+ "视图切换(列表/网格)",
13
+ "模式选择",
14
+ "选项卡"
15
+ ],
16
+ "riskLevel": "low"
17
+ },
18
+ "variants": {
19
+ "outlined": {
20
+ "meaning": "边框样式(默认),有边框的描边按钮"
21
+ },
22
+ "text": {
23
+ "meaning": "文字按钮(无边框),ToggleButtonGroup 中 type='text' 时自动 exclusive=true"
24
+ },
25
+ "icon": {
26
+ "meaning": "纯图标按钮,使用 Button.IconButton 渲染"
27
+ }
28
+ },
29
+ "states": [
30
+ "selected",
31
+ "unselected",
32
+ "disabled"
33
+ ],
34
+ "idealProps": {
35
+ "value": {
36
+ "type": "T",
37
+ "description": "按钮绑定的值,点击时通过 onClick 第二参回传;ToggleButtonGroup 通过对比 value 与 group.value 决定 selected 状态"
38
+ },
39
+ "selected": {
40
+ "type": "boolean",
41
+ "default": false,
42
+ "description": "是否选中(单独使用时受控);在 ToggleButtonGroup 内部由 Group 自动计算,不需要手动传"
43
+ },
44
+ "disabled": {
45
+ "type": "boolean",
46
+ "default": false,
47
+ "description": "不可用状态,阻止点击触发 onClick",
48
+ "required": false
49
+ },
50
+ "width": {
51
+ "type": "number | string",
52
+ "description": "按钮宽度",
53
+ "required": false
54
+ },
55
+ "onClick": {
56
+ "type": "function",
57
+ "signature": "(event: React.MouseEvent, value: T) => void",
58
+ "description": "点击回调;⚠️ 第二参 value 是该按钮绑定的 value prop,不是 event.target.value;ToggleButtonGroup 内部会拦截此 prop 替换为 group 逻辑",
59
+ "required": false
60
+ },
61
+ "type": {
62
+ "type": "enum",
63
+ "values": ["text", "outlined", "icon"],
64
+ "default": "outlined",
65
+ "description": "按钮类型:text=文字按钮(无边框)/ outlined=描边按钮(默认)/ icon=纯图标按钮"
66
+ },
67
+ "toolTipTitle": {
68
+ "type": "ReactNode",
69
+ "description": "按钮提示文字(hover Tooltip),透传给内部 Button/IconButton",
70
+ "required": false
71
+ },
72
+ "exclusive": {
73
+ "type": "boolean",
74
+ "description": "是否单选语义(仅在 ToggleButtonGroup 场景使用;单独使用 ToggleButton 时此 prop 只影响 outlined 样式类名区分)",
75
+ "required": false
76
+ }
77
+ },
78
+ "subComponents": {
79
+ "ToggleButtonGroup": {
80
+ "description": "切换按钮组,管理多个 ToggleButton 的选中状态(单选/多选)",
81
+ "props": {
82
+ "data": { "type": "ToggleButtonItemProps<T>[]", "description": "按钮组数据源,每项 { label, value, icon?, selected?, disabled?, toolTipTitle? }" },
83
+ "value": { "type": "T | T[]", "description": "当前选中值;exclusive=true 时为单值 T,多选时为 T[]" },
84
+ "exclusive": { "type": "boolean", "default": false, "description": "true=单选模式(选中新项后旧项取消),false=多选模式;⚠️ type='text' 时默认强制 exclusive=true(src/ToggleButton/ToggleButtonGroup.tsx:62)" },
85
+ "toggleable": { "type": "boolean", "default": true, "description": "exclusive=true 时是否允许取消选中(再次点击已选项恢复未选状态);toggleable=false 时选中后不能取消" },
86
+ "onChange": { "type": "(event: React.MouseEvent, value: T | T[] | null) => void", "description": "选中值变化回调;单选取消选中时 value=null(toggleable=true)" },
87
+ "type": { "type": "enum", "values": ["text", "outlined", "icon"], "default": "outlined", "description": "统一所有子按钮的 type" }
88
+ }
89
+ }
90
+ },
91
+ "do": [
92
+ "单选场景使用 ToggleButtonGroup + exclusive=true(或 type='text')",
93
+ "多选场景使用 ToggleButtonGroup + value 传数组 + onChange 更新数组",
94
+ "ToggleButtonGroup 中 data 每项的 value 类型需一致(统一泛型 T)",
95
+ "type='icon' 时每项 data 需传 icon 字段,label 依然可传(作为 tooltip)"
96
+ ],
97
+ "dont": [
98
+ "选项超过 6 个时避免 ToggleButton 横排——改用 Select 或 RadioGroup",
99
+ "ToggleButtonGroup 内不要手动传每个 ToggleButton 的 selected——由 Group 自动计算",
100
+ "不要把 onClick 用于表单提交逻辑——ToggleButton 是展示状态切换的,提交应在父层处理",
101
+ "不要忽略 exclusive=false(多选)时 value 是数组——onChange 的第二参也是 T[]"
102
+ ],
103
+ "events": {
104
+ "onClick": {
105
+ "signature": "(event: React.MouseEvent, value: T) => void",
106
+ "asyncSupported": false,
107
+ "examples": [
108
+ "单独使用 ToggleButton:onClick={(e, val) => setSelected(!selected)}",
109
+ "在 ToggleButtonGroup 内部 onClick 被 Group 拦截,改用 Group 的 onChange",
110
+ "value 是绑定的 value prop 值(不是 event.target.value):onClick={(e, val) => console.log(val)}"
111
+ ],
112
+ "commonMistakes": [
113
+ "假设 onClick 第二参是 event.target.value(字符串)——实际是 ToggleButton 的 value prop 值",
114
+ "在 ToggleButtonGroup 中给子 ToggleButton 传 onClick——Group 内部会覆盖此 prop",
115
+ "忘记传 selected prop 时单独使用——不传 selected 按钮不显示选中态(默认 false)"
116
+ ]
117
+ },
118
+ "onChange": {
119
+ "signature": "(event: React.MouseEvent, value: T | T[] | null) => void",
120
+ "asyncSupported": false,
121
+ "examples": [
122
+ "单选模式(exclusive=true):onChange={(e, val) => setValue(val as T)}",
123
+ "多选模式:onChange={(e, val) => setValue(val as T[])}",
124
+ "toggleable=true 且单选时取消选中:value=null,需要 if (val !== null) 判断"
125
+ ],
126
+ "commonMistakes": [
127
+ "单选模式下不处理 value=null——toggleable=true 时点击已选项会传 null",
128
+ "多选模式下把 value 当 T 而非 T[]——exclusive=false 时 onChange 的 value 是 T[]"
129
+ ]
130
+ }
131
+ },
132
+ "typescriptPitfalls": [
133
+ {
134
+ "issue": "ToggleButtonGroup 泛型推断问题——value 和 data[].value 类型需一致",
135
+ "wrong": "// data 的 value 是 string,但 Group.value 传了 number\n<ToggleButtonGroup<string> data={[{label:'A', value:'a'}]} value={1} />",
136
+ "right": "<ToggleButtonGroup<string> data={[{label:'A', value:'a'}]} value={'a'} onChange={(e,v) => setValue(v as string)} />"
137
+ },
138
+ {
139
+ "issue": "多选模式下 onChange value 类型是 T | T[] | null,需要根据 exclusive 断言",
140
+ "wrong": "// exclusive=false 但当作单值处理\nonChange={(e, val) => setValue(val as string)} // val 实际是 string[]",
141
+ "right": "// exclusive=false 多选\nonChange={(e, val) => setValue(val as string[])} // 多选时是数组"
142
+ },
143
+ {
144
+ "issue": "type='text' 的 ToggleButtonGroup 默认强制 exclusive=true(src 实证)",
145
+ "wrong": "// 期望 type='text' + exclusive=false 实现多选文字按钮\n<ToggleButtonGroup type='text' exclusive={false} /> // exclusive 被内部改为 true",
146
+ "right": "// type='text' 固定单选,多选文字按钮改用 type='outlined' + exclusive={false}"
147
+ }
148
+ ],
149
+ "mapping": {
150
+ "realComponent": "ToggleButton",
151
+ "adapter": null
152
+ }
153
+ }
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const s=require("../_virtual/jsx-runtime.js"),T=require("react"),p=require("../Button/index.js"),b=require("./ToggleButtonGroup.js"),C=require("@paraview/lib"),R=require("clsx"),h=require("../GlobalContext/constant.js"),k=require("../AutoTips/index.js");;/* empty css */function f(m){const{className:j,style:i,type:e="outlined",children:l,disabled:o=!1,toolTipTitle:u,selected:q=!1,exclusive:$=!1,value:n,width:r,onClick:c,...a}=m,d=T.useRef(C.UUID()).current,t=`${h.$prefixCls}-toggle-button`,x=R(t,j,`toggle-button-${e}`,{[`${t}-${$?"radio":"check"}`]:e==="outlined",[`${t}-selected`]:q,[`${t}-disabled`]:o}),g=B=>{c&&c(B,n)};return e==="icon"?s.jsxRuntimeExports.jsx(p.Button.IconButton,{"data-id":d,...a,variant:"outlined",style:{width:r,...i},className:x,disabled:o,toolTipTitle:u,value:n,onClick:g,children:l}):s.jsxRuntimeExports.jsx(p.Button,{"data-id":d,...a,variant:e==="text"?"text":"outlined",style:{width:r,...i},className:x,disabled:o,toolTipTitle:u,value:n,onClick:g,children:s.jsxRuntimeExports.jsx("span",{className:"toggle-button-text",children:s.jsxRuntimeExports.jsx(k.default,{children:l})})})}exports.ToggleButtonGroup=b.default;exports.ToggleButton=f;exports.default=f;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const s=require("../_virtual/jsx-runtime.js"),T=require("react"),p=require("../Button/index.js"),C=require("./ToggleButtonGroup.js"),R=require("@snack-kit/lib"),$=require("clsx"),h=require("../GlobalContext/constant.js"),k=require("../AutoTips/index.js");;/* empty css */function f(m){const{className:j,style:i,type:e="outlined",children:l,disabled:o=!1,toolTipTitle:u,selected:q=!1,exclusive:b=!1,value:n,width:r,onClick:c,...a}=m,d=T.useRef(R.UUID()).current,t=`${h.$prefixCls}-toggle-button`,x=$(t,j,`toggle-button-${e}`,{[`${t}-${b?"radio":"check"}`]:e==="outlined",[`${t}-selected`]:q,[`${t}-disabled`]:o}),g=B=>{c&&c(B,n)};return e==="icon"?s.jsxRuntimeExports.jsx(p.Button.IconButton,{"data-id":d,...a,variant:"outlined",style:{width:r,...i},className:x,disabled:o,toolTipTitle:u,value:n,onClick:g,children:l}):s.jsxRuntimeExports.jsx(p.Button,{"data-id":d,...a,variant:e==="text"?"text":"outlined",style:{width:r,...i},className:x,disabled:o,toolTipTitle:u,value:n,onClick:g,children:s.jsxRuntimeExports.jsx("span",{className:"toggle-button-text",children:s.jsxRuntimeExports.jsx(k.default,{children:l})})})}exports.ToggleButtonGroup=C.default;exports.ToggleButton=f;exports.default=f;
2
2
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,176 @@
1
+ {
2
+ "name": "Tooltip",
3
+ "category": "Data Display",
4
+ "description": "简单的文字提示气泡框",
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
+ "title": {
29
+ "type": "string | ReactNode",
30
+ "description": "提示文字"
31
+ },
32
+ "placement": {
33
+ "type": "enum",
34
+ "values": [
35
+ "top",
36
+ "left",
37
+ "right",
38
+ "bottom",
39
+ "topLeft",
40
+ "topRight",
41
+ "bottomLeft",
42
+ "bottomRight",
43
+ "leftTop",
44
+ "leftBottom",
45
+ "rightTop",
46
+ "rightBottom"
47
+ ],
48
+ "default": "topLeft",
49
+ "description": "气泡框位置。配合 `autoAdjustOverflow=true` 可被遮挡时自动翻转。**长 content + maxWidth 较大时优先 top/bottom 减少水平空间冲突**"
50
+ },
51
+ "maxWidth": {
52
+ "type": "string | number",
53
+ "default": 500,
54
+ "description": "气泡最大宽度。`number` = px;`string` = 任意合法 CSS 长度(`'200px'` / `'20rem'`)。默认 500px 适合大多数长 title 场景。R23 TT3 docs 协同补强"
55
+ },
56
+ "trigger": {
57
+ "type": "enum",
58
+ "values": [
59
+ "hover",
60
+ "focus",
61
+ "click",
62
+ "contextMenu"
63
+ ],
64
+ "default": "hover",
65
+ "description": "触发行为。**`trigger=[]` 受控屏蔽写法已 deprecated(R23 TT2)**——请改用 `visible={false}`。老写法仍可用但 dev 环境 console.warn 一次提示迁移;v6 可能收紧类型不接受空数组,提前迁移"
66
+ },
67
+ "visible": {
68
+ "type": "boolean",
69
+ "default": "undefined",
70
+ "description": "**控制浮层显示(受控,src 真实主名)**。**三路语义**(R24 W-2 文档化):`true`=强制显示气泡;`false`=强制隐藏(推荐替代 deprecated `trigger=[]`);`undefined` 或不传=fallback 到 `open`,再 fallback 到 trigger 默认触发逻辑(`visible ?? open ?? trigger 自动`,src/Tooltip/index.tsx:27)。条件受控:`visible={isDisabled ? false : undefined}`"
71
+ },
72
+ "open": {
73
+ "type": "boolean",
74
+ "default": "undefined",
75
+ "description": "`visible` 的别名(来自 antd 风格);与 visible 二选一,不要同时传"
76
+ },
77
+ "onVisibleChange": {
78
+ "type": "function",
79
+ "signature": "(visible: boolean) => void",
80
+ "description": "**显示隐藏回调(src 真实事件名,非 onOpenChange)**。受控用法配合 visible/open 使用;受控 visible 时 hover/click 仍触发本回调但 Tooltip 不会自更新——必须父组件 setState。**受控 trigger 选择建议**(R24 W-2 R23 TT2 round 标注):新手引导等场景若不希望 hover 持续触发本回调改变 step,建议 `trigger='click'`;**不要用 deprecated `trigger=[]`**(R23 TT2)"
81
+ },
82
+ "defaultVisible": {
83
+ "type": "boolean",
84
+ "default": false,
85
+ "description": "初始是否显示气泡(非受控初始值,src/Tooltip/index.tsx:18,193 实证:`useState(props.defaultVisible!)` 作为初始 visible 状态;默认 false。传了 visible/open 受控 prop 后 defaultVisible 被覆盖)"
86
+ },
87
+ "mouseEnterDelay": {
88
+ "type": "number",
89
+ "default": 0.1,
90
+ "description": "鼠标移入后延迟显示的时间(单位:秒,src/Tooltip/index.tsx:190 defaultProps 实证:默认 0.1s)。⚠️ **单位是秒不是毫秒**(0.1 = 100ms)"
91
+ },
92
+ "mouseLeaveDelay": {
93
+ "type": "number",
94
+ "default": 0.1,
95
+ "description": "鼠标移出后延迟隐藏的时间(单位:秒,src/Tooltip/index.tsx:191 defaultProps 实证:默认 0.1s)。⚠️ **单位是秒不是毫秒**"
96
+ },
97
+ "autoAdjustOverflow": {
98
+ "type": "boolean",
99
+ "default": true,
100
+ "description": "气泡被遮挡时是否自动翻转位置(src/Tooltip/index.tsx:64-65,192 实证:默认 true,传入 getPlacements 生成弹出方向配置)"
101
+ },
102
+ "followCursor": {
103
+ "type": "boolean",
104
+ "default": false,
105
+ "description": "气泡是否跟随鼠标光标移动(src/Tooltip/index.tsx:122,171-178,194 实证:true 时强制 placement='top' 并在外层 div 监听 mousemove 动态更新 targetOffset;与精确 placement 互斥)"
106
+ },
107
+ "overlayClassName": {
108
+ "type": "string",
109
+ "description": "气泡浮层的自定义类名(src/Tooltip/index.tsx:115,135 实证:与内置 paraui-tooltip 类合并透传到 RcTooltip overlayClassName)"
110
+ },
111
+ "overlayInnerStyle": {
112
+ "type": "React.CSSProperties",
113
+ "description": "气泡内容区内联样式(src/Tooltip/index.tsx:116,164 实证:透传到 RcTooltip overlayInnerStyle,作用于内容容器而非浮层外壳)"
114
+ },
115
+ "overlayStyle": {
116
+ "type": "React.CSSProperties",
117
+ "description": "气泡浮层外壳内联样式(src/Tooltip/index.tsx:117,138-140 实证:与 maxWidth 合并后透传到 RcTooltip overlayStyle)"
118
+ }
119
+ },
120
+ "do": [
121
+ "提示内容应当精简,避免超过两行文字",
122
+ "用于解释图标或被截断的文本(配合 AutoTips 使用效果更佳)",
123
+ "受控场景用 `visible={false}` 替代已废弃的 `trigger=[]` 写法——v6 可能移除空数组支持(src/Tooltip/index.tsx:29-40 dev warn 实证)",
124
+ "Modal/Dialog 内的 Tooltip 建议传 getPopupContainer 指向 modal 容器,避免 overflow:hidden 截断浮层",
125
+ "需要叠加禁用视觉图标时用 showForbidIcon={true}(新名)而非 disabled(deprecated),两者源码同路径:`(disabled || showForbidIcon) && <Forbid />`"
126
+ ],
127
+ "dont": [
128
+ "在 Tooltip 中放入复杂交互内容(应使用 Popover)",
129
+ "提示内容为空——title 为空时 Tooltip 强制不显示(src/Tooltip/index.tsx:42-45 isUntitled 判断)",
130
+ "不要把 `disabled` 理解为『禁用气泡显示』——src 实现是叠加红色 Forbid 图标,与 antd/mui 同名 prop 含义相反;用 `visible={false}` 来强制隐藏气泡",
131
+ "不要同时传 visible 和 open——两者是同义别名,优先取 visible,同时传会造成语义混淆(src:27 `props.visible ?? props.open` 实证)",
132
+ "不要给 mouseEnterDelay / mouseLeaveDelay 传毫秒值(如 100)——单位是秒,传 100 = 100秒延迟"
133
+ ],
134
+ "events": {
135
+ "onVisibleChange": {
136
+ "signature": "(visible: boolean) => void",
137
+ "asyncSupported": false,
138
+ "examples": [
139
+ "非受控模式下跟踪气泡显示状态:onVisibleChange={(v) => setIsHovered(v)}",
140
+ "受控模式配合 useState:onVisibleChange={(v) => setVisible(v)}",
141
+ "新手引导场景:`trigger='click'` + onVisibleChange 控制引导步骤切换(避免 hover 持续触发)"
142
+ ],
143
+ "commonMistakes": [
144
+ "回调名写成 onOpenChange → src 真实回调名是 onVisibleChange,写错无效(RcTooltip 接口名),不会有 TS 报错但回调不触发",
145
+ "受控模式(visible=xxx)下期望 onVisibleChange 触发后气泡自动更新 → 受控时内部 state 不更新,必须父组件在 onVisibleChange 里 setState",
146
+ "假设 onVisibleChange 在 title 为空时也会触发 → src:46-50 isUntitled()=true 时 onVisibleChange 不被调用"
147
+ ]
148
+ }
149
+ },
150
+ "typescriptPitfalls": [
151
+ {
152
+ "issue": "disabled 的语义与 antd/mui 相反——不是禁用气泡而是叠加禁用图标",
153
+ "wrong": "<Tooltip disabled={isLoading} title='提示'> // 期望 isLoading 时不显示气泡 → 实际只是叠加红色图标,气泡照常显示",
154
+ "right": "<Tooltip visible={isLoading ? false : undefined} title='提示'> // 正确:visible=false 才能强制隐藏气泡"
155
+ },
156
+ {
157
+ "issue": "mouseEnterDelay / mouseLeaveDelay 单位是秒不是毫秒",
158
+ "wrong": "<Tooltip mouseEnterDelay={500} /> // 500 秒 = 8 分钟才显示",
159
+ "right": "<Tooltip mouseEnterDelay={0.5} /> // 0.5 秒 = 500ms"
160
+ },
161
+ {
162
+ "issue": "followCursor={true} 时 placement 被强制覆盖为 'top',设置其他 placement 无效",
163
+ "wrong": "<Tooltip followCursor={true} placement='bottomRight' /> // placement 被 src:128 强制改为 'top'",
164
+ "right": "<Tooltip followCursor={true} /> // followCursor 场景只支持 top,无需传 placement"
165
+ },
166
+ {
167
+ "issue": "TooltipProps 继承自 rc-tooltip,overlayStyle 和 overlayInnerStyle 作用 DOM 层级不同",
168
+ "wrong": "overlayStyle={{ color: 'red' }} // overlayStyle 作用于浮层外壳,文字颜色无效",
169
+ "right": "overlayInnerStyle={{ color: 'red' }} // overlayInnerStyle 作用于内容容器,文字颜色生效"
170
+ }
171
+ ],
172
+ "mapping": {
173
+ "realComponent": "Tooltip",
174
+ "adapter": null
175
+ }
176
+ }
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const r=require("../_virtual/jsx-runtime.js"),s=require("react"),Y=require("rc-tooltip"),c=require("./utils.js"),_=require("clsx"),x=require("../GlobalContext/constant.js"),k=require("../node_modules/@para-ui/icons/Forbid/index.js");;/* empty css */const u=s.forwardRef((e,j)=>{const[P,p]=s.useState(e.defaultVisible),d=s.useRef(null),b=s.useRef(null),[$,w]=s.useState([0,0]);s.useEffect(()=>{("visible"in e||"open"in e)&&p(!!(e.visible??e.open))},[e.visible??e.open]);const m=()=>{const{title:t}=e;return!t&&t!==0},T=t=>{"visible"in e||"open"in e||p(m()?!1:t),m()||e.onVisibleChange?.(t)},g=()=>{const{builtinPlacements:t,autoAdjustOverflow:i}=e;return t||c.default({autoAdjustOverflow:i})},S=(t,i)=>{const l=g(),n=Object.keys(l).find(a=>l[a].points[0]===i.points[0]&&l[a].points[1]===i.points[1]);if(!n)return;const f=t.getBoundingClientRect(),o={top:"50%",left:"50%"};n.indexOf("top")>=0||n.indexOf("Bottom")>=0?o.top=`${f.height-(i.offset?.[1]||0)}px`:(n.indexOf("Top")>=0||n.indexOf("bottom")>=0)&&(o.top=`${-(i.offset?.[1]||0)}px`),n.indexOf("left")>=0||n.indexOf("Right")>=0?o.left=`${f.width-(i.offset?.[0]||0)}px`:(n.indexOf("right")>=0||n.indexOf("Left")>=0)&&(o.left=`${-(i.offset?.[0]||0)}px`),t.style.transformOrigin=`${o.left} ${o.top}`},q=t=>{if(d.current){const i=b.current?.popupRef?.current?.getElement()?.offsetHeight||0,l=i===0?60:30,{x:n,y:f,width:o}=d.current.getBoundingClientRect(),a=t.clientX-(n+o/2),X=t.clientY-f+i+l;setTimeout(()=>{w([-a,-X])})}},{prefixCls:E=`${x.$rcPrefixCls}-tooltip`,getPopupContainer:M,overlayClassName:V,overlayInnerStyle:D,overlayStyle:L,children:v,title:N,placement:A,isPopover:B,followCursor:y,maxWidth:h,disabled:W,...F}=e;let C=P;!("visible"in e||"open"in e)&&m()&&(C=!1);const H=_(!B&&`${x.$prefixCls}-tooltip`,V),O={...L};h&&(O.maxWidth=h);const R={targetOffset:$};return e.offset&&(R.offset=e.offset),r.jsxRuntimeExports.jsx(Y,{...F,prefixCls:E,placement:y?"top":c.mapLegacyPlacement(A),overlayClassName:H,getTooltipContainer:M,ref:j||b,builtinPlacements:g(),overlay:r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[W&&r.jsxRuntimeExports.jsx(k.Forbid,{className:"disabled-svg"}),N]}),visible:C,align:R,onVisibleChange:T,onPopupAlign:S,overlayStyle:O,overlayInnerStyle:D,arrowContent:null,motion:{motionName:`${x.$rcPrefixCls}-tooltip-zoom-big-fast`,motionDeadline:1e3},children:y?r.jsxRuntimeExports.jsx("div",{style:{display:"inline-block"},ref:d,onMouseMove:q,children:c.getDisabledCompatibleChildren(v)}):c.getDisabledCompatibleChildren(v)})});u.displayName="Tooltip";u.defaultProps={placement:"topLeft",mouseEnterDelay:.1,mouseLeaveDelay:.1,autoAdjustOverflow:!0,defaultVisible:!1,followCursor:!1,maxWidth:500};exports.Tooltip=u;exports.default=u;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require('./index.css');const r=require("../_virtual/jsx-runtime.js"),s=require("react"),Y=require("rc-tooltip"),c=require("./utils.js"),k=require("clsx"),g=require("../GlobalContext/constant.js"),z=require("../node_modules/@para-ui/icons/Forbid/index.js");;/* empty css */const u=s.forwardRef((e,w)=>{const[E,x]=s.useState(e.defaultVisible),d=s.useRef(null),p=s.useRef(null),[P,$]=s.useState([0,0]),b=s.useRef(!1);s.useEffect(()=>{("visible"in e||"open"in e)&&x(!!(e.visible??e.open))},[e.visible??e.open]),s.useEffect(()=>{process.env.NODE_ENV!=="production"&&!b.current&&Array.isArray(e.trigger)&&e.trigger.length===0&&(b.current=!0,console.warn("[Tooltip] `trigger=[]` 受控屏蔽写法已 deprecated,请改用 `visible={false}`(语义更清晰);v6 可能收紧 trigger 类型,提前迁移。"))},[e.trigger]);const m=()=>{const{title:t}=e;return!t&&t!==0},T=t=>{"visible"in e||"open"in e||x(m()?!1:t),m()||e.onVisibleChange?.(t)},v=()=>{const{builtinPlacements:t,autoAdjustOverflow:i}=e;return t||c.default({autoAdjustOverflow:i})},S=(t,i)=>{const l=v(),n=Object.keys(l).find(a=>l[a].points[0]===i.points[0]&&l[a].points[1]===i.points[1]);if(!n)return;const f=t.getBoundingClientRect(),o={top:"50%",left:"50%"};n.indexOf("top")>=0||n.indexOf("Bottom")>=0?o.top=`${f.height-(i.offset?.[1]||0)}px`:(n.indexOf("Top")>=0||n.indexOf("bottom")>=0)&&(o.top=`${-(i.offset?.[1]||0)}px`),n.indexOf("left")>=0||n.indexOf("Right")>=0?o.left=`${f.width-(i.offset?.[0]||0)}px`:(n.indexOf("right")>=0||n.indexOf("Left")>=0)&&(o.left=`${-(i.offset?.[0]||0)}px`),t.style.transformOrigin=`${o.left} ${o.top}`},q=t=>{if(d.current){const i=p.current?.popupRef?.current?.getElement()?.offsetHeight||0,l=i===0?60:30,{x:n,y:f,width:o}=d.current.getBoundingClientRect(),a=t.clientX-(n+o/2),X=t.clientY-f+i+l;setTimeout(()=>{$([-a,-X])})}},{prefixCls:V=`${g.$rcPrefixCls}-tooltip`,getPopupContainer:D,overlayClassName:M,overlayInnerStyle:N,overlayStyle:A,children:y,title:L,placement:W,isPopover:B,followCursor:h,maxWidth:C,disabled:F,showForbidIcon:_,...H}=e;let R=E;!("visible"in e||"open"in e)&&m()&&(R=!1);const I=k(!B&&`${g.$prefixCls}-tooltip`,M),O={...A};C&&(O.maxWidth=C);const j={targetOffset:P};return e.offset&&(j.offset=e.offset),r.jsxRuntimeExports.jsx(Y,{...H,prefixCls:V,placement:h?"top":c.mapLegacyPlacement(W),overlayClassName:I,getTooltipContainer:D,ref:w||p,builtinPlacements:v(),overlay:r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[(F||_)&&r.jsxRuntimeExports.jsx(z.Forbid,{className:"disabled-svg"}),L]}),visible:R,align:j,onVisibleChange:T,onPopupAlign:S,overlayStyle:O,overlayInnerStyle:N,arrowContent:null,motion:{motionName:`${g.$rcPrefixCls}-tooltip-zoom-big-fast`,motionDeadline:1e3},children:h?r.jsxRuntimeExports.jsx("div",{style:{display:"inline-block"},ref:d,onMouseMove:q,children:c.getDisabledCompatibleChildren(y)}):c.getDisabledCompatibleChildren(y)})});u.displayName="Tooltip";u.defaultProps={placement:"topLeft",mouseEnterDelay:.1,mouseLeaveDelay:.1,autoAdjustOverflow:!0,defaultVisible:!1,followCursor:!1,maxWidth:500};exports.Tooltip=u;exports.default=u;
2
2
  //# sourceMappingURL=index.js.map
@@ -14,12 +14,25 @@ export interface TooltipProps extends Partial<Omit<RcTooltipProps, 'children'>>
14
14
  children?: React.ReactNode;
15
15
  /** 控制浮层是否显示 */
16
16
  open?: boolean;
17
+ /**
18
+ * 受控屏蔽气泡显示(推荐替代 `trigger=[]` 受控隐藏写法)。
19
+ * - `visible !== undefined` → 完全受控,显隐由 visible 控制(覆盖 trigger hover/click 默认行为)
20
+ * - `visible === undefined`(默认)→ 走 trigger 触发(原行为不变)
21
+ * 与 `open` 同义,优先级:`visible ?? open`(src/Tooltip/index.tsx)。@since v5.x.next
22
+ */
23
+ visible?: boolean;
17
24
  /** 跟随光标移动 */
18
25
  followCursor?: boolean;
19
26
  /** 容器最大宽度 */
20
27
  maxWidth?: number | string;
21
- /** 禁用标志 */
28
+ /**
29
+ * @deprecated v5.x.next 改用 `showForbidIcon`(自描述命名,业界对齐);v6 移除。
30
+ * 语义不变:在 trigger 旁叠加红色 Forbid SVG 图标(不影响气泡显示)。
31
+ * 详见 BREAKING-CHANGES §B5。
32
+ */
22
33
  disabled?: boolean;
34
+ /** 在 trigger 节点旁叠加红色 Forbid 禁用 SVG 图标(原 `disabled` 重命名,自描述命名)。不影响气泡显示行为(气泡仍走 title/visible/trigger 控制)。@since v5.x.next */
35
+ showForbidIcon?: boolean;
23
36
  /** 偏移 */
24
37
  offset?: [number, number];
25
38
  [name: string]: unknown;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("../_virtual/jsx-runtime.js"),a=require("rc-tooltip/lib/placements"),r=require("react"),m=require("clsx"),u=require("../GlobalContext/constant.js"),d={adjustX:1,adjustY:1},l={adjustX:0,adjustY:0};function b(t){return typeof t=="boolean"?t?d:l:{...l,...t}}function g(t){const{horizontalArrowShift:o=16,verticalArrowShift:s=8,autoAdjustOverflow:n}=t,e={left:{points:["cr","cl"],offset:[-8,0]},right:{points:["cl","cr"],offset:[8,0]},top:{points:["bc","tc"],offset:[0,-8]},bottom:{points:["tc","bc"],offset:[0,8]},topLeft:{points:["bl","tc"],offset:[-o,-8]},leftTop:{points:["tr","cl"],offset:[-8,-s]},topRight:{points:["br","tc"],offset:[o,-8]},rightTop:{points:["tl","cr"],offset:[8,-s]},bottomRight:{points:["tr","bc"],offset:[o,8]},rightBottom:{points:["bl","cr"],offset:[8,s]},bottomLeft:{points:["tl","bc"],offset:[-o,8]},leftBottom:{points:["br","cl"],offset:[-8,s]}};return Object.keys(e).forEach(f=>{e[f]={...a.placements[f],offset:x(f).offset,overflow:b(n)},e[f].ignoreShake=!0}),e}const h=(t,o)=>{const s={},n={...t};return o.forEach(e=>{t&&e in t&&(s[e]=t[e],delete n[e])}),{picked:s,omitted:n}};function j(t){const o=r.isValidElement(t)?t:i.jsxRuntimeExports.jsx("span",{children:t});if(o.type==="button"&&o.props.disabled){const{picked:s,omitted:n}=h(o.props.style,["position","left","right","top","bottom","float","display","zIndex"]),e={display:"inline-block",...s,cursor:"not-allowed",width:o.props.block?"100%":void 0},f={...n,pointerEvents:"none"},p=r.cloneElement(o,{style:f,className:null});return i.jsxRuntimeExports.jsx("span",{style:e,className:m(o.props.className,`${u.$rcPrefixCls}-tooltip-disabled-compatible-wrapper`),children:p})}return o}function c(t){return{"bottom-end":"bottomRight","bottom-start":"bottomLeft","left-end":"leftBottom","left-start":"leftTop","right-end":"rightBottom","right-start":"rightTop","top-end":"topRight","top-start":"topLeft"}[t]||t}function x(t){const o=c(t);return{left:{offset:[-8,0]},right:{offset:[8,0]},top:{offset:[0,-8]},bottom:{offset:[0,8]},topLeft:{offset:[0,-8]},leftTop:{offset:[-8,0]},topRight:{offset:[0,-8]},rightTop:{offset:[8,0]},bottomRight:{offset:[0,8]},rightBottom:{offset:[8,0]},bottomLeft:{offset:[0,8]},leftBottom:{offset:[-8,0]}}[o]}exports.default=g;exports.getDisabledCompatibleChildren=j;exports.mapLegacyPlacement=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("../_virtual/jsx-runtime.js"),a=require("rc-tooltip/lib/placements"),r=require("react"),m=require("clsx"),u=require("../GlobalContext/constant.js"),d={adjustX:1,adjustY:1},l={adjustX:0,adjustY:0};function b(t){return typeof t=="boolean"?t?d:l:{...l,...t}}function g(t){const{horizontalArrowShift:o=16,verticalArrowShift:s=8,autoAdjustOverflow:n}=t,e={left:{points:["cr","cl"],offset:[-8,0]},right:{points:["cl","cr"],offset:[8,0]},top:{points:["bc","tc"],offset:[0,-8]},bottom:{points:["tc","bc"],offset:[0,8]},topLeft:{points:["bl","tc"],offset:[-o,-8]},leftTop:{points:["tr","cl"],offset:[-8,-s]},topRight:{points:["br","tc"],offset:[o,-8]},rightTop:{points:["tl","cr"],offset:[8,-s]},bottomRight:{points:["tr","bc"],offset:[o,8]},rightBottom:{points:["bl","cr"],offset:[8,s]},bottomLeft:{points:["tl","bc"],offset:[-o,8]},leftBottom:{points:["br","cl"],offset:[-8,s]}};return Object.keys(e).forEach(f=>{e[f]={...a.placements[f],offset:x(f).offset,overflow:b(n)},e[f].ignoreShake=!0}),e}const h=(t,o)=>{const s={},n={...t};return o.forEach(e=>{t&&e in t&&(s[e]=t[e],delete n[e])}),{picked:s,omitted:n}};function j(t){const o=r.isValidElement(t)?t:i.jsxRuntimeExports.jsx("span",{children:t});if(o.props&&o.props.disabled===!0){const{picked:s,omitted:n}=h(o.props.style||{},["position","left","right","top","bottom","float","display","zIndex"]),e={display:"inline-block",...s,cursor:"not-allowed",width:o.props.block?"100%":void 0},f={...n,pointerEvents:"none"},p=r.cloneElement(o,{style:f,className:null});return i.jsxRuntimeExports.jsx("span",{style:e,className:m(o.props.className,`${u.$rcPrefixCls}-tooltip-disabled-compatible-wrapper`),children:p})}return o}function c(t){return{"bottom-end":"bottomRight","bottom-start":"bottomLeft","left-end":"leftBottom","left-start":"leftTop","right-end":"rightBottom","right-start":"rightTop","top-end":"topRight","top-start":"topLeft"}[t]||t}function x(t){const o=c(t);return{left:{offset:[-8,0]},right:{offset:[8,0]},top:{offset:[0,-8]},bottom:{offset:[0,8]},topLeft:{offset:[0,-8]},leftTop:{offset:[-8,0]},topRight:{offset:[0,-8]},rightTop:{offset:[8,0]},bottomRight:{offset:[0,8]},rightBottom:{offset:[8,0]},bottomLeft:{offset:[0,8]},leftBottom:{offset:[-8,0]}}[o]}exports.default=g;exports.getDisabledCompatibleChildren=j;exports.mapLegacyPlacement=c;
2
2
  //# sourceMappingURL=utils.js.map