tntd 2.0.1 → 2.0.3

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 (415) hide show
  1. package/es/ellipsis/index.js +1 -1
  2. package/es/ellipsis/index.js.map +1 -1
  3. package/es/exception/exception.js +34 -0
  4. package/es/exception/exception.js.map +1 -0
  5. package/es/exception/exception.less +29 -0
  6. package/es/exception/index.js +5 -0
  7. package/es/exception/index.js.map +1 -0
  8. package/es/handle/index.js +52 -33
  9. package/es/handle/index.js.map +1 -1
  10. package/es/index.js +2 -0
  11. package/es/index.js.map +1 -1
  12. package/es/locale/default.js +3 -2
  13. package/es/locale/default.js.map +1 -1
  14. package/es/locale/en_US.js +13 -1
  15. package/es/locale/en_US.js.map +1 -1
  16. package/es/locale/zh_CN.js +13 -1
  17. package/es/locale/zh_CN.js.map +1 -1
  18. package/es/page/index.js +1 -1
  19. package/es/page/index.js.map +1 -1
  20. package/es/prev-locale.js +7 -1
  21. package/es/prev-locale.js.map +1 -1
  22. package/es/steps/index.js +3 -2
  23. package/es/steps/index.js.map +1 -1
  24. package/es/steps/steps.js +46 -0
  25. package/es/steps/steps.js.map +1 -0
  26. package/es/steps/style/index.less +11 -0
  27. package/es/steps/style/nav.less +273 -0
  28. package/es/steps/style/small.less +5 -0
  29. package/es/tntd-cascader/AntdCascader/component/DisabledContext.js +8 -0
  30. package/es/tntd-cascader/AntdCascader/component/DisabledContext.js.map +1 -0
  31. package/es/tntd-cascader/AntdCascader/component/FormItemInputContext.js +3 -0
  32. package/es/tntd-cascader/AntdCascader/component/FormItemInputContext.js.map +1 -0
  33. package/es/tntd-cascader/AntdCascader/component/SizeContext.js +3 -0
  34. package/es/tntd-cascader/AntdCascader/component/SizeContext.js.map +1 -0
  35. package/es/tntd-cascader/AntdCascader/component/context.js +14 -0
  36. package/es/tntd-cascader/AntdCascader/component/context.js.map +1 -0
  37. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +20 -0
  38. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -0
  39. package/es/tntd-cascader/AntdCascader/component/getIcons.js +52 -0
  40. package/es/tntd-cascader/AntdCascader/component/getIcons.js.map +1 -0
  41. package/es/tntd-cascader/AntdCascader/component/useCompactItemContext.js +24 -0
  42. package/es/tntd-cascader/AntdCascader/component/useCompactItemContext.js.map +1 -0
  43. package/es/tntd-cascader/AntdCascader/config/utils.js +24 -0
  44. package/es/tntd-cascader/AntdCascader/config/utils.js.map +1 -0
  45. package/es/tntd-cascader/AntdCascader/config/warning.js +15 -0
  46. package/es/tntd-cascader/AntdCascader/config/warning.js.map +1 -0
  47. package/es/tntd-cascader/AntdCascader/index.css +2327 -0
  48. package/es/tntd-cascader/AntdCascader/index.js +149 -0
  49. package/es/tntd-cascader/AntdCascader/index.js.map +1 -0
  50. package/es/tntd-cascader/AntdCascader/interface.js +5 -0
  51. package/es/tntd-cascader/AntdCascader/interface.js.map +1 -0
  52. package/es/tntd-cascader/img/no-data-s.png +0 -0
  53. package/es/tntd-cascader/index.js +2 -0
  54. package/es/tntd-cascader/index.js.map +1 -0
  55. package/es/tntd-cascader/rc-cascader/Cascader.js +270 -0
  56. package/es/tntd-cascader/rc-cascader/Cascader.js.map +1 -0
  57. package/es/tntd-cascader/rc-cascader/OptionList/Checkbox.js +14 -0
  58. package/es/tntd-cascader/rc-cascader/OptionList/Checkbox.js.map +1 -0
  59. package/es/tntd-cascader/rc-cascader/OptionList/Column.js +126 -0
  60. package/es/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -0
  61. package/es/tntd-cascader/rc-cascader/OptionList/index.js +140 -0
  62. package/es/tntd-cascader/rc-cascader/OptionList/index.js.map +1 -0
  63. package/es/tntd-cascader/rc-cascader/OptionList/useActive.js +24 -0
  64. package/es/tntd-cascader/rc-cascader/OptionList/useActive.js.map +1 -0
  65. package/es/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +145 -0
  66. package/es/tntd-cascader/rc-cascader/OptionList/useKeyboard.js.map +1 -0
  67. package/es/tntd-cascader/rc-cascader/context.js +4 -0
  68. package/es/tntd-cascader/rc-cascader/context.js.map +1 -0
  69. package/es/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +41 -0
  70. package/es/tntd-cascader/rc-cascader/hooks/useDisplayValues.js.map +1 -0
  71. package/es/tntd-cascader/rc-cascader/hooks/useEntities.js +30 -0
  72. package/es/tntd-cascader/rc-cascader/hooks/useEntities.js.map +1 -0
  73. package/es/tntd-cascader/rc-cascader/hooks/useMissingValues.js +19 -0
  74. package/es/tntd-cascader/rc-cascader/hooks/useMissingValues.js.map +1 -0
  75. package/es/tntd-cascader/rc-cascader/hooks/useRefFunc.js +15 -0
  76. package/es/tntd-cascader/rc-cascader/hooks/useRefFunc.js.map +1 -0
  77. package/es/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +26 -0
  78. package/es/tntd-cascader/rc-cascader/hooks/useSearchConfig.js.map +1 -0
  79. package/es/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +46 -0
  80. package/es/tntd-cascader/rc-cascader/hooks/useSearchOptions.js.map +1 -0
  81. package/es/tntd-cascader/rc-cascader/index.js +3 -0
  82. package/es/tntd-cascader/rc-cascader/index.js.map +1 -0
  83. package/es/tntd-cascader/rc-cascader/index.less +19 -0
  84. package/es/tntd-cascader/rc-cascader/utils/commonUtil.js +41 -0
  85. package/es/tntd-cascader/rc-cascader/utils/commonUtil.js.map +1 -0
  86. package/es/tntd-cascader/rc-cascader/utils/treeUtil.js +37 -0
  87. package/es/tntd-cascader/rc-cascader/utils/treeUtil.js.map +1 -0
  88. package/es/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +30 -0
  89. package/es/tntd-cascader/rc-cascader/utils/warningPropsUtil.js.map +1 -0
  90. package/es/tntd-layout/Avatar.js +25 -19
  91. package/es/tntd-layout/Avatar.js.map +1 -1
  92. package/es/tntd-layout/EnterpriseLayout/Avatar.js +10 -8
  93. package/es/tntd-layout/EnterpriseLayout/Avatar.js.map +1 -1
  94. package/es/tntd-layout/EnterpriseLayout/Language.js +5 -4
  95. package/es/tntd-layout/EnterpriseLayout/Language.js.map +1 -1
  96. package/es/tntd-layout/EnterpriseLayout/Theme.js +7 -6
  97. package/es/tntd-layout/EnterpriseLayout/Theme.js.map +1 -1
  98. package/es/tntd-layout/HeaderActions.js +5 -4
  99. package/es/tntd-layout/HeaderActions.js.map +1 -1
  100. package/es/tntd-layout/Layout.js +2 -2
  101. package/es/tntd-layout/Layout.js.map +1 -1
  102. package/es/tntd-layout/SideMenu.js.map +1 -1
  103. package/es/tntd-layout/index.js +2 -2
  104. package/es/tntd-layout/index.js.map +1 -1
  105. package/es/tntd-layout/storage.js +10 -2
  106. package/es/tntd-layout/storage.js.map +1 -1
  107. package/lib/ellipsis/index.js +1 -1
  108. package/lib/ellipsis/index.js.map +1 -1
  109. package/lib/exception/exception.d.ts +16 -0
  110. package/lib/exception/exception.d.ts.map +1 -0
  111. package/lib/exception/exception.js +41 -0
  112. package/lib/exception/exception.js.map +1 -0
  113. package/lib/exception/exception.less +29 -0
  114. package/lib/exception/index.d.ts +5 -0
  115. package/lib/exception/index.d.ts.map +1 -0
  116. package/lib/exception/index.js +21 -0
  117. package/lib/exception/index.js.map +1 -0
  118. package/lib/handle/index.d.ts.map +1 -1
  119. package/lib/handle/index.js +52 -33
  120. package/lib/handle/index.js.map +1 -1
  121. package/lib/index.d.ts +2 -0
  122. package/lib/index.d.ts.map +1 -1
  123. package/lib/index.js +5 -1
  124. package/lib/index.js.map +1 -1
  125. package/lib/locale/default.d.ts +13 -1
  126. package/lib/locale/default.d.ts.map +1 -1
  127. package/lib/locale/default.js +3 -3
  128. package/lib/locale/default.js.map +1 -1
  129. package/lib/locale/en_US.d.ts +13 -1
  130. package/lib/locale/en_US.d.ts.map +1 -1
  131. package/lib/locale/en_US.js +13 -2
  132. package/lib/locale/en_US.js.map +1 -1
  133. package/lib/locale/zh_CN.d.ts +13 -1
  134. package/lib/locale/zh_CN.d.ts.map +1 -1
  135. package/lib/locale/zh_CN.js +13 -2
  136. package/lib/locale/zh_CN.js.map +1 -1
  137. package/lib/page/index.js +1 -1
  138. package/lib/page/index.js.map +1 -1
  139. package/lib/prev-locale.d.ts +6 -0
  140. package/lib/prev-locale.d.ts.map +1 -1
  141. package/lib/prev-locale.js +7 -1
  142. package/lib/prev-locale.js.map +1 -1
  143. package/lib/steps/index.d.ts +3 -2
  144. package/lib/steps/index.d.ts.map +1 -1
  145. package/lib/steps/index.js +4 -6
  146. package/lib/steps/index.js.map +1 -1
  147. package/lib/steps/steps.d.ts +12 -0
  148. package/lib/steps/steps.d.ts.map +1 -0
  149. package/lib/steps/steps.js +67 -0
  150. package/lib/steps/steps.js.map +1 -0
  151. package/lib/steps/style/index.less +11 -0
  152. package/lib/steps/style/nav.less +273 -0
  153. package/lib/steps/style/small.less +5 -0
  154. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.d.ts +10 -0
  155. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.d.ts.map +1 -0
  156. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js +35 -0
  157. package/lib/tntd-cascader/AntdCascader/component/DisabledContext.js.map +1 -0
  158. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.d.ts +4 -0
  159. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.d.ts.map +1 -0
  160. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js +29 -0
  161. package/lib/tntd-cascader/AntdCascader/component/FormItemInputContext.js.map +1 -0
  162. package/lib/tntd-cascader/AntdCascader/component/SizeContext.d.ts +4 -0
  163. package/lib/tntd-cascader/AntdCascader/component/SizeContext.d.ts.map +1 -0
  164. package/lib/tntd-cascader/AntdCascader/component/SizeContext.js +29 -0
  165. package/lib/tntd-cascader/AntdCascader/component/SizeContext.js.map +1 -0
  166. package/lib/tntd-cascader/AntdCascader/component/context.d.ts +42 -0
  167. package/lib/tntd-cascader/AntdCascader/component/context.d.ts.map +1 -0
  168. package/lib/tntd-cascader/AntdCascader/component/context.js +20 -0
  169. package/lib/tntd-cascader/AntdCascader/component/context.js.map +1 -0
  170. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.d.ts +5 -0
  171. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.d.ts.map +1 -0
  172. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +48 -0
  173. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -0
  174. package/lib/tntd-cascader/AntdCascader/component/getIcons.d.ts +25 -0
  175. package/lib/tntd-cascader/AntdCascader/component/getIcons.d.ts.map +1 -0
  176. package/lib/tntd-cascader/AntdCascader/component/getIcons.js +78 -0
  177. package/lib/tntd-cascader/AntdCascader/component/getIcons.js.map +1 -0
  178. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.d.ts +9 -0
  179. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.d.ts.map +1 -0
  180. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js +54 -0
  181. package/lib/tntd-cascader/AntdCascader/component/useCompactItemContext.js.map +1 -0
  182. package/lib/tntd-cascader/AntdCascader/config/utils.d.ts +6 -0
  183. package/lib/tntd-cascader/AntdCascader/config/utils.d.ts.map +1 -0
  184. package/lib/tntd-cascader/AntdCascader/config/utils.js +34 -0
  185. package/lib/tntd-cascader/AntdCascader/config/utils.js.map +1 -0
  186. package/lib/tntd-cascader/AntdCascader/config/warning.d.ts +4 -0
  187. package/lib/tntd-cascader/AntdCascader/config/warning.d.ts.map +1 -0
  188. package/lib/tntd-cascader/AntdCascader/config/warning.js +40 -0
  189. package/lib/tntd-cascader/AntdCascader/config/warning.js.map +1 -0
  190. package/lib/tntd-cascader/AntdCascader/index.css +2327 -0
  191. package/lib/tntd-cascader/AntdCascader/index.d.ts +44 -0
  192. package/lib/tntd-cascader/AntdCascader/index.d.ts.map +1 -0
  193. package/lib/tntd-cascader/AntdCascader/index.js +177 -0
  194. package/lib/tntd-cascader/AntdCascader/index.js.map +1 -0
  195. package/lib/tntd-cascader/AntdCascader/interface.d.ts +25 -0
  196. package/lib/tntd-cascader/AntdCascader/interface.d.ts.map +1 -0
  197. package/lib/tntd-cascader/AntdCascader/interface.js +9 -0
  198. package/lib/tntd-cascader/AntdCascader/interface.js.map +1 -0
  199. package/lib/tntd-cascader/img/no-data-s.png +0 -0
  200. package/lib/tntd-cascader/index.d.ts +2 -0
  201. package/lib/tntd-cascader/index.d.ts.map +1 -0
  202. package/lib/tntd-cascader/index.js +9 -0
  203. package/lib/tntd-cascader/index.js.map +1 -0
  204. package/lib/tntd-cascader/rc-cascader/Cascader.d.ts +92 -0
  205. package/lib/tntd-cascader/rc-cascader/Cascader.d.ts.map +1 -0
  206. package/lib/tntd-cascader/rc-cascader/Cascader.js +298 -0
  207. package/lib/tntd-cascader/rc-cascader/Cascader.js.map +1 -0
  208. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.d.ts +10 -0
  209. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.d.ts.map +1 -0
  210. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js +43 -0
  211. package/lib/tntd-cascader/rc-cascader/OptionList/Checkbox.js.map +1 -0
  212. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts +26 -0
  213. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts.map +1 -0
  214. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +156 -0
  215. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -0
  216. package/lib/tntd-cascader/rc-cascader/OptionList/index.d.ts +5 -0
  217. package/lib/tntd-cascader/rc-cascader/OptionList/index.d.ts.map +1 -0
  218. package/lib/tntd-cascader/rc-cascader/OptionList/index.js +168 -0
  219. package/lib/tntd-cascader/rc-cascader/OptionList/index.js.map +1 -0
  220. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.d.ts +7 -0
  221. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.d.ts.map +1 -0
  222. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js +52 -0
  223. package/lib/tntd-cascader/rc-cascader/OptionList/useActive.js.map +1 -0
  224. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.d.ts +6 -0
  225. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.d.ts.map +1 -0
  226. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js +173 -0
  227. package/lib/tntd-cascader/rc-cascader/OptionList/useKeyboard.js.map +1 -0
  228. package/lib/tntd-cascader/rc-cascader/context.d.ts +26 -0
  229. package/lib/tntd-cascader/rc-cascader/context.d.ts.map +1 -0
  230. package/lib/tntd-cascader/rc-cascader/context.js +29 -0
  231. package/lib/tntd-cascader/rc-cascader/context.js.map +1 -0
  232. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.d.ts +11 -0
  233. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.d.ts.map +1 -0
  234. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js +66 -0
  235. package/lib/tntd-cascader/rc-cascader/hooks/useDisplayValues.js.map +1 -0
  236. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.d.ts +11 -0
  237. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.d.ts.map +1 -0
  238. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js +55 -0
  239. package/lib/tntd-cascader/rc-cascader/hooks/useEntities.js.map +1 -0
  240. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.d.ts +4 -0
  241. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.d.ts.map +1 -0
  242. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js +44 -0
  243. package/lib/tntd-cascader/rc-cascader/hooks/useMissingValues.js.map +1 -0
  244. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.d.ts +6 -0
  245. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.d.ts.map +1 -0
  246. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js +41 -0
  247. package/lib/tntd-cascader/rc-cascader/hooks/useRefFunc.js.map +1 -0
  248. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.d.ts +3 -0
  249. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.d.ts.map +1 -0
  250. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js +55 -0
  251. package/lib/tntd-cascader/rc-cascader/hooks/useSearchConfig.js.map +1 -0
  252. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.d.ts +5 -0
  253. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.d.ts.map +1 -0
  254. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js +72 -0
  255. package/lib/tntd-cascader/rc-cascader/hooks/useSearchOptions.js.map +1 -0
  256. package/lib/tntd-cascader/rc-cascader/index.d.ts +4 -0
  257. package/lib/tntd-cascader/rc-cascader/index.d.ts.map +1 -0
  258. package/lib/tntd-cascader/rc-cascader/index.js +8 -0
  259. package/lib/tntd-cascader/rc-cascader/index.js.map +1 -0
  260. package/lib/tntd-cascader/rc-cascader/index.less +19 -0
  261. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.d.ts +11 -0
  262. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.d.ts.map +1 -0
  263. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.js +50 -0
  264. package/lib/tntd-cascader/rc-cascader/utils/commonUtil.js.map +1 -0
  265. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.d.ts +10 -0
  266. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.d.ts.map +1 -0
  267. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.js +42 -0
  268. package/lib/tntd-cascader/rc-cascader/utils/treeUtil.js.map +1 -0
  269. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.d.ts +5 -0
  270. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.d.ts.map +1 -0
  271. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.js +37 -0
  272. package/lib/tntd-cascader/rc-cascader/utils/warningPropsUtil.js.map +1 -0
  273. package/lib/tntd-layout/Avatar.d.ts.map +1 -1
  274. package/lib/tntd-layout/Avatar.js +25 -19
  275. package/lib/tntd-layout/Avatar.js.map +1 -1
  276. package/lib/tntd-layout/EnterpriseLayout/Avatar.d.ts.map +1 -1
  277. package/lib/tntd-layout/EnterpriseLayout/Avatar.js +10 -8
  278. package/lib/tntd-layout/EnterpriseLayout/Avatar.js.map +1 -1
  279. package/lib/tntd-layout/EnterpriseLayout/Language.js +4 -3
  280. package/lib/tntd-layout/EnterpriseLayout/Language.js.map +1 -1
  281. package/lib/tntd-layout/EnterpriseLayout/Theme.js +6 -5
  282. package/lib/tntd-layout/EnterpriseLayout/Theme.js.map +1 -1
  283. package/lib/tntd-layout/HeaderActions.js +5 -4
  284. package/lib/tntd-layout/HeaderActions.js.map +1 -1
  285. package/lib/tntd-layout/Layout.js +2 -2
  286. package/lib/tntd-layout/Layout.js.map +1 -1
  287. package/lib/tntd-layout/SideMenu.js.map +1 -1
  288. package/lib/tntd-layout/index.d.ts.map +1 -1
  289. package/lib/tntd-layout/index.js +2 -2
  290. package/lib/tntd-layout/index.js.map +1 -1
  291. package/lib/tntd-layout/storage.d.ts +3 -2
  292. package/lib/tntd-layout/storage.d.ts.map +1 -1
  293. package/lib/tntd-layout/storage.js +15 -3
  294. package/lib/tntd-layout/storage.js.map +1 -1
  295. package/package.json +11 -2
  296. package/es/array-input/style/index.js +0 -2
  297. package/es/array-input/style/index.js.map +0 -1
  298. package/es/auth-context/style/index.js +0 -2
  299. package/es/auth-context/style/index.js.map +0 -1
  300. package/es/development-login/style/index.js +0 -2
  301. package/es/development-login/style/index.js.map +0 -1
  302. package/es/ellipsis/style/index.js +0 -2
  303. package/es/ellipsis/style/index.js.map +0 -1
  304. package/es/empty/render-empty.js +0 -19
  305. package/es/empty/render-empty.js.map +0 -1
  306. package/es/empty/style/index.js +0 -3
  307. package/es/empty/style/index.js.map +0 -1
  308. package/es/handle/style/index.js +0 -2
  309. package/es/handle/style/index.js.map +0 -1
  310. package/es/icon-list/style/index.js +0 -120
  311. package/es/icon-list/style/index.js.map +0 -1
  312. package/es/img/style/index.js +0 -2
  313. package/es/img/style/index.js.map +0 -1
  314. package/es/loading-button/style/index.js +0 -2
  315. package/es/loading-button/style/index.js.map +0 -1
  316. package/es/page/style/index.js +0 -2
  317. package/es/page/style/index.js.map +0 -1
  318. package/es/query-form/style/index.js +0 -2
  319. package/es/query-form/style/index.js.map +0 -1
  320. package/es/query-list-scene/style/index.js +0 -2
  321. package/es/query-list-scene/style/index.js.map +0 -1
  322. package/es/render-empty/style/index.js +0 -2
  323. package/es/render-empty/style/index.js.map +0 -1
  324. package/es/table/style/index.js +0 -3
  325. package/es/table/style/index.js.map +0 -1
  326. package/es/title/style/index.js +0 -2
  327. package/es/title/style/index.js.map +0 -1
  328. package/es/tntd-icon/style/index.js +0 -2
  329. package/es/tntd-icon/style/index.js.map +0 -1
  330. package/es/tntd-layout/style/index.js +0 -2
  331. package/es/tntd-layout/style/index.js.map +0 -1
  332. package/es/tntd-modal/style/index.js +0 -2
  333. package/es/tntd-modal/style/index.js.map +0 -1
  334. package/es/tntd-select/style/index.js +0 -2
  335. package/es/tntd-select/style/index.js.map +0 -1
  336. package/lib/array-input/style/index.d.ts +0 -1
  337. package/lib/array-input/style/index.d.ts.map +0 -1
  338. package/lib/array-input/style/index.js +0 -2
  339. package/lib/array-input/style/index.js.map +0 -1
  340. package/lib/auth-context/style/index.d.ts +0 -1
  341. package/lib/auth-context/style/index.d.ts.map +0 -1
  342. package/lib/auth-context/style/index.js +0 -2
  343. package/lib/auth-context/style/index.js.map +0 -1
  344. package/lib/development-login/style/index.d.ts +0 -1
  345. package/lib/development-login/style/index.d.ts.map +0 -1
  346. package/lib/development-login/style/index.js +0 -2
  347. package/lib/development-login/style/index.js.map +0 -1
  348. package/lib/ellipsis/style/index.d.ts +0 -1
  349. package/lib/ellipsis/style/index.d.ts.map +0 -1
  350. package/lib/ellipsis/style/index.js +0 -2
  351. package/lib/ellipsis/style/index.js.map +0 -1
  352. package/lib/empty/render-empty.d.ts +0 -3
  353. package/lib/empty/render-empty.d.ts.map +0 -1
  354. package/lib/empty/render-empty.js +0 -26
  355. package/lib/empty/render-empty.js.map +0 -1
  356. package/lib/empty/style/index.d.ts +0 -3
  357. package/lib/empty/style/index.d.ts.map +0 -1
  358. package/lib/empty/style/index.js +0 -5
  359. package/lib/empty/style/index.js.map +0 -1
  360. package/lib/handle/style/index.d.ts +0 -1
  361. package/lib/handle/style/index.d.ts.map +0 -1
  362. package/lib/handle/style/index.js +0 -2
  363. package/lib/handle/style/index.js.map +0 -1
  364. package/lib/icon-list/style/index.d.ts +0 -3
  365. package/lib/icon-list/style/index.d.ts.map +0 -1
  366. package/lib/icon-list/style/index.js +0 -122
  367. package/lib/icon-list/style/index.js.map +0 -1
  368. package/lib/img/style/index.d.ts +0 -1
  369. package/lib/img/style/index.d.ts.map +0 -1
  370. package/lib/img/style/index.js +0 -2
  371. package/lib/img/style/index.js.map +0 -1
  372. package/lib/loading-button/style/index.d.ts +0 -1
  373. package/lib/loading-button/style/index.d.ts.map +0 -1
  374. package/lib/loading-button/style/index.js +0 -2
  375. package/lib/loading-button/style/index.js.map +0 -1
  376. package/lib/page/style/index.d.ts +0 -1
  377. package/lib/page/style/index.d.ts.map +0 -1
  378. package/lib/page/style/index.js +0 -2
  379. package/lib/page/style/index.js.map +0 -1
  380. package/lib/query-form/style/index.d.ts +0 -1
  381. package/lib/query-form/style/index.d.ts.map +0 -1
  382. package/lib/query-form/style/index.js +0 -2
  383. package/lib/query-form/style/index.js.map +0 -1
  384. package/lib/query-list-scene/style/index.d.ts +0 -1
  385. package/lib/query-list-scene/style/index.d.ts.map +0 -1
  386. package/lib/query-list-scene/style/index.js +0 -2
  387. package/lib/query-list-scene/style/index.js.map +0 -1
  388. package/lib/render-empty/style/index.d.ts +0 -2
  389. package/lib/render-empty/style/index.d.ts.map +0 -1
  390. package/lib/render-empty/style/index.js +0 -4
  391. package/lib/render-empty/style/index.js.map +0 -1
  392. package/lib/table/style/index.d.ts +0 -3
  393. package/lib/table/style/index.d.ts.map +0 -1
  394. package/lib/table/style/index.js +0 -5
  395. package/lib/table/style/index.js.map +0 -1
  396. package/lib/title/style/index.d.ts +0 -1
  397. package/lib/title/style/index.d.ts.map +0 -1
  398. package/lib/title/style/index.js +0 -2
  399. package/lib/title/style/index.js.map +0 -1
  400. package/lib/tntd-icon/style/index.d.ts +0 -1
  401. package/lib/tntd-icon/style/index.d.ts.map +0 -1
  402. package/lib/tntd-icon/style/index.js +0 -2
  403. package/lib/tntd-icon/style/index.js.map +0 -1
  404. package/lib/tntd-layout/style/index.d.ts +0 -1
  405. package/lib/tntd-layout/style/index.d.ts.map +0 -1
  406. package/lib/tntd-layout/style/index.js +0 -2
  407. package/lib/tntd-layout/style/index.js.map +0 -1
  408. package/lib/tntd-modal/style/index.d.ts +0 -1
  409. package/lib/tntd-modal/style/index.d.ts.map +0 -1
  410. package/lib/tntd-modal/style/index.js +0 -2
  411. package/lib/tntd-modal/style/index.js.map +0 -1
  412. package/lib/tntd-select/style/index.d.ts +0 -1
  413. package/lib/tntd-select/style/index.d.ts.map +0 -1
  414. package/lib/tntd-select/style/index.js +0 -2
  415. package/lib/tntd-select/style/index.js.map +0 -1
@@ -0,0 +1,298 @@
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 rc_select_1 = require("rc-select");
41
+ const useId_1 = __importDefault(require("rc-select/lib/hooks/useId"));
42
+ const conductUtil_1 = require("rc-tree/lib/utils/conductUtil");
43
+ const useMergedState_1 = __importDefault(require("rc-util/lib/hooks/useMergedState"));
44
+ const React = __importStar(require("react"));
45
+ const context_1 = __importDefault(require("./context"));
46
+ const useDisplayValues_1 = __importDefault(require("./hooks/useDisplayValues"));
47
+ const useEntities_1 = __importDefault(require("./hooks/useEntities"));
48
+ const useMissingValues_1 = __importDefault(require("./hooks/useMissingValues"));
49
+ const useRefFunc_1 = __importDefault(require("./hooks/useRefFunc"));
50
+ const useSearchConfig_1 = __importDefault(require("./hooks/useSearchConfig"));
51
+ const useSearchOptions_1 = __importDefault(require("./hooks/useSearchOptions"));
52
+ const OptionList_1 = __importDefault(require("./OptionList"));
53
+ const commonUtil_1 = require("./utils/commonUtil");
54
+ const treeUtil_1 = require("./utils/treeUtil");
55
+ const warningPropsUtil_1 = __importStar(require("./utils/warningPropsUtil"));
56
+ require("./context");
57
+ require("./index.less");
58
+ function isMultipleValue(value) {
59
+ return Array.isArray(value) && Array.isArray(value[0]);
60
+ }
61
+ function toRawValues(value) {
62
+ if (!value) {
63
+ return [];
64
+ }
65
+ if (isMultipleValue(value)) {
66
+ return value;
67
+ }
68
+ return (value.length === 0 ? [] : [value]).map((val) => (Array.isArray(val) ? val : [val]));
69
+ }
70
+ const Cascader = React.forwardRef((props, ref) => {
71
+ const {
72
+ // MISC
73
+ id, prefixCls = 'rc-cascader', fieldNames,
74
+ // Value
75
+ defaultValue, value, changeOnSelect, onChange, displayRender, checkable,
76
+ // Search
77
+ searchValue, onSearch, showSearch,
78
+ // Trigger
79
+ expandTrigger,
80
+ // Options
81
+ options, dropdownPrefixCls, loadData,
82
+ // Open
83
+ popupVisible, open, popupClassName, dropdownClassName, dropdownMenuColumnStyle, popupPlacement, placement, onDropdownVisibleChange, onPopupVisibleChange, renderItem,
84
+ // Icon
85
+ expandIcon = '>', loadingIcon,
86
+ // Children
87
+ children, dropdownMatchSelectWidth = false, showCheckedStrategy = commonUtil_1.SHOW_PARENT } = props, restProps = __rest(props, ["id", "prefixCls", "fieldNames", "defaultValue", "value", "changeOnSelect", "onChange", "displayRender", "checkable", "searchValue", "onSearch", "showSearch", "expandTrigger", "options", "dropdownPrefixCls", "loadData", "popupVisible", "open", "popupClassName", "dropdownClassName", "dropdownMenuColumnStyle", "popupPlacement", "placement", "onDropdownVisibleChange", "onPopupVisibleChange", "renderItem", "expandIcon", "loadingIcon", "children", "dropdownMatchSelectWidth", "showCheckedStrategy"]);
88
+ const mergedId = (0, useId_1.default)(id);
89
+ const multiple = !!checkable;
90
+ const [dropdownVisible, setDropdownVisible] = React.useState(false);
91
+ // =========================== Values ===========================
92
+ const [rawValues, setRawValues] = (0, useMergedState_1.default)(defaultValue, {
93
+ value,
94
+ postState: toRawValues,
95
+ });
96
+ // ========================= FieldNames =========================
97
+ const mergedFieldNames = React.useMemo(() => (0, commonUtil_1.fillFieldNames)(fieldNames),
98
+ /* eslint-disable react-hooks/exhaustive-deps */
99
+ [JSON.stringify(fieldNames)]);
100
+ // =========================== Option ===========================
101
+ const mergedOptions = React.useMemo(() => options || [], [options]);
102
+ // Only used in multiple mode, this fn will not call in single mode
103
+ const getPathKeyEntities = (0, useEntities_1.default)(mergedOptions, mergedFieldNames);
104
+ /** Convert path key back to value format */
105
+ const getValueByKeyPath = React.useCallback((pathKeys) => {
106
+ const keyPathEntities = getPathKeyEntities();
107
+ return pathKeys.map((pathKey) => {
108
+ const { nodes } = keyPathEntities[pathKey];
109
+ return nodes.map((node) => node[mergedFieldNames.value]);
110
+ });
111
+ }, [getPathKeyEntities, mergedFieldNames]);
112
+ // =========================== Search ===========================
113
+ const [mergedSearchValue, setSearchValue] = (0, useMergedState_1.default)('', {
114
+ value: searchValue,
115
+ postState: (search) => search || '',
116
+ });
117
+ const onInternalSearch = (searchText, info) => {
118
+ setSearchValue(searchText);
119
+ if (info.source !== 'blur' && onSearch) {
120
+ onSearch(searchText);
121
+ }
122
+ };
123
+ const [mergedShowSearch, searchConfig] = (0, useSearchConfig_1.default)(showSearch);
124
+ const searchOptions = (0, useSearchOptions_1.default)(mergedSearchValue, mergedOptions, mergedFieldNames, dropdownPrefixCls || prefixCls, searchConfig, changeOnSelect);
125
+ // =========================== Values ===========================
126
+ const getMissingValues = (0, useMissingValues_1.default)(mergedOptions, mergedFieldNames);
127
+ // Fill `rawValues` with checked conduction values
128
+ const [checkedValues, halfCheckedValues, missingCheckedValues] = React.useMemo(() => {
129
+ const [existValues, missingValues] = getMissingValues(rawValues);
130
+ if (!multiple || !rawValues.length) {
131
+ return [existValues, [], missingValues];
132
+ }
133
+ const keyPathValues = (0, commonUtil_1.toPathKeys)(existValues);
134
+ const keyPathEntities = getPathKeyEntities();
135
+ const { checkedKeys, halfCheckedKeys } = (0, conductUtil_1.conductCheck)(keyPathValues, true, keyPathEntities);
136
+ // Convert key back to value cells
137
+ return [getValueByKeyPath(checkedKeys), getValueByKeyPath(halfCheckedKeys), missingValues];
138
+ }, [multiple, rawValues, getPathKeyEntities, getValueByKeyPath, getMissingValues]);
139
+ const deDuplicatedValues = React.useMemo(() => {
140
+ const checkedKeys = (0, commonUtil_1.toPathKeys)(checkedValues);
141
+ const deduplicateKeys = (0, treeUtil_1.formatStrategyValues)(checkedKeys, getPathKeyEntities, showCheckedStrategy);
142
+ return [...missingCheckedValues, ...getValueByKeyPath(deduplicateKeys)];
143
+ }, [
144
+ checkedValues,
145
+ getPathKeyEntities,
146
+ getValueByKeyPath,
147
+ missingCheckedValues,
148
+ showCheckedStrategy,
149
+ ]);
150
+ const displayValues = (0, useDisplayValues_1.default)(deDuplicatedValues, mergedOptions, mergedFieldNames, multiple, displayRender);
151
+ // =========================== Change ===========================
152
+ const triggerChange = (0, useRefFunc_1.default)((nextValues) => {
153
+ setRawValues(nextValues);
154
+ // Save perf if no need trigger event
155
+ if (onChange) {
156
+ const nextRawValues = toRawValues(nextValues);
157
+ const valueOptions = nextRawValues.map((valueCells) => (0, treeUtil_1.toPathOptions)(valueCells, mergedOptions, mergedFieldNames).map((valueOpt) => valueOpt.option));
158
+ const triggerValues = multiple ? nextRawValues : nextRawValues[0];
159
+ const triggerOptions = multiple ? valueOptions : valueOptions[0];
160
+ onChange(triggerValues, triggerOptions);
161
+ }
162
+ });
163
+ // =========================== Select ===========================
164
+ const onInternalSelect = (0, useRefFunc_1.default)((valuePath) => {
165
+ setSearchValue('');
166
+ if (!multiple) {
167
+ triggerChange(valuePath);
168
+ }
169
+ else {
170
+ // Prepare conduct required info
171
+ const pathKey = (0, commonUtil_1.toPathKey)(valuePath);
172
+ const checkedPathKeys = (0, commonUtil_1.toPathKeys)(checkedValues);
173
+ const halfCheckedPathKeys = (0, commonUtil_1.toPathKeys)(halfCheckedValues);
174
+ const existInChecked = checkedPathKeys.includes(pathKey);
175
+ const existInMissing = missingCheckedValues.some((valueCells) => (0, commonUtil_1.toPathKey)(valueCells) === pathKey);
176
+ // Do update
177
+ let nextCheckedValues = checkedValues;
178
+ let nextMissingValues = missingCheckedValues;
179
+ if (existInMissing && !existInChecked) {
180
+ // Missing value only do filter
181
+ nextMissingValues = missingCheckedValues.filter((valueCells) => (0, commonUtil_1.toPathKey)(valueCells) !== pathKey);
182
+ }
183
+ else {
184
+ // Update checked key first
185
+ const nextRawCheckedKeys = existInChecked
186
+ ? checkedPathKeys.filter((key) => key !== pathKey)
187
+ : [...checkedPathKeys, pathKey];
188
+ const pathKeyEntities = getPathKeyEntities();
189
+ // Conduction by selected or not
190
+ let checkedKeys;
191
+ if (existInChecked) {
192
+ ({ checkedKeys } = (0, conductUtil_1.conductCheck)(nextRawCheckedKeys, { checked: false, halfCheckedKeys: halfCheckedPathKeys }, pathKeyEntities));
193
+ }
194
+ else {
195
+ ({ checkedKeys } = (0, conductUtil_1.conductCheck)(nextRawCheckedKeys, true, pathKeyEntities));
196
+ }
197
+ // Roll up to parent level keys
198
+ const deDuplicatedKeys = (0, treeUtil_1.formatStrategyValues)(checkedKeys, getPathKeyEntities, showCheckedStrategy);
199
+ nextCheckedValues = getValueByKeyPath(deDuplicatedKeys);
200
+ }
201
+ triggerChange([...nextMissingValues, ...nextCheckedValues]);
202
+ }
203
+ });
204
+ // Display Value change logic
205
+ const onDisplayValuesChange = (_, info) => {
206
+ if (info.type === 'clear') {
207
+ triggerChange([]);
208
+ return;
209
+ }
210
+ // Cascader do not support `add` type. Only support `remove`
211
+ const { valueCells } = info.values[0];
212
+ onInternalSelect(valueCells);
213
+ };
214
+ // ============================ Open ============================
215
+ const mergedOpen = open !== undefined ? open : popupVisible;
216
+ const mergedDropdownClassName = dropdownClassName || popupClassName;
217
+ const mergedPlacement = placement || popupPlacement;
218
+ const onInternalDropdownVisibleChange = (nextVisible) => {
219
+ onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 ? void 0 : onDropdownVisibleChange(nextVisible);
220
+ onPopupVisibleChange === null || onPopupVisibleChange === void 0 ? void 0 : onPopupVisibleChange(nextVisible);
221
+ setDropdownVisible(nextVisible);
222
+ };
223
+ // ========================== Warning ===========================
224
+ if (process.env.NODE_ENV !== 'production') {
225
+ (0, warningPropsUtil_1.default)(props);
226
+ (0, warningPropsUtil_1.warningNullOptions)(mergedOptions, mergedFieldNames);
227
+ }
228
+ // ========================== Context ===========================
229
+ const cascaderContext = React.useMemo(() => ({
230
+ options: mergedOptions,
231
+ fieldNames: mergedFieldNames,
232
+ values: checkedValues,
233
+ halfValues: halfCheckedValues,
234
+ changeOnSelect,
235
+ onSelect: onInternalSelect,
236
+ checkable,
237
+ searchOptions,
238
+ dropdownPrefixCls,
239
+ loadData,
240
+ expandTrigger,
241
+ expandIcon,
242
+ loadingIcon,
243
+ dropdownMenuColumnStyle,
244
+ renderItem,
245
+ dropdownVisible,
246
+ }), [
247
+ mergedOptions,
248
+ mergedFieldNames,
249
+ checkedValues,
250
+ halfCheckedValues,
251
+ changeOnSelect,
252
+ onInternalSelect,
253
+ checkable,
254
+ searchOptions,
255
+ dropdownPrefixCls,
256
+ loadData,
257
+ expandTrigger,
258
+ expandIcon,
259
+ loadingIcon,
260
+ dropdownMenuColumnStyle,
261
+ renderItem,
262
+ dropdownVisible,
263
+ ]);
264
+ // ==============================================================
265
+ // == Render ==
266
+ // ==============================================================
267
+ const emptyOptions = !(mergedSearchValue ? searchOptions : mergedOptions).length;
268
+ const dropdownStyle =
269
+ // Search to match width
270
+ (mergedSearchValue && searchConfig.matchInputWidth) ||
271
+ // Empty keep the width
272
+ emptyOptions
273
+ ? {}
274
+ : {
275
+ minWidth: 'auto',
276
+ };
277
+ return (React.createElement(context_1.default.Provider, { value: cascaderContext },
278
+ React.createElement(rc_select_1.BaseSelect, Object.assign({}, restProps, {
279
+ // MISC
280
+ ref: ref, id: mergedId, prefixCls: prefixCls, dropdownMatchSelectWidth: dropdownMatchSelectWidth, dropdownStyle: dropdownStyle,
281
+ // Value
282
+ displayValues: displayValues, onDisplayValuesChange: onDisplayValuesChange, mode: multiple ? 'multiple' : undefined,
283
+ // Search
284
+ searchValue: mergedSearchValue, onSearch: onInternalSearch, showSearch: mergedShowSearch,
285
+ // Options
286
+ OptionList: OptionList_1.default, emptyOptions: emptyOptions,
287
+ // Open
288
+ open: mergedOpen, dropdownClassName: mergedDropdownClassName, placement: mergedPlacement, onDropdownVisibleChange: onInternalDropdownVisibleChange,
289
+ // Children
290
+ getRawInputElement: () => children }))));
291
+ });
292
+ if (process.env.NODE_ENV !== 'production') {
293
+ Cascader.displayName = 'Cascader';
294
+ }
295
+ Cascader.SHOW_PARENT = commonUtil_1.SHOW_PARENT;
296
+ Cascader.SHOW_CHILD = commonUtil_1.SHOW_CHILD;
297
+ exports.default = Cascader;
298
+ //# sourceMappingURL=Cascader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Cascader.js","sourceRoot":"","sources":["../../../src/tntd-cascader/rc-cascader/Cascader.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport type { BaseSelectProps, BaseSelectPropsWithoutPrivate, BaseSelectRef } from 'rc-select';\nimport { BaseSelect } from 'rc-select';\nimport type { DisplayValueType, Placement } from 'rc-select/lib/BaseSelect';\nimport useId from 'rc-select/lib/hooks/useId';\nimport { conductCheck } from 'rc-tree/lib/utils/conductUtil';\nimport useMergedState from 'rc-util/lib/hooks/useMergedState';\nimport * as React from 'react';\nimport CascaderContext from './context';\nimport useDisplayValues from './hooks/useDisplayValues';\nimport useEntities from './hooks/useEntities';\nimport useMissingValues from './hooks/useMissingValues';\nimport useRefFunc from './hooks/useRefFunc';\nimport useSearchConfig from './hooks/useSearchConfig';\nimport useSearchOptions from './hooks/useSearchOptions';\nimport OptionList from './OptionList';\nimport { fillFieldNames, SHOW_CHILD, SHOW_PARENT, toPathKey, toPathKeys } from './utils/commonUtil';\nimport { formatStrategyValues, toPathOptions } from './utils/treeUtil';\nimport warningProps, { warningNullOptions } from './utils/warningPropsUtil';\nimport { RenderItem } from './context';\nimport './index.less';\n\nexport interface ShowSearchType<OptionType extends BaseOptionType = DefaultOptionType> {\n filter?: (inputValue: string, options: OptionType[], fieldNames: FieldNames) => boolean;\n render?: (\n inputValue: string,\n path: OptionType[],\n prefixCls: string,\n fieldNames: FieldNames,\n ) => React.ReactNode;\n sort?: (a: OptionType[], b: OptionType[], inputValue: string, fieldNames: FieldNames) => number;\n matchInputWidth?: boolean;\n limit?: number | false;\n}\n\nexport interface FieldNames {\n label?: string;\n value?: string;\n children?: string;\n}\n\nexport interface InternalFieldNames extends Required<FieldNames> {\n key: string;\n}\n\nexport type SingleValueType = (string | number)[];\n\nexport type ValueType = SingleValueType | SingleValueType[];\nexport type ShowCheckedStrategy = typeof SHOW_PARENT | typeof SHOW_CHILD;\n\nexport interface BaseOptionType {\n disabled?: boolean;\n [name: string]: any;\n}\nexport interface DefaultOptionType extends BaseOptionType {\n label: React.ReactNode;\n value?: string | number | null;\n children?: DefaultOptionType[];\n}\n\ninterface BaseCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends Omit<\n BaseSelectPropsWithoutPrivate,\n 'tokenSeparators' | 'labelInValue' | 'mode' | 'showSearch'\n > {\n // MISC\n id?: string;\n prefixCls?: string;\n fieldNames?: FieldNames;\n children?: React.ReactElement;\n\n // Value\n value?: ValueType;\n defaultValue?: ValueType;\n changeOnSelect?: boolean;\n displayRender?: (label: string[], selectedOptions?: OptionType[]) => React.ReactNode;\n checkable?: boolean | React.ReactNode;\n showCheckedStrategy?: ShowCheckedStrategy;\n\n // Search\n showSearch?: boolean | ShowSearchType<OptionType>;\n searchValue?: string;\n onSearch?: (value: string) => void;\n\n // Trigger\n expandTrigger?: 'hover' | 'click';\n\n // Options\n options?: OptionType[];\n /** @private Internal usage. Do not use in your production. */\n dropdownPrefixCls?: string;\n loadData?: (selectOptions: OptionType[]) => void;\n\n // Open\n /** @deprecated Use `open` instead */\n popupVisible?: boolean;\n\n /** @deprecated Use `dropdownClassName` instead */\n popupClassName?: string;\n dropdownClassName?: string;\n dropdownMenuColumnStyle?: React.CSSProperties;\n\n /** @deprecated Use `placement` instead */\n popupPlacement?: Placement;\n placement?: Placement;\n\n /** @deprecated Use `onDropdownVisibleChange` instead */\n onPopupVisibleChange?: (open: boolean) => void;\n onDropdownVisibleChange?: (open: boolean) => void;\n renderItem?: (item: RenderItem) => React.ReactNode;\n\n // Icon\n expandIcon?: React.ReactNode;\n loadingIcon?: React.ReactNode;\n}\n\ntype OnSingleChange<OptionType> = (value: SingleValueType, selectOptions: OptionType[]) => void;\ntype OnMultipleChange<OptionType> = (\n value: SingleValueType[],\n selectOptions: OptionType[][],\n) => void;\n\nexport interface SingleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable?: false;\n\n onChange?: OnSingleChange<OptionType>;\n}\n\nexport interface MultipleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable: true | React.ReactNode;\n\n onChange?: OnMultipleChange<OptionType>;\n}\n\nexport type CascaderProps<OptionType extends BaseOptionType = DefaultOptionType> =\n | SingleCascaderProps<OptionType>\n | MultipleCascaderProps<OptionType>;\n\nexport type InternalCascaderProps<OptionType extends BaseOptionType = DefaultOptionType> = Omit<\n SingleCascaderProps<OptionType> | MultipleCascaderProps<OptionType>,\n 'onChange'\n> & {\n onChange?: (\n value: SingleValueType | SingleValueType[],\n selectOptions: OptionType[] | OptionType[][],\n ) => void;\n};\n\nexport type CascaderRef = Omit<BaseSelectRef, 'scrollTo'>;\n\nfunction isMultipleValue(value: ValueType): value is SingleValueType[] {\n return Array.isArray(value) && Array.isArray(value[0]);\n}\n\nfunction toRawValues(value: ValueType): SingleValueType[] {\n if (!value) {\n return [];\n }\n\n if (isMultipleValue(value)) {\n return value;\n }\n\n return (value.length === 0 ? [] : [value]).map((val) => (Array.isArray(val) ? val : [val]));\n}\n\nconst Cascader = React.forwardRef<CascaderRef, InternalCascaderProps>((props, ref) => {\n const {\n // MISC\n id,\n prefixCls = 'rc-cascader',\n fieldNames,\n\n // Value\n defaultValue,\n value,\n changeOnSelect,\n onChange,\n displayRender,\n checkable,\n\n // Search\n searchValue,\n onSearch,\n showSearch,\n\n // Trigger\n expandTrigger,\n\n // Options\n options,\n dropdownPrefixCls,\n loadData,\n\n // Open\n popupVisible,\n open,\n\n popupClassName,\n dropdownClassName,\n dropdownMenuColumnStyle,\n\n popupPlacement,\n placement,\n\n onDropdownVisibleChange,\n onPopupVisibleChange,\n renderItem,\n\n // Icon\n expandIcon = '>',\n loadingIcon,\n\n // Children\n children,\n dropdownMatchSelectWidth = false,\n showCheckedStrategy = SHOW_PARENT,\n ...restProps\n } = props;\n\n const mergedId = useId(id);\n const multiple = !!checkable;\n const [dropdownVisible, setDropdownVisible] = React.useState(false);\n\n // =========================== Values ===========================\n const [rawValues, setRawValues] = useMergedState<ValueType, SingleValueType[]>(defaultValue, {\n value,\n postState: toRawValues,\n });\n\n // ========================= FieldNames =========================\n const mergedFieldNames = React.useMemo(\n () => fillFieldNames(fieldNames),\n /* eslint-disable react-hooks/exhaustive-deps */\n [JSON.stringify(fieldNames)],\n /* eslint-enable react-hooks/exhaustive-deps */\n );\n\n // =========================== Option ===========================\n const mergedOptions = React.useMemo(() => options || [], [options]);\n\n // Only used in multiple mode, this fn will not call in single mode\n const getPathKeyEntities = useEntities(mergedOptions, mergedFieldNames);\n\n /** Convert path key back to value format */\n const getValueByKeyPath = React.useCallback(\n (pathKeys: React.Key[]): SingleValueType[] => {\n const keyPathEntities = getPathKeyEntities();\n\n return pathKeys.map((pathKey) => {\n const { nodes } = keyPathEntities[pathKey];\n\n return nodes.map((node) => node[mergedFieldNames.value]);\n });\n },\n [getPathKeyEntities, mergedFieldNames],\n );\n\n // =========================== Search ===========================\n const [mergedSearchValue, setSearchValue] = useMergedState('', {\n value: searchValue,\n postState: (search) => search || '',\n });\n\n const onInternalSearch: BaseSelectProps['onSearch'] = (searchText, info) => {\n setSearchValue(searchText);\n\n if (info.source !== 'blur' && onSearch) {\n onSearch(searchText);\n }\n };\n\n const [mergedShowSearch, searchConfig] = useSearchConfig(showSearch);\n\n const searchOptions = useSearchOptions(\n mergedSearchValue,\n mergedOptions,\n mergedFieldNames,\n dropdownPrefixCls || prefixCls,\n searchConfig,\n changeOnSelect,\n );\n\n // =========================== Values ===========================\n const getMissingValues = useMissingValues(mergedOptions, mergedFieldNames);\n\n // Fill `rawValues` with checked conduction values\n const [checkedValues, halfCheckedValues, missingCheckedValues] = React.useMemo(() => {\n const [existValues, missingValues] = getMissingValues(rawValues);\n\n if (!multiple || !rawValues.length) {\n return [existValues, [], missingValues];\n }\n\n const keyPathValues = toPathKeys(existValues);\n const keyPathEntities = getPathKeyEntities();\n\n const { checkedKeys, halfCheckedKeys } = conductCheck(keyPathValues, true, keyPathEntities);\n\n // Convert key back to value cells\n return [getValueByKeyPath(checkedKeys), getValueByKeyPath(halfCheckedKeys), missingValues];\n }, [multiple, rawValues, getPathKeyEntities, getValueByKeyPath, getMissingValues]);\n\n const deDuplicatedValues = React.useMemo(() => {\n const checkedKeys = toPathKeys(checkedValues);\n const deduplicateKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy,\n );\n\n return [...missingCheckedValues, ...getValueByKeyPath(deduplicateKeys)];\n }, [\n checkedValues,\n getPathKeyEntities,\n getValueByKeyPath,\n missingCheckedValues,\n showCheckedStrategy,\n ]);\n\n const displayValues = useDisplayValues(\n deDuplicatedValues,\n mergedOptions,\n mergedFieldNames,\n multiple,\n displayRender,\n );\n\n // =========================== Change ===========================\n const triggerChange = useRefFunc((nextValues: ValueType) => {\n setRawValues(nextValues);\n\n // Save perf if no need trigger event\n if (onChange) {\n const nextRawValues = toRawValues(nextValues);\n\n const valueOptions = nextRawValues.map((valueCells) =>\n toPathOptions(valueCells, mergedOptions, mergedFieldNames).map(\n (valueOpt) => valueOpt.option,\n ),\n );\n\n const triggerValues = multiple ? nextRawValues : nextRawValues[0];\n const triggerOptions = multiple ? valueOptions : valueOptions[0];\n\n onChange(triggerValues, triggerOptions);\n }\n });\n\n // =========================== Select ===========================\n const onInternalSelect = useRefFunc((valuePath: SingleValueType) => {\n setSearchValue('');\n if (!multiple) {\n triggerChange(valuePath);\n } else {\n // Prepare conduct required info\n const pathKey = toPathKey(valuePath);\n const checkedPathKeys = toPathKeys(checkedValues);\n const halfCheckedPathKeys = toPathKeys(halfCheckedValues);\n\n const existInChecked = checkedPathKeys.includes(pathKey);\n const existInMissing = missingCheckedValues.some(\n (valueCells) => toPathKey(valueCells) === pathKey,\n );\n\n // Do update\n let nextCheckedValues = checkedValues;\n let nextMissingValues = missingCheckedValues;\n\n if (existInMissing && !existInChecked) {\n // Missing value only do filter\n nextMissingValues = missingCheckedValues.filter(\n (valueCells) => toPathKey(valueCells) !== pathKey,\n );\n } else {\n // Update checked key first\n const nextRawCheckedKeys = existInChecked\n ? checkedPathKeys.filter((key) => key !== pathKey)\n : [...checkedPathKeys, pathKey];\n\n const pathKeyEntities = getPathKeyEntities();\n\n // Conduction by selected or not\n let checkedKeys: React.Key[];\n if (existInChecked) {\n ({ checkedKeys } = conductCheck(\n nextRawCheckedKeys,\n { checked: false, halfCheckedKeys: halfCheckedPathKeys },\n pathKeyEntities,\n ));\n } else {\n ({ checkedKeys } = conductCheck(nextRawCheckedKeys, true, pathKeyEntities));\n }\n\n // Roll up to parent level keys\n const deDuplicatedKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy,\n );\n nextCheckedValues = getValueByKeyPath(deDuplicatedKeys);\n }\n\n triggerChange([...nextMissingValues, ...nextCheckedValues]);\n }\n });\n\n // Display Value change logic\n const onDisplayValuesChange: BaseSelectProps['onDisplayValuesChange'] = (_, info) => {\n if (info.type === 'clear') {\n triggerChange([]);\n return;\n }\n\n // Cascader do not support `add` type. Only support `remove`\n const { valueCells } = info.values[0] as DisplayValueType & { valueCells: SingleValueType };\n onInternalSelect(valueCells);\n };\n\n // ============================ Open ============================\n const mergedOpen = open !== undefined ? open : popupVisible;\n\n const mergedDropdownClassName = dropdownClassName || popupClassName;\n\n const mergedPlacement = placement || popupPlacement;\n\n const onInternalDropdownVisibleChange = (nextVisible: boolean) => {\n onDropdownVisibleChange?.(nextVisible);\n onPopupVisibleChange?.(nextVisible);\n setDropdownVisible(nextVisible);\n };\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props);\n warningNullOptions(mergedOptions, mergedFieldNames);\n }\n\n // ========================== Context ===========================\n const cascaderContext = React.useMemo(\n () => ({\n options: mergedOptions,\n fieldNames: mergedFieldNames,\n values: checkedValues,\n halfValues: halfCheckedValues,\n changeOnSelect,\n onSelect: onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n }),\n [\n mergedOptions,\n mergedFieldNames,\n checkedValues,\n halfCheckedValues,\n changeOnSelect,\n onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n ],\n );\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n const emptyOptions = !(mergedSearchValue ? searchOptions : mergedOptions).length;\n\n const dropdownStyle: React.CSSProperties =\n // Search to match width\n (mergedSearchValue && searchConfig.matchInputWidth) ||\n // Empty keep the width\n emptyOptions\n ? {}\n : {\n minWidth: 'auto',\n };\n return (\n <CascaderContext.Provider value={cascaderContext}>\n <BaseSelect\n {...restProps}\n // MISC\n ref={ref as any}\n id={mergedId}\n prefixCls={prefixCls}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n dropdownStyle={dropdownStyle}\n // Value\n displayValues={displayValues}\n onDisplayValuesChange={onDisplayValuesChange}\n mode={multiple ? 'multiple' : undefined}\n // Search\n searchValue={mergedSearchValue}\n onSearch={onInternalSearch}\n showSearch={mergedShowSearch}\n // Options\n OptionList={OptionList}\n emptyOptions={emptyOptions}\n // Open\n open={mergedOpen}\n dropdownClassName={mergedDropdownClassName}\n placement={mergedPlacement}\n onDropdownVisibleChange={onInternalDropdownVisibleChange}\n // Children\n getRawInputElement={() => children}\n />\n </CascaderContext.Provider>\n );\n}) as unknown as (<OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(\n props: React.PropsWithChildren<CascaderProps<OptionType>> & {\n ref?: React.Ref<BaseSelectRef>;\n },\n) => React.ReactElement) & {\n displayName?: string;\n SHOW_PARENT: typeof SHOW_PARENT;\n SHOW_CHILD: typeof SHOW_CHILD;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n Cascader.displayName = 'Cascader';\n}\n\nCascader.SHOW_PARENT = SHOW_PARENT;\nCascader.SHOW_CHILD = SHOW_CHILD;\nexport default Cascader;\n"]}
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ export interface CheckboxProps {
3
+ prefixCls: string;
4
+ checked?: boolean;
5
+ halfChecked?: boolean;
6
+ disabled?: boolean;
7
+ onClick?: React.MouseEventHandler;
8
+ }
9
+ export default function Checkbox({ prefixCls, checked, halfChecked, disabled, onClick, }: CheckboxProps): JSX.Element;
10
+ //# sourceMappingURL=Checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,SAAS,EACT,OAAO,EACP,WAAW,EACX,QAAQ,EACR,OAAO,GACR,EAAE,aAAa,eAkBf"}
@@ -0,0 +1,43 @@
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 context_1 = __importDefault(require("../context"));
32
+ function Checkbox({ prefixCls, checked, halfChecked, disabled, onClick, }) {
33
+ // @ts-ignore
34
+ const { checkable } = React.useContext(context_1.default);
35
+ const customCheckbox = typeof checkable !== 'boolean' ? checkable : null;
36
+ return (React.createElement("span", { className: (0, classnames_1.default)(`${prefixCls}`, {
37
+ [`${prefixCls}-checked`]: checked,
38
+ [`${prefixCls}-indeterminate`]: !checked && halfChecked,
39
+ [`${prefixCls}-disabled`]: disabled,
40
+ }), onClick: onClick }, customCheckbox));
41
+ }
42
+ exports.default = Checkbox;
43
+ //# sourceMappingURL=Checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Checkbox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,4DAAoC;AACpC,yDAAyC;AAUzC,SAAwB,QAAQ,CAAC,EAC/B,SAAS,EACT,OAAO,EACP,WAAW,EACX,QAAQ,EACR,OAAO,GACO;IACd,aAAa;IACb,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAe,CAAC,CAAC;IAExD,MAAM,cAAc,GAAG,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IAEzE,OAAO,CACL,8BACE,SAAS,EAAE,IAAA,oBAAU,EAAC,GAAG,SAAS,EAAE,EAAE;YACpC,CAAC,GAAG,SAAS,UAAU,CAAC,EAAE,OAAO;YACjC,CAAC,GAAG,SAAS,gBAAgB,CAAC,EAAE,CAAC,OAAO,IAAI,WAAW;YACvD,CAAC,GAAG,SAAS,WAAW,CAAC,EAAE,QAAQ;SACpC,CAAC,EACF,OAAO,EAAE,OAAO,IAEf,cAAc,CACV,CACR,CAAC;AACJ,CAAC;AAxBD,2BAwBC","sourcesContent":["import * as React from 'react';\nimport classNames from 'classnames';\nimport CascaderContext from '../context';\n\nexport interface CheckboxProps {\n prefixCls: string;\n checked?: boolean;\n halfChecked?: boolean;\n disabled?: boolean;\n onClick?: React.MouseEventHandler;\n}\n\nexport default function Checkbox({\n prefixCls,\n checked,\n halfChecked,\n disabled,\n onClick,\n}: CheckboxProps) {\n // @ts-ignore\n const { checkable } = React.useContext(CascaderContext);\n\n const customCheckbox = typeof checkable !== 'boolean' ? checkable : null;\n\n return (\n <span\n className={classNames(`${prefixCls}`, {\n [`${prefixCls}-checked`]: checked,\n [`${prefixCls}-indeterminate`]: !checked && halfChecked,\n [`${prefixCls}-disabled`]: disabled,\n })}\n onClick={onClick}\n >\n {customCheckbox}\n </span>\n );\n}\n"]}
@@ -0,0 +1,26 @@
1
+ import * as React from 'react';
2
+ import type { DefaultOptionType, SingleValueType } from '../Cascader';
3
+ import type { RenderItem } from '../context';
4
+ export declare const FIX_LABEL = "__cascader_fix_label__";
5
+ export interface ColumnProps {
6
+ prefixCls: string;
7
+ multiple?: boolean;
8
+ options: DefaultOptionType[];
9
+ /** Current Column opened item key */
10
+ activeValue?: React.Key;
11
+ /** The value path before current column */
12
+ prevValuePath: React.Key[];
13
+ onToggleOpen: (open: boolean) => void;
14
+ onSelect: (valuePath: SingleValueType, leaf: boolean) => void;
15
+ onActive: (valuePath: SingleValueType) => void;
16
+ checkedSet: Set<React.Key>;
17
+ halfCheckedSet: Set<React.Key>;
18
+ loadingKeys: React.Key[];
19
+ isSelectable: (option: DefaultOptionType) => boolean;
20
+ renderItem?: (item: RenderItem) => React.ReactNode;
21
+ searchValue?: string;
22
+ level?: number;
23
+ dropdownVisible?: boolean;
24
+ }
25
+ export default function Column({ prefixCls, multiple, options, activeValue, prevValuePath, onToggleOpen, onSelect, onActive, checkedSet, halfCheckedSet, loadingKeys, isSelectable, renderItem, searchValue, level, dropdownVisible, }: ColumnProps): JSX.Element;
26
+ //# sourceMappingURL=Column.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Column.d.ts","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Column.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,SAAS,2BAA2B,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,qCAAqC;IACrC,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC;IACxB,2CAA2C;IAC3C,aAAa,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAC3B,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9D,QAAQ,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/C,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,cAAc,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,WAAW,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACzB,YAAY,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC;IACrD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,KAAK,CAAC,SAAS,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,OAAO,EACP,WAAW,EACX,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,KAAK,EACL,eAAe,GAChB,EAAE,WAAW,eA+Lb"}
@@ -0,0 +1,156 @@
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
+ exports.FIX_LABEL = void 0;
30
+ // @ts-nocheck
31
+ const React = __importStar(require("react"));
32
+ const classnames_1 = __importDefault(require("classnames"));
33
+ const commonUtil_1 = require("../utils/commonUtil");
34
+ const context_1 = __importDefault(require("../context"));
35
+ const Checkbox_1 = __importDefault(require("./Checkbox"));
36
+ const useSearchOptions_1 = require("../hooks/useSearchOptions");
37
+ const rc_virtual_list_1 = __importDefault(require("rc-virtual-list"));
38
+ exports.FIX_LABEL = '__cascader_fix_label__';
39
+ function Column({ prefixCls, multiple, options, activeValue, prevValuePath, onToggleOpen, onSelect, onActive, checkedSet, halfCheckedSet, loadingKeys, isSelectable, renderItem, searchValue, level, dropdownVisible, }) {
40
+ const ref = React.useRef(null);
41
+ const menuPrefixCls = `${prefixCls}-menu ${prefixCls}-menu-${level}`;
42
+ const menuItemPrefixCls = `${prefixCls}-menu-item`;
43
+ const { fieldNames, changeOnSelect, expandTrigger, expandIcon, loadingIcon, dropdownMenuColumnStyle, } = React.useContext(context_1.default);
44
+ const hoverOpen = expandTrigger === 'hover';
45
+ /** 单选情况下滚动到相应的位置 */
46
+ React.useEffect(() => {
47
+ let timer = null;
48
+ if (ref.current && ref.current.scrollTo && !multiple && dropdownVisible) {
49
+ const index = options.findIndex((it) => it[fieldNames.value] === activeValue);
50
+ if (index > 0 && !isNaN(index)) {
51
+ timer = window.setTimeout(() => {
52
+ ref.current.scrollTo(32 * index);
53
+ }, 5);
54
+ }
55
+ }
56
+ return () => {
57
+ if (timer) {
58
+ window.clearTimeout(timer);
59
+ }
60
+ timer = null;
61
+ };
62
+ }, [multiple, activeValue, options, fieldNames, dropdownVisible]);
63
+ // ============================ Option ============================
64
+ const optionInfoList = React.useMemo(() => options.map((option) => {
65
+ var _a;
66
+ const { disabled } = option;
67
+ const searchOptions = option[useSearchOptions_1.SEARCH_MARK];
68
+ const label = (_a = option[exports.FIX_LABEL]) !== null && _a !== void 0 ? _a : option[fieldNames.label];
69
+ const value = option[fieldNames.value];
70
+ const isMergedLeaf = (0, commonUtil_1.isLeaf)(option, fieldNames);
71
+ // Get real value of option. Search option is different way.
72
+ const fullPath = searchOptions
73
+ ? // @ts-ignore
74
+ searchOptions.map((opt) => opt[fieldNames.value])
75
+ : [...prevValuePath, value];
76
+ const fullPathKey = (0, commonUtil_1.toPathKey)(fullPath);
77
+ const isLoading = loadingKeys.includes(fullPathKey);
78
+ // >>>>> checked
79
+ const checked = checkedSet.has(fullPathKey);
80
+ // >>>>> halfChecked
81
+ const halfChecked = halfCheckedSet.has(fullPathKey);
82
+ return {
83
+ disabled,
84
+ label,
85
+ value,
86
+ isLeaf: isMergedLeaf,
87
+ isLoading,
88
+ checked,
89
+ halfChecked,
90
+ option,
91
+ fullPath,
92
+ fullPathKey,
93
+ };
94
+ }), [options, checkedSet, fieldNames, halfCheckedSet, loadingKeys, prevValuePath]);
95
+ // ============================ Render ============================
96
+ return (React.createElement("ul", { className: menuPrefixCls, role: "menu" },
97
+ React.createElement(rc_virtual_list_1.default, { className: optionInfoList[0].fullPathKey === '__EMPTY__' || !!searchValue
98
+ ? 'rc-virtual-list-full'
99
+ : '', data: optionInfoList, height: 180, itemHeight: 32, itemKey: "value", ref: ref }, ({ disabled, label, value, isLeaf: isMergedLeaf, isLoading, checked, halfChecked, option, fullPath, fullPathKey, }) => {
100
+ // >>>>> Open
101
+ const triggerOpenPath = () => {
102
+ if (!disabled && (!hoverOpen || !isMergedLeaf)) {
103
+ onActive(fullPath);
104
+ }
105
+ };
106
+ // >>>>> Selection
107
+ const triggerSelect = () => {
108
+ if (isSelectable(option)) {
109
+ onSelect(fullPath, isMergedLeaf);
110
+ }
111
+ };
112
+ // >>>>> Title
113
+ let title;
114
+ if (typeof option.title === 'string') {
115
+ title = option.title;
116
+ }
117
+ else if (typeof label === 'string') {
118
+ title = label;
119
+ }
120
+ return (React.createElement("li", { key: fullPathKey, className: (0, classnames_1.default)(menuItemPrefixCls, {
121
+ [`${menuItemPrefixCls}-expand`]: !isMergedLeaf,
122
+ [`${menuItemPrefixCls}-active`]: activeValue === value,
123
+ [`${menuItemPrefixCls}-disabled`]: disabled,
124
+ [`${menuItemPrefixCls}-loading`]: isLoading,
125
+ }), style: dropdownMenuColumnStyle, role: "menuitemcheckbox",
126
+ // @ts-ignore
127
+ title: title, "aria-checked": checked, "data-path-key": fullPathKey, onClick: () => {
128
+ triggerOpenPath();
129
+ if (!multiple || isMergedLeaf) {
130
+ triggerSelect();
131
+ }
132
+ }, onDoubleClick: () => {
133
+ if (changeOnSelect) {
134
+ onToggleOpen(false);
135
+ }
136
+ }, onMouseEnter: () => {
137
+ if (hoverOpen) {
138
+ triggerOpenPath();
139
+ }
140
+ }, onMouseDown: (e) => {
141
+ // Prevent selector from blurring
142
+ e.preventDefault();
143
+ } },
144
+ multiple && (React.createElement(Checkbox_1.default, { prefixCls: `${prefixCls}-checkbox`, checked: checked, halfChecked: halfChecked, disabled: disabled, onClick: (e) => {
145
+ e.stopPropagation();
146
+ triggerSelect();
147
+ } })),
148
+ React.createElement("div", { className: `${menuItemPrefixCls}-content` }, optionInfoList[0].fullPathKey !== '__EMPTY__' && renderItem
149
+ ? renderItem(option, level)
150
+ : label),
151
+ !isLoading && expandIcon && !isMergedLeaf && (React.createElement("div", { className: `${menuItemPrefixCls}-expand-icon` }, expandIcon)),
152
+ isLoading && loadingIcon && (React.createElement("div", { className: `${menuItemPrefixCls}-loading-icon` }, loadingIcon))));
153
+ })));
154
+ }
155
+ exports.default = Column;
156
+ //# sourceMappingURL=Column.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Column.js","sourceRoot":"","sources":["../../../../src/tntd-cascader/rc-cascader/OptionList/Column.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { isLeaf, toPathKey } from '../utils/commonUtil';\nimport CascaderContext from '../context';\nimport Checkbox from './Checkbox';\nimport type { DefaultOptionType, SingleValueType } from '../Cascader';\nimport { SEARCH_MARK } from '../hooks/useSearchOptions';\nimport List, { ListRef } from 'rc-virtual-list';\nimport type { RenderItem } from '../context';\n\nexport const FIX_LABEL = '__cascader_fix_label__';\n\nexport interface ColumnProps {\n prefixCls: string;\n multiple?: boolean;\n options: DefaultOptionType[];\n /** Current Column opened item key */\n activeValue?: React.Key;\n /** The value path before current column */\n prevValuePath: React.Key[];\n onToggleOpen: (open: boolean) => void;\n onSelect: (valuePath: SingleValueType, leaf: boolean) => void;\n onActive: (valuePath: SingleValueType) => void;\n checkedSet: Set<React.Key>;\n halfCheckedSet: Set<React.Key>;\n loadingKeys: React.Key[];\n isSelectable: (option: DefaultOptionType) => boolean;\n renderItem?: (item: RenderItem) => React.ReactNode;\n searchValue?: string;\n level?: number;\n dropdownVisible?: boolean;\n}\n\nexport default function Column({\n prefixCls,\n multiple,\n options,\n activeValue,\n prevValuePath,\n onToggleOpen,\n onSelect,\n onActive,\n checkedSet,\n halfCheckedSet,\n loadingKeys,\n isSelectable,\n renderItem,\n searchValue,\n level,\n dropdownVisible,\n}: ColumnProps) {\n const ref = React.useRef<ListRef>(null);\n const menuPrefixCls = `${prefixCls}-menu ${prefixCls}-menu-${level}`;\n const menuItemPrefixCls = `${prefixCls}-menu-item`;\n\n const {\n fieldNames,\n changeOnSelect,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n } = React.useContext(CascaderContext);\n\n const hoverOpen = expandTrigger === 'hover';\n\n /** 单选情况下滚动到相应的位置 */\n React.useEffect(() => {\n let timer = null;\n if (ref.current && ref.current.scrollTo && !multiple && dropdownVisible) {\n const index = options.findIndex((it) => it[fieldNames.value] === activeValue);\n\n if (index > 0 && !isNaN(index)) {\n timer = window.setTimeout(() => {\n ref.current.scrollTo(32 * index);\n }, 5);\n }\n }\n\n return () => {\n if (timer) {\n window.clearTimeout(timer);\n }\n timer = null;\n };\n }, [multiple, activeValue, options, fieldNames, dropdownVisible]);\n\n // ============================ Option ============================\n const optionInfoList = React.useMemo(\n () =>\n options.map((option) => {\n const { disabled } = option;\n const searchOptions = option[SEARCH_MARK];\n const label = option[FIX_LABEL] ?? option[fieldNames.label];\n const value = option[fieldNames.value];\n\n const isMergedLeaf = isLeaf(option, fieldNames);\n\n // Get real value of option. Search option is different way.\n const fullPath = searchOptions\n ? // @ts-ignore\n searchOptions.map((opt) => opt[fieldNames.value])\n : [...prevValuePath, value];\n const fullPathKey = toPathKey(fullPath);\n\n const isLoading = loadingKeys.includes(fullPathKey);\n\n // >>>>> checked\n const checked = checkedSet.has(fullPathKey);\n\n // >>>>> halfChecked\n const halfChecked = halfCheckedSet.has(fullPathKey);\n\n return {\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n };\n }),\n [options, checkedSet, fieldNames, halfCheckedSet, loadingKeys, prevValuePath],\n );\n // ============================ Render ============================\n return (\n <ul className={menuPrefixCls} role=\"menu\">\n <List\n className={\n optionInfoList[0].fullPathKey === '__EMPTY__' || !!searchValue\n ? 'rc-virtual-list-full'\n : ''\n }\n data={optionInfoList}\n height={180}\n itemHeight={32}\n itemKey=\"value\"\n ref={ref}\n >\n {({\n disabled,\n label,\n value,\n isLeaf: isMergedLeaf,\n isLoading,\n checked,\n halfChecked,\n option,\n fullPath,\n fullPathKey,\n }) => {\n // >>>>> Open\n const triggerOpenPath = () => {\n if (!disabled && (!hoverOpen || !isMergedLeaf)) {\n onActive(fullPath);\n }\n };\n\n // >>>>> Selection\n const triggerSelect = () => {\n if (isSelectable(option)) {\n onSelect(fullPath, isMergedLeaf);\n }\n };\n\n // >>>>> Title\n let title: string;\n if (typeof option.title === 'string') {\n title = option.title;\n } else if (typeof label === 'string') {\n title = label;\n }\n return (\n <li\n key={fullPathKey}\n className={classNames(menuItemPrefixCls, {\n [`${menuItemPrefixCls}-expand`]: !isMergedLeaf,\n [`${menuItemPrefixCls}-active`]: activeValue === value,\n [`${menuItemPrefixCls}-disabled`]: disabled,\n [`${menuItemPrefixCls}-loading`]: isLoading,\n })}\n style={dropdownMenuColumnStyle}\n role=\"menuitemcheckbox\"\n // @ts-ignore\n title={title}\n aria-checked={checked}\n data-path-key={fullPathKey}\n onClick={() => {\n triggerOpenPath();\n if (!multiple || isMergedLeaf) {\n triggerSelect();\n }\n }}\n onDoubleClick={() => {\n if (changeOnSelect) {\n onToggleOpen(false);\n }\n }}\n onMouseEnter={() => {\n if (hoverOpen) {\n triggerOpenPath();\n }\n }}\n onMouseDown={(e) => {\n // Prevent selector from blurring\n e.preventDefault();\n }}\n >\n {multiple && (\n <Checkbox\n prefixCls={`${prefixCls}-checkbox`}\n checked={checked}\n halfChecked={halfChecked}\n disabled={disabled}\n onClick={(e: React.MouseEvent<HTMLSpanElement>) => {\n e.stopPropagation();\n triggerSelect();\n }}\n />\n )}\n <div className={`${menuItemPrefixCls}-content`}>\n {optionInfoList[0].fullPathKey !== '__EMPTY__' && renderItem\n ? renderItem(option, level)\n : label}\n </div>\n {!isLoading && expandIcon && !isMergedLeaf && (\n <div className={`${menuItemPrefixCls}-expand-icon`}>{expandIcon}</div>\n )}\n {isLoading && loadingIcon && (\n <div className={`${menuItemPrefixCls}-loading-icon`}>{loadingIcon}</div>\n )}\n </li>\n );\n }}\n </List>\n </ul>\n );\n}\n"]}