tntd 2.7.23 → 2.7.25

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 (380) hide show
  1. package/es/index.js +1 -0
  2. package/es/index.js.map +1 -1
  3. package/es/locale/en_US.js +21 -3
  4. package/es/locale/en_US.js.map +1 -1
  5. package/es/locale/zh_CN.js +4 -1
  6. package/es/locale/zh_CN.js.map +1 -1
  7. package/es/table/context.js.map +1 -1
  8. package/es/table/table.js +3 -2
  9. package/es/table/table.js.map +1 -1
  10. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +1 -1
  11. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  12. package/es/tntd-rc-select/_util/DisabledContext.js +8 -0
  13. package/es/tntd-rc-select/_util/DisabledContext.js.map +1 -0
  14. package/es/tntd-rc-select/_util/FormItemInputContext.js +3 -0
  15. package/es/tntd-rc-select/_util/FormItemInputContext.js.map +1 -0
  16. package/es/tntd-rc-select/_util/PurePanel.js +55 -0
  17. package/es/tntd-rc-select/_util/PurePanel.js.map +1 -0
  18. package/es/tntd-rc-select/_util/SizeContext.js +3 -0
  19. package/es/tntd-rc-select/_util/SizeContext.js.map +1 -0
  20. package/es/tntd-rc-select/_util/context.js +14 -0
  21. package/es/tntd-rc-select/_util/context.js.map +1 -0
  22. package/es/tntd-rc-select/_util/defaultRenderEmpty.js +20 -0
  23. package/es/tntd-rc-select/_util/defaultRenderEmpty.js.map +1 -0
  24. package/es/tntd-rc-select/_util/getIcons.js +52 -0
  25. package/es/tntd-rc-select/_util/getIcons.js.map +1 -0
  26. package/es/tntd-rc-select/_util/interface.js +5 -0
  27. package/es/tntd-rc-select/_util/interface.js.map +1 -0
  28. package/es/tntd-rc-select/_util/motion.js +38 -0
  29. package/es/tntd-rc-select/_util/motion.js.map +1 -0
  30. package/es/tntd-rc-select/_util/type.js +4 -0
  31. package/es/tntd-rc-select/_util/type.js.map +1 -0
  32. package/es/tntd-rc-select/_util/useCompactItemContext.js +24 -0
  33. package/es/tntd-rc-select/_util/useCompactItemContext.js.map +1 -0
  34. package/es/tntd-rc-select/_util/warning.js +15 -0
  35. package/es/tntd-rc-select/_util/warning.js.map +1 -0
  36. package/es/tntd-rc-select/img/no-data-s.png +0 -0
  37. package/es/tntd-rc-select/index.js +103 -0
  38. package/es/tntd-rc-select/index.js.map +1 -0
  39. package/es/tntd-rc-select/style/index.less +1657 -0
  40. package/es/tntd-select/_util/DisabledContext.js +8 -0
  41. package/es/tntd-select/_util/DisabledContext.js.map +1 -0
  42. package/es/tntd-select/_util/FormItemInputContext.js +3 -0
  43. package/es/tntd-select/_util/FormItemInputContext.js.map +1 -0
  44. package/es/tntd-select/_util/PurePanel.js +4 -17
  45. package/es/tntd-select/_util/PurePanel.js.map +1 -1
  46. package/es/tntd-select/_util/SizeContext.js +3 -0
  47. package/es/tntd-select/_util/SizeContext.js.map +1 -0
  48. package/es/tntd-select/_util/context.js +14 -0
  49. package/es/tntd-select/_util/context.js.map +1 -0
  50. package/es/tntd-select/_util/defaultRenderEmpty.js +20 -0
  51. package/es/tntd-select/_util/defaultRenderEmpty.js.map +1 -0
  52. package/es/tntd-select/_util/getIcons.js +52 -0
  53. package/es/tntd-select/_util/getIcons.js.map +1 -0
  54. package/es/tntd-select/_util/interface.js +5 -0
  55. package/es/tntd-select/_util/interface.js.map +1 -0
  56. package/es/tntd-select/_util/motion.js +15 -8
  57. package/es/tntd-select/_util/motion.js.map +1 -1
  58. package/es/tntd-select/_util/type.js +4 -0
  59. package/es/tntd-select/_util/type.js.map +1 -0
  60. package/es/tntd-select/_util/useCompactItemContext.js +24 -0
  61. package/es/tntd-select/_util/useCompactItemContext.js.map +1 -0
  62. package/es/tntd-select/_util/warning.js +14 -5
  63. package/es/tntd-select/_util/warning.js.map +1 -1
  64. package/es/tntd-select/index.js +7 -1
  65. package/es/tntd-select/index.js.map +1 -1
  66. package/es/tntd-select/rc-select/BaseSelect.js +429 -0
  67. package/es/tntd-select/rc-select/BaseSelect.js.map +1 -0
  68. package/es/tntd-select/rc-select/OptGroup.js +5 -0
  69. package/es/tntd-select/rc-select/OptGroup.js.map +1 -0
  70. package/es/tntd-select/rc-select/Option.js +5 -0
  71. package/es/tntd-select/rc-select/Option.js.map +1 -0
  72. package/es/tntd-select/rc-select/OptionList.js +257 -0
  73. package/es/tntd-select/rc-select/OptionList.js.map +1 -0
  74. package/es/tntd-select/rc-select/Select.js +428 -0
  75. package/es/tntd-select/rc-select/Select.js.map +1 -0
  76. package/es/tntd-select/rc-select/SelectContext.js +4 -0
  77. package/es/tntd-select/rc-select/SelectContext.js.map +1 -0
  78. package/es/tntd-select/rc-select/SelectTrigger.js +91 -0
  79. package/es/tntd-select/rc-select/SelectTrigger.js.map +1 -0
  80. package/es/tntd-select/rc-select/Selector/Input.js +47 -0
  81. package/es/tntd-select/rc-select/Selector/Input.js.map +1 -0
  82. package/es/tntd-select/rc-select/Selector/MultipleSelector.js +97 -0
  83. package/es/tntd-select/rc-select/Selector/MultipleSelector.js.map +1 -0
  84. package/es/tntd-select/rc-select/Selector/SingleSelector.js +45 -0
  85. package/es/tntd-select/rc-select/Selector/SingleSelector.js.map +1 -0
  86. package/es/tntd-select/rc-select/Selector/index.js +136 -0
  87. package/es/tntd-select/rc-select/Selector/index.js.map +1 -0
  88. package/es/tntd-select/rc-select/TransBtn.js +22 -0
  89. package/es/tntd-select/rc-select/TransBtn.js.map +1 -0
  90. package/es/tntd-select/rc-select/hooks/useAllowClear.js +25 -0
  91. package/es/tntd-select/rc-select/hooks/useAllowClear.js.map +1 -0
  92. package/es/tntd-select/rc-select/hooks/useBaseProps.js +10 -0
  93. package/es/tntd-select/rc-select/hooks/useBaseProps.js.map +1 -0
  94. package/es/tntd-select/rc-select/hooks/useCache.js +34 -0
  95. package/es/tntd-select/rc-select/hooks/useCache.js.map +1 -0
  96. package/es/tntd-select/rc-select/hooks/useDelayReset.js +24 -0
  97. package/es/tntd-select/rc-select/hooks/useDelayReset.js.map +1 -0
  98. package/es/tntd-select/rc-select/hooks/useFilterOptions.js +55 -0
  99. package/es/tntd-select/rc-select/hooks/useFilterOptions.js.map +1 -0
  100. package/es/tntd-select/rc-select/hooks/useId.js +28 -0
  101. package/es/tntd-select/rc-select/hooks/useId.js.map +1 -0
  102. package/es/tntd-select/rc-select/hooks/useLayoutEffect.js +18 -0
  103. package/es/tntd-select/rc-select/hooks/useLayoutEffect.js.map +1 -0
  104. package/es/tntd-select/rc-select/hooks/useLock.js +26 -0
  105. package/es/tntd-select/rc-select/hooks/useLock.js.map +1 -0
  106. package/es/tntd-select/rc-select/hooks/useOptions.js +45 -0
  107. package/es/tntd-select/rc-select/hooks/useOptions.js.map +1 -0
  108. package/es/tntd-select/rc-select/hooks/useRefFunc.js +14 -0
  109. package/es/tntd-select/rc-select/hooks/useRefFunc.js.map +1 -0
  110. package/es/tntd-select/rc-select/hooks/useSelectTriggerControl.js +32 -0
  111. package/es/tntd-select/rc-select/hooks/useSelectTriggerControl.js.map +1 -0
  112. package/es/tntd-select/rc-select/index.js +8 -0
  113. package/es/tntd-select/rc-select/index.js.map +1 -0
  114. package/es/tntd-select/rc-select/interface.js +2 -0
  115. package/es/tntd-select/rc-select/interface.js.map +1 -0
  116. package/es/tntd-select/rc-select/utils/commonUtil.js +32 -0
  117. package/es/tntd-select/rc-select/utils/commonUtil.js.map +1 -0
  118. package/es/tntd-select/rc-select/utils/keyUtil.js +34 -0
  119. package/es/tntd-select/rc-select/utils/keyUtil.js.map +1 -0
  120. package/es/tntd-select/rc-select/utils/legacyUtil.js +32 -0
  121. package/es/tntd-select/rc-select/utils/legacyUtil.js.map +1 -0
  122. package/es/tntd-select/rc-select/utils/platformUtil.js +5 -0
  123. package/es/tntd-select/rc-select/utils/platformUtil.js.map +1 -0
  124. package/es/tntd-select/rc-select/utils/valueUtil.js +99 -0
  125. package/es/tntd-select/rc-select/utils/valueUtil.js.map +1 -0
  126. package/es/tntd-select/rc-select/utils/warningPropsUtil.js +100 -0
  127. package/es/tntd-select/rc-select/utils/warningPropsUtil.js.map +1 -0
  128. package/lib/index.d.ts +1 -0
  129. package/lib/index.d.ts.map +1 -1
  130. package/lib/index.js +3 -1
  131. package/lib/index.js.map +1 -1
  132. package/lib/locale/default.d.ts +4 -1
  133. package/lib/locale/default.d.ts.map +1 -1
  134. package/lib/locale/en_US.d.ts +11 -1
  135. package/lib/locale/en_US.d.ts.map +1 -1
  136. package/lib/locale/en_US.js +21 -3
  137. package/lib/locale/en_US.js.map +1 -1
  138. package/lib/locale/zh_CN.d.ts +4 -1
  139. package/lib/locale/zh_CN.d.ts.map +1 -1
  140. package/lib/locale/zh_CN.js +4 -1
  141. package/lib/locale/zh_CN.js.map +1 -1
  142. package/lib/table/context.d.ts +1 -0
  143. package/lib/table/context.d.ts.map +1 -1
  144. package/lib/table/context.js.map +1 -1
  145. package/lib/table/table.d.ts +2 -1
  146. package/lib/table/table.d.ts.map +1 -1
  147. package/lib/table/table.js +3 -2
  148. package/lib/table/table.js.map +1 -1
  149. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +1 -1
  150. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  151. package/lib/tntd-rc-select/_util/DisabledContext.d.ts +10 -0
  152. package/lib/tntd-rc-select/_util/DisabledContext.d.ts.map +1 -0
  153. package/lib/tntd-rc-select/_util/DisabledContext.js +35 -0
  154. package/lib/tntd-rc-select/_util/DisabledContext.js.map +1 -0
  155. package/lib/tntd-rc-select/_util/FormItemInputContext.d.ts +4 -0
  156. package/lib/tntd-rc-select/_util/FormItemInputContext.d.ts.map +1 -0
  157. package/lib/tntd-rc-select/_util/FormItemInputContext.js +29 -0
  158. package/lib/tntd-rc-select/_util/FormItemInputContext.js.map +1 -0
  159. package/lib/tntd-rc-select/_util/PurePanel.d.ts +9 -0
  160. package/lib/tntd-rc-select/_util/PurePanel.d.ts.map +1 -0
  161. package/lib/tntd-rc-select/_util/PurePanel.js +84 -0
  162. package/lib/tntd-rc-select/_util/PurePanel.js.map +1 -0
  163. package/lib/tntd-rc-select/_util/SizeContext.d.ts +4 -0
  164. package/lib/tntd-rc-select/_util/SizeContext.d.ts.map +1 -0
  165. package/lib/tntd-rc-select/_util/SizeContext.js +29 -0
  166. package/lib/tntd-rc-select/_util/SizeContext.js.map +1 -0
  167. package/lib/tntd-rc-select/_util/context.d.ts +42 -0
  168. package/lib/tntd-rc-select/_util/context.d.ts.map +1 -0
  169. package/lib/tntd-rc-select/_util/context.js +20 -0
  170. package/lib/tntd-rc-select/_util/context.js.map +1 -0
  171. package/lib/tntd-rc-select/_util/defaultRenderEmpty.d.ts +5 -0
  172. package/lib/tntd-rc-select/_util/defaultRenderEmpty.d.ts.map +1 -0
  173. package/lib/tntd-rc-select/_util/defaultRenderEmpty.js +48 -0
  174. package/lib/tntd-rc-select/_util/defaultRenderEmpty.js.map +1 -0
  175. package/lib/tntd-rc-select/_util/getIcons.d.ts +25 -0
  176. package/lib/tntd-rc-select/_util/getIcons.d.ts.map +1 -0
  177. package/lib/tntd-rc-select/_util/getIcons.js +78 -0
  178. package/lib/tntd-rc-select/_util/getIcons.js.map +1 -0
  179. package/lib/tntd-rc-select/_util/interface.d.ts +25 -0
  180. package/lib/tntd-rc-select/_util/interface.d.ts.map +1 -0
  181. package/lib/tntd-rc-select/_util/interface.js +9 -0
  182. package/lib/tntd-rc-select/_util/interface.js.map +1 -0
  183. package/lib/tntd-rc-select/_util/motion.d.ts +9 -0
  184. package/lib/tntd-rc-select/_util/motion.d.ts.map +1 -0
  185. package/lib/tntd-rc-select/_util/motion.js +42 -0
  186. package/lib/tntd-rc-select/_util/motion.js.map +1 -0
  187. package/lib/tntd-rc-select/_util/type.d.ts +10 -0
  188. package/lib/tntd-rc-select/_util/type.d.ts.map +1 -0
  189. package/lib/tntd-rc-select/_util/type.js +9 -0
  190. package/lib/tntd-rc-select/_util/type.js.map +1 -0
  191. package/lib/tntd-rc-select/_util/useCompactItemContext.d.ts +9 -0
  192. package/lib/tntd-rc-select/_util/useCompactItemContext.d.ts.map +1 -0
  193. package/lib/tntd-rc-select/_util/useCompactItemContext.js +54 -0
  194. package/lib/tntd-rc-select/_util/useCompactItemContext.js.map +1 -0
  195. package/lib/tntd-rc-select/_util/warning.d.ts +4 -0
  196. package/lib/tntd-rc-select/_util/warning.d.ts.map +1 -0
  197. package/lib/tntd-rc-select/_util/warning.js +40 -0
  198. package/lib/tntd-rc-select/_util/warning.js.map +1 -0
  199. package/lib/tntd-rc-select/img/no-data-s.png +0 -0
  200. package/lib/tntd-rc-select/index.d.ts +44 -0
  201. package/lib/tntd-rc-select/index.d.ts.map +1 -0
  202. package/lib/tntd-rc-select/index.js +131 -0
  203. package/lib/tntd-rc-select/index.js.map +1 -0
  204. package/lib/tntd-rc-select/style/index.less +1657 -0
  205. package/lib/tntd-select/_util/DisabledContext.d.ts +10 -0
  206. package/lib/tntd-select/_util/DisabledContext.d.ts.map +1 -0
  207. package/lib/tntd-select/_util/DisabledContext.js +35 -0
  208. package/lib/tntd-select/_util/DisabledContext.js.map +1 -0
  209. package/lib/tntd-select/_util/FormItemInputContext.d.ts +4 -0
  210. package/lib/tntd-select/_util/FormItemInputContext.d.ts.map +1 -0
  211. package/lib/tntd-select/_util/FormItemInputContext.js +29 -0
  212. package/lib/tntd-select/_util/FormItemInputContext.js.map +1 -0
  213. package/lib/tntd-select/_util/PurePanel.d.ts +3 -2
  214. package/lib/tntd-select/_util/PurePanel.d.ts.map +1 -1
  215. package/lib/tntd-select/_util/PurePanel.js +4 -19
  216. package/lib/tntd-select/_util/PurePanel.js.map +1 -1
  217. package/lib/tntd-select/_util/SizeContext.d.ts +4 -0
  218. package/lib/tntd-select/_util/SizeContext.d.ts.map +1 -0
  219. package/lib/tntd-select/_util/SizeContext.js +29 -0
  220. package/lib/tntd-select/_util/SizeContext.js.map +1 -0
  221. package/lib/tntd-select/_util/context.d.ts +42 -0
  222. package/lib/tntd-select/_util/context.d.ts.map +1 -0
  223. package/lib/tntd-select/_util/context.js +20 -0
  224. package/lib/tntd-select/_util/context.js.map +1 -0
  225. package/lib/tntd-select/_util/defaultRenderEmpty.d.ts +5 -0
  226. package/lib/tntd-select/_util/defaultRenderEmpty.d.ts.map +1 -0
  227. package/lib/tntd-select/_util/defaultRenderEmpty.js +48 -0
  228. package/lib/tntd-select/_util/defaultRenderEmpty.js.map +1 -0
  229. package/lib/tntd-select/_util/getIcons.d.ts +25 -0
  230. package/lib/tntd-select/_util/getIcons.d.ts.map +1 -0
  231. package/lib/tntd-select/_util/getIcons.js +78 -0
  232. package/lib/tntd-select/_util/getIcons.js.map +1 -0
  233. package/lib/tntd-select/_util/interface.d.ts +25 -0
  234. package/lib/tntd-select/_util/interface.d.ts.map +1 -0
  235. package/lib/tntd-select/_util/interface.js +9 -0
  236. package/lib/tntd-select/_util/interface.js.map +1 -0
  237. package/lib/tntd-select/_util/motion.d.ts +5 -4
  238. package/lib/tntd-select/_util/motion.d.ts.map +1 -1
  239. package/lib/tntd-select/_util/motion.js +16 -8
  240. package/lib/tntd-select/_util/motion.js.map +1 -1
  241. package/lib/tntd-select/_util/type.d.ts +10 -0
  242. package/lib/tntd-select/_util/type.d.ts.map +1 -0
  243. package/lib/tntd-select/_util/type.js +9 -0
  244. package/lib/tntd-select/_util/type.js.map +1 -0
  245. package/lib/tntd-select/_util/useCompactItemContext.d.ts +9 -0
  246. package/lib/tntd-select/_util/useCompactItemContext.d.ts.map +1 -0
  247. package/lib/tntd-select/_util/useCompactItemContext.js +54 -0
  248. package/lib/tntd-select/_util/useCompactItemContext.js.map +1 -0
  249. package/lib/tntd-select/_util/warning.d.ts +3 -4
  250. package/lib/tntd-select/_util/warning.d.ts.map +1 -1
  251. package/lib/tntd-select/_util/warning.js +13 -5
  252. package/lib/tntd-select/_util/warning.js.map +1 -1
  253. package/lib/tntd-select/index.d.ts.map +1 -1
  254. package/lib/tntd-select/index.js +7 -1
  255. package/lib/tntd-select/index.js.map +1 -1
  256. package/lib/tntd-select/rc-select/BaseSelect.d.ts +114 -0
  257. package/lib/tntd-select/rc-select/BaseSelect.d.ts.map +1 -0
  258. package/lib/tntd-select/rc-select/BaseSelect.js +459 -0
  259. package/lib/tntd-select/rc-select/BaseSelect.js.map +1 -0
  260. package/lib/tntd-select/rc-select/OptGroup.d.ts +13 -0
  261. package/lib/tntd-select/rc-select/OptGroup.d.ts.map +1 -0
  262. package/lib/tntd-select/rc-select/OptGroup.js +7 -0
  263. package/lib/tntd-select/rc-select/OptGroup.js.map +1 -0
  264. package/lib/tntd-select/rc-select/Option.d.ts +15 -0
  265. package/lib/tntd-select/rc-select/Option.d.ts.map +1 -0
  266. package/lib/tntd-select/rc-select/Option.js +7 -0
  267. package/lib/tntd-select/rc-select/Option.js.map +1 -0
  268. package/lib/tntd-select/rc-select/OptionList.d.ts +11 -0
  269. package/lib/tntd-select/rc-select/OptionList.d.ts.map +1 -0
  270. package/lib/tntd-select/rc-select/OptionList.js +285 -0
  271. package/lib/tntd-select/rc-select/OptionList.js.map +1 -0
  272. package/lib/tntd-select/rc-select/Select.d.ts +115 -0
  273. package/lib/tntd-select/rc-select/Select.d.ts.map +1 -0
  274. package/lib/tntd-select/rc-select/Select.js +456 -0
  275. package/lib/tntd-select/rc-select/Select.js.map +1 -0
  276. package/lib/tntd-select/rc-select/SelectContext.d.ts +23 -0
  277. package/lib/tntd-select/rc-select/SelectContext.d.ts.map +1 -0
  278. package/lib/tntd-select/rc-select/SelectContext.js +29 -0
  279. package/lib/tntd-select/rc-select/SelectContext.js.map +1 -0
  280. package/lib/tntd-select/rc-select/SelectTrigger.d.ts +31 -0
  281. package/lib/tntd-select/rc-select/SelectTrigger.d.ts.map +1 -0
  282. package/lib/tntd-select/rc-select/SelectTrigger.js +119 -0
  283. package/lib/tntd-select/rc-select/SelectTrigger.js.map +1 -0
  284. package/lib/tntd-select/rc-select/Selector/Input.d.ts +27 -0
  285. package/lib/tntd-select/rc-select/Selector/Input.d.ts.map +1 -0
  286. package/lib/tntd-select/rc-select/Selector/Input.js +75 -0
  287. package/lib/tntd-select/rc-select/Selector/Input.js.map +1 -0
  288. package/lib/tntd-select/rc-select/Selector/MultipleSelector.d.ts +17 -0
  289. package/lib/tntd-select/rc-select/Selector/MultipleSelector.d.ts.map +1 -0
  290. package/lib/tntd-select/rc-select/Selector/MultipleSelector.js +125 -0
  291. package/lib/tntd-select/rc-select/Selector/MultipleSelector.js.map +1 -0
  292. package/lib/tntd-select/rc-select/Selector/SingleSelector.d.ts +9 -0
  293. package/lib/tntd-select/rc-select/Selector/SingleSelector.d.ts.map +1 -0
  294. package/lib/tntd-select/rc-select/Selector/SingleSelector.js +73 -0
  295. package/lib/tntd-select/rc-select/Selector/SingleSelector.js.map +1 -0
  296. package/lib/tntd-select/rc-select/Selector/index.d.ts +83 -0
  297. package/lib/tntd-select/rc-select/Selector/index.d.ts.map +1 -0
  298. package/lib/tntd-select/rc-select/Selector/index.js +164 -0
  299. package/lib/tntd-select/rc-select/Selector/index.js.map +1 -0
  300. package/lib/tntd-select/rc-select/TransBtn.d.ts +13 -0
  301. package/lib/tntd-select/rc-select/TransBtn.d.ts.map +1 -0
  302. package/lib/tntd-select/rc-select/TransBtn.js +50 -0
  303. package/lib/tntd-select/rc-select/TransBtn.js.map +1 -0
  304. package/lib/tntd-select/rc-select/hooks/useAllowClear.d.ts +9 -0
  305. package/lib/tntd-select/rc-select/hooks/useAllowClear.d.ts.map +1 -0
  306. package/lib/tntd-select/rc-select/hooks/useAllowClear.js +32 -0
  307. package/lib/tntd-select/rc-select/hooks/useAllowClear.js.map +1 -0
  308. package/lib/tntd-select/rc-select/hooks/useBaseProps.d.ts +14 -0
  309. package/lib/tntd-select/rc-select/hooks/useBaseProps.d.ts.map +1 -0
  310. package/lib/tntd-select/rc-select/hooks/useBaseProps.js +37 -0
  311. package/lib/tntd-select/rc-select/hooks/useBaseProps.js.map +1 -0
  312. package/lib/tntd-select/rc-select/hooks/useCache.d.ts +8 -0
  313. package/lib/tntd-select/rc-select/hooks/useCache.d.ts.map +1 -0
  314. package/lib/tntd-select/rc-select/hooks/useCache.js +59 -0
  315. package/lib/tntd-select/rc-select/hooks/useCache.js.map +1 -0
  316. package/lib/tntd-select/rc-select/hooks/useDelayReset.d.ts +6 -0
  317. package/lib/tntd-select/rc-select/hooks/useDelayReset.d.ts.map +1 -0
  318. package/lib/tntd-select/rc-select/hooks/useDelayReset.js +50 -0
  319. package/lib/tntd-select/rc-select/hooks/useDelayReset.js.map +1 -0
  320. package/lib/tntd-select/rc-select/hooks/useFilterOptions.d.ts +4 -0
  321. package/lib/tntd-select/rc-select/hooks/useFilterOptions.d.ts.map +1 -0
  322. package/lib/tntd-select/rc-select/hooks/useFilterOptions.js +80 -0
  323. package/lib/tntd-select/rc-select/hooks/useFilterOptions.js.map +1 -0
  324. package/lib/tntd-select/rc-select/hooks/useId.d.ts +6 -0
  325. package/lib/tntd-select/rc-select/hooks/useId.d.ts.map +1 -0
  326. package/lib/tntd-select/rc-select/hooks/useId.js +59 -0
  327. package/lib/tntd-select/rc-select/hooks/useId.js.map +1 -0
  328. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.d.ts +6 -0
  329. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.d.ts.map +1 -0
  330. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.js +44 -0
  331. package/lib/tntd-select/rc-select/hooks/useLayoutEffect.js.map +1 -0
  332. package/lib/tntd-select/rc-select/hooks/useLock.d.ts +8 -0
  333. package/lib/tntd-select/rc-select/hooks/useLock.d.ts.map +1 -0
  334. package/lib/tntd-select/rc-select/hooks/useLock.js +52 -0
  335. package/lib/tntd-select/rc-select/hooks/useLock.js.map +1 -0
  336. package/lib/tntd-select/rc-select/hooks/useOptions.d.ts +12 -0
  337. package/lib/tntd-select/rc-select/hooks/useOptions.d.ts.map +1 -0
  338. package/lib/tntd-select/rc-select/hooks/useOptions.js +71 -0
  339. package/lib/tntd-select/rc-select/hooks/useOptions.js.map +1 -0
  340. package/lib/tntd-select/rc-select/hooks/useRefFunc.d.ts +6 -0
  341. package/lib/tntd-select/rc-select/hooks/useRefFunc.d.ts.map +1 -0
  342. package/lib/tntd-select/rc-select/hooks/useRefFunc.js +40 -0
  343. package/lib/tntd-select/rc-select/hooks/useRefFunc.js.map +1 -0
  344. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.d.ts +2 -0
  345. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.d.ts.map +1 -0
  346. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.js +58 -0
  347. package/lib/tntd-select/rc-select/hooks/useSelectTriggerControl.js.map +1 -0
  348. package/lib/tntd-select/rc-select/index.d.ts +11 -0
  349. package/lib/tntd-select/rc-select/index.d.ts.map +1 -0
  350. package/lib/tntd-select/rc-select/index.js +17 -0
  351. package/lib/tntd-select/rc-select/index.js.map +1 -0
  352. package/lib/tntd-select/rc-select/interface.d.ts +23 -0
  353. package/lib/tntd-select/rc-select/interface.d.ts.map +1 -0
  354. package/lib/tntd-select/rc-select/interface.js +3 -0
  355. package/lib/tntd-select/rc-select/interface.js.map +1 -0
  356. package/lib/tntd-select/rc-select/utils/commonUtil.d.ts +10 -0
  357. package/lib/tntd-select/rc-select/utils/commonUtil.d.ts.map +1 -0
  358. package/lib/tntd-select/rc-select/utils/commonUtil.js +39 -0
  359. package/lib/tntd-select/rc-select/utils/commonUtil.js.map +1 -0
  360. package/lib/tntd-select/rc-select/utils/keyUtil.d.ts +3 -0
  361. package/lib/tntd-select/rc-select/utils/keyUtil.d.ts.map +1 -0
  362. package/lib/tntd-select/rc-select/utils/keyUtil.js +41 -0
  363. package/lib/tntd-select/rc-select/utils/keyUtil.js.map +1 -0
  364. package/lib/tntd-select/rc-select/utils/legacyUtil.d.ts +4 -0
  365. package/lib/tntd-select/rc-select/utils/legacyUtil.d.ts.map +1 -0
  366. package/lib/tntd-select/rc-select/utils/legacyUtil.js +62 -0
  367. package/lib/tntd-select/rc-select/utils/legacyUtil.js.map +1 -0
  368. package/lib/tntd-select/rc-select/utils/platformUtil.d.ts +2 -0
  369. package/lib/tntd-select/rc-select/utils/platformUtil.d.ts.map +1 -0
  370. package/lib/tntd-select/rc-select/utils/platformUtil.js +9 -0
  371. package/lib/tntd-select/rc-select/utils/platformUtil.js.map +1 -0
  372. package/lib/tntd-select/rc-select/utils/valueUtil.d.ts +24 -0
  373. package/lib/tntd-select/rc-select/utils/valueUtil.d.ts.map +1 -0
  374. package/lib/tntd-select/rc-select/utils/valueUtil.js +109 -0
  375. package/lib/tntd-select/rc-select/utils/valueUtil.js.map +1 -0
  376. package/lib/tntd-select/rc-select/utils/warningPropsUtil.d.ts +5 -0
  377. package/lib/tntd-select/rc-select/utils/warningPropsUtil.d.ts.map +1 -0
  378. package/lib/tntd-select/rc-select/utils/warningPropsUtil.js +130 -0
  379. package/lib/tntd-select/rc-select/utils/warningPropsUtil.js.map +1 -0
  380. package/package.json +1 -1
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __rest = (this && this.__rest) || function (s, e) {
26
+ var t = {};
27
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
+ t[p] = s[p];
29
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
+ t[p[i]] = s[p[i]];
33
+ }
34
+ return t;
35
+ };
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
40
+ const trigger_1 = __importDefault(require("@rc-component/trigger"));
41
+ const classnames_1 = __importDefault(require("classnames"));
42
+ const React = __importStar(require("react"));
43
+ const getBuiltInPlacements = (dropdownMatchSelectWidth) => {
44
+ // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided
45
+ const adjustX = dropdownMatchSelectWidth === true ? 0 : 1;
46
+ return {
47
+ bottomLeft: {
48
+ points: ['tl', 'bl'],
49
+ offset: [0, 4],
50
+ overflow: {
51
+ adjustX,
52
+ adjustY: 1,
53
+ },
54
+ htmlRegion: 'scroll',
55
+ },
56
+ bottomRight: {
57
+ points: ['tr', 'br'],
58
+ offset: [0, 4],
59
+ overflow: {
60
+ adjustX,
61
+ adjustY: 1,
62
+ },
63
+ htmlRegion: 'scroll',
64
+ },
65
+ topLeft: {
66
+ points: ['bl', 'tl'],
67
+ offset: [0, -4],
68
+ overflow: {
69
+ adjustX,
70
+ adjustY: 1,
71
+ },
72
+ htmlRegion: 'scroll',
73
+ },
74
+ topRight: {
75
+ points: ['br', 'tr'],
76
+ offset: [0, -4],
77
+ overflow: {
78
+ adjustX,
79
+ adjustY: 1,
80
+ },
81
+ htmlRegion: 'scroll',
82
+ },
83
+ };
84
+ };
85
+ const SelectTrigger = (props, ref) => {
86
+ const { prefixCls, disabled, visible, children, popupElement, animation, transitionName, dropdownStyle, dropdownClassName, direction = 'ltr', placement, builtinPlacements, dropdownMatchSelectWidth, dropdownRender, dropdownAlign, getPopupContainer, empty, getTriggerDOMNode, onPopupVisibleChange, onPopupMouseEnter } = props, restProps = __rest(props, ["prefixCls", "disabled", "visible", "children", "popupElement", "animation", "transitionName", "dropdownStyle", "dropdownClassName", "direction", "placement", "builtinPlacements", "dropdownMatchSelectWidth", "dropdownRender", "dropdownAlign", "getPopupContainer", "empty", "getTriggerDOMNode", "onPopupVisibleChange", "onPopupMouseEnter"]);
87
+ const dropdownPrefixCls = `${prefixCls}-dropdown`;
88
+ let popupNode = popupElement;
89
+ if (dropdownRender) {
90
+ popupNode = dropdownRender(popupElement);
91
+ }
92
+ const mergedBuiltinPlacements = React.useMemo(() => builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth), [builtinPlacements, dropdownMatchSelectWidth]);
93
+ // ===================== Motion ======================
94
+ const mergedTransitionName = animation ? `${dropdownPrefixCls}-${animation}` : transitionName;
95
+ // =================== Popup Width ===================
96
+ const isNumberPopupWidth = typeof dropdownMatchSelectWidth === 'number';
97
+ const stretch = React.useMemo(() => {
98
+ if (isNumberPopupWidth) {
99
+ return null;
100
+ }
101
+ return dropdownMatchSelectWidth === false ? 'minWidth' : 'width';
102
+ }, [dropdownMatchSelectWidth, isNumberPopupWidth]);
103
+ let popupStyle = dropdownStyle;
104
+ if (isNumberPopupWidth) {
105
+ popupStyle = Object.assign(Object.assign({}, popupStyle), { width: dropdownMatchSelectWidth });
106
+ }
107
+ // ======================= Ref =======================
108
+ const popupRef = React.useRef(null);
109
+ React.useImperativeHandle(ref, () => ({
110
+ getPopupElement: () => popupRef.current,
111
+ }));
112
+ return (React.createElement(trigger_1.default, Object.assign({}, restProps, { showAction: onPopupVisibleChange ? ['click'] : [], hideAction: onPopupVisibleChange ? ['click'] : [], popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'), builtinPlacements: mergedBuiltinPlacements, prefixCls: dropdownPrefixCls, popupTransitionName: mergedTransitionName, popup: React.createElement("div", { ref: popupRef, onMouseEnter: onPopupMouseEnter }, popupNode), stretch: stretch, popupAlign: dropdownAlign, popupVisible: visible, getPopupContainer: getPopupContainer, popupClassName: (0, classnames_1.default)(dropdownClassName, {
113
+ [`${dropdownPrefixCls}-empty`]: empty,
114
+ }), popupStyle: popupStyle, getTriggerDOMNode: getTriggerDOMNode, onPopupVisibleChange: onPopupVisibleChange }), children));
115
+ };
116
+ const RefSelectTrigger = React.forwardRef(SelectTrigger);
117
+ RefSelectTrigger.displayName = 'SelectTrigger';
118
+ exports.default = RefSelectTrigger;
119
+ //# sourceMappingURL=SelectTrigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectTrigger.js","sourceRoot":"","sources":["../../../src/tntd-select/rc-select/SelectTrigger.tsx"],"names":[],"mappings":"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","sourcesContent":["import Trigger from '@rc-component/trigger';\nimport type { AlignType, BuildInPlacements } from '@rc-component/trigger/lib/interface';\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport type { Placement, RenderDOMFunc } from './BaseSelect';\n\nconst getBuiltInPlacements = (\n dropdownMatchSelectWidth: number | boolean,\n): Record<string, AlignType> => {\n // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided\n const adjustX = dropdownMatchSelectWidth === true ? 0 : 1;\n return {\n bottomLeft: {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: {\n adjustX,\n adjustY: 1,\n },\n htmlRegion: 'scroll',\n },\n bottomRight: {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX,\n adjustY: 1,\n },\n htmlRegion: 'scroll',\n },\n topLeft: {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: {\n adjustX,\n adjustY: 1,\n },\n htmlRegion: 'scroll',\n },\n topRight: {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX,\n adjustY: 1,\n },\n htmlRegion: 'scroll',\n },\n };\n};\n\nexport interface RefTriggerProps {\n getPopupElement: () => HTMLDivElement;\n}\n\nexport interface SelectTriggerProps {\n prefixCls: string;\n children: React.ReactElement;\n disabled: boolean;\n visible: boolean;\n popupElement: React.ReactElement;\n\n animation?: string;\n transitionName?: string;\n placement?: Placement;\n builtinPlacements?: BuildInPlacements;\n dropdownStyle: React.CSSProperties;\n dropdownClassName: string;\n direction: string;\n dropdownMatchSelectWidth?: boolean | number;\n dropdownRender?: (menu: React.ReactElement) => React.ReactElement;\n getPopupContainer?: RenderDOMFunc;\n dropdownAlign: AlignType;\n empty: boolean;\n\n getTriggerDOMNode: () => HTMLElement;\n onPopupVisibleChange?: (visible: boolean) => void;\n\n onPopupMouseEnter: () => void;\n}\n\nconst SelectTrigger: React.RefForwardingComponent<RefTriggerProps, SelectTriggerProps> = (\n props,\n ref,\n) => {\n const {\n prefixCls,\n disabled,\n visible,\n children,\n popupElement,\n animation,\n transitionName,\n dropdownStyle,\n dropdownClassName,\n direction = 'ltr',\n placement,\n builtinPlacements,\n dropdownMatchSelectWidth,\n dropdownRender,\n dropdownAlign,\n getPopupContainer,\n empty,\n getTriggerDOMNode,\n onPopupVisibleChange,\n onPopupMouseEnter,\n ...restProps\n } = props;\n\n const dropdownPrefixCls = `${prefixCls}-dropdown`;\n\n let popupNode = popupElement;\n if (dropdownRender) {\n popupNode = dropdownRender(popupElement);\n }\n\n const mergedBuiltinPlacements = React.useMemo(\n () => builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth),\n [builtinPlacements, dropdownMatchSelectWidth],\n );\n\n // ===================== Motion ======================\n const mergedTransitionName = animation ? `${dropdownPrefixCls}-${animation}` : transitionName;\n\n // =================== Popup Width ===================\n const isNumberPopupWidth = typeof dropdownMatchSelectWidth === 'number';\n\n const stretch = React.useMemo(() => {\n if (isNumberPopupWidth) {\n return null;\n }\n\n return dropdownMatchSelectWidth === false ? 'minWidth' : 'width';\n }, [dropdownMatchSelectWidth, isNumberPopupWidth]);\n\n let popupStyle = dropdownStyle;\n\n if (isNumberPopupWidth) {\n popupStyle = {\n ...popupStyle,\n width: dropdownMatchSelectWidth,\n };\n }\n\n // ======================= Ref =======================\n const popupRef = React.useRef<HTMLDivElement>(null);\n\n React.useImperativeHandle(ref, () => ({\n getPopupElement: () => popupRef.current,\n }));\n\n return (\n <Trigger\n {...restProps}\n showAction={onPopupVisibleChange ? ['click'] : []}\n hideAction={onPopupVisibleChange ? ['click'] : []}\n popupPlacement={placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft')}\n builtinPlacements={mergedBuiltinPlacements}\n prefixCls={dropdownPrefixCls}\n popupTransitionName={mergedTransitionName}\n popup={\n <div ref={popupRef} onMouseEnter={onPopupMouseEnter}>\n {popupNode}\n </div>\n }\n stretch={stretch}\n popupAlign={dropdownAlign}\n popupVisible={visible}\n getPopupContainer={getPopupContainer}\n popupClassName={classNames(dropdownClassName, {\n [`${dropdownPrefixCls}-empty`]: empty,\n })}\n popupStyle={popupStyle}\n getTriggerDOMNode={getTriggerDOMNode}\n onPopupVisibleChange={onPopupVisibleChange}\n >\n {children}\n </Trigger>\n );\n};\n\nconst RefSelectTrigger = React.forwardRef<RefTriggerProps, SelectTriggerProps>(SelectTrigger);\nRefSelectTrigger.displayName = 'SelectTrigger';\n\nexport default RefSelectTrigger;\n"]}
@@ -0,0 +1,27 @@
1
+ import * as React from 'react';
2
+ declare type InputRef = HTMLInputElement | HTMLTextAreaElement;
3
+ interface InputProps {
4
+ prefixCls: string;
5
+ id: string;
6
+ inputElement: React.ReactElement;
7
+ disabled: boolean;
8
+ autoFocus: boolean;
9
+ autoComplete: string;
10
+ editable: boolean;
11
+ activeDescendantId?: string;
12
+ value: string;
13
+ maxLength?: number;
14
+ open: boolean;
15
+ tabIndex: number;
16
+ /** Pass accessibility props to input */
17
+ attrs: Record<string, unknown>;
18
+ onKeyDown: React.KeyboardEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
19
+ onMouseDown: React.MouseEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
20
+ onChange: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
21
+ onPaste: React.ClipboardEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
22
+ onCompositionStart: React.CompositionEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
23
+ onCompositionEnd: React.CompositionEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;
24
+ }
25
+ declare const RefInput: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<InputRef>>;
26
+ export default RefInput;
27
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,aAAK,QAAQ,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAEvD,UAAU,UAAU;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE/B,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CAAC,CAAC;IAC5F,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CAAC,CAAC;IAC3F,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CAAC,CAAC;IACzF,OAAO,EAAE,KAAK,CAAC,qBAAqB,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CAAC,CAAC;IAC3F,kBAAkB,EAAE,KAAK,CAAC,uBAAuB,CAC/C,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CACrD,CAAC;IACF,gBAAgB,EAAE,KAAK,CAAC,uBAAuB,CAC7C,gBAAgB,GAAG,mBAAmB,GAAG,WAAW,CACrD,CAAC;CACH;AA6GD,QAAA,MAAM,QAAQ,6EAAgD,CAAC;AAG/D,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const React = __importStar(require("react"));
30
+ const classnames_1 = __importDefault(require("classnames"));
31
+ const ref_1 = require("rc-util/lib/ref");
32
+ const warning_1 = require("rc-util/lib/warning");
33
+ const Input = ({ prefixCls, id, inputElement, disabled, tabIndex, autoFocus, autoComplete, editable, activeDescendantId, value, maxLength, onKeyDown, onMouseDown, onChange, onPaste, onCompositionStart, onCompositionEnd, open, attrs, }, ref) => {
34
+ var _a;
35
+ let inputNode = inputElement || React.createElement("input", null);
36
+ const { ref: originRef, props: originProps } = inputNode;
37
+ const { onKeyDown: onOriginKeyDown, onChange: onOriginChange, onMouseDown: onOriginMouseDown, onCompositionStart: onOriginCompositionStart, onCompositionEnd: onOriginCompositionEnd, style, } = originProps;
38
+ (0, warning_1.warning)(!('maxLength' in inputNode.props), `Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled.`);
39
+ inputNode = React.cloneElement(inputNode, Object.assign(Object.assign(Object.assign(Object.assign({ type: 'search' }, originProps), {
40
+ // Override over origin props
41
+ id, ref: (0, ref_1.composeRef)(ref, originRef), disabled,
42
+ tabIndex, autoComplete: autoComplete || 'off', autoFocus, className: (0, classnames_1.default)(`${prefixCls}-selection-search-input`, (_a = inputNode === null || inputNode === void 0 ? void 0 : inputNode.props) === null || _a === void 0 ? void 0 : _a.className), role: 'combobox', 'aria-expanded': open || false, 'aria-haspopup': 'listbox', 'aria-owns': `${id}_list`, 'aria-autocomplete': 'list', 'aria-controls': `${id}_list`, 'aria-activedescendant': open ? activeDescendantId : undefined }), attrs), { value: editable ? value : '', maxLength, readOnly: !editable, unselectable: !editable ? 'on' : null, style: Object.assign(Object.assign({}, style), { opacity: editable ? null : 0 }), onKeyDown: (event) => {
43
+ onKeyDown(event);
44
+ if (onOriginKeyDown) {
45
+ onOriginKeyDown(event);
46
+ }
47
+ }, onMouseDown: (event) => {
48
+ onMouseDown(event);
49
+ if (onOriginMouseDown) {
50
+ onOriginMouseDown(event);
51
+ }
52
+ }, onChange: (event) => {
53
+ onChange(event);
54
+ if (onOriginChange) {
55
+ onOriginChange(event);
56
+ }
57
+ }, onCompositionStart(event) {
58
+ onCompositionStart(event);
59
+ if (onOriginCompositionStart) {
60
+ onOriginCompositionStart(event);
61
+ }
62
+ },
63
+ onCompositionEnd(event) {
64
+ onCompositionEnd(event);
65
+ if (onOriginCompositionEnd) {
66
+ onOriginCompositionEnd(event);
67
+ }
68
+ },
69
+ onPaste }));
70
+ return inputNode;
71
+ };
72
+ const RefInput = React.forwardRef(Input);
73
+ RefInput.displayName = 'Input';
74
+ exports.default = RefInput;
75
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/Input.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRef } from 'rc-util/lib/ref';\nimport { warning } from 'rc-util/lib/warning';\n\ntype InputRef = HTMLInputElement | HTMLTextAreaElement;\n\ninterface InputProps {\n prefixCls: string;\n id: string;\n inputElement: React.ReactElement;\n disabled: boolean;\n autoFocus: boolean;\n autoComplete: string;\n editable: boolean;\n activeDescendantId?: string;\n value: string;\n maxLength?: number;\n open: boolean;\n tabIndex: number;\n /** Pass accessibility props to input */\n attrs: Record<string, unknown>;\n\n onKeyDown: React.KeyboardEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;\n onMouseDown: React.MouseEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;\n onChange: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;\n onPaste: React.ClipboardEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLElement>;\n onCompositionStart: React.CompositionEventHandler<\n HTMLInputElement | HTMLTextAreaElement | HTMLElement\n >;\n onCompositionEnd: React.CompositionEventHandler<\n HTMLInputElement | HTMLTextAreaElement | HTMLElement\n >;\n}\n\nconst Input: React.RefForwardingComponent<InputRef, InputProps> = (\n {\n prefixCls,\n id,\n inputElement,\n disabled,\n tabIndex,\n autoFocus,\n autoComplete,\n editable,\n activeDescendantId,\n value,\n maxLength,\n onKeyDown,\n onMouseDown,\n onChange,\n onPaste,\n onCompositionStart,\n onCompositionEnd,\n open,\n attrs,\n },\n ref,\n) => {\n let inputNode: React.ComponentElement<any, any> = inputElement || <input />;\n\n const { ref: originRef, props: originProps } = inputNode;\n\n const {\n onKeyDown: onOriginKeyDown,\n onChange: onOriginChange,\n onMouseDown: onOriginMouseDown,\n onCompositionStart: onOriginCompositionStart,\n onCompositionEnd: onOriginCompositionEnd,\n style,\n } = originProps;\n\n warning(\n !('maxLength' in inputNode.props),\n `Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled.`,\n );\n\n inputNode = React.cloneElement(inputNode, {\n type: 'search',\n ...originProps,\n\n // Override over origin props\n id,\n ref: composeRef(ref, originRef as any),\n disabled,\n tabIndex,\n autoComplete: autoComplete || 'off',\n\n autoFocus,\n className: classNames(`${prefixCls}-selection-search-input`, inputNode?.props?.className),\n\n role: 'combobox',\n 'aria-expanded': open || false,\n 'aria-haspopup': 'listbox',\n 'aria-owns': `${id}_list`,\n 'aria-autocomplete': 'list',\n 'aria-controls': `${id}_list`,\n 'aria-activedescendant': open ? activeDescendantId : undefined,\n ...attrs,\n value: editable ? value : '',\n maxLength,\n readOnly: !editable,\n unselectable: !editable ? 'on' : null,\n\n style: { ...style, opacity: editable ? null : 0 },\n\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => {\n onKeyDown(event);\n if (onOriginKeyDown) {\n onOriginKeyDown(event);\n }\n },\n onMouseDown: (event: React.MouseEvent<HTMLElement>) => {\n onMouseDown(event);\n if (onOriginMouseDown) {\n onOriginMouseDown(event);\n }\n },\n onChange: (event: React.ChangeEvent<HTMLElement>) => {\n onChange(event);\n if (onOriginChange) {\n onOriginChange(event);\n }\n },\n onCompositionStart(event: React.CompositionEvent<HTMLElement>) {\n onCompositionStart(event);\n if (onOriginCompositionStart) {\n onOriginCompositionStart(event);\n }\n },\n onCompositionEnd(event: React.CompositionEvent<HTMLElement>) {\n onCompositionEnd(event);\n if (onOriginCompositionEnd) {\n onOriginCompositionEnd(event);\n }\n },\n onPaste,\n });\n\n return inputNode;\n};\n\nconst RefInput = React.forwardRef<InputRef, InputProps>(Input);\nRefInput.displayName = 'Input';\n\nexport default RefInput;\n"]}
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+ import type { InnerSelectorProps } from '.';
3
+ import type { DisplayValueType, RenderNode, CustomTagProps } from '../BaseSelect';
4
+ interface SelectorProps extends InnerSelectorProps {
5
+ removeIcon?: RenderNode;
6
+ maxTagCount?: number | 'responsive';
7
+ maxTagTextLength?: number;
8
+ maxTagPlaceholder?: React.ReactNode | ((omittedValues: DisplayValueType[]) => React.ReactNode);
9
+ tokenSeparators?: string[];
10
+ tagRender?: (props: CustomTagProps) => React.ReactElement;
11
+ onToggleOpen: (open?: boolean) => void;
12
+ choiceTransitionName?: string;
13
+ onRemove: (value: DisplayValueType) => void;
14
+ }
15
+ declare const SelectSelector: React.FC<SelectorProps>;
16
+ export default SelectSelector;
17
+ //# sourceMappingURL=MultipleSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultipleSelector.d.ts","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/MultipleSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,GAAG,CAAC;AAG5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAgB,MAAM,eAAe,CAAC;AAOhG,UAAU,aAAc,SAAQ,kBAAkB;IAEhD,UAAU,CAAC,EAAE,UAAU,CAAC;IAGxB,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,aAAa,EAAE,gBAAgB,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/F,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,KAAK,CAAC,YAAY,CAAC;IAC1D,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAGvC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC7C;AAMD,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA6M3C,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const React = __importStar(require("react"));
30
+ const react_1 = require("react");
31
+ const classnames_1 = __importDefault(require("classnames"));
32
+ const pickAttrs_1 = __importDefault(require("rc-util/lib/pickAttrs"));
33
+ const rc_overflow_1 = __importDefault(require("rc-overflow"));
34
+ const TransBtn_1 = __importDefault(require("../TransBtn"));
35
+ const Input_1 = __importDefault(require("./Input"));
36
+ const useLayoutEffect_1 = __importDefault(require("../hooks/useLayoutEffect"));
37
+ const commonUtil_1 = require("../utils/commonUtil");
38
+ function itemKey(value) {
39
+ var _a;
40
+ return (_a = value.key) !== null && _a !== void 0 ? _a : value.value;
41
+ }
42
+ const onPreventMouseDown = (event) => {
43
+ event.preventDefault();
44
+ event.stopPropagation();
45
+ };
46
+ const SelectSelector = (props) => {
47
+ const { id, prefixCls, values, open, searchValue, autoClearSearchValue, inputRef, placeholder, disabled, mode, showSearch, autoFocus, autoComplete, activeDescendantId, tabIndex, removeIcon, maxTagCount, maxTagTextLength, maxTagPlaceholder = (omittedValues) => `+ ${omittedValues.length} ...`, tagRender, onToggleOpen, onRemove, onInputChange, onInputPaste, onInputKeyDown, onInputMouseDown, onInputCompositionStart, onInputCompositionEnd, } = props;
48
+ const measureRef = React.useRef(null);
49
+ const [inputWidth, setInputWidth] = (0, react_1.useState)(0);
50
+ const [focused, setFocused] = (0, react_1.useState)(false);
51
+ const selectionPrefixCls = `${prefixCls}-selection`;
52
+ // ===================== Search ======================
53
+ const inputValue = open || (mode === "multiple" && autoClearSearchValue === false) || mode === 'tags' ? searchValue : '';
54
+ const inputEditable = mode === 'tags' || (mode === "multiple" && autoClearSearchValue === false) || (showSearch && (open || focused));
55
+ // We measure width and set to the input immediately
56
+ (0, useLayoutEffect_1.default)(() => {
57
+ setInputWidth(measureRef.current.scrollWidth);
58
+ }, [inputValue]);
59
+ // ===================== Render ======================
60
+ // >>> Render Selector Node. Includes Item & Rest
61
+ function defaultRenderSelector(item, content, itemDisabled, closable, onClose) {
62
+ return (React.createElement("span", { className: (0, classnames_1.default)(`${selectionPrefixCls}-item`, {
63
+ [`${selectionPrefixCls}-item-disabled`]: itemDisabled,
64
+ }), title: (0, commonUtil_1.getTitle)(item) },
65
+ React.createElement("span", { className: `${selectionPrefixCls}-item-content` }, content),
66
+ closable && (React.createElement(TransBtn_1.default, { className: `${selectionPrefixCls}-item-remove`, onMouseDown: onPreventMouseDown, onClick: onClose, customizeIcon: removeIcon }, "\u00D7"))));
67
+ }
68
+ function customizeRenderSelector(value, content, itemDisabled, closable, onClose) {
69
+ const onMouseDown = (e) => {
70
+ onPreventMouseDown(e);
71
+ onToggleOpen(!open);
72
+ };
73
+ return (React.createElement("span", { onMouseDown: onMouseDown }, tagRender({
74
+ label: content,
75
+ value,
76
+ disabled: itemDisabled,
77
+ closable,
78
+ onClose,
79
+ })));
80
+ }
81
+ function renderItem(valueItem) {
82
+ const { disabled: itemDisabled, label, value } = valueItem;
83
+ const closable = !disabled && !itemDisabled;
84
+ let displayLabel = label;
85
+ if (typeof maxTagTextLength === 'number') {
86
+ if (typeof label === 'string' || typeof label === 'number') {
87
+ const strLabel = String(displayLabel);
88
+ if (strLabel.length > maxTagTextLength) {
89
+ displayLabel = `${strLabel.slice(0, maxTagTextLength)}...`;
90
+ }
91
+ }
92
+ }
93
+ const onClose = (event) => {
94
+ if (event)
95
+ event.stopPropagation();
96
+ onRemove(valueItem);
97
+ };
98
+ return typeof tagRender === 'function'
99
+ ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose)
100
+ : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose);
101
+ }
102
+ function renderRest(omittedValues) {
103
+ const content = typeof maxTagPlaceholder === 'function'
104
+ ? maxTagPlaceholder(omittedValues)
105
+ : maxTagPlaceholder;
106
+ return defaultRenderSelector({ title: content }, content, false);
107
+ }
108
+ // >>> Input Node
109
+ const inputNode = (React.createElement("div", { className: `${selectionPrefixCls}-search`, style: { width: inputWidth }, onFocus: () => {
110
+ setFocused(true);
111
+ }, onBlur: () => {
112
+ setFocused(false);
113
+ } },
114
+ React.createElement(Input_1.default, { ref: inputRef, open: open, prefixCls: prefixCls, id: id, inputElement: null, disabled: disabled, autoFocus: autoFocus, autoComplete: autoComplete, editable: inputEditable, activeDescendantId: activeDescendantId, value: inputValue, onKeyDown: onInputKeyDown, onMouseDown: onInputMouseDown, onChange: onInputChange, onPaste: onInputPaste, onCompositionStart: onInputCompositionStart, onCompositionEnd: onInputCompositionEnd, tabIndex: tabIndex, attrs: (0, pickAttrs_1.default)(props, true) }),
115
+ React.createElement("span", { ref: measureRef, className: `${selectionPrefixCls}-search-mirror`, "aria-hidden": true },
116
+ inputValue,
117
+ "\u00A0")));
118
+ // >>> Selections
119
+ const selectionNode = (React.createElement(rc_overflow_1.default, { prefixCls: `${selectionPrefixCls}-overflow`, data: values, renderItem: renderItem, renderRest: renderRest, suffix: inputNode, itemKey: itemKey, maxCount: maxTagCount }));
120
+ return (React.createElement(React.Fragment, null,
121
+ selectionNode,
122
+ !values.length && !inputValue && (React.createElement("span", { className: `${selectionPrefixCls}-placeholder` }, placeholder))));
123
+ };
124
+ exports.default = SelectSelector;
125
+ //# sourceMappingURL=MultipleSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultipleSelector.js","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/MultipleSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useState } from 'react';\nimport classNames from 'classnames';\nimport pickAttrs from 'rc-util/lib/pickAttrs';\nimport Overflow from 'rc-overflow';\nimport TransBtn from '../TransBtn';\nimport type { InnerSelectorProps } from '.';\nimport Input from './Input';\nimport useLayoutEffect from '../hooks/useLayoutEffect';\nimport type { DisplayValueType, RenderNode, CustomTagProps, RawValueType } from '../BaseSelect';\nimport { getTitle } from '../utils/commonUtil';\n\nfunction itemKey(value: DisplayValueType) {\n return value.key ?? value.value;\n}\n\ninterface SelectorProps extends InnerSelectorProps {\n // Icon\n removeIcon?: RenderNode;\n\n // Tags\n maxTagCount?: number | 'responsive';\n maxTagTextLength?: number;\n maxTagPlaceholder?: React.ReactNode | ((omittedValues: DisplayValueType[]) => React.ReactNode);\n tokenSeparators?: string[];\n tagRender?: (props: CustomTagProps) => React.ReactElement;\n onToggleOpen: (open?: boolean) => void;\n\n // Motion\n choiceTransitionName?: string;\n\n // Event\n onRemove: (value: DisplayValueType) => void;\n}\n\nconst onPreventMouseDown = (event: React.MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n};\nconst SelectSelector: React.FC<SelectorProps> = (props) => {\n const {\n id,\n prefixCls,\n\n values,\n open,\n searchValue,\n autoClearSearchValue,\n inputRef,\n placeholder,\n disabled,\n mode,\n showSearch,\n autoFocus,\n autoComplete,\n activeDescendantId,\n tabIndex,\n\n removeIcon,\n\n maxTagCount,\n maxTagTextLength,\n maxTagPlaceholder = (omittedValues: DisplayValueType[]) => `+ ${omittedValues.length} ...`,\n tagRender,\n onToggleOpen,\n\n onRemove,\n onInputChange,\n onInputPaste,\n onInputKeyDown,\n onInputMouseDown,\n onInputCompositionStart,\n onInputCompositionEnd,\n } = props;\n\n const measureRef = React.useRef<HTMLSpanElement>(null);\n const [inputWidth, setInputWidth] = useState(0);\n const [focused, setFocused] = useState(false);\n\n const selectionPrefixCls = `${prefixCls}-selection`;\n\n // ===================== Search ======================\n const inputValue = open || (mode === \"multiple\" && autoClearSearchValue === false) || mode === 'tags' ? searchValue : '';\n const inputEditable: boolean = mode === 'tags' || (mode === \"multiple\" && autoClearSearchValue === false) || (showSearch && (open || focused));\n\n // We measure width and set to the input immediately\n useLayoutEffect(() => {\n setInputWidth(measureRef.current.scrollWidth);\n }, [inputValue]);\n\n // ===================== Render ======================\n // >>> Render Selector Node. Includes Item & Rest\n function defaultRenderSelector(\n item: DisplayValueType,\n content: React.ReactNode,\n itemDisabled: boolean,\n closable?: boolean,\n onClose?: React.MouseEventHandler,\n ) {\n return (\n <span\n className={classNames(`${selectionPrefixCls}-item`, {\n [`${selectionPrefixCls}-item-disabled`]: itemDisabled,\n })}\n title={getTitle(item)}\n >\n <span className={`${selectionPrefixCls}-item-content`}>{content}</span>\n {closable && (\n <TransBtn\n className={`${selectionPrefixCls}-item-remove`}\n onMouseDown={onPreventMouseDown}\n onClick={onClose}\n customizeIcon={removeIcon}\n >\n ×\n </TransBtn>\n )}\n </span>\n );\n }\n\n function customizeRenderSelector(\n value: RawValueType,\n content: React.ReactNode,\n itemDisabled: boolean,\n closable: boolean,\n onClose: React.MouseEventHandler,\n ) {\n const onMouseDown = (e: React.MouseEvent) => {\n onPreventMouseDown(e);\n onToggleOpen(!open);\n };\n\n return (\n <span onMouseDown={onMouseDown}>\n {tagRender({\n label: content,\n value,\n disabled: itemDisabled,\n closable,\n onClose,\n })}\n </span>\n );\n }\n\n function renderItem(valueItem: DisplayValueType) {\n const { disabled: itemDisabled, label, value } = valueItem;\n const closable = !disabled && !itemDisabled;\n\n let displayLabel: React.ReactNode = label;\n\n if (typeof maxTagTextLength === 'number') {\n if (typeof label === 'string' || typeof label === 'number') {\n const strLabel = String(displayLabel);\n\n if (strLabel.length > maxTagTextLength) {\n displayLabel = `${strLabel.slice(0, maxTagTextLength)}...`;\n }\n }\n }\n\n const onClose = (event?: React.MouseEvent) => {\n if (event) event.stopPropagation();\n onRemove(valueItem);\n };\n\n return typeof tagRender === 'function'\n ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose)\n : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose);\n }\n\n function renderRest(omittedValues: DisplayValueType[]) {\n const content =\n typeof maxTagPlaceholder === 'function'\n ? maxTagPlaceholder(omittedValues)\n : maxTagPlaceholder;\n\n return defaultRenderSelector({ title: content }, content, false);\n }\n\n // >>> Input Node\n const inputNode = (\n <div\n className={`${selectionPrefixCls}-search`}\n style={{ width: inputWidth }}\n onFocus={() => {\n setFocused(true);\n }}\n onBlur={() => {\n setFocused(false);\n }}\n >\n <Input\n ref={inputRef}\n open={open}\n prefixCls={prefixCls}\n id={id}\n inputElement={null}\n disabled={disabled}\n autoFocus={autoFocus}\n autoComplete={autoComplete}\n editable={inputEditable}\n activeDescendantId={activeDescendantId}\n value={inputValue}\n onKeyDown={onInputKeyDown}\n onMouseDown={onInputMouseDown}\n onChange={onInputChange}\n onPaste={onInputPaste}\n onCompositionStart={onInputCompositionStart}\n onCompositionEnd={onInputCompositionEnd}\n tabIndex={tabIndex}\n attrs={pickAttrs(props, true)}\n />\n\n {/* Measure Node */}\n <span ref={measureRef} className={`${selectionPrefixCls}-search-mirror`} aria-hidden>\n {inputValue}&nbsp;\n </span>\n </div>\n );\n\n // >>> Selections\n const selectionNode = (\n <Overflow\n prefixCls={`${selectionPrefixCls}-overflow`}\n data={values}\n renderItem={renderItem}\n renderRest={renderRest}\n suffix={inputNode}\n itemKey={itemKey}\n maxCount={maxTagCount}\n />\n );\n\n return (\n <>\n {selectionNode}\n\n {!values.length && !inputValue && (\n <span className={`${selectionPrefixCls}-placeholder`}>{placeholder}</span>\n )}\n </>\n );\n};\n\nexport default SelectSelector;\n"]}
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import type { InnerSelectorProps } from '.';
3
+ interface SelectorProps extends InnerSelectorProps {
4
+ inputElement: React.ReactElement;
5
+ activeValue: string;
6
+ }
7
+ declare const SingleSelector: React.FC<SelectorProps>;
8
+ export default SingleSelector;
9
+ //# sourceMappingURL=SingleSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleSelector.d.ts","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/SingleSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,GAAG,CAAC;AAG5C,UAAU,aAAc,SAAQ,kBAAkB;IAChD,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAoH3C,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const React = __importStar(require("react"));
30
+ const pickAttrs_1 = __importDefault(require("rc-util/lib/pickAttrs"));
31
+ const Input_1 = __importDefault(require("./Input"));
32
+ const commonUtil_1 = require("../utils/commonUtil");
33
+ const SingleSelector = (props) => {
34
+ const { inputElement, prefixCls, id, inputRef, disabled, autoFocus, autoComplete, activeDescendantId, mode, open, values, placeholder, tabIndex, showSearch, searchValue, activeValue, maxLength, onInputKeyDown, onInputMouseDown, onInputChange, onInputPaste, onInputCompositionStart, onInputCompositionEnd, title, } = props;
35
+ const [inputChanged, setInputChanged] = React.useState(false);
36
+ const combobox = mode === 'combobox';
37
+ const inputEditable = combobox || showSearch;
38
+ const item = values[0];
39
+ let inputValue = searchValue || '';
40
+ if (combobox && activeValue && !inputChanged) {
41
+ inputValue = activeValue;
42
+ }
43
+ React.useEffect(() => {
44
+ if (combobox) {
45
+ setInputChanged(false);
46
+ }
47
+ }, [combobox, activeValue]);
48
+ // Not show text when closed expect combobox mode
49
+ const hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue;
50
+ // Get title of selection item
51
+ const selectionTitle = title === undefined ? (0, commonUtil_1.getTitle)(item) : title;
52
+ const renderPlaceholder = () => {
53
+ if (item) {
54
+ return null;
55
+ }
56
+ const hiddenStyle = hasTextInput ? { visibility: 'hidden' } : undefined;
57
+ return (React.createElement("span", { className: `${prefixCls}-selection-placeholder`, style: hiddenStyle }, placeholder));
58
+ };
59
+ return (React.createElement(React.Fragment, null,
60
+ React.createElement("span", { className: `${prefixCls}-selection-search` },
61
+ React.createElement(Input_1.default, { ref: inputRef, prefixCls: prefixCls, id: id, open: open, inputElement: inputElement, disabled: disabled, autoFocus: autoFocus, autoComplete: autoComplete, editable: inputEditable, activeDescendantId: activeDescendantId, value: inputValue, onKeyDown: onInputKeyDown, onMouseDown: onInputMouseDown, onChange: (e) => {
62
+ setInputChanged(true);
63
+ onInputChange(e);
64
+ }, onPaste: onInputPaste, onCompositionStart: onInputCompositionStart, onCompositionEnd: onInputCompositionEnd, tabIndex: tabIndex, attrs: (0, pickAttrs_1.default)(props, true), maxLength: combobox ? maxLength : undefined })),
65
+ (!combobox && item) ? (React.createElement("span", { className: `${prefixCls}-selection-item`, title: selectionTitle,
66
+ // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位
67
+ // https://github.com/ant-design/ant-design/issues/27688
68
+ // https://github.com/ant-design/ant-design/issues/41530
69
+ style: hasTextInput ? { visibility: 'hidden' } : undefined }, item.label)) : null,
70
+ renderPlaceholder()));
71
+ };
72
+ exports.default = SingleSelector;
73
+ //# sourceMappingURL=SingleSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleSelector.js","sourceRoot":"","sources":["../../../../src/tntd-select/rc-select/Selector/SingleSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport pickAttrs from 'rc-util/lib/pickAttrs';\nimport Input from './Input';\nimport type { InnerSelectorProps } from '.';\nimport { getTitle } from '../utils/commonUtil';\n\ninterface SelectorProps extends InnerSelectorProps {\n inputElement: React.ReactElement;\n activeValue: string;\n}\n\nconst SingleSelector: React.FC<SelectorProps> = (props) => {\n const {\n inputElement,\n prefixCls,\n id,\n inputRef,\n disabled,\n autoFocus,\n autoComplete,\n activeDescendantId,\n mode,\n open,\n values,\n placeholder,\n tabIndex,\n\n showSearch,\n searchValue,\n activeValue,\n maxLength,\n\n onInputKeyDown,\n onInputMouseDown,\n onInputChange,\n onInputPaste,\n onInputCompositionStart,\n onInputCompositionEnd,\n title,\n } = props;\n\n const [inputChanged, setInputChanged] = React.useState(false);\n\n const combobox = mode === 'combobox';\n const inputEditable = combobox || showSearch;\n const item = values[0];\n\n let inputValue: string = searchValue || '';\n if (combobox && activeValue && !inputChanged) {\n inputValue = activeValue;\n }\n\n React.useEffect(() => {\n if (combobox) {\n setInputChanged(false);\n }\n }, [combobox, activeValue]);\n\n // Not show text when closed expect combobox mode\n const hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue;\n\n // Get title of selection item\n const selectionTitle = title === undefined ? getTitle(item) : title;\n\n const renderPlaceholder = () => {\n if (item) {\n return null;\n }\n const hiddenStyle = hasTextInput ? { visibility: 'hidden' } as React.CSSProperties : undefined;\n return (\n <span\n className={`${prefixCls}-selection-placeholder`}\n style={hiddenStyle}\n >\n {placeholder}\n </span>\n );\n };\n\n return (\n <>\n <span className={`${prefixCls}-selection-search`}>\n <Input\n ref={inputRef}\n prefixCls={prefixCls}\n id={id}\n open={open}\n inputElement={inputElement}\n disabled={disabled}\n autoFocus={autoFocus}\n autoComplete={autoComplete}\n editable={inputEditable}\n activeDescendantId={activeDescendantId}\n value={inputValue}\n onKeyDown={onInputKeyDown}\n onMouseDown={onInputMouseDown}\n onChange={(e) => {\n setInputChanged(true);\n onInputChange(e as any);\n }}\n onPaste={onInputPaste}\n onCompositionStart={onInputCompositionStart}\n onCompositionEnd={onInputCompositionEnd}\n tabIndex={tabIndex}\n attrs={pickAttrs(props, true)}\n maxLength={combobox ? maxLength : undefined}\n />\n </span>\n\n {/* Display value */}\n {(!combobox && item) ? (\n <span\n className={`${prefixCls}-selection-item`}\n title={selectionTitle}\n // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位\n // https://github.com/ant-design/ant-design/issues/27688\n // https://github.com/ant-design/ant-design/issues/41530\n style={hasTextInput ? { visibility: 'hidden' } as React.CSSProperties : undefined}\n >\n {item.label}\n </span>\n ) : null}\n\n {/* Display placeholder */}\n {renderPlaceholder()}\n </>\n );\n};\n\nexport default SingleSelector;\n"]}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Cursor rule:
3
+ * 1. Only `showSearch` enabled
4
+ * 2. Only `open` is `true`
5
+ * 3. When typing, set `open` to `true` which hit rule of 2
6
+ *
7
+ * Accessibility:
8
+ * - https://www.w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html
9
+ */
10
+ import * as React from 'react';
11
+ import type { ScrollTo } from 'rc-virtual-list/lib/List';
12
+ import type { CustomTagProps, DisplayValueType, Mode, RenderNode } from '../BaseSelect';
13
+ export interface InnerSelectorProps {
14
+ prefixCls: string;
15
+ id: string;
16
+ mode: Mode;
17
+ title?: string;
18
+ inputRef: React.Ref<HTMLInputElement | HTMLTextAreaElement>;
19
+ placeholder?: React.ReactNode;
20
+ disabled?: boolean;
21
+ autoFocus?: boolean;
22
+ autoComplete?: string;
23
+ values: DisplayValueType[];
24
+ showSearch?: boolean;
25
+ searchValue: string;
26
+ autoClearSearchValue?: boolean;
27
+ activeDescendantId?: string;
28
+ open: boolean;
29
+ tabIndex?: number;
30
+ maxLength?: number;
31
+ onInputKeyDown: React.KeyboardEventHandler<HTMLInputElement | HTMLTextAreaElement>;
32
+ onInputMouseDown: React.MouseEventHandler<HTMLInputElement | HTMLTextAreaElement>;
33
+ onInputChange: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement>;
34
+ onInputPaste: React.ClipboardEventHandler<HTMLInputElement | HTMLTextAreaElement>;
35
+ onInputCompositionStart: React.CompositionEventHandler<HTMLInputElement | HTMLTextAreaElement>;
36
+ onInputCompositionEnd: React.CompositionEventHandler<HTMLInputElement | HTMLTextAreaElement>;
37
+ }
38
+ export interface RefSelectorProps {
39
+ focus: () => void;
40
+ blur: () => void;
41
+ scrollTo?: ScrollTo;
42
+ }
43
+ export interface SelectorProps {
44
+ id: string;
45
+ prefixCls: string;
46
+ showSearch?: boolean;
47
+ open: boolean;
48
+ /** Display in the Selector value, it's not same as `value` prop */
49
+ values: DisplayValueType[];
50
+ mode: Mode;
51
+ searchValue: string;
52
+ activeValue: string;
53
+ autoClearSearchValue: boolean;
54
+ inputElement: JSX.Element;
55
+ maxLength?: number;
56
+ autoFocus?: boolean;
57
+ activeDescendantId?: string;
58
+ tabIndex?: number;
59
+ disabled?: boolean;
60
+ placeholder?: React.ReactNode;
61
+ removeIcon?: RenderNode;
62
+ maxTagCount?: number | 'responsive';
63
+ maxTagTextLength?: number;
64
+ maxTagPlaceholder?: React.ReactNode | ((omittedValues: DisplayValueType[]) => React.ReactNode);
65
+ tagRender?: (props: CustomTagProps) => React.ReactElement;
66
+ /** Check if `tokenSeparators` contains `\n` or `\r\n` */
67
+ tokenWithEnter?: boolean;
68
+ choiceTransitionName?: string;
69
+ onToggleOpen: (open?: boolean) => void;
70
+ /** `onSearch` returns go next step boolean to check if need do toggle open */
71
+ onSearch: (searchText: string, fromTyping: boolean, isCompositing: boolean) => boolean;
72
+ onSearchSubmit?: (searchText: string) => void;
73
+ onRemove: (value: DisplayValueType) => void;
74
+ onInputKeyDown?: React.KeyboardEventHandler<HTMLInputElement | HTMLTextAreaElement>;
75
+ /**
76
+ * @private get real dom for trigger align.
77
+ * This may be removed after React provides replacement of `findDOMNode`
78
+ */
79
+ domRef: React.Ref<HTMLDivElement>;
80
+ }
81
+ declare const ForwardSelector: React.ForwardRefExoticComponent<SelectorProps & React.RefAttributes<RefSelectorProps>>;
82
+ export default ForwardSelector;
83
+ //# sourceMappingURL=index.d.ts.map