@next-bricks/advanced 0.28.1 → 0.30.0

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 (235) hide show
  1. package/dist/bricks.json +13 -7
  2. package/dist/chunks/1045.6ac72d59.js +2 -0
  3. package/dist/chunks/1045.6ac72d59.js.map +1 -0
  4. package/dist/chunks/{1832.4c152234.js → 1122.443bf544.js} +2 -2
  5. package/dist/chunks/{1832.4c152234.js.map → 1122.443bf544.js.map} +1 -1
  6. package/dist/chunks/114.939f84b3.js +2 -0
  7. package/dist/chunks/114.939f84b3.js.map +1 -0
  8. package/dist/chunks/1325.49e25e4a.js +2 -0
  9. package/dist/chunks/1325.49e25e4a.js.map +1 -0
  10. package/dist/chunks/1370.72e113fc.js +2 -0
  11. package/dist/chunks/1370.72e113fc.js.map +1 -0
  12. package/dist/chunks/1436.791333be.js +3 -0
  13. package/dist/chunks/1436.791333be.js.map +1 -0
  14. package/dist/chunks/{1360.5c685109.js → 1576.218de96f.js} +3 -3
  15. package/dist/chunks/{1360.5c685109.js.map → 1576.218de96f.js.map} +1 -1
  16. package/dist/chunks/{6595.117bb366.js → 1651.d494a333.js} +3 -3
  17. package/dist/chunks/{6595.117bb366.js.map → 1651.d494a333.js.map} +1 -1
  18. package/dist/chunks/1843.5b6dd315.js +2 -0
  19. package/dist/chunks/1843.5b6dd315.js.map +1 -0
  20. package/dist/chunks/1889.d343ec6f.js +2 -0
  21. package/dist/chunks/1889.d343ec6f.js.map +1 -0
  22. package/dist/chunks/{1024.c739aadf.js → 1940.19b9ad66.js} +2 -2
  23. package/dist/chunks/{1024.c739aadf.js.map → 1940.19b9ad66.js.map} +1 -1
  24. package/dist/chunks/1972.76b94635.js +2 -0
  25. package/dist/chunks/1972.76b94635.js.map +1 -0
  26. package/dist/chunks/2025.e18ab4fb.js +2 -0
  27. package/dist/chunks/{4944.6aec0241.js.map → 2025.e18ab4fb.js.map} +1 -1
  28. package/dist/chunks/2052.cf331b1b.js +2 -0
  29. package/dist/chunks/2052.cf331b1b.js.map +1 -0
  30. package/dist/chunks/2073.711d96d8.js +2 -0
  31. package/dist/chunks/2073.711d96d8.js.map +1 -0
  32. package/dist/chunks/{3680.57f71880.js → 2277.ad4dcf98.js} +2 -2
  33. package/dist/chunks/{6064.b9dbeae3.js.map → 2277.ad4dcf98.js.map} +1 -1
  34. package/dist/chunks/{2356.ab7169ce.js → 3144.3fd68397.js} +3 -3
  35. package/dist/chunks/{2356.ab7169ce.js.map → 3144.3fd68397.js.map} +1 -1
  36. package/dist/chunks/3171.37596a9b.js +2 -0
  37. package/dist/chunks/{6056.df51c578.js.map → 3171.37596a9b.js.map} +1 -1
  38. package/dist/chunks/3426.7791cceb.js +2 -0
  39. package/dist/chunks/3426.7791cceb.js.map +1 -0
  40. package/dist/chunks/3761.f0a217b6.js +3 -0
  41. package/dist/chunks/3761.f0a217b6.js.map +1 -0
  42. package/dist/chunks/{5356.b79132fd.js → 3933.2e9cbbad.js} +2 -2
  43. package/dist/chunks/{5356.b79132fd.js.map → 3933.2e9cbbad.js.map} +1 -1
  44. package/dist/chunks/{5668.6faa0344.js → 4041.290c1b24.js} +3 -3
  45. package/dist/chunks/{5668.6faa0344.js.map → 4041.290c1b24.js.map} +1 -1
  46. package/dist/chunks/{6064.b9dbeae3.js → 4658.9ee4f95f.js} +2 -2
  47. package/dist/chunks/{3680.57f71880.js.map → 4658.9ee4f95f.js.map} +1 -1
  48. package/dist/chunks/{8648.2c33865e.js → 4741.a99aeaca.js} +2 -2
  49. package/dist/chunks/{8648.2c33865e.js.map → 4741.a99aeaca.js.map} +1 -1
  50. package/dist/chunks/{872.b8565f40.js → 478.157addab.js} +2 -2
  51. package/dist/chunks/{872.b8565f40.js.map → 478.157addab.js.map} +1 -1
  52. package/dist/chunks/{4424.4d0a67fd.js → 5053.97cae8bc.js} +2 -2
  53. package/dist/chunks/{4424.4d0a67fd.js.map → 5053.97cae8bc.js.map} +1 -1
  54. package/dist/chunks/{7928.a530d2f0.js → 5250.fe9e143a.js} +3 -3
  55. package/dist/chunks/{7928.a530d2f0.js.map → 5250.fe9e143a.js.map} +1 -1
  56. package/dist/chunks/5368.2f25a6b3.js +2 -0
  57. package/dist/chunks/5368.2f25a6b3.js.map +1 -0
  58. package/dist/chunks/{1776.ffdc95be.js → 5384.7ed9db85.js} +2 -2
  59. package/dist/chunks/{1776.ffdc95be.js.map → 5384.7ed9db85.js.map} +1 -1
  60. package/dist/chunks/5399.f4f5cd01.js +2 -0
  61. package/dist/chunks/{3752.086e6189.js.map → 5399.f4f5cd01.js.map} +1 -1
  62. package/dist/chunks/5479.e1fa2ef3.js +2 -0
  63. package/dist/chunks/5479.e1fa2ef3.js.map +1 -0
  64. package/dist/chunks/5541.103446ea.js +2 -0
  65. package/dist/chunks/{6912.93b9c9ca.js.map → 5541.103446ea.js.map} +1 -1
  66. package/dist/chunks/5552.5c5fbce0.js +2 -0
  67. package/dist/chunks/{8440.0be611c4.js.map → 5552.5c5fbce0.js.map} +1 -1
  68. package/dist/chunks/{2976.e390ae87.js → 6314.d70af290.js} +2 -2
  69. package/dist/chunks/{2976.e390ae87.js.map → 6314.d70af290.js.map} +1 -1
  70. package/dist/chunks/6519.52d0f86c.js +2 -0
  71. package/dist/chunks/{4524.0b411cf3.js.map → 6519.52d0f86c.js.map} +1 -1
  72. package/dist/chunks/6773.e28dbeba.js +2 -0
  73. package/dist/chunks/6773.e28dbeba.js.map +1 -0
  74. package/dist/chunks/7039.055fdf7a.js +2 -0
  75. package/dist/chunks/{9087.011a9874.js.map → 7039.055fdf7a.js.map} +1 -1
  76. package/dist/chunks/726.3da9c6a8.js +2 -0
  77. package/dist/chunks/726.3da9c6a8.js.map +1 -0
  78. package/dist/chunks/7304.093f0d25.js +2 -0
  79. package/dist/chunks/{2632.a7734d2d.js.map → 7304.093f0d25.js.map} +1 -1
  80. package/dist/chunks/{6804.6adb98c9.js → 7434.184ead21.js} +2 -2
  81. package/dist/chunks/{6804.6adb98c9.js.map → 7434.184ead21.js.map} +1 -1
  82. package/dist/chunks/7452.6a97f9f2.js +2 -0
  83. package/dist/chunks/{6408.d9f4aefe.js.map → 7452.6a97f9f2.js.map} +1 -1
  84. package/dist/chunks/7721.f5275653.js +3 -0
  85. package/dist/chunks/{6736.1c6f8b87.js.map → 7721.f5275653.js.map} +1 -1
  86. package/dist/chunks/7733.5f8c2d29.js +2 -0
  87. package/dist/chunks/7733.5f8c2d29.js.map +1 -0
  88. package/dist/chunks/7780.1f94864f.js +2 -0
  89. package/dist/chunks/{1372.010182e4.js.map → 7780.1f94864f.js.map} +1 -1
  90. package/dist/chunks/790.73f2dd1d.js +2 -0
  91. package/dist/chunks/{820.af44abd8.js.map → 790.73f2dd1d.js.map} +1 -1
  92. package/dist/chunks/{8492.8dcdccf5.js → 8097.39d9b97d.js} +2 -2
  93. package/dist/chunks/{8492.8dcdccf5.js.map → 8097.39d9b97d.js.map} +1 -1
  94. package/dist/chunks/{5440.c879c5e3.js → 8317.42860852.js} +3 -3
  95. package/dist/chunks/{5440.c879c5e3.js.map → 8317.42860852.js.map} +1 -1
  96. package/dist/chunks/8841.f0587441.js +2 -0
  97. package/dist/chunks/8841.f0587441.js.map +1 -0
  98. package/dist/chunks/8989.c957be2a.js +2 -0
  99. package/dist/chunks/8989.c957be2a.js.map +1 -0
  100. package/dist/chunks/9061.0edbe3c3.js +2 -0
  101. package/dist/chunks/9061.0edbe3c3.js.map +1 -0
  102. package/dist/chunks/9176.1859e663.js +2 -0
  103. package/dist/chunks/9176.1859e663.js.map +1 -0
  104. package/dist/chunks/9484.624da25b.js +2 -0
  105. package/dist/chunks/9484.624da25b.js.map +1 -0
  106. package/dist/chunks/9515.4d0b35e9.js +2 -0
  107. package/dist/chunks/{1772.c11be1f7.js.map → 9515.4d0b35e9.js.map} +1 -1
  108. package/dist/chunks/{8644.8e34e2b5.js → 9559.56808b78.js} +2 -2
  109. package/dist/chunks/{8644.8e34e2b5.js.map → 9559.56808b78.js.map} +1 -1
  110. package/dist/chunks/9591.322b08cc.js +2 -0
  111. package/dist/chunks/9591.322b08cc.js.map +1 -0
  112. package/dist/chunks/9655.79761c08.js +3 -0
  113. package/dist/chunks/9655.79761c08.js.map +1 -0
  114. package/dist/chunks/9844.7edfae2f.js +2 -0
  115. package/dist/chunks/9844.7edfae2f.js.map +1 -0
  116. package/dist/chunks/capture-snapshot.2ed68a57.js +2 -0
  117. package/dist/chunks/{capture-snapshot.abd87bdf.js.map → capture-snapshot.2ed68a57.js.map} +1 -1
  118. package/dist/chunks/eo-cascader.c9e382e0.js +2 -0
  119. package/dist/chunks/eo-cascader.c9e382e0.js.map +1 -0
  120. package/dist/chunks/eo-next-table.174e4889.js +2 -0
  121. package/dist/chunks/eo-next-table.174e4889.js.map +1 -0
  122. package/dist/chunks/eo-table.6307ca7c.js +2 -0
  123. package/dist/chunks/eo-table.6307ca7c.js.map +1 -0
  124. package/dist/chunks/eo-tree-select.8ab9b57c.js +2 -0
  125. package/dist/chunks/eo-tree-select.8ab9b57c.js.map +1 -0
  126. package/dist/chunks/eo-tree.5dacf9ac.js +2 -0
  127. package/dist/chunks/eo-tree.5dacf9ac.js.map +1 -0
  128. package/dist/chunks/eo-workbench-layout.fa3b9c53.js +2 -0
  129. package/dist/chunks/eo-workbench-layout.fa3b9c53.js.map +1 -0
  130. package/dist/chunks/main.a24a9b19.js +2 -0
  131. package/dist/chunks/main.a24a9b19.js.map +1 -0
  132. package/dist/chunks/show-watermark.8d26ba7f.js +2 -0
  133. package/dist/chunks/show-watermark.8d26ba7f.js.map +1 -0
  134. package/dist/examples.json +9 -3
  135. package/dist/index.8215b378.js +2 -0
  136. package/dist/index.8215b378.js.map +1 -0
  137. package/dist/manifest.json +178 -41
  138. package/dist/types.json +759 -59
  139. package/dist-types/bootstrap.d.ts +2 -0
  140. package/dist-types/data-providers/show-watermark/getClips.d.ts +3 -0
  141. package/dist-types/data-providers/show-watermark/show-watermark.d.ts +24 -0
  142. package/dist-types/data-providers/show-watermark/show-watermark.spec.d.ts +1 -0
  143. package/dist-types/tree-select/index.d.ts +45 -0
  144. package/dist-types/tree-select/index.spec.d.ts +1 -0
  145. package/docs/eo-tree-select.md +86 -0
  146. package/docs/show-watermark.md +121 -0
  147. package/package.json +4 -4
  148. package/dist/chunks/1036.ef9d8acc.js +0 -3
  149. package/dist/chunks/1036.ef9d8acc.js.map +0 -1
  150. package/dist/chunks/1372.010182e4.js +0 -2
  151. package/dist/chunks/1564.5b85171f.js +0 -2
  152. package/dist/chunks/1564.5b85171f.js.map +0 -1
  153. package/dist/chunks/1772.c11be1f7.js +0 -2
  154. package/dist/chunks/242.54b81304.js +0 -2
  155. package/dist/chunks/242.54b81304.js.map +0 -1
  156. package/dist/chunks/2632.a7734d2d.js +0 -2
  157. package/dist/chunks/272.2b9690e3.js +0 -2
  158. package/dist/chunks/272.2b9690e3.js.map +0 -1
  159. package/dist/chunks/3092.1bb58ec9.js +0 -2
  160. package/dist/chunks/3092.1bb58ec9.js.map +0 -1
  161. package/dist/chunks/3472.800bfa03.js +0 -3
  162. package/dist/chunks/3472.800bfa03.js.map +0 -1
  163. package/dist/chunks/3648.bf6ac98e.js +0 -2
  164. package/dist/chunks/3648.bf6ac98e.js.map +0 -1
  165. package/dist/chunks/3752.086e6189.js +0 -2
  166. package/dist/chunks/3811.654e48c5.js +0 -2
  167. package/dist/chunks/3811.654e48c5.js.map +0 -1
  168. package/dist/chunks/4024.5949aac1.js +0 -3
  169. package/dist/chunks/4024.5949aac1.js.map +0 -1
  170. package/dist/chunks/4524.0b411cf3.js +0 -2
  171. package/dist/chunks/4847.9eccad5c.js +0 -2
  172. package/dist/chunks/4847.9eccad5c.js.map +0 -1
  173. package/dist/chunks/4944.6aec0241.js +0 -2
  174. package/dist/chunks/5672.af60f802.js +0 -2
  175. package/dist/chunks/5672.af60f802.js.map +0 -1
  176. package/dist/chunks/6056.df51c578.js +0 -2
  177. package/dist/chunks/6192.d860e30b.js +0 -2
  178. package/dist/chunks/6192.d860e30b.js.map +0 -1
  179. package/dist/chunks/6228.4c3745ef.js +0 -2
  180. package/dist/chunks/6228.4c3745ef.js.map +0 -1
  181. package/dist/chunks/6352.b1e06264.js +0 -2
  182. package/dist/chunks/6352.b1e06264.js.map +0 -1
  183. package/dist/chunks/6408.d9f4aefe.js +0 -2
  184. package/dist/chunks/6472.4bed6243.js +0 -2
  185. package/dist/chunks/6472.4bed6243.js.map +0 -1
  186. package/dist/chunks/6736.1c6f8b87.js +0 -3
  187. package/dist/chunks/6912.93b9c9ca.js +0 -2
  188. package/dist/chunks/7072.2771a6a3.js +0 -2
  189. package/dist/chunks/7072.2771a6a3.js.map +0 -1
  190. package/dist/chunks/7228.522cadac.js +0 -2
  191. package/dist/chunks/7228.522cadac.js.map +0 -1
  192. package/dist/chunks/7476.23910b38.js +0 -2
  193. package/dist/chunks/7476.23910b38.js.map +0 -1
  194. package/dist/chunks/7861.ca7ca0db.js +0 -2
  195. package/dist/chunks/7861.ca7ca0db.js.map +0 -1
  196. package/dist/chunks/8060.03d46aaa.js +0 -2
  197. package/dist/chunks/8060.03d46aaa.js.map +0 -1
  198. package/dist/chunks/8064.cf8c5e0d.js +0 -2
  199. package/dist/chunks/8064.cf8c5e0d.js.map +0 -1
  200. package/dist/chunks/820.af44abd8.js +0 -2
  201. package/dist/chunks/8440.0be611c4.js +0 -2
  202. package/dist/chunks/856.aa62493a.js +0 -2
  203. package/dist/chunks/856.aa62493a.js.map +0 -1
  204. package/dist/chunks/8732.e26dabad.js +0 -2
  205. package/dist/chunks/8732.e26dabad.js.map +0 -1
  206. package/dist/chunks/8944.11c3b93b.js +0 -2
  207. package/dist/chunks/8944.11c3b93b.js.map +0 -1
  208. package/dist/chunks/9087.011a9874.js +0 -2
  209. package/dist/chunks/9648.9e02a7ae.js +0 -2
  210. package/dist/chunks/9648.9e02a7ae.js.map +0 -1
  211. package/dist/chunks/capture-snapshot.abd87bdf.js +0 -2
  212. package/dist/chunks/eo-cascader.0a27c259.js +0 -2
  213. package/dist/chunks/eo-cascader.0a27c259.js.map +0 -1
  214. package/dist/chunks/eo-next-table.3c2dcc32.js +0 -2
  215. package/dist/chunks/eo-next-table.3c2dcc32.js.map +0 -1
  216. package/dist/chunks/eo-table.8549b40e.js +0 -2
  217. package/dist/chunks/eo-table.8549b40e.js.map +0 -1
  218. package/dist/chunks/eo-tree.7aad12ee.js +0 -2
  219. package/dist/chunks/eo-tree.7aad12ee.js.map +0 -1
  220. package/dist/chunks/eo-workbench-layout.9a9da33c.js +0 -2
  221. package/dist/chunks/eo-workbench-layout.9a9da33c.js.map +0 -1
  222. package/dist/chunks/main.bd304d50.js +0 -2
  223. package/dist/chunks/main.bd304d50.js.map +0 -1
  224. package/dist/index.9a174ece.js +0 -2
  225. package/dist/index.9a174ece.js.map +0 -1
  226. /package/dist/chunks/{3472.800bfa03.js.LICENSE.txt → 1436.791333be.js.LICENSE.txt} +0 -0
  227. /package/dist/chunks/{1360.5c685109.js.LICENSE.txt → 1576.218de96f.js.LICENSE.txt} +0 -0
  228. /package/dist/chunks/{6595.117bb366.js.LICENSE.txt → 1651.d494a333.js.LICENSE.txt} +0 -0
  229. /package/dist/chunks/{2356.ab7169ce.js.LICENSE.txt → 3144.3fd68397.js.LICENSE.txt} +0 -0
  230. /package/dist/chunks/{4024.5949aac1.js.LICENSE.txt → 3761.f0a217b6.js.LICENSE.txt} +0 -0
  231. /package/dist/chunks/{5668.6faa0344.js.LICENSE.txt → 4041.290c1b24.js.LICENSE.txt} +0 -0
  232. /package/dist/chunks/{7928.a530d2f0.js.LICENSE.txt → 5250.fe9e143a.js.LICENSE.txt} +0 -0
  233. /package/dist/chunks/{6736.1c6f8b87.js.LICENSE.txt → 7721.f5275653.js.LICENSE.txt} +0 -0
  234. /package/dist/chunks/{5440.c879c5e3.js.LICENSE.txt → 8317.42860852.js.LICENSE.txt} +0 -0
  235. /package/dist/chunks/{1036.ef9d8acc.js.LICENSE.txt → 9655.79761c08.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/7072.2771a6a3.js","mappings":"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","sources":["webpack:///../../node_modules/antd/es/_util/reactNode.js","webpack:///../../node_modules/antd/es/style/motion/collapse.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js","webpack:///../../node_modules/rc-tree/es/MotionTreeNode.js","webpack:///../../node_modules/rc-tree/es/useUnmount.js","webpack:///../../node_modules/rc-tree/es/utils/diffUtil.js","webpack:///../../node_modules/rc-tree/es/NodeList.js","webpack:///../../node_modules/rc-tree/es/Tree.js","webpack:///../../node_modules/rc-tree/es/DropIndicator.js","webpack:///../../node_modules/rc-tree/es/index.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/FileOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/FileOutlined.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/FolderOpenOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/FolderOpenOutlined.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/FolderOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/FolderOutlined.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/HolderOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/HolderOutlined.js","webpack:///../../node_modules/antd/es/tree/style/index.js","webpack:///../../node_modules/antd/es/tree/utils/dropIndicator.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/CaretDownFilled.js","webpack:///../../node_modules/@ant-design/icons/es/icons/CaretDownFilled.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/MinusSquareOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/MinusSquareOutlined.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/PlusSquareOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/PlusSquareOutlined.js","webpack:///../../node_modules/antd/es/tree/utils/iconUtil.js","webpack:///../../node_modules/antd/es/tree/Tree.js","webpack:///../../node_modules/antd/es/tree/utils/dictUtil.js","webpack:///../../node_modules/antd/es/tree/DirectoryTree.js","webpack:///../../node_modules/antd/es/tree/index.js","webpack:///../../node_modules/rc-tree/es/Indent.js","webpack:///../../node_modules/rc-tree/es/TreeNode.js","webpack:///../../node_modules/rc-tree/es/contextTypes.js","webpack:///../../node_modules/rc-tree/es/util.js"],"sourcesContent":["import * as React from 'react';\nexport const {\n isValidElement\n} = React;\nexport function isFragment(child) {\n return child && isValidElement(child) && child.type === React.Fragment;\n}\nexport function replaceElement(element, replacement, props) {\n if (!isValidElement(element)) {\n return replacement;\n }\n return /*#__PURE__*/React.cloneElement(element, typeof props === 'function' ? props(element.props || {}) : props);\n}\nexport function cloneElement(element, props) {\n return replaceElement(element, element, props);\n}","const genCollapseMotion = token => ({\n [token.componentCls]: {\n // For common/openAnimation\n [`${token.antCls}-motion-collapse-legacy`]: {\n overflow: 'hidden',\n '&-active': {\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n },\n [`${token.antCls}-motion-collapse`]: {\n overflow: 'hidden',\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n }\n});\nexport default genCollapseMotion;","export default function _objectDestructuringEmpty(obj) {\n if (obj == null) throw new TypeError(\"Cannot destructure \" + obj);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectDestructuringEmpty from \"@babel/runtime/helpers/esm/objectDestructuringEmpty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"style\", \"motion\", \"motionNodes\", \"motionType\", \"onMotionStart\", \"onMotionEnd\", \"active\", \"treeNodeRequiredProps\"];\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport * as React from 'react';\nimport { TreeContext } from \"./contextTypes\";\nimport TreeNode from \"./TreeNode\";\nimport useUnmount from \"./useUnmount\";\nimport { getTreeNodeProps } from \"./utils/treeUtil\";\nvar MotionTreeNode = function MotionTreeNode(_ref, ref) {\n var className = _ref.className,\n style = _ref.style,\n motion = _ref.motion,\n motionNodes = _ref.motionNodes,\n motionType = _ref.motionType,\n onOriginMotionStart = _ref.onMotionStart,\n onOriginMotionEnd = _ref.onMotionEnd,\n active = _ref.active,\n treeNodeRequiredProps = _ref.treeNodeRequiredProps,\n props = _objectWithoutProperties(_ref, _excluded);\n var _React$useState = React.useState(true),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n visible = _React$useState2[0],\n setVisible = _React$useState2[1];\n var _React$useContext = React.useContext(TreeContext),\n prefixCls = _React$useContext.prefixCls;\n\n // Calculate target visible here.\n // And apply in effect to make `leave` motion work.\n var targetVisible = motionNodes && motionType !== 'hide';\n useLayoutEffect(function () {\n if (motionNodes) {\n if (targetVisible !== visible) {\n setVisible(targetVisible);\n }\n }\n }, [motionNodes]);\n var triggerMotionStart = function triggerMotionStart() {\n if (motionNodes) {\n onOriginMotionStart();\n }\n };\n\n // Should only trigger once\n var triggerMotionEndRef = React.useRef(false);\n var triggerMotionEnd = function triggerMotionEnd() {\n if (motionNodes && !triggerMotionEndRef.current) {\n triggerMotionEndRef.current = true;\n onOriginMotionEnd();\n }\n };\n\n // Effect if unmount\n useUnmount(triggerMotionStart, triggerMotionEnd);\n\n // Motion end event\n var onVisibleChanged = function onVisibleChanged(nextVisible) {\n if (targetVisible === nextVisible) {\n triggerMotionEnd();\n }\n };\n if (motionNodes) {\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n ref: ref,\n visible: visible\n }, motion, {\n motionAppear: motionType === 'show',\n onVisibleChanged: onVisibleChanged\n }), function (_ref2, motionRef) {\n var motionClassName = _ref2.className,\n motionStyle = _ref2.style;\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: classNames(\"\".concat(prefixCls, \"-treenode-motion\"), motionClassName),\n style: motionStyle\n }, motionNodes.map(function (treeNode) {\n var restProps = Object.assign({}, (_objectDestructuringEmpty(treeNode.data), treeNode.data)),\n title = treeNode.title,\n key = treeNode.key,\n isStart = treeNode.isStart,\n isEnd = treeNode.isEnd;\n delete restProps.children;\n var treeNodeProps = getTreeNodeProps(key, treeNodeRequiredProps);\n return /*#__PURE__*/React.createElement(TreeNode, _extends({}, restProps, treeNodeProps, {\n title: title,\n active: active,\n data: treeNode.data,\n key: key,\n isStart: isStart,\n isEnd: isEnd\n }));\n }));\n });\n }\n return /*#__PURE__*/React.createElement(TreeNode, _extends({\n domRef: ref,\n className: className,\n style: style\n }, props, {\n active: active\n }));\n};\nMotionTreeNode.displayName = 'MotionTreeNode';\nvar RefMotionTreeNode = /*#__PURE__*/React.forwardRef(MotionTreeNode);\nexport default RefMotionTreeNode;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\n\n/**\n * Trigger only when component unmount\n */\nexport default function useUnmount(triggerStart, triggerEnd) {\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n firstMount = _React$useState2[0],\n setFirstMount = _React$useState2[1];\n useLayoutEffect(function () {\n if (firstMount) {\n triggerStart();\n return function () {\n triggerEnd();\n };\n }\n }, [firstMount]);\n useLayoutEffect(function () {\n setFirstMount(true);\n return function () {\n setFirstMount(false);\n };\n }, []);\n}","export function findExpandedKeys() {\n var prev = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var next = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var prevLen = prev.length;\n var nextLen = next.length;\n if (Math.abs(prevLen - nextLen) !== 1) {\n return {\n add: false,\n key: null\n };\n }\n function find(shorter, longer) {\n var cache = new Map();\n shorter.forEach(function (key) {\n cache.set(key, true);\n });\n var keys = longer.filter(function (key) {\n return !cache.has(key);\n });\n return keys.length === 1 ? keys[0] : null;\n }\n if (prevLen < nextLen) {\n return {\n add: true,\n key: find(prev, next)\n };\n }\n return {\n add: false,\n key: find(next, prev)\n };\n}\nexport function getExpandRange(shorter, longer, key) {\n var shorterStartIndex = shorter.findIndex(function (data) {\n return data.key === key;\n });\n var shorterEndNode = shorter[shorterStartIndex + 1];\n var longerStartIndex = longer.findIndex(function (data) {\n return data.key === key;\n });\n if (shorterEndNode) {\n var longerEndIndex = longer.findIndex(function (data) {\n return data.key === shorterEndNode.key;\n });\n return longer.slice(longerStartIndex + 1, longerEndIndex);\n }\n return longer.slice(longerStartIndex + 1);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectDestructuringEmpty from \"@babel/runtime/helpers/esm/objectDestructuringEmpty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"selectable\", \"checkable\", \"expandedKeys\", \"selectedKeys\", \"checkedKeys\", \"loadedKeys\", \"loadingKeys\", \"halfCheckedKeys\", \"keyEntities\", \"disabled\", \"dragging\", \"dragOverNodeKey\", \"dropPosition\", \"motion\", \"height\", \"itemHeight\", \"virtual\", \"focusable\", \"activeItem\", \"focused\", \"tabIndex\", \"onKeyDown\", \"onFocus\", \"onBlur\", \"onActiveChange\", \"onListChangeStart\", \"onListChangeEnd\"];\n/**\n * Handle virtual list of the TreeNodes.\n */\n\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport VirtualList from 'rc-virtual-list';\nimport * as React from 'react';\nimport MotionTreeNode from \"./MotionTreeNode\";\nimport { findExpandedKeys, getExpandRange } from \"./utils/diffUtil\";\nimport { getKey, getTreeNodeProps } from \"./utils/treeUtil\";\nvar HIDDEN_STYLE = {\n width: 0,\n height: 0,\n display: 'flex',\n overflow: 'hidden',\n opacity: 0,\n border: 0,\n padding: 0,\n margin: 0\n};\nvar noop = function noop() {};\nexport var MOTION_KEY = \"RC_TREE_MOTION_\".concat(Math.random());\nvar MotionNode = {\n key: MOTION_KEY\n};\nexport var MotionEntity = {\n key: MOTION_KEY,\n level: 0,\n index: 0,\n pos: '0',\n node: MotionNode,\n nodes: [MotionNode]\n};\nvar MotionFlattenData = {\n parent: null,\n children: [],\n pos: MotionEntity.pos,\n data: MotionNode,\n title: null,\n key: MOTION_KEY,\n /** Hold empty list here since we do not use it */\n isStart: [],\n isEnd: []\n};\n/**\n * We only need get visible content items to play the animation.\n */\nexport function getMinimumRangeTransitionRange(list, virtual, height, itemHeight) {\n if (virtual === false || !height) {\n return list;\n }\n return list.slice(0, Math.ceil(height / itemHeight) + 1);\n}\nfunction itemKey(item) {\n var key = item.key,\n pos = item.pos;\n return getKey(key, pos);\n}\nfunction getAccessibilityPath(item) {\n var path = String(item.data.key);\n var current = item;\n while (current.parent) {\n current = current.parent;\n path = \"\".concat(current.data.key, \" > \").concat(path);\n }\n return path;\n}\nvar NodeList = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n data = props.data,\n selectable = props.selectable,\n checkable = props.checkable,\n expandedKeys = props.expandedKeys,\n selectedKeys = props.selectedKeys,\n checkedKeys = props.checkedKeys,\n loadedKeys = props.loadedKeys,\n loadingKeys = props.loadingKeys,\n halfCheckedKeys = props.halfCheckedKeys,\n keyEntities = props.keyEntities,\n disabled = props.disabled,\n dragging = props.dragging,\n dragOverNodeKey = props.dragOverNodeKey,\n dropPosition = props.dropPosition,\n motion = props.motion,\n height = props.height,\n itemHeight = props.itemHeight,\n virtual = props.virtual,\n focusable = props.focusable,\n activeItem = props.activeItem,\n focused = props.focused,\n tabIndex = props.tabIndex,\n onKeyDown = props.onKeyDown,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onActiveChange = props.onActiveChange,\n onListChangeStart = props.onListChangeStart,\n onListChangeEnd = props.onListChangeEnd,\n domProps = _objectWithoutProperties(props, _excluded);\n\n // =============================== Ref ================================\n var listRef = React.useRef(null);\n var indentMeasurerRef = React.useRef(null);\n React.useImperativeHandle(ref, function () {\n return {\n scrollTo: function scrollTo(scroll) {\n listRef.current.scrollTo(scroll);\n },\n getIndentWidth: function getIndentWidth() {\n return indentMeasurerRef.current.offsetWidth;\n }\n };\n });\n\n // ============================== Motion ==============================\n var _React$useState = React.useState(expandedKeys),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n prevExpandedKeys = _React$useState2[0],\n setPrevExpandedKeys = _React$useState2[1];\n var _React$useState3 = React.useState(data),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n prevData = _React$useState4[0],\n setPrevData = _React$useState4[1];\n var _React$useState5 = React.useState(data),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n transitionData = _React$useState6[0],\n setTransitionData = _React$useState6[1];\n var _React$useState7 = React.useState([]),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n transitionRange = _React$useState8[0],\n setTransitionRange = _React$useState8[1];\n var _React$useState9 = React.useState(null),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n motionType = _React$useState10[0],\n setMotionType = _React$useState10[1];\n\n // When motion end but data change, this will makes data back to previous one\n var dataRef = React.useRef(data);\n dataRef.current = data;\n function onMotionEnd() {\n var latestData = dataRef.current;\n setPrevData(latestData);\n setTransitionData(latestData);\n setTransitionRange([]);\n setMotionType(null);\n onListChangeEnd();\n }\n\n // Do animation if expanded keys changed\n // layoutEffect here to avoid blink of node removing\n useLayoutEffect(function () {\n setPrevExpandedKeys(expandedKeys);\n var diffExpanded = findExpandedKeys(prevExpandedKeys, expandedKeys);\n if (diffExpanded.key !== null) {\n if (diffExpanded.add) {\n var keyIndex = prevData.findIndex(function (_ref) {\n var key = _ref.key;\n return key === diffExpanded.key;\n });\n var rangeNodes = getMinimumRangeTransitionRange(getExpandRange(prevData, data, diffExpanded.key), virtual, height, itemHeight);\n var newTransitionData = prevData.slice();\n newTransitionData.splice(keyIndex + 1, 0, MotionFlattenData);\n setTransitionData(newTransitionData);\n setTransitionRange(rangeNodes);\n setMotionType('show');\n } else {\n var _keyIndex = data.findIndex(function (_ref2) {\n var key = _ref2.key;\n return key === diffExpanded.key;\n });\n var _rangeNodes = getMinimumRangeTransitionRange(getExpandRange(data, prevData, diffExpanded.key), virtual, height, itemHeight);\n var _newTransitionData = data.slice();\n _newTransitionData.splice(_keyIndex + 1, 0, MotionFlattenData);\n setTransitionData(_newTransitionData);\n setTransitionRange(_rangeNodes);\n setMotionType('hide');\n }\n } else if (prevData !== data) {\n // If whole data changed, we just refresh the list\n setPrevData(data);\n setTransitionData(data);\n }\n }, [expandedKeys, data]);\n\n // We should clean up motion if is changed by dragging\n React.useEffect(function () {\n if (!dragging) {\n onMotionEnd();\n }\n }, [dragging]);\n var mergedData = motion ? transitionData : data;\n var treeNodeRequiredProps = {\n expandedKeys: expandedKeys,\n selectedKeys: selectedKeys,\n loadedKeys: loadedKeys,\n loadingKeys: loadingKeys,\n checkedKeys: checkedKeys,\n halfCheckedKeys: halfCheckedKeys,\n dragOverNodeKey: dragOverNodeKey,\n dropPosition: dropPosition,\n keyEntities: keyEntities\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, focused && activeItem && /*#__PURE__*/React.createElement(\"span\", {\n style: HIDDEN_STYLE,\n \"aria-live\": \"assertive\"\n }, getAccessibilityPath(activeItem)), /*#__PURE__*/React.createElement(\"div\", null, /*#__PURE__*/React.createElement(\"input\", {\n style: HIDDEN_STYLE,\n disabled: focusable === false || disabled,\n tabIndex: focusable !== false ? tabIndex : null,\n onKeyDown: onKeyDown,\n onFocus: onFocus,\n onBlur: onBlur,\n value: \"\",\n onChange: noop,\n \"aria-label\": \"for screen reader\"\n })), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-treenode\"),\n \"aria-hidden\": true,\n style: {\n position: 'absolute',\n pointerEvents: 'none',\n visibility: 'hidden',\n height: 0,\n overflow: 'hidden',\n border: 0,\n padding: 0\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-indent\")\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: indentMeasurerRef,\n className: \"\".concat(prefixCls, \"-indent-unit\")\n }))), /*#__PURE__*/React.createElement(VirtualList, _extends({}, domProps, {\n data: mergedData,\n itemKey: itemKey,\n height: height,\n fullHeight: false,\n virtual: virtual,\n itemHeight: itemHeight,\n prefixCls: \"\".concat(prefixCls, \"-list\"),\n ref: listRef,\n onVisibleChange: function onVisibleChange(originList, fullList) {\n var originSet = new Set(originList);\n var restList = fullList.filter(function (item) {\n return !originSet.has(item);\n });\n\n // Motion node is not render. Skip motion\n if (restList.some(function (item) {\n return itemKey(item) === MOTION_KEY;\n })) {\n onMotionEnd();\n }\n }\n }), function (treeNode) {\n var pos = treeNode.pos,\n restProps = Object.assign({}, (_objectDestructuringEmpty(treeNode.data), treeNode.data)),\n title = treeNode.title,\n key = treeNode.key,\n isStart = treeNode.isStart,\n isEnd = treeNode.isEnd;\n var mergedKey = getKey(key, pos);\n delete restProps.key;\n delete restProps.children;\n var treeNodeProps = getTreeNodeProps(mergedKey, treeNodeRequiredProps);\n return /*#__PURE__*/React.createElement(MotionTreeNode, _extends({}, restProps, treeNodeProps, {\n title: title,\n active: !!activeItem && key === activeItem.key,\n pos: pos,\n data: treeNode.data,\n isStart: isStart,\n isEnd: isEnd,\n motion: motion,\n motionNodes: key === MOTION_KEY ? transitionRange : null,\n motionType: motionType,\n onMotionStart: onListChangeStart,\n onMotionEnd: onMotionEnd,\n treeNodeRequiredProps: treeNodeRequiredProps,\n onMouseMove: function onMouseMove() {\n onActiveChange(null);\n }\n }));\n }));\n});\nNodeList.displayName = 'NodeList';\nexport default NodeList;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n// TODO: https://www.w3.org/TR/2017/NOTE-wai-aria-practices-1.1-20171214/examples/treeview/treeview-2/treeview-2a.html\n// Fully accessibility support\n\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { TreeContext } from \"./contextTypes\";\nimport DropIndicator from \"./DropIndicator\";\nimport NodeList, { MotionEntity, MOTION_KEY } from \"./NodeList\";\nimport TreeNode from \"./TreeNode\";\nimport { arrAdd, arrDel, calcDropPosition, calcSelectedKeys, conductExpandParent, getDragChildrenKeys, parseCheckedKeys, posToArr } from \"./util\";\nimport { conductCheck } from \"./utils/conductUtil\";\nimport getEntity from \"./utils/keyUtil\";\nimport { convertDataToEntities, convertNodePropsToEventData, convertTreeToData, fillFieldNames, flattenTreeData, getTreeNodeProps, warningWithoutKey } from \"./utils/treeUtil\";\nvar MAX_RETRY_TIMES = 10;\nvar Tree = /*#__PURE__*/function (_React$Component) {\n _inherits(Tree, _React$Component);\n var _super = _createSuper(Tree);\n function Tree() {\n var _this;\n _classCallCheck(this, Tree);\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(_args));\n _defineProperty(_assertThisInitialized(_this), \"destroyed\", false);\n _defineProperty(_assertThisInitialized(_this), \"delayedDragEnterLogic\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"loadingRetryTimes\", {});\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n keyEntities: {},\n indent: null,\n selectedKeys: [],\n checkedKeys: [],\n halfCheckedKeys: [],\n loadedKeys: [],\n loadingKeys: [],\n expandedKeys: [],\n draggingNodeKey: null,\n dragChildrenKeys: [],\n // dropTargetKey is the key of abstract-drop-node\n // the abstract-drop-node is the real drop node when drag and drop\n // not the DOM drag over node\n dropTargetKey: null,\n dropPosition: null,\n // the drop position of abstract-drop-node, inside 0, top -1, bottom 1\n dropContainerKey: null,\n // the container key of abstract-drop-node if dropPosition is -1 or 1\n dropLevelOffset: null,\n // the drop level offset of abstract-drag-over-node\n dropTargetPos: null,\n // the pos of abstract-drop-node\n dropAllowed: true,\n // if drop to abstract-drop-node is allowed\n // the abstract-drag-over-node\n // if mouse is on the bottom of top dom node or no the top of the bottom dom node\n // abstract-drag-over-node is the top node\n dragOverNodeKey: null,\n treeData: [],\n flattenNodes: [],\n focused: false,\n activeKey: null,\n listChanging: false,\n prevProps: null,\n fieldNames: fillFieldNames()\n });\n _defineProperty(_assertThisInitialized(_this), \"dragStartMousePosition\", null);\n _defineProperty(_assertThisInitialized(_this), \"dragNode\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"currentMouseOverDroppableNodeKey\", null);\n _defineProperty(_assertThisInitialized(_this), \"listRef\", /*#__PURE__*/React.createRef());\n _defineProperty(_assertThisInitialized(_this), \"onNodeDragStart\", function (event, node) {\n var _this$state = _this.state,\n expandedKeys = _this$state.expandedKeys,\n keyEntities = _this$state.keyEntities;\n var onDragStart = _this.props.onDragStart;\n var eventKey = node.props.eventKey;\n _this.dragNode = node;\n _this.dragStartMousePosition = {\n x: event.clientX,\n y: event.clientY\n };\n var newExpandedKeys = arrDel(expandedKeys, eventKey);\n _this.setState({\n draggingNodeKey: eventKey,\n dragChildrenKeys: getDragChildrenKeys(eventKey, keyEntities),\n indent: _this.listRef.current.getIndentWidth()\n });\n _this.setExpandedKeys(newExpandedKeys);\n window.addEventListener('dragend', _this.onWindowDragEnd);\n onDragStart === null || onDragStart === void 0 || onDragStart({\n event: event,\n node: convertNodePropsToEventData(node.props)\n });\n });\n /**\n * [Legacy] Select handler is smaller than node,\n * so that this will trigger when drag enter node or select handler.\n * This is a little tricky if customize css without padding.\n * Better for use mouse move event to refresh drag state.\n * But let's just keep it to avoid event trigger logic change.\n */\n _defineProperty(_assertThisInitialized(_this), \"onNodeDragEnter\", function (event, node) {\n var _this$state2 = _this.state,\n expandedKeys = _this$state2.expandedKeys,\n keyEntities = _this$state2.keyEntities,\n dragChildrenKeys = _this$state2.dragChildrenKeys,\n flattenNodes = _this$state2.flattenNodes,\n indent = _this$state2.indent;\n var _this$props = _this.props,\n onDragEnter = _this$props.onDragEnter,\n onExpand = _this$props.onExpand,\n allowDrop = _this$props.allowDrop,\n direction = _this$props.direction;\n var _node$props = node.props,\n pos = _node$props.pos,\n eventKey = _node$props.eventKey;\n var _assertThisInitialize = _assertThisInitialized(_this),\n dragNode = _assertThisInitialize.dragNode;\n\n // record the key of node which is latest entered, used in dragleave event.\n if (_this.currentMouseOverDroppableNodeKey !== eventKey) {\n _this.currentMouseOverDroppableNodeKey = eventKey;\n }\n if (!dragNode) {\n _this.resetDragState();\n return;\n }\n var _calcDropPosition = calcDropPosition(event, dragNode, node, indent, _this.dragStartMousePosition, allowDrop, flattenNodes, keyEntities, expandedKeys, direction),\n dropPosition = _calcDropPosition.dropPosition,\n dropLevelOffset = _calcDropPosition.dropLevelOffset,\n dropTargetKey = _calcDropPosition.dropTargetKey,\n dropContainerKey = _calcDropPosition.dropContainerKey,\n dropTargetPos = _calcDropPosition.dropTargetPos,\n dropAllowed = _calcDropPosition.dropAllowed,\n dragOverNodeKey = _calcDropPosition.dragOverNodeKey;\n if (\n // don't allow drop inside its children\n dragChildrenKeys.indexOf(dropTargetKey) !== -1 ||\n // don't allow drop when drop is not allowed caculated by calcDropPosition\n !dropAllowed) {\n _this.resetDragState();\n return;\n }\n\n // Side effect for delay drag\n if (!_this.delayedDragEnterLogic) {\n _this.delayedDragEnterLogic = {};\n }\n Object.keys(_this.delayedDragEnterLogic).forEach(function (key) {\n clearTimeout(_this.delayedDragEnterLogic[key]);\n });\n if (dragNode.props.eventKey !== node.props.eventKey) {\n // hoist expand logic here\n // since if logic is on the bottom\n // it will be blocked by abstract dragover node check\n // => if you dragenter from top, you mouse will still be consider as in the top node\n event.persist();\n _this.delayedDragEnterLogic[pos] = window.setTimeout(function () {\n if (_this.state.draggingNodeKey === null) return;\n var newExpandedKeys = _toConsumableArray(expandedKeys);\n var entity = getEntity(keyEntities, node.props.eventKey);\n if (entity && (entity.children || []).length) {\n newExpandedKeys = arrAdd(expandedKeys, node.props.eventKey);\n }\n if (!('expandedKeys' in _this.props)) {\n _this.setExpandedKeys(newExpandedKeys);\n }\n onExpand === null || onExpand === void 0 || onExpand(newExpandedKeys, {\n node: convertNodePropsToEventData(node.props),\n expanded: true,\n nativeEvent: event.nativeEvent\n });\n }, 800);\n }\n\n // Skip if drag node is self\n if (dragNode.props.eventKey === dropTargetKey && dropLevelOffset === 0) {\n _this.resetDragState();\n return;\n }\n\n // Update drag over node and drag state\n _this.setState({\n dragOverNodeKey: dragOverNodeKey,\n dropPosition: dropPosition,\n dropLevelOffset: dropLevelOffset,\n dropTargetKey: dropTargetKey,\n dropContainerKey: dropContainerKey,\n dropTargetPos: dropTargetPos,\n dropAllowed: dropAllowed\n });\n onDragEnter === null || onDragEnter === void 0 || onDragEnter({\n event: event,\n node: convertNodePropsToEventData(node.props),\n expandedKeys: expandedKeys\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeDragOver\", function (event, node) {\n var _this$state3 = _this.state,\n dragChildrenKeys = _this$state3.dragChildrenKeys,\n flattenNodes = _this$state3.flattenNodes,\n keyEntities = _this$state3.keyEntities,\n expandedKeys = _this$state3.expandedKeys,\n indent = _this$state3.indent;\n var _this$props2 = _this.props,\n onDragOver = _this$props2.onDragOver,\n allowDrop = _this$props2.allowDrop,\n direction = _this$props2.direction;\n var _assertThisInitialize2 = _assertThisInitialized(_this),\n dragNode = _assertThisInitialize2.dragNode;\n if (!dragNode) {\n return;\n }\n var _calcDropPosition2 = calcDropPosition(event, dragNode, node, indent, _this.dragStartMousePosition, allowDrop, flattenNodes, keyEntities, expandedKeys, direction),\n dropPosition = _calcDropPosition2.dropPosition,\n dropLevelOffset = _calcDropPosition2.dropLevelOffset,\n dropTargetKey = _calcDropPosition2.dropTargetKey,\n dropContainerKey = _calcDropPosition2.dropContainerKey,\n dropAllowed = _calcDropPosition2.dropAllowed,\n dropTargetPos = _calcDropPosition2.dropTargetPos,\n dragOverNodeKey = _calcDropPosition2.dragOverNodeKey;\n if (dragChildrenKeys.indexOf(dropTargetKey) !== -1 || !dropAllowed) {\n // don't allow drop inside its children\n // don't allow drop when drop is not allowed calculated by calcDropPosition\n return;\n }\n\n // Update drag position\n\n if (dragNode.props.eventKey === dropTargetKey && dropLevelOffset === 0) {\n if (!(_this.state.dropPosition === null && _this.state.dropLevelOffset === null && _this.state.dropTargetKey === null && _this.state.dropContainerKey === null && _this.state.dropTargetPos === null && _this.state.dropAllowed === false && _this.state.dragOverNodeKey === null)) {\n _this.resetDragState();\n }\n } else if (!(dropPosition === _this.state.dropPosition && dropLevelOffset === _this.state.dropLevelOffset && dropTargetKey === _this.state.dropTargetKey && dropContainerKey === _this.state.dropContainerKey && dropTargetPos === _this.state.dropTargetPos && dropAllowed === _this.state.dropAllowed && dragOverNodeKey === _this.state.dragOverNodeKey)) {\n _this.setState({\n dropPosition: dropPosition,\n dropLevelOffset: dropLevelOffset,\n dropTargetKey: dropTargetKey,\n dropContainerKey: dropContainerKey,\n dropTargetPos: dropTargetPos,\n dropAllowed: dropAllowed,\n dragOverNodeKey: dragOverNodeKey\n });\n }\n onDragOver === null || onDragOver === void 0 || onDragOver({\n event: event,\n node: convertNodePropsToEventData(node.props)\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeDragLeave\", function (event, node) {\n // if it is outside the droppable area\n // currentMouseOverDroppableNodeKey will be updated in dragenter event when into another droppable receiver.\n if (_this.currentMouseOverDroppableNodeKey === node.props.eventKey && !event.currentTarget.contains(event.relatedTarget)) {\n _this.resetDragState();\n _this.currentMouseOverDroppableNodeKey = null;\n }\n var onDragLeave = _this.props.onDragLeave;\n onDragLeave === null || onDragLeave === void 0 || onDragLeave({\n event: event,\n node: convertNodePropsToEventData(node.props)\n });\n });\n // since stopPropagation() is called in treeNode\n // if onWindowDrag is called, whice means state is keeped, drag state should be cleared\n _defineProperty(_assertThisInitialized(_this), \"onWindowDragEnd\", function (event) {\n _this.onNodeDragEnd(event, null, true);\n window.removeEventListener('dragend', _this.onWindowDragEnd);\n });\n // if onNodeDragEnd is called, onWindowDragEnd won't be called since stopPropagation() is called\n _defineProperty(_assertThisInitialized(_this), \"onNodeDragEnd\", function (event, node) {\n var onDragEnd = _this.props.onDragEnd;\n _this.setState({\n dragOverNodeKey: null\n });\n _this.cleanDragState();\n onDragEnd === null || onDragEnd === void 0 || onDragEnd({\n event: event,\n node: convertNodePropsToEventData(node.props)\n });\n _this.dragNode = null;\n window.removeEventListener('dragend', _this.onWindowDragEnd);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeDrop\", function (event, node) {\n var _this$getActiveItem;\n var outsideTree = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var _this$state4 = _this.state,\n dragChildrenKeys = _this$state4.dragChildrenKeys,\n dropPosition = _this$state4.dropPosition,\n dropTargetKey = _this$state4.dropTargetKey,\n dropTargetPos = _this$state4.dropTargetPos,\n dropAllowed = _this$state4.dropAllowed;\n if (!dropAllowed) return;\n var onDrop = _this.props.onDrop;\n _this.setState({\n dragOverNodeKey: null\n });\n _this.cleanDragState();\n if (dropTargetKey === null) return;\n var abstractDropNodeProps = _objectSpread(_objectSpread({}, getTreeNodeProps(dropTargetKey, _this.getTreeNodeRequiredProps())), {}, {\n active: ((_this$getActiveItem = _this.getActiveItem()) === null || _this$getActiveItem === void 0 ? void 0 : _this$getActiveItem.key) === dropTargetKey,\n data: getEntity(_this.state.keyEntities, dropTargetKey).node\n });\n var dropToChild = dragChildrenKeys.indexOf(dropTargetKey) !== -1;\n warning(!dropToChild, \"Can not drop to dragNode's children node. This is a bug of rc-tree. Please report an issue.\");\n var posArr = posToArr(dropTargetPos);\n var dropResult = {\n event: event,\n node: convertNodePropsToEventData(abstractDropNodeProps),\n dragNode: _this.dragNode ? convertNodePropsToEventData(_this.dragNode.props) : null,\n dragNodesKeys: [_this.dragNode.props.eventKey].concat(dragChildrenKeys),\n dropToGap: dropPosition !== 0,\n dropPosition: dropPosition + Number(posArr[posArr.length - 1])\n };\n if (!outsideTree) {\n onDrop === null || onDrop === void 0 || onDrop(dropResult);\n }\n _this.dragNode = null;\n });\n _defineProperty(_assertThisInitialized(_this), \"cleanDragState\", function () {\n var draggingNodeKey = _this.state.draggingNodeKey;\n if (draggingNodeKey !== null) {\n _this.setState({\n draggingNodeKey: null,\n dropPosition: null,\n dropContainerKey: null,\n dropTargetKey: null,\n dropLevelOffset: null,\n dropAllowed: true,\n dragOverNodeKey: null\n });\n }\n _this.dragStartMousePosition = null;\n _this.currentMouseOverDroppableNodeKey = null;\n });\n _defineProperty(_assertThisInitialized(_this), \"triggerExpandActionExpand\", function (e, treeNode) {\n var _this$state5 = _this.state,\n expandedKeys = _this$state5.expandedKeys,\n flattenNodes = _this$state5.flattenNodes;\n var expanded = treeNode.expanded,\n key = treeNode.key,\n isLeaf = treeNode.isLeaf;\n if (isLeaf || e.shiftKey || e.metaKey || e.ctrlKey) {\n return;\n }\n var node = flattenNodes.filter(function (nodeItem) {\n return nodeItem.key === key;\n })[0];\n var eventNode = convertNodePropsToEventData(_objectSpread(_objectSpread({}, getTreeNodeProps(key, _this.getTreeNodeRequiredProps())), {}, {\n data: node.data\n }));\n _this.setExpandedKeys(expanded ? arrDel(expandedKeys, key) : arrAdd(expandedKeys, key));\n _this.onNodeExpand(e, eventNode);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeClick\", function (e, treeNode) {\n var _this$props3 = _this.props,\n onClick = _this$props3.onClick,\n expandAction = _this$props3.expandAction;\n if (expandAction === 'click') {\n _this.triggerExpandActionExpand(e, treeNode);\n }\n onClick === null || onClick === void 0 || onClick(e, treeNode);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeDoubleClick\", function (e, treeNode) {\n var _this$props4 = _this.props,\n onDoubleClick = _this$props4.onDoubleClick,\n expandAction = _this$props4.expandAction;\n if (expandAction === 'doubleClick') {\n _this.triggerExpandActionExpand(e, treeNode);\n }\n onDoubleClick === null || onDoubleClick === void 0 || onDoubleClick(e, treeNode);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeSelect\", function (e, treeNode) {\n var selectedKeys = _this.state.selectedKeys;\n var _this$state6 = _this.state,\n keyEntities = _this$state6.keyEntities,\n fieldNames = _this$state6.fieldNames;\n var _this$props5 = _this.props,\n onSelect = _this$props5.onSelect,\n multiple = _this$props5.multiple;\n var selected = treeNode.selected;\n var key = treeNode[fieldNames.key];\n var targetSelected = !selected;\n\n // Update selected keys\n if (!targetSelected) {\n selectedKeys = arrDel(selectedKeys, key);\n } else if (!multiple) {\n selectedKeys = [key];\n } else {\n selectedKeys = arrAdd(selectedKeys, key);\n }\n\n // [Legacy] Not found related usage in doc or upper libs\n var selectedNodes = selectedKeys.map(function (selectedKey) {\n var entity = getEntity(keyEntities, selectedKey);\n if (!entity) return null;\n return entity.node;\n }).filter(function (node) {\n return node;\n });\n _this.setUncontrolledState({\n selectedKeys: selectedKeys\n });\n onSelect === null || onSelect === void 0 || onSelect(selectedKeys, {\n event: 'select',\n selected: targetSelected,\n node: treeNode,\n selectedNodes: selectedNodes,\n nativeEvent: e.nativeEvent\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeCheck\", function (e, treeNode, checked) {\n var _this$state7 = _this.state,\n keyEntities = _this$state7.keyEntities,\n oriCheckedKeys = _this$state7.checkedKeys,\n oriHalfCheckedKeys = _this$state7.halfCheckedKeys;\n var _this$props6 = _this.props,\n checkStrictly = _this$props6.checkStrictly,\n onCheck = _this$props6.onCheck;\n var key = treeNode.key;\n\n // Prepare trigger arguments\n var checkedObj;\n var eventObj = {\n event: 'check',\n node: treeNode,\n checked: checked,\n nativeEvent: e.nativeEvent\n };\n if (checkStrictly) {\n var checkedKeys = checked ? arrAdd(oriCheckedKeys, key) : arrDel(oriCheckedKeys, key);\n var halfCheckedKeys = arrDel(oriHalfCheckedKeys, key);\n checkedObj = {\n checked: checkedKeys,\n halfChecked: halfCheckedKeys\n };\n eventObj.checkedNodes = checkedKeys.map(function (checkedKey) {\n return getEntity(keyEntities, checkedKey);\n }).filter(function (entity) {\n return entity;\n }).map(function (entity) {\n return entity.node;\n });\n _this.setUncontrolledState({\n checkedKeys: checkedKeys\n });\n } else {\n // Always fill first\n var _conductCheck = conductCheck([].concat(_toConsumableArray(oriCheckedKeys), [key]), true, keyEntities),\n _checkedKeys = _conductCheck.checkedKeys,\n _halfCheckedKeys = _conductCheck.halfCheckedKeys;\n\n // If remove, we do it again to correction\n if (!checked) {\n var keySet = new Set(_checkedKeys);\n keySet.delete(key);\n var _conductCheck2 = conductCheck(Array.from(keySet), {\n checked: false,\n halfCheckedKeys: _halfCheckedKeys\n }, keyEntities);\n _checkedKeys = _conductCheck2.checkedKeys;\n _halfCheckedKeys = _conductCheck2.halfCheckedKeys;\n }\n checkedObj = _checkedKeys;\n\n // [Legacy] This is used for `rc-tree-select`\n eventObj.checkedNodes = [];\n eventObj.checkedNodesPositions = [];\n eventObj.halfCheckedKeys = _halfCheckedKeys;\n _checkedKeys.forEach(function (checkedKey) {\n var entity = getEntity(keyEntities, checkedKey);\n if (!entity) return;\n var node = entity.node,\n pos = entity.pos;\n eventObj.checkedNodes.push(node);\n eventObj.checkedNodesPositions.push({\n node: node,\n pos: pos\n });\n });\n _this.setUncontrolledState({\n checkedKeys: _checkedKeys\n }, false, {\n halfCheckedKeys: _halfCheckedKeys\n });\n }\n onCheck === null || onCheck === void 0 || onCheck(checkedObj, eventObj);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeLoad\", function (treeNode) {\n var key = treeNode.key;\n var loadPromise = new Promise(function (resolve, reject) {\n // We need to get the latest state of loading/loaded keys\n _this.setState(function (_ref) {\n var _ref$loadedKeys = _ref.loadedKeys,\n loadedKeys = _ref$loadedKeys === void 0 ? [] : _ref$loadedKeys,\n _ref$loadingKeys = _ref.loadingKeys,\n loadingKeys = _ref$loadingKeys === void 0 ? [] : _ref$loadingKeys;\n var _this$props7 = _this.props,\n loadData = _this$props7.loadData,\n onLoad = _this$props7.onLoad;\n if (!loadData || loadedKeys.indexOf(key) !== -1 || loadingKeys.indexOf(key) !== -1) {\n return null;\n }\n\n // Process load data\n var promise = loadData(treeNode);\n promise.then(function () {\n var currentLoadedKeys = _this.state.loadedKeys;\n var newLoadedKeys = arrAdd(currentLoadedKeys, key);\n\n // onLoad should trigger before internal setState to avoid `loadData` trigger twice.\n // https://github.com/ant-design/ant-design/issues/12464\n onLoad === null || onLoad === void 0 || onLoad(newLoadedKeys, {\n event: 'load',\n node: treeNode\n });\n _this.setUncontrolledState({\n loadedKeys: newLoadedKeys\n });\n _this.setState(function (prevState) {\n return {\n loadingKeys: arrDel(prevState.loadingKeys, key)\n };\n });\n resolve();\n }).catch(function (e) {\n _this.setState(function (prevState) {\n return {\n loadingKeys: arrDel(prevState.loadingKeys, key)\n };\n });\n\n // If exceed max retry times, we give up retry\n _this.loadingRetryTimes[key] = (_this.loadingRetryTimes[key] || 0) + 1;\n if (_this.loadingRetryTimes[key] >= MAX_RETRY_TIMES) {\n var currentLoadedKeys = _this.state.loadedKeys;\n warning(false, 'Retry for `loadData` many times but still failed. No more retry.');\n _this.setUncontrolledState({\n loadedKeys: arrAdd(currentLoadedKeys, key)\n });\n resolve();\n }\n reject(e);\n });\n return {\n loadingKeys: arrAdd(loadingKeys, key)\n };\n });\n });\n\n // Not care warning if we ignore this\n loadPromise.catch(function () {});\n return loadPromise;\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeMouseEnter\", function (event, node) {\n var onMouseEnter = _this.props.onMouseEnter;\n onMouseEnter === null || onMouseEnter === void 0 || onMouseEnter({\n event: event,\n node: node\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeMouseLeave\", function (event, node) {\n var onMouseLeave = _this.props.onMouseLeave;\n onMouseLeave === null || onMouseLeave === void 0 || onMouseLeave({\n event: event,\n node: node\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeContextMenu\", function (event, node) {\n var onRightClick = _this.props.onRightClick;\n if (onRightClick) {\n event.preventDefault();\n onRightClick({\n event: event,\n node: node\n });\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onFocus\", function () {\n var onFocus = _this.props.onFocus;\n _this.setState({\n focused: true\n });\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n onFocus === null || onFocus === void 0 || onFocus.apply(void 0, args);\n });\n _defineProperty(_assertThisInitialized(_this), \"onBlur\", function () {\n var onBlur = _this.props.onBlur;\n _this.setState({\n focused: false\n });\n _this.onActiveChange(null);\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n onBlur === null || onBlur === void 0 || onBlur.apply(void 0, args);\n });\n _defineProperty(_assertThisInitialized(_this), \"getTreeNodeRequiredProps\", function () {\n var _this$state8 = _this.state,\n expandedKeys = _this$state8.expandedKeys,\n selectedKeys = _this$state8.selectedKeys,\n loadedKeys = _this$state8.loadedKeys,\n loadingKeys = _this$state8.loadingKeys,\n checkedKeys = _this$state8.checkedKeys,\n halfCheckedKeys = _this$state8.halfCheckedKeys,\n dragOverNodeKey = _this$state8.dragOverNodeKey,\n dropPosition = _this$state8.dropPosition,\n keyEntities = _this$state8.keyEntities;\n return {\n expandedKeys: expandedKeys || [],\n selectedKeys: selectedKeys || [],\n loadedKeys: loadedKeys || [],\n loadingKeys: loadingKeys || [],\n checkedKeys: checkedKeys || [],\n halfCheckedKeys: halfCheckedKeys || [],\n dragOverNodeKey: dragOverNodeKey,\n dropPosition: dropPosition,\n keyEntities: keyEntities\n };\n });\n // =========================== Expanded ===========================\n /** Set uncontrolled `expandedKeys`. This will also auto update `flattenNodes`. */\n _defineProperty(_assertThisInitialized(_this), \"setExpandedKeys\", function (expandedKeys) {\n var _this$state9 = _this.state,\n treeData = _this$state9.treeData,\n fieldNames = _this$state9.fieldNames;\n var flattenNodes = flattenTreeData(treeData, expandedKeys, fieldNames);\n _this.setUncontrolledState({\n expandedKeys: expandedKeys,\n flattenNodes: flattenNodes\n }, true);\n });\n _defineProperty(_assertThisInitialized(_this), \"onNodeExpand\", function (e, treeNode) {\n var expandedKeys = _this.state.expandedKeys;\n var _this$state10 = _this.state,\n listChanging = _this$state10.listChanging,\n fieldNames = _this$state10.fieldNames;\n var _this$props8 = _this.props,\n onExpand = _this$props8.onExpand,\n loadData = _this$props8.loadData;\n var expanded = treeNode.expanded;\n var key = treeNode[fieldNames.key];\n\n // Do nothing when motion is in progress\n if (listChanging) {\n return;\n }\n\n // Update selected keys\n var index = expandedKeys.indexOf(key);\n var targetExpanded = !expanded;\n warning(expanded && index !== -1 || !expanded && index === -1, 'Expand state not sync with index check');\n if (targetExpanded) {\n expandedKeys = arrAdd(expandedKeys, key);\n } else {\n expandedKeys = arrDel(expandedKeys, key);\n }\n _this.setExpandedKeys(expandedKeys);\n onExpand === null || onExpand === void 0 || onExpand(expandedKeys, {\n node: treeNode,\n expanded: targetExpanded,\n nativeEvent: e.nativeEvent\n });\n\n // Async Load data\n if (targetExpanded && loadData) {\n var loadPromise = _this.onNodeLoad(treeNode);\n if (loadPromise) {\n loadPromise.then(function () {\n // [Legacy] Refresh logic\n var newFlattenTreeData = flattenTreeData(_this.state.treeData, expandedKeys, fieldNames);\n _this.setUncontrolledState({\n flattenNodes: newFlattenTreeData\n });\n }).catch(function () {\n var currentExpandedKeys = _this.state.expandedKeys;\n var expandedKeysToRestore = arrDel(currentExpandedKeys, key);\n _this.setExpandedKeys(expandedKeysToRestore);\n });\n }\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onListChangeStart\", function () {\n _this.setUncontrolledState({\n listChanging: true\n });\n });\n _defineProperty(_assertThisInitialized(_this), \"onListChangeEnd\", function () {\n setTimeout(function () {\n _this.setUncontrolledState({\n listChanging: false\n });\n });\n });\n // =========================== Keyboard ===========================\n _defineProperty(_assertThisInitialized(_this), \"onActiveChange\", function (newActiveKey) {\n var activeKey = _this.state.activeKey;\n var _this$props9 = _this.props,\n onActiveChange = _this$props9.onActiveChange,\n _this$props9$itemScro = _this$props9.itemScrollOffset,\n itemScrollOffset = _this$props9$itemScro === void 0 ? 0 : _this$props9$itemScro;\n if (activeKey === newActiveKey) {\n return;\n }\n _this.setState({\n activeKey: newActiveKey\n });\n if (newActiveKey !== null) {\n _this.scrollTo({\n key: newActiveKey,\n offset: itemScrollOffset\n });\n }\n onActiveChange === null || onActiveChange === void 0 || onActiveChange(newActiveKey);\n });\n _defineProperty(_assertThisInitialized(_this), \"getActiveItem\", function () {\n var _this$state11 = _this.state,\n activeKey = _this$state11.activeKey,\n flattenNodes = _this$state11.flattenNodes;\n if (activeKey === null) {\n return null;\n }\n return flattenNodes.find(function (_ref2) {\n var key = _ref2.key;\n return key === activeKey;\n }) || null;\n });\n _defineProperty(_assertThisInitialized(_this), \"offsetActiveKey\", function (offset) {\n var _this$state12 = _this.state,\n flattenNodes = _this$state12.flattenNodes,\n activeKey = _this$state12.activeKey;\n var index = flattenNodes.findIndex(function (_ref3) {\n var key = _ref3.key;\n return key === activeKey;\n });\n\n // Align with index\n if (index === -1 && offset < 0) {\n index = flattenNodes.length;\n }\n index = (index + offset + flattenNodes.length) % flattenNodes.length;\n var item = flattenNodes[index];\n if (item) {\n var _key4 = item.key;\n _this.onActiveChange(_key4);\n } else {\n _this.onActiveChange(null);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onKeyDown\", function (event) {\n var _this$state13 = _this.state,\n activeKey = _this$state13.activeKey,\n expandedKeys = _this$state13.expandedKeys,\n checkedKeys = _this$state13.checkedKeys,\n fieldNames = _this$state13.fieldNames;\n var _this$props10 = _this.props,\n onKeyDown = _this$props10.onKeyDown,\n checkable = _this$props10.checkable,\n selectable = _this$props10.selectable;\n\n // >>>>>>>>>> Direction\n switch (event.which) {\n case KeyCode.UP:\n {\n _this.offsetActiveKey(-1);\n event.preventDefault();\n break;\n }\n case KeyCode.DOWN:\n {\n _this.offsetActiveKey(1);\n event.preventDefault();\n break;\n }\n }\n\n // >>>>>>>>>> Expand & Selection\n var activeItem = _this.getActiveItem();\n if (activeItem && activeItem.data) {\n var treeNodeRequiredProps = _this.getTreeNodeRequiredProps();\n var expandable = activeItem.data.isLeaf === false || !!(activeItem.data[fieldNames.children] || []).length;\n var eventNode = convertNodePropsToEventData(_objectSpread(_objectSpread({}, getTreeNodeProps(activeKey, treeNodeRequiredProps)), {}, {\n data: activeItem.data,\n active: true\n }));\n switch (event.which) {\n // >>> Expand\n case KeyCode.LEFT:\n {\n // Collapse if possible\n if (expandable && expandedKeys.includes(activeKey)) {\n _this.onNodeExpand({}, eventNode);\n } else if (activeItem.parent) {\n _this.onActiveChange(activeItem.parent.key);\n }\n event.preventDefault();\n break;\n }\n case KeyCode.RIGHT:\n {\n // Expand if possible\n if (expandable && !expandedKeys.includes(activeKey)) {\n _this.onNodeExpand({}, eventNode);\n } else if (activeItem.children && activeItem.children.length) {\n _this.onActiveChange(activeItem.children[0].key);\n }\n event.preventDefault();\n break;\n }\n\n // Selection\n case KeyCode.ENTER:\n case KeyCode.SPACE:\n {\n if (checkable && !eventNode.disabled && eventNode.checkable !== false && !eventNode.disableCheckbox) {\n _this.onNodeCheck({}, eventNode, !checkedKeys.includes(activeKey));\n } else if (!checkable && selectable && !eventNode.disabled && eventNode.selectable !== false) {\n _this.onNodeSelect({}, eventNode);\n }\n break;\n }\n }\n }\n onKeyDown === null || onKeyDown === void 0 || onKeyDown(event);\n });\n /**\n * Only update the value which is not in props\n */\n _defineProperty(_assertThisInitialized(_this), \"setUncontrolledState\", function (state) {\n var atomic = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var forceState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n if (!_this.destroyed) {\n var needSync = false;\n var allPassed = true;\n var newState = {};\n Object.keys(state).forEach(function (name) {\n if (name in _this.props) {\n allPassed = false;\n return;\n }\n needSync = true;\n newState[name] = state[name];\n });\n if (needSync && (!atomic || allPassed)) {\n _this.setState(_objectSpread(_objectSpread({}, newState), forceState));\n }\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"scrollTo\", function (scroll) {\n _this.listRef.current.scrollTo(scroll);\n });\n return _this;\n }\n _createClass(Tree, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.destroyed = false;\n this.onUpdated();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.onUpdated();\n }\n }, {\n key: \"onUpdated\",\n value: function onUpdated() {\n var _this$props11 = this.props,\n activeKey = _this$props11.activeKey,\n _this$props11$itemScr = _this$props11.itemScrollOffset,\n itemScrollOffset = _this$props11$itemScr === void 0 ? 0 : _this$props11$itemScr;\n if (activeKey !== undefined && activeKey !== this.state.activeKey) {\n this.setState({\n activeKey: activeKey\n });\n if (activeKey !== null) {\n this.scrollTo({\n key: activeKey,\n offset: itemScrollOffset\n });\n }\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n window.removeEventListener('dragend', this.onWindowDragEnd);\n this.destroyed = true;\n }\n }, {\n key: \"resetDragState\",\n value: function resetDragState() {\n this.setState({\n dragOverNodeKey: null,\n dropPosition: null,\n dropLevelOffset: null,\n dropTargetKey: null,\n dropContainerKey: null,\n dropTargetPos: null,\n dropAllowed: false\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$state14 = this.state,\n focused = _this$state14.focused,\n flattenNodes = _this$state14.flattenNodes,\n keyEntities = _this$state14.keyEntities,\n draggingNodeKey = _this$state14.draggingNodeKey,\n activeKey = _this$state14.activeKey,\n dropLevelOffset = _this$state14.dropLevelOffset,\n dropContainerKey = _this$state14.dropContainerKey,\n dropTargetKey = _this$state14.dropTargetKey,\n dropPosition = _this$state14.dropPosition,\n dragOverNodeKey = _this$state14.dragOverNodeKey,\n indent = _this$state14.indent;\n var _this$props12 = this.props,\n prefixCls = _this$props12.prefixCls,\n className = _this$props12.className,\n style = _this$props12.style,\n showLine = _this$props12.showLine,\n focusable = _this$props12.focusable,\n _this$props12$tabInde = _this$props12.tabIndex,\n tabIndex = _this$props12$tabInde === void 0 ? 0 : _this$props12$tabInde,\n selectable = _this$props12.selectable,\n showIcon = _this$props12.showIcon,\n icon = _this$props12.icon,\n switcherIcon = _this$props12.switcherIcon,\n draggable = _this$props12.draggable,\n checkable = _this$props12.checkable,\n checkStrictly = _this$props12.checkStrictly,\n disabled = _this$props12.disabled,\n motion = _this$props12.motion,\n loadData = _this$props12.loadData,\n filterTreeNode = _this$props12.filterTreeNode,\n height = _this$props12.height,\n itemHeight = _this$props12.itemHeight,\n virtual = _this$props12.virtual,\n titleRender = _this$props12.titleRender,\n dropIndicatorRender = _this$props12.dropIndicatorRender,\n onContextMenu = _this$props12.onContextMenu,\n onScroll = _this$props12.onScroll,\n direction = _this$props12.direction,\n rootClassName = _this$props12.rootClassName,\n rootStyle = _this$props12.rootStyle;\n var domProps = pickAttrs(this.props, {\n aria: true,\n data: true\n });\n\n // It's better move to hooks but we just simply keep here\n var draggableConfig;\n if (draggable) {\n if (_typeof(draggable) === 'object') {\n draggableConfig = draggable;\n } else if (typeof draggable === 'function') {\n draggableConfig = {\n nodeDraggable: draggable\n };\n } else {\n draggableConfig = {};\n }\n }\n return /*#__PURE__*/React.createElement(TreeContext.Provider, {\n value: {\n prefixCls: prefixCls,\n selectable: selectable,\n showIcon: showIcon,\n icon: icon,\n switcherIcon: switcherIcon,\n draggable: draggableConfig,\n draggingNodeKey: draggingNodeKey,\n checkable: checkable,\n checkStrictly: checkStrictly,\n disabled: disabled,\n keyEntities: keyEntities,\n dropLevelOffset: dropLevelOffset,\n dropContainerKey: dropContainerKey,\n dropTargetKey: dropTargetKey,\n dropPosition: dropPosition,\n dragOverNodeKey: dragOverNodeKey,\n indent: indent,\n direction: direction,\n dropIndicatorRender: dropIndicatorRender,\n loadData: loadData,\n filterTreeNode: filterTreeNode,\n titleRender: titleRender,\n onNodeClick: this.onNodeClick,\n onNodeDoubleClick: this.onNodeDoubleClick,\n onNodeExpand: this.onNodeExpand,\n onNodeSelect: this.onNodeSelect,\n onNodeCheck: this.onNodeCheck,\n onNodeLoad: this.onNodeLoad,\n onNodeMouseEnter: this.onNodeMouseEnter,\n onNodeMouseLeave: this.onNodeMouseLeave,\n onNodeContextMenu: this.onNodeContextMenu,\n onNodeDragStart: this.onNodeDragStart,\n onNodeDragEnter: this.onNodeDragEnter,\n onNodeDragOver: this.onNodeDragOver,\n onNodeDragLeave: this.onNodeDragLeave,\n onNodeDragEnd: this.onNodeDragEnd,\n onNodeDrop: this.onNodeDrop\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n role: \"tree\",\n className: classNames(prefixCls, className, rootClassName, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-show-line\"), showLine), \"\".concat(prefixCls, \"-focused\"), focused), \"\".concat(prefixCls, \"-active-focused\"), activeKey !== null)),\n style: rootStyle\n }, /*#__PURE__*/React.createElement(NodeList, _extends({\n ref: this.listRef,\n prefixCls: prefixCls,\n style: style,\n data: flattenNodes,\n disabled: disabled,\n selectable: selectable,\n checkable: !!checkable,\n motion: motion,\n dragging: draggingNodeKey !== null,\n height: height,\n itemHeight: itemHeight,\n virtual: virtual,\n focusable: focusable,\n focused: focused,\n tabIndex: tabIndex,\n activeItem: this.getActiveItem(),\n onFocus: this.onFocus,\n onBlur: this.onBlur,\n onKeyDown: this.onKeyDown,\n onActiveChange: this.onActiveChange,\n onListChangeStart: this.onListChangeStart,\n onListChangeEnd: this.onListChangeEnd,\n onContextMenu: onContextMenu,\n onScroll: onScroll\n }, this.getTreeNodeRequiredProps(), domProps))));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(props, prevState) {\n var prevProps = prevState.prevProps;\n var newState = {\n prevProps: props\n };\n function needSync(name) {\n return !prevProps && name in props || prevProps && prevProps[name] !== props[name];\n }\n\n // ================== Tree Node ==================\n var treeData;\n\n // fieldNames\n var fieldNames = prevState.fieldNames;\n if (needSync('fieldNames')) {\n fieldNames = fillFieldNames(props.fieldNames);\n newState.fieldNames = fieldNames;\n }\n\n // Check if `treeData` or `children` changed and save into the state.\n if (needSync('treeData')) {\n treeData = props.treeData;\n } else if (needSync('children')) {\n warning(false, '`children` of Tree is deprecated. Please use `treeData` instead.');\n treeData = convertTreeToData(props.children);\n }\n\n // Save flatten nodes info and convert `treeData` into keyEntities\n if (treeData) {\n newState.treeData = treeData;\n var entitiesMap = convertDataToEntities(treeData, {\n fieldNames: fieldNames\n });\n newState.keyEntities = _objectSpread(_defineProperty({}, MOTION_KEY, MotionEntity), entitiesMap.keyEntities);\n\n // Warning if treeNode not provide key\n if (process.env.NODE_ENV !== 'production') {\n warningWithoutKey(treeData, fieldNames);\n }\n }\n var keyEntities = newState.keyEntities || prevState.keyEntities;\n\n // ================ expandedKeys =================\n if (needSync('expandedKeys') || prevProps && needSync('autoExpandParent')) {\n newState.expandedKeys = props.autoExpandParent || !prevProps && props.defaultExpandParent ? conductExpandParent(props.expandedKeys, keyEntities) : props.expandedKeys;\n } else if (!prevProps && props.defaultExpandAll) {\n var cloneKeyEntities = _objectSpread({}, keyEntities);\n delete cloneKeyEntities[MOTION_KEY];\n newState.expandedKeys = Object.keys(cloneKeyEntities).map(function (key) {\n return cloneKeyEntities[key].key;\n });\n } else if (!prevProps && props.defaultExpandedKeys) {\n newState.expandedKeys = props.autoExpandParent || props.defaultExpandParent ? conductExpandParent(props.defaultExpandedKeys, keyEntities) : props.defaultExpandedKeys;\n }\n if (!newState.expandedKeys) {\n delete newState.expandedKeys;\n }\n\n // ================ flattenNodes =================\n if (treeData || newState.expandedKeys) {\n var flattenNodes = flattenTreeData(treeData || prevState.treeData, newState.expandedKeys || prevState.expandedKeys, fieldNames);\n newState.flattenNodes = flattenNodes;\n }\n\n // ================ selectedKeys =================\n if (props.selectable) {\n if (needSync('selectedKeys')) {\n newState.selectedKeys = calcSelectedKeys(props.selectedKeys, props);\n } else if (!prevProps && props.defaultSelectedKeys) {\n newState.selectedKeys = calcSelectedKeys(props.defaultSelectedKeys, props);\n }\n }\n\n // ================= checkedKeys =================\n if (props.checkable) {\n var checkedKeyEntity;\n if (needSync('checkedKeys')) {\n checkedKeyEntity = parseCheckedKeys(props.checkedKeys) || {};\n } else if (!prevProps && props.defaultCheckedKeys) {\n checkedKeyEntity = parseCheckedKeys(props.defaultCheckedKeys) || {};\n } else if (treeData) {\n // If `treeData` changed, we also need check it\n checkedKeyEntity = parseCheckedKeys(props.checkedKeys) || {\n checkedKeys: prevState.checkedKeys,\n halfCheckedKeys: prevState.halfCheckedKeys\n };\n }\n if (checkedKeyEntity) {\n var _checkedKeyEntity = checkedKeyEntity,\n _checkedKeyEntity$che = _checkedKeyEntity.checkedKeys,\n checkedKeys = _checkedKeyEntity$che === void 0 ? [] : _checkedKeyEntity$che,\n _checkedKeyEntity$hal = _checkedKeyEntity.halfCheckedKeys,\n halfCheckedKeys = _checkedKeyEntity$hal === void 0 ? [] : _checkedKeyEntity$hal;\n if (!props.checkStrictly) {\n var conductKeys = conductCheck(checkedKeys, true, keyEntities);\n checkedKeys = conductKeys.checkedKeys;\n halfCheckedKeys = conductKeys.halfCheckedKeys;\n }\n newState.checkedKeys = checkedKeys;\n newState.halfCheckedKeys = halfCheckedKeys;\n }\n }\n\n // ================= loadedKeys ==================\n if (needSync('loadedKeys')) {\n newState.loadedKeys = props.loadedKeys;\n }\n return newState;\n }\n }]);\n return Tree;\n}(React.Component);\n_defineProperty(Tree, \"defaultProps\", {\n prefixCls: 'rc-tree',\n showLine: false,\n showIcon: true,\n selectable: true,\n multiple: false,\n checkable: false,\n disabled: false,\n checkStrictly: false,\n draggable: false,\n defaultExpandParent: true,\n autoExpandParent: false,\n defaultExpandAll: false,\n defaultExpandedKeys: [],\n defaultCheckedKeys: [],\n defaultSelectedKeys: [],\n dropIndicatorRender: DropIndicator,\n allowDrop: function allowDrop() {\n return true;\n },\n expandAction: false\n});\n_defineProperty(Tree, \"TreeNode\", TreeNode);\nexport default Tree;","import * as React from 'react';\nexport default function DropIndicator(_ref) {\n var dropPosition = _ref.dropPosition,\n dropLevelOffset = _ref.dropLevelOffset,\n indent = _ref.indent;\n var style = {\n pointerEvents: 'none',\n position: 'absolute',\n right: 0,\n backgroundColor: 'red',\n height: 2\n };\n switch (dropPosition) {\n case -1:\n style.top = 0;\n style.left = -dropLevelOffset * indent;\n break;\n case 1:\n style.bottom = 0;\n style.left = -dropLevelOffset * indent;\n break;\n case 0:\n style.bottom = 0;\n style.left = indent;\n break;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: style\n });\n}","import Tree from \"./Tree\";\nimport TreeNode from \"./TreeNode\";\nexport { TreeNode };\nexport default Tree;","// This icon file is generated automatically.\nvar FileOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z\" } }] }, \"name\": \"file\", \"theme\": \"outlined\" };\nexport default FileOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport FileOutlinedSvg from \"@ant-design/icons-svg/es/asn/FileOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar FileOutlined = function FileOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: FileOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n FileOutlined.displayName = 'FileOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(FileOutlined);","// This icon file is generated automatically.\nvar FolderOpenOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z\" } }] }, \"name\": \"folder-open\", \"theme\": \"outlined\" };\nexport default FolderOpenOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport FolderOpenOutlinedSvg from \"@ant-design/icons-svg/es/asn/FolderOpenOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar FolderOpenOutlined = function FolderOpenOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: FolderOpenOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n FolderOpenOutlined.displayName = 'FolderOpenOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(FolderOpenOutlined);","// This icon file is generated automatically.\nvar FolderOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z\" } }] }, \"name\": \"folder\", \"theme\": \"outlined\" };\nexport default FolderOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport FolderOutlinedSvg from \"@ant-design/icons-svg/es/asn/FolderOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar FolderOutlined = function FolderOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: FolderOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n FolderOutlined.displayName = 'FolderOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(FolderOutlined);","// This icon file is generated automatically.\nvar HolderOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\" } }] }, \"name\": \"holder\", \"theme\": \"outlined\" };\nexport default HolderOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport HolderOutlinedSvg from \"@ant-design/icons-svg/es/asn/HolderOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar HolderOutlined = function HolderOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: HolderOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n HolderOutlined.displayName = 'HolderOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(HolderOutlined);","import { Keyframes, unit } from '@ant-design/cssinjs';\nimport { getStyle as getCheckboxStyle } from '../../checkbox/style';\nimport { genFocusOutline, resetComponent } from '../../style';\nimport { genCollapseMotion } from '../../style/motion';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================ Keyframes =============================\nconst treeNodeFX = new Keyframes('ant-tree-node-fx-do-not-use', {\n '0%': {\n opacity: 0\n },\n '100%': {\n opacity: 1\n }\n});\n// ============================== Switch ==============================\nconst getSwitchStyle = (prefixCls, token) => ({\n [`.${prefixCls}-switcher-icon`]: {\n display: 'inline-block',\n fontSize: 10,\n verticalAlign: 'baseline',\n svg: {\n transition: `transform ${token.motionDurationSlow}`\n }\n }\n});\n// =============================== Drop ===============================\nconst getDropIndicatorStyle = (prefixCls, token) => ({\n [`.${prefixCls}-drop-indicator`]: {\n position: 'absolute',\n // it should displayed over the following node\n zIndex: 1,\n height: 2,\n backgroundColor: token.colorPrimary,\n borderRadius: 1,\n pointerEvents: 'none',\n '&:after': {\n position: 'absolute',\n top: -3,\n insetInlineStart: -6,\n width: 8,\n height: 8,\n backgroundColor: 'transparent',\n border: `${unit(token.lineWidthBold)} solid ${token.colorPrimary}`,\n borderRadius: '50%',\n content: '\"\"'\n }\n }\n});\nexport const genBaseStyle = (prefixCls, token) => {\n const {\n treeCls,\n treeNodeCls,\n treeNodePadding,\n titleHeight,\n nodeSelectedBg,\n nodeHoverBg\n } = token;\n const treeCheckBoxMarginHorizontal = token.paddingXS;\n return {\n [treeCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n background: token.colorBgContainer,\n borderRadius: token.borderRadius,\n transition: `background-color ${token.motionDurationSlow}`,\n [`&${treeCls}-rtl`]: {\n // >>> Switcher\n [`${treeCls}-switcher`]: {\n '&_close': {\n [`${treeCls}-switcher-icon`]: {\n svg: {\n transform: 'rotate(90deg)'\n }\n }\n }\n }\n },\n [`&-focused:not(:hover):not(${treeCls}-active-focused)`]: Object.assign({}, genFocusOutline(token)),\n // =================== Virtual List ===================\n [`${treeCls}-list-holder-inner`]: {\n alignItems: 'flex-start'\n },\n [`&${treeCls}-block-node`]: {\n [`${treeCls}-list-holder-inner`]: {\n alignItems: 'stretch',\n // >>> Title\n [`${treeCls}-node-content-wrapper`]: {\n flex: 'auto'\n },\n // >>> Drag\n [`${treeNodeCls}.dragging`]: {\n position: 'relative',\n '&:after': {\n position: 'absolute',\n top: 0,\n insetInlineEnd: 0,\n bottom: treeNodePadding,\n insetInlineStart: 0,\n border: `1px solid ${token.colorPrimary}`,\n opacity: 0,\n animationName: treeNodeFX,\n animationDuration: token.motionDurationSlow,\n animationPlayState: 'running',\n animationFillMode: 'forwards',\n content: '\"\"',\n pointerEvents: 'none'\n }\n }\n }\n },\n // ===================== TreeNode =====================\n [`${treeNodeCls}`]: {\n display: 'flex',\n alignItems: 'flex-start',\n padding: `0 0 ${unit(treeNodePadding)} 0`,\n outline: 'none',\n '&-rtl': {\n direction: 'rtl'\n },\n // Disabled\n '&-disabled': {\n // >>> Title\n [`${treeCls}-node-content-wrapper`]: {\n color: token.colorTextDisabled,\n cursor: 'not-allowed',\n '&:hover': {\n background: 'transparent'\n }\n }\n },\n [`&-active ${treeCls}-node-content-wrapper`]: {\n background: token.controlItemBgHover\n },\n [`&:not(${treeNodeCls}-disabled).filter-node ${treeCls}-title`]: {\n color: 'inherit',\n fontWeight: 500\n },\n '&-draggable': {\n cursor: 'grab',\n [`${treeCls}-draggable-icon`]: {\n // https://github.com/ant-design/ant-design/issues/41915\n flexShrink: 0,\n width: titleHeight,\n lineHeight: `${unit(titleHeight)}`,\n textAlign: 'center',\n visibility: 'visible',\n opacity: 0.2,\n transition: `opacity ${token.motionDurationSlow}`,\n [`${treeNodeCls}:hover &`]: {\n opacity: 0.45\n }\n },\n [`&${treeNodeCls}-disabled`]: {\n [`${treeCls}-draggable-icon`]: {\n visibility: 'hidden'\n }\n }\n }\n },\n // >>> Indent\n [`${treeCls}-indent`]: {\n alignSelf: 'stretch',\n whiteSpace: 'nowrap',\n userSelect: 'none',\n '&-unit': {\n display: 'inline-block',\n width: titleHeight\n }\n },\n // >>> Drag Handler\n [`${treeCls}-draggable-icon`]: {\n visibility: 'hidden'\n },\n // >>> Switcher\n [`${treeCls}-switcher`]: Object.assign(Object.assign({}, getSwitchStyle(prefixCls, token)), {\n position: 'relative',\n flex: 'none',\n alignSelf: 'stretch',\n width: titleHeight,\n margin: 0,\n lineHeight: `${unit(titleHeight)}`,\n textAlign: 'center',\n cursor: 'pointer',\n userSelect: 'none',\n transition: `all ${token.motionDurationSlow}`,\n borderRadius: token.borderRadius,\n '&-noop': {\n cursor: 'unset'\n },\n [`&:not(${treeCls}-switcher-noop):hover`]: {\n backgroundColor: token.colorBgTextHover\n },\n '&_close': {\n [`${treeCls}-switcher-icon`]: {\n svg: {\n transform: 'rotate(-90deg)'\n }\n }\n },\n '&-loading-icon': {\n color: token.colorPrimary\n },\n '&-leaf-line': {\n position: 'relative',\n zIndex: 1,\n display: 'inline-block',\n width: '100%',\n height: '100%',\n // https://github.com/ant-design/ant-design/issues/31884\n '&:before': {\n position: 'absolute',\n top: 0,\n insetInlineEnd: token.calc(titleHeight).div(2).equal(),\n bottom: token.calc(treeNodePadding).mul(-1).equal(),\n marginInlineStart: -1,\n borderInlineEnd: `1px solid ${token.colorBorder}`,\n content: '\"\"'\n },\n '&:after': {\n position: 'absolute',\n width: token.calc(token.calc(titleHeight).div(2).equal()).mul(0.8).equal(),\n height: token.calc(titleHeight).div(2).equal(),\n borderBottom: `1px solid ${token.colorBorder}`,\n content: '\"\"'\n }\n }\n }),\n // >>> Checkbox\n [`${treeCls}-checkbox`]: {\n top: 'initial',\n marginInlineEnd: treeCheckBoxMarginHorizontal,\n alignSelf: 'flex-start',\n marginTop: token.marginXXS\n },\n // >>> Title\n // add `${treeCls}-checkbox + span` to cover checkbox `${checkboxCls} + span`\n [`${treeCls}-node-content-wrapper, ${treeCls}-checkbox + span`]: {\n position: 'relative',\n zIndex: 'auto',\n minHeight: titleHeight,\n margin: 0,\n padding: `0 ${unit(token.calc(token.paddingXS).div(2).equal())}`,\n color: 'inherit',\n lineHeight: `${unit(titleHeight)}`,\n background: 'transparent',\n borderRadius: token.borderRadius,\n cursor: 'pointer',\n transition: `all ${token.motionDurationMid}, border 0s, line-height 0s, box-shadow 0s`,\n '&:hover': {\n backgroundColor: nodeHoverBg\n },\n [`&${treeCls}-node-selected`]: {\n backgroundColor: nodeSelectedBg\n },\n // Icon\n [`${treeCls}-iconEle`]: {\n display: 'inline-block',\n width: titleHeight,\n height: titleHeight,\n lineHeight: `${unit(titleHeight)}`,\n textAlign: 'center',\n verticalAlign: 'top',\n '&:empty': {\n display: 'none'\n }\n }\n },\n // https://github.com/ant-design/ant-design/issues/28217\n [`${treeCls}-unselectable ${treeCls}-node-content-wrapper:hover`]: {\n backgroundColor: 'transparent'\n },\n // ==================== Draggable =====================\n [`${treeCls}-node-content-wrapper`]: Object.assign({\n lineHeight: `${unit(titleHeight)}`,\n userSelect: 'none'\n }, getDropIndicatorStyle(prefixCls, token)),\n [`${treeNodeCls}.drop-container`]: {\n '> [draggable]': {\n boxShadow: `0 0 0 2px ${token.colorPrimary}`\n }\n },\n // ==================== Show Line =====================\n '&-show-line': {\n // ================ Indent lines ================\n [`${treeCls}-indent`]: {\n '&-unit': {\n position: 'relative',\n height: '100%',\n '&:before': {\n position: 'absolute',\n top: 0,\n insetInlineEnd: token.calc(titleHeight).div(2).equal(),\n bottom: token.calc(treeNodePadding).mul(-1).equal(),\n borderInlineEnd: `1px solid ${token.colorBorder}`,\n content: '\"\"'\n },\n '&-end': {\n '&:before': {\n display: 'none'\n }\n }\n }\n },\n // ============== Cover Background ==============\n [`${treeCls}-switcher`]: {\n background: 'transparent',\n '&-line-icon': {\n // https://github.com/ant-design/ant-design/issues/32813\n verticalAlign: '-0.15em'\n }\n }\n },\n [`${treeNodeCls}-leaf-last`]: {\n [`${treeCls}-switcher`]: {\n '&-leaf-line': {\n '&:before': {\n top: 'auto !important',\n bottom: 'auto !important',\n height: `${unit(token.calc(titleHeight).div(2).equal())} !important`\n }\n }\n }\n }\n })\n };\n};\n// ============================ Directory =============================\nexport const genDirectoryStyle = token => {\n const {\n treeCls,\n treeNodeCls,\n treeNodePadding,\n directoryNodeSelectedBg,\n directoryNodeSelectedColor\n } = token;\n return {\n [`${treeCls}${treeCls}-directory`]: {\n // ================== TreeNode ==================\n [treeNodeCls]: {\n position: 'relative',\n // Hover color\n '&:before': {\n position: 'absolute',\n top: 0,\n insetInlineEnd: 0,\n bottom: treeNodePadding,\n insetInlineStart: 0,\n transition: `background-color ${token.motionDurationMid}`,\n content: '\"\"',\n pointerEvents: 'none'\n },\n '&:hover': {\n '&:before': {\n background: token.controlItemBgHover\n }\n },\n // Elements\n '> *': {\n zIndex: 1\n },\n // >>> Switcher\n [`${treeCls}-switcher`]: {\n transition: `color ${token.motionDurationMid}`\n },\n // >>> Title\n [`${treeCls}-node-content-wrapper`]: {\n borderRadius: 0,\n userSelect: 'none',\n '&:hover': {\n background: 'transparent'\n },\n [`&${treeCls}-node-selected`]: {\n color: directoryNodeSelectedColor,\n background: 'transparent'\n }\n },\n // ============= Selected =============\n '&-selected': {\n [`\n &:hover::before,\n &::before\n `]: {\n background: directoryNodeSelectedBg\n },\n // >>> Switcher\n [`${treeCls}-switcher`]: {\n color: directoryNodeSelectedColor\n },\n // >>> Title\n [`${treeCls}-node-content-wrapper`]: {\n color: directoryNodeSelectedColor,\n background: 'transparent'\n }\n }\n }\n }\n };\n};\n// ============================== Merged ==============================\nexport const genTreeStyle = (prefixCls, token) => {\n const treeCls = `.${prefixCls}`;\n const treeNodeCls = `${treeCls}-treenode`;\n const treeNodePadding = token.calc(token.paddingXS).div(2).equal();\n const treeToken = mergeToken(token, {\n treeCls,\n treeNodeCls,\n treeNodePadding\n });\n return [\n // Basic\n genBaseStyle(prefixCls, treeToken),\n // Directory\n genDirectoryStyle(treeToken)];\n};\nexport const initComponentToken = token => {\n const {\n controlHeightSM\n } = token;\n return {\n titleHeight: controlHeightSM,\n nodeHoverBg: token.controlItemBgHover,\n nodeSelectedBg: token.controlItemBgActive\n };\n};\nexport const prepareComponentToken = token => {\n const {\n colorTextLightSolid,\n colorPrimary\n } = token;\n return Object.assign(Object.assign({}, initComponentToken(token)), {\n directoryNodeSelectedColor: colorTextLightSolid,\n directoryNodeSelectedBg: colorPrimary\n });\n};\nexport default genStyleHooks('Tree', (token, _ref) => {\n let {\n prefixCls\n } = _ref;\n return [{\n [token.componentCls]: getCheckboxStyle(`${prefixCls}-checkbox`, token)\n }, genTreeStyle(prefixCls, token), genCollapseMotion(token)];\n}, prepareComponentToken);","\"use client\";\n\nimport React from 'react';\nexport const offset = 4;\nexport default function dropIndicatorRender(props) {\n const {\n dropPosition,\n dropLevelOffset,\n prefixCls,\n indent,\n direction = 'ltr'\n } = props;\n const startPosition = direction === 'ltr' ? 'left' : 'right';\n const endPosition = direction === 'ltr' ? 'right' : 'left';\n const style = {\n [startPosition]: -dropLevelOffset * indent + offset,\n [endPosition]: 0\n };\n switch (dropPosition) {\n case -1:\n style.top = -3;\n break;\n case 1:\n style.bottom = -3;\n break;\n default:\n // dropPosition === 0\n style.bottom = -3;\n style[startPosition] = indent + offset;\n break;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: style,\n className: `${prefixCls}-drop-indicator`\n });\n}","// This icon file is generated automatically.\nvar CaretDownFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"0 0 1024 1024\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z\" } }] }, \"name\": \"caret-down\", \"theme\": \"filled\" };\nexport default CaretDownFilled;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport CaretDownFilledSvg from \"@ant-design/icons-svg/es/asn/CaretDownFilled\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar CaretDownFilled = function CaretDownFilled(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: CaretDownFilledSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n CaretDownFilled.displayName = 'CaretDownFilled';\n}\nexport default /*#__PURE__*/React.forwardRef(CaretDownFilled);","// This icon file is generated automatically.\nvar MinusSquareOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M328 544h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z\" } }] }, \"name\": \"minus-square\", \"theme\": \"outlined\" };\nexport default MinusSquareOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport MinusSquareOutlinedSvg from \"@ant-design/icons-svg/es/asn/MinusSquareOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar MinusSquareOutlined = function MinusSquareOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: MinusSquareOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n MinusSquareOutlined.displayName = 'MinusSquareOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(MinusSquareOutlined);","// This icon file is generated automatically.\nvar PlusSquareOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M328 544h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z\" } }] }, \"name\": \"plus-square\", \"theme\": \"outlined\" };\nexport default PlusSquareOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport PlusSquareOutlinedSvg from \"@ant-design/icons-svg/es/asn/PlusSquareOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar PlusSquareOutlined = function PlusSquareOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: PlusSquareOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n PlusSquareOutlined.displayName = 'PlusSquareOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(PlusSquareOutlined);","\"use client\";\n\nimport CaretDownFilled from \"@ant-design/icons/es/icons/CaretDownFilled\";\nimport FileOutlined from \"@ant-design/icons/es/icons/FileOutlined\";\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport MinusSquareOutlined from \"@ant-design/icons/es/icons/MinusSquareOutlined\";\nimport PlusSquareOutlined from \"@ant-design/icons/es/icons/PlusSquareOutlined\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { cloneElement, isValidElement } from '../../_util/reactNode';\nconst SwitcherIconCom = props => {\n const {\n prefixCls,\n switcherIcon,\n treeNodeProps,\n showLine\n } = props;\n const {\n isLeaf,\n expanded,\n loading\n } = treeNodeProps;\n if (loading) {\n return /*#__PURE__*/React.createElement(LoadingOutlined, {\n className: `${prefixCls}-switcher-loading-icon`\n });\n }\n let showLeafIcon;\n if (showLine && typeof showLine === 'object') {\n showLeafIcon = showLine.showLeafIcon;\n }\n if (isLeaf) {\n if (!showLine) {\n return null;\n }\n if (typeof showLeafIcon !== 'boolean' && !!showLeafIcon) {\n const leafIcon = typeof showLeafIcon === 'function' ? showLeafIcon(treeNodeProps) : showLeafIcon;\n const leafCls = `${prefixCls}-switcher-line-custom-icon`;\n if (isValidElement(leafIcon)) {\n return cloneElement(leafIcon, {\n className: classNames(leafIcon.props.className || '', leafCls)\n });\n }\n return leafIcon;\n }\n return showLeafIcon ? ( /*#__PURE__*/React.createElement(FileOutlined, {\n className: `${prefixCls}-switcher-line-icon`\n })) : ( /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-switcher-leaf-line`\n }));\n }\n const switcherCls = `${prefixCls}-switcher-icon`;\n const switcher = typeof switcherIcon === 'function' ? switcherIcon(treeNodeProps) : switcherIcon;\n if (isValidElement(switcher)) {\n return cloneElement(switcher, {\n className: classNames(switcher.props.className || '', switcherCls)\n });\n }\n if (switcher !== undefined) {\n return switcher;\n }\n if (showLine) {\n return expanded ? ( /*#__PURE__*/React.createElement(MinusSquareOutlined, {\n className: `${prefixCls}-switcher-line-icon`\n })) : ( /*#__PURE__*/React.createElement(PlusSquareOutlined, {\n className: `${prefixCls}-switcher-line-icon`\n }));\n }\n return /*#__PURE__*/React.createElement(CaretDownFilled, {\n className: switcherCls\n });\n};\nexport default SwitcherIconCom;","\"use client\";\n\nimport React from 'react';\nimport HolderOutlined from \"@ant-design/icons/es/icons/HolderOutlined\";\nimport classNames from 'classnames';\nimport RcTree from 'rc-tree';\nimport initCollapseMotion from '../_util/motion';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nimport dropIndicatorRender from './utils/dropIndicator';\nimport SwitcherIconCom from './utils/iconUtil';\nimport { useToken } from '../theme/internal';\nconst Tree = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a;\n const {\n getPrefixCls,\n direction,\n virtual,\n tree\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n className,\n showIcon = false,\n showLine,\n switcherIcon,\n blockNode = false,\n children,\n checkable = false,\n selectable = true,\n draggable,\n motion: customMotion,\n style\n } = props;\n const prefixCls = getPrefixCls('tree', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const motion = customMotion !== null && customMotion !== void 0 ? customMotion : Object.assign(Object.assign({}, initCollapseMotion(rootPrefixCls)), {\n motionAppear: false\n });\n const newProps = Object.assign(Object.assign({}, props), {\n checkable,\n selectable,\n showIcon,\n motion,\n blockNode,\n showLine: Boolean(showLine),\n dropIndicatorRender\n });\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const [, token] = useToken();\n const itemHeight = token.paddingXS / 2 + (((_a = token.Tree) === null || _a === void 0 ? void 0 : _a.titleHeight) || token.controlHeightSM);\n const draggableConfig = React.useMemo(() => {\n if (!draggable) {\n return false;\n }\n let mergedDraggable = {};\n switch (typeof draggable) {\n case 'function':\n mergedDraggable.nodeDraggable = draggable;\n break;\n case 'object':\n mergedDraggable = Object.assign({}, draggable);\n break;\n default:\n break;\n // Do nothing\n }\n if (mergedDraggable.icon !== false) {\n mergedDraggable.icon = mergedDraggable.icon || /*#__PURE__*/React.createElement(HolderOutlined, null);\n }\n return mergedDraggable;\n }, [draggable]);\n const renderSwitcherIcon = nodeProps => ( /*#__PURE__*/React.createElement(SwitcherIconCom, {\n prefixCls: prefixCls,\n switcherIcon: switcherIcon,\n treeNodeProps: nodeProps,\n showLine: showLine\n }));\n return wrapCSSVar( /*#__PURE__*/React.createElement(RcTree, Object.assign({\n itemHeight: itemHeight,\n ref: ref,\n virtual: virtual\n }, newProps, {\n // newProps may contain style so declare style below it\n style: Object.assign(Object.assign({}, tree === null || tree === void 0 ? void 0 : tree.style), style),\n prefixCls: prefixCls,\n className: classNames({\n [`${prefixCls}-icon-hide`]: !showIcon,\n [`${prefixCls}-block-node`]: blockNode,\n [`${prefixCls}-unselectable`]: !selectable,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, tree === null || tree === void 0 ? void 0 : tree.className, className, hashId, cssVarCls),\n direction: direction,\n checkable: checkable ? /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-checkbox-inner`\n }) : checkable,\n selectable: selectable,\n switcherIcon: renderSwitcherIcon,\n draggable: draggableConfig\n }), children));\n});\nif (process.env.NODE_ENV !== 'production') {\n Tree.displayName = 'Tree';\n}\nexport default Tree;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { fillFieldNames } from \"rc-tree/es/utils/treeUtil\";\nvar Record;\n(function (Record) {\n Record[Record[\"None\"] = 0] = \"None\";\n Record[Record[\"Start\"] = 1] = \"Start\";\n Record[Record[\"End\"] = 2] = \"End\";\n})(Record || (Record = {}));\nfunction traverseNodesKey(treeData, callback, fieldNames) {\n const {\n key: fieldKey,\n children: fieldChildren\n } = fieldNames;\n function processNode(dataNode) {\n const key = dataNode[fieldKey];\n const children = dataNode[fieldChildren];\n if (callback(key, dataNode) !== false) {\n traverseNodesKey(children || [], callback, fieldNames);\n }\n }\n treeData.forEach(processNode);\n}\n/** 计算选中范围,只考虑expanded情况以优化性能 */\nexport function calcRangeKeys(_ref) {\n let {\n treeData,\n expandedKeys,\n startKey,\n endKey,\n fieldNames\n } = _ref;\n const keys = [];\n let record = Record.None;\n if (startKey && startKey === endKey) {\n return [startKey];\n }\n if (!startKey || !endKey) {\n return [];\n }\n function matchKey(key) {\n return key === startKey || key === endKey;\n }\n traverseNodesKey(treeData, key => {\n if (record === Record.End) {\n return false;\n }\n if (matchKey(key)) {\n // Match test\n keys.push(key);\n if (record === Record.None) {\n record = Record.Start;\n } else if (record === Record.Start) {\n record = Record.End;\n return false;\n }\n } else if (record === Record.Start) {\n // Append selection\n keys.push(key);\n }\n return expandedKeys.includes(key);\n }, fillFieldNames(fieldNames));\n return keys;\n}\nexport function convertDirectoryKeysToNodes(treeData, keys, fieldNames) {\n const restKeys = _toConsumableArray(keys);\n const nodes = [];\n traverseNodesKey(treeData, (key, node) => {\n const index = restKeys.indexOf(key);\n if (index !== -1) {\n nodes.push(node);\n restKeys.splice(index, 1);\n }\n return !!restKeys.length;\n }, fillFieldNames(fieldNames));\n return nodes;\n}","\"use client\";\n\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport FileOutlined from \"@ant-design/icons/es/icons/FileOutlined\";\nimport FolderOpenOutlined from \"@ant-design/icons/es/icons/FolderOpenOutlined\";\nimport FolderOutlined from \"@ant-design/icons/es/icons/FolderOutlined\";\nimport classNames from 'classnames';\nimport { conductExpandParent } from \"rc-tree/es/util\";\nimport { convertDataToEntities, convertTreeToData } from \"rc-tree/es/utils/treeUtil\";\nimport { ConfigContext } from '../config-provider';\nimport Tree from './Tree';\nimport { calcRangeKeys, convertDirectoryKeysToNodes } from './utils/dictUtil';\nfunction getIcon(props) {\n const {\n isLeaf,\n expanded\n } = props;\n if (isLeaf) {\n return /*#__PURE__*/React.createElement(FileOutlined, null);\n }\n return expanded ? /*#__PURE__*/React.createElement(FolderOpenOutlined, null) : /*#__PURE__*/React.createElement(FolderOutlined, null);\n}\nfunction getTreeData(_ref) {\n let {\n treeData,\n children\n } = _ref;\n return treeData || convertTreeToData(children);\n}\nconst DirectoryTree = (_a, ref) => {\n var {\n defaultExpandAll,\n defaultExpandParent,\n defaultExpandedKeys\n } = _a,\n props = __rest(_a, [\"defaultExpandAll\", \"defaultExpandParent\", \"defaultExpandedKeys\"]);\n // Shift click usage\n const lastSelectedKey = React.useRef();\n const cachedSelectedKeys = React.useRef();\n const getInitExpandedKeys = () => {\n const {\n keyEntities\n } = convertDataToEntities(getTreeData(props));\n let initExpandedKeys;\n // Expanded keys\n if (defaultExpandAll) {\n initExpandedKeys = Object.keys(keyEntities);\n } else if (defaultExpandParent) {\n initExpandedKeys = conductExpandParent(props.expandedKeys || defaultExpandedKeys || [], keyEntities);\n } else {\n initExpandedKeys = props.expandedKeys || defaultExpandedKeys;\n }\n return initExpandedKeys;\n };\n const [selectedKeys, setSelectedKeys] = React.useState(props.selectedKeys || props.defaultSelectedKeys || []);\n const [expandedKeys, setExpandedKeys] = React.useState(() => getInitExpandedKeys());\n React.useEffect(() => {\n if ('selectedKeys' in props) {\n setSelectedKeys(props.selectedKeys);\n }\n }, [props.selectedKeys]);\n React.useEffect(() => {\n if ('expandedKeys' in props) {\n setExpandedKeys(props.expandedKeys);\n }\n }, [props.expandedKeys]);\n const onExpand = (keys, info) => {\n var _a;\n if (!('expandedKeys' in props)) {\n setExpandedKeys(keys);\n }\n // Call origin function\n return (_a = props.onExpand) === null || _a === void 0 ? void 0 : _a.call(props, keys, info);\n };\n const onSelect = (keys, event) => {\n var _a;\n const {\n multiple,\n fieldNames\n } = props;\n const {\n node,\n nativeEvent\n } = event;\n const {\n key = ''\n } = node;\n const treeData = getTreeData(props);\n // const newState: DirectoryTreeState = {};\n // We need wrap this event since some value is not same\n const newEvent = Object.assign(Object.assign({}, event), {\n selected: true\n });\n // Windows / Mac single pick\n const ctrlPick = (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.ctrlKey) || (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.metaKey);\n const shiftPick = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.shiftKey;\n // Generate new selected keys\n let newSelectedKeys;\n if (multiple && ctrlPick) {\n // Control click\n newSelectedKeys = keys;\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys, fieldNames);\n } else if (multiple && shiftPick) {\n // Shift click\n newSelectedKeys = Array.from(new Set([].concat(_toConsumableArray(cachedSelectedKeys.current || []), _toConsumableArray(calcRangeKeys({\n treeData,\n expandedKeys,\n startKey: key,\n endKey: lastSelectedKey.current,\n fieldNames\n })))));\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys, fieldNames);\n } else {\n // Single click\n newSelectedKeys = [key];\n lastSelectedKey.current = key;\n cachedSelectedKeys.current = newSelectedKeys;\n newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys, fieldNames);\n }\n (_a = props.onSelect) === null || _a === void 0 ? void 0 : _a.call(props, newSelectedKeys, newEvent);\n if (!('selectedKeys' in props)) {\n setSelectedKeys(newSelectedKeys);\n }\n };\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n className,\n showIcon = true,\n expandAction = 'click'\n } = props,\n otherProps = __rest(props, [\"prefixCls\", \"className\", \"showIcon\", \"expandAction\"]);\n const prefixCls = getPrefixCls('tree', customizePrefixCls);\n const connectClassName = classNames(`${prefixCls}-directory`, {\n [`${prefixCls}-directory-rtl`]: direction === 'rtl'\n }, className);\n return /*#__PURE__*/React.createElement(Tree, Object.assign({\n icon: getIcon,\n ref: ref,\n blockNode: true\n }, otherProps, {\n showIcon: showIcon,\n expandAction: expandAction,\n prefixCls: prefixCls,\n className: connectClassName,\n expandedKeys: expandedKeys,\n selectedKeys: selectedKeys,\n onSelect: onSelect,\n onExpand: onExpand\n }));\n};\nconst ForwardDirectoryTree = /*#__PURE__*/React.forwardRef(DirectoryTree);\nif (process.env.NODE_ENV !== 'production') {\n ForwardDirectoryTree.displayName = 'DirectoryTree';\n}\nexport default ForwardDirectoryTree;","\"use client\";\n\nimport { TreeNode } from 'rc-tree';\nimport DirectoryTree from './DirectoryTree';\nimport TreePure from './Tree';\nconst Tree = TreePure;\nTree.DirectoryTree = DirectoryTree;\nTree.TreeNode = TreeNode;\nexport default Tree;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nvar Indent = function Indent(_ref) {\n var prefixCls = _ref.prefixCls,\n level = _ref.level,\n isStart = _ref.isStart,\n isEnd = _ref.isEnd;\n var baseClassName = \"\".concat(prefixCls, \"-indent-unit\");\n var list = [];\n for (var i = 0; i < level; i += 1) {\n list.push( /*#__PURE__*/React.createElement(\"span\", {\n key: i,\n className: classNames(baseClassName, _defineProperty(_defineProperty({}, \"\".concat(baseClassName, \"-start\"), isStart[i]), \"\".concat(baseClassName, \"-end\"), isEnd[i]))\n }));\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n \"aria-hidden\": \"true\",\n className: \"\".concat(prefixCls, \"-indent\")\n }, list);\n};\nexport default /*#__PURE__*/React.memo(Indent);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"eventKey\", \"className\", \"style\", \"dragOver\", \"dragOverGapTop\", \"dragOverGapBottom\", \"isLeaf\", \"isStart\", \"isEnd\", \"expanded\", \"selected\", \"checked\", \"halfChecked\", \"loading\", \"domRef\", \"active\", \"data\", \"onMouseMove\", \"selectable\"];\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport * as React from 'react';\n// @ts-ignore\nimport { TreeContext } from \"./contextTypes\";\nimport Indent from \"./Indent\";\nimport getEntity from \"./utils/keyUtil\";\nimport { convertNodePropsToEventData } from \"./utils/treeUtil\";\nvar ICON_OPEN = 'open';\nvar ICON_CLOSE = 'close';\nvar defaultTitle = '---';\nvar InternalTreeNode = /*#__PURE__*/function (_React$Component) {\n _inherits(InternalTreeNode, _React$Component);\n var _super = _createSuper(InternalTreeNode);\n function InternalTreeNode() {\n var _this;\n _classCallCheck(this, InternalTreeNode);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n dragNodeHighlight: false\n });\n _defineProperty(_assertThisInitialized(_this), \"selectHandle\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"cacheIndent\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"onSelectorClick\", function (e) {\n // Click trigger before select/check operation\n var onNodeClick = _this.props.context.onNodeClick;\n onNodeClick(e, convertNodePropsToEventData(_this.props));\n if (_this.isSelectable()) {\n _this.onSelect(e);\n } else {\n _this.onCheck(e);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onSelectorDoubleClick\", function (e) {\n var onNodeDoubleClick = _this.props.context.onNodeDoubleClick;\n onNodeDoubleClick(e, convertNodePropsToEventData(_this.props));\n });\n _defineProperty(_assertThisInitialized(_this), \"onSelect\", function (e) {\n if (_this.isDisabled()) return;\n var onNodeSelect = _this.props.context.onNodeSelect;\n onNodeSelect(e, convertNodePropsToEventData(_this.props));\n });\n _defineProperty(_assertThisInitialized(_this), \"onCheck\", function (e) {\n if (_this.isDisabled()) return;\n var _this$props = _this.props,\n disableCheckbox = _this$props.disableCheckbox,\n checked = _this$props.checked;\n var onNodeCheck = _this.props.context.onNodeCheck;\n if (!_this.isCheckable() || disableCheckbox) return;\n var targetChecked = !checked;\n onNodeCheck(e, convertNodePropsToEventData(_this.props), targetChecked);\n });\n _defineProperty(_assertThisInitialized(_this), \"onMouseEnter\", function (e) {\n var onNodeMouseEnter = _this.props.context.onNodeMouseEnter;\n onNodeMouseEnter(e, convertNodePropsToEventData(_this.props));\n });\n _defineProperty(_assertThisInitialized(_this), \"onMouseLeave\", function (e) {\n var onNodeMouseLeave = _this.props.context.onNodeMouseLeave;\n onNodeMouseLeave(e, convertNodePropsToEventData(_this.props));\n });\n _defineProperty(_assertThisInitialized(_this), \"onContextMenu\", function (e) {\n var onNodeContextMenu = _this.props.context.onNodeContextMenu;\n onNodeContextMenu(e, convertNodePropsToEventData(_this.props));\n });\n _defineProperty(_assertThisInitialized(_this), \"onDragStart\", function (e) {\n var onNodeDragStart = _this.props.context.onNodeDragStart;\n e.stopPropagation();\n _this.setState({\n dragNodeHighlight: true\n });\n onNodeDragStart(e, _assertThisInitialized(_this));\n try {\n // ie throw error\n // firefox-need-it\n e.dataTransfer.setData('text/plain', '');\n } catch (error) {\n // empty\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onDragEnter\", function (e) {\n var onNodeDragEnter = _this.props.context.onNodeDragEnter;\n e.preventDefault();\n e.stopPropagation();\n onNodeDragEnter(e, _assertThisInitialized(_this));\n });\n _defineProperty(_assertThisInitialized(_this), \"onDragOver\", function (e) {\n var onNodeDragOver = _this.props.context.onNodeDragOver;\n e.preventDefault();\n e.stopPropagation();\n onNodeDragOver(e, _assertThisInitialized(_this));\n });\n _defineProperty(_assertThisInitialized(_this), \"onDragLeave\", function (e) {\n var onNodeDragLeave = _this.props.context.onNodeDragLeave;\n e.stopPropagation();\n onNodeDragLeave(e, _assertThisInitialized(_this));\n });\n _defineProperty(_assertThisInitialized(_this), \"onDragEnd\", function (e) {\n var onNodeDragEnd = _this.props.context.onNodeDragEnd;\n e.stopPropagation();\n _this.setState({\n dragNodeHighlight: false\n });\n onNodeDragEnd(e, _assertThisInitialized(_this));\n });\n _defineProperty(_assertThisInitialized(_this), \"onDrop\", function (e) {\n var onNodeDrop = _this.props.context.onNodeDrop;\n e.preventDefault();\n e.stopPropagation();\n _this.setState({\n dragNodeHighlight: false\n });\n onNodeDrop(e, _assertThisInitialized(_this));\n });\n // Disabled item still can be switch\n _defineProperty(_assertThisInitialized(_this), \"onExpand\", function (e) {\n var _this$props2 = _this.props,\n loading = _this$props2.loading,\n onNodeExpand = _this$props2.context.onNodeExpand;\n if (loading) return;\n onNodeExpand(e, convertNodePropsToEventData(_this.props));\n });\n // Drag usage\n _defineProperty(_assertThisInitialized(_this), \"setSelectHandle\", function (node) {\n _this.selectHandle = node;\n });\n _defineProperty(_assertThisInitialized(_this), \"getNodeState\", function () {\n var expanded = _this.props.expanded;\n if (_this.isLeaf()) {\n return null;\n }\n return expanded ? ICON_OPEN : ICON_CLOSE;\n });\n _defineProperty(_assertThisInitialized(_this), \"hasChildren\", function () {\n var eventKey = _this.props.eventKey;\n var keyEntities = _this.props.context.keyEntities;\n var _ref = getEntity(keyEntities, eventKey) || {},\n children = _ref.children;\n return !!(children || []).length;\n });\n _defineProperty(_assertThisInitialized(_this), \"isLeaf\", function () {\n var _this$props3 = _this.props,\n isLeaf = _this$props3.isLeaf,\n loaded = _this$props3.loaded;\n var loadData = _this.props.context.loadData;\n var hasChildren = _this.hasChildren();\n if (isLeaf === false) {\n return false;\n }\n return isLeaf || !loadData && !hasChildren || loadData && loaded && !hasChildren;\n });\n _defineProperty(_assertThisInitialized(_this), \"isDisabled\", function () {\n var disabled = _this.props.disabled;\n var treeDisabled = _this.props.context.disabled;\n return !!(treeDisabled || disabled);\n });\n _defineProperty(_assertThisInitialized(_this), \"isCheckable\", function () {\n var checkable = _this.props.checkable;\n var treeCheckable = _this.props.context.checkable;\n\n // Return false if tree or treeNode is not checkable\n if (!treeCheckable || checkable === false) return false;\n return treeCheckable;\n });\n // Load data to avoid default expanded tree without data\n _defineProperty(_assertThisInitialized(_this), \"syncLoadData\", function (props) {\n var expanded = props.expanded,\n loading = props.loading,\n loaded = props.loaded;\n var _this$props$context = _this.props.context,\n loadData = _this$props$context.loadData,\n onNodeLoad = _this$props$context.onNodeLoad;\n if (loading) {\n return;\n }\n\n // read from state to avoid loadData at same time\n if (loadData && expanded && !_this.isLeaf()) {\n // We needn't reload data when has children in sync logic\n // It's only needed in node expanded\n if (!_this.hasChildren() && !loaded) {\n onNodeLoad(convertNodePropsToEventData(_this.props));\n }\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"isDraggable\", function () {\n var _this$props4 = _this.props,\n data = _this$props4.data,\n draggable = _this$props4.context.draggable;\n return !!(draggable && (!draggable.nodeDraggable || draggable.nodeDraggable(data)));\n });\n // ==================== Render: Drag Handler ====================\n _defineProperty(_assertThisInitialized(_this), \"renderDragHandler\", function () {\n var _this$props$context2 = _this.props.context,\n draggable = _this$props$context2.draggable,\n prefixCls = _this$props$context2.prefixCls;\n return draggable !== null && draggable !== void 0 && draggable.icon ? /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-draggable-icon\")\n }, draggable.icon) : null;\n });\n // ====================== Render: Switcher ======================\n _defineProperty(_assertThisInitialized(_this), \"renderSwitcherIconDom\", function (isLeaf) {\n var switcherIconFromProps = _this.props.switcherIcon;\n var switcherIconFromCtx = _this.props.context.switcherIcon;\n var switcherIcon = switcherIconFromProps || switcherIconFromCtx;\n // if switcherIconDom is null, no render switcher span\n if (typeof switcherIcon === 'function') {\n return switcherIcon(_objectSpread(_objectSpread({}, _this.props), {}, {\n isLeaf: isLeaf\n }));\n }\n return switcherIcon;\n });\n // Switcher\n _defineProperty(_assertThisInitialized(_this), \"renderSwitcher\", function () {\n var expanded = _this.props.expanded;\n var prefixCls = _this.props.context.prefixCls;\n if (_this.isLeaf()) {\n // if switcherIconDom is null, no render switcher span\n var _switcherIconDom = _this.renderSwitcherIconDom(true);\n return _switcherIconDom !== false ? /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-switcher\"), \"\".concat(prefixCls, \"-switcher-noop\"))\n }, _switcherIconDom) : null;\n }\n var switcherCls = classNames(\"\".concat(prefixCls, \"-switcher\"), \"\".concat(prefixCls, \"-switcher_\").concat(expanded ? ICON_OPEN : ICON_CLOSE));\n var switcherIconDom = _this.renderSwitcherIconDom(false);\n return switcherIconDom !== false ? /*#__PURE__*/React.createElement(\"span\", {\n onClick: _this.onExpand,\n className: switcherCls\n }, switcherIconDom) : null;\n });\n // ====================== Render: Checkbox ======================\n // Checkbox\n _defineProperty(_assertThisInitialized(_this), \"renderCheckbox\", function () {\n var _this$props5 = _this.props,\n checked = _this$props5.checked,\n halfChecked = _this$props5.halfChecked,\n disableCheckbox = _this$props5.disableCheckbox;\n var prefixCls = _this.props.context.prefixCls;\n var disabled = _this.isDisabled();\n var checkable = _this.isCheckable();\n if (!checkable) return null;\n\n // [Legacy] Custom element should be separate with `checkable` in future\n var $custom = typeof checkable !== 'boolean' ? checkable : null;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-checkbox\"), checked && \"\".concat(prefixCls, \"-checkbox-checked\"), !checked && halfChecked && \"\".concat(prefixCls, \"-checkbox-indeterminate\"), (disabled || disableCheckbox) && \"\".concat(prefixCls, \"-checkbox-disabled\")),\n onClick: _this.onCheck\n }, $custom);\n });\n // ==================== Render: Title + Icon ====================\n _defineProperty(_assertThisInitialized(_this), \"renderIcon\", function () {\n var loading = _this.props.loading;\n var prefixCls = _this.props.context.prefixCls;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-iconEle\"), \"\".concat(prefixCls, \"-icon__\").concat(_this.getNodeState() || 'docu'), loading && \"\".concat(prefixCls, \"-icon_loading\"))\n });\n });\n // Icon + Title\n _defineProperty(_assertThisInitialized(_this), \"renderSelector\", function () {\n var dragNodeHighlight = _this.state.dragNodeHighlight;\n var _this$props6 = _this.props,\n _this$props6$title = _this$props6.title,\n title = _this$props6$title === void 0 ? defaultTitle : _this$props6$title,\n selected = _this$props6.selected,\n icon = _this$props6.icon,\n loading = _this$props6.loading,\n data = _this$props6.data;\n var _this$props$context3 = _this.props.context,\n prefixCls = _this$props$context3.prefixCls,\n showIcon = _this$props$context3.showIcon,\n treeIcon = _this$props$context3.icon,\n loadData = _this$props$context3.loadData,\n titleRender = _this$props$context3.titleRender;\n var disabled = _this.isDisabled();\n var wrapClass = \"\".concat(prefixCls, \"-node-content-wrapper\");\n\n // Icon - Still show loading icon when loading without showIcon\n var $icon;\n if (showIcon) {\n var currentIcon = icon || treeIcon;\n $icon = currentIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-iconEle\"), \"\".concat(prefixCls, \"-icon__customize\"))\n }, typeof currentIcon === 'function' ? currentIcon(_this.props) : currentIcon) : _this.renderIcon();\n } else if (loadData && loading) {\n $icon = _this.renderIcon();\n }\n\n // Title\n var titleNode;\n if (typeof title === 'function') {\n titleNode = title(data);\n } else if (titleRender) {\n titleNode = titleRender(data);\n } else {\n titleNode = title;\n }\n var $title = /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-title\")\n }, titleNode);\n return /*#__PURE__*/React.createElement(\"span\", {\n ref: _this.setSelectHandle,\n title: typeof title === 'string' ? title : '',\n className: classNames(\"\".concat(wrapClass), \"\".concat(wrapClass, \"-\").concat(_this.getNodeState() || 'normal'), !disabled && (selected || dragNodeHighlight) && \"\".concat(prefixCls, \"-node-selected\")),\n onMouseEnter: _this.onMouseEnter,\n onMouseLeave: _this.onMouseLeave,\n onContextMenu: _this.onContextMenu,\n onClick: _this.onSelectorClick,\n onDoubleClick: _this.onSelectorDoubleClick\n }, $icon, $title, _this.renderDropIndicator());\n });\n // =================== Render: Drop Indicator ===================\n _defineProperty(_assertThisInitialized(_this), \"renderDropIndicator\", function () {\n var _this$props7 = _this.props,\n disabled = _this$props7.disabled,\n eventKey = _this$props7.eventKey;\n var _this$props$context4 = _this.props.context,\n draggable = _this$props$context4.draggable,\n dropLevelOffset = _this$props$context4.dropLevelOffset,\n dropPosition = _this$props$context4.dropPosition,\n prefixCls = _this$props$context4.prefixCls,\n indent = _this$props$context4.indent,\n dropIndicatorRender = _this$props$context4.dropIndicatorRender,\n dragOverNodeKey = _this$props$context4.dragOverNodeKey,\n direction = _this$props$context4.direction;\n var rootDraggable = !!draggable;\n // allowDrop is calculated in Tree.tsx, there is no need for calc it here\n var showIndicator = !disabled && rootDraggable && dragOverNodeKey === eventKey;\n\n // This is a hot fix which is already fixed in\n // https://github.com/react-component/tree/pull/743/files\n // But some case need break point so we hack on this\n // ref https://github.com/ant-design/ant-design/issues/43493\n var mergedIndent = indent !== null && indent !== void 0 ? indent : _this.cacheIndent;\n _this.cacheIndent = indent;\n return showIndicator ? dropIndicatorRender({\n dropPosition: dropPosition,\n dropLevelOffset: dropLevelOffset,\n indent: mergedIndent,\n prefixCls: prefixCls,\n direction: direction\n }) : null;\n });\n return _this;\n }\n _createClass(InternalTreeNode, [{\n key: \"componentDidMount\",\n value:\n // Isomorphic needn't load data in server side\n function componentDidMount() {\n this.syncLoadData(this.props);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.syncLoadData(this.props);\n }\n }, {\n key: \"isSelectable\",\n value: function isSelectable() {\n var selectable = this.props.selectable;\n var treeSelectable = this.props.context.selectable;\n\n // Ignore when selectable is undefined or null\n if (typeof selectable === 'boolean') {\n return selectable;\n }\n return treeSelectable;\n }\n }, {\n key: \"render\",\n value:\n // =========================== Render ===========================\n function render() {\n var _classNames;\n var _this$props8 = this.props,\n eventKey = _this$props8.eventKey,\n className = _this$props8.className,\n style = _this$props8.style,\n dragOver = _this$props8.dragOver,\n dragOverGapTop = _this$props8.dragOverGapTop,\n dragOverGapBottom = _this$props8.dragOverGapBottom,\n isLeaf = _this$props8.isLeaf,\n isStart = _this$props8.isStart,\n isEnd = _this$props8.isEnd,\n expanded = _this$props8.expanded,\n selected = _this$props8.selected,\n checked = _this$props8.checked,\n halfChecked = _this$props8.halfChecked,\n loading = _this$props8.loading,\n domRef = _this$props8.domRef,\n active = _this$props8.active,\n data = _this$props8.data,\n onMouseMove = _this$props8.onMouseMove,\n selectable = _this$props8.selectable,\n otherProps = _objectWithoutProperties(_this$props8, _excluded);\n var _this$props$context5 = this.props.context,\n prefixCls = _this$props$context5.prefixCls,\n filterTreeNode = _this$props$context5.filterTreeNode,\n keyEntities = _this$props$context5.keyEntities,\n dropContainerKey = _this$props$context5.dropContainerKey,\n dropTargetKey = _this$props$context5.dropTargetKey,\n draggingNodeKey = _this$props$context5.draggingNodeKey;\n var disabled = this.isDisabled();\n var dataOrAriaAttributeProps = pickAttrs(otherProps, {\n aria: true,\n data: true\n });\n var _ref2 = getEntity(keyEntities, eventKey) || {},\n level = _ref2.level;\n var isEndNode = isEnd[isEnd.length - 1];\n var mergedDraggable = this.isDraggable();\n var draggableWithoutDisabled = !disabled && mergedDraggable;\n var dragging = draggingNodeKey === eventKey;\n var ariaSelected = selectable !== undefined ? {\n 'aria-selected': !!selectable\n } : undefined;\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: domRef,\n className: classNames(className, \"\".concat(prefixCls, \"-treenode\"), (_classNames = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames, \"\".concat(prefixCls, \"-treenode-disabled\"), disabled), \"\".concat(prefixCls, \"-treenode-switcher-\").concat(expanded ? 'open' : 'close'), !isLeaf), \"\".concat(prefixCls, \"-treenode-checkbox-checked\"), checked), \"\".concat(prefixCls, \"-treenode-checkbox-indeterminate\"), halfChecked), \"\".concat(prefixCls, \"-treenode-selected\"), selected), \"\".concat(prefixCls, \"-treenode-loading\"), loading), \"\".concat(prefixCls, \"-treenode-active\"), active), \"\".concat(prefixCls, \"-treenode-leaf-last\"), isEndNode), \"\".concat(prefixCls, \"-treenode-draggable\"), mergedDraggable), \"dragging\", dragging), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames, 'drop-target', dropTargetKey === eventKey), 'drop-container', dropContainerKey === eventKey), 'drag-over', !disabled && dragOver), 'drag-over-gap-top', !disabled && dragOverGapTop), 'drag-over-gap-bottom', !disabled && dragOverGapBottom), 'filter-node', filterTreeNode && filterTreeNode(convertNodePropsToEventData(this.props))))),\n style: style\n // Draggable config\n ,\n draggable: draggableWithoutDisabled,\n \"aria-grabbed\": dragging,\n onDragStart: draggableWithoutDisabled ? this.onDragStart : undefined\n // Drop config\n ,\n onDragEnter: mergedDraggable ? this.onDragEnter : undefined,\n onDragOver: mergedDraggable ? this.onDragOver : undefined,\n onDragLeave: mergedDraggable ? this.onDragLeave : undefined,\n onDrop: mergedDraggable ? this.onDrop : undefined,\n onDragEnd: mergedDraggable ? this.onDragEnd : undefined,\n onMouseMove: onMouseMove\n }, ariaSelected, dataOrAriaAttributeProps), /*#__PURE__*/React.createElement(Indent, {\n prefixCls: prefixCls,\n level: level,\n isStart: isStart,\n isEnd: isEnd\n }), this.renderDragHandler(), this.renderSwitcher(), this.renderCheckbox(), this.renderSelector());\n }\n }]);\n return InternalTreeNode;\n}(React.Component);\nvar ContextTreeNode = function ContextTreeNode(props) {\n return /*#__PURE__*/React.createElement(TreeContext.Consumer, null, function (context) {\n return /*#__PURE__*/React.createElement(InternalTreeNode, _extends({}, props, {\n context: context\n }));\n });\n};\nContextTreeNode.displayName = 'TreeNode';\nContextTreeNode.isTreeNode = 1;\nexport default ContextTreeNode;","/**\n * Webpack has bug for import loop, which is not the same behavior as ES module.\n * When util.js imports the TreeNode for tree generate will cause treeContextTypes be empty.\n */\nimport * as React from 'react';\nexport var TreeContext = /*#__PURE__*/React.createContext(null);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"];\n/* eslint-disable no-lonely-if */\n/**\n * Legacy code. Should avoid to use if you are new to import these code.\n */\n\nimport warning from \"rc-util/es/warning\";\nimport React from 'react';\nimport TreeNode from \"./TreeNode\";\nimport getEntity from \"./utils/keyUtil\";\nexport { getPosition, isTreeNode } from \"./utils/treeUtil\";\nexport function arrDel(list, value) {\n if (!list) return [];\n var clone = list.slice();\n var index = clone.indexOf(value);\n if (index >= 0) {\n clone.splice(index, 1);\n }\n return clone;\n}\nexport function arrAdd(list, value) {\n var clone = (list || []).slice();\n if (clone.indexOf(value) === -1) {\n clone.push(value);\n }\n return clone;\n}\nexport function posToArr(pos) {\n return pos.split('-');\n}\nexport function getDragChildrenKeys(dragNodeKey, keyEntities) {\n // not contains self\n // self for left or right drag\n var dragChildrenKeys = [];\n var entity = getEntity(keyEntities, dragNodeKey);\n function dig() {\n var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n list.forEach(function (_ref) {\n var key = _ref.key,\n children = _ref.children;\n dragChildrenKeys.push(key);\n dig(children);\n });\n }\n dig(entity.children);\n return dragChildrenKeys;\n}\nexport function isLastChild(treeNodeEntity) {\n if (treeNodeEntity.parent) {\n var posArr = posToArr(treeNodeEntity.pos);\n return Number(posArr[posArr.length - 1]) === treeNodeEntity.parent.children.length - 1;\n }\n return false;\n}\nexport function isFirstChild(treeNodeEntity) {\n var posArr = posToArr(treeNodeEntity.pos);\n return Number(posArr[posArr.length - 1]) === 0;\n}\n\n// Only used when drag, not affect SSR.\nexport function calcDropPosition(event, dragNode, targetNode, indent, startMousePosition, allowDrop, flattenedNodes, keyEntities, expandKeys, direction) {\n var _abstractDropNodeEnti;\n var clientX = event.clientX,\n clientY = event.clientY;\n var _getBoundingClientRec = event.target.getBoundingClientRect(),\n top = _getBoundingClientRec.top,\n height = _getBoundingClientRec.height;\n // optional chain for testing\n var horizontalMouseOffset = (direction === 'rtl' ? -1 : 1) * (((startMousePosition === null || startMousePosition === void 0 ? void 0 : startMousePosition.x) || 0) - clientX);\n var rawDropLevelOffset = (horizontalMouseOffset - 12) / indent;\n\n // Filter the expanded keys to exclude the node that not has children currently (like async nodes).\n var filteredExpandKeys = expandKeys.filter(function (key) {\n var _keyEntities$key;\n return (_keyEntities$key = keyEntities[key]) === null || _keyEntities$key === void 0 || (_keyEntities$key = _keyEntities$key.children) === null || _keyEntities$key === void 0 ? void 0 : _keyEntities$key.length;\n });\n\n // find abstract drop node by horizontal offset\n var abstractDropNodeEntity = getEntity(keyEntities, targetNode.props.eventKey);\n if (clientY < top + height / 2) {\n // first half, set abstract drop node to previous node\n var nodeIndex = flattenedNodes.findIndex(function (flattenedNode) {\n return flattenedNode.key === abstractDropNodeEntity.key;\n });\n var prevNodeIndex = nodeIndex <= 0 ? 0 : nodeIndex - 1;\n var prevNodeKey = flattenedNodes[prevNodeIndex].key;\n abstractDropNodeEntity = getEntity(keyEntities, prevNodeKey);\n }\n var initialAbstractDropNodeKey = abstractDropNodeEntity.key;\n var abstractDragOverEntity = abstractDropNodeEntity;\n var dragOverNodeKey = abstractDropNodeEntity.key;\n var dropPosition = 0;\n var dropLevelOffset = 0;\n\n // Only allow cross level drop when dragging on a non-expanded node\n if (!filteredExpandKeys.includes(initialAbstractDropNodeKey)) {\n for (var i = 0; i < rawDropLevelOffset; i += 1) {\n if (isLastChild(abstractDropNodeEntity)) {\n abstractDropNodeEntity = abstractDropNodeEntity.parent;\n dropLevelOffset += 1;\n } else {\n break;\n }\n }\n }\n var abstractDragDataNode = dragNode.props.data;\n var abstractDropDataNode = abstractDropNodeEntity.node;\n var dropAllowed = true;\n if (isFirstChild(abstractDropNodeEntity) && abstractDropNodeEntity.level === 0 && clientY < top + height / 2 && allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: -1\n }) && abstractDropNodeEntity.key === targetNode.props.eventKey) {\n // first half of first node in first level\n dropPosition = -1;\n } else if ((abstractDragOverEntity.children || []).length && filteredExpandKeys.includes(dragOverNodeKey)) {\n // drop on expanded node\n // only allow drop inside\n if (allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: 0\n })) {\n dropPosition = 0;\n } else {\n dropAllowed = false;\n }\n } else if (dropLevelOffset === 0) {\n if (rawDropLevelOffset > -1.5) {\n // | Node | <- abstractDropNode\n // | -^-===== | <- mousePosition\n // 1. try drop after\n // 2. do not allow drop\n if (allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: 1\n })) {\n dropPosition = 1;\n } else {\n dropAllowed = false;\n }\n } else {\n // | Node | <- abstractDropNode\n // | ---==^== | <- mousePosition\n // whether it has children or doesn't has children\n // always\n // 1. try drop inside\n // 2. try drop after\n // 3. do not allow drop\n if (allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: 0\n })) {\n dropPosition = 0;\n } else if (allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: 1\n })) {\n dropPosition = 1;\n } else {\n dropAllowed = false;\n }\n }\n } else {\n // | Node1 | <- abstractDropNode\n // | Node2 |\n // --^--|----=====| <- mousePosition\n // 1. try insert after Node1\n // 2. do not allow drop\n if (allowDrop({\n dragNode: abstractDragDataNode,\n dropNode: abstractDropDataNode,\n dropPosition: 1\n })) {\n dropPosition = 1;\n } else {\n dropAllowed = false;\n }\n }\n return {\n dropPosition: dropPosition,\n dropLevelOffset: dropLevelOffset,\n dropTargetKey: abstractDropNodeEntity.key,\n dropTargetPos: abstractDropNodeEntity.pos,\n dragOverNodeKey: dragOverNodeKey,\n dropContainerKey: dropPosition === 0 ? null : ((_abstractDropNodeEnti = abstractDropNodeEntity.parent) === null || _abstractDropNodeEnti === void 0 ? void 0 : _abstractDropNodeEnti.key) || null,\n dropAllowed: dropAllowed\n };\n}\n\n/**\n * Return selectedKeys according with multiple prop\n * @param selectedKeys\n * @param props\n * @returns [string]\n */\nexport function calcSelectedKeys(selectedKeys, props) {\n if (!selectedKeys) return undefined;\n var multiple = props.multiple;\n if (multiple) {\n return selectedKeys.slice();\n }\n if (selectedKeys.length) {\n return [selectedKeys[0]];\n }\n return selectedKeys;\n}\nvar internalProcessProps = function internalProcessProps(props) {\n return props;\n};\nexport function convertDataToTree(treeData, processor) {\n if (!treeData) return [];\n var _ref2 = processor || {},\n _ref2$processProps = _ref2.processProps,\n processProps = _ref2$processProps === void 0 ? internalProcessProps : _ref2$processProps;\n var list = Array.isArray(treeData) ? treeData : [treeData];\n return list.map(function (_ref3) {\n var children = _ref3.children,\n props = _objectWithoutProperties(_ref3, _excluded);\n var childrenNodes = convertDataToTree(children, processor);\n return /*#__PURE__*/React.createElement(TreeNode, _extends({\n key: props.key\n }, processProps(props)), childrenNodes);\n });\n}\n\n/**\n * Parse `checkedKeys` to { checkedKeys, halfCheckedKeys } style\n */\nexport function parseCheckedKeys(keys) {\n if (!keys) {\n return null;\n }\n\n // Convert keys to object format\n var keyProps;\n if (Array.isArray(keys)) {\n // [Legacy] Follow the api doc\n keyProps = {\n checkedKeys: keys,\n halfCheckedKeys: undefined\n };\n } else if (_typeof(keys) === 'object') {\n keyProps = {\n checkedKeys: keys.checked || undefined,\n halfCheckedKeys: keys.halfChecked || undefined\n };\n } else {\n warning(false, '`checkedKeys` is not an array or an object');\n return null;\n }\n return keyProps;\n}\n\n/**\n * If user use `autoExpandParent` we should get the list of parent node\n * @param keyList\n * @param keyEntities\n */\nexport function conductExpandParent(keyList, keyEntities) {\n var expandedKeys = new Set();\n function conductUp(key) {\n if (expandedKeys.has(key)) return;\n var entity = getEntity(keyEntities, key);\n if (!entity) return;\n expandedKeys.add(key);\n var parent = entity.parent,\n node = entity.node;\n if (node.disabled) return;\n if (parent) {\n conductUp(parent.key);\n }\n }\n (keyList || []).forEach(function (key) {\n conductUp(key);\n });\n return _toConsumableArray(expandedKeys);\n}"],"names":["isValidElement","isFragment","child","type","cloneElement","element","props","replacement","replaceElement","token","componentCls","antCls","overflow","transition","motionDurationMid","motionEaseInOut","_objectDestructuringEmpty","obj","TypeError","_excluded","MotionTreeNode","_ref","ref","className","style","motion","motionNodes","motionType","onOriginMotionStart","onMotionStart","onOriginMotionEnd","onMotionEnd","active","treeNodeRequiredProps","_React$useState","_React$useState2","visible","setVisible","prefixCls","targetVisible","useLayoutEffect","triggerMotionEndRef","triggerMotionEnd","current","triggerStart","triggerEnd","firstMount","setFirstMount","useUnmount","motionAppear","onVisibleChanged","nextVisible","_ref2","motionRef","motionClassName","motionStyle","concat","map","treeNode","restProps","Object","assign","data","title","key","isStart","isEnd","children","treeNodeProps","TreeNode","domRef","displayName","getExpandRange","shorter","longer","shorterStartIndex","findIndex","shorterEndNode","longerStartIndex","longerEndIndex","slice","HIDDEN_STYLE","width","height","display","opacity","border","padding","margin","noop","MOTION_KEY","Math","random","MotionNode","MotionEntity","level","index","pos","node","nodes","MotionFlattenData","parent","getMinimumRangeTransitionRange","list","virtual","itemHeight","ceil","itemKey","item","NodeList","expandedKeys","selectable","checkable","selectedKeys","checkedKeys","loadedKeys","loadingKeys","halfCheckedKeys","keyEntities","disabled","dragging","dragOverNodeKey","dropPosition","focusable","activeItem","focused","tabIndex","onKeyDown","onFocus","onBlur","onActiveChange","onListChangeStart","onListChangeEnd","domProps","listRef","indentMeasurerRef","scrollTo","scroll","getIndentWidth","offsetWidth","prevExpandedKeys","setPrevExpandedKeys","_React$useState3","_React$useState4","prevData","setPrevData","_React$useState5","_React$useState6","transitionData","setTransitionData","_React$useState7","_React$useState8","transitionRange","setTransitionRange","_React$useState9","_React$useState10","setMotionType","dataRef","latestData","diffExpanded","prev","arguments","length","undefined","next","prevLen","nextLen","abs","add","find","cache","Map","forEach","set","keys","filter","has","findExpandedKeys","keyIndex","rangeNodes","newTransitionData","splice","_keyIndex","_rangeNodes","_newTransitionData","mergedData","path","String","getAccessibilityPath","value","onChange","position","pointerEvents","visibility","fullHeight","onVisibleChange","originList","fullList","originSet","Set","some","mergedKey","onMouseMove","Tree","_React$Component","_super","_this","this","_len","_args","Array","_key","call","apply","indent","draggingNodeKey","dragChildrenKeys","dropTargetKey","dropContainerKey","dropLevelOffset","dropTargetPos","dropAllowed","treeData","flattenNodes","activeKey","listChanging","prevProps","fieldNames","event","_this$state","state","onDragStart","eventKey","dragNode","dragStartMousePosition","x","clientX","y","clientY","newExpandedKeys","setState","setExpandedKeys","window","addEventListener","onWindowDragEnd","_this$state2","_this$props","onDragEnter","onExpand","allowDrop","direction","_node$props","currentMouseOverDroppableNodeKey","_calcDropPosition","indexOf","delayedDragEnterLogic","clearTimeout","persist","setTimeout","entity","expanded","nativeEvent","resetDragState","_this$state3","_this$props2","onDragOver","_calcDropPosition2","currentTarget","contains","relatedTarget","onDragLeave","onNodeDragEnd","removeEventListener","onDragEnd","cleanDragState","_this$getActiveItem","outsideTree","_this$state4","onDrop","abstractDropNodeProps","getTreeNodeRequiredProps","getActiveItem","dropToChild","warning","posArr","dropResult","dragNodesKeys","dropToGap","Number","e","_this$state5","isLeaf","shiftKey","metaKey","ctrlKey","nodeItem","eventNode","onNodeExpand","_this$props3","onClick","expandAction","triggerExpandActionExpand","_this$props4","onDoubleClick","_this$state6","_this$props5","onSelect","multiple","selected","targetSelected","selectedNodes","selectedKey","setUncontrolledState","checked","checkedObj","_this$state7","oriCheckedKeys","oriHalfCheckedKeys","_this$props6","checkStrictly","onCheck","eventObj","halfChecked","checkedNodes","checkedKey","_conductCheck","_checkedKeys","_halfCheckedKeys","keySet","delete","_conductCheck2","from","checkedNodesPositions","push","loadPromise","Promise","resolve","reject","_ref$loadedKeys","_ref$loadingKeys","_this$props7","loadData","onLoad","then","currentLoadedKeys","newLoadedKeys","prevState","catch","loadingRetryTimes","onMouseEnter","onMouseLeave","onRightClick","preventDefault","_len2","args","_key2","_len3","_key3","_this$state8","_this$state9","_this$state10","_this$props8","targetExpanded","onNodeLoad","newFlattenTreeData","currentExpandedKeys","expandedKeysToRestore","newActiveKey","_this$props9","_this$props9$itemScro","itemScrollOffset","offset","_this$state11","_this$state12","_ref3","_key4","_this$state13","_this$props10","which","KeyCode","UP","offsetActiveKey","DOWN","expandable","LEFT","includes","RIGHT","ENTER","SPACE","disableCheckbox","onNodeSelect","onNodeCheck","atomic","forceState","destroyed","needSync","allPassed","newState","name","onUpdated","_this$props11","_this$props11$itemScr","draggableConfig","_this$state14","_this$props12","showLine","_this$props12$tabInde","showIcon","icon","switcherIcon","draggable","filterTreeNode","titleRender","dropIndicatorRender","onContextMenu","onScroll","rootClassName","rootStyle","pickAttrs","aria","nodeDraggable","Provider","onNodeClick","onNodeDoubleClick","onNodeMouseEnter","onNodeMouseLeave","onNodeContextMenu","onNodeDragStart","onNodeDragEnter","onNodeDragOver","onNodeDragLeave","onNodeDrop","role","entitiesMap","checkedKeyEntity","autoExpandParent","defaultExpandParent","defaultExpandAll","cloneKeyEntities","defaultExpandedKeys","defaultSelectedKeys","defaultCheckedKeys","_checkedKeyEntity","_checkedKeyEntity$che","_checkedKeyEntity$hal","conductKeys","right","backgroundColor","top","left","bottom","AntdIcon","treeNodeFX","getSwitchStyle","fontSize","verticalAlign","svg","motionDurationSlow","getDropIndicatorStyle","zIndex","colorPrimary","borderRadius","insetInlineStart","lineWidthBold","content","genBaseStyle","treeCls","treeNodeCls","treeNodePadding","titleHeight","nodeSelectedBg","nodeHoverBg","treeCheckBoxMarginHorizontal","paddingXS","background","colorBgContainer","transform","alignItems","flex","insetInlineEnd","animationName","animationDuration","animationPlayState","animationFillMode","outline","color","colorTextDisabled","cursor","controlItemBgHover","fontWeight","flexShrink","lineHeight","textAlign","alignSelf","whiteSpace","userSelect","colorBgTextHover","calc","div","equal","mul","marginInlineStart","borderInlineEnd","colorBorder","borderBottom","marginInlineEnd","marginTop","marginXXS","minHeight","boxShadow","genDirectoryStyle","directoryNodeSelectedBg","directoryNodeSelectedColor","genTreeStyle","treeToken","colorTextLightSolid","controlHeightSM","controlItemBgActive","initComponentToken","startPosition","loading","LoadingOutlined","showLeafIcon","leafIcon","leafCls","switcherCls","switcher","_a","getPrefixCls","tree","customizePrefixCls","blockNode","customMotion","rootPrefixCls","newProps","Boolean","wrapCSSVar","hashId","cssVarCls","useToken","mergedDraggable","nodeProps","Record","traverseNodesKey","callback","fieldKey","fieldChildren","dataNode","convertDirectoryKeysToNodes","restKeys","__rest","s","t","p","prototype","hasOwnProperty","getOwnPropertySymbols","i","propertyIsEnumerable","getIcon","getTreeData","DirectoryTree","lastSelectedKey","cachedSelectedKeys","setSelectedKeys","initExpandedKeys","getInitExpandedKeys","otherProps","connectClassName","newEvent","ctrlPick","shiftPick","newSelectedKeys","startKey","endKey","record","None","End","matchKey","Start","calcRangeKeys","info","Indent","baseClassName","ICON_OPEN","ICON_CLOSE","InternalTreeNode","dragNodeHighlight","context","isSelectable","isDisabled","isCheckable","targetChecked","stopPropagation","dataTransfer","setData","error","selectHandle","loaded","hasChildren","treeCheckable","_this$props$context","_this$props$context2","switcherIconFromProps","switcherIconFromCtx","_switcherIconDom","renderSwitcherIconDom","switcherIconDom","$custom","getNodeState","$icon","titleNode","_this$props6$title","_this$props$context3","treeIcon","wrapClass","currentIcon","renderIcon","$title","setSelectHandle","onSelectorClick","onSelectorDoubleClick","renderDropIndicator","_this$props$context4","showIndicator","mergedIndent","cacheIndent","syncLoadData","treeSelectable","_classNames","dragOver","dragOverGapTop","dragOverGapBottom","_this$props$context5","dataOrAriaAttributeProps","isEndNode","isDraggable","draggableWithoutDisabled","ariaSelected","renderDragHandler","renderSwitcher","renderCheckbox","renderSelector","ContextTreeNode","Consumer","isTreeNode","TreeContext","arrDel","clone","arrAdd","posToArr","split","getDragChildrenKeys","dragNodeKey","dig","isLastChild","treeNodeEntity","calcDropPosition","targetNode","startMousePosition","flattenedNodes","expandKeys","_abstractDropNodeEnti","_getBoundingClientRec","target","getBoundingClientRect","rawDropLevelOffset","filteredExpandKeys","_keyEntities$key","abstractDropNodeEntity","nodeIndex","flattenedNode","prevNodeKey","initialAbstractDropNodeKey","abstractDragOverEntity","abstractDragDataNode","abstractDropDataNode","dropNode","calcSelectedKeys","parseCheckedKeys","keyProps","isArray","conductExpandParent","keyList","conductUp"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_next_bricks_advanced=self.webpackChunk_next_bricks_advanced||[]).push([[7228,4847],{31032:(e,t,n)=>{var r=n(8924);t.C=r.createRoot,r.hydrateRoot},49056:(e,t,n)=>{function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{c:()=>r})},96672:(e,t,n)=>{function r(e,t,n){if(!t.has(e))throw new TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}n.d(t,{c:()=>r})},11412:(e,t,n)=>{n.d(t,{c:()=>c});var r=n(96672);function c(e,t){return function(e,t){return t.get?t.get.call(e):t.value}(e,(0,r.c)(e,t,"get"))}},2504:(e,t,n)=>{n.d(t,{c:()=>c});var r=n(49056);function c(e,t,n){(0,r.c)(e,t),t.set(e,n)}},5866:(e,t,n)=>{n.d(t,{c:()=>c});var r=n(96672);function c(e,t,n){return function(e,t,n){if(t.set)t.set.call(e,n);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=n}}(e,(0,r.c)(e,t,"set"),n),n}},27940:(e,t,n)=>{function r(e,t,n){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return n}n.d(t,{c:()=>r})},27204:(e,t,n)=>{n.d(t,{c:()=>c});var r=n(49056);function c(e,t){(0,r.c)(e,t),t.add(e)}},15307:(e,t,n)=>{function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{c:()=>r})},30640:(e,t,n)=>{function r(e,t){if(null==e)return{};var n,r,c=function(e,t){if(null==e)return{};var n,r,c={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(c[n]=e[n]);return c}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n])}return c}n.d(t,{c:()=>r})},47228:(e,t,n)=>{n.r(t),n.d(t,{ReactNextElement:()=>p,wrapBrick:()=>O,wrapLocalBrick:()=>g});var r=n(27204),c=n(2504),i=n(27940),a=n(5866),o=n(11412),s=n(35600),l=n(31032),d=n(8924),u=n(37672),h=new WeakMap,f=new WeakSet;class p extends u.NextElement{constructor(){super(...arguments),(0,r.c)(this,f),(0,c.c)(this,h,{writable:!0,value:void 0})}connectedCallback(){super._markConnectedCallbackCalled(),(0,i.c)(this,f,v).call(this),this._render()}disconnectedCallback(){var e;null===(e=(0,o.c)(this,h))||void 0===e||e.render(null)}_render(){var e=()=>{if(this.isConnected&&(0,o.c)(this,h)){var e,t=this.constructor;t.shadowOptions?(0,o.c)(this,h).render((0,u.supportsAdoptingStyleSheets)()||null===(e=t.styleTexts)||void 0===e||!e.length?this.render():s.createElement(s.Fragment,null,s.createElement("style",null,t.styleTexts.join("\n")),this.render())):(0,o.c)(this,h).render(this.render())}};window.BRICK_NEXT_VERSIONS&&!window.DISABLE_REACT_FLUSH_SYNC?(0,d.flushSync)(e):e()}}function v(){if(!(0,o.c)(this,h)){var e=this.constructor;if(e.shadowOptions){var t,n=this.attachShadow(e.shadowOptions);if((0,u.supportsAdoptingStyleSheets)()&&null!==(t=e.styleTexts)&&void 0!==t&&t.length){var r=new CSSStyleSheet;r.replaceSync(e.styleTexts.join("")),n.adoptedStyleSheets=[r]}(0,a.c)(this,h,(0,l.C)(n))}else(0,a.c)(this,h,(0,l.C)(this))}}var w=n(15307),y=n(30640),b=["children"],S=["children"];function g(e,t){return(0,s.forwardRef)((function(n,r){var{children:c}=n,i=(0,y.c)(n,b),a="string"==typeof e?e:e.__tagName,o=m(i,t);return s.createElement(a,(0,w.c)({},o,{ref:r}),c)}))}function O(e,t){return(0,s.forwardRef)((function(n,r){var{children:c}=n,i=m((0,y.c)(n,S),t);return s.createElement(e,(0,w.c)({},i,{ref:r}),c)}))}function m(e,t){var n;if(t)for(var[r,c]of(n={},Object.entries(e)))Object.prototype.hasOwnProperty.call(t,r)?n["on".concat(t[r])]=c:n[r]=c;else n=e;return n}}}]);
2
- //# sourceMappingURL=7228.522cadac.js.map