tntd 2.7.30 → 2.7.31

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 (581) hide show
  1. package/es/ellipsis/index.js +2 -0
  2. package/es/ellipsis/index.js.map +1 -1
  3. package/lib/ellipsis/index.d.ts.map +1 -1
  4. package/lib/ellipsis/index.js +2 -0
  5. package/lib/ellipsis/index.js.map +1 -1
  6. package/package.json +1 -1
  7. package/themes/common/index.less +3 -3
  8. package/es/affix/style/index.less +0 -6
  9. package/es/alert/style/index.less +0 -188
  10. package/es/anchor/style/index.less +0 -82
  11. package/es/auto-complete/style/index.less +0 -92
  12. package/es/avatar/style/index.less +0 -59
  13. package/es/back-top/style/index.less +0 -42
  14. package/es/back-top/style/responsive.less +0 -11
  15. package/es/badge/style/index.less +0 -190
  16. package/es/breadcrumb/style/index.less +0 -51
  17. package/es/button/style/index.less +0 -224
  18. package/es/button/style/mixin.less +0 -357
  19. package/es/calendar/style/index.less +0 -278
  20. package/es/card/style/index.less +0 -263
  21. package/es/card/style/size.less +0 -25
  22. package/es/carousel/style/index.less +0 -238
  23. package/es/cascader/style/index.less +0 -227
  24. package/es/checkbox/style/index.less +0 -4
  25. package/es/checkbox/style/mixin.less +0 -220
  26. package/es/collapse/style/index.less +0 -134
  27. package/es/comment/style/index.less +0 -93
  28. package/es/config-provider/style/index.less +0 -2
  29. package/es/date-picker/style/Calendar.less +0 -402
  30. package/es/date-picker/style/DecadePanel.less +0 -81
  31. package/es/date-picker/style/MonthPanel.less +0 -86
  32. package/es/date-picker/style/MonthPicker.less +0 -11
  33. package/es/date-picker/style/Picker.less +0 -113
  34. package/es/date-picker/style/RangePicker.less +0 -248
  35. package/es/date-picker/style/TimePicker.less +0 -151
  36. package/es/date-picker/style/WeekPicker.less +0 -21
  37. package/es/date-picker/style/YearPanel.less +0 -85
  38. package/es/date-picker/style/index.less +0 -17
  39. package/es/descriptions/style/index.less +0 -144
  40. package/es/divider/style/index.less +0 -109
  41. package/es/drawer/style/drawer.less +0 -230
  42. package/es/drawer/style/index.less +0 -3
  43. package/es/dropdown/style/index.less +0 -282
  44. package/es/empty/style/index.less +0 -52
  45. package/es/form/style/index.less +0 -653
  46. package/es/form/style/mixin.less +0 -126
  47. package/es/grid-v4/style/index.less +0 -124
  48. package/es/grid-v4/style/mixin.less +0 -57
  49. package/es/grid-v4/style/rtl.less +0 -69
  50. package/es/handle/handle.js +0 -138
  51. package/es/handle/handle.js.map +0 -1
  52. package/es/icon/style/index.less +0 -4
  53. package/es/input/style/index.less +0 -57
  54. package/es/input/style/mixin.less +0 -449
  55. package/es/input/style/search-input.less +0 -34
  56. package/es/input-number/style/index.less +0 -179
  57. package/es/layout/style/index.less +0 -124
  58. package/es/layout/style/light.less +0 -15
  59. package/es/list/style/bordered.less +0 -41
  60. package/es/list/style/index.less +0 -234
  61. package/es/list/style/responsive.less +0 -40
  62. package/es/locale-provider/style/index.less +0 -2
  63. package/es/mention/index.js +0 -4
  64. package/es/mention/index.js.map +0 -1
  65. package/es/mentions/style/index.less +0 -164
  66. package/es/menu/style/dark.less +0 -139
  67. package/es/menu/style/index.less +0 -515
  68. package/es/message/style/index.less +0 -75
  69. package/es/modal/style/confirm.less +0 -78
  70. package/es/modal/style/index.less +0 -4
  71. package/es/modal/style/modal.less +0 -165
  72. package/es/notification/style/index.less +0 -199
  73. package/es/page-header/style/index.less +0 -119
  74. package/es/pagination/style/index.less +0 -400
  75. package/es/popover/style/index.less +0 -205
  76. package/es/progress/style/index.less +0 -182
  77. package/es/radio/style/index.less +0 -327
  78. package/es/rate/style/index.less +0 -85
  79. package/es/result/style/index.less +0 -71
  80. package/es/select/style/index.less +0 -604
  81. package/es/skeleton/style/index.less +0 -130
  82. package/es/slider/style/index.less +0 -197
  83. package/es/spin/style/index.less +0 -214
  84. package/es/statistic/style/index.less +0 -40
  85. package/es/steps/style/compatibility.less +0 -50
  86. package/es/steps/style/custom-icon.less +0 -31
  87. package/es/steps/style/label-placement.less +0 -38
  88. package/es/steps/style/progress-dot.less +0 -80
  89. package/es/steps/style/vertical.less +0 -74
  90. package/es/style/color/bezierEasing.less +0 -110
  91. package/es/style/color/colorPalette.less +0 -75
  92. package/es/style/color/colors.less +0 -149
  93. package/es/style/color/tinyColor.less +0 -1184
  94. package/es/style/core/base.less +0 -510
  95. package/es/style/core/iconfont.less +0 -19
  96. package/es/style/core/index.less +0 -4
  97. package/es/style/core/motion/fade.less +0 -31
  98. package/es/style/core/motion/move.less +0 -120
  99. package/es/style/core/motion/other.less +0 -40
  100. package/es/style/core/motion/slide.less +0 -120
  101. package/es/style/core/motion/swing.less +0 -34
  102. package/es/style/core/motion/zoom.less +0 -162
  103. package/es/style/core/motion.less +0 -20
  104. package/es/style/index.less +0 -2
  105. package/es/style/mixins/clearfix.less +0 -13
  106. package/es/style/mixins/compatibility.less +0 -22
  107. package/es/style/mixins/iconfont.less +0 -43
  108. package/es/style/mixins/index.less +0 -10
  109. package/es/style/mixins/motion.less +0 -35
  110. package/es/style/mixins/operation-unit.less +0 -18
  111. package/es/style/mixins/reset.less +0 -13
  112. package/es/style/mixins/size.less +0 -10
  113. package/es/style/mixins/typography.less +0 -49
  114. package/es/style/themes/default.less +0 -699
  115. package/es/style/themes/index.less +0 -1
  116. package/es/style/v2-compatible-reset.less +0 -51
  117. package/es/switch/style/index.less +0 -178
  118. package/es/table/style/index.less +0 -800
  119. package/es/table/style/size.less +0 -179
  120. package/es/tabs/style/card-style.less +0 -186
  121. package/es/tabs/style/index.less +0 -436
  122. package/es/tag/style/index.less +0 -106
  123. package/es/time-picker/style/index.less +0 -246
  124. package/es/timeline/style/index.less +0 -167
  125. package/es/tntd-form/TntdForm/components/Item.js +0 -55
  126. package/es/tntd-form/TntdForm/components/Item.js.map +0 -1
  127. package/es/tntd-form/TntdForm/components/ItemComp.js +0 -186
  128. package/es/tntd-form/TntdForm/components/ItemComp.js.map +0 -1
  129. package/es/tntd-form/TntdForm/components/List.js +0 -102
  130. package/es/tntd-form/TntdForm/components/List.js.map +0 -1
  131. package/es/tntd-form/TntdForm/index.js +0 -55
  132. package/es/tntd-form/TntdForm/index.js.map +0 -1
  133. package/es/tntd-form/TntdForm/interface.js +0 -1
  134. package/es/tntd-form/TntdForm/interface.js.map +0 -1
  135. package/es/tntd-form/TntdForm/store.js +0 -2
  136. package/es/tntd-form/TntdForm/store.js.map +0 -1
  137. package/es/tntd-form/TntdForm/utils.js +0 -219
  138. package/es/tntd-form/TntdForm/utils.js.map +0 -1
  139. package/es/tntd-form/_util/motion.js +0 -47
  140. package/es/tntd-form/_util/motion.js.map +0 -1
  141. package/es/tntd-form/_util/reactNode.js +0 -16
  142. package/es/tntd-form/_util/reactNode.js.map +0 -1
  143. package/es/tntd-form/_util/scrollTo.js +0 -35
  144. package/es/tntd-form/_util/scrollTo.js.map +0 -1
  145. package/es/tntd-form/_util/type.js +0 -3
  146. package/es/tntd-form/_util/type.js.map +0 -1
  147. package/es/tntd-form/_util/warning.js +0 -5
  148. package/es/tntd-form/_util/warning.js.map +0 -1
  149. package/es/tntd-form/_util/wave.js +0 -168
  150. package/es/tntd-form/_util/wave.js.map +0 -1
  151. package/es/tntd-form/tntd-form.stories.js +0 -836
  152. package/es/tntd-form/tntd-form.stories.js.map +0 -1
  153. package/es/tntd-select/_util/DisabledContext.js +0 -12
  154. package/es/tntd-select/_util/DisabledContext.js.map +0 -1
  155. package/es/tntd-select/_util/FormItemInputContext.js +0 -2
  156. package/es/tntd-select/_util/FormItemInputContext.js.map +0 -1
  157. package/es/tntd-select/_util/PurePanel.js +0 -66
  158. package/es/tntd-select/_util/PurePanel.js.map +0 -1
  159. package/es/tntd-select/_util/SizeContext.js +0 -2
  160. package/es/tntd-select/_util/SizeContext.js.map +0 -1
  161. package/es/tntd-select/_util/context.js +0 -12
  162. package/es/tntd-select/_util/context.js.map +0 -1
  163. package/es/tntd-select/_util/defaultRenderEmpty.js +0 -31
  164. package/es/tntd-select/_util/defaultRenderEmpty.js.map +0 -1
  165. package/es/tntd-select/_util/getIcons.js +0 -74
  166. package/es/tntd-select/_util/getIcons.js.map +0 -1
  167. package/es/tntd-select/_util/interface.js +0 -4
  168. package/es/tntd-select/_util/interface.js.map +0 -1
  169. package/es/tntd-select/_util/motion.js +0 -47
  170. package/es/tntd-select/_util/motion.js.map +0 -1
  171. package/es/tntd-select/_util/type.js +0 -3
  172. package/es/tntd-select/_util/type.js.map +0 -1
  173. package/es/tntd-select/_util/useCompactItemContext.js +0 -26
  174. package/es/tntd-select/_util/useCompactItemContext.js.map +0 -1
  175. package/es/tntd-select/_util/warning.js +0 -14
  176. package/es/tntd-select/_util/warning.js.map +0 -1
  177. package/es/tntd-select/rc-select/BaseSelect.js +0 -524
  178. package/es/tntd-select/rc-select/BaseSelect.js.map +0 -1
  179. package/es/tntd-select/rc-select/OptGroup.js +0 -4
  180. package/es/tntd-select/rc-select/OptGroup.js.map +0 -1
  181. package/es/tntd-select/rc-select/Option.js +0 -4
  182. package/es/tntd-select/rc-select/Option.js.map +0 -1
  183. package/es/tntd-select/rc-select/OptionList.js +0 -346
  184. package/es/tntd-select/rc-select/OptionList.js.map +0 -1
  185. package/es/tntd-select/rc-select/Select.js +0 -440
  186. package/es/tntd-select/rc-select/Select.js.map +0 -1
  187. package/es/tntd-select/rc-select/SelectContext.js +0 -3
  188. package/es/tntd-select/rc-select/SelectContext.js.map +0 -1
  189. package/es/tntd-select/rc-select/SelectTrigger.js +0 -130
  190. package/es/tntd-select/rc-select/SelectTrigger.js.map +0 -1
  191. package/es/tntd-select/rc-select/Selector/Input.js +0 -103
  192. package/es/tntd-select/rc-select/Selector/Input.js.map +0 -1
  193. package/es/tntd-select/rc-select/Selector/MultipleSelector.js +0 -171
  194. package/es/tntd-select/rc-select/Selector/MultipleSelector.js.map +0 -1
  195. package/es/tntd-select/rc-select/Selector/SingleSelector.js +0 -98
  196. package/es/tntd-select/rc-select/Selector/SingleSelector.js.map +0 -1
  197. package/es/tntd-select/rc-select/Selector/index.js +0 -158
  198. package/es/tntd-select/rc-select/Selector/index.js.map +0 -1
  199. package/es/tntd-select/rc-select/TransBtn.js +0 -36
  200. package/es/tntd-select/rc-select/TransBtn.js.map +0 -1
  201. package/es/tntd-select/rc-select/hooks/useAllowClear.js +0 -24
  202. package/es/tntd-select/rc-select/hooks/useAllowClear.js.map +0 -1
  203. package/es/tntd-select/rc-select/hooks/useBaseProps.js +0 -9
  204. package/es/tntd-select/rc-select/hooks/useBaseProps.js.map +0 -1
  205. package/es/tntd-select/rc-select/hooks/useCache.js +0 -38
  206. package/es/tntd-select/rc-select/hooks/useCache.js.map +0 -1
  207. package/es/tntd-select/rc-select/hooks/useDelayReset.js +0 -23
  208. package/es/tntd-select/rc-select/hooks/useDelayReset.js.map +0 -1
  209. package/es/tntd-select/rc-select/hooks/useFilterOptions.js +0 -55
  210. package/es/tntd-select/rc-select/hooks/useFilterOptions.js.map +0 -1
  211. package/es/tntd-select/rc-select/hooks/useId.js +0 -26
  212. package/es/tntd-select/rc-select/hooks/useId.js.map +0 -1
  213. package/es/tntd-select/rc-select/hooks/useLayoutEffect.js +0 -16
  214. package/es/tntd-select/rc-select/hooks/useLayoutEffect.js.map +0 -1
  215. package/es/tntd-select/rc-select/hooks/useLock.js +0 -25
  216. package/es/tntd-select/rc-select/hooks/useLock.js.map +0 -1
  217. package/es/tntd-select/rc-select/hooks/useOptions.js +0 -43
  218. package/es/tntd-select/rc-select/hooks/useOptions.js.map +0 -1
  219. package/es/tntd-select/rc-select/hooks/useRefFunc.js +0 -13
  220. package/es/tntd-select/rc-select/hooks/useRefFunc.js.map +0 -1
  221. package/es/tntd-select/rc-select/hooks/useSelectTriggerControl.js +0 -28
  222. package/es/tntd-select/rc-select/hooks/useSelectTriggerControl.js.map +0 -1
  223. package/es/tntd-select/rc-select/index.js +0 -7
  224. package/es/tntd-select/rc-select/index.js.map +0 -1
  225. package/es/tntd-select/rc-select/interface.js +0 -1
  226. package/es/tntd-select/rc-select/interface.js.map +0 -1
  227. package/es/tntd-select/rc-select/utils/commonUtil.js +0 -30
  228. package/es/tntd-select/rc-select/utils/commonUtil.js.map +0 -1
  229. package/es/tntd-select/rc-select/utils/keyUtil.js +0 -9
  230. package/es/tntd-select/rc-select/utils/keyUtil.js.map +0 -1
  231. package/es/tntd-select/rc-select/utils/legacyUtil.js +0 -55
  232. package/es/tntd-select/rc-select/utils/legacyUtil.js.map +0 -1
  233. package/es/tntd-select/rc-select/utils/platformUtil.js +0 -4
  234. package/es/tntd-select/rc-select/utils/platformUtil.js.map +0 -1
  235. package/es/tntd-select/rc-select/utils/valueUtil.js +0 -112
  236. package/es/tntd-select/rc-select/utils/valueUtil.js.map +0 -1
  237. package/es/tntd-select/rc-select/utils/warningPropsUtil.js +0 -112
  238. package/es/tntd-select/rc-select/utils/warningPropsUtil.js.map +0 -1
  239. package/es/tooltip/style/index.less +0 -187
  240. package/es/transfer/style/customize.less +0 -62
  241. package/es/transfer/style/index.less +0 -191
  242. package/es/tree/style/directory.less +0 -95
  243. package/es/tree/style/index.less +0 -280
  244. package/es/tree/style/mixin.less +0 -29
  245. package/es/tree-select/style/index.less +0 -191
  246. package/es/typography/style/index.less +0 -204
  247. package/es/upload/style/index.less +0 -542
  248. package/lib/affix/style/index.less +0 -6
  249. package/lib/alert/style/index.less +0 -188
  250. package/lib/anchor/style/index.less +0 -82
  251. package/lib/auto-complete/style/index.less +0 -92
  252. package/lib/avatar/style/index.less +0 -59
  253. package/lib/back-top/style/index.less +0 -42
  254. package/lib/back-top/style/responsive.less +0 -11
  255. package/lib/badge/style/index.less +0 -190
  256. package/lib/breadcrumb/style/index.less +0 -51
  257. package/lib/button/style/index.less +0 -224
  258. package/lib/button/style/mixin.less +0 -357
  259. package/lib/calendar/style/index.less +0 -278
  260. package/lib/card/style/index.less +0 -263
  261. package/lib/card/style/size.less +0 -25
  262. package/lib/carousel/style/index.less +0 -238
  263. package/lib/cascader/style/index.less +0 -227
  264. package/lib/checkbox/style/index.less +0 -4
  265. package/lib/checkbox/style/mixin.less +0 -220
  266. package/lib/collapse/style/index.less +0 -134
  267. package/lib/comment/style/index.less +0 -93
  268. package/lib/config-provider/style/index.less +0 -2
  269. package/lib/date-picker/style/Calendar.less +0 -402
  270. package/lib/date-picker/style/DecadePanel.less +0 -81
  271. package/lib/date-picker/style/MonthPanel.less +0 -86
  272. package/lib/date-picker/style/MonthPicker.less +0 -11
  273. package/lib/date-picker/style/Picker.less +0 -113
  274. package/lib/date-picker/style/RangePicker.less +0 -248
  275. package/lib/date-picker/style/TimePicker.less +0 -151
  276. package/lib/date-picker/style/WeekPicker.less +0 -21
  277. package/lib/date-picker/style/YearPanel.less +0 -85
  278. package/lib/date-picker/style/index.less +0 -17
  279. package/lib/descriptions/style/index.less +0 -144
  280. package/lib/divider/style/index.less +0 -109
  281. package/lib/drawer/style/drawer.less +0 -230
  282. package/lib/drawer/style/index.less +0 -3
  283. package/lib/dropdown/style/index.less +0 -282
  284. package/lib/empty/style/index.less +0 -52
  285. package/lib/form/style/index.less +0 -653
  286. package/lib/form/style/mixin.less +0 -126
  287. package/lib/grid-v4/style/index.less +0 -124
  288. package/lib/grid-v4/style/mixin.less +0 -57
  289. package/lib/grid-v4/style/rtl.less +0 -69
  290. package/lib/handle/handle.d.ts +0 -3
  291. package/lib/handle/handle.d.ts.map +0 -1
  292. package/lib/handle/handle.js +0 -181
  293. package/lib/handle/handle.js.map +0 -1
  294. package/lib/icon/style/index.less +0 -4
  295. package/lib/input/style/index.less +0 -57
  296. package/lib/input/style/mixin.less +0 -449
  297. package/lib/input/style/search-input.less +0 -34
  298. package/lib/input-number/style/index.less +0 -179
  299. package/lib/layout/style/index.less +0 -124
  300. package/lib/layout/style/light.less +0 -15
  301. package/lib/list/style/bordered.less +0 -41
  302. package/lib/list/style/index.less +0 -234
  303. package/lib/list/style/responsive.less +0 -40
  304. package/lib/locale-provider/style/index.less +0 -2
  305. package/lib/mention/index.js +0 -25
  306. package/lib/mentions/style/index.less +0 -164
  307. package/lib/menu/style/dark.less +0 -139
  308. package/lib/menu/style/index.less +0 -515
  309. package/lib/message/style/index.less +0 -75
  310. package/lib/modal/style/confirm.less +0 -78
  311. package/lib/modal/style/index.less +0 -4
  312. package/lib/modal/style/modal.less +0 -165
  313. package/lib/notification/style/index.less +0 -199
  314. package/lib/page-header/style/index.less +0 -119
  315. package/lib/pagination/style/index.less +0 -400
  316. package/lib/popover/style/index.less +0 -205
  317. package/lib/progress/style/index.less +0 -182
  318. package/lib/radio/style/index.less +0 -327
  319. package/lib/rate/style/index.less +0 -85
  320. package/lib/result/style/index.less +0 -71
  321. package/lib/select/style/index.less +0 -604
  322. package/lib/skeleton/style/index.less +0 -130
  323. package/lib/slider/style/index.less +0 -197
  324. package/lib/spin/style/index.less +0 -214
  325. package/lib/statistic/style/index.less +0 -40
  326. package/lib/steps/style/compatibility.less +0 -50
  327. package/lib/steps/style/custom-icon.less +0 -31
  328. package/lib/steps/style/label-placement.less +0 -38
  329. package/lib/steps/style/progress-dot.less +0 -80
  330. package/lib/steps/style/vertical.less +0 -74
  331. package/lib/style/color/bezierEasing.less +0 -110
  332. package/lib/style/color/colorPalette.less +0 -75
  333. package/lib/style/color/colors.less +0 -149
  334. package/lib/style/color/tinyColor.less +0 -1184
  335. package/lib/style/core/base.less +0 -510
  336. package/lib/style/core/iconfont.less +0 -19
  337. package/lib/style/core/index.less +0 -4
  338. package/lib/style/core/motion/fade.less +0 -31
  339. package/lib/style/core/motion/move.less +0 -120
  340. package/lib/style/core/motion/other.less +0 -40
  341. package/lib/style/core/motion/slide.less +0 -120
  342. package/lib/style/core/motion/swing.less +0 -34
  343. package/lib/style/core/motion/zoom.less +0 -162
  344. package/lib/style/core/motion.less +0 -20
  345. package/lib/style/index.less +0 -2
  346. package/lib/style/mixins/clearfix.less +0 -13
  347. package/lib/style/mixins/compatibility.less +0 -22
  348. package/lib/style/mixins/iconfont.less +0 -43
  349. package/lib/style/mixins/index.less +0 -10
  350. package/lib/style/mixins/motion.less +0 -35
  351. package/lib/style/mixins/operation-unit.less +0 -18
  352. package/lib/style/mixins/reset.less +0 -13
  353. package/lib/style/mixins/size.less +0 -10
  354. package/lib/style/mixins/typography.less +0 -49
  355. package/lib/style/themes/default.less +0 -699
  356. package/lib/style/themes/index.less +0 -1
  357. package/lib/style/v2-compatible-reset.less +0 -51
  358. package/lib/switch/style/index.less +0 -178
  359. package/lib/table/style/index.less +0 -800
  360. package/lib/table/style/size.less +0 -179
  361. package/lib/tabs/style/card-style.less +0 -186
  362. package/lib/tabs/style/index.less +0 -436
  363. package/lib/tag/style/index.less +0 -106
  364. package/lib/time-picker/style/index.less +0 -246
  365. package/lib/timeline/style/index.less +0 -167
  366. package/lib/tntd-form/TntdForm/components/Item.js +0 -65
  367. package/lib/tntd-form/TntdForm/components/ItemComp.js +0 -215
  368. package/lib/tntd-form/TntdForm/components/List.js +0 -123
  369. package/lib/tntd-form/TntdForm/index.js +0 -72
  370. package/lib/tntd-form/TntdForm/interface.js +0 -5
  371. package/lib/tntd-form/TntdForm/store.js +0 -10
  372. package/lib/tntd-form/TntdForm/utils.js +0 -239
  373. package/lib/tntd-form/_util/motion.d.ts +0 -9
  374. package/lib/tntd-form/_util/motion.d.ts.map +0 -1
  375. package/lib/tntd-form/_util/motion.js +0 -59
  376. package/lib/tntd-form/_util/motion.js.map +0 -1
  377. package/lib/tntd-form/_util/reactNode.d.ts +0 -9
  378. package/lib/tntd-form/_util/reactNode.d.ts.map +0 -1
  379. package/lib/tntd-form/_util/reactNode.js +0 -27
  380. package/lib/tntd-form/_util/reactNode.js.map +0 -1
  381. package/lib/tntd-form/_util/scrollTo.d.ts +0 -1
  382. package/lib/tntd-form/_util/scrollTo.d.ts.map +0 -1
  383. package/lib/tntd-form/_util/scrollTo.js +0 -35
  384. package/lib/tntd-form/_util/scrollTo.js.map +0 -1
  385. package/lib/tntd-form/_util/type.d.ts +0 -4
  386. package/lib/tntd-form/_util/type.d.ts.map +0 -1
  387. package/lib/tntd-form/_util/type.js +0 -21
  388. package/lib/tntd-form/_util/type.js.map +0 -1
  389. package/lib/tntd-form/_util/warning.d.ts +0 -5
  390. package/lib/tntd-form/_util/warning.d.ts.map +0 -1
  391. package/lib/tntd-form/_util/warning.js +0 -20
  392. package/lib/tntd-form/_util/warning.js.map +0 -1
  393. package/lib/tntd-form/_util/wave.d.ts +0 -1
  394. package/lib/tntd-form/_util/wave.d.ts.map +0 -1
  395. package/lib/tntd-form/_util/wave.js +0 -168
  396. package/lib/tntd-form/_util/wave.js.map +0 -1
  397. package/lib/tntd-form/tntd-form.stories.d.ts +0 -33
  398. package/lib/tntd-form/tntd-form.stories.d.ts.map +0 -1
  399. package/lib/tntd-form/tntd-form.stories.js +0 -943
  400. package/lib/tntd-form/tntd-form.stories.js.map +0 -1
  401. package/lib/tntd-select/_util/DisabledContext.d.ts +0 -10
  402. package/lib/tntd-select/_util/DisabledContext.d.ts.map +0 -1
  403. package/lib/tntd-select/_util/DisabledContext.js +0 -22
  404. package/lib/tntd-select/_util/DisabledContext.js.map +0 -1
  405. package/lib/tntd-select/_util/FormItemInputContext.d.ts +0 -4
  406. package/lib/tntd-select/_util/FormItemInputContext.d.ts.map +0 -1
  407. package/lib/tntd-select/_util/FormItemInputContext.js +0 -12
  408. package/lib/tntd-select/_util/FormItemInputContext.js.map +0 -1
  409. package/lib/tntd-select/_util/PurePanel.d.ts +0 -9
  410. package/lib/tntd-select/_util/PurePanel.d.ts.map +0 -1
  411. package/lib/tntd-select/_util/PurePanel.js +0 -90
  412. package/lib/tntd-select/_util/PurePanel.js.map +0 -1
  413. package/lib/tntd-select/_util/SizeContext.d.ts +0 -4
  414. package/lib/tntd-select/_util/SizeContext.d.ts.map +0 -1
  415. package/lib/tntd-select/_util/SizeContext.js +0 -12
  416. package/lib/tntd-select/_util/SizeContext.js.map +0 -1
  417. package/lib/tntd-select/_util/context.d.ts +0 -42
  418. package/lib/tntd-select/_util/context.d.ts.map +0 -1
  419. package/lib/tntd-select/_util/context.js +0 -22
  420. package/lib/tntd-select/_util/context.js.map +0 -1
  421. package/lib/tntd-select/_util/defaultRenderEmpty.d.ts +0 -5
  422. package/lib/tntd-select/_util/defaultRenderEmpty.d.ts.map +0 -1
  423. package/lib/tntd-select/_util/defaultRenderEmpty.js +0 -44
  424. package/lib/tntd-select/_util/defaultRenderEmpty.js.map +0 -1
  425. package/lib/tntd-select/_util/getIcons.d.ts +0 -25
  426. package/lib/tntd-select/_util/getIcons.d.ts.map +0 -1
  427. package/lib/tntd-select/_util/getIcons.js +0 -84
  428. package/lib/tntd-select/_util/getIcons.js.map +0 -1
  429. package/lib/tntd-select/_util/interface.d.ts +0 -25
  430. package/lib/tntd-select/_util/interface.d.ts.map +0 -1
  431. package/lib/tntd-select/_util/interface.js +0 -16
  432. package/lib/tntd-select/_util/interface.js.map +0 -1
  433. package/lib/tntd-select/_util/motion.d.ts +0 -9
  434. package/lib/tntd-select/_util/motion.d.ts.map +0 -1
  435. package/lib/tntd-select/_util/motion.js +0 -59
  436. package/lib/tntd-select/_util/motion.js.map +0 -1
  437. package/lib/tntd-select/_util/type.d.ts +0 -10
  438. package/lib/tntd-select/_util/type.d.ts.map +0 -1
  439. package/lib/tntd-select/_util/type.js +0 -21
  440. package/lib/tntd-select/_util/type.js.map +0 -1
  441. package/lib/tntd-select/_util/useCompactItemContext.d.ts +0 -9
  442. package/lib/tntd-select/_util/useCompactItemContext.d.ts.map +0 -1
  443. package/lib/tntd-select/_util/useCompactItemContext.js +0 -35
  444. package/lib/tntd-select/_util/useCompactItemContext.js.map +0 -1
  445. package/lib/tntd-select/_util/warning.d.ts +0 -4
  446. package/lib/tntd-select/_util/warning.d.ts.map +0 -1
  447. package/lib/tntd-select/_util/warning.js +0 -24
  448. package/lib/tntd-select/_util/warning.js.map +0 -1
  449. package/lib/tntd-select/rc-select/BaseSelect.d.ts +0 -114
  450. package/lib/tntd-select/rc-select/BaseSelect.d.ts.map +0 -1
  451. package/lib/tntd-select/rc-select/BaseSelect.js +0 -566
  452. package/lib/tntd-select/rc-select/BaseSelect.js.map +0 -1
  453. package/lib/tntd-select/rc-select/OptGroup.d.ts +0 -13
  454. package/lib/tntd-select/rc-select/OptGroup.d.ts.map +0 -1
  455. package/lib/tntd-select/rc-select/OptGroup.js +0 -13
  456. package/lib/tntd-select/rc-select/OptGroup.js.map +0 -1
  457. package/lib/tntd-select/rc-select/Option.d.ts +0 -15
  458. package/lib/tntd-select/rc-select/Option.d.ts.map +0 -1
  459. package/lib/tntd-select/rc-select/Option.js +0 -13
  460. package/lib/tntd-select/rc-select/Option.js.map +0 -1
  461. package/lib/tntd-select/rc-select/OptionList.d.ts +0 -11
  462. package/lib/tntd-select/rc-select/OptionList.d.ts.map +0 -1
  463. package/lib/tntd-select/rc-select/OptionList.js +0 -372
  464. package/lib/tntd-select/rc-select/OptionList.js.map +0 -1
  465. package/lib/tntd-select/rc-select/Select.d.ts +0 -115
  466. package/lib/tntd-select/rc-select/Select.d.ts.map +0 -1
  467. package/lib/tntd-select/rc-select/Select.js +0 -509
  468. package/lib/tntd-select/rc-select/Select.js.map +0 -1
  469. package/lib/tntd-select/rc-select/SelectContext.d.ts +0 -23
  470. package/lib/tntd-select/rc-select/SelectContext.d.ts.map +0 -1
  471. package/lib/tntd-select/rc-select/SelectContext.js +0 -13
  472. package/lib/tntd-select/rc-select/SelectContext.js.map +0 -1
  473. package/lib/tntd-select/rc-select/SelectTrigger.d.ts +0 -31
  474. package/lib/tntd-select/rc-select/SelectTrigger.d.ts.map +0 -1
  475. package/lib/tntd-select/rc-select/SelectTrigger.js +0 -149
  476. package/lib/tntd-select/rc-select/SelectTrigger.js.map +0 -1
  477. package/lib/tntd-select/rc-select/Selector/Input.d.ts +0 -27
  478. package/lib/tntd-select/rc-select/Selector/Input.d.ts.map +0 -1
  479. package/lib/tntd-select/rc-select/Selector/Input.js +0 -110
  480. package/lib/tntd-select/rc-select/Selector/Input.js.map +0 -1
  481. package/lib/tntd-select/rc-select/Selector/MultipleSelector.d.ts +0 -17
  482. package/lib/tntd-select/rc-select/Selector/MultipleSelector.d.ts.map +0 -1
  483. package/lib/tntd-select/rc-select/Selector/MultipleSelector.js +0 -193
  484. package/lib/tntd-select/rc-select/Selector/MultipleSelector.js.map +0 -1
  485. package/lib/tntd-select/rc-select/Selector/SingleSelector.d.ts +0 -9
  486. package/lib/tntd-select/rc-select/Selector/SingleSelector.d.ts.map +0 -1
  487. package/lib/tntd-select/rc-select/Selector/SingleSelector.js +0 -116
  488. package/lib/tntd-select/rc-select/Selector/SingleSelector.js.map +0 -1
  489. package/lib/tntd-select/rc-select/Selector/index.d.ts +0 -83
  490. package/lib/tntd-select/rc-select/Selector/index.d.ts.map +0 -1
  491. package/lib/tntd-select/rc-select/Selector/index.js +0 -159
  492. package/lib/tntd-select/rc-select/Selector/index.js.map +0 -1
  493. package/lib/tntd-select/rc-select/TransBtn.d.ts +0 -13
  494. package/lib/tntd-select/rc-select/TransBtn.d.ts.map +0 -1
  495. package/lib/tntd-select/rc-select/TransBtn.js +0 -48
  496. package/lib/tntd-select/rc-select/TransBtn.js.map +0 -1
  497. package/lib/tntd-select/rc-select/hooks/useAllowClear.d.ts +0 -9
  498. package/lib/tntd-select/rc-select/hooks/useAllowClear.d.ts.map +0 -1
  499. package/lib/tntd-select/rc-select/hooks/useAllowClear.js +0 -35
  500. package/lib/tntd-select/rc-select/hooks/useAllowClear.js.map +0 -1
  501. package/lib/tntd-select/rc-select/hooks/useBaseProps.d.ts +0 -14
  502. package/lib/tntd-select/rc-select/hooks/useBaseProps.d.ts.map +0 -1
  503. package/lib/tntd-select/rc-select/hooks/useBaseProps.js +0 -21
  504. package/lib/tntd-select/rc-select/hooks/useBaseProps.js.map +0 -1
  505. package/lib/tntd-select/rc-select/hooks/useCache.d.ts +0 -8
  506. package/lib/tntd-select/rc-select/hooks/useCache.d.ts.map +0 -1
  507. package/lib/tntd-select/rc-select/hooks/useCache.js +0 -49
  508. package/lib/tntd-select/rc-select/hooks/useCache.js.map +0 -1
  509. package/lib/tntd-select/rc-select/hooks/useDelayReset.d.ts +0 -6
  510. package/lib/tntd-select/rc-select/hooks/useDelayReset.d.ts.map +0 -1
  511. package/lib/tntd-select/rc-select/hooks/useDelayReset.js +0 -44
  512. package/lib/tntd-select/rc-select/hooks/useDelayReset.js.map +0 -1
  513. package/lib/tntd-select/rc-select/hooks/useFilterOptions.d.ts +0 -4
  514. package/lib/tntd-select/rc-select/hooks/useFilterOptions.d.ts.map +0 -1
  515. package/lib/tntd-select/rc-select/hooks/useFilterOptions.js +0 -72
  516. package/lib/tntd-select/rc-select/hooks/useFilterOptions.js.map +0 -1
  517. package/lib/tntd-select/rc-select/hooks/useId.d.ts +0 -6
  518. package/lib/tntd-select/rc-select/hooks/useId.d.ts.map +0 -1
  519. package/lib/tntd-select/rc-select/hooks/useId.js +0 -48
  520. package/lib/tntd-select/rc-select/hooks/useId.js.map +0 -1
  521. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.d.ts +0 -6
  522. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.d.ts.map +0 -1
  523. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.js +0 -26
  524. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.js.map +0 -1
  525. package/lib/tntd-select/rc-select/hooks/useLock.d.ts +0 -8
  526. package/lib/tntd-select/rc-select/hooks/useLock.d.ts.map +0 -1
  527. package/lib/tntd-select/rc-select/hooks/useLock.js +0 -39
  528. package/lib/tntd-select/rc-select/hooks/useLock.js.map +0 -1
  529. package/lib/tntd-select/rc-select/hooks/useOptions.d.ts +0 -12
  530. package/lib/tntd-select/rc-select/hooks/useOptions.d.ts.map +0 -1
  531. package/lib/tntd-select/rc-select/hooks/useOptions.js +0 -53
  532. package/lib/tntd-select/rc-select/hooks/useOptions.js.map +0 -1
  533. package/lib/tntd-select/rc-select/hooks/useRefFunc.d.ts +0 -6
  534. package/lib/tntd-select/rc-select/hooks/useRefFunc.d.ts.map +0 -1
  535. package/lib/tntd-select/rc-select/hooks/useRefFunc.js +0 -22
  536. package/lib/tntd-select/rc-select/hooks/useRefFunc.js.map +0 -1
  537. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.d.ts +0 -2
  538. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.d.ts.map +0 -1
  539. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.js +0 -43
  540. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.js.map +0 -1
  541. package/lib/tntd-select/rc-select/index.d.ts +0 -11
  542. package/lib/tntd-select/rc-select/index.d.ts.map +0 -1
  543. package/lib/tntd-select/rc-select/index.js +0 -38
  544. package/lib/tntd-select/rc-select/index.js.map +0 -1
  545. package/lib/tntd-select/rc-select/interface.d.ts +0 -23
  546. package/lib/tntd-select/rc-select/interface.d.ts.map +0 -1
  547. package/lib/tntd-select/rc-select/interface.js +0 -5
  548. package/lib/tntd-select/rc-select/interface.js.map +0 -1
  549. package/lib/tntd-select/rc-select/utils/commonUtil.d.ts +0 -10
  550. package/lib/tntd-select/rc-select/utils/commonUtil.d.ts.map +0 -1
  551. package/lib/tntd-select/rc-select/utils/commonUtil.js +0 -43
  552. package/lib/tntd-select/rc-select/utils/commonUtil.js.map +0 -1
  553. package/lib/tntd-select/rc-select/utils/keyUtil.d.ts +0 -3
  554. package/lib/tntd-select/rc-select/utils/keyUtil.d.ts.map +0 -1
  555. package/lib/tntd-select/rc-select/utils/keyUtil.js +0 -16
  556. package/lib/tntd-select/rc-select/utils/keyUtil.js.map +0 -1
  557. package/lib/tntd-select/rc-select/utils/legacyUtil.d.ts +0 -4
  558. package/lib/tntd-select/rc-select/utils/legacyUtil.d.ts.map +0 -1
  559. package/lib/tntd-select/rc-select/utils/legacyUtil.js +0 -60
  560. package/lib/tntd-select/rc-select/utils/legacyUtil.js.map +0 -1
  561. package/lib/tntd-select/rc-select/utils/platformUtil.d.ts +0 -2
  562. package/lib/tntd-select/rc-select/utils/platformUtil.d.ts.map +0 -1
  563. package/lib/tntd-select/rc-select/utils/platformUtil.js +0 -10
  564. package/lib/tntd-select/rc-select/utils/platformUtil.js.map +0 -1
  565. package/lib/tntd-select/rc-select/utils/valueUtil.d.ts +0 -24
  566. package/lib/tntd-select/rc-select/utils/valueUtil.d.ts.map +0 -1
  567. package/lib/tntd-select/rc-select/utils/valueUtil.js +0 -132
  568. package/lib/tntd-select/rc-select/utils/valueUtil.js.map +0 -1
  569. package/lib/tntd-select/rc-select/utils/warningPropsUtil.d.ts +0 -5
  570. package/lib/tntd-select/rc-select/utils/warningPropsUtil.d.ts.map +0 -1
  571. package/lib/tntd-select/rc-select/utils/warningPropsUtil.js +0 -127
  572. package/lib/tntd-select/rc-select/utils/warningPropsUtil.js.map +0 -1
  573. package/lib/tooltip/style/index.less +0 -187
  574. package/lib/transfer/style/customize.less +0 -62
  575. package/lib/transfer/style/index.less +0 -191
  576. package/lib/tree/style/directory.less +0 -95
  577. package/lib/tree/style/index.less +0 -280
  578. package/lib/tree/style/mixin.less +0 -29
  579. package/lib/tree-select/style/index.less +0 -191
  580. package/lib/typography/style/index.less +0 -204
  581. package/lib/upload/style/index.less +0 -542
@@ -1,440 +0,0 @@
1
- /**
2
- * To match accessibility requirement, we always provide an input in the component.
3
- * Other element will not set `tabIndex` to avoid `onBlur` sequence problem.
4
- * For focused select, we set `aria-live="polite"` to update the accessibility content.
5
- *
6
- * ref:
7
- * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions
8
- *
9
- * New api:
10
- * - listHeight
11
- * - listItemHeight
12
- * - component
13
- *
14
- * Remove deprecated api:
15
- * - multiple
16
- * - tags
17
- * - combobox
18
- * - firstActiveValue
19
- * - dropdownMenuStyle
20
- * - openClassName (Not list in api)
21
- *
22
- * Update:
23
- * - `backfill` only support `combobox` mode
24
- * - `combobox` mode not support `labelInValue` since it's meaningless
25
- * - `getInputElement` only support `combobox` mode
26
- * - `onChange` return OptionData instead of ReactNode
27
- * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode
28
- * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option
29
- * - `combobox` mode not support `optionLabelProp`
30
- */
31
- var __rest = this && this.__rest || function (s, e) {
32
- var t = {};
33
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
34
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
35
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
36
- }
37
- return t;
38
- };
39
- import useMergedState from 'rc-util/lib/hooks/useMergedState';
40
- import warning from 'rc-util/lib/warning';
41
- import * as React from 'react';
42
- import BaseSelect, { isMultiple } from './BaseSelect';
43
- import OptGroup from './OptGroup';
44
- import Option from './Option';
45
- import OptionList from './OptionList';
46
- import SelectContext from './SelectContext';
47
- import useCache from './hooks/useCache';
48
- import useFilterOptions from './hooks/useFilterOptions';
49
- import useId from './hooks/useId';
50
- import useOptions from './hooks/useOptions';
51
- import useRefFunc from './hooks/useRefFunc';
52
- import { hasValue, isComboNoValue, toArray } from './utils/commonUtil';
53
- import { fillFieldNames, flattenOptions, injectPropsWithOption } from './utils/valueUtil';
54
- import warningProps, { warningNullOptions } from './utils/warningPropsUtil';
55
- const OMIT_DOM_PROPS = ['inputValue'];
56
- function isRawValue(value) {
57
- return !value || typeof value !== 'object';
58
- }
59
- const Select = React.forwardRef((props, ref) => {
60
- const {
61
- id,
62
- mode,
63
- prefixCls = 'rc-select',
64
- backfill,
65
- fieldNames,
66
- // Search
67
- inputValue,
68
- searchValue,
69
- onSearch,
70
- autoClearSearchValue = true,
71
- // Select
72
- onSelect,
73
- onDeselect,
74
- dropdownMatchSelectWidth = true,
75
- // Options
76
- filterOption,
77
- filterSort,
78
- optionFilterProp,
79
- optionLabelProp,
80
- options,
81
- optionRender,
82
- children,
83
- defaultActiveFirstOption,
84
- menuItemSelectedIcon,
85
- virtual,
86
- direction,
87
- listHeight = 200,
88
- listItemHeight = 20,
89
- // Value
90
- value,
91
- defaultValue,
92
- labelInValue,
93
- onChange
94
- } = props,
95
- restProps = __rest(props, ["id", "mode", "prefixCls", "backfill", "fieldNames", "inputValue", "searchValue", "onSearch", "autoClearSearchValue", "onSelect", "onDeselect", "dropdownMatchSelectWidth", "filterOption", "filterSort", "optionFilterProp", "optionLabelProp", "options", "optionRender", "children", "defaultActiveFirstOption", "menuItemSelectedIcon", "virtual", "direction", "listHeight", "listItemHeight", "value", "defaultValue", "labelInValue", "onChange"]);
96
- const mergedId = useId(id);
97
- const multiple = isMultiple(mode);
98
- const childrenAsData = !!(!options && children);
99
- const mergedFilterOption = React.useMemo(() => {
100
- if (filterOption === undefined && mode === 'combobox') {
101
- return false;
102
- }
103
- return filterOption;
104
- }, [filterOption, mode]);
105
- // ========================= FieldNames =========================
106
- const mergedFieldNames = React.useMemo(() => fillFieldNames(fieldNames, childrenAsData), /* eslint-disable react-hooks/exhaustive-deps */
107
- [
108
- // We stringify fieldNames to avoid unnecessary re-renders.
109
- JSON.stringify(fieldNames), childrenAsData]);
110
- // =========================== Search ===========================
111
- const [mergedSearchValue, setSearchValue] = useMergedState('', {
112
- value: searchValue !== undefined ? searchValue : inputValue,
113
- postState: search => search || ''
114
- });
115
- // =========================== Option ===========================
116
- const parsedOptions = useOptions(options, children, mergedFieldNames, optionFilterProp, optionLabelProp);
117
- const {
118
- valueOptions,
119
- labelOptions,
120
- options: mergedOptions
121
- } = parsedOptions;
122
- // ========================= Wrap Value =========================
123
- const convert2LabelValues = React.useCallback(draftValues => {
124
- // Convert to array
125
- const valueList = toArray(draftValues);
126
- // Convert to labelInValue type
127
- return valueList.map(val => {
128
- var _a, _b;
129
- let rawValue;
130
- let rawLabel;
131
- let rawKey;
132
- let rawDisabled;
133
- let rawTitle;
134
- // Fill label & value
135
- if (isRawValue(val)) {
136
- rawValue = val;
137
- } else {
138
- rawKey = val.key;
139
- rawLabel = val.label;
140
- rawValue = (_a = val.value) !== null && _a !== void 0 ? _a : rawKey;
141
- }
142
- const option = valueOptions.get(rawValue);
143
- if (option) {
144
- // Fill missing props
145
- if (rawLabel === undefined) rawLabel = option === null || option === void 0 ? void 0 : option[optionLabelProp || mergedFieldNames.label];
146
- if (rawKey === undefined) rawKey = (_b = option === null || option === void 0 ? void 0 : option.key) !== null && _b !== void 0 ? _b : rawValue;
147
- rawDisabled = option === null || option === void 0 ? void 0 : option.disabled;
148
- rawTitle = option === null || option === void 0 ? void 0 : option.title;
149
- // Warning if label not same as provided
150
- if (process.env.NODE_ENV !== 'production' && !optionLabelProp) {
151
- const optionLabel = option === null || option === void 0 ? void 0 : option[mergedFieldNames.label];
152
- if (optionLabel !== undefined && !React.isValidElement(optionLabel) && !React.isValidElement(rawLabel) && optionLabel !== rawLabel) {
153
- warning(false, '`label` of `value` is not same as `label` in Select options.');
154
- }
155
- }
156
- }
157
- return {
158
- label: rawLabel,
159
- value: rawValue,
160
- key: rawKey,
161
- disabled: rawDisabled,
162
- title: rawTitle
163
- };
164
- });
165
- }, [mergedFieldNames, optionLabelProp, valueOptions]);
166
- // =========================== Values ===========================
167
- const [internalValue, setInternalValue] = useMergedState(defaultValue, {
168
- value
169
- });
170
- // Merged value with LabelValueType
171
- const rawLabeledValues = React.useMemo(() => {
172
- var _a;
173
- const values = convert2LabelValues(internalValue);
174
- // combobox no need save value when it's no value (exclude value equal 0)
175
- if (mode === 'combobox' && isComboNoValue((_a = values[0]) === null || _a === void 0 ? void 0 : _a.value)) {
176
- return [];
177
- }
178
- return values;
179
- }, [internalValue, convert2LabelValues, mode]);
180
- // Fill label with cache to avoid option remove
181
- const [mergedValues, getMixedOption] = useCache(rawLabeledValues, valueOptions);
182
- const displayValues = React.useMemo(() => {
183
- // `null` need show as placeholder instead
184
- // https://github.com/ant-design/ant-design/issues/25057
185
- if (!mode && mergedValues.length === 1) {
186
- const firstValue = mergedValues[0];
187
- if (firstValue.value === null && (firstValue.label === null || firstValue.label === undefined)) {
188
- return [];
189
- }
190
- }
191
- return mergedValues.map(item => {
192
- var _a;
193
- return Object.assign(Object.assign({}, item), {
194
- label: (_a = item.label) !== null && _a !== void 0 ? _a : item.value
195
- });
196
- });
197
- }, [mode, mergedValues]);
198
- /** Convert `displayValues` to raw value type set */
199
- const rawValues = React.useMemo(() => new Set(mergedValues.map(val => val.value)), [mergedValues]);
200
- React.useEffect(() => {
201
- var _a;
202
- if (mode === 'combobox') {
203
- const strValue = (_a = mergedValues[0]) === null || _a === void 0 ? void 0 : _a.value;
204
- setSearchValue(hasValue(strValue) ? String(strValue) : '');
205
- }
206
- }, [mergedValues]);
207
- // ======================= Display Option =======================
208
- // Create a placeholder item if not exist in `options`
209
- const createTagOption = useRefFunc((val, label) => {
210
- const mergedLabel = label !== null && label !== void 0 ? label : val;
211
- return {
212
- [mergedFieldNames.value]: val,
213
- [mergedFieldNames.label]: mergedLabel
214
- };
215
- });
216
- // Fill tag as option if mode is `tags`
217
- const filledTagOptions = React.useMemo(() => {
218
- if (mode !== 'tags') {
219
- return mergedOptions;
220
- }
221
- // >>> Tag mode
222
- const cloneOptions = [...mergedOptions];
223
- // Check if value exist in options (include new patch item)
224
- const existOptions = val => valueOptions.has(val);
225
- // Fill current value as option
226
- [...mergedValues].sort((a, b) => a.value < b.value ? -1 : 1).forEach(item => {
227
- const val = item.value;
228
- if (!existOptions(val)) {
229
- cloneOptions.push(createTagOption(val, item.label));
230
- }
231
- });
232
- return cloneOptions;
233
- }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]);
234
- const filteredOptions = useFilterOptions(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, optionFilterProp);
235
- // Fill options with search value if needed
236
- const filledSearchOptions = React.useMemo(() => {
237
- if (mode !== 'tags' || !mergedSearchValue || filteredOptions.some(item => item[optionFilterProp || 'value'] === mergedSearchValue)) {
238
- return filteredOptions;
239
- }
240
- // ignore when search value equal select input value
241
- if (filteredOptions.some(item => item[mergedFieldNames.value] === mergedSearchValue)) {
242
- return filteredOptions;
243
- }
244
- // Fill search value as option
245
- return [createTagOption(mergedSearchValue), ...filteredOptions];
246
- }, [createTagOption, optionFilterProp, mode, filteredOptions, mergedSearchValue, mergedFieldNames]);
247
- const orderedFilteredOptions = React.useMemo(() => {
248
- if (!filterSort) {
249
- return filledSearchOptions;
250
- }
251
- return [...filledSearchOptions].sort((a, b) => filterSort(a, b));
252
- }, [filledSearchOptions, filterSort]);
253
- const displayOptions = React.useMemo(() => flattenOptions(orderedFilteredOptions, {
254
- fieldNames: mergedFieldNames,
255
- childrenAsData
256
- }), [orderedFilteredOptions, mergedFieldNames, childrenAsData]);
257
- // =========================== Change ===========================
258
- const triggerChange = values => {
259
- const labeledValues = convert2LabelValues(values);
260
- setInternalValue(labeledValues);
261
- if (onChange && (
262
- // Trigger event only when value changed
263
- labeledValues.length !== mergedValues.length || labeledValues.some((newVal, index) => {
264
- var _a;
265
- return ((_a = mergedValues[index]) === null || _a === void 0 ? void 0 : _a.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value);
266
- }))) {
267
- const returnValues = labelInValue ? labeledValues : labeledValues.map(v => v.value);
268
- const returnOptions = labeledValues.map(v => injectPropsWithOption(getMixedOption(v.value)));
269
- onChange(
270
- // Value
271
- multiple ? returnValues : returnValues[0],
272
- // Option
273
- multiple ? returnOptions : returnOptions[0]);
274
- }
275
- };
276
- // ======================= Accessibility ========================
277
- const [activeValue, setActiveValue] = React.useState(null);
278
- const [accessibilityIndex, setAccessibilityIndex] = React.useState(0);
279
- const mergedDefaultActiveFirstOption = defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox';
280
- const onActiveValue = React.useCallback((active, index, {
281
- source = 'keyboard'
282
- } = {}) => {
283
- setAccessibilityIndex(index);
284
- if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') {
285
- setActiveValue(String(active));
286
- }
287
- }, [backfill, mode]);
288
- // ========================= OptionList =========================
289
- const triggerSelect = (val, selected, type) => {
290
- const getSelectEnt = () => {
291
- var _a;
292
- const option = getMixedOption(val);
293
- return [labelInValue ? {
294
- label: option === null || option === void 0 ? void 0 : option[mergedFieldNames.label],
295
- value: val,
296
- key: (_a = option === null || option === void 0 ? void 0 : option.key) !== null && _a !== void 0 ? _a : val
297
- } : val, injectPropsWithOption(option)];
298
- };
299
- if (selected && onSelect) {
300
- const [wrappedValue, option] = getSelectEnt();
301
- onSelect(wrappedValue, option);
302
- } else if (!selected && onDeselect && type !== 'clear') {
303
- const [wrappedValue, option] = getSelectEnt();
304
- onDeselect(wrappedValue, option);
305
- }
306
- };
307
- // Used for OptionList selection
308
- const onInternalSelect = useRefFunc((val, info) => {
309
- let cloneValues;
310
- // Single mode always trigger select only with option list
311
- const mergedSelect = multiple ? info.selected : true;
312
- if (mergedSelect) {
313
- cloneValues = multiple ? [...mergedValues, val] : [val];
314
- } else {
315
- cloneValues = mergedValues.filter(v => v.value !== val);
316
- }
317
- triggerChange(cloneValues);
318
- triggerSelect(val, mergedSelect);
319
- // Clean search value if single or configured
320
- if (mode === 'combobox') {
321
- // setSearchValue(String(val));
322
- setActiveValue('');
323
- } else if (!isMultiple || autoClearSearchValue) {
324
- setSearchValue('');
325
- setActiveValue('');
326
- }
327
- });
328
- // ======================= Display Change =======================
329
- // BaseSelect display values change
330
- const onDisplayValuesChange = (nextValues, info) => {
331
- triggerChange(nextValues);
332
- const {
333
- type,
334
- values
335
- } = info;
336
- if (type === 'remove' || type === 'clear') {
337
- values.forEach(item => {
338
- triggerSelect(item.value, false, type);
339
- });
340
- }
341
- };
342
- // =========================== Search ===========================
343
- const onInternalSearch = (searchText, info) => {
344
- setSearchValue(searchText);
345
- setActiveValue(null);
346
- // [Submit] Tag mode should flush input
347
- if (info.source === 'submit') {
348
- const formatted = (searchText || '').trim();
349
- // prevent empty tags from appearing when you click the Enter button
350
- if (formatted) {
351
- const newRawValues = Array.from(new Set([...rawValues, formatted]));
352
- triggerChange(newRawValues);
353
- triggerSelect(formatted, true);
354
- setSearchValue('');
355
- }
356
- return;
357
- }
358
- if (info.source !== 'blur') {
359
- if (mode === 'combobox') {
360
- triggerChange(searchText);
361
- }
362
- onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchText);
363
- }
364
- };
365
- const onInternalSearchSplit = words => {
366
- let patchValues = words;
367
- if (mode !== 'tags') {
368
- patchValues = words.map(word => {
369
- const opt = labelOptions.get(word);
370
- return opt === null || opt === void 0 ? void 0 : opt.value;
371
- }).filter(val => val !== undefined);
372
- }
373
- const newRawValues = Array.from(new Set([...rawValues, ...patchValues]));
374
- triggerChange(newRawValues);
375
- newRawValues.forEach(newRawValue => {
376
- triggerSelect(newRawValue, true);
377
- });
378
- };
379
- // ========================== Context ===========================
380
- const selectContext = React.useMemo(() => {
381
- const realVirtual = virtual !== false && dropdownMatchSelectWidth !== false;
382
- return Object.assign(Object.assign({}, parsedOptions), {
383
- flattenOptions: displayOptions,
384
- onActiveValue,
385
- defaultActiveFirstOption: mergedDefaultActiveFirstOption,
386
- onSelect: onInternalSelect,
387
- menuItemSelectedIcon,
388
- rawValues,
389
- fieldNames: mergedFieldNames,
390
- virtual: realVirtual,
391
- direction,
392
- listHeight,
393
- listItemHeight,
394
- childrenAsData,
395
- optionRender
396
- });
397
- }, [parsedOptions, displayOptions, onActiveValue, mergedDefaultActiveFirstOption, onInternalSelect, menuItemSelectedIcon, rawValues, mergedFieldNames, virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, childrenAsData, optionRender]);
398
- // ========================== Warning ===========================
399
- if (process.env.NODE_ENV !== 'production') {
400
- warningProps(props);
401
- warningNullOptions(mergedOptions, mergedFieldNames);
402
- }
403
- // ==============================================================
404
- // == Render ==
405
- // ==============================================================
406
- return React.createElement(SelectContext.Provider, {
407
- value: selectContext
408
- }, React.createElement(BaseSelect, Object.assign({}, restProps, {
409
- // >>> MISC
410
- id: mergedId,
411
- prefixCls: prefixCls,
412
- ref: ref,
413
- omitDomProps: OMIT_DOM_PROPS,
414
- mode: mode,
415
- // >>> Values
416
- displayValues: displayValues,
417
- onDisplayValuesChange: onDisplayValuesChange,
418
- // >>> Trigger
419
- direction: direction,
420
- // >>> Search
421
- searchValue: mergedSearchValue,
422
- onSearch: onInternalSearch,
423
- autoClearSearchValue: autoClearSearchValue,
424
- onSearchSplit: onInternalSearchSplit,
425
- dropdownMatchSelectWidth: dropdownMatchSelectWidth,
426
- // >>> OptionList
427
- OptionList: OptionList,
428
- emptyOptions: !displayOptions.length,
429
- // >>> Accessibility
430
- activeValue: activeValue,
431
- activeDescendantId: `${mergedId}_list_${accessibilityIndex}`
432
- })));
433
- });
434
- if (process.env.NODE_ENV !== 'production') {
435
- Select.displayName = 'Select';
436
- }
437
- const TypedSelect = Select;
438
- TypedSelect.Option = Option;
439
- TypedSelect.OptGroup = OptGroup;
440
- export default TypedSelect;
@@ -1 +0,0 @@
1
- {"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/tntd-select/rc-select/Select.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * To match accessibility requirement, we always provide an input in the component.\n * Other element will not set `tabIndex` to avoid `onBlur` sequence problem.\n * For focused select, we set `aria-live=\"polite\"` to update the accessibility content.\n *\n * ref:\n * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions\n *\n * New api:\n * - listHeight\n * - listItemHeight\n * - component\n *\n * Remove deprecated api:\n * - multiple\n * - tags\n * - combobox\n * - firstActiveValue\n * - dropdownMenuStyle\n * - openClassName (Not list in api)\n *\n * Update:\n * - `backfill` only support `combobox` mode\n * - `combobox` mode not support `labelInValue` since it's meaningless\n * - `getInputElement` only support `combobox` mode\n * - `onChange` return OptionData instead of ReactNode\n * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode\n * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option\n * - `combobox` mode not support `optionLabelProp`\n */\n\nimport useMergedState from 'rc-util/lib/hooks/useMergedState';\nimport warning from 'rc-util/lib/warning';\nimport * as React from 'react';\nimport type {\n BaseSelectProps,\n BaseSelectPropsWithoutPrivate,\n BaseSelectRef,\n DisplayInfoType,\n DisplayValueType,\n RenderNode,\n} from './BaseSelect';\nimport BaseSelect, { isMultiple } from './BaseSelect';\nimport OptGroup from './OptGroup';\nimport Option from './Option';\nimport OptionList from './OptionList';\nimport SelectContext from './SelectContext';\nimport useCache from './hooks/useCache';\nimport useFilterOptions from './hooks/useFilterOptions';\nimport useId from './hooks/useId';\nimport useOptions from './hooks/useOptions';\nimport useRefFunc from './hooks/useRefFunc';\nimport type { FlattenOptionData } from './interface';\nimport { hasValue, isComboNoValue, toArray } from './utils/commonUtil';\nimport { fillFieldNames, flattenOptions, injectPropsWithOption } from './utils/valueUtil';\nimport warningProps, { warningNullOptions } from './utils/warningPropsUtil';\n\nconst OMIT_DOM_PROPS = ['inputValue'];\n\nexport type OnActiveValue = (\n active: RawValueType,\n index: number,\n info?: { source?: 'keyboard' | 'mouse' },\n) => void;\n\nexport type OnInternalSelect = (value: RawValueType, info: { selected: boolean }) => void;\n\nexport type RawValueType = string | number;\nexport interface LabelInValueType {\n label: React.ReactNode;\n value: RawValueType;\n /** @deprecated `key` is useless since it should always same as `value` */\n key?: React.Key;\n}\n\nexport type DraftValueType =\n | RawValueType\n | LabelInValueType\n | DisplayValueType\n | (RawValueType | LabelInValueType | DisplayValueType)[];\n\nexport type FilterFunc<OptionType> = (inputValue: string, option?: OptionType) => boolean;\n\nexport interface FieldNames {\n value?: string;\n label?: string;\n groupLabel?: string;\n options?: string;\n}\n\nexport interface BaseOptionType {\n disabled?: boolean;\n [name: string]: any;\n}\n\nexport interface DefaultOptionType extends BaseOptionType {\n label: React.ReactNode;\n value?: string | number | null;\n children?: Omit<DefaultOptionType, 'children'>[];\n}\n\nexport type SelectHandler<ValueType, OptionType extends BaseOptionType = DefaultOptionType> = (\n value: ValueType,\n option: OptionType,\n) => void;\n\ntype ArrayElementType<T> = T extends (infer E)[] ? E : T;\n\nexport interface SelectProps<ValueType = any, OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseSelectPropsWithoutPrivate {\n prefixCls?: string;\n id?: string;\n\n backfill?: boolean;\n\n // >>> Field Names\n fieldNames?: FieldNames;\n\n // >>> Search\n /** @deprecated Use `searchValue` instead */\n inputValue?: string;\n searchValue?: string;\n onSearch?: (value: string) => void;\n autoClearSearchValue?: boolean;\n\n // >>> Select\n onSelect?: SelectHandler<ArrayElementType<ValueType>, OptionType>;\n onDeselect?: SelectHandler<ArrayElementType<ValueType>, OptionType>;\n\n // >>> Options\n /**\n * In Select, `false` means do nothing.\n * In TreeSelect, `false` will highlight match item.\n * It's by design.\n */\n filterOption?: boolean | FilterFunc<OptionType>;\n filterSort?: (optionA: OptionType, optionB: OptionType) => number;\n optionFilterProp?: string;\n optionLabelProp?: string;\n children?: React.ReactNode;\n options?: OptionType[];\n optionRender?: (\n oriOption: FlattenOptionData<BaseOptionType>,\n info: { index: number },\n ) => React.ReactNode;\n defaultActiveFirstOption?: boolean;\n virtual?: boolean;\n direction?: 'ltr' | 'rtl';\n listHeight?: number;\n listItemHeight?: number;\n\n // >>> Icon\n menuItemSelectedIcon?: RenderNode;\n\n mode?: 'combobox' | 'multiple' | 'tags';\n labelInValue?: boolean;\n value?: ValueType | null;\n defaultValue?: ValueType | null;\n onChange?: (value: ValueType, option: OptionType | OptionType[]) => void;\n}\n\nfunction isRawValue(value: DraftValueType): value is RawValueType {\n return !value || typeof value !== 'object';\n}\n\nconst Select = React.forwardRef(\n (props: SelectProps<any, DefaultOptionType>, ref: React.Ref<BaseSelectRef>) => {\n const {\n id,\n mode,\n prefixCls = 'rc-select',\n backfill,\n fieldNames,\n\n // Search\n inputValue,\n searchValue,\n onSearch,\n autoClearSearchValue = true,\n\n // Select\n onSelect,\n onDeselect,\n dropdownMatchSelectWidth = true,\n\n // Options\n filterOption,\n filterSort,\n optionFilterProp,\n optionLabelProp,\n options,\n optionRender,\n children,\n defaultActiveFirstOption,\n menuItemSelectedIcon,\n virtual,\n direction,\n listHeight = 200,\n listItemHeight = 20,\n\n // Value\n value,\n defaultValue,\n labelInValue,\n onChange,\n\n ...restProps\n } = props;\n\n const mergedId = useId(id);\n const multiple = isMultiple(mode);\n const childrenAsData = !!(!options && children);\n\n const mergedFilterOption = React.useMemo(() => {\n if (filterOption === undefined && mode === 'combobox') {\n return false;\n }\n return filterOption;\n }, [filterOption, mode]);\n\n // ========================= FieldNames =========================\n const mergedFieldNames = React.useMemo(\n () => fillFieldNames(fieldNames, childrenAsData),\n /* eslint-disable react-hooks/exhaustive-deps */\n [\n // We stringify fieldNames to avoid unnecessary re-renders.\n JSON.stringify(fieldNames),\n childrenAsData,\n ],\n /* eslint-enable react-hooks/exhaustive-deps */\n );\n\n // =========================== Search ===========================\n const [mergedSearchValue, setSearchValue] = useMergedState('', {\n value: searchValue !== undefined ? searchValue : inputValue,\n postState: (search) => search || '',\n });\n\n // =========================== Option ===========================\n const parsedOptions = useOptions(\n options,\n children,\n mergedFieldNames,\n optionFilterProp,\n optionLabelProp,\n );\n const { valueOptions, labelOptions, options: mergedOptions } = parsedOptions;\n\n // ========================= Wrap Value =========================\n const convert2LabelValues = React.useCallback(\n (draftValues: DraftValueType) => {\n // Convert to array\n const valueList = toArray(draftValues);\n\n // Convert to labelInValue type\n return valueList.map((val) => {\n let rawValue: RawValueType;\n let rawLabel: React.ReactNode;\n let rawKey: React.Key;\n let rawDisabled: boolean | undefined;\n let rawTitle: string;\n\n // Fill label & value\n if (isRawValue(val)) {\n rawValue = val;\n } else {\n rawKey = val.key;\n rawLabel = val.label;\n rawValue = val.value ?? rawKey;\n }\n\n const option = valueOptions.get(rawValue);\n if (option) {\n // Fill missing props\n if (rawLabel === undefined)\n rawLabel = option?.[optionLabelProp || mergedFieldNames.label];\n if (rawKey === undefined) rawKey = option?.key ?? rawValue;\n rawDisabled = option?.disabled;\n rawTitle = option?.title;\n\n // Warning if label not same as provided\n if (process.env.NODE_ENV !== 'production' && !optionLabelProp) {\n const optionLabel = option?.[mergedFieldNames.label];\n if (\n optionLabel !== undefined &&\n !React.isValidElement(optionLabel) &&\n !React.isValidElement(rawLabel) &&\n optionLabel !== rawLabel\n ) {\n warning(false, '`label` of `value` is not same as `label` in Select options.');\n }\n }\n }\n\n return {\n label: rawLabel,\n value: rawValue,\n key: rawKey,\n disabled: rawDisabled,\n title: rawTitle,\n };\n });\n },\n [mergedFieldNames, optionLabelProp, valueOptions],\n );\n\n // =========================== Values ===========================\n const [internalValue, setInternalValue] = useMergedState(defaultValue, {\n value,\n });\n\n // Merged value with LabelValueType\n const rawLabeledValues = React.useMemo(() => {\n const values = convert2LabelValues(internalValue);\n\n // combobox no need save value when it's no value (exclude value equal 0)\n if (mode === 'combobox' && isComboNoValue(values[0]?.value)) {\n return [];\n }\n\n return values;\n }, [internalValue, convert2LabelValues, mode]);\n\n // Fill label with cache to avoid option remove\n const [mergedValues, getMixedOption] = useCache(rawLabeledValues, valueOptions);\n\n const displayValues = React.useMemo(() => {\n // `null` need show as placeholder instead\n // https://github.com/ant-design/ant-design/issues/25057\n if (!mode && mergedValues.length === 1) {\n const firstValue = mergedValues[0];\n if (\n firstValue.value === null &&\n (firstValue.label === null || firstValue.label === undefined)\n ) {\n return [];\n }\n }\n\n return mergedValues.map((item) => ({\n ...item,\n label: item.label ?? item.value,\n }));\n }, [mode, mergedValues]);\n\n /** Convert `displayValues` to raw value type set */\n const rawValues = React.useMemo(\n () => new Set(mergedValues.map((val) => val.value)),\n [mergedValues],\n );\n\n React.useEffect(() => {\n if (mode === 'combobox') {\n const strValue = mergedValues[0]?.value;\n setSearchValue(hasValue(strValue) ? String(strValue) : '');\n }\n }, [mergedValues]);\n\n // ======================= Display Option =======================\n // Create a placeholder item if not exist in `options`\n const createTagOption = useRefFunc((val: RawValueType, label?: React.ReactNode) => {\n const mergedLabel = label ?? val;\n return {\n [mergedFieldNames.value]: val,\n [mergedFieldNames.label]: mergedLabel,\n } as DefaultOptionType;\n });\n\n // Fill tag as option if mode is `tags`\n const filledTagOptions = React.useMemo(() => {\n if (mode !== 'tags') {\n return mergedOptions;\n }\n\n // >>> Tag mode\n const cloneOptions = [...mergedOptions];\n\n // Check if value exist in options (include new patch item)\n const existOptions = (val: RawValueType) => valueOptions.has(val);\n\n // Fill current value as option\n [...mergedValues]\n .sort((a, b) => (a.value < b.value ? -1 : 1))\n .forEach((item) => {\n const val = item.value;\n\n if (!existOptions(val)) {\n cloneOptions.push(createTagOption(val, item.label));\n }\n });\n\n return cloneOptions;\n }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]);\n\n const filteredOptions = useFilterOptions(\n filledTagOptions,\n mergedFieldNames,\n mergedSearchValue,\n mergedFilterOption,\n optionFilterProp,\n );\n\n // Fill options with search value if needed\n const filledSearchOptions = React.useMemo(() => {\n if (\n mode !== 'tags' ||\n !mergedSearchValue ||\n filteredOptions.some((item) => item[optionFilterProp || 'value'] === mergedSearchValue)\n ) {\n return filteredOptions;\n }\n // ignore when search value equal select input value\n if (filteredOptions.some((item) => item[mergedFieldNames.value] === mergedSearchValue)) {\n return filteredOptions;\n }\n // Fill search value as option\n return [createTagOption(mergedSearchValue), ...filteredOptions];\n }, [\n createTagOption,\n optionFilterProp,\n mode,\n filteredOptions,\n mergedSearchValue,\n mergedFieldNames,\n ]);\n\n const orderedFilteredOptions = React.useMemo(() => {\n if (!filterSort) {\n return filledSearchOptions;\n }\n\n return [...filledSearchOptions].sort((a, b) => filterSort(a, b));\n }, [filledSearchOptions, filterSort]);\n\n const displayOptions = React.useMemo(\n () =>\n flattenOptions(orderedFilteredOptions, {\n fieldNames: mergedFieldNames,\n childrenAsData,\n }),\n [orderedFilteredOptions, mergedFieldNames, childrenAsData],\n );\n\n // =========================== Change ===========================\n const triggerChange = (values: DraftValueType) => {\n const labeledValues = convert2LabelValues(values);\n setInternalValue(labeledValues);\n\n if (\n onChange &&\n // Trigger event only when value changed\n (labeledValues.length !== mergedValues.length ||\n labeledValues.some((newVal, index) => mergedValues[index]?.value !== newVal?.value))\n ) {\n const returnValues = labelInValue ? labeledValues : labeledValues.map((v) => v.value);\n const returnOptions = labeledValues.map((v) =>\n injectPropsWithOption(getMixedOption(v.value)),\n );\n\n onChange(\n // Value\n multiple ? returnValues : returnValues[0],\n // Option\n multiple ? returnOptions : returnOptions[0],\n );\n }\n };\n\n // ======================= Accessibility ========================\n const [activeValue, setActiveValue] = React.useState<string>(null);\n const [accessibilityIndex, setAccessibilityIndex] = React.useState(0);\n const mergedDefaultActiveFirstOption =\n defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox';\n\n const onActiveValue: OnActiveValue = React.useCallback(\n (active, index, { source = 'keyboard' } = {}) => {\n setAccessibilityIndex(index);\n\n if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') {\n setActiveValue(String(active));\n }\n },\n [backfill, mode],\n );\n\n // ========================= OptionList =========================\n const triggerSelect = (val: RawValueType, selected: boolean, type?: DisplayInfoType) => {\n const getSelectEnt = (): [RawValueType | LabelInValueType, DefaultOptionType] => {\n const option = getMixedOption(val);\n return [\n labelInValue\n ? {\n label: option?.[mergedFieldNames.label],\n value: val,\n key: option?.key ?? val,\n }\n : val,\n injectPropsWithOption(option),\n ];\n };\n\n if (selected && onSelect) {\n const [wrappedValue, option] = getSelectEnt();\n onSelect(wrappedValue, option);\n } else if (!selected && onDeselect && type !== 'clear') {\n const [wrappedValue, option] = getSelectEnt();\n onDeselect(wrappedValue, option);\n }\n };\n\n // Used for OptionList selection\n const onInternalSelect = useRefFunc<OnInternalSelect>((val, info) => {\n let cloneValues: (RawValueType | DisplayValueType)[];\n\n // Single mode always trigger select only with option list\n const mergedSelect = multiple ? info.selected : true;\n\n if (mergedSelect) {\n cloneValues = multiple ? [...mergedValues, val] : [val];\n } else {\n cloneValues = mergedValues.filter((v) => v.value !== val);\n }\n\n triggerChange(cloneValues);\n triggerSelect(val, mergedSelect);\n\n // Clean search value if single or configured\n if (mode === 'combobox') {\n // setSearchValue(String(val));\n setActiveValue('');\n } else if (!isMultiple || autoClearSearchValue) {\n setSearchValue('');\n setActiveValue('');\n }\n });\n\n // ======================= Display Change =======================\n // BaseSelect display values change\n const onDisplayValuesChange: BaseSelectProps['onDisplayValuesChange'] = (nextValues, info) => {\n triggerChange(nextValues);\n const { type, values } = info;\n\n if (type === 'remove' || type === 'clear') {\n values.forEach((item) => {\n triggerSelect(item.value, false, type);\n });\n }\n };\n\n // =========================== Search ===========================\n const onInternalSearch: BaseSelectProps['onSearch'] = (searchText, info) => {\n setSearchValue(searchText);\n setActiveValue(null);\n\n // [Submit] Tag mode should flush input\n if (info.source === 'submit') {\n const formatted = (searchText || '').trim();\n // prevent empty tags from appearing when you click the Enter button\n if (formatted) {\n const newRawValues = Array.from(new Set<RawValueType>([...rawValues, formatted]));\n triggerChange(newRawValues);\n triggerSelect(formatted, true);\n setSearchValue('');\n }\n\n return;\n }\n\n if (info.source !== 'blur') {\n if (mode === 'combobox') {\n triggerChange(searchText);\n }\n\n onSearch?.(searchText);\n }\n };\n\n const onInternalSearchSplit: BaseSelectProps['onSearchSplit'] = (words) => {\n let patchValues: RawValueType[] = words;\n\n if (mode !== 'tags') {\n patchValues = words\n .map((word) => {\n const opt = labelOptions.get(word);\n return opt?.value;\n })\n .filter((val) => val !== undefined);\n }\n\n const newRawValues = Array.from(new Set<RawValueType>([...rawValues, ...patchValues]));\n triggerChange(newRawValues);\n newRawValues.forEach((newRawValue) => {\n triggerSelect(newRawValue, true);\n });\n };\n\n // ========================== Context ===========================\n const selectContext = React.useMemo(() => {\n const realVirtual = virtual !== false && dropdownMatchSelectWidth !== false;\n return {\n ...parsedOptions,\n flattenOptions: displayOptions,\n onActiveValue,\n defaultActiveFirstOption: mergedDefaultActiveFirstOption,\n onSelect: onInternalSelect,\n menuItemSelectedIcon,\n rawValues,\n fieldNames: mergedFieldNames,\n virtual: realVirtual,\n direction,\n listHeight,\n listItemHeight,\n childrenAsData,\n optionRender,\n };\n }, [\n parsedOptions,\n displayOptions,\n onActiveValue,\n mergedDefaultActiveFirstOption,\n onInternalSelect,\n menuItemSelectedIcon,\n rawValues,\n mergedFieldNames,\n virtual,\n dropdownMatchSelectWidth,\n listHeight,\n listItemHeight,\n childrenAsData,\n optionRender,\n ]);\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props);\n warningNullOptions(mergedOptions, mergedFieldNames);\n }\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n return (\n <SelectContext.Provider value={selectContext}>\n <BaseSelect\n {...restProps}\n // >>> MISC\n id={mergedId}\n prefixCls={prefixCls}\n ref={ref}\n omitDomProps={OMIT_DOM_PROPS}\n mode={mode}\n // >>> Values\n displayValues={displayValues}\n onDisplayValuesChange={onDisplayValuesChange}\n // >>> Trigger\n direction={direction}\n // >>> Search\n searchValue={mergedSearchValue}\n onSearch={onInternalSearch}\n autoClearSearchValue={autoClearSearchValue}\n onSearchSplit={onInternalSearchSplit}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n // >>> OptionList\n OptionList={OptionList}\n emptyOptions={!displayOptions.length}\n // >>> Accessibility\n activeValue={activeValue}\n activeDescendantId={`${mergedId}_list_${accessibilityIndex}`}\n />\n </SelectContext.Provider>\n );\n },\n);\n\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\n\nconst TypedSelect = Select as unknown as (<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType,\n>(\n props: React.PropsWithChildren<SelectProps<ValueType, OptionType>> & {\n ref?: React.Ref<BaseSelectRef>;\n },\n) => React.ReactElement) & {\n Option: typeof Option;\n OptGroup: typeof OptGroup;\n};\n\nTypedSelect.Option = Option;\nTypedSelect.OptGroup = OptGroup;\n\nexport default TypedSelect;\n"]}
@@ -1,3 +0,0 @@
1
- import * as React from 'react';
2
- const SelectContext = React.createContext(null);
3
- export default SelectContext;
@@ -1 +0,0 @@
1
- {"version":3,"file":"SelectContext.js","sourceRoot":"","sources":["../../../src/tntd-select/rc-select/SelectContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA6B/B,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAqB,IAAI,CAAC,CAAC;AAEpE,eAAe,aAAa,CAAC","sourcesContent":["import * as React from 'react';\nimport type { RawValueType, RenderNode } from './BaseSelect';\nimport type {\n BaseOptionType,\n FieldNames,\n OnActiveValue,\n OnInternalSelect,\n SelectProps,\n} from './Select';\nimport type { FlattenOptionData } from './interface';\n\n// Use any here since we do not get the type during compilation\nexport interface SelectContextProps {\n options: BaseOptionType[];\n optionRender?: SelectProps['optionRender'];\n flattenOptions: FlattenOptionData<BaseOptionType>[];\n onActiveValue: OnActiveValue;\n defaultActiveFirstOption?: boolean;\n onSelect: OnInternalSelect;\n menuItemSelectedIcon?: RenderNode;\n rawValues: Set<RawValueType>;\n fieldNames?: FieldNames;\n virtual?: boolean;\n direction?: 'ltr' | 'rtl';\n listHeight?: number;\n listItemHeight?: number;\n childrenAsData?: boolean;\n}\n\nconst SelectContext = React.createContext<SelectContextProps>(null);\n\nexport default SelectContext;\n"]}
@@ -1,130 +0,0 @@
1
- var __rest = this && this.__rest || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
4
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
5
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
6
- }
7
- return t;
8
- };
9
- import Trigger from '@rc-component/trigger';
10
- import classNames from 'classnames';
11
- import * as React from 'react';
12
- const getBuiltInPlacements = dropdownMatchSelectWidth => {
13
- // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided
14
- const adjustX = dropdownMatchSelectWidth === true ? 0 : 1;
15
- return {
16
- bottomLeft: {
17
- points: ['tl', 'bl'],
18
- offset: [0, 4],
19
- overflow: {
20
- adjustX,
21
- adjustY: 1
22
- },
23
- htmlRegion: 'scroll'
24
- },
25
- bottomRight: {
26
- points: ['tr', 'br'],
27
- offset: [0, 4],
28
- overflow: {
29
- adjustX,
30
- adjustY: 1
31
- },
32
- htmlRegion: 'scroll'
33
- },
34
- topLeft: {
35
- points: ['bl', 'tl'],
36
- offset: [0, -4],
37
- overflow: {
38
- adjustX,
39
- adjustY: 1
40
- },
41
- htmlRegion: 'scroll'
42
- },
43
- topRight: {
44
- points: ['br', 'tr'],
45
- offset: [0, -4],
46
- overflow: {
47
- adjustX,
48
- adjustY: 1
49
- },
50
- htmlRegion: 'scroll'
51
- }
52
- };
53
- };
54
- const SelectTrigger = (props, ref) => {
55
- const {
56
- prefixCls,
57
- disabled,
58
- visible,
59
- children,
60
- popupElement,
61
- animation,
62
- transitionName,
63
- dropdownStyle,
64
- dropdownClassName,
65
- direction = 'ltr',
66
- placement,
67
- builtinPlacements,
68
- dropdownMatchSelectWidth,
69
- dropdownRender,
70
- dropdownAlign,
71
- getPopupContainer,
72
- empty,
73
- getTriggerDOMNode,
74
- onPopupVisibleChange,
75
- onPopupMouseEnter
76
- } = props,
77
- restProps = __rest(props, ["prefixCls", "disabled", "visible", "children", "popupElement", "animation", "transitionName", "dropdownStyle", "dropdownClassName", "direction", "placement", "builtinPlacements", "dropdownMatchSelectWidth", "dropdownRender", "dropdownAlign", "getPopupContainer", "empty", "getTriggerDOMNode", "onPopupVisibleChange", "onPopupMouseEnter"]);
78
- const dropdownPrefixCls = `${prefixCls}-dropdown`;
79
- let popupNode = popupElement;
80
- if (dropdownRender) {
81
- popupNode = dropdownRender(popupElement);
82
- }
83
- const mergedBuiltinPlacements = React.useMemo(() => builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth), [builtinPlacements, dropdownMatchSelectWidth]);
84
- // ===================== Motion ======================
85
- const mergedTransitionName = animation ? `${dropdownPrefixCls}-${animation}` : transitionName;
86
- // =================== Popup Width ===================
87
- const isNumberPopupWidth = typeof dropdownMatchSelectWidth === 'number';
88
- const stretch = React.useMemo(() => {
89
- if (isNumberPopupWidth) {
90
- return null;
91
- }
92
- return dropdownMatchSelectWidth === false ? 'minWidth' : 'width';
93
- }, [dropdownMatchSelectWidth, isNumberPopupWidth]);
94
- let popupStyle = dropdownStyle;
95
- if (isNumberPopupWidth) {
96
- popupStyle = Object.assign(Object.assign({}, popupStyle), {
97
- width: dropdownMatchSelectWidth
98
- });
99
- }
100
- // ======================= Ref =======================
101
- const popupRef = React.useRef(null);
102
- React.useImperativeHandle(ref, () => ({
103
- getPopupElement: () => popupRef.current
104
- }));
105
- return React.createElement(Trigger, Object.assign({}, restProps, {
106
- showAction: onPopupVisibleChange ? ['click'] : [],
107
- hideAction: onPopupVisibleChange ? ['click'] : [],
108
- popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'),
109
- builtinPlacements: mergedBuiltinPlacements,
110
- prefixCls: dropdownPrefixCls,
111
- popupTransitionName: mergedTransitionName,
112
- popup: React.createElement("div", {
113
- ref: popupRef,
114
- onMouseEnter: onPopupMouseEnter
115
- }, popupNode),
116
- stretch: stretch,
117
- popupAlign: dropdownAlign,
118
- popupVisible: visible,
119
- getPopupContainer: getPopupContainer,
120
- popupClassName: classNames(dropdownClassName, {
121
- [`${dropdownPrefixCls}-empty`]: empty
122
- }),
123
- popupStyle: popupStyle,
124
- getTriggerDOMNode: getTriggerDOMNode,
125
- onPopupVisibleChange: onPopupVisibleChange
126
- }), children);
127
- };
128
- const RefSelectTrigger = React.forwardRef(SelectTrigger);
129
- RefSelectTrigger.displayName = 'SelectTrigger';
130
- export default RefSelectTrigger;