@next-bricks/form 1.15.12 → 1.15.14

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 (201) hide show
  1. package/dist/bricks.json +22 -22
  2. package/dist/chunks/1045.7ad43dc1.js +2 -0
  3. package/dist/chunks/1045.7ad43dc1.js.map +1 -0
  4. package/dist/chunks/1122.01bc0d6d.js +2 -0
  5. package/dist/chunks/1122.01bc0d6d.js.map +1 -0
  6. package/dist/chunks/1370.a56b4fa3.js.map +1 -1
  7. package/dist/chunks/149.3c454551.js +2 -0
  8. package/dist/chunks/149.3c454551.js.map +1 -0
  9. package/dist/chunks/1889.efd28cdd.js +2 -0
  10. package/dist/chunks/1889.efd28cdd.js.map +1 -0
  11. package/dist/chunks/3426.01e02597.js +2 -0
  12. package/dist/chunks/3426.01e02597.js.map +1 -0
  13. package/dist/chunks/4056.aac4a786.js +3 -0
  14. package/dist/chunks/4056.aac4a786.js.map +1 -0
  15. package/dist/chunks/4185.c4525861.js +3 -0
  16. package/dist/chunks/4185.c4525861.js.map +1 -0
  17. package/dist/chunks/5025.53c94173.js +3 -0
  18. package/dist/chunks/5025.53c94173.js.map +1 -0
  19. package/dist/chunks/5026.cbd59622.js +3 -0
  20. package/dist/chunks/5026.cbd59622.js.map +1 -0
  21. package/dist/chunks/5250.a8e6fa5e.js +3 -0
  22. package/dist/chunks/5250.a8e6fa5e.js.map +1 -0
  23. package/dist/chunks/5347.eef1273e.js +3 -0
  24. package/dist/chunks/5347.eef1273e.js.map +1 -0
  25. package/dist/chunks/6167.3c7a7196.js +2 -0
  26. package/dist/chunks/6167.3c7a7196.js.map +1 -0
  27. package/dist/chunks/6773.ab912e2d.js +2 -0
  28. package/dist/chunks/6773.ab912e2d.js.map +1 -0
  29. package/dist/chunks/726.83839f5d.js +2 -0
  30. package/dist/chunks/726.83839f5d.js.map +1 -0
  31. package/dist/chunks/7304.39f60560.js +2 -0
  32. package/dist/chunks/7304.39f60560.js.map +1 -0
  33. package/dist/chunks/7434.9dfca74d.js +2 -0
  34. package/dist/chunks/7434.9dfca74d.js.map +1 -0
  35. package/dist/chunks/{7721.c376ed54.js → 7721.d5cfcbb7.js} +3 -3
  36. package/dist/chunks/7721.d5cfcbb7.js.map +1 -0
  37. package/dist/chunks/845.f6378665.js +3 -0
  38. package/dist/chunks/845.f6378665.js.map +1 -0
  39. package/dist/chunks/8548.3d64fb28.js +2 -0
  40. package/dist/chunks/8548.3d64fb28.js.map +1 -0
  41. package/dist/chunks/871.f28f105b.js +2 -0
  42. package/dist/chunks/871.f28f105b.js.map +1 -0
  43. package/dist/chunks/8989.d6efe180.js +2 -0
  44. package/dist/chunks/8989.d6efe180.js.map +1 -0
  45. package/dist/chunks/9126.52ec02c1.js +2 -0
  46. package/dist/chunks/9126.52ec02c1.js.map +1 -0
  47. package/dist/chunks/9515.ffbcdd4f.js +2 -0
  48. package/dist/chunks/9515.ffbcdd4f.js.map +1 -0
  49. package/dist/chunks/{9844.0e7eb437.js → 9844.c7921922.js} +2 -2
  50. package/dist/chunks/{9844.0e7eb437.js.map → 9844.c7921922.js.map} +1 -1
  51. package/dist/chunks/eo-auto-complete.15a63660.js +3 -0
  52. package/dist/chunks/eo-auto-complete.15a63660.js.map +1 -0
  53. package/dist/chunks/eo-checkbox.2a41fe6a.js +2 -0
  54. package/dist/chunks/eo-checkbox.2a41fe6a.js.map +1 -0
  55. package/dist/chunks/eo-color-picker.26cc5ea4.js +2 -0
  56. package/dist/chunks/eo-color-picker.26cc5ea4.js.map +1 -0
  57. package/dist/chunks/eo-date-picker.9349f52d.js +2 -0
  58. package/dist/chunks/eo-date-picker.9349f52d.js.map +1 -0
  59. package/dist/chunks/eo-dynamic-form-item.2fc6c469.js +3 -0
  60. package/dist/chunks/eo-dynamic-form-item.2fc6c469.js.map +1 -0
  61. package/dist/chunks/eo-form.7871c99c.js +2 -0
  62. package/dist/chunks/eo-form.7871c99c.js.map +1 -0
  63. package/dist/chunks/eo-icon-select.be749f9e.js +3 -0
  64. package/dist/chunks/eo-icon-select.be749f9e.js.map +1 -0
  65. package/dist/chunks/eo-radio.7733eba5.js +3 -0
  66. package/dist/chunks/eo-radio.7733eba5.js.map +1 -0
  67. package/dist/chunks/eo-search.66eed07c.js +2 -0
  68. package/dist/chunks/eo-search.66eed07c.js.map +1 -0
  69. package/dist/chunks/eo-select.007e32cf.js +3 -0
  70. package/dist/chunks/eo-select.007e32cf.js.map +1 -0
  71. package/dist/chunks/eo-submit-buttons.c6177598.js +2 -0
  72. package/dist/chunks/eo-submit-buttons.c6177598.js.map +1 -0
  73. package/dist/chunks/eo-switch.585881ce.js +3 -0
  74. package/dist/chunks/eo-switch.585881ce.js.map +1 -0
  75. package/dist/chunks/eo-textarea.a0fa1c87.js +3 -0
  76. package/dist/chunks/eo-textarea.a0fa1c87.js.map +1 -0
  77. package/dist/chunks/eo-time-picker.a1616caa.js +2 -0
  78. package/dist/chunks/eo-time-picker.a1616caa.js.map +1 -0
  79. package/dist/chunks/eo-time-range-picker.7f0e155a.js +2 -0
  80. package/dist/chunks/eo-time-range-picker.7f0e155a.js.map +1 -0
  81. package/dist/chunks/eo-upload-file.4f90038d.js +3 -0
  82. package/dist/chunks/eo-upload-file.4f90038d.js.map +1 -0
  83. package/dist/chunks/eo-upload-image.528e6cba.js +3 -0
  84. package/dist/chunks/eo-upload-image.528e6cba.js.map +1 -0
  85. package/dist/chunks/input.f9fa4d49.js +3 -0
  86. package/dist/chunks/input.f9fa4d49.js.map +1 -0
  87. package/dist/chunks/main.4e1429cd.js +2 -0
  88. package/dist/chunks/main.4e1429cd.js.map +1 -0
  89. package/dist/chunks/react.711f0c64.js +2 -0
  90. package/dist/examples.json +8 -8
  91. package/dist/index.c9a40671.js +2 -0
  92. package/dist/index.c9a40671.js.map +1 -0
  93. package/dist/manifest.json +209 -209
  94. package/dist/types.json +323 -323
  95. package/dist-types/form-item/index.d.ts +4 -38
  96. package/package.json +4 -4
  97. package/dist/chunks/1045.a9ea1f1b.js +0 -2
  98. package/dist/chunks/1045.a9ea1f1b.js.map +0 -1
  99. package/dist/chunks/1122.2b3c3cb9.js +0 -2
  100. package/dist/chunks/1122.2b3c3cb9.js.map +0 -1
  101. package/dist/chunks/149.f1ac0885.js +0 -2
  102. package/dist/chunks/149.f1ac0885.js.map +0 -1
  103. package/dist/chunks/1889.f42272e2.js +0 -2
  104. package/dist/chunks/1889.f42272e2.js.map +0 -1
  105. package/dist/chunks/3426.c132aaf4.js +0 -2
  106. package/dist/chunks/3426.c132aaf4.js.map +0 -1
  107. package/dist/chunks/4056.48d6bc7f.js +0 -3
  108. package/dist/chunks/4056.48d6bc7f.js.map +0 -1
  109. package/dist/chunks/4185.d0b2dca6.js +0 -3
  110. package/dist/chunks/4185.d0b2dca6.js.map +0 -1
  111. package/dist/chunks/5025.bd76306e.js +0 -3
  112. package/dist/chunks/5025.bd76306e.js.map +0 -1
  113. package/dist/chunks/5026.f93ca6ff.js +0 -3
  114. package/dist/chunks/5026.f93ca6ff.js.map +0 -1
  115. package/dist/chunks/5250.e92d10c7.js +0 -3
  116. package/dist/chunks/5250.e92d10c7.js.map +0 -1
  117. package/dist/chunks/5347.76715392.js +0 -3
  118. package/dist/chunks/5347.76715392.js.map +0 -1
  119. package/dist/chunks/6167.776acd02.js +0 -2
  120. package/dist/chunks/6167.776acd02.js.map +0 -1
  121. package/dist/chunks/6773.40e07062.js +0 -2
  122. package/dist/chunks/6773.40e07062.js.map +0 -1
  123. package/dist/chunks/726.c71a507f.js +0 -2
  124. package/dist/chunks/726.c71a507f.js.map +0 -1
  125. package/dist/chunks/7304.faf14330.js +0 -2
  126. package/dist/chunks/7304.faf14330.js.map +0 -1
  127. package/dist/chunks/7434.47585ccd.js +0 -2
  128. package/dist/chunks/7434.47585ccd.js.map +0 -1
  129. package/dist/chunks/7721.c376ed54.js.map +0 -1
  130. package/dist/chunks/845.2cc8bd81.js +0 -3
  131. package/dist/chunks/845.2cc8bd81.js.map +0 -1
  132. package/dist/chunks/8548.66dd7965.js +0 -2
  133. package/dist/chunks/8548.66dd7965.js.map +0 -1
  134. package/dist/chunks/871.2f0b8784.js +0 -2
  135. package/dist/chunks/871.2f0b8784.js.map +0 -1
  136. package/dist/chunks/8989.e9a501bd.js +0 -2
  137. package/dist/chunks/8989.e9a501bd.js.map +0 -1
  138. package/dist/chunks/9126.67a533fb.js +0 -2
  139. package/dist/chunks/9126.67a533fb.js.map +0 -1
  140. package/dist/chunks/9515.bfd568c5.js +0 -2
  141. package/dist/chunks/9515.bfd568c5.js.map +0 -1
  142. package/dist/chunks/eo-auto-complete.3c25ef04.js +0 -3
  143. package/dist/chunks/eo-auto-complete.3c25ef04.js.map +0 -1
  144. package/dist/chunks/eo-checkbox.6fb2afb3.js +0 -2
  145. package/dist/chunks/eo-checkbox.6fb2afb3.js.map +0 -1
  146. package/dist/chunks/eo-color-picker.8711d25d.js +0 -2
  147. package/dist/chunks/eo-color-picker.8711d25d.js.map +0 -1
  148. package/dist/chunks/eo-date-picker.38a71de5.js +0 -2
  149. package/dist/chunks/eo-date-picker.38a71de5.js.map +0 -1
  150. package/dist/chunks/eo-dynamic-form-item.96fdc2f1.js +0 -3
  151. package/dist/chunks/eo-dynamic-form-item.96fdc2f1.js.map +0 -1
  152. package/dist/chunks/eo-form.d1b698bb.js +0 -2
  153. package/dist/chunks/eo-form.d1b698bb.js.map +0 -1
  154. package/dist/chunks/eo-icon-select.b7ec93c9.js +0 -3
  155. package/dist/chunks/eo-icon-select.b7ec93c9.js.map +0 -1
  156. package/dist/chunks/eo-radio.3b5b1a87.js +0 -3
  157. package/dist/chunks/eo-radio.3b5b1a87.js.map +0 -1
  158. package/dist/chunks/eo-search.11fc357f.js +0 -2
  159. package/dist/chunks/eo-search.11fc357f.js.map +0 -1
  160. package/dist/chunks/eo-select.0c8b186c.js +0 -3
  161. package/dist/chunks/eo-select.0c8b186c.js.map +0 -1
  162. package/dist/chunks/eo-submit-buttons.7986fcd3.js +0 -2
  163. package/dist/chunks/eo-submit-buttons.7986fcd3.js.map +0 -1
  164. package/dist/chunks/eo-switch.445a7cab.js +0 -3
  165. package/dist/chunks/eo-switch.445a7cab.js.map +0 -1
  166. package/dist/chunks/eo-textarea.7fdd5ac5.js +0 -3
  167. package/dist/chunks/eo-textarea.7fdd5ac5.js.map +0 -1
  168. package/dist/chunks/eo-time-picker.d5e22a7b.js +0 -2
  169. package/dist/chunks/eo-time-picker.d5e22a7b.js.map +0 -1
  170. package/dist/chunks/eo-time-range-picker.bf0932ac.js +0 -2
  171. package/dist/chunks/eo-time-range-picker.bf0932ac.js.map +0 -1
  172. package/dist/chunks/eo-upload-file.794353ba.js +0 -3
  173. package/dist/chunks/eo-upload-file.794353ba.js.map +0 -1
  174. package/dist/chunks/eo-upload-image.50adcd53.js +0 -3
  175. package/dist/chunks/eo-upload-image.50adcd53.js.map +0 -1
  176. package/dist/chunks/input.4e2e5b20.js +0 -3
  177. package/dist/chunks/input.4e2e5b20.js.map +0 -1
  178. package/dist/chunks/main.6cfe39b3.js +0 -2
  179. package/dist/chunks/main.6cfe39b3.js.map +0 -1
  180. package/dist/chunks/react.aa821fb3.js +0 -2
  181. package/dist/index.4ac47ef2.js +0 -2
  182. package/dist/index.4ac47ef2.js.map +0 -1
  183. /package/dist/chunks/{4056.48d6bc7f.js.LICENSE.txt → 4056.aac4a786.js.LICENSE.txt} +0 -0
  184. /package/dist/chunks/{4185.d0b2dca6.js.LICENSE.txt → 4185.c4525861.js.LICENSE.txt} +0 -0
  185. /package/dist/chunks/{5025.bd76306e.js.LICENSE.txt → 5025.53c94173.js.LICENSE.txt} +0 -0
  186. /package/dist/chunks/{5026.f93ca6ff.js.LICENSE.txt → 5026.cbd59622.js.LICENSE.txt} +0 -0
  187. /package/dist/chunks/{5250.e92d10c7.js.LICENSE.txt → 5250.a8e6fa5e.js.LICENSE.txt} +0 -0
  188. /package/dist/chunks/{5347.76715392.js.LICENSE.txt → 5347.eef1273e.js.LICENSE.txt} +0 -0
  189. /package/dist/chunks/{7721.c376ed54.js.LICENSE.txt → 7721.d5cfcbb7.js.LICENSE.txt} +0 -0
  190. /package/dist/chunks/{845.2cc8bd81.js.LICENSE.txt → 845.f6378665.js.LICENSE.txt} +0 -0
  191. /package/dist/chunks/{eo-auto-complete.3c25ef04.js.LICENSE.txt → eo-auto-complete.15a63660.js.LICENSE.txt} +0 -0
  192. /package/dist/chunks/{eo-dynamic-form-item.96fdc2f1.js.LICENSE.txt → eo-dynamic-form-item.2fc6c469.js.LICENSE.txt} +0 -0
  193. /package/dist/chunks/{eo-icon-select.b7ec93c9.js.LICENSE.txt → eo-icon-select.be749f9e.js.LICENSE.txt} +0 -0
  194. /package/dist/chunks/{eo-radio.3b5b1a87.js.LICENSE.txt → eo-radio.7733eba5.js.LICENSE.txt} +0 -0
  195. /package/dist/chunks/{eo-select.0c8b186c.js.LICENSE.txt → eo-select.007e32cf.js.LICENSE.txt} +0 -0
  196. /package/dist/chunks/{eo-switch.445a7cab.js.LICENSE.txt → eo-switch.585881ce.js.LICENSE.txt} +0 -0
  197. /package/dist/chunks/{eo-textarea.7fdd5ac5.js.LICENSE.txt → eo-textarea.a0fa1c87.js.LICENSE.txt} +0 -0
  198. /package/dist/chunks/{eo-upload-file.794353ba.js.LICENSE.txt → eo-upload-file.4f90038d.js.LICENSE.txt} +0 -0
  199. /package/dist/chunks/{eo-upload-image.50adcd53.js.LICENSE.txt → eo-upload-image.528e6cba.js.LICENSE.txt} +0 -0
  200. /package/dist/chunks/{input.4e2e5b20.js.LICENSE.txt → input.f9fa4d49.js.LICENSE.txt} +0 -0
  201. /package/dist/chunks/{react.aa821fb3.js.LICENSE.txt → react.711f0c64.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"chunks/5025.bd76306e.js","mappings":"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","sources":["webpack:///../../node_modules/antd/es/_util/getRenderPropValue.js","webpack:///../../node_modules/rc-tooltip/es/Popup.js","webpack:///../../node_modules/rc-tooltip/es/placements.js","webpack:///../../node_modules/rc-tooltip/es/Tooltip.js","webpack:///../../node_modules/rc-tooltip/es/index.js","webpack:///../../node_modules/antd/es/style/placementArrow.js","webpack:///../../node_modules/antd/es/_util/placements.js","webpack:///../../node_modules/antd/es/style/motion/zoom.js","webpack:///../../node_modules/antd/es/theme/util/genPresetColor.js","webpack:///../../node_modules/antd/es/tooltip/style/index.js","webpack:///../../node_modules/antd/es/_util/colors.js","webpack:///../../node_modules/antd/es/tooltip/util.js","webpack:///../../node_modules/antd/es/tooltip/index.js","webpack:///../../node_modules/antd/es/tooltip/PurePanel.js","webpack:///../../node_modules/antd/es/popover/style/index.js","webpack:///../../node_modules/antd/es/popover/PurePanel.js","webpack:///../../node_modules/antd/es/popover/index.js","webpack:///../../node_modules/antd/es/divider/style/index.js","webpack:///../../node_modules/antd/es/divider/index.js","webpack:///../../node_modules/rc-segmented/es/MotionThumb.js","webpack:///../../node_modules/rc-segmented/es/index.js","webpack:///../../node_modules/antd/es/segmented/style/index.js","webpack:///../../node_modules/antd/es/segmented/index.js","webpack:///../../node_modules/antd/es/color-picker/context.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorClear.js","webpack:///../../node_modules/rc-select/es/TransBtn.js","webpack:///../../node_modules/rc-select/es/hooks/useAllowClear.js","webpack:///../../node_modules/rc-select/es/hooks/useBaseProps.js","webpack:///../../node_modules/rc-select/es/hooks/useLock.js","webpack:///../../node_modules/rc-select/es/Selector/Input.js","webpack:///../../node_modules/rc-select/es/utils/commonUtil.js","webpack:///../../node_modules/rc-select/es/Selector/MultipleSelector.js","webpack:///../../node_modules/rc-select/es/hooks/useLayoutEffect.js","webpack:///../../node_modules/rc-select/es/Selector/SingleSelector.js","webpack:///../../node_modules/rc-select/es/Selector/index.js","webpack:///../../node_modules/rc-select/es/utils/keyUtil.js","webpack:///../../node_modules/rc-select/es/SelectTrigger.js","webpack:///../../node_modules/rc-select/es/utils/valueUtil.js","webpack:///../../node_modules/rc-select/es/SelectContext.js","webpack:///../../node_modules/rc-select/es/BaseSelect/Polite.js","webpack:///../../node_modules/rc-select/es/BaseSelect/index.js","webpack:///../../node_modules/rc-select/es/hooks/useDelayReset.js","webpack:///../../node_modules/rc-select/es/hooks/useSelectTriggerControl.js","webpack:///../../node_modules/rc-select/es/OptGroup.js","webpack:///../../node_modules/rc-select/es/Option.js","webpack:///../../node_modules/rc-virtual-list/es/Filler.js","webpack:///../../node_modules/rc-virtual-list/es/Item.js","webpack:///../../node_modules/rc-virtual-list/es/utils/isFirefox.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useOriginScroll.js","webpack:///../../node_modules/rc-virtual-list/es/utils/CacheMap.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js","webpack:///../../node_modules/rc-virtual-list/es/ScrollBar.js","webpack:///../../node_modules/rc-virtual-list/es/utils/scrollbarUtil.js","webpack:///../../node_modules/rc-virtual-list/es/List.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useHeights.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useDiffItem.js","webpack:///../../node_modules/rc-virtual-list/es/utils/algorithmUtil.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useFrameWheel.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useScrollTo.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useGetSize.js","webpack:///../../node_modules/rc-virtual-list/es/hooks/useChildren.js","webpack:///../../node_modules/rc-virtual-list/es/index.js","webpack:///../../node_modules/rc-select/es/OptionList.js","webpack:///../../node_modules/rc-select/es/utils/platformUtil.js","webpack:///../../node_modules/rc-select/es/hooks/useFilterOptions.js","webpack:///../../node_modules/rc-select/es/hooks/useId.js","webpack:///../../node_modules/rc-select/es/utils/legacyUtil.js","webpack:///../../node_modules/rc-select/es/hooks/useOptions.js","webpack:///../../node_modules/rc-select/es/hooks/useRefFunc.js","webpack:///../../node_modules/rc-select/es/Select.js","webpack:///../../node_modules/rc-select/es/hooks/useCache.js","webpack:///../../node_modules/rc-select/es/index.js","webpack:///../../node_modules/antd/es/empty/empty.js","webpack:///../../node_modules/antd/es/empty/simple.js","webpack:///../../node_modules/antd/es/empty/style/index.js","webpack:///../../node_modules/antd/es/empty/index.js","webpack:///../../node_modules/antd/es/config-provider/defaultRenderEmpty.js","webpack:///../../node_modules/antd/es/select/mergedBuiltinPlacements.js","webpack:///../../node_modules/antd/es/select/style/dropdown.js","webpack:///../../node_modules/antd/es/select/style/single.js","webpack:///../../node_modules/antd/es/select/style/token.js","webpack:///../../node_modules/antd/es/select/style/variants.js","webpack:///../../node_modules/antd/es/select/style/index.js","webpack:///../../node_modules/antd/es/select/index.js","webpack:///../../node_modules/antd/es/select/useShowArrow.js","webpack:///../../node_modules/antd/es/color-picker/interface.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/UpOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/UpOutlined.js","webpack:///../../node_modules/@rc-component/mini-decimal/es/supportUtil.js","webpack:///../../node_modules/@rc-component/mini-decimal/es/numberUtil.js","webpack:///../../node_modules/@rc-component/mini-decimal/es/MiniDecimal.js","webpack:///../../node_modules/@rc-component/mini-decimal/es/index.js","webpack:///../../node_modules/rc-input/es/utils/commonUtils.js","webpack:///../../node_modules/rc-input/es/BaseInput.js","webpack:///../../node_modules/rc-input/es/hooks/useCount.js","webpack:///../../node_modules/rc-input/es/Input.js","webpack:///../../node_modules/rc-input/es/index.js","webpack:///../../node_modules/rc-input-number/es/StepHandler.js","webpack:///../../node_modules/rc-util/es/hooks/useMobile.js","webpack:///../../node_modules/rc-input-number/es/utils/numberUtil.js","webpack:///../../node_modules/rc-input-number/es/InputNumber.js","webpack:///../../node_modules/rc-input-number/es/hooks/useFrame.js","webpack:///../../node_modules/rc-input-number/es/hooks/useCursor.js","webpack:///../../node_modules/rc-util/es/proxyObject.js","webpack:///../../node_modules/rc-input-number/es/index.js","webpack:///../../node_modules/antd/es/input-number/style/token.js","webpack:///../../node_modules/antd/es/input-number/style/index.js","webpack:///../../node_modules/antd/es/input-number/index.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorSteppers.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorAlphaInput.js","webpack:///../../node_modules/antd/es/_util/getAllowClear.js","webpack:///../../node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js","webpack:///../../node_modules/antd/es/input/Input.js","webpack:///../../node_modules/antd/es/input/utils.js","webpack:///../../node_modules/antd/es/input/style/otp.js","webpack:///../../node_modules/antd/es/input/OTP/OTPInput.js","webpack:///../../node_modules/antd/es/input/OTP/index.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js","webpack:///../../node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js","webpack:///../../node_modules/@ant-design/icons/es/icons/EyeOutlined.js","webpack:///../../node_modules/antd/es/input/Password.js","webpack:///../../node_modules/antd/es/input/Search.js","webpack:///../../node_modules/rc-textarea/es/calculateNodeHeight.js","webpack:///../../node_modules/rc-textarea/es/ResizableTextArea.js","webpack:///../../node_modules/rc-textarea/es/TextArea.js","webpack:///../../node_modules/rc-textarea/es/index.js","webpack:///../../node_modules/antd/es/input/TextArea.js","webpack:///../../node_modules/antd/es/input/index.js","webpack:///../../node_modules/antd/es/input/Group.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorHexInput.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorHsbInput.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorRgbInput.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorInput.js","webpack:///../../node_modules/rc-slider/es/util.js","webpack:///../../node_modules/rc-slider/es/context.js","webpack:///../../node_modules/rc-slider/es/Handles/Handle.js","webpack:///../../node_modules/rc-slider/es/Handles/index.js","webpack:///../../node_modules/rc-slider/es/Marks/Mark.js","webpack:///../../node_modules/rc-slider/es/Marks/index.js","webpack:///../../node_modules/rc-slider/es/Steps/Dot.js","webpack:///../../node_modules/rc-slider/es/Steps/index.js","webpack:///../../node_modules/rc-slider/es/Tracks/Track.js","webpack:///../../node_modules/rc-slider/es/Tracks/index.js","webpack:///../../node_modules/rc-slider/es/hooks/useDrag.js","webpack:///../../node_modules/rc-slider/es/Slider.js","webpack:///../../node_modules/rc-slider/es/hooks/useRange.js","webpack:///../../node_modules/rc-slider/es/hooks/useOffset.js","webpack:///../../node_modules/rc-slider/es/index.js","webpack:///../../node_modules/antd/es/slider/Context.js","webpack:///../../node_modules/antd/es/slider/SliderTooltip.js","webpack:///../../node_modules/antd/es/slider/style/index.js","webpack:///../../node_modules/antd/es/slider/useRafLock.js","webpack:///../../node_modules/antd/es/slider/index.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorSlider.js","webpack:///../../node_modules/antd/es/color-picker/components/PanelPicker/GradientColorBar.js","webpack:///../../node_modules/antd/es/color-picker/components/PanelPicker/index.js","webpack:///../../node_modules/antd/es/color-picker/components/PanelPresets.js","webpack:///../../node_modules/antd/es/color-picker/ColorPickerPanel.js","webpack:///../../node_modules/antd/es/color-picker/components/ColorTrigger.js","webpack:///../../node_modules/antd/es/color-picker/style/color-block.js","webpack:///../../node_modules/antd/es/color-picker/style/input.js","webpack:///../../node_modules/antd/es/color-picker/style/picker.js","webpack:///../../node_modules/antd/es/color-picker/style/presets.js","webpack:///../../node_modules/antd/es/color-picker/style/slider.js","webpack:///../../node_modules/antd/es/color-picker/style/index.js","webpack:///../../node_modules/antd/es/color-picker/ColorPicker.js","webpack:///../../node_modules/antd/es/color-picker/hooks/useModeColor.js","webpack:///../../node_modules/antd/es/color-picker/index.js"],"sourcesContent":["export const getRenderPropValue = propValue => {\n if (!propValue) {\n return null;\n }\n return typeof propValue === 'function' ? propValue() : propValue;\n};","import classNames from 'classnames';\nimport * as React from 'react';\nexport default function Popup(props) {\n var children = props.children,\n prefixCls = props.prefixCls,\n id = props.id,\n innerStyle = props.overlayInnerStyle,\n bodyClassName = props.bodyClassName,\n className = props.className,\n style = props.style;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content\"), className),\n style: style\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-inner\"), bodyClassName),\n id: id,\n role: \"tooltip\",\n style: innerStyle\n }, typeof children === 'function' ? children() : children));\n}","var autoAdjustOverflowTopBottom = {\n shiftX: 64,\n adjustY: 1\n};\nvar autoAdjustOverflowLeftRight = {\n adjustX: 1,\n shiftY: true\n};\nvar targetOffset = [0, 0];\nexport var placements = {\n left: {\n points: ['cr', 'cl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n right: {\n points: ['cl', 'cr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n top: {\n points: ['bc', 'tc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n bottom: {\n points: ['tc', 'bc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n rightBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n leftBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n }\n};\nexport default placements;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"overlayClassName\", \"trigger\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"prefixCls\", \"children\", \"onVisibleChange\", \"afterVisibleChange\", \"transitionName\", \"animation\", \"motion\", \"placement\", \"align\", \"destroyTooltipOnHide\", \"defaultVisible\", \"getTooltipContainer\", \"overlayInnerStyle\", \"arrowContent\", \"overlay\", \"id\", \"showArrow\", \"classNames\", \"styles\"];\nimport Trigger from '@rc-component/trigger';\nimport * as React from 'react';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\nimport { placements } from \"./placements\";\nimport Popup from \"./Popup\";\nimport classNames from 'classnames';\nvar Tooltip = function Tooltip(props, ref) {\n var overlayClassName = props.overlayClassName,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,\n _props$mouseEnterDela = props.mouseEnterDelay,\n mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0 : _props$mouseEnterDela,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n overlayStyle = props.overlayStyle,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-tooltip' : _props$prefixCls,\n children = props.children,\n onVisibleChange = props.onVisibleChange,\n afterVisibleChange = props.afterVisibleChange,\n transitionName = props.transitionName,\n animation = props.animation,\n motion = props.motion,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'right' : _props$placement,\n _props$align = props.align,\n align = _props$align === void 0 ? {} : _props$align,\n _props$destroyTooltip = props.destroyTooltipOnHide,\n destroyTooltipOnHide = _props$destroyTooltip === void 0 ? false : _props$destroyTooltip,\n defaultVisible = props.defaultVisible,\n getTooltipContainer = props.getTooltipContainer,\n overlayInnerStyle = props.overlayInnerStyle,\n arrowContent = props.arrowContent,\n overlay = props.overlay,\n id = props.id,\n _props$showArrow = props.showArrow,\n showArrow = _props$showArrow === void 0 ? true : _props$showArrow,\n tooltipClassNames = props.classNames,\n tooltipStyles = props.styles,\n restProps = _objectWithoutProperties(props, _excluded);\n var triggerRef = useRef(null);\n useImperativeHandle(ref, function () {\n return triggerRef.current;\n });\n var extraProps = _objectSpread({}, restProps);\n if ('visible' in props) {\n extraProps.popupVisible = props.visible;\n }\n var getPopupElement = function getPopupElement() {\n return /*#__PURE__*/React.createElement(Popup, {\n key: \"content\",\n prefixCls: prefixCls,\n id: id,\n bodyClassName: tooltipClassNames === null || tooltipClassNames === void 0 ? void 0 : tooltipClassNames.body,\n overlayInnerStyle: _objectSpread(_objectSpread({}, overlayInnerStyle), tooltipStyles === null || tooltipStyles === void 0 ? void 0 : tooltipStyles.body)\n }, overlay);\n };\n return /*#__PURE__*/React.createElement(Trigger, _extends({\n popupClassName: classNames(overlayClassName, tooltipClassNames === null || tooltipClassNames === void 0 ? void 0 : tooltipClassNames.root),\n prefixCls: prefixCls,\n popup: getPopupElement,\n action: trigger,\n builtinPlacements: placements,\n popupPlacement: placement,\n ref: triggerRef,\n popupAlign: align,\n getPopupContainer: getTooltipContainer,\n onPopupVisibleChange: onVisibleChange,\n afterPopupVisibleChange: afterVisibleChange,\n popupTransitionName: transitionName,\n popupAnimation: animation,\n popupMotion: motion,\n defaultPopupVisible: defaultVisible,\n autoDestroy: destroyTooltipOnHide,\n mouseLeaveDelay: mouseLeaveDelay,\n popupStyle: _objectSpread(_objectSpread({}, overlayStyle), tooltipStyles === null || tooltipStyles === void 0 ? void 0 : tooltipStyles.root),\n mouseEnterDelay: mouseEnterDelay,\n arrow: showArrow\n }, extraProps), children);\n};\nexport default /*#__PURE__*/forwardRef(Tooltip);","import Popup from \"./Popup\";\nimport Tooltip from \"./Tooltip\";\nexport { Popup };\nexport default Tooltip;","import { unit } from '@ant-design/cssinjs';\nimport { genRoundedArrow } from './roundedArrow';\nexport const MAX_VERTICAL_CONTENT_RADIUS = 8;\nexport function getArrowOffsetToken(options) {\n const {\n contentRadius,\n limitVerticalRadius\n } = options;\n const arrowOffset = contentRadius > 12 ? contentRadius + 2 : 12;\n const arrowOffsetVertical = limitVerticalRadius ? MAX_VERTICAL_CONTENT_RADIUS : arrowOffset;\n return {\n arrowOffsetHorizontal: arrowOffset,\n arrowOffsetVertical\n };\n}\nfunction isInject(valid, code) {\n if (!valid) {\n return {};\n }\n return code;\n}\nexport default function getArrowStyle(token, colorBg, options) {\n const {\n componentCls,\n boxShadowPopoverArrow,\n arrowOffsetVertical,\n arrowOffsetHorizontal\n } = token;\n const {\n arrowDistance = 0,\n arrowPlacement = {\n left: true,\n right: true,\n top: true,\n bottom: true\n }\n } = options || {};\n return {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({\n // ============================ Basic ============================\n [`${componentCls}-arrow`]: [Object.assign(Object.assign({\n position: 'absolute',\n zIndex: 1,\n display: 'block'\n }, genRoundedArrow(token, colorBg, boxShadowPopoverArrow)), {\n '&:before': {\n background: colorBg\n }\n })]\n }, isInject(!!arrowPlacement.top, {\n [[`&-placement-top > ${componentCls}-arrow`, `&-placement-topLeft > ${componentCls}-arrow`, `&-placement-topRight > ${componentCls}-arrow`].join(',')]: {\n bottom: arrowDistance,\n transform: 'translateY(100%) rotate(180deg)'\n },\n [`&-placement-top > ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateX(-50%) translateY(100%) rotate(180deg)'\n },\n '&-placement-topLeft': {\n '--arrow-offset-horizontal': arrowOffsetHorizontal,\n [`> ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n },\n '&-placement-topRight': {\n '--arrow-offset-horizontal': `calc(100% - ${unit(arrowOffsetHorizontal)})`,\n [`> ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n }\n })), isInject(!!arrowPlacement.bottom, {\n [[`&-placement-bottom > ${componentCls}-arrow`, `&-placement-bottomLeft > ${componentCls}-arrow`, `&-placement-bottomRight > ${componentCls}-arrow`].join(',')]: {\n top: arrowDistance,\n transform: `translateY(-100%)`\n },\n [`&-placement-bottom > ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: `translateX(-50%) translateY(-100%)`\n },\n '&-placement-bottomLeft': {\n '--arrow-offset-horizontal': arrowOffsetHorizontal,\n [`> ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n },\n '&-placement-bottomRight': {\n '--arrow-offset-horizontal': `calc(100% - ${unit(arrowOffsetHorizontal)})`,\n [`> ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: arrowOffsetHorizontal\n }\n }\n }\n })), isInject(!!arrowPlacement.left, {\n [[`&-placement-left > ${componentCls}-arrow`, `&-placement-leftTop > ${componentCls}-arrow`, `&-placement-leftBottom > ${componentCls}-arrow`].join(',')]: {\n right: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(100%) rotate(90deg)'\n },\n [`&-placement-left > ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(100%) rotate(90deg)'\n },\n [`&-placement-leftTop > ${componentCls}-arrow`]: {\n top: arrowOffsetVertical\n },\n [`&-placement-leftBottom > ${componentCls}-arrow`]: {\n bottom: arrowOffsetVertical\n }\n })), isInject(!!arrowPlacement.right, {\n [[`&-placement-right > ${componentCls}-arrow`, `&-placement-rightTop > ${componentCls}-arrow`, `&-placement-rightBottom > ${componentCls}-arrow`].join(',')]: {\n left: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-right > ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-rightTop > ${componentCls}-arrow`]: {\n top: arrowOffsetVertical\n },\n [`&-placement-rightBottom > ${componentCls}-arrow`]: {\n bottom: arrowOffsetVertical\n }\n }))\n };\n}","import { getArrowOffsetToken } from '../style/placementArrow';\nexport function getOverflowOptions(placement, arrowOffset, arrowWidth, autoAdjustOverflow) {\n if (autoAdjustOverflow === false) {\n return {\n adjustX: false,\n adjustY: false\n };\n }\n const overflow = autoAdjustOverflow && typeof autoAdjustOverflow === 'object' ? autoAdjustOverflow : {};\n const baseOverflow = {};\n switch (placement) {\n case 'top':\n case 'bottom':\n baseOverflow.shiftX = arrowOffset.arrowOffsetHorizontal * 2 + arrowWidth;\n baseOverflow.shiftY = true;\n baseOverflow.adjustY = true;\n break;\n case 'left':\n case 'right':\n baseOverflow.shiftY = arrowOffset.arrowOffsetVertical * 2 + arrowWidth;\n baseOverflow.shiftX = true;\n baseOverflow.adjustX = true;\n break;\n }\n const mergedOverflow = Object.assign(Object.assign({}, baseOverflow), overflow);\n // Support auto shift\n if (!mergedOverflow.shiftX) {\n mergedOverflow.adjustX = true;\n }\n if (!mergedOverflow.shiftY) {\n mergedOverflow.adjustY = true;\n }\n return mergedOverflow;\n}\nconst PlacementAlignMap = {\n left: {\n points: ['cr', 'cl']\n },\n right: {\n points: ['cl', 'cr']\n },\n top: {\n points: ['bc', 'tc']\n },\n bottom: {\n points: ['tc', 'bc']\n },\n topLeft: {\n points: ['bl', 'tl']\n },\n leftTop: {\n points: ['tr', 'tl']\n },\n topRight: {\n points: ['br', 'tr']\n },\n rightTop: {\n points: ['tl', 'tr']\n },\n bottomRight: {\n points: ['tr', 'br']\n },\n rightBottom: {\n points: ['bl', 'br']\n },\n bottomLeft: {\n points: ['tl', 'bl']\n },\n leftBottom: {\n points: ['br', 'bl']\n }\n};\nconst ArrowCenterPlacementAlignMap = {\n topLeft: {\n points: ['bl', 'tc']\n },\n leftTop: {\n points: ['tr', 'cl']\n },\n topRight: {\n points: ['br', 'tc']\n },\n rightTop: {\n points: ['tl', 'cr']\n },\n bottomRight: {\n points: ['tr', 'bc']\n },\n rightBottom: {\n points: ['bl', 'cr']\n },\n bottomLeft: {\n points: ['tl', 'bc']\n },\n leftBottom: {\n points: ['br', 'cl']\n }\n};\nconst DisableAutoArrowList = new Set(['topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom']);\nexport default function getPlacements(config) {\n const {\n arrowWidth,\n autoAdjustOverflow,\n arrowPointAtCenter,\n offset,\n borderRadius,\n visibleFirst\n } = config;\n const halfArrowWidth = arrowWidth / 2;\n const placementMap = {};\n Object.keys(PlacementAlignMap).forEach(key => {\n const template = arrowPointAtCenter && ArrowCenterPlacementAlignMap[key] || PlacementAlignMap[key];\n const placementInfo = Object.assign(Object.assign({}, template), {\n offset: [0, 0],\n dynamicInset: true\n });\n placementMap[key] = placementInfo;\n // Disable autoArrow since design is fixed position\n if (DisableAutoArrowList.has(key)) {\n placementInfo.autoArrow = false;\n }\n // Static offset\n switch (key) {\n case 'top':\n case 'topLeft':\n case 'topRight':\n placementInfo.offset[1] = -halfArrowWidth - offset;\n break;\n case 'bottom':\n case 'bottomLeft':\n case 'bottomRight':\n placementInfo.offset[1] = halfArrowWidth + offset;\n break;\n case 'left':\n case 'leftTop':\n case 'leftBottom':\n placementInfo.offset[0] = -halfArrowWidth - offset;\n break;\n case 'right':\n case 'rightTop':\n case 'rightBottom':\n placementInfo.offset[0] = halfArrowWidth + offset;\n break;\n }\n // Dynamic offset\n const arrowOffset = getArrowOffsetToken({\n contentRadius: borderRadius,\n limitVerticalRadius: true\n });\n if (arrowPointAtCenter) {\n switch (key) {\n case 'topLeft':\n case 'bottomLeft':\n placementInfo.offset[0] = -arrowOffset.arrowOffsetHorizontal - halfArrowWidth;\n break;\n case 'topRight':\n case 'bottomRight':\n placementInfo.offset[0] = arrowOffset.arrowOffsetHorizontal + halfArrowWidth;\n break;\n case 'leftTop':\n case 'rightTop':\n placementInfo.offset[1] = -arrowOffset.arrowOffsetHorizontal * 2 + halfArrowWidth;\n break;\n case 'leftBottom':\n case 'rightBottom':\n placementInfo.offset[1] = arrowOffset.arrowOffsetHorizontal * 2 - halfArrowWidth;\n break;\n }\n }\n // Overflow\n placementInfo.overflow = getOverflowOptions(key, arrowOffset, arrowWidth, autoAdjustOverflow);\n // VisibleFirst\n if (visibleFirst) {\n placementInfo.htmlRegion = 'visibleFirst';\n }\n });\n return placementMap;\n}","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const zoomIn = new Keyframes('antZoomIn', {\n '0%': {\n transform: 'scale(0.2)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomOut = new Keyframes('antZoomOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.2)',\n opacity: 0\n }\n});\nexport const zoomBigIn = new Keyframes('antZoomBigIn', {\n '0%': {\n transform: 'scale(0.8)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomBigOut = new Keyframes('antZoomBigOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.8)',\n opacity: 0\n }\n});\nexport const zoomUpIn = new Keyframes('antZoomUpIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n }\n});\nexport const zoomUpOut = new Keyframes('antZoomUpOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n }\n});\nexport const zoomLeftIn = new Keyframes('antZoomLeftIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n }\n});\nexport const zoomLeftOut = new Keyframes('antZoomLeftOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n }\n});\nexport const zoomRightIn = new Keyframes('antZoomRightIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n }\n});\nexport const zoomRightOut = new Keyframes('antZoomRightOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n }\n});\nexport const zoomDownIn = new Keyframes('antZoomDownIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n }\n});\nexport const zoomDownOut = new Keyframes('antZoomDownOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n }\n});\nconst zoomMotion = {\n zoom: {\n inKeyframes: zoomIn,\n outKeyframes: zoomOut\n },\n 'zoom-big': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-big-fast': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-left': {\n inKeyframes: zoomLeftIn,\n outKeyframes: zoomLeftOut\n },\n 'zoom-right': {\n inKeyframes: zoomRightIn,\n outKeyframes: zoomRightOut\n },\n 'zoom-up': {\n inKeyframes: zoomUpIn,\n outKeyframes: zoomUpOut\n },\n 'zoom-down': {\n inKeyframes: zoomDownIn,\n outKeyframes: zoomDownOut\n }\n};\nexport const initZoomMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = zoomMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, motionName === 'zoom-big-fast' ? token.motionDurationFast : token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n transform: 'scale(0)',\n opacity: 0,\n animationTimingFunction: token.motionEaseOutCirc,\n '&-prepare': {\n transform: 'none'\n }\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInOutCirc\n }\n }];\n};","import { PresetColors } from '../interface';\nexport default function genPresetColor(token, genCss) {\n return PresetColors.reduce((prev, colorKey) => {\n const lightColor = token[`${colorKey}1`];\n const lightBorderColor = token[`${colorKey}3`];\n const darkColor = token[`${colorKey}6`];\n const textColor = token[`${colorKey}7`];\n return Object.assign(Object.assign({}, prev), genCss(colorKey, {\n lightColor,\n lightBorderColor,\n darkColor,\n textColor\n }));\n }, {});\n}","import { unit } from '@ant-design/cssinjs';\nimport { resetComponent } from '../../style';\nimport { initZoomMotion } from '../../style/motion';\nimport getArrowStyle, { getArrowOffsetToken, MAX_VERTICAL_CONTENT_RADIUS } from '../../style/placementArrow';\nimport { getArrowToken } from '../../style/roundedArrow';\nimport { genPresetColor, genStyleHooks, mergeToken } from '../../theme/internal';\nconst genTooltipStyle = token => {\n const {\n calc,\n componentCls,\n // ant-tooltip\n tooltipMaxWidth,\n tooltipColor,\n tooltipBg,\n tooltipBorderRadius,\n zIndexPopup,\n controlHeight,\n boxShadowSecondary,\n paddingSM,\n paddingXS,\n arrowOffsetHorizontal,\n sizePopupArrow\n } = token;\n // arrowOffsetHorizontal + arrowWidth + borderRadius\n const edgeAlignMinWidth = calc(tooltipBorderRadius).add(sizePopupArrow).add(arrowOffsetHorizontal).equal();\n // borderRadius * 2 + arrowWidth\n const centerAlignMinWidth = calc(tooltipBorderRadius).mul(2).add(sizePopupArrow).equal();\n return [{\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n zIndex: zIndexPopup,\n display: 'block',\n width: 'max-content',\n maxWidth: tooltipMaxWidth,\n visibility: 'visible',\n // When use `autoArrow`, origin will follow the arrow position\n '--valid-offset-x': 'var(--arrow-offset-horizontal, var(--arrow-x))',\n transformOrigin: [`var(--valid-offset-x, 50%)`, `var(--arrow-y, 50%)`].join(' '),\n '&-hidden': {\n display: 'none'\n },\n '--antd-arrow-background-color': tooltipBg,\n // Wrapper for the tooltip content\n [`${componentCls}-inner`]: {\n minWidth: centerAlignMinWidth,\n minHeight: controlHeight,\n padding: `${unit(token.calc(paddingSM).div(2).equal())} ${unit(paddingXS)}`,\n color: tooltipColor,\n textAlign: 'start',\n textDecoration: 'none',\n wordWrap: 'break-word',\n backgroundColor: tooltipBg,\n borderRadius: tooltipBorderRadius,\n boxShadow: boxShadowSecondary,\n boxSizing: 'border-box'\n },\n // Align placement should have another min width\n [[`&-placement-topLeft`, `&-placement-topRight`, `&-placement-bottomLeft`, `&-placement-bottomRight`].join(',')]: {\n minWidth: edgeAlignMinWidth\n },\n // Limit left and right placement radius\n [[`&-placement-left`, `&-placement-leftTop`, `&-placement-leftBottom`, `&-placement-right`, `&-placement-rightTop`, `&-placement-rightBottom`].join(',')]: {\n [`${componentCls}-inner`]: {\n borderRadius: token.min(tooltipBorderRadius, MAX_VERTICAL_CONTENT_RADIUS)\n }\n },\n [`${componentCls}-content`]: {\n position: 'relative'\n }\n }), genPresetColor(token, (colorKey, _ref) => {\n let {\n darkColor\n } = _ref;\n return {\n [`&${componentCls}-${colorKey}`]: {\n [`${componentCls}-inner`]: {\n backgroundColor: darkColor\n },\n [`${componentCls}-arrow`]: {\n '--antd-arrow-background-color': darkColor\n }\n }\n };\n })), {\n // RTL\n '&-rtl': {\n direction: 'rtl'\n }\n })\n },\n // Arrow Style\n getArrowStyle(token, 'var(--antd-arrow-background-color)'),\n // Pure Render\n {\n [`${componentCls}-pure`]: {\n position: 'relative',\n maxWidth: 'none',\n margin: token.sizePopupArrow\n }\n }];\n};\n// ============================== Export ==============================\nexport const prepareComponentToken = token => Object.assign(Object.assign({\n zIndexPopup: token.zIndexPopupBase + 70\n}, getArrowOffsetToken({\n contentRadius: token.borderRadius,\n limitVerticalRadius: true\n})), getArrowToken(mergeToken(token, {\n borderRadiusOuter: Math.min(token.borderRadiusOuter, 4)\n})));\nexport default (function (prefixCls) {\n let injectStyle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n const useStyle = genStyleHooks('Tooltip', token => {\n const {\n borderRadius,\n colorTextLightSolid,\n colorBgSpotlight\n } = token;\n const TooltipToken = mergeToken(token, {\n // default variables\n tooltipMaxWidth: 250,\n tooltipColor: colorTextLightSolid,\n tooltipBorderRadius: borderRadius,\n tooltipBg: colorBgSpotlight\n });\n return [genTooltipStyle(TooltipToken), initZoomMotion(token, 'zoom-big-fast')];\n }, prepareComponentToken, {\n resetStyle: false,\n // Popover use Tooltip as internal component. We do not need to handle this.\n injectStyle\n });\n return useStyle(prefixCls);\n});","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { PresetColors } from '../theme/interface';\nconst inverseColors = PresetColors.map(color => `${color}-inverse`);\nexport const PresetStatusColorTypes = ['success', 'processing', 'error', 'default', 'warning'];\n/**\n * determine if the color keyword belongs to the `Ant Design` {@link PresetColors}.\n * @param color color to be judged\n * @param includeInverse whether to include reversed colors\n */\nexport function isPresetColor(color) {\n let includeInverse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (includeInverse) {\n return [].concat(_toConsumableArray(inverseColors), _toConsumableArray(PresetColors)).includes(color);\n }\n return PresetColors.includes(color);\n}\nexport function isPresetStatusColor(color) {\n return PresetStatusColorTypes.includes(color);\n}","import classNames from 'classnames';\nimport { isPresetColor } from '../_util/colors';\nexport function parseColor(prefixCls, color) {\n const isInternalColor = isPresetColor(color);\n const className = classNames({\n [`${prefixCls}-${color}`]: color && isInternalColor\n });\n const overlayStyle = {};\n const arrowStyle = {};\n if (color && !isInternalColor) {\n overlayStyle.background = color;\n // @ts-ignore\n arrowStyle['--antd-arrow-background-color'] = color;\n }\n return {\n className,\n overlayStyle,\n arrowStyle\n };\n}","\"use client\";\n\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 classNames from 'classnames';\nimport RcTooltip from 'rc-tooltip';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport ContextIsolator from '../_util/ContextIsolator';\nimport { useZIndex } from '../_util/hooks/useZIndex';\nimport { getTransitionName } from '../_util/motion';\nimport getPlacements from '../_util/placements';\nimport { cloneElement, isFragment } from '../_util/reactNode';\nimport { devUseWarning } from '../_util/warning';\nimport zIndexContext from '../_util/zindexContext';\nimport { ConfigContext } from '../config-provider';\nimport { useToken } from '../theme/internal';\nimport PurePanel from './PurePanel';\nimport useStyle from './style';\nimport { parseColor } from './util';\nconst InternalTooltip = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a, _b, _c, _d, _e, _f;\n const {\n prefixCls: customizePrefixCls,\n openClassName,\n getTooltipContainer,\n color,\n overlayInnerStyle,\n children,\n afterOpenChange,\n afterVisibleChange,\n destroyTooltipOnHide,\n arrow = true,\n title,\n overlay,\n builtinPlacements,\n arrowPointAtCenter = false,\n autoAdjustOverflow = true\n } = props;\n const mergedShowArrow = !!arrow;\n const [, token] = useToken();\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction,\n tooltip\n } = React.useContext(ConfigContext);\n // ============================== Ref ===============================\n const warning = devUseWarning('Tooltip');\n const tooltipRef = React.useRef(null);\n const forceAlign = () => {\n var _a;\n (_a = tooltipRef.current) === null || _a === void 0 ? void 0 : _a.forceAlign();\n };\n React.useImperativeHandle(ref, () => {\n var _a;\n return {\n forceAlign,\n forcePopupAlign: () => {\n warning.deprecated(false, 'forcePopupAlign', 'forceAlign');\n forceAlign();\n },\n nativeElement: (_a = tooltipRef.current) === null || _a === void 0 ? void 0 : _a.nativeElement\n };\n });\n // ============================== Warn ==============================\n if (process.env.NODE_ENV !== 'production') {\n [['visible', 'open'], ['defaultVisible', 'defaultOpen'], ['onVisibleChange', 'onOpenChange'], ['afterVisibleChange', 'afterOpenChange'], ['arrowPointAtCenter', 'arrow={{ pointAtCenter: true }}'], ['overlayStyle', 'styles={{ root: {} }}'], ['overlayInnerStyle', 'styles={{ body: {} }}'], ['overlayClassName', 'classNames={{ root: {} }}']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n warning.deprecated(!(deprecatedName in props), deprecatedName, newName);\n });\n process.env.NODE_ENV !== \"production\" ? warning(!destroyTooltipOnHide || typeof destroyTooltipOnHide === 'boolean', 'usage', '`destroyTooltipOnHide` no need config `keepParent` anymore. Please use `boolean` value directly.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!arrow || typeof arrow === 'boolean' || !('arrowPointAtCenter' in arrow), 'deprecated', '`arrowPointAtCenter` in `arrow` is deprecated. Please use `pointAtCenter` instead.') : void 0;\n }\n // ============================== Open ==============================\n const [open, setOpen] = useMergedState(false, {\n value: (_a = props.open) !== null && _a !== void 0 ? _a : props.visible,\n defaultValue: (_b = props.defaultOpen) !== null && _b !== void 0 ? _b : props.defaultVisible\n });\n const noTitle = !title && !overlay && title !== 0; // overlay for old version compatibility\n const onOpenChange = vis => {\n var _a, _b;\n setOpen(noTitle ? false : vis);\n if (!noTitle) {\n (_a = props.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(props, vis);\n (_b = props.onVisibleChange) === null || _b === void 0 ? void 0 : _b.call(props, vis);\n }\n };\n const tooltipPlacements = React.useMemo(() => {\n var _a, _b;\n let mergedArrowPointAtCenter = arrowPointAtCenter;\n if (typeof arrow === 'object') {\n mergedArrowPointAtCenter = (_b = (_a = arrow.pointAtCenter) !== null && _a !== void 0 ? _a : arrow.arrowPointAtCenter) !== null && _b !== void 0 ? _b : arrowPointAtCenter;\n }\n return builtinPlacements || getPlacements({\n arrowPointAtCenter: mergedArrowPointAtCenter,\n autoAdjustOverflow,\n arrowWidth: mergedShowArrow ? token.sizePopupArrow : 0,\n borderRadius: token.borderRadius,\n offset: token.marginXXS,\n visibleFirst: true\n });\n }, [arrowPointAtCenter, arrow, builtinPlacements, token]);\n const memoOverlay = React.useMemo(() => {\n if (title === 0) {\n return title;\n }\n return overlay || title || '';\n }, [overlay, title]);\n const memoOverlayWrapper = /*#__PURE__*/React.createElement(ContextIsolator, {\n space: true\n }, typeof memoOverlay === 'function' ? memoOverlay() : memoOverlay);\n const {\n getPopupContainer,\n placement = 'top',\n mouseEnterDelay = 0.1,\n mouseLeaveDelay = 0.1,\n overlayStyle,\n rootClassName,\n overlayClassName,\n styles,\n classNames: tooltipClassNames\n } = props,\n otherProps = __rest(props, [\"getPopupContainer\", \"placement\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"rootClassName\", \"overlayClassName\", \"styles\", \"classNames\"]);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const injectFromPopover = props['data-popover-inject'];\n let tempOpen = open;\n // Hide tooltip when there is no title\n if (!('open' in props) && !('visible' in props) && noTitle) {\n tempOpen = false;\n }\n // ============================= Render =============================\n const child = /*#__PURE__*/React.isValidElement(children) && !isFragment(children) ? children : /*#__PURE__*/React.createElement(\"span\", null, children);\n const childProps = child.props;\n const childCls = !childProps.className || typeof childProps.className === 'string' ? classNames(childProps.className, openClassName || `${prefixCls}-open`) : childProps.className;\n // Style\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, !injectFromPopover);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const arrowContentStyle = colorInfo.arrowStyle;\n const rootClassNames = classNames(overlayClassName, {\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, colorInfo.className, rootClassName, hashId, cssVarCls, tooltip === null || tooltip === void 0 ? void 0 : tooltip.className, (_c = tooltip === null || tooltip === void 0 ? void 0 : tooltip.classNames) === null || _c === void 0 ? void 0 : _c.root, tooltipClassNames === null || tooltipClassNames === void 0 ? void 0 : tooltipClassNames.root);\n const bodyClassNames = classNames((_d = tooltip === null || tooltip === void 0 ? void 0 : tooltip.classNames) === null || _d === void 0 ? void 0 : _d.body, tooltipClassNames === null || tooltipClassNames === void 0 ? void 0 : tooltipClassNames.body);\n // ============================ zIndex ============================\n const [zIndex, contextZIndex] = useZIndex('Tooltip', otherProps.zIndex);\n const content = /*#__PURE__*/React.createElement(RcTooltip, Object.assign({}, otherProps, {\n zIndex: zIndex,\n showArrow: mergedShowArrow,\n placement: placement,\n mouseEnterDelay: mouseEnterDelay,\n mouseLeaveDelay: mouseLeaveDelay,\n prefixCls: prefixCls,\n classNames: {\n root: rootClassNames,\n body: bodyClassNames\n },\n styles: {\n root: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, arrowContentStyle), (_e = tooltip === null || tooltip === void 0 ? void 0 : tooltip.styles) === null || _e === void 0 ? void 0 : _e.root), tooltip === null || tooltip === void 0 ? void 0 : tooltip.style), overlayStyle), styles === null || styles === void 0 ? void 0 : styles.root),\n body: Object.assign(Object.assign(Object.assign(Object.assign({}, (_f = tooltip === null || tooltip === void 0 ? void 0 : tooltip.styles) === null || _f === void 0 ? void 0 : _f.body), overlayInnerStyle), styles === null || styles === void 0 ? void 0 : styles.body), colorInfo.overlayStyle)\n },\n getTooltipContainer: getPopupContainer || getTooltipContainer || getContextPopupContainer,\n ref: tooltipRef,\n builtinPlacements: tooltipPlacements,\n overlay: memoOverlayWrapper,\n visible: tempOpen,\n onVisibleChange: onOpenChange,\n afterVisibleChange: afterOpenChange !== null && afterOpenChange !== void 0 ? afterOpenChange : afterVisibleChange,\n arrowContent: /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-arrow-content`\n }),\n motion: {\n motionName: getTransitionName(rootPrefixCls, 'zoom-big-fast', props.transitionName),\n motionDeadline: 1000\n },\n destroyTooltipOnHide: !!destroyTooltipOnHide\n }), tempOpen ? cloneElement(child, {\n className: childCls\n }) : child);\n return wrapCSSVar(/*#__PURE__*/React.createElement(zIndexContext.Provider, {\n value: contextZIndex\n }, content));\n});\nconst Tooltip = InternalTooltip;\nif (process.env.NODE_ENV !== 'production') {\n Tooltip.displayName = 'Tooltip';\n}\nTooltip._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nexport default Tooltip;","\"use client\";\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Popup } from 'rc-tooltip';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nimport { parseColor } from './util';\n/** @private Internal Component. Do not use in your production. */\nconst PurePanel = props => {\n const {\n prefixCls: customizePrefixCls,\n className,\n placement = 'top',\n title,\n color,\n overlayInnerStyle\n } = props;\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const arrowContentStyle = colorInfo.arrowStyle;\n const formattedOverlayInnerStyle = Object.assign(Object.assign({}, overlayInnerStyle), colorInfo.overlayStyle);\n const cls = classNames(hashId, cssVarCls, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className, colorInfo.className);\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"div\", {\n className: cls,\n style: arrowContentStyle\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-arrow`\n }), /*#__PURE__*/React.createElement(Popup, Object.assign({}, props, {\n className: hashId,\n prefixCls: prefixCls,\n overlayInnerStyle: formattedOverlayInnerStyle\n }), title)));\n};\nexport default PurePanel;","import { resetComponent } from '../../style';\nimport { initZoomMotion } from '../../style/motion';\nimport getArrowStyle, { getArrowOffsetToken } from '../../style/placementArrow';\nimport { getArrowToken } from '../../style/roundedArrow';\nimport { genStyleHooks, mergeToken, PresetColors } from '../../theme/internal';\nconst genBaseStyle = token => {\n const {\n componentCls,\n popoverColor,\n titleMinWidth,\n fontWeightStrong,\n innerPadding,\n boxShadowSecondary,\n colorTextHeading,\n borderRadiusLG,\n zIndexPopup,\n titleMarginBottom,\n colorBgElevated,\n popoverBg,\n titleBorderBottom,\n innerContentPadding,\n titlePadding\n } = token;\n return [{\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n top: 0,\n // use `left` to fix https://github.com/ant-design/ant-design/issues/39195\n left: {\n _skip_check_: true,\n value: 0\n },\n zIndex: zIndexPopup,\n fontWeight: 'normal',\n whiteSpace: 'normal',\n textAlign: 'start',\n cursor: 'auto',\n userSelect: 'text',\n // When use `autoArrow`, origin will follow the arrow position\n '--valid-offset-x': 'var(--arrow-offset-horizontal, var(--arrow-x))',\n transformOrigin: [`var(--valid-offset-x, 50%)`, `var(--arrow-y, 50%)`].join(' '),\n '--antd-arrow-background-color': colorBgElevated,\n width: 'max-content',\n maxWidth: '100vw',\n '&-rtl': {\n direction: 'rtl'\n },\n '&-hidden': {\n display: 'none'\n },\n [`${componentCls}-content`]: {\n position: 'relative'\n },\n [`${componentCls}-inner`]: {\n backgroundColor: popoverBg,\n backgroundClip: 'padding-box',\n borderRadius: borderRadiusLG,\n boxShadow: boxShadowSecondary,\n padding: innerPadding\n },\n [`${componentCls}-title`]: {\n minWidth: titleMinWidth,\n marginBottom: titleMarginBottom,\n color: colorTextHeading,\n fontWeight: fontWeightStrong,\n borderBottom: titleBorderBottom,\n padding: titlePadding\n },\n [`${componentCls}-inner-content`]: {\n color: popoverColor,\n padding: innerContentPadding\n }\n })\n },\n // Arrow Style\n getArrowStyle(token, 'var(--antd-arrow-background-color)'),\n // Pure Render\n {\n [`${componentCls}-pure`]: {\n position: 'relative',\n maxWidth: 'none',\n margin: token.sizePopupArrow,\n display: 'inline-block',\n [`${componentCls}-content`]: {\n display: 'inline-block'\n }\n }\n }];\n};\nconst genColorStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: PresetColors.map(colorKey => {\n const lightColor = token[`${colorKey}6`];\n return {\n [`&${componentCls}-${colorKey}`]: {\n '--antd-arrow-background-color': lightColor,\n [`${componentCls}-inner`]: {\n backgroundColor: lightColor\n },\n [`${componentCls}-arrow`]: {\n background: 'transparent'\n }\n }\n };\n })\n };\n};\nexport const prepareComponentToken = token => {\n const {\n lineWidth,\n controlHeight,\n fontHeight,\n padding,\n wireframe,\n zIndexPopupBase,\n borderRadiusLG,\n marginXS,\n lineType,\n colorSplit,\n paddingSM\n } = token;\n const titlePaddingBlockDist = controlHeight - fontHeight;\n const popoverTitlePaddingBlockTop = titlePaddingBlockDist / 2;\n const popoverTitlePaddingBlockBottom = titlePaddingBlockDist / 2 - lineWidth;\n const popoverPaddingHorizontal = padding;\n return Object.assign(Object.assign(Object.assign({\n titleMinWidth: 177,\n zIndexPopup: zIndexPopupBase + 30\n }, getArrowToken(token)), getArrowOffsetToken({\n contentRadius: borderRadiusLG,\n limitVerticalRadius: true\n })), {\n // internal\n innerPadding: wireframe ? 0 : 12,\n titleMarginBottom: wireframe ? 0 : marginXS,\n titlePadding: wireframe ? `${popoverTitlePaddingBlockTop}px ${popoverPaddingHorizontal}px ${popoverTitlePaddingBlockBottom}px` : 0,\n titleBorderBottom: wireframe ? `${lineWidth}px ${lineType} ${colorSplit}` : 'none',\n innerContentPadding: wireframe ? `${paddingSM}px ${popoverPaddingHorizontal}px` : 0\n });\n};\nexport default genStyleHooks('Popover', token => {\n const {\n colorBgElevated,\n colorText\n } = token;\n const popoverToken = mergeToken(token, {\n popoverBg: colorBgElevated,\n popoverColor: colorText\n });\n return [genBaseStyle(popoverToken), genColorStyle(popoverToken), initZoomMotion(popoverToken, 'zoom-big')];\n}, prepareComponentToken, {\n resetStyle: false,\n deprecatedTokens: [['width', 'titleMinWidth'], ['minWidth', 'titleMinWidth']]\n});","\"use client\";\n\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 classNames from 'classnames';\nimport { Popup } from 'rc-tooltip';\nimport { getRenderPropValue } from '../_util/getRenderPropValue';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nexport const Overlay = _ref => {\n let {\n title,\n content,\n prefixCls\n } = _ref;\n if (!title && !content) {\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, title && /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-title`\n }, title), content && /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-inner-content`\n }, content));\n};\nexport const RawPurePanel = props => {\n const {\n hashId,\n prefixCls,\n className,\n style,\n placement = 'top',\n title,\n content,\n children\n } = props;\n const titleNode = getRenderPropValue(title);\n const contentNode = getRenderPropValue(content);\n const cls = classNames(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: cls,\n style: style\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-arrow`\n }), /*#__PURE__*/React.createElement(Popup, Object.assign({}, props, {\n className: hashId,\n prefixCls: prefixCls\n }), children || /*#__PURE__*/React.createElement(Overlay, {\n prefixCls: prefixCls,\n title: titleNode,\n content: contentNode\n })));\n};\nconst PurePanel = props => {\n const {\n prefixCls: customizePrefixCls,\n className\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('popover', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n return wrapCSSVar(/*#__PURE__*/React.createElement(RawPurePanel, Object.assign({}, restProps, {\n prefixCls: prefixCls,\n hashId: hashId,\n className: classNames(className, cssVarCls)\n })));\n};\nexport default PurePanel;","\"use client\";\n\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 classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport { getRenderPropValue } from '../_util/getRenderPropValue';\nimport { getTransitionName } from '../_util/motion';\nimport { cloneElement } from '../_util/reactNode';\nimport { ConfigContext } from '../config-provider';\nimport Tooltip from '../tooltip';\nimport PurePanel, { Overlay } from './PurePanel';\n// CSSINJS\nimport useStyle from './style';\nconst InternalPopover = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a, _b, _c, _d, _e, _f;\n const {\n prefixCls: customizePrefixCls,\n title,\n content,\n overlayClassName,\n placement = 'top',\n trigger = 'hover',\n children,\n mouseEnterDelay = 0.1,\n mouseLeaveDelay = 0.1,\n onOpenChange,\n overlayStyle = {},\n styles,\n classNames: popoverClassNames\n } = props,\n otherProps = __rest(props, [\"prefixCls\", \"title\", \"content\", \"overlayClassName\", \"placement\", \"trigger\", \"children\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"onOpenChange\", \"overlayStyle\", \"styles\", \"classNames\"]);\n const {\n popover,\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('popover', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const rootPrefixCls = getPrefixCls();\n const rootClassNames = classNames(overlayClassName, hashId, cssVarCls, (_a = popover === null || popover === void 0 ? void 0 : popover.classNames) === null || _a === void 0 ? void 0 : _a.root, popoverClassNames === null || popoverClassNames === void 0 ? void 0 : popoverClassNames.root);\n const bodyClassNames = classNames((_b = popover === null || popover === void 0 ? void 0 : popover.classNames) === null || _b === void 0 ? void 0 : _b.body, popoverClassNames === null || popoverClassNames === void 0 ? void 0 : popoverClassNames.body);\n const [open, setOpen] = useMergedState(false, {\n value: (_c = props.open) !== null && _c !== void 0 ? _c : props.visible,\n defaultValue: (_d = props.defaultOpen) !== null && _d !== void 0 ? _d : props.defaultVisible\n });\n const settingOpen = (value, e) => {\n setOpen(value, true);\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(value, e);\n };\n const onKeyDown = e => {\n if (e.keyCode === KeyCode.ESC) {\n settingOpen(false, e);\n }\n };\n const onInternalOpenChange = value => {\n settingOpen(value);\n };\n const titleNode = getRenderPropValue(title);\n const contentNode = getRenderPropValue(content);\n return wrapCSSVar(/*#__PURE__*/React.createElement(Tooltip, Object.assign({\n placement: placement,\n trigger: trigger,\n mouseEnterDelay: mouseEnterDelay,\n mouseLeaveDelay: mouseLeaveDelay\n }, otherProps, {\n prefixCls: prefixCls,\n classNames: {\n root: rootClassNames,\n body: bodyClassNames\n },\n styles: {\n root: Object.assign(Object.assign(Object.assign(Object.assign({}, (_e = popover === null || popover === void 0 ? void 0 : popover.styles) === null || _e === void 0 ? void 0 : _e.root), popover === null || popover === void 0 ? void 0 : popover.style), overlayStyle), styles === null || styles === void 0 ? void 0 : styles.root),\n body: Object.assign(Object.assign({}, (_f = popover === null || popover === void 0 ? void 0 : popover.styles) === null || _f === void 0 ? void 0 : _f.body), styles === null || styles === void 0 ? void 0 : styles.body)\n },\n ref: ref,\n open: open,\n onOpenChange: onInternalOpenChange,\n overlay: titleNode || contentNode ? (/*#__PURE__*/React.createElement(Overlay, {\n prefixCls: prefixCls,\n title: titleNode,\n content: contentNode\n })) : null,\n transitionName: getTransitionName(rootPrefixCls, 'zoom-big', otherProps.transitionName),\n \"data-popover-inject\": true\n }), cloneElement(children, {\n onKeyDown: e => {\n var _a, _b;\n if (/*#__PURE__*/React.isValidElement(children)) {\n (_b = children === null || children === void 0 ? void 0 : (_a = children.props).onKeyDown) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n }\n onKeyDown(e);\n }\n })));\n});\nconst Popover = InternalPopover;\nPopover._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nif (process.env.NODE_ENV !== 'production') {\n Popover.displayName = 'Popover';\n}\nexport default Popover;","import { unit } from '@ant-design/cssinjs';\nimport { resetComponent } from '../../style';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================== Shared ==============================\nconst genSharedDividerStyle = token => {\n const {\n componentCls,\n sizePaddingEdgeHorizontal,\n colorSplit,\n lineWidth,\n textPaddingInline,\n orientationMargin,\n verticalMarginInline\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n borderBlockStart: `${unit(lineWidth)} solid ${colorSplit}`,\n // vertical\n '&-vertical': {\n position: 'relative',\n top: '-0.06em',\n display: 'inline-block',\n height: '0.9em',\n marginInline: verticalMarginInline,\n marginBlock: 0,\n verticalAlign: 'middle',\n borderTop: 0,\n borderInlineStart: `${unit(lineWidth)} solid ${colorSplit}`\n },\n '&-horizontal': {\n display: 'flex',\n clear: 'both',\n width: '100%',\n minWidth: '100%',\n // Fix https://github.com/ant-design/ant-design/issues/10914\n margin: `${unit(token.dividerHorizontalGutterMargin)} 0`\n },\n [`&-horizontal${componentCls}-with-text`]: {\n display: 'flex',\n alignItems: 'center',\n margin: `${unit(token.dividerHorizontalWithTextGutterMargin)} 0`,\n color: token.colorTextHeading,\n fontWeight: 500,\n fontSize: token.fontSizeLG,\n whiteSpace: 'nowrap',\n textAlign: 'center',\n borderBlockStart: `0 ${colorSplit}`,\n '&::before, &::after': {\n position: 'relative',\n width: '50%',\n borderBlockStart: `${unit(lineWidth)} solid transparent`,\n // Chrome not accept `inherit` in `border-top`\n borderBlockStartColor: 'inherit',\n borderBlockEnd: 0,\n transform: 'translateY(50%)',\n content: \"''\"\n }\n },\n [`&-horizontal${componentCls}-with-text-left`]: {\n '&::before': {\n width: `calc(${orientationMargin} * 100%)`\n },\n '&::after': {\n width: `calc(100% - ${orientationMargin} * 100%)`\n }\n },\n [`&-horizontal${componentCls}-with-text-right`]: {\n '&::before': {\n width: `calc(100% - ${orientationMargin} * 100%)`\n },\n '&::after': {\n width: `calc(${orientationMargin} * 100%)`\n }\n },\n [`${componentCls}-inner-text`]: {\n display: 'inline-block',\n paddingBlock: 0,\n paddingInline: textPaddingInline\n },\n '&-dashed': {\n background: 'none',\n borderColor: colorSplit,\n borderStyle: 'dashed',\n borderWidth: `${unit(lineWidth)} 0 0`\n },\n [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {\n '&::before, &::after': {\n borderStyle: 'dashed none none'\n }\n },\n [`&-vertical${componentCls}-dashed`]: {\n borderInlineStartWidth: lineWidth,\n borderInlineEnd: 0,\n borderBlockStart: 0,\n borderBlockEnd: 0\n },\n '&-dotted': {\n background: 'none',\n borderColor: colorSplit,\n borderStyle: 'dotted',\n borderWidth: `${unit(lineWidth)} 0 0`\n },\n [`&-horizontal${componentCls}-with-text${componentCls}-dotted`]: {\n '&::before, &::after': {\n borderStyle: 'dotted none none'\n }\n },\n [`&-vertical${componentCls}-dotted`]: {\n borderInlineStartWidth: lineWidth,\n borderInlineEnd: 0,\n borderBlockStart: 0,\n borderBlockEnd: 0\n },\n [`&-plain${componentCls}-with-text`]: {\n color: token.colorText,\n fontWeight: 'normal',\n fontSize: token.fontSize\n },\n [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {\n '&::before': {\n width: 0\n },\n '&::after': {\n width: '100%'\n },\n [`${componentCls}-inner-text`]: {\n paddingInlineStart: sizePaddingEdgeHorizontal\n }\n },\n [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {\n '&::before': {\n width: '100%'\n },\n '&::after': {\n width: 0\n },\n [`${componentCls}-inner-text`]: {\n paddingInlineEnd: sizePaddingEdgeHorizontal\n }\n }\n })\n };\n};\nexport const prepareComponentToken = token => ({\n textPaddingInline: '1em',\n orientationMargin: 0.05,\n verticalMarginInline: token.marginXS\n});\n// ============================== Export ==============================\nexport default genStyleHooks('Divider', token => {\n const dividerToken = mergeToken(token, {\n dividerHorizontalWithTextGutterMargin: token.margin,\n dividerHorizontalGutterMargin: token.marginLG,\n sizePaddingEdgeHorizontal: 0\n });\n return [genSharedDividerStyle(dividerToken)];\n}, prepareComponentToken, {\n unitless: {\n orientationMargin: true\n }\n});","\"use client\";\n\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 classNames from 'classnames';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nconst Divider = props => {\n const {\n getPrefixCls,\n direction,\n divider\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n type = 'horizontal',\n orientation = 'center',\n orientationMargin,\n className,\n rootClassName,\n children,\n dashed,\n variant = 'solid',\n plain,\n style\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"type\", \"orientation\", \"orientationMargin\", \"className\", \"rootClassName\", \"children\", \"dashed\", \"variant\", \"plain\", \"style\"]);\n const prefixCls = getPrefixCls('divider', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const hasChildren = !!children;\n const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;\n const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;\n const classString = classNames(prefixCls, divider === null || divider === void 0 ? void 0 : divider.className, hashId, cssVarCls, `${prefixCls}-${type}`, {\n [`${prefixCls}-with-text`]: hasChildren,\n [`${prefixCls}-with-text-${orientation}`]: hasChildren,\n [`${prefixCls}-dashed`]: !!dashed,\n [`${prefixCls}-${variant}`]: variant !== 'solid',\n [`${prefixCls}-plain`]: !!plain,\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,\n [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight\n }, className, rootClassName);\n const memoizedOrientationMargin = React.useMemo(() => {\n if (typeof orientationMargin === 'number') {\n return orientationMargin;\n }\n if (/^\\d+$/.test(orientationMargin)) {\n return Number(orientationMargin);\n }\n return orientationMargin;\n }, [orientationMargin]);\n const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {\n marginLeft: memoizedOrientationMargin\n }), hasCustomMarginRight && {\n marginRight: memoizedOrientationMargin\n });\n // Warning children not work in vertical mode\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Divider');\n process.env.NODE_ENV !== \"production\" ? warning(!children || type !== 'vertical', 'usage', '`children` not working in `vertical` mode.') : void 0;\n }\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: classString,\n style: Object.assign(Object.assign({}, divider === null || divider === void 0 ? void 0 : divider.style), style)\n }, restProps, {\n role: \"separator\"\n }), children && type !== 'vertical' && (/*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-inner-text`,\n style: innerStyle\n }, children))));\n};\nif (process.env.NODE_ENV !== 'production') {\n Divider.displayName = 'Divider';\n}\nexport default Divider;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nvar calcThumbStyle = function calcThumbStyle(targetElement, vertical) {\n if (!targetElement) return null;\n var style = {\n left: targetElement.offsetLeft,\n right: targetElement.parentElement.clientWidth - targetElement.clientWidth - targetElement.offsetLeft,\n width: targetElement.clientWidth,\n top: targetElement.offsetTop,\n bottom: targetElement.parentElement.clientHeight - targetElement.clientHeight - targetElement.offsetTop,\n height: targetElement.clientHeight\n };\n if (vertical) {\n // Adjusts positioning and size for vertical layout by setting horizontal properties to 0 and using vertical properties from the style object.\n return {\n left: 0,\n right: 0,\n width: 0,\n top: style.top,\n bottom: style.bottom,\n height: style.height\n };\n }\n return {\n left: style.left,\n right: style.right,\n width: style.width,\n top: 0,\n bottom: 0,\n height: 0\n };\n};\nvar toPX = function toPX(value) {\n return value !== undefined ? \"\".concat(value, \"px\") : undefined;\n};\nexport default function MotionThumb(props) {\n var prefixCls = props.prefixCls,\n containerRef = props.containerRef,\n value = props.value,\n getValueIndex = props.getValueIndex,\n motionName = props.motionName,\n onMotionStart = props.onMotionStart,\n onMotionEnd = props.onMotionEnd,\n direction = props.direction,\n _props$vertical = props.vertical,\n vertical = _props$vertical === void 0 ? false : _props$vertical;\n var thumbRef = React.useRef(null);\n var _React$useState = React.useState(value),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n prevValue = _React$useState2[0],\n setPrevValue = _React$useState2[1];\n\n // =========================== Effect ===========================\n var findValueElement = function findValueElement(val) {\n var _containerRef$current;\n var index = getValueIndex(val);\n var ele = (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.querySelectorAll(\".\".concat(prefixCls, \"-item\"))[index];\n return (ele === null || ele === void 0 ? void 0 : ele.offsetParent) && ele;\n };\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n prevStyle = _React$useState4[0],\n setPrevStyle = _React$useState4[1];\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n nextStyle = _React$useState6[0],\n setNextStyle = _React$useState6[1];\n useLayoutEffect(function () {\n if (prevValue !== value) {\n var prev = findValueElement(prevValue);\n var next = findValueElement(value);\n var calcPrevStyle = calcThumbStyle(prev, vertical);\n var calcNextStyle = calcThumbStyle(next, vertical);\n setPrevValue(value);\n setPrevStyle(calcPrevStyle);\n setNextStyle(calcNextStyle);\n if (prev && next) {\n onMotionStart();\n } else {\n onMotionEnd();\n }\n }\n }, [value]);\n var thumbStart = React.useMemo(function () {\n if (vertical) {\n var _prevStyle$top;\n return toPX((_prevStyle$top = prevStyle === null || prevStyle === void 0 ? void 0 : prevStyle.top) !== null && _prevStyle$top !== void 0 ? _prevStyle$top : 0);\n }\n if (direction === 'rtl') {\n return toPX(-(prevStyle === null || prevStyle === void 0 ? void 0 : prevStyle.right));\n }\n return toPX(prevStyle === null || prevStyle === void 0 ? void 0 : prevStyle.left);\n }, [vertical, direction, prevStyle]);\n var thumbActive = React.useMemo(function () {\n if (vertical) {\n var _nextStyle$top;\n return toPX((_nextStyle$top = nextStyle === null || nextStyle === void 0 ? void 0 : nextStyle.top) !== null && _nextStyle$top !== void 0 ? _nextStyle$top : 0);\n }\n if (direction === 'rtl') {\n return toPX(-(nextStyle === null || nextStyle === void 0 ? void 0 : nextStyle.right));\n }\n return toPX(nextStyle === null || nextStyle === void 0 ? void 0 : nextStyle.left);\n }, [vertical, direction, nextStyle]);\n\n // =========================== Motion ===========================\n var onAppearStart = function onAppearStart() {\n if (vertical) {\n return {\n transform: 'translateY(var(--thumb-start-top))',\n height: 'var(--thumb-start-height)'\n };\n }\n return {\n transform: 'translateX(var(--thumb-start-left))',\n width: 'var(--thumb-start-width)'\n };\n };\n var onAppearActive = function onAppearActive() {\n if (vertical) {\n return {\n transform: 'translateY(var(--thumb-active-top))',\n height: 'var(--thumb-active-height)'\n };\n }\n return {\n transform: 'translateX(var(--thumb-active-left))',\n width: 'var(--thumb-active-width)'\n };\n };\n var onVisibleChanged = function onVisibleChanged() {\n setPrevStyle(null);\n setNextStyle(null);\n onMotionEnd();\n };\n\n // =========================== Render ===========================\n // No need motion when nothing exist in queue\n if (!prevStyle || !nextStyle) {\n return null;\n }\n return /*#__PURE__*/React.createElement(CSSMotion, {\n visible: true,\n motionName: motionName,\n motionAppear: true,\n onAppearStart: onAppearStart,\n onAppearActive: onAppearActive,\n onVisibleChanged: onVisibleChanged\n }, function (_ref, ref) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedStyle = _objectSpread(_objectSpread({}, motionStyle), {}, {\n '--thumb-start-left': thumbStart,\n '--thumb-start-width': toPX(prevStyle === null || prevStyle === void 0 ? void 0 : prevStyle.width),\n '--thumb-active-left': thumbActive,\n '--thumb-active-width': toPX(nextStyle === null || nextStyle === void 0 ? void 0 : nextStyle.width),\n '--thumb-start-top': thumbStart,\n '--thumb-start-height': toPX(prevStyle === null || prevStyle === void 0 ? void 0 : prevStyle.height),\n '--thumb-active-top': thumbActive,\n '--thumb-active-height': toPX(nextStyle === null || nextStyle === void 0 ? void 0 : nextStyle.height)\n });\n\n // It's little ugly which should be refactor when @umi/test update to latest jsdom\n var motionProps = {\n ref: composeRef(thumbRef, ref),\n style: mergedStyle,\n className: classNames(\"\".concat(prefixCls, \"-thumb\"), motionClassName)\n };\n if (process.env.NODE_ENV === 'test') {\n motionProps['data-test-style'] = JSON.stringify(mergedStyle);\n }\n return /*#__PURE__*/React.createElement(\"div\", motionProps);\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"prefixCls\", \"direction\", \"vertical\", \"options\", \"disabled\", \"defaultValue\", \"value\", \"name\", \"onChange\", \"className\", \"motionName\"];\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport omit from \"rc-util/es/omit\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport MotionThumb from \"./MotionThumb\";\nfunction getValidTitle(option) {\n if (typeof option.title !== 'undefined') {\n return option.title;\n }\n\n // read `label` when title is `undefined`\n if (_typeof(option.label) !== 'object') {\n var _option$label;\n return (_option$label = option.label) === null || _option$label === void 0 ? void 0 : _option$label.toString();\n }\n}\nfunction normalizeOptions(options) {\n return options.map(function (option) {\n if (_typeof(option) === 'object' && option !== null) {\n var validTitle = getValidTitle(option);\n return _objectSpread(_objectSpread({}, option), {}, {\n title: validTitle\n });\n }\n return {\n label: option === null || option === void 0 ? void 0 : option.toString(),\n title: option === null || option === void 0 ? void 0 : option.toString(),\n value: option\n };\n });\n}\nvar InternalSegmentedOption = function InternalSegmentedOption(_ref) {\n var prefixCls = _ref.prefixCls,\n className = _ref.className,\n disabled = _ref.disabled,\n checked = _ref.checked,\n label = _ref.label,\n title = _ref.title,\n value = _ref.value,\n name = _ref.name,\n onChange = _ref.onChange,\n onFocus = _ref.onFocus,\n onBlur = _ref.onBlur,\n onKeyDown = _ref.onKeyDown,\n onKeyUp = _ref.onKeyUp,\n onMouseDown = _ref.onMouseDown;\n var handleChange = function handleChange(event) {\n if (disabled) {\n return;\n }\n onChange(event, value);\n };\n return /*#__PURE__*/React.createElement(\"label\", {\n className: classNames(className, _defineProperty({}, \"\".concat(prefixCls, \"-item-disabled\"), disabled)),\n onMouseDown: onMouseDown\n }, /*#__PURE__*/React.createElement(\"input\", {\n name: name,\n className: \"\".concat(prefixCls, \"-item-input\"),\n type: \"radio\",\n disabled: disabled,\n checked: checked,\n onChange: handleChange,\n onFocus: onFocus,\n onBlur: onBlur,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-item-label\"),\n title: title,\n \"aria-selected\": checked\n }, label));\n};\nvar Segmented = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _segmentedOptions$, _classNames2;\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-segmented' : _props$prefixCls,\n direction = props.direction,\n vertical = props.vertical,\n _props$options = props.options,\n options = _props$options === void 0 ? [] : _props$options,\n disabled = props.disabled,\n defaultValue = props.defaultValue,\n value = props.value,\n name = props.name,\n onChange = props.onChange,\n _props$className = props.className,\n className = _props$className === void 0 ? '' : _props$className,\n _props$motionName = props.motionName,\n motionName = _props$motionName === void 0 ? 'thumb-motion' : _props$motionName,\n restProps = _objectWithoutProperties(props, _excluded);\n var containerRef = React.useRef(null);\n var mergedRef = React.useMemo(function () {\n return composeRef(containerRef, ref);\n }, [containerRef, ref]);\n var segmentedOptions = React.useMemo(function () {\n return normalizeOptions(options);\n }, [options]);\n\n // Note: We should not auto switch value when value not exist in options\n // which may break single source of truth.\n var _useMergedState = useMergedState((_segmentedOptions$ = segmentedOptions[0]) === null || _segmentedOptions$ === void 0 ? void 0 : _segmentedOptions$.value, {\n value: value,\n defaultValue: defaultValue\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n rawValue = _useMergedState2[0],\n setRawValue = _useMergedState2[1];\n\n // ======================= Change ========================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n thumbShow = _React$useState2[0],\n setThumbShow = _React$useState2[1];\n var handleChange = function handleChange(event, val) {\n setRawValue(val);\n onChange === null || onChange === void 0 || onChange(val);\n };\n var divProps = omit(restProps, ['children']);\n\n // ======================= Focus ========================\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n isKeyboard = _React$useState4[0],\n setIsKeyboard = _React$useState4[1];\n var _React$useState5 = React.useState(false),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n isFocused = _React$useState6[0],\n setIsFocused = _React$useState6[1];\n var handleFocus = function handleFocus() {\n setIsFocused(true);\n };\n var handleBlur = function handleBlur() {\n setIsFocused(false);\n };\n var handleMouseDown = function handleMouseDown() {\n setIsKeyboard(false);\n };\n\n // capture keyboard tab interaction for correct focus style\n var handleKeyUp = function handleKeyUp(event) {\n if (event.key === 'Tab') {\n setIsKeyboard(true);\n }\n };\n\n // ======================= Keyboard ========================\n var onOffset = function onOffset(offset) {\n var currentIndex = segmentedOptions.findIndex(function (option) {\n return option.value === rawValue;\n });\n var total = segmentedOptions.length;\n var nextIndex = (currentIndex + offset + total) % total;\n var nextOption = segmentedOptions[nextIndex];\n if (nextOption) {\n setRawValue(nextOption.value);\n onChange === null || onChange === void 0 || onChange(nextOption.value);\n }\n };\n var handleKeyDown = function handleKeyDown(event) {\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp':\n onOffset(-1);\n break;\n case 'ArrowRight':\n case 'ArrowDown':\n onOffset(1);\n break;\n }\n };\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n role: \"radiogroup\",\n \"aria-label\": \"segmented control\",\n tabIndex: disabled ? undefined : 0\n }, divProps, {\n className: classNames(prefixCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-vertical\"), vertical), _classNames2), className),\n ref: mergedRef\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-group\")\n }, /*#__PURE__*/React.createElement(MotionThumb, {\n vertical: vertical,\n prefixCls: prefixCls,\n value: rawValue,\n containerRef: containerRef,\n motionName: \"\".concat(prefixCls, \"-\").concat(motionName),\n direction: direction,\n getValueIndex: function getValueIndex(val) {\n return segmentedOptions.findIndex(function (n) {\n return n.value === val;\n });\n },\n onMotionStart: function onMotionStart() {\n setThumbShow(true);\n },\n onMotionEnd: function onMotionEnd() {\n setThumbShow(false);\n }\n }), segmentedOptions.map(function (segmentedOption) {\n var _classNames3;\n return /*#__PURE__*/React.createElement(InternalSegmentedOption, _extends({}, segmentedOption, {\n name: name,\n key: segmentedOption.value,\n prefixCls: prefixCls,\n className: classNames(segmentedOption.className, \"\".concat(prefixCls, \"-item\"), (_classNames3 = {}, _defineProperty(_classNames3, \"\".concat(prefixCls, \"-item-selected\"), segmentedOption.value === rawValue && !thumbShow), _defineProperty(_classNames3, \"\".concat(prefixCls, \"-item-focused\"), isFocused && isKeyboard && segmentedOption.value === rawValue), _classNames3)),\n checked: segmentedOption.value === rawValue,\n onChange: handleChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp,\n onMouseDown: handleMouseDown,\n disabled: !!disabled || !!segmentedOption.disabled\n }));\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Segmented.displayName = 'Segmented';\n}\nvar TypedSegmented = Segmented;\nexport default TypedSegmented;","import { unit } from '@ant-design/cssinjs';\nimport { genFocusOutline, genFocusStyle, resetComponent, textEllipsis } from '../../style';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================== Mixins ==============================\nfunction getItemDisabledStyle(cls, token) {\n return {\n [`${cls}, ${cls}:hover, ${cls}:focus`]: {\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n }\n };\n}\nfunction getItemSelectedStyle(token) {\n return {\n backgroundColor: token.itemSelectedBg,\n boxShadow: token.boxShadowTertiary\n };\n}\nconst segmentedTextEllipsisCss = Object.assign({\n overflow: 'hidden'\n}, textEllipsis);\n// ============================== Styles ==============================\nconst genSegmentedStyle = token => {\n const {\n componentCls\n } = token;\n const labelHeight = token.calc(token.controlHeight).sub(token.calc(token.trackPadding).mul(2)).equal();\n const labelHeightLG = token.calc(token.controlHeightLG).sub(token.calc(token.trackPadding).mul(2)).equal();\n const labelHeightSM = token.calc(token.controlHeightSM).sub(token.calc(token.trackPadding).mul(2)).equal();\n return {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), {\n display: 'inline-block',\n padding: token.trackPadding,\n color: token.itemColor,\n background: token.trackBg,\n borderRadius: token.borderRadius,\n transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`\n }), genFocusStyle(token)), {\n [`${componentCls}-group`]: {\n position: 'relative',\n display: 'flex',\n alignItems: 'stretch',\n justifyItems: 'flex-start',\n flexDirection: 'row',\n width: '100%'\n },\n // RTL styles\n [`&${componentCls}-rtl`]: {\n direction: 'rtl'\n },\n [`&${componentCls}-vertical`]: {\n [`${componentCls}-group`]: {\n flexDirection: 'column'\n },\n [`${componentCls}-thumb`]: {\n width: '100%',\n height: 0,\n padding: `0 ${unit(token.paddingXXS)}`\n }\n },\n // block styles\n [`&${componentCls}-block`]: {\n display: 'flex'\n },\n [`&${componentCls}-block ${componentCls}-item`]: {\n flex: 1,\n minWidth: 0\n },\n // item styles\n [`${componentCls}-item`]: {\n position: 'relative',\n textAlign: 'center',\n cursor: 'pointer',\n transition: `color ${token.motionDurationMid} ${token.motionEaseInOut}`,\n borderRadius: token.borderRadiusSM,\n // Fix Safari render bug\n // https://github.com/ant-design/ant-design/issues/45250\n transform: 'translateZ(0)',\n '&-selected': Object.assign(Object.assign({}, getItemSelectedStyle(token)), {\n color: token.itemSelectedColor\n }),\n '&-focused': Object.assign({}, genFocusOutline(token)),\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n zIndex: -1,\n width: '100%',\n height: '100%',\n top: 0,\n insetInlineStart: 0,\n borderRadius: 'inherit',\n transition: `background-color ${token.motionDurationMid}`,\n // This is mandatory to make it not clickable or hoverable\n // Ref: https://github.com/ant-design/ant-design/issues/40888\n pointerEvents: 'none'\n },\n [`&:hover:not(${componentCls}-item-selected):not(${componentCls}-item-disabled)`]: {\n color: token.itemHoverColor,\n '&::after': {\n backgroundColor: token.itemHoverBg\n }\n },\n [`&:active:not(${componentCls}-item-selected):not(${componentCls}-item-disabled)`]: {\n color: token.itemHoverColor,\n '&::after': {\n backgroundColor: token.itemActiveBg\n }\n },\n '&-label': Object.assign({\n minHeight: labelHeight,\n lineHeight: unit(labelHeight),\n padding: `0 ${unit(token.segmentedPaddingHorizontal)}`\n }, segmentedTextEllipsisCss),\n // syntactic sugar to add `icon` for Segmented Item\n '&-icon + *': {\n marginInlineStart: token.calc(token.marginSM).div(2).equal()\n },\n '&-input': {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineStart: 0,\n width: 0,\n height: 0,\n opacity: 0,\n pointerEvents: 'none'\n }\n },\n // thumb styles\n [`${componentCls}-thumb`]: Object.assign(Object.assign({}, getItemSelectedStyle(token)), {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineStart: 0,\n width: 0,\n height: '100%',\n padding: `${unit(token.paddingXXS)} 0`,\n borderRadius: token.borderRadiusSM,\n transition: `transform ${token.motionDurationSlow} ${token.motionEaseInOut}, height ${token.motionDurationSlow} ${token.motionEaseInOut}`,\n [`& ~ ${componentCls}-item:not(${componentCls}-item-selected):not(${componentCls}-item-disabled)::after`]: {\n backgroundColor: 'transparent'\n }\n }),\n // size styles\n [`&${componentCls}-lg`]: {\n borderRadius: token.borderRadiusLG,\n [`${componentCls}-item-label`]: {\n minHeight: labelHeightLG,\n lineHeight: unit(labelHeightLG),\n padding: `0 ${unit(token.segmentedPaddingHorizontal)}`,\n fontSize: token.fontSizeLG\n },\n [`${componentCls}-item, ${componentCls}-thumb`]: {\n borderRadius: token.borderRadius\n }\n },\n [`&${componentCls}-sm`]: {\n borderRadius: token.borderRadiusSM,\n [`${componentCls}-item-label`]: {\n minHeight: labelHeightSM,\n lineHeight: unit(labelHeightSM),\n padding: `0 ${unit(token.segmentedPaddingHorizontalSM)}`\n },\n [`${componentCls}-item, ${componentCls}-thumb`]: {\n borderRadius: token.borderRadiusXS\n }\n }\n }), getItemDisabledStyle(`&-disabled ${componentCls}-item`, token)), getItemDisabledStyle(`${componentCls}-item-disabled`, token)), {\n // transition effect when `appear-active`\n [`${componentCls}-thumb-motion-appear-active`]: {\n transition: `transform ${token.motionDurationSlow} ${token.motionEaseInOut}, width ${token.motionDurationSlow} ${token.motionEaseInOut}`,\n willChange: 'transform, width'\n }\n })\n };\n};\n// ============================== Export ==============================\nexport const prepareComponentToken = token => {\n const {\n colorTextLabel,\n colorText,\n colorFillSecondary,\n colorBgElevated,\n colorFill,\n lineWidthBold,\n colorBgLayout\n } = token;\n return {\n trackPadding: lineWidthBold,\n trackBg: colorBgLayout,\n itemColor: colorTextLabel,\n itemHoverColor: colorText,\n itemHoverBg: colorFillSecondary,\n itemSelectedBg: colorBgElevated,\n itemActiveBg: colorFill,\n itemSelectedColor: colorText\n };\n};\nexport default genStyleHooks('Segmented', token => {\n const {\n lineWidth,\n calc\n } = token;\n const segmentedToken = mergeToken(token, {\n segmentedPaddingHorizontal: calc(token.controlPaddingHorizontal).sub(lineWidth).equal(),\n segmentedPaddingHorizontalSM: calc(token.controlPaddingHorizontalSM).sub(lineWidth).equal()\n });\n return [genSegmentedStyle(segmentedToken)];\n}, prepareComponentToken);","\"use client\";\n\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 classNames from 'classnames';\nimport RcSegmented from 'rc-segmented';\nimport { ConfigContext } from '../config-provider';\nimport useSize from '../config-provider/hooks/useSize';\nimport useStyle from './style';\nimport useId from \"rc-util/es/hooks/useId\";\nfunction isSegmentedLabeledOptionWithIcon(option) {\n return typeof option === 'object' && !!(option === null || option === void 0 ? void 0 : option.icon);\n}\nconst InternalSegmented = /*#__PURE__*/React.forwardRef((props, ref) => {\n const defaultName = useId();\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n block,\n options = [],\n size: customSize = 'middle',\n style,\n vertical,\n name = defaultName\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"rootClassName\", \"block\", \"options\", \"size\", \"style\", \"vertical\", \"name\"]);\n const {\n getPrefixCls,\n direction,\n segmented\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('segmented', customizePrefixCls);\n // Style\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n // ===================== Size =====================\n const mergedSize = useSize(customSize);\n // syntactic sugar to support `icon` for Segmented Item\n const extendedOptions = React.useMemo(() => options.map(option => {\n if (isSegmentedLabeledOptionWithIcon(option)) {\n const {\n icon,\n label\n } = option,\n restOption = __rest(option, [\"icon\", \"label\"]);\n return Object.assign(Object.assign({}, restOption), {\n label: (/*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-item-icon`\n }, icon), label && /*#__PURE__*/React.createElement(\"span\", null, label)))\n });\n }\n return option;\n }), [options, prefixCls]);\n const cls = classNames(className, rootClassName, segmented === null || segmented === void 0 ? void 0 : segmented.className, {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-vertical`]: vertical\n }, hashId, cssVarCls);\n const mergedStyle = Object.assign(Object.assign({}, segmented === null || segmented === void 0 ? void 0 : segmented.style), style);\n return wrapCSSVar(/*#__PURE__*/React.createElement(RcSegmented, Object.assign({}, restProps, {\n name: name,\n className: cls,\n style: mergedStyle,\n options: extendedOptions,\n ref: ref,\n prefixCls: prefixCls,\n direction: direction,\n vertical: vertical\n })));\n});\nconst Segmented = InternalSegmented;\nif (process.env.NODE_ENV !== 'production') {\n Segmented.displayName = 'Segmented';\n}\nexport default Segmented;","import React from 'react';\nexport const PanelPickerContext = /*#__PURE__*/React.createContext({});\nexport const PanelPresetsContext = /*#__PURE__*/React.createContext({});","\"use client\";\n\nimport React from 'react';\nimport { generateColor } from '../util';\nconst ColorClear = _ref => {\n let {\n prefixCls,\n value,\n onChange\n } = _ref;\n const handleClick = () => {\n if (onChange && value && !value.cleared) {\n const hsba = value.toHsb();\n hsba.a = 0;\n const genColor = generateColor(hsba);\n genColor.cleared = true;\n onChange(genColor);\n }\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-clear`,\n onClick: handleClick\n });\n};\nexport default ColorClear;","import * as React from 'react';\nimport classNames from 'classnames';\nvar TransBtn = function TransBtn(props) {\n var className = props.className,\n customizeIcon = props.customizeIcon,\n customizeIconProps = props.customizeIconProps,\n children = props.children,\n _onMouseDown = props.onMouseDown,\n onClick = props.onClick;\n var icon = typeof customizeIcon === 'function' ? customizeIcon(customizeIconProps) : customizeIcon;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: className,\n onMouseDown: function onMouseDown(event) {\n event.preventDefault();\n _onMouseDown === null || _onMouseDown === void 0 || _onMouseDown(event);\n },\n style: {\n userSelect: 'none',\n WebkitUserSelect: 'none'\n },\n unselectable: \"on\",\n onClick: onClick,\n \"aria-hidden\": true\n }, icon !== undefined ? icon : /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(className.split(/\\s+/).map(function (cls) {\n return \"\".concat(cls, \"-icon\");\n }))\n }, children));\n};\nexport default TransBtn;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport TransBtn from \"../TransBtn\";\nimport React from 'react';\nexport var useAllowClear = function useAllowClear(prefixCls, onClearMouseDown, displayValues, allowClear, clearIcon) {\n var disabled = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n var mergedSearchValue = arguments.length > 6 ? arguments[6] : undefined;\n var mode = arguments.length > 7 ? arguments[7] : undefined;\n var mergedClearIcon = React.useMemo(function () {\n if (_typeof(allowClear) === 'object') {\n return allowClear.clearIcon;\n }\n if (clearIcon) {\n return clearIcon;\n }\n }, [allowClear, clearIcon]);\n var mergedAllowClear = React.useMemo(function () {\n if (!disabled && !!allowClear && (displayValues.length || mergedSearchValue) && !(mode === 'combobox' && mergedSearchValue === '')) {\n return true;\n }\n return false;\n }, [allowClear, disabled, displayValues.length, mergedSearchValue, mode]);\n return {\n allowClear: mergedAllowClear,\n clearIcon: /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(prefixCls, \"-clear\"),\n onMouseDown: onClearMouseDown,\n customizeIcon: mergedClearIcon\n }, \"\\xD7\")\n };\n};","/**\n * BaseSelect provide some parsed data into context.\n * You can use this hooks to get them.\n */\n\nimport * as React from 'react';\nexport var BaseSelectContext = /*#__PURE__*/React.createContext(null);\nexport default function useBaseProps() {\n return React.useContext(BaseSelectContext);\n}","import * as React from 'react';\n\n/**\n * Locker return cached mark.\n * If set to `true`, will return `true` in a short time even if set `false`.\n * If set to `false` and then set to `true`, will change to `true`.\n * And after time duration, it will back to `null` automatically.\n */\nexport default function useLock() {\n var duration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 250;\n var lockRef = React.useRef(null);\n var timeoutRef = React.useRef(null);\n\n // Clean up\n React.useEffect(function () {\n return function () {\n window.clearTimeout(timeoutRef.current);\n };\n }, []);\n function doLock(locked) {\n if (locked || lockRef.current === null) {\n lockRef.current = locked;\n }\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = window.setTimeout(function () {\n lockRef.current = null;\n }, duration);\n }\n return [function () {\n return lockRef.current;\n }, doLock];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { warning } from \"rc-util/es/warning\";\nvar Input = function Input(props, ref) {\n var _inputNode2;\n var prefixCls = props.prefixCls,\n id = props.id,\n inputElement = props.inputElement,\n disabled = props.disabled,\n tabIndex = props.tabIndex,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n editable = props.editable,\n activeDescendantId = props.activeDescendantId,\n value = props.value,\n maxLength = props.maxLength,\n _onKeyDown = props.onKeyDown,\n _onMouseDown = props.onMouseDown,\n _onChange = props.onChange,\n onPaste = props.onPaste,\n _onCompositionStart = props.onCompositionStart,\n _onCompositionEnd = props.onCompositionEnd,\n _onBlur = props.onBlur,\n open = props.open,\n attrs = props.attrs;\n var inputNode = inputElement || /*#__PURE__*/React.createElement(\"input\", null);\n var _inputNode = inputNode,\n originRef = _inputNode.ref,\n originProps = _inputNode.props;\n var onOriginKeyDown = originProps.onKeyDown,\n onOriginChange = originProps.onChange,\n onOriginMouseDown = originProps.onMouseDown,\n onOriginCompositionStart = originProps.onCompositionStart,\n onOriginCompositionEnd = originProps.onCompositionEnd,\n onOriginBlur = originProps.onBlur,\n style = originProps.style;\n warning(!('maxLength' in inputNode.props), \"Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled.\");\n inputNode = /*#__PURE__*/React.cloneElement(inputNode, _objectSpread(_objectSpread(_objectSpread({\n type: 'search'\n }, originProps), {}, {\n // Override over origin props\n id: id,\n ref: composeRef(ref, originRef),\n disabled: disabled,\n tabIndex: tabIndex,\n autoComplete: autoComplete || 'off',\n autoFocus: autoFocus,\n className: classNames(\"\".concat(prefixCls, \"-selection-search-input\"), (_inputNode2 = inputNode) === null || _inputNode2 === void 0 || (_inputNode2 = _inputNode2.props) === null || _inputNode2 === void 0 ? void 0 : _inputNode2.className),\n role: 'combobox',\n 'aria-expanded': open || false,\n 'aria-haspopup': 'listbox',\n 'aria-owns': \"\".concat(id, \"_list\"),\n 'aria-autocomplete': 'list',\n 'aria-controls': \"\".concat(id, \"_list\"),\n 'aria-activedescendant': open ? activeDescendantId : undefined\n }, attrs), {}, {\n value: editable ? value : '',\n maxLength: maxLength,\n readOnly: !editable,\n unselectable: !editable ? 'on' : null,\n style: _objectSpread(_objectSpread({}, style), {}, {\n opacity: editable ? null : 0\n }),\n onKeyDown: function onKeyDown(event) {\n _onKeyDown(event);\n if (onOriginKeyDown) {\n onOriginKeyDown(event);\n }\n },\n onMouseDown: function onMouseDown(event) {\n _onMouseDown(event);\n if (onOriginMouseDown) {\n onOriginMouseDown(event);\n }\n },\n onChange: function onChange(event) {\n _onChange(event);\n if (onOriginChange) {\n onOriginChange(event);\n }\n },\n onCompositionStart: function onCompositionStart(event) {\n _onCompositionStart(event);\n if (onOriginCompositionStart) {\n onOriginCompositionStart(event);\n }\n },\n onCompositionEnd: function onCompositionEnd(event) {\n _onCompositionEnd(event);\n if (onOriginCompositionEnd) {\n onOriginCompositionEnd(event);\n }\n },\n onPaste: onPaste,\n onBlur: function onBlur(event) {\n _onBlur(event);\n if (onOriginBlur) {\n onOriginBlur(event);\n }\n }\n }));\n return inputNode;\n};\nvar RefInput = /*#__PURE__*/React.forwardRef(Input);\nif (process.env.NODE_ENV !== 'production') {\n RefInput.displayName = 'Input';\n}\nexport default RefInput;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport function toArray(value) {\n if (Array.isArray(value)) {\n return value;\n }\n return value !== undefined ? [value] : [];\n}\nexport var isClient = typeof window !== 'undefined' && window.document && window.document.documentElement;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && isClient;\nexport function hasValue(value) {\n return value !== undefined && value !== null;\n}\n\n/** combo mode no value judgment function */\nexport function isComboNoValue(value) {\n return !value && value !== 0;\n}\nfunction isTitleType(title) {\n return ['string', 'number'].includes(_typeof(title));\n}\nexport function getTitle(item) {\n var title = undefined;\n if (item) {\n if (isTitleType(item.title)) {\n title = item.title.toString();\n } else if (isTitleType(item.label)) {\n title = item.label.toString();\n }\n }\n return title;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useState } from 'react';\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Overflow from 'rc-overflow';\nimport TransBtn from \"../TransBtn\";\nimport Input from \"./Input\";\nimport useLayoutEffect from \"../hooks/useLayoutEffect\";\nimport { getTitle } from \"../utils/commonUtil\";\nfunction itemKey(value) {\n var _value$key;\n return (_value$key = value.key) !== null && _value$key !== void 0 ? _value$key : value.value;\n}\nvar onPreventMouseDown = function onPreventMouseDown(event) {\n event.preventDefault();\n event.stopPropagation();\n};\nvar SelectSelector = function SelectSelector(props) {\n var id = props.id,\n prefixCls = props.prefixCls,\n values = props.values,\n open = props.open,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n inputRef = props.inputRef,\n placeholder = props.placeholder,\n disabled = props.disabled,\n mode = props.mode,\n showSearch = props.showSearch,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n tabIndex = props.tabIndex,\n removeIcon = props.removeIcon,\n maxTagCount = props.maxTagCount,\n maxTagTextLength = props.maxTagTextLength,\n _props$maxTagPlacehol = props.maxTagPlaceholder,\n maxTagPlaceholder = _props$maxTagPlacehol === void 0 ? function (omittedValues) {\n return \"+ \".concat(omittedValues.length, \" ...\");\n } : _props$maxTagPlacehol,\n tagRender = props.tagRender,\n onToggleOpen = props.onToggleOpen,\n onRemove = props.onRemove,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd,\n onInputBlur = props.onInputBlur;\n var measureRef = React.useRef(null);\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n inputWidth = _useState2[0],\n setInputWidth = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n focused = _useState4[0],\n setFocused = _useState4[1];\n var selectionPrefixCls = \"\".concat(prefixCls, \"-selection\");\n\n // ===================== Search ======================\n var inputValue = open || mode === 'multiple' && autoClearSearchValue === false || mode === 'tags' ? searchValue : '';\n var inputEditable = mode === 'tags' || mode === 'multiple' && autoClearSearchValue === false || showSearch && (open || focused);\n\n // We measure width and set to the input immediately\n useLayoutEffect(function () {\n setInputWidth(measureRef.current.scrollWidth);\n }, [inputValue]);\n\n // ===================== Render ======================\n // >>> Render Selector Node. Includes Item & Rest\n var defaultRenderSelector = function defaultRenderSelector(item, content, itemDisabled, closable, onClose) {\n return /*#__PURE__*/React.createElement(\"span\", {\n title: getTitle(item),\n className: classNames(\"\".concat(selectionPrefixCls, \"-item\"), _defineProperty({}, \"\".concat(selectionPrefixCls, \"-item-disabled\"), itemDisabled))\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-item-content\")\n }, content), closable && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(selectionPrefixCls, \"-item-remove\"),\n onMouseDown: onPreventMouseDown,\n onClick: onClose,\n customizeIcon: removeIcon\n }, \"\\xD7\"));\n };\n var customizeRenderSelector = function customizeRenderSelector(value, content, itemDisabled, closable, onClose, isMaxTag) {\n var onMouseDown = function onMouseDown(e) {\n onPreventMouseDown(e);\n onToggleOpen(!open);\n };\n return /*#__PURE__*/React.createElement(\"span\", {\n onMouseDown: onMouseDown\n }, tagRender({\n label: content,\n value: value,\n disabled: itemDisabled,\n closable: closable,\n onClose: onClose,\n isMaxTag: !!isMaxTag\n }));\n };\n var renderItem = function renderItem(valueItem) {\n var itemDisabled = valueItem.disabled,\n label = valueItem.label,\n value = valueItem.value;\n var closable = !disabled && !itemDisabled;\n var displayLabel = label;\n if (typeof maxTagTextLength === 'number') {\n if (typeof label === 'string' || typeof label === 'number') {\n var strLabel = String(displayLabel);\n if (strLabel.length > maxTagTextLength) {\n displayLabel = \"\".concat(strLabel.slice(0, maxTagTextLength), \"...\");\n }\n }\n }\n var onClose = function onClose(event) {\n if (event) {\n event.stopPropagation();\n }\n onRemove(valueItem);\n };\n return typeof tagRender === 'function' ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose) : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose);\n };\n var renderRest = function renderRest(omittedValues) {\n // https://github.com/ant-design/ant-design/issues/48930\n if (!values.length) {\n return null;\n }\n var content = typeof maxTagPlaceholder === 'function' ? maxTagPlaceholder(omittedValues) : maxTagPlaceholder;\n return typeof tagRender === 'function' ? customizeRenderSelector(undefined, content, false, false, undefined, true) : defaultRenderSelector({\n title: content\n }, content, false);\n };\n\n // >>> Input Node\n var inputNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(selectionPrefixCls, \"-search\"),\n style: {\n width: inputWidth\n },\n onFocus: function onFocus() {\n setFocused(true);\n },\n onBlur: function onBlur() {\n setFocused(false);\n }\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n open: open,\n prefixCls: prefixCls,\n id: id,\n inputElement: null,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: onInputChange,\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n onBlur: onInputBlur,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true)\n }), /*#__PURE__*/React.createElement(\"span\", {\n ref: measureRef,\n className: \"\".concat(selectionPrefixCls, \"-search-mirror\"),\n \"aria-hidden\": true\n }, inputValue, \"\\xA0\"));\n\n // >>> Selections\n var selectionNode = /*#__PURE__*/React.createElement(Overflow, {\n prefixCls: \"\".concat(selectionPrefixCls, \"-overflow\"),\n data: values,\n renderItem: renderItem,\n renderRest: renderRest,\n suffix: inputNode,\n itemKey: itemKey,\n maxCount: maxTagCount\n });\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-wrap\")\n }, selectionNode, !values.length && !inputValue && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-placeholder\")\n }, placeholder));\n};\nexport default SelectSelector;","/* eslint-disable react-hooks/rules-of-hooks */\nimport * as React from 'react';\nimport { isBrowserClient } from \"../utils/commonUtil\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nexport default function useLayoutEffect(effect, deps) {\n // Never happen in test env\n if (isBrowserClient) {\n /* istanbul ignore next */\n React.useLayoutEffect(effect, deps);\n } else {\n React.useEffect(effect, deps);\n }\n}\n/* eslint-enable */","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Input from \"./Input\";\nimport { getTitle } from \"../utils/commonUtil\";\nvar SingleSelector = function SingleSelector(props) {\n var inputElement = props.inputElement,\n prefixCls = props.prefixCls,\n id = props.id,\n inputRef = props.inputRef,\n disabled = props.disabled,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n mode = props.mode,\n open = props.open,\n values = props.values,\n placeholder = props.placeholder,\n tabIndex = props.tabIndex,\n showSearch = props.showSearch,\n searchValue = props.searchValue,\n activeValue = props.activeValue,\n maxLength = props.maxLength,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd,\n onInputBlur = props.onInputBlur,\n title = props.title;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n inputChanged = _React$useState2[0],\n setInputChanged = _React$useState2[1];\n var combobox = mode === 'combobox';\n var inputEditable = combobox || showSearch;\n var item = values[0];\n var inputValue = searchValue || '';\n if (combobox && activeValue && !inputChanged) {\n inputValue = activeValue;\n }\n React.useEffect(function () {\n if (combobox) {\n setInputChanged(false);\n }\n }, [combobox, activeValue]);\n\n // Not show text when closed expect combobox mode\n var hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue;\n\n // Get title of selection item\n var selectionTitle = title === undefined ? getTitle(item) : title;\n var placeholderNode = React.useMemo(function () {\n if (item) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-placeholder\"),\n style: hasTextInput ? {\n visibility: 'hidden'\n } : undefined\n }, placeholder);\n }, [item, hasTextInput, placeholder, prefixCls]);\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-wrap\")\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-search\")\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n prefixCls: prefixCls,\n id: id,\n open: open,\n inputElement: inputElement,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: function onChange(e) {\n setInputChanged(true);\n onInputChange(e);\n },\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n onBlur: onInputBlur,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true),\n maxLength: combobox ? maxLength : undefined\n })), !combobox && item ? /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-item\"),\n title: selectionTitle\n // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位\n // https://github.com/ant-design/ant-design/issues/27688\n // https://github.com/ant-design/ant-design/issues/41530\n ,\n style: hasTextInput ? {\n visibility: 'hidden'\n } : undefined\n }, item.label) : null, placeholderNode);\n};\nexport default SingleSelector;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/**\n * Cursor rule:\n * 1. Only `showSearch` enabled\n * 2. Only `open` is `true`\n * 3. When typing, set `open` to `true` which hit rule of 2\n *\n * Accessibility:\n * - https://www.w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html\n */\n\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport useLock from \"../hooks/useLock\";\nimport { isValidateOpenKey } from \"../utils/keyUtil\";\nimport MultipleSelector from \"./MultipleSelector\";\nimport SingleSelector from \"./SingleSelector\";\nvar Selector = function Selector(props, ref) {\n var inputRef = useRef(null);\n var compositionStatusRef = useRef(false);\n var prefixCls = props.prefixCls,\n open = props.open,\n mode = props.mode,\n showSearch = props.showSearch,\n tokenWithEnter = props.tokenWithEnter,\n disabled = props.disabled,\n prefix = props.prefix,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSubmit = props.onSearchSubmit,\n onToggleOpen = props.onToggleOpen,\n onInputKeyDown = props.onInputKeyDown,\n onInputBlur = props.onInputBlur,\n domRef = props.domRef;\n\n // ======================= Ref =======================\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus(options) {\n inputRef.current.focus(options);\n },\n blur: function blur() {\n inputRef.current.blur();\n }\n };\n });\n\n // ====================== Input ======================\n var _useLock = useLock(0),\n _useLock2 = _slicedToArray(_useLock, 2),\n getInputMouseDown = _useLock2[0],\n setInputMouseDown = _useLock2[1];\n var onInternalInputKeyDown = function onInternalInputKeyDown(event) {\n var which = event.which;\n\n // Compatible with multiple lines in TextArea\n var isTextAreaElement = inputRef.current instanceof HTMLTextAreaElement;\n if (!isTextAreaElement && open && (which === KeyCode.UP || which === KeyCode.DOWN)) {\n event.preventDefault();\n }\n if (onInputKeyDown) {\n onInputKeyDown(event);\n }\n if (which === KeyCode.ENTER && mode === 'tags' && !compositionStatusRef.current && !open) {\n // When menu isn't open, OptionList won't trigger a value change\n // So when enter is pressed, the tag's input value should be emitted here to let selector know\n onSearchSubmit === null || onSearchSubmit === void 0 || onSearchSubmit(event.target.value);\n }\n // Move within the text box\n if (isTextAreaElement && !open && ~[KeyCode.UP, KeyCode.DOWN, KeyCode.LEFT, KeyCode.RIGHT].indexOf(which)) {\n return;\n }\n if (isValidateOpenKey(which)) {\n onToggleOpen(true);\n }\n };\n\n /**\n * We can not use `findDOMNode` sine it will get warning,\n * have to use timer to check if is input element.\n */\n var onInternalInputMouseDown = function onInternalInputMouseDown() {\n setInputMouseDown(true);\n };\n\n // When paste come, ignore next onChange\n var pastedTextRef = useRef(null);\n var triggerOnSearch = function triggerOnSearch(value) {\n if (onSearch(value, true, compositionStatusRef.current) !== false) {\n onToggleOpen(true);\n }\n };\n var onInputCompositionStart = function onInputCompositionStart() {\n compositionStatusRef.current = true;\n };\n var onInputCompositionEnd = function onInputCompositionEnd(e) {\n compositionStatusRef.current = false;\n\n // Trigger search again to support `tokenSeparators` with typewriting\n if (mode !== 'combobox') {\n triggerOnSearch(e.target.value);\n }\n };\n var onInputChange = function onInputChange(event) {\n var value = event.target.value;\n\n // Pasted text should replace back to origin content\n if (tokenWithEnter && pastedTextRef.current && /[\\r\\n]/.test(pastedTextRef.current)) {\n // CRLF will be treated as a single space for input element\n var replacedText = pastedTextRef.current.replace(/[\\r\\n]+$/, '').replace(/\\r\\n/g, ' ').replace(/[\\r\\n]/g, ' ');\n value = value.replace(replacedText, pastedTextRef.current);\n }\n pastedTextRef.current = null;\n triggerOnSearch(value);\n };\n var onInputPaste = function onInputPaste(e) {\n var clipboardData = e.clipboardData;\n var value = clipboardData === null || clipboardData === void 0 ? void 0 : clipboardData.getData('text');\n pastedTextRef.current = value || '';\n };\n var onClick = function onClick(_ref) {\n var target = _ref.target;\n if (target !== inputRef.current) {\n // Should focus input if click the selector\n var isIE = document.body.style.msTouchAction !== undefined;\n if (isIE) {\n setTimeout(function () {\n inputRef.current.focus();\n });\n } else {\n inputRef.current.focus();\n }\n }\n };\n var onMouseDown = function onMouseDown(event) {\n var inputMouseDown = getInputMouseDown();\n\n // when mode is combobox and it is disabled, don't prevent default behavior\n // https://github.com/ant-design/ant-design/issues/37320\n // https://github.com/ant-design/ant-design/issues/48281\n if (event.target !== inputRef.current && !inputMouseDown && !(mode === 'combobox' && disabled)) {\n event.preventDefault();\n }\n if (mode !== 'combobox' && (!showSearch || !inputMouseDown) || !open) {\n if (open && autoClearSearchValue !== false) {\n onSearch('', true, false);\n }\n onToggleOpen();\n }\n };\n\n // ================= Inner Selector ==================\n var sharedProps = {\n inputRef: inputRef,\n onInputKeyDown: onInternalInputKeyDown,\n onInputMouseDown: onInternalInputMouseDown,\n onInputChange: onInputChange,\n onInputPaste: onInputPaste,\n onInputCompositionStart: onInputCompositionStart,\n onInputCompositionEnd: onInputCompositionEnd,\n onInputBlur: onInputBlur\n };\n var selectNode = mode === 'multiple' || mode === 'tags' ? /*#__PURE__*/React.createElement(MultipleSelector, _extends({}, props, sharedProps)) : /*#__PURE__*/React.createElement(SingleSelector, _extends({}, props, sharedProps));\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: domRef,\n className: \"\".concat(prefixCls, \"-selector\"),\n onClick: onClick,\n onMouseDown: onMouseDown\n }, prefix && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-prefix\")\n }, prefix), selectNode);\n};\nvar ForwardSelector = /*#__PURE__*/React.forwardRef(Selector);\nif (process.env.NODE_ENV !== 'production') {\n ForwardSelector.displayName = 'Selector';\n}\nexport default ForwardSelector;","import KeyCode from \"rc-util/es/KeyCode\";\n\n/** keyCode Judgment function */\nexport function isValidateOpenKey(currentKeyCode) {\n return (\n // Undefined for Edge bug:\n // https://github.com/ant-design/ant-design/issues/51292\n currentKeyCode &&\n // Other keys\n ![\n // System function button\n KeyCode.ESC, KeyCode.SHIFT, KeyCode.BACKSPACE, KeyCode.TAB, KeyCode.WIN_KEY, KeyCode.ALT, KeyCode.META, KeyCode.WIN_KEY_RIGHT, KeyCode.CTRL, KeyCode.SEMICOLON, KeyCode.EQUALS, KeyCode.CAPS_LOCK, KeyCode.CONTEXT_MENU,\n // F1-F12\n KeyCode.F1, KeyCode.F2, KeyCode.F3, KeyCode.F4, KeyCode.F5, KeyCode.F6, KeyCode.F7, KeyCode.F8, KeyCode.F9, KeyCode.F10, KeyCode.F11, KeyCode.F12].includes(currentKeyCode)\n );\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"disabled\", \"visible\", \"children\", \"popupElement\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"direction\", \"placement\", \"builtinPlacements\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"getPopupContainer\", \"empty\", \"getTriggerDOMNode\", \"onPopupVisibleChange\", \"onPopupMouseEnter\"];\nimport Trigger from '@rc-component/trigger';\nimport classNames from 'classnames';\nimport * as React from 'react';\nvar getBuiltInPlacements = function getBuiltInPlacements(dropdownMatchSelectWidth) {\n // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided\n var adjustX = dropdownMatchSelectWidth === true ? 0 : 1;\n return {\n bottomLeft: {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n bottomRight: {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n topLeft: {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n },\n topRight: {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n },\n htmlRegion: 'scroll'\n }\n };\n};\nvar SelectTrigger = function SelectTrigger(props, ref) {\n var prefixCls = props.prefixCls,\n disabled = props.disabled,\n visible = props.visible,\n children = props.children,\n popupElement = props.popupElement,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'ltr' : _props$direction,\n placement = props.placement,\n builtinPlacements = props.builtinPlacements,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n getPopupContainer = props.getPopupContainer,\n empty = props.empty,\n getTriggerDOMNode = props.getTriggerDOMNode,\n onPopupVisibleChange = props.onPopupVisibleChange,\n onPopupMouseEnter = props.onPopupMouseEnter,\n restProps = _objectWithoutProperties(props, _excluded);\n var dropdownPrefixCls = \"\".concat(prefixCls, \"-dropdown\");\n var popupNode = popupElement;\n if (dropdownRender) {\n popupNode = dropdownRender(popupElement);\n }\n var mergedBuiltinPlacements = React.useMemo(function () {\n return builtinPlacements || getBuiltInPlacements(dropdownMatchSelectWidth);\n }, [builtinPlacements, dropdownMatchSelectWidth]);\n\n // ===================== Motion ======================\n var mergedTransitionName = animation ? \"\".concat(dropdownPrefixCls, \"-\").concat(animation) : transitionName;\n\n // =================== Popup Width ===================\n var isNumberPopupWidth = typeof dropdownMatchSelectWidth === 'number';\n var stretch = React.useMemo(function () {\n if (isNumberPopupWidth) {\n return null;\n }\n return dropdownMatchSelectWidth === false ? 'minWidth' : 'width';\n }, [dropdownMatchSelectWidth, isNumberPopupWidth]);\n var popupStyle = dropdownStyle;\n if (isNumberPopupWidth) {\n popupStyle = _objectSpread(_objectSpread({}, popupStyle), {}, {\n width: dropdownMatchSelectWidth\n });\n }\n\n // ======================= Ref =======================\n var triggerPopupRef = React.useRef(null);\n React.useImperativeHandle(ref, function () {\n return {\n getPopupElement: function getPopupElement() {\n var _triggerPopupRef$curr;\n return (_triggerPopupRef$curr = triggerPopupRef.current) === null || _triggerPopupRef$curr === void 0 ? void 0 : _triggerPopupRef$curr.popupElement;\n }\n };\n });\n return /*#__PURE__*/React.createElement(Trigger, _extends({}, restProps, {\n showAction: onPopupVisibleChange ? ['click'] : [],\n hideAction: onPopupVisibleChange ? ['click'] : [],\n popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'),\n builtinPlacements: mergedBuiltinPlacements,\n prefixCls: dropdownPrefixCls,\n popupTransitionName: mergedTransitionName,\n popup: /*#__PURE__*/React.createElement(\"div\", {\n onMouseEnter: onPopupMouseEnter\n }, popupNode),\n ref: triggerPopupRef,\n stretch: stretch,\n popupAlign: dropdownAlign,\n popupVisible: visible,\n getPopupContainer: getPopupContainer,\n popupClassName: classNames(dropdownClassName, _defineProperty({}, \"\".concat(dropdownPrefixCls, \"-empty\"), empty)),\n popupStyle: popupStyle,\n getTriggerDOMNode: getTriggerDOMNode,\n onPopupVisibleChange: onPopupVisibleChange\n }), children);\n};\nvar RefSelectTrigger = /*#__PURE__*/React.forwardRef(SelectTrigger);\nif (process.env.NODE_ENV !== 'production') {\n RefSelectTrigger.displayName = 'SelectTrigger';\n}\nexport default RefSelectTrigger;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _toArray from \"@babel/runtime/helpers/esm/toArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport warning from \"rc-util/es/warning\";\nfunction getKey(data, index) {\n var key = data.key;\n var value;\n if ('value' in data) {\n value = data.value;\n }\n if (key !== null && key !== undefined) {\n return key;\n }\n if (value !== undefined) {\n return value;\n }\n return \"rc-index-key-\".concat(index);\n}\nexport function isValidCount(value) {\n return typeof value !== 'undefined' && !Number.isNaN(value);\n}\nexport function fillFieldNames(fieldNames, childrenAsData) {\n var _ref = fieldNames || {},\n label = _ref.label,\n value = _ref.value,\n options = _ref.options,\n groupLabel = _ref.groupLabel;\n var mergedLabel = label || (childrenAsData ? 'children' : 'label');\n return {\n label: mergedLabel,\n value: value || 'value',\n options: options || 'options',\n groupLabel: groupLabel || mergedLabel\n };\n}\n\n/**\n * Flat options into flatten list.\n * We use `optionOnly` here is aim to avoid user use nested option group.\n * Here is simply set `key` to the index if not provided.\n */\nexport function flattenOptions(options) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n fieldNames = _ref2.fieldNames,\n childrenAsData = _ref2.childrenAsData;\n var flattenList = [];\n var _fillFieldNames = fillFieldNames(fieldNames, false),\n fieldLabel = _fillFieldNames.label,\n fieldValue = _fillFieldNames.value,\n fieldOptions = _fillFieldNames.options,\n groupLabel = _fillFieldNames.groupLabel;\n function dig(list, isGroupOption) {\n if (!Array.isArray(list)) {\n return;\n }\n list.forEach(function (data) {\n if (isGroupOption || !(fieldOptions in data)) {\n var value = data[fieldValue];\n\n // Option\n flattenList.push({\n key: getKey(data, flattenList.length),\n groupOption: isGroupOption,\n data: data,\n label: data[fieldLabel],\n value: value\n });\n } else {\n var grpLabel = data[groupLabel];\n if (grpLabel === undefined && childrenAsData) {\n grpLabel = data.label;\n }\n\n // Option Group\n flattenList.push({\n key: getKey(data, flattenList.length),\n group: true,\n data: data,\n label: grpLabel\n });\n dig(data[fieldOptions], true);\n }\n });\n }\n dig(options, false);\n return flattenList;\n}\n\n/**\n * Inject `props` into `option` for legacy usage\n */\nexport function injectPropsWithOption(option) {\n var newOption = _objectSpread({}, option);\n if (!('props' in newOption)) {\n Object.defineProperty(newOption, 'props', {\n get: function get() {\n warning(false, 'Return type is option instead of Option instance. Please read value directly instead of reading from `props`.');\n return newOption;\n }\n });\n }\n return newOption;\n}\nexport var getSeparatedContent = function getSeparatedContent(text, tokens, end) {\n if (!tokens || !tokens.length) {\n return null;\n }\n var match = false;\n var separate = function separate(str, _ref3) {\n var _ref4 = _toArray(_ref3),\n token = _ref4[0],\n restTokens = _ref4.slice(1);\n if (!token) {\n return [str];\n }\n var list = str.split(token);\n match = match || list.length > 1;\n return list.reduce(function (prevList, unitStr) {\n return [].concat(_toConsumableArray(prevList), _toConsumableArray(separate(unitStr, restTokens)));\n }, []).filter(Boolean);\n };\n var list = separate(text, tokens);\n if (match) {\n return typeof end !== 'undefined' ? list.slice(0, end) : list;\n } else {\n return null;\n }\n};","import * as React from 'react';\n\n// Use any here since we do not get the type during compilation\n\nvar SelectContext = /*#__PURE__*/React.createContext(null);\nexport default SelectContext;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport * as React from 'react';\nexport default function Polite(props) {\n var visible = props.visible,\n values = props.values;\n if (!visible) {\n return null;\n }\n\n // Only cut part of values since it's a screen reader\n var MAX_COUNT = 50;\n return /*#__PURE__*/React.createElement(\"span\", {\n \"aria-live\": \"polite\",\n style: {\n width: 0,\n height: 0,\n position: 'absolute',\n overflow: 'hidden',\n opacity: 0\n }\n }, \"\".concat(values.slice(0, MAX_COUNT).map(function (_ref) {\n var label = _ref.label,\n value = _ref.value;\n return ['number', 'string'].includes(_typeof(label)) ? label : value;\n }).join(', ')), values.length > MAX_COUNT ? ', ...' : null);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"id\", \"prefixCls\", \"className\", \"showSearch\", \"tagRender\", \"direction\", \"omitDomProps\", \"displayValues\", \"onDisplayValuesChange\", \"emptyOptions\", \"notFoundContent\", \"onClear\", \"mode\", \"disabled\", \"loading\", \"getInputElement\", \"getRawInputElement\", \"open\", \"defaultOpen\", \"onDropdownVisibleChange\", \"activeValue\", \"onActiveValueChange\", \"activeDescendantId\", \"searchValue\", \"autoClearSearchValue\", \"onSearch\", \"onSearchSplit\", \"tokenSeparators\", \"allowClear\", \"prefix\", \"suffixIcon\", \"clearIcon\", \"OptionList\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"placement\", \"builtinPlacements\", \"getPopupContainer\", \"showAction\", \"onFocus\", \"onBlur\", \"onKeyUp\", \"onKeyDown\", \"onMouseDown\"];\nimport classNames from 'classnames';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport { useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useAllowClear } from \"../hooks/useAllowClear\";\nimport { BaseSelectContext } from \"../hooks/useBaseProps\";\nimport useDelayReset from \"../hooks/useDelayReset\";\nimport useLock from \"../hooks/useLock\";\nimport useSelectTriggerControl from \"../hooks/useSelectTriggerControl\";\nimport Selector from \"../Selector\";\nimport SelectTrigger from \"../SelectTrigger\";\nimport TransBtn from \"../TransBtn\";\nimport { getSeparatedContent, isValidCount } from \"../utils/valueUtil\";\nimport SelectContext from \"../SelectContext\";\nimport Polite from \"./Polite\";\nvar DEFAULT_OMIT_PROPS = ['value', 'onChange', 'removeIcon', 'placeholder', 'autoFocus', 'maxTagCount', 'maxTagTextLength', 'maxTagPlaceholder', 'choiceTransitionName', 'onInputKeyDown', 'onPopupScroll', 'tabIndex'];\nexport var isMultiple = function isMultiple(mode) {\n return mode === 'tags' || mode === 'multiple';\n};\nvar BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _customizeRawInputEle;\n var id = props.id,\n prefixCls = props.prefixCls,\n className = props.className,\n showSearch = props.showSearch,\n tagRender = props.tagRender,\n direction = props.direction,\n omitDomProps = props.omitDomProps,\n displayValues = props.displayValues,\n onDisplayValuesChange = props.onDisplayValuesChange,\n emptyOptions = props.emptyOptions,\n _props$notFoundConten = props.notFoundContent,\n notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten,\n onClear = props.onClear,\n mode = props.mode,\n disabled = props.disabled,\n loading = props.loading,\n getInputElement = props.getInputElement,\n getRawInputElement = props.getRawInputElement,\n open = props.open,\n defaultOpen = props.defaultOpen,\n onDropdownVisibleChange = props.onDropdownVisibleChange,\n activeValue = props.activeValue,\n onActiveValueChange = props.onActiveValueChange,\n activeDescendantId = props.activeDescendantId,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSplit = props.onSearchSplit,\n tokenSeparators = props.tokenSeparators,\n allowClear = props.allowClear,\n prefix = props.prefix,\n suffixIcon = props.suffixIcon,\n clearIcon = props.clearIcon,\n OptionList = props.OptionList,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n placement = props.placement,\n builtinPlacements = props.builtinPlacements,\n getPopupContainer = props.getPopupContainer,\n _props$showAction = props.showAction,\n showAction = _props$showAction === void 0 ? [] : _props$showAction,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onKeyUp = props.onKeyUp,\n onKeyDown = props.onKeyDown,\n onMouseDown = props.onMouseDown,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // ============================== MISC ==============================\n var multiple = isMultiple(mode);\n var mergedShowSearch = (showSearch !== undefined ? showSearch : multiple) || mode === 'combobox';\n var domProps = _objectSpread({}, restProps);\n DEFAULT_OMIT_PROPS.forEach(function (propName) {\n delete domProps[propName];\n });\n omitDomProps === null || omitDomProps === void 0 || omitDomProps.forEach(function (propName) {\n delete domProps[propName];\n });\n\n // ============================= Mobile =============================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mobile = _React$useState2[0],\n setMobile = _React$useState2[1];\n React.useEffect(function () {\n // Only update on the client side\n setMobile(isMobile());\n }, []);\n\n // ============================== Refs ==============================\n var containerRef = React.useRef(null);\n var selectorDomRef = React.useRef(null);\n var triggerRef = React.useRef(null);\n var selectorRef = React.useRef(null);\n var listRef = React.useRef(null);\n var blurRef = React.useRef(false);\n\n /** Used for component focused management */\n var _useDelayReset = useDelayReset(),\n _useDelayReset2 = _slicedToArray(_useDelayReset, 3),\n mockFocused = _useDelayReset2[0],\n setMockFocused = _useDelayReset2[1],\n cancelSetMockFocused = _useDelayReset2[2];\n\n // =========================== Imperative ===========================\n React.useImperativeHandle(ref, function () {\n var _selectorRef$current, _selectorRef$current2;\n return {\n focus: (_selectorRef$current = selectorRef.current) === null || _selectorRef$current === void 0 ? void 0 : _selectorRef$current.focus,\n blur: (_selectorRef$current2 = selectorRef.current) === null || _selectorRef$current2 === void 0 ? void 0 : _selectorRef$current2.blur,\n scrollTo: function scrollTo(arg) {\n var _listRef$current;\n return (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(arg);\n },\n nativeElement: containerRef.current || selectorDomRef.current\n };\n });\n\n // ========================== Search Value ==========================\n var mergedSearchValue = React.useMemo(function () {\n var _displayValues$;\n if (mode !== 'combobox') {\n return searchValue;\n }\n var val = (_displayValues$ = displayValues[0]) === null || _displayValues$ === void 0 ? void 0 : _displayValues$.value;\n return typeof val === 'string' || typeof val === 'number' ? String(val) : '';\n }, [searchValue, mode, displayValues]);\n\n // ========================== Custom Input ==========================\n // Only works in `combobox`\n var customizeInputElement = mode === 'combobox' && typeof getInputElement === 'function' && getInputElement() || null;\n\n // Used for customize replacement for `rc-cascader`\n var customizeRawInputElement = typeof getRawInputElement === 'function' && getRawInputElement();\n var customizeRawInputRef = useComposeRef(selectorDomRef, customizeRawInputElement === null || customizeRawInputElement === void 0 || (_customizeRawInputEle = customizeRawInputElement.props) === null || _customizeRawInputEle === void 0 ? void 0 : _customizeRawInputEle.ref);\n\n // ============================== Open ==============================\n // SSR not support Portal which means we need delay `open` for the first time render\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n rendered = _React$useState4[0],\n setRendered = _React$useState4[1];\n useLayoutEffect(function () {\n setRendered(true);\n }, []);\n var _useMergedState = useMergedState(false, {\n defaultValue: defaultOpen,\n value: open\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n innerOpen = _useMergedState2[0],\n setInnerOpen = _useMergedState2[1];\n var mergedOpen = rendered ? innerOpen : false;\n\n // Not trigger `open` in `combobox` when `notFoundContent` is empty\n var emptyListContent = !notFoundContent && emptyOptions;\n if (disabled || emptyListContent && mergedOpen && mode === 'combobox') {\n mergedOpen = false;\n }\n var triggerOpen = emptyListContent ? false : mergedOpen;\n var onToggleOpen = React.useCallback(function (newOpen) {\n var nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;\n if (!disabled) {\n setInnerOpen(nextOpen);\n if (mergedOpen !== nextOpen) {\n onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 || onDropdownVisibleChange(nextOpen);\n }\n }\n }, [disabled, mergedOpen, setInnerOpen, onDropdownVisibleChange]);\n\n // ============================= Search =============================\n var tokenWithEnter = React.useMemo(function () {\n return (tokenSeparators || []).some(function (tokenSeparator) {\n return ['\\n', '\\r\\n'].includes(tokenSeparator);\n });\n }, [tokenSeparators]);\n var _ref = React.useContext(SelectContext) || {},\n maxCount = _ref.maxCount,\n rawValues = _ref.rawValues;\n var onInternalSearch = function onInternalSearch(searchText, fromTyping, isCompositing) {\n if (multiple && isValidCount(maxCount) && (rawValues === null || rawValues === void 0 ? void 0 : rawValues.size) >= maxCount) {\n return;\n }\n var ret = true;\n var newSearchText = searchText;\n onActiveValueChange === null || onActiveValueChange === void 0 || onActiveValueChange(null);\n var separatedList = getSeparatedContent(searchText, tokenSeparators, isValidCount(maxCount) ? maxCount - rawValues.size : undefined);\n\n // Check if match the `tokenSeparators`\n var patchLabels = isCompositing ? null : separatedList;\n\n // Ignore combobox since it's not split-able\n if (mode !== 'combobox' && patchLabels) {\n newSearchText = '';\n onSearchSplit === null || onSearchSplit === void 0 || onSearchSplit(patchLabels);\n\n // Should close when paste finish\n onToggleOpen(false);\n\n // Tell Selector that break next actions\n ret = false;\n }\n if (onSearch && mergedSearchValue !== newSearchText) {\n onSearch(newSearchText, {\n source: fromTyping ? 'typing' : 'effect'\n });\n }\n return ret;\n };\n\n // Only triggered when menu is closed & mode is tags\n // If menu is open, OptionList will take charge\n // If mode isn't tags, press enter is not meaningful when you can't see any option\n var onInternalSearchSubmit = function onInternalSearchSubmit(searchText) {\n // prevent empty tags from appearing when you click the Enter button\n if (!searchText || !searchText.trim()) {\n return;\n }\n onSearch(searchText, {\n source: 'submit'\n });\n };\n\n // Close will clean up single mode search text\n React.useEffect(function () {\n if (!mergedOpen && !multiple && mode !== 'combobox') {\n onInternalSearch('', false, false);\n }\n }, [mergedOpen]);\n\n // ============================ Disabled ============================\n // Close dropdown & remove focus state when disabled change\n React.useEffect(function () {\n if (innerOpen && disabled) {\n setInnerOpen(false);\n }\n\n // After onBlur is triggered, the focused does not need to be reset\n if (disabled && !blurRef.current) {\n setMockFocused(false);\n }\n }, [disabled]);\n\n // ============================ Keyboard ============================\n /**\n * We record input value here to check if can press to clean up by backspace\n * - null: Key is not down, this is reset by key up\n * - true: Search text is empty when first time backspace down\n * - false: Search text is not empty when first time backspace down\n */\n var _useLock = useLock(),\n _useLock2 = _slicedToArray(_useLock, 2),\n getClearLock = _useLock2[0],\n setClearLock = _useLock2[1];\n var keyLockRef = React.useRef(false);\n\n // KeyDown\n var onInternalKeyDown = function onInternalKeyDown(event) {\n var clearLock = getClearLock();\n var key = event.key;\n var isEnterKey = key === 'Enter';\n if (isEnterKey) {\n // Do not submit form when type in the input\n if (mode !== 'combobox') {\n event.preventDefault();\n }\n\n // We only manage open state here, close logic should handle by list component\n if (!mergedOpen) {\n onToggleOpen(true);\n }\n }\n setClearLock(!!mergedSearchValue);\n\n // Remove value by `backspace`\n if (key === 'Backspace' && !clearLock && multiple && !mergedSearchValue && displayValues.length) {\n var cloneDisplayValues = _toConsumableArray(displayValues);\n var removedDisplayValue = null;\n for (var i = cloneDisplayValues.length - 1; i >= 0; i -= 1) {\n var current = cloneDisplayValues[i];\n if (!current.disabled) {\n cloneDisplayValues.splice(i, 1);\n removedDisplayValue = current;\n break;\n }\n }\n if (removedDisplayValue) {\n onDisplayValuesChange(cloneDisplayValues, {\n type: 'remove',\n values: [removedDisplayValue]\n });\n }\n }\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n if (mergedOpen && (!isEnterKey || !keyLockRef.current)) {\n var _listRef$current2;\n // Lock the Enter key after it is pressed to avoid repeated triggering of the onChange event.\n if (isEnterKey) {\n keyLockRef.current = true;\n }\n (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 || _listRef$current2.onKeyDown.apply(_listRef$current2, [event].concat(rest));\n }\n onKeyDown === null || onKeyDown === void 0 || onKeyDown.apply(void 0, [event].concat(rest));\n };\n\n // KeyUp\n var onInternalKeyUp = function onInternalKeyUp(event) {\n for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n rest[_key2 - 1] = arguments[_key2];\n }\n if (mergedOpen) {\n var _listRef$current3;\n (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 || _listRef$current3.onKeyUp.apply(_listRef$current3, [event].concat(rest));\n }\n if (event.key === 'Enter') {\n keyLockRef.current = false;\n }\n onKeyUp === null || onKeyUp === void 0 || onKeyUp.apply(void 0, [event].concat(rest));\n };\n\n // ============================ Selector ============================\n var onSelectorRemove = function onSelectorRemove(val) {\n var newValues = displayValues.filter(function (i) {\n return i !== val;\n });\n onDisplayValuesChange(newValues, {\n type: 'remove',\n values: [val]\n });\n };\n var onInputBlur = function onInputBlur() {\n // Unlock the Enter key after the input blur; otherwise, the Enter key needs to be pressed twice to trigger the correct effect.\n keyLockRef.current = false;\n };\n\n // ========================== Focus / Blur ==========================\n /** Record real focus status */\n var focusRef = React.useRef(false);\n var onContainerFocus = function onContainerFocus() {\n setMockFocused(true);\n if (!disabled) {\n if (onFocus && !focusRef.current) {\n onFocus.apply(void 0, arguments);\n }\n\n // `showAction` should handle `focus` if set\n if (showAction.includes('focus')) {\n onToggleOpen(true);\n }\n }\n focusRef.current = true;\n };\n var onContainerBlur = function onContainerBlur() {\n blurRef.current = true;\n setMockFocused(false, function () {\n focusRef.current = false;\n blurRef.current = false;\n onToggleOpen(false);\n });\n if (disabled) {\n return;\n }\n if (mergedSearchValue) {\n // `tags` mode should move `searchValue` into values\n if (mode === 'tags') {\n onSearch(mergedSearchValue, {\n source: 'submit'\n });\n } else if (mode === 'multiple') {\n // `multiple` mode only clean the search value but not trigger event\n onSearch('', {\n source: 'blur'\n });\n }\n }\n if (onBlur) {\n onBlur.apply(void 0, arguments);\n }\n };\n\n // Give focus back of Select\n var activeTimeoutIds = [];\n React.useEffect(function () {\n return function () {\n activeTimeoutIds.forEach(function (timeoutId) {\n return clearTimeout(timeoutId);\n });\n activeTimeoutIds.splice(0, activeTimeoutIds.length);\n };\n }, []);\n var onInternalMouseDown = function onInternalMouseDown(event) {\n var _triggerRef$current;\n var target = event.target;\n var popupElement = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.getPopupElement();\n\n // We should give focus back to selector if clicked item is not focusable\n if (popupElement && popupElement.contains(target)) {\n var timeoutId = setTimeout(function () {\n var index = activeTimeoutIds.indexOf(timeoutId);\n if (index !== -1) {\n activeTimeoutIds.splice(index, 1);\n }\n cancelSetMockFocused();\n if (!mobile && !popupElement.contains(document.activeElement)) {\n var _selectorRef$current3;\n (_selectorRef$current3 = selectorRef.current) === null || _selectorRef$current3 === void 0 || _selectorRef$current3.focus();\n }\n });\n activeTimeoutIds.push(timeoutId);\n }\n for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n restArgs[_key3 - 1] = arguments[_key3];\n }\n onMouseDown === null || onMouseDown === void 0 || onMouseDown.apply(void 0, [event].concat(restArgs));\n };\n\n // ============================ Dropdown ============================\n var _React$useState5 = React.useState({}),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n forceUpdate = _React$useState6[1];\n // We need force update here since popup dom is render async\n function onPopupMouseEnter() {\n forceUpdate({});\n }\n\n // Used for raw custom input trigger\n var onTriggerVisibleChange;\n if (customizeRawInputElement) {\n onTriggerVisibleChange = function onTriggerVisibleChange(newOpen) {\n onToggleOpen(newOpen);\n };\n }\n\n // Close when click on non-select element\n useSelectTriggerControl(function () {\n var _triggerRef$current2;\n return [containerRef.current, (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.getPopupElement()];\n }, triggerOpen, onToggleOpen, !!customizeRawInputElement);\n\n // ============================ Context =============================\n var baseSelectContext = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, props), {}, {\n notFoundContent: notFoundContent,\n open: mergedOpen,\n triggerOpen: triggerOpen,\n id: id,\n showSearch: mergedShowSearch,\n multiple: multiple,\n toggleOpen: onToggleOpen\n });\n }, [props, notFoundContent, triggerOpen, mergedOpen, id, mergedShowSearch, multiple, onToggleOpen]);\n\n // ==================================================================\n // == Render ==\n // ==================================================================\n\n // ============================= Arrow ==============================\n var showSuffixIcon = !!suffixIcon || loading;\n var arrowNode;\n if (showSuffixIcon) {\n arrowNode = /*#__PURE__*/React.createElement(TransBtn, {\n className: classNames(\"\".concat(prefixCls, \"-arrow\"), _defineProperty({}, \"\".concat(prefixCls, \"-arrow-loading\"), loading)),\n customizeIcon: suffixIcon,\n customizeIconProps: {\n loading: loading,\n searchValue: mergedSearchValue,\n open: mergedOpen,\n focused: mockFocused,\n showSearch: mergedShowSearch\n }\n });\n }\n\n // ============================= Clear ==============================\n var onClearMouseDown = function onClearMouseDown() {\n var _selectorRef$current4;\n onClear === null || onClear === void 0 || onClear();\n (_selectorRef$current4 = selectorRef.current) === null || _selectorRef$current4 === void 0 || _selectorRef$current4.focus();\n onDisplayValuesChange([], {\n type: 'clear',\n values: displayValues\n });\n onInternalSearch('', false, false);\n };\n var _useAllowClear = useAllowClear(prefixCls, onClearMouseDown, displayValues, allowClear, clearIcon, disabled, mergedSearchValue, mode),\n mergedAllowClear = _useAllowClear.allowClear,\n clearNode = _useAllowClear.clearIcon;\n\n // =========================== OptionList ===========================\n var optionList = /*#__PURE__*/React.createElement(OptionList, {\n ref: listRef\n });\n\n // ============================= Select =============================\n var mergedClassName = classNames(prefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-focused\"), mockFocused), \"\".concat(prefixCls, \"-multiple\"), multiple), \"\".concat(prefixCls, \"-single\"), !multiple), \"\".concat(prefixCls, \"-allow-clear\"), allowClear), \"\".concat(prefixCls, \"-show-arrow\"), showSuffixIcon), \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(prefixCls, \"-loading\"), loading), \"\".concat(prefixCls, \"-open\"), mergedOpen), \"\".concat(prefixCls, \"-customize-input\"), customizeInputElement), \"\".concat(prefixCls, \"-show-search\"), mergedShowSearch));\n\n // >>> Selector\n var selectorNode = /*#__PURE__*/React.createElement(SelectTrigger, {\n ref: triggerRef,\n disabled: disabled,\n prefixCls: prefixCls,\n visible: triggerOpen,\n popupElement: optionList,\n animation: animation,\n transitionName: transitionName,\n dropdownStyle: dropdownStyle,\n dropdownClassName: dropdownClassName,\n direction: direction,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth,\n dropdownRender: dropdownRender,\n dropdownAlign: dropdownAlign,\n placement: placement,\n builtinPlacements: builtinPlacements,\n getPopupContainer: getPopupContainer,\n empty: emptyOptions,\n getTriggerDOMNode: function getTriggerDOMNode(node) {\n return (\n // TODO: This is workaround and should be removed in `rc-select`\n // And use new standard `nativeElement` for ref.\n // But we should update `rc-resize-observer` first.\n selectorDomRef.current || node\n );\n },\n onPopupVisibleChange: onTriggerVisibleChange,\n onPopupMouseEnter: onPopupMouseEnter\n }, customizeRawInputElement ? ( /*#__PURE__*/React.cloneElement(customizeRawInputElement, {\n ref: customizeRawInputRef\n })) : /*#__PURE__*/React.createElement(Selector, _extends({}, props, {\n domRef: selectorDomRef,\n prefixCls: prefixCls,\n inputElement: customizeInputElement,\n ref: selectorRef,\n id: id,\n prefix: prefix,\n showSearch: mergedShowSearch,\n autoClearSearchValue: autoClearSearchValue,\n mode: mode,\n activeDescendantId: activeDescendantId,\n tagRender: tagRender,\n values: displayValues,\n open: mergedOpen,\n onToggleOpen: onToggleOpen,\n activeValue: activeValue,\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n onSearchSubmit: onInternalSearchSubmit,\n onRemove: onSelectorRemove,\n tokenWithEnter: tokenWithEnter,\n onInputBlur: onInputBlur\n })));\n\n // >>> Render\n var renderNode;\n\n // Render raw\n if (customizeRawInputElement) {\n renderNode = selectorNode;\n } else {\n renderNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n className: mergedClassName\n }, domProps, {\n ref: containerRef,\n onMouseDown: onInternalMouseDown,\n onKeyDown: onInternalKeyDown,\n onKeyUp: onInternalKeyUp,\n onFocus: onContainerFocus,\n onBlur: onContainerBlur\n }), /*#__PURE__*/React.createElement(Polite, {\n visible: mockFocused && !mergedOpen,\n values: displayValues\n }), selectorNode, arrowNode, mergedAllowClear && clearNode);\n }\n return /*#__PURE__*/React.createElement(BaseSelectContext.Provider, {\n value: baseSelectContext\n }, renderNode);\n});\n\n// Set display name for dev\nif (process.env.NODE_ENV !== 'production') {\n BaseSelect.displayName = 'BaseSelect';\n}\nexport default BaseSelect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Similar with `useLock`, but this hook will always execute last value.\n * When set to `true`, it will keep `true` for a short time even if `false` is set.\n */\nexport default function useDelayReset() {\n var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n bool = _React$useState2[0],\n setBool = _React$useState2[1];\n var delayRef = React.useRef(null);\n var cancelLatest = function cancelLatest() {\n window.clearTimeout(delayRef.current);\n };\n React.useEffect(function () {\n return cancelLatest;\n }, []);\n var delaySetBool = function delaySetBool(value, callback) {\n cancelLatest();\n delayRef.current = window.setTimeout(function () {\n setBool(value);\n if (callback) {\n callback();\n }\n }, timeout);\n };\n return [bool, delaySetBool, cancelLatest];\n}","import * as React from 'react';\nexport default function useSelectTriggerControl(elements, open, triggerOpen, customizedTrigger) {\n var propsRef = React.useRef(null);\n propsRef.current = {\n open: open,\n triggerOpen: triggerOpen,\n customizedTrigger: customizedTrigger\n };\n React.useEffect(function () {\n function onGlobalMouseDown(event) {\n var _propsRef$current;\n // If trigger is customized, Trigger will take control of popupVisible\n if ((_propsRef$current = propsRef.current) !== null && _propsRef$current !== void 0 && _propsRef$current.customizedTrigger) {\n return;\n }\n var target = event.target;\n if (target.shadowRoot && event.composed) {\n target = event.composedPath()[0] || target;\n }\n if (propsRef.current.open && elements().filter(function (element) {\n return element;\n }).every(function (element) {\n return !element.contains(target) && element !== target;\n })) {\n // Should trigger close\n propsRef.current.triggerOpen(false);\n }\n }\n window.addEventListener('mousedown', onGlobalMouseDown);\n return function () {\n return window.removeEventListener('mousedown', onGlobalMouseDown);\n };\n }, []);\n}","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar OptGroup = function OptGroup() {\n return null;\n};\nOptGroup.isSelectOptGroup = true;\nexport default OptGroup;","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar Option = function Option() {\n return null;\n};\nOption.isSelectOption = true;\nexport default Option;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nimport classNames from 'classnames';\n/**\n * Fill component to provided the scroll content real height.\n */\nvar Filler = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var height = _ref.height,\n offsetY = _ref.offsetY,\n offsetX = _ref.offsetX,\n children = _ref.children,\n prefixCls = _ref.prefixCls,\n onInnerResize = _ref.onInnerResize,\n innerProps = _ref.innerProps,\n rtl = _ref.rtl,\n extra = _ref.extra;\n var outerStyle = {};\n var innerStyle = {\n display: 'flex',\n flexDirection: 'column'\n };\n if (offsetY !== undefined) {\n // Not set `width` since this will break `sticky: right`\n outerStyle = {\n height: height,\n position: 'relative',\n overflow: 'hidden'\n };\n innerStyle = _objectSpread(_objectSpread({}, innerStyle), {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({\n transform: \"translateY(\".concat(offsetY, \"px)\")\n }, rtl ? 'marginRight' : 'marginLeft', -offsetX), \"position\", 'absolute'), \"left\", 0), \"right\", 0), \"top\", 0));\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: outerStyle\n }, /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref2) {\n var offsetHeight = _ref2.offsetHeight;\n if (offsetHeight && onInnerResize) {\n onInnerResize();\n }\n }\n }, /*#__PURE__*/React.createElement(\"div\", _extends({\n style: innerStyle,\n className: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-holder-inner\"), prefixCls)),\n ref: ref\n }, innerProps), children, extra)));\n});\nFiller.displayName = 'Filler';\nexport default Filler;","import * as React from 'react';\nexport function Item(_ref) {\n var children = _ref.children,\n setRef = _ref.setRef;\n var refFunc = React.useCallback(function (node) {\n setRef(node);\n }, []);\n return /*#__PURE__*/React.cloneElement(children, {\n ref: refFunc\n });\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar isFF = (typeof navigator === \"undefined\" ? \"undefined\" : _typeof(navigator)) === 'object' && /Firefox/i.test(navigator.userAgent);\nexport default isFF;","import { useRef } from 'react';\nexport default (function (isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight) {\n // Do lock for a wheel when scrolling\n var lockRef = useRef(false);\n var lockTimeoutRef = useRef(null);\n function lockScroll() {\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = true;\n lockTimeoutRef.current = setTimeout(function () {\n lockRef.current = false;\n }, 50);\n }\n\n // Pass to ref since global add is in closure\n var scrollPingRef = useRef({\n top: isScrollAtTop,\n bottom: isScrollAtBottom,\n left: isScrollAtLeft,\n right: isScrollAtRight\n });\n scrollPingRef.current.top = isScrollAtTop;\n scrollPingRef.current.bottom = isScrollAtBottom;\n scrollPingRef.current.left = isScrollAtLeft;\n scrollPingRef.current.right = isScrollAtRight;\n return function (isHorizontal, delta) {\n var smoothOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var originScroll = isHorizontal ?\n // Pass origin wheel when on the left\n delta < 0 && scrollPingRef.current.left ||\n // Pass origin wheel when on the right\n delta > 0 && scrollPingRef.current.right // Pass origin wheel when on the top\n : delta < 0 && scrollPingRef.current.top ||\n // Pass origin wheel when on the bottom\n delta > 0 && scrollPingRef.current.bottom;\n if (smoothOffset && originScroll) {\n // No need lock anymore when it's smooth offset from touchMove interval\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = false;\n } else if (!originScroll || lockRef.current) {\n lockScroll();\n }\n return !lockRef.current && originScroll;\n };\n});","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n// Firefox has low performance of map.\nvar CacheMap = /*#__PURE__*/function () {\n function CacheMap() {\n _classCallCheck(this, CacheMap);\n _defineProperty(this, \"maps\", void 0);\n // Used for cache key\n // `useMemo` no need to update if `id` not change\n _defineProperty(this, \"id\", 0);\n this.maps = Object.create(null);\n }\n _createClass(CacheMap, [{\n key: \"set\",\n value: function set(key, value) {\n this.maps[key] = value;\n this.id += 1;\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this.maps[key];\n }\n }]);\n return CacheMap;\n}();\nexport default CacheMap;","import useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { useRef } from 'react';\nvar SMOOTH_PTG = 14 / 15;\nexport default function useMobileTouchMove(inVirtual, listRef, callback) {\n var touchedRef = useRef(false);\n var touchXRef = useRef(0);\n var touchYRef = useRef(0);\n var elementRef = useRef(null);\n\n // Smooth scroll\n var intervalRef = useRef(null);\n\n /* eslint-disable prefer-const */\n var cleanUpEvents;\n var onTouchMove = function onTouchMove(e) {\n if (touchedRef.current) {\n var currentX = Math.ceil(e.touches[0].pageX);\n var currentY = Math.ceil(e.touches[0].pageY);\n var offsetX = touchXRef.current - currentX;\n var offsetY = touchYRef.current - currentY;\n var _isHorizontal = Math.abs(offsetX) > Math.abs(offsetY);\n if (_isHorizontal) {\n touchXRef.current = currentX;\n } else {\n touchYRef.current = currentY;\n }\n if (callback(_isHorizontal, _isHorizontal ? offsetX : offsetY)) {\n e.preventDefault();\n }\n // Smooth interval\n clearInterval(intervalRef.current);\n intervalRef.current = setInterval(function () {\n if (_isHorizontal) {\n offsetX *= SMOOTH_PTG;\n } else {\n offsetY *= SMOOTH_PTG;\n }\n var offset = Math.floor(_isHorizontal ? offsetX : offsetY);\n if (!callback(_isHorizontal, offset, true) || Math.abs(offset) <= 0.1) {\n clearInterval(intervalRef.current);\n }\n }, 16);\n }\n };\n var onTouchEnd = function onTouchEnd() {\n touchedRef.current = false;\n cleanUpEvents();\n };\n var onTouchStart = function onTouchStart(e) {\n cleanUpEvents();\n if (e.touches.length === 1 && !touchedRef.current) {\n touchedRef.current = true;\n touchXRef.current = Math.ceil(e.touches[0].pageX);\n touchYRef.current = Math.ceil(e.touches[0].pageY);\n elementRef.current = e.target;\n elementRef.current.addEventListener('touchmove', onTouchMove, {\n passive: false\n });\n elementRef.current.addEventListener('touchend', onTouchEnd, {\n passive: true\n });\n }\n };\n cleanUpEvents = function cleanUpEvents() {\n if (elementRef.current) {\n elementRef.current.removeEventListener('touchmove', onTouchMove);\n elementRef.current.removeEventListener('touchend', onTouchEnd);\n }\n };\n useLayoutEffect(function () {\n if (inVirtual) {\n listRef.current.addEventListener('touchstart', onTouchStart, {\n passive: true\n });\n }\n return function () {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.removeEventListener('touchstart', onTouchStart);\n cleanUpEvents();\n clearInterval(intervalRef.current);\n };\n }, [inVirtual]);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nfunction getPageXY(e, horizontal) {\n var obj = 'touches' in e ? e.touches[0] : e;\n return obj[horizontal ? 'pageX' : 'pageY'];\n}\nvar ScrollBar = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n rtl = props.rtl,\n scrollOffset = props.scrollOffset,\n scrollRange = props.scrollRange,\n onStartMove = props.onStartMove,\n onStopMove = props.onStopMove,\n onScroll = props.onScroll,\n horizontal = props.horizontal,\n spinSize = props.spinSize,\n containerSize = props.containerSize,\n style = props.style,\n propsThumbStyle = props.thumbStyle;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n dragging = _React$useState2[0],\n setDragging = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n pageXY = _React$useState4[0],\n setPageXY = _React$useState4[1];\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n startTop = _React$useState6[0],\n setStartTop = _React$useState6[1];\n var isLTR = !rtl;\n\n // ========================= Refs =========================\n var scrollbarRef = React.useRef();\n var thumbRef = React.useRef();\n\n // ======================= Visible ========================\n var _React$useState7 = React.useState(false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n visible = _React$useState8[0],\n setVisible = _React$useState8[1];\n var visibleTimeoutRef = React.useRef();\n var delayHidden = function delayHidden() {\n clearTimeout(visibleTimeoutRef.current);\n setVisible(true);\n visibleTimeoutRef.current = setTimeout(function () {\n setVisible(false);\n }, 3000);\n };\n\n // ======================== Range =========================\n var enableScrollRange = scrollRange - containerSize || 0;\n var enableOffsetRange = containerSize - spinSize || 0;\n\n // ========================= Top ==========================\n var top = React.useMemo(function () {\n if (scrollOffset === 0 || enableScrollRange === 0) {\n return 0;\n }\n var ptg = scrollOffset / enableScrollRange;\n return ptg * enableOffsetRange;\n }, [scrollOffset, enableScrollRange, enableOffsetRange]);\n\n // ====================== Container =======================\n var onContainerMouseDown = function onContainerMouseDown(e) {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Thumb =========================\n var stateRef = React.useRef({\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n });\n stateRef.current = {\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n };\n var onThumbMouseDown = function onThumbMouseDown(e) {\n setDragging(true);\n setPageXY(getPageXY(e, horizontal));\n setStartTop(stateRef.current.top);\n onStartMove();\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Effect ========================\n\n // React make event as passive, but we need to preventDefault\n // Add event on dom directly instead.\n // ref: https://github.com/facebook/react/issues/9809\n React.useEffect(function () {\n var onScrollbarTouchStart = function onScrollbarTouchStart(e) {\n e.preventDefault();\n };\n var scrollbarEle = scrollbarRef.current;\n var thumbEle = thumbRef.current;\n scrollbarEle.addEventListener('touchstart', onScrollbarTouchStart, {\n passive: false\n });\n thumbEle.addEventListener('touchstart', onThumbMouseDown, {\n passive: false\n });\n return function () {\n scrollbarEle.removeEventListener('touchstart', onScrollbarTouchStart);\n thumbEle.removeEventListener('touchstart', onThumbMouseDown);\n };\n }, []);\n\n // Pass to effect\n var enableScrollRangeRef = React.useRef();\n enableScrollRangeRef.current = enableScrollRange;\n var enableOffsetRangeRef = React.useRef();\n enableOffsetRangeRef.current = enableOffsetRange;\n React.useEffect(function () {\n if (dragging) {\n var moveRafId;\n var onMouseMove = function onMouseMove(e) {\n var _stateRef$current = stateRef.current,\n stateDragging = _stateRef$current.dragging,\n statePageY = _stateRef$current.pageY,\n stateStartTop = _stateRef$current.startTop;\n raf.cancel(moveRafId);\n var rect = scrollbarRef.current.getBoundingClientRect();\n var scale = containerSize / (horizontal ? rect.width : rect.height);\n if (stateDragging) {\n var offset = (getPageXY(e, horizontal) - statePageY) * scale;\n var newTop = stateStartTop;\n if (!isLTR && horizontal) {\n newTop -= offset;\n } else {\n newTop += offset;\n }\n var tmpEnableScrollRange = enableScrollRangeRef.current;\n var tmpEnableOffsetRange = enableOffsetRangeRef.current;\n var ptg = tmpEnableOffsetRange ? newTop / tmpEnableOffsetRange : 0;\n var newScrollTop = Math.ceil(ptg * tmpEnableScrollRange);\n newScrollTop = Math.max(newScrollTop, 0);\n newScrollTop = Math.min(newScrollTop, tmpEnableScrollRange);\n moveRafId = raf(function () {\n onScroll(newScrollTop, horizontal);\n });\n }\n };\n var onMouseUp = function onMouseUp() {\n setDragging(false);\n onStopMove();\n };\n window.addEventListener('mousemove', onMouseMove, {\n passive: true\n });\n window.addEventListener('touchmove', onMouseMove, {\n passive: true\n });\n window.addEventListener('mouseup', onMouseUp, {\n passive: true\n });\n window.addEventListener('touchend', onMouseUp, {\n passive: true\n });\n return function () {\n window.removeEventListener('mousemove', onMouseMove);\n window.removeEventListener('touchmove', onMouseMove);\n window.removeEventListener('mouseup', onMouseUp);\n window.removeEventListener('touchend', onMouseUp);\n raf.cancel(moveRafId);\n };\n }\n }, [dragging]);\n React.useEffect(function () {\n delayHidden();\n return function () {\n clearTimeout(visibleTimeoutRef.current);\n };\n }, [scrollOffset]);\n\n // ====================== Imperative ======================\n React.useImperativeHandle(ref, function () {\n return {\n delayHidden: delayHidden\n };\n });\n\n // ======================== Render ========================\n var scrollbarPrefixCls = \"\".concat(prefixCls, \"-scrollbar\");\n var containerStyle = {\n position: 'absolute',\n visibility: visible ? null : 'hidden'\n };\n var thumbStyle = {\n position: 'absolute',\n background: 'rgba(0, 0, 0, 0.5)',\n borderRadius: 99,\n cursor: 'pointer',\n userSelect: 'none'\n };\n if (horizontal) {\n // Container\n containerStyle.height = 8;\n containerStyle.left = 0;\n containerStyle.right = 0;\n containerStyle.bottom = 0;\n\n // Thumb\n thumbStyle.height = '100%';\n thumbStyle.width = spinSize;\n if (isLTR) {\n thumbStyle.left = top;\n } else {\n thumbStyle.right = top;\n }\n } else {\n // Container\n containerStyle.width = 8;\n containerStyle.top = 0;\n containerStyle.bottom = 0;\n if (isLTR) {\n containerStyle.right = 0;\n } else {\n containerStyle.left = 0;\n }\n\n // Thumb\n thumbStyle.width = '100%';\n thumbStyle.height = spinSize;\n thumbStyle.top = top;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: scrollbarRef,\n className: classNames(scrollbarPrefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-horizontal\"), horizontal), \"\".concat(scrollbarPrefixCls, \"-vertical\"), !horizontal), \"\".concat(scrollbarPrefixCls, \"-visible\"), visible)),\n style: _objectSpread(_objectSpread({}, containerStyle), style),\n onMouseDown: onContainerMouseDown,\n onMouseMove: delayHidden\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: thumbRef,\n className: classNames(\"\".concat(scrollbarPrefixCls, \"-thumb\"), _defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-thumb-moving\"), dragging)),\n style: _objectSpread(_objectSpread({}, thumbStyle), propsThumbStyle),\n onMouseDown: onThumbMouseDown\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n ScrollBar.displayName = 'ScrollBar';\n}\nexport default ScrollBar;","var MIN_SIZE = 20;\nexport function getSpinSize() {\n var containerSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var scrollRange = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var baseSize = containerSize / scrollRange * containerSize;\n if (isNaN(baseSize)) {\n baseSize = 0;\n }\n baseSize = Math.max(baseSize, MIN_SIZE);\n return Math.floor(baseSize);\n}","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 _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"height\", \"itemHeight\", \"fullHeight\", \"style\", \"data\", \"children\", \"itemKey\", \"virtual\", \"direction\", \"scrollWidth\", \"component\", \"onScroll\", \"onVirtualScroll\", \"onVisibleChange\", \"innerProps\", \"extraRender\", \"styles\"];\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { useEvent } from 'rc-util';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport { flushSync } from 'react-dom';\nimport Filler from \"./Filler\";\nimport useChildren from \"./hooks/useChildren\";\nimport useDiffItem from \"./hooks/useDiffItem\";\nimport useFrameWheel from \"./hooks/useFrameWheel\";\nimport { useGetSize } from \"./hooks/useGetSize\";\nimport useHeights from \"./hooks/useHeights\";\nimport useMobileTouchMove from \"./hooks/useMobileTouchMove\";\nimport useOriginScroll from \"./hooks/useOriginScroll\";\nimport useScrollTo from \"./hooks/useScrollTo\";\nimport ScrollBar from \"./ScrollBar\";\nimport { getSpinSize } from \"./utils/scrollbarUtil\";\nvar EMPTY_DATA = [];\nvar ScrollStyle = {\n overflowY: 'auto',\n overflowAnchor: 'none'\n};\nexport function RawList(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-virtual-list' : _props$prefixCls,\n className = props.className,\n height = props.height,\n itemHeight = props.itemHeight,\n _props$fullHeight = props.fullHeight,\n fullHeight = _props$fullHeight === void 0 ? true : _props$fullHeight,\n style = props.style,\n data = props.data,\n children = props.children,\n itemKey = props.itemKey,\n virtual = props.virtual,\n direction = props.direction,\n scrollWidth = props.scrollWidth,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n onScroll = props.onScroll,\n onVirtualScroll = props.onVirtualScroll,\n onVisibleChange = props.onVisibleChange,\n innerProps = props.innerProps,\n extraRender = props.extraRender,\n styles = props.styles,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // =============================== Item Key ===============================\n var getKey = React.useCallback(function (item) {\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return item === null || item === void 0 ? void 0 : item[itemKey];\n }, [itemKey]);\n\n // ================================ Height ================================\n var _useHeights = useHeights(getKey, null, null),\n _useHeights2 = _slicedToArray(_useHeights, 4),\n setInstanceRef = _useHeights2[0],\n collectHeight = _useHeights2[1],\n heights = _useHeights2[2],\n heightUpdatedMark = _useHeights2[3];\n\n // ================================= MISC =================================\n var useVirtual = !!(virtual !== false && height && itemHeight);\n var containerHeight = React.useMemo(function () {\n return Object.values(heights.maps).reduce(function (total, curr) {\n return total + curr;\n }, 0);\n }, [heights.id, heights.maps]);\n var inVirtual = useVirtual && data && (Math.max(itemHeight * data.length, containerHeight) > height || !!scrollWidth);\n var isRTL = direction === 'rtl';\n var mergedClassName = classNames(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), isRTL), className);\n var mergedData = data || EMPTY_DATA;\n var componentRef = useRef();\n var fillerInnerRef = useRef();\n var containerRef = useRef();\n\n // =============================== Item Key ===============================\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n offsetTop = _useState2[0],\n setOffsetTop = _useState2[1];\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n offsetLeft = _useState4[0],\n setOffsetLeft = _useState4[1];\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n scrollMoving = _useState6[0],\n setScrollMoving = _useState6[1];\n var onScrollbarStartMove = function onScrollbarStartMove() {\n setScrollMoving(true);\n };\n var onScrollbarStopMove = function onScrollbarStopMove() {\n setScrollMoving(false);\n };\n var sharedConfig = {\n getKey: getKey\n };\n\n // ================================ Scroll ================================\n function syncScrollTop(newTop) {\n setOffsetTop(function (origin) {\n var value;\n if (typeof newTop === 'function') {\n value = newTop(origin);\n } else {\n value = newTop;\n }\n var alignedTop = keepInRange(value);\n componentRef.current.scrollTop = alignedTop;\n return alignedTop;\n });\n }\n\n // ================================ Legacy ================================\n // Put ref here since the range is generate by follow\n var rangeRef = useRef({\n start: 0,\n end: mergedData.length\n });\n var diffItemRef = useRef();\n var _useDiffItem = useDiffItem(mergedData, getKey),\n _useDiffItem2 = _slicedToArray(_useDiffItem, 1),\n diffItem = _useDiffItem2[0];\n diffItemRef.current = diffItem;\n\n // ========================== Visible Calculation =========================\n var _React$useMemo = React.useMemo(function () {\n if (!useVirtual) {\n return {\n scrollHeight: undefined,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n\n // Always use virtual scroll bar in avoid shaking\n if (!inVirtual) {\n var _fillerInnerRef$curre;\n return {\n scrollHeight: ((_fillerInnerRef$curre = fillerInnerRef.current) === null || _fillerInnerRef$curre === void 0 ? void 0 : _fillerInnerRef$curre.offsetHeight) || 0,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n var itemTop = 0;\n var startIndex;\n var startOffset;\n var endIndex;\n var dataLen = mergedData.length;\n for (var i = 0; i < dataLen; i += 1) {\n var _item = mergedData[i];\n var key = getKey(_item);\n var cacheHeight = heights.get(key);\n var currentItemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n\n // Check item top in the range\n if (currentItemBottom >= offsetTop && startIndex === undefined) {\n startIndex = i;\n startOffset = itemTop;\n }\n\n // Check item bottom in the range. We will render additional one item for motion usage\n if (currentItemBottom > offsetTop + height && endIndex === undefined) {\n endIndex = i;\n }\n itemTop = currentItemBottom;\n }\n\n // When scrollTop at the end but data cut to small count will reach this\n if (startIndex === undefined) {\n startIndex = 0;\n startOffset = 0;\n endIndex = Math.ceil(height / itemHeight);\n }\n if (endIndex === undefined) {\n endIndex = mergedData.length - 1;\n }\n\n // Give cache to improve scroll experience\n endIndex = Math.min(endIndex + 1, mergedData.length - 1);\n return {\n scrollHeight: itemTop,\n start: startIndex,\n end: endIndex,\n offset: startOffset\n };\n }, [inVirtual, useVirtual, offsetTop, mergedData, heightUpdatedMark, height]),\n scrollHeight = _React$useMemo.scrollHeight,\n start = _React$useMemo.start,\n end = _React$useMemo.end,\n fillerOffset = _React$useMemo.offset;\n rangeRef.current.start = start;\n rangeRef.current.end = end;\n\n // ================================= Size =================================\n var _React$useState = React.useState({\n width: 0,\n height: height\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n size = _React$useState2[0],\n setSize = _React$useState2[1];\n var onHolderResize = function onHolderResize(sizeInfo) {\n setSize({\n width: sizeInfo.offsetWidth,\n height: sizeInfo.offsetHeight\n });\n };\n\n // Hack on scrollbar to enable flash call\n var verticalScrollBarRef = useRef();\n var horizontalScrollBarRef = useRef();\n var horizontalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.width, scrollWidth);\n }, [size.width, scrollWidth]);\n var verticalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.height, scrollHeight);\n }, [size.height, scrollHeight]);\n\n // =============================== In Range ===============================\n var maxScrollHeight = scrollHeight - height;\n var maxScrollHeightRef = useRef(maxScrollHeight);\n maxScrollHeightRef.current = maxScrollHeight;\n function keepInRange(newScrollTop) {\n var newTop = newScrollTop;\n if (!Number.isNaN(maxScrollHeightRef.current)) {\n newTop = Math.min(newTop, maxScrollHeightRef.current);\n }\n newTop = Math.max(newTop, 0);\n return newTop;\n }\n var isScrollAtTop = offsetTop <= 0;\n var isScrollAtBottom = offsetTop >= maxScrollHeight;\n var isScrollAtLeft = offsetLeft <= 0;\n var isScrollAtRight = offsetLeft >= scrollWidth;\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight);\n\n // ================================ Scroll ================================\n var getVirtualScrollInfo = function getVirtualScrollInfo() {\n return {\n x: isRTL ? -offsetLeft : offsetLeft,\n y: offsetTop\n };\n };\n var lastVirtualScrollInfoRef = useRef(getVirtualScrollInfo());\n var triggerScroll = useEvent(function (params) {\n if (onVirtualScroll) {\n var nextInfo = _objectSpread(_objectSpread({}, getVirtualScrollInfo()), params);\n\n // Trigger when offset changed\n if (lastVirtualScrollInfoRef.current.x !== nextInfo.x || lastVirtualScrollInfoRef.current.y !== nextInfo.y) {\n onVirtualScroll(nextInfo);\n lastVirtualScrollInfoRef.current = nextInfo;\n }\n }\n });\n function onScrollBar(newScrollOffset, horizontal) {\n var newOffset = newScrollOffset;\n if (horizontal) {\n flushSync(function () {\n setOffsetLeft(newOffset);\n });\n triggerScroll();\n } else {\n syncScrollTop(newOffset);\n }\n }\n\n // When data size reduce. It may trigger native scroll event back to fit scroll position\n function onFallbackScroll(e) {\n var newScrollTop = e.currentTarget.scrollTop;\n if (newScrollTop !== offsetTop) {\n syncScrollTop(newScrollTop);\n }\n\n // Trigger origin onScroll\n onScroll === null || onScroll === void 0 || onScroll(e);\n triggerScroll();\n }\n var keepInHorizontalRange = function keepInHorizontalRange(nextOffsetLeft) {\n var tmpOffsetLeft = nextOffsetLeft;\n var max = !!scrollWidth ? scrollWidth - size.width : 0;\n tmpOffsetLeft = Math.max(tmpOffsetLeft, 0);\n tmpOffsetLeft = Math.min(tmpOffsetLeft, max);\n return tmpOffsetLeft;\n };\n var onWheelDelta = useEvent(function (offsetXY, fromHorizontal) {\n if (fromHorizontal) {\n // Horizontal scroll no need sync virtual position\n\n flushSync(function () {\n setOffsetLeft(function (left) {\n var nextOffsetLeft = left + (isRTL ? -offsetXY : offsetXY);\n return keepInHorizontalRange(nextOffsetLeft);\n });\n });\n triggerScroll();\n } else {\n syncScrollTop(function (top) {\n var newTop = top + offsetXY;\n return newTop;\n });\n }\n });\n\n // Since this added in global,should use ref to keep update\n var _useFrameWheel = useFrameWheel(useVirtual, isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight, !!scrollWidth, onWheelDelta),\n _useFrameWheel2 = _slicedToArray(_useFrameWheel, 2),\n onRawWheel = _useFrameWheel2[0],\n onFireFoxScroll = _useFrameWheel2[1];\n\n // Mobile touch move\n useMobileTouchMove(useVirtual, componentRef, function (isHorizontal, delta, smoothOffset) {\n if (originScroll(isHorizontal, delta, smoothOffset)) {\n return false;\n }\n onRawWheel({\n preventDefault: function preventDefault() {},\n deltaX: isHorizontal ? delta : 0,\n deltaY: isHorizontal ? 0 : delta\n });\n return true;\n });\n useLayoutEffect(function () {\n // Firefox only\n function onMozMousePixelScroll(e) {\n if (useVirtual) {\n e.preventDefault();\n }\n }\n var componentEle = componentRef.current;\n componentEle.addEventListener('wheel', onRawWheel, {\n passive: false\n });\n componentEle.addEventListener('DOMMouseScroll', onFireFoxScroll, {\n passive: true\n });\n componentEle.addEventListener('MozMousePixelScroll', onMozMousePixelScroll, {\n passive: false\n });\n return function () {\n componentEle.removeEventListener('wheel', onRawWheel);\n componentEle.removeEventListener('DOMMouseScroll', onFireFoxScroll);\n componentEle.removeEventListener('MozMousePixelScroll', onMozMousePixelScroll);\n };\n }, [useVirtual]);\n\n // Sync scroll left\n useLayoutEffect(function () {\n if (scrollWidth) {\n var newOffsetLeft = keepInHorizontalRange(offsetLeft);\n setOffsetLeft(newOffsetLeft);\n triggerScroll({\n x: newOffsetLeft\n });\n }\n }, [size.width, scrollWidth]);\n\n // ================================= Ref ==================================\n var delayHideScrollBar = function delayHideScrollBar() {\n var _verticalScrollBarRef, _horizontalScrollBarR;\n (_verticalScrollBarRef = verticalScrollBarRef.current) === null || _verticalScrollBarRef === void 0 || _verticalScrollBarRef.delayHidden();\n (_horizontalScrollBarR = horizontalScrollBarRef.current) === null || _horizontalScrollBarR === void 0 || _horizontalScrollBarR.delayHidden();\n };\n var _scrollTo = useScrollTo(componentRef, mergedData, heights, itemHeight, getKey, function () {\n return collectHeight(true);\n }, syncScrollTop, delayHideScrollBar);\n React.useImperativeHandle(ref, function () {\n return {\n nativeElement: containerRef.current,\n getScrollInfo: getVirtualScrollInfo,\n scrollTo: function scrollTo(config) {\n function isPosScroll(arg) {\n return arg && _typeof(arg) === 'object' && ('left' in arg || 'top' in arg);\n }\n if (isPosScroll(config)) {\n // Scroll X\n if (config.left !== undefined) {\n setOffsetLeft(keepInHorizontalRange(config.left));\n }\n\n // Scroll Y\n _scrollTo(config.top);\n } else {\n _scrollTo(config);\n }\n }\n };\n });\n\n // ================================ Effect ================================\n /** We need told outside that some list not rendered */\n useLayoutEffect(function () {\n if (onVisibleChange) {\n var renderList = mergedData.slice(start, end + 1);\n onVisibleChange(renderList, mergedData);\n }\n }, [start, end, mergedData]);\n\n // ================================ Extra =================================\n var getSize = useGetSize(mergedData, getKey, heights, itemHeight);\n var extraContent = extraRender === null || extraRender === void 0 ? void 0 : extraRender({\n start: start,\n end: end,\n virtual: inVirtual,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n rtl: isRTL,\n getSize: getSize\n });\n\n // ================================ Render ================================\n var listChildren = useChildren(mergedData, start, end, scrollWidth, offsetLeft, setInstanceRef, children, sharedConfig);\n var componentStyle = null;\n if (height) {\n componentStyle = _objectSpread(_defineProperty({}, fullHeight ? 'height' : 'maxHeight', height), ScrollStyle);\n if (useVirtual) {\n componentStyle.overflowY = 'hidden';\n if (scrollWidth) {\n componentStyle.overflowX = 'hidden';\n }\n if (scrollMoving) {\n componentStyle.pointerEvents = 'none';\n }\n }\n }\n var containerProps = {};\n if (isRTL) {\n containerProps.dir = 'rtl';\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: containerRef,\n style: _objectSpread(_objectSpread({}, style), {}, {\n position: 'relative'\n }),\n className: mergedClassName\n }, containerProps, restProps), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onHolderResize\n }, /*#__PURE__*/React.createElement(Component, {\n className: \"\".concat(prefixCls, \"-holder\"),\n style: componentStyle,\n ref: componentRef,\n onScroll: onFallbackScroll,\n onMouseEnter: delayHideScrollBar\n }, /*#__PURE__*/React.createElement(Filler, {\n prefixCls: prefixCls,\n height: scrollHeight,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n scrollWidth: scrollWidth,\n onInnerResize: collectHeight,\n ref: fillerInnerRef,\n innerProps: innerProps,\n rtl: isRTL,\n extra: extraContent\n }, listChildren))), inVirtual && scrollHeight > height && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: verticalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetTop,\n scrollRange: scrollHeight,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: verticalScrollBarSpinSize,\n containerSize: size.height,\n style: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBarThumb\n }), inVirtual && scrollWidth > size.width && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: horizontalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetLeft,\n scrollRange: scrollWidth,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: horizontalScrollBarSpinSize,\n containerSize: size.width,\n horizontal: true,\n style: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBarThumb\n }));\n}\nvar List = /*#__PURE__*/React.forwardRef(RawList);\nList.displayName = 'List';\nexport default List;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport raf from \"rc-util/es/raf\";\nimport CacheMap from \"../utils/CacheMap\";\nexport default function useHeights(getKey, onItemAdd, onItemRemove) {\n var _React$useState = React.useState(0),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n updatedMark = _React$useState2[0],\n setUpdatedMark = _React$useState2[1];\n var instanceRef = useRef(new Map());\n var heightsRef = useRef(new CacheMap());\n var collectRafRef = useRef();\n function cancelRaf() {\n raf.cancel(collectRafRef.current);\n }\n function collectHeight() {\n var sync = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n cancelRaf();\n var doCollect = function doCollect() {\n instanceRef.current.forEach(function (element, key) {\n if (element && element.offsetParent) {\n var htmlElement = findDOMNode(element);\n var offsetHeight = htmlElement.offsetHeight;\n if (heightsRef.current.get(key) !== offsetHeight) {\n heightsRef.current.set(key, htmlElement.offsetHeight);\n }\n }\n });\n\n // Always trigger update mark to tell parent that should re-calculate heights when resized\n setUpdatedMark(function (c) {\n return c + 1;\n });\n };\n if (sync) {\n doCollect();\n } else {\n collectRafRef.current = raf(doCollect);\n }\n }\n function setInstanceRef(item, instance) {\n var key = getKey(item);\n var origin = instanceRef.current.get(key);\n if (instance) {\n instanceRef.current.set(key, instance);\n collectHeight();\n } else {\n instanceRef.current.delete(key);\n }\n\n // Instance changed\n if (!origin !== !instance) {\n if (instance) {\n onItemAdd === null || onItemAdd === void 0 || onItemAdd(item);\n } else {\n onItemRemove === null || onItemRemove === void 0 || onItemRemove(item);\n }\n }\n }\n useEffect(function () {\n return cancelRaf;\n }, []);\n return [setInstanceRef, collectHeight, heightsRef.current, updatedMark];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { findListDiffIndex } from \"../utils/algorithmUtil\";\nexport default function useDiffItem(data, getKey, onDiff) {\n var _React$useState = React.useState(data),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n prevData = _React$useState2[0],\n setPrevData = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n diffItem = _React$useState4[0],\n setDiffItem = _React$useState4[1];\n React.useEffect(function () {\n var diff = findListDiffIndex(prevData || [], data || [], getKey);\n if ((diff === null || diff === void 0 ? void 0 : diff.index) !== undefined) {\n onDiff === null || onDiff === void 0 || onDiff(diff.index);\n setDiffItem(data[diff.index]);\n }\n setPrevData(data);\n }, [data]);\n return [diffItem];\n}","/**\n * Get index with specific start index one by one. e.g.\n * min: 3, max: 9, start: 6\n *\n * Return index is:\n * [0]: 6\n * [1]: 7\n * [2]: 5\n * [3]: 8\n * [4]: 4\n * [5]: 9\n * [6]: 3\n */\nexport function getIndexByStartLoc(min, max, start, index) {\n var beforeCount = start - min;\n var afterCount = max - start;\n var balanceCount = Math.min(beforeCount, afterCount) * 2;\n\n // Balance\n if (index <= balanceCount) {\n var stepIndex = Math.floor(index / 2);\n if (index % 2) {\n return start + stepIndex + 1;\n }\n return start - stepIndex;\n }\n\n // One is out of range\n if (beforeCount > afterCount) {\n return start - (index - afterCount);\n }\n return start + (index - beforeCount);\n}\n\n/**\n * We assume that 2 list has only 1 item diff and others keeping the order.\n * So we can use dichotomy algorithm to find changed one.\n */\nexport function findListDiffIndex(originList, targetList, getKey) {\n var originLen = originList.length;\n var targetLen = targetList.length;\n var shortList;\n var longList;\n if (originLen === 0 && targetLen === 0) {\n return null;\n }\n if (originLen < targetLen) {\n shortList = originList;\n longList = targetList;\n } else {\n shortList = targetList;\n longList = originList;\n }\n var notExistKey = {\n __EMPTY_ITEM__: true\n };\n function getItemKey(item) {\n if (item !== undefined) {\n return getKey(item);\n }\n return notExistKey;\n }\n\n // Loop to find diff one\n var diffIndex = null;\n var multiple = Math.abs(originLen - targetLen) !== 1;\n for (var i = 0; i < longList.length; i += 1) {\n var shortKey = getItemKey(shortList[i]);\n var longKey = getItemKey(longList[i]);\n if (shortKey !== longKey) {\n diffIndex = i;\n multiple = multiple || shortKey !== getItemKey(longList[i + 1]);\n break;\n }\n }\n return diffIndex === null ? null : {\n index: diffIndex,\n multiple: multiple\n };\n}","import raf from \"rc-util/es/raf\";\nimport { useRef } from 'react';\nimport isFF from \"../utils/isFirefox\";\nimport useOriginScroll from \"./useOriginScroll\";\nexport default function useFrameWheel(inVirtual, isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight, horizontalScroll,\n/***\n * Return `true` when you need to prevent default event\n */\nonWheelDelta) {\n var offsetRef = useRef(0);\n var nextFrameRef = useRef(null);\n\n // Firefox patch\n var wheelValueRef = useRef(null);\n var isMouseScrollRef = useRef(false);\n\n // Scroll status sync\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight);\n function onWheelY(event, deltaY) {\n raf.cancel(nextFrameRef.current);\n offsetRef.current += deltaY;\n wheelValueRef.current = deltaY;\n\n // Do nothing when scroll at the edge, Skip check when is in scroll\n if (originScroll(false, deltaY)) return;\n\n // Proxy of scroll events\n if (!isFF) {\n event.preventDefault();\n }\n nextFrameRef.current = raf(function () {\n // Patch a multiple for Firefox to fix wheel number too small\n // ref: https://github.com/ant-design/ant-design/issues/26372#issuecomment-679460266\n var patchMultiple = isMouseScrollRef.current ? 10 : 1;\n onWheelDelta(offsetRef.current * patchMultiple);\n offsetRef.current = 0;\n });\n }\n function onWheelX(event, deltaX) {\n onWheelDelta(deltaX, true);\n if (!isFF) {\n event.preventDefault();\n }\n }\n\n // Check for which direction does wheel do. `sx` means `shift + wheel`\n var wheelDirectionRef = useRef(null);\n var wheelDirectionCleanRef = useRef(null);\n function onWheel(event) {\n if (!inVirtual) return;\n\n // Wait for 2 frame to clean direction\n raf.cancel(wheelDirectionCleanRef.current);\n wheelDirectionCleanRef.current = raf(function () {\n wheelDirectionRef.current = null;\n }, 2);\n var deltaX = event.deltaX,\n deltaY = event.deltaY,\n shiftKey = event.shiftKey;\n var mergedDeltaX = deltaX;\n var mergedDeltaY = deltaY;\n if (wheelDirectionRef.current === 'sx' || !wheelDirectionRef.current && (shiftKey || false) && deltaY && !deltaX) {\n mergedDeltaX = deltaY;\n mergedDeltaY = 0;\n wheelDirectionRef.current = 'sx';\n }\n var absX = Math.abs(mergedDeltaX);\n var absY = Math.abs(mergedDeltaY);\n if (wheelDirectionRef.current === null) {\n wheelDirectionRef.current = horizontalScroll && absX > absY ? 'x' : 'y';\n }\n if (wheelDirectionRef.current === 'y') {\n onWheelY(event, mergedDeltaY);\n } else {\n onWheelX(event, mergedDeltaX);\n }\n }\n\n // A patch for firefox\n function onFireFoxScroll(event) {\n if (!inVirtual) return;\n isMouseScrollRef.current = event.detail === wheelValueRef.current;\n }\n return [onWheel, onFireFoxScroll];\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/* eslint-disable no-param-reassign */\nimport * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { warning } from 'rc-util';\nvar MAX_TIMES = 10;\nexport default function useScrollTo(containerRef, data, heights, itemHeight, getKey, collectHeight, syncScrollTop, triggerFlash) {\n var scrollRef = React.useRef();\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n syncState = _React$useState2[0],\n setSyncState = _React$useState2[1];\n\n // ========================== Sync Scroll ==========================\n useLayoutEffect(function () {\n if (syncState && syncState.times < MAX_TIMES) {\n // Never reach\n if (!containerRef.current) {\n setSyncState(function (ori) {\n return _objectSpread({}, ori);\n });\n return;\n }\n collectHeight();\n var targetAlign = syncState.targetAlign,\n originAlign = syncState.originAlign,\n index = syncState.index,\n offset = syncState.offset;\n var height = containerRef.current.clientHeight;\n var needCollectHeight = false;\n var newTargetAlign = targetAlign;\n var targetTop = null;\n\n // Go to next frame if height not exist\n if (height) {\n var mergedAlign = targetAlign || originAlign;\n\n // Get top & bottom\n var stackTop = 0;\n var itemTop = 0;\n var itemBottom = 0;\n var maxLen = Math.min(data.length - 1, index);\n for (var i = 0; i <= maxLen; i += 1) {\n var key = getKey(data[i]);\n itemTop = stackTop;\n var cacheHeight = heights.get(key);\n itemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n stackTop = itemBottom;\n }\n\n // Check if need sync height (visible range has item not record height)\n var leftHeight = mergedAlign === 'top' ? offset : height - offset;\n for (var _i = maxLen; _i >= 0; _i -= 1) {\n var _key = getKey(data[_i]);\n var _cacheHeight = heights.get(_key);\n if (_cacheHeight === undefined) {\n needCollectHeight = true;\n break;\n }\n leftHeight -= _cacheHeight;\n if (leftHeight <= 0) {\n break;\n }\n }\n\n // Scroll to\n switch (mergedAlign) {\n case 'top':\n targetTop = itemTop - offset;\n break;\n case 'bottom':\n targetTop = itemBottom - height + offset;\n break;\n default:\n {\n var scrollTop = containerRef.current.scrollTop;\n var scrollBottom = scrollTop + height;\n if (itemTop < scrollTop) {\n newTargetAlign = 'top';\n } else if (itemBottom > scrollBottom) {\n newTargetAlign = 'bottom';\n }\n }\n }\n if (targetTop !== null) {\n syncScrollTop(targetTop);\n }\n\n // One more time for sync\n if (targetTop !== syncState.lastTop) {\n needCollectHeight = true;\n }\n }\n\n // Trigger next effect\n if (needCollectHeight) {\n setSyncState(_objectSpread(_objectSpread({}, syncState), {}, {\n times: syncState.times + 1,\n targetAlign: newTargetAlign,\n lastTop: targetTop\n }));\n }\n } else if (process.env.NODE_ENV !== 'production' && (syncState === null || syncState === void 0 ? void 0 : syncState.times) === MAX_TIMES) {\n warning(false, 'Seems `scrollTo` with `rc-virtual-list` reach the max limitation. Please fire issue for us. Thanks.');\n }\n }, [syncState, containerRef.current]);\n\n // =========================== Scroll To ===========================\n return function (arg) {\n // When not argument provided, we think dev may want to show the scrollbar\n if (arg === null || arg === undefined) {\n triggerFlash();\n return;\n }\n\n // Normal scroll logic\n raf.cancel(scrollRef.current);\n if (typeof arg === 'number') {\n syncScrollTop(arg);\n } else if (arg && _typeof(arg) === 'object') {\n var index;\n var align = arg.align;\n if ('index' in arg) {\n index = arg.index;\n } else {\n index = data.findIndex(function (item) {\n return getKey(item) === arg.key;\n });\n }\n var _arg$offset = arg.offset,\n offset = _arg$offset === void 0 ? 0 : _arg$offset;\n setSyncState({\n times: 0,\n index: index,\n offset: offset,\n originAlign: align\n });\n }\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Size info need loop query for the `heights` which will has the perf issue.\n * Let cache result for each render phase.\n */\nexport function useGetSize(mergedData, getKey, heights, itemHeight) {\n var _React$useMemo = React.useMemo(function () {\n return [new Map(), []];\n }, [mergedData, heights.id, itemHeight]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n key2Index = _React$useMemo2[0],\n bottomList = _React$useMemo2[1];\n var getSize = function getSize(startKey) {\n var endKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : startKey;\n // Get from cache first\n var startIndex = key2Index.get(startKey);\n var endIndex = key2Index.get(endKey);\n\n // Loop to fill the cache\n if (startIndex === undefined || endIndex === undefined) {\n var dataLen = mergedData.length;\n for (var i = bottomList.length; i < dataLen; i += 1) {\n var _heights$get;\n var item = mergedData[i];\n var key = getKey(item);\n key2Index.set(key, i);\n var cacheHeight = (_heights$get = heights.get(key)) !== null && _heights$get !== void 0 ? _heights$get : itemHeight;\n bottomList[i] = (bottomList[i - 1] || 0) + cacheHeight;\n if (key === startKey) {\n startIndex = i;\n }\n if (key === endKey) {\n endIndex = i;\n }\n if (startIndex !== undefined && endIndex !== undefined) {\n break;\n }\n }\n }\n return {\n top: bottomList[startIndex - 1] || 0,\n bottom: bottomList[endIndex]\n };\n };\n return getSize;\n}","import * as React from 'react';\nimport { Item } from \"../Item\";\nexport default function useChildren(list, startIndex, endIndex, scrollWidth, offsetX, setNodeRef, renderFunc, _ref) {\n var getKey = _ref.getKey;\n return list.slice(startIndex, endIndex + 1).map(function (item, index) {\n var eleIndex = startIndex + index;\n var node = renderFunc(item, eleIndex, {\n style: {\n width: scrollWidth\n },\n offsetX: offsetX\n });\n var key = getKey(item);\n return /*#__PURE__*/React.createElement(Item, {\n key: key,\n setRef: function setRef(ele) {\n return setNodeRef(item, ele);\n }\n }, node);\n });\n}","import List from \"./List\";\nexport default List;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar _excluded = [\"disabled\", \"title\", \"children\", \"style\", \"className\"];\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport omit from \"rc-util/es/omit\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport List from 'rc-virtual-list';\nimport * as React from 'react';\nimport { useEffect } from 'react';\nimport SelectContext from \"./SelectContext\";\nimport TransBtn from \"./TransBtn\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nimport { isPlatformMac } from \"./utils/platformUtil\";\nimport { isValidCount } from \"./utils/valueUtil\";\n\n// export interface OptionListProps<OptionsType extends object[]> {\n\nfunction isTitleType(content) {\n return typeof content === 'string' || typeof content === 'number';\n}\n\n/**\n * Using virtual list of option display.\n * Will fallback to dom if use customize render.\n */\nvar OptionList = function OptionList(_, ref) {\n var _useBaseProps = useBaseProps(),\n prefixCls = _useBaseProps.prefixCls,\n id = _useBaseProps.id,\n open = _useBaseProps.open,\n multiple = _useBaseProps.multiple,\n mode = _useBaseProps.mode,\n searchValue = _useBaseProps.searchValue,\n toggleOpen = _useBaseProps.toggleOpen,\n notFoundContent = _useBaseProps.notFoundContent,\n onPopupScroll = _useBaseProps.onPopupScroll;\n var _React$useContext = React.useContext(SelectContext),\n maxCount = _React$useContext.maxCount,\n flattenOptions = _React$useContext.flattenOptions,\n onActiveValue = _React$useContext.onActiveValue,\n defaultActiveFirstOption = _React$useContext.defaultActiveFirstOption,\n onSelect = _React$useContext.onSelect,\n menuItemSelectedIcon = _React$useContext.menuItemSelectedIcon,\n rawValues = _React$useContext.rawValues,\n fieldNames = _React$useContext.fieldNames,\n virtual = _React$useContext.virtual,\n direction = _React$useContext.direction,\n listHeight = _React$useContext.listHeight,\n listItemHeight = _React$useContext.listItemHeight,\n optionRender = _React$useContext.optionRender;\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n var memoFlattenOptions = useMemo(function () {\n return flattenOptions;\n }, [open, flattenOptions], function (prev, next) {\n return next[0] && prev[1] !== next[1];\n });\n\n // =========================== List ===========================\n var listRef = React.useRef(null);\n var overMaxCount = React.useMemo(function () {\n return multiple && isValidCount(maxCount) && (rawValues === null || rawValues === void 0 ? void 0 : rawValues.size) >= maxCount;\n }, [multiple, maxCount, rawValues === null || rawValues === void 0 ? void 0 : rawValues.size]);\n var onListMouseDown = function onListMouseDown(event) {\n event.preventDefault();\n };\n var scrollIntoView = function scrollIntoView(args) {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.scrollTo(typeof args === 'number' ? {\n index: args\n } : args);\n };\n\n // https://github.com/ant-design/ant-design/issues/34975\n var isSelected = React.useCallback(function (value) {\n if (mode === 'combobox') {\n return false;\n }\n return rawValues.has(value);\n }, [mode, _toConsumableArray(rawValues).toString(), rawValues.size]);\n\n // ========================== Active ==========================\n var getEnabledActiveIndex = function getEnabledActiveIndex(index) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var len = memoFlattenOptions.length;\n for (var i = 0; i < len; i += 1) {\n var current = (index + i * offset + len) % len;\n var _ref = memoFlattenOptions[current] || {},\n group = _ref.group,\n data = _ref.data;\n if (!group && !(data !== null && data !== void 0 && data.disabled) && (isSelected(data.value) || !overMaxCount)) {\n return current;\n }\n }\n return -1;\n };\n var _React$useState = React.useState(function () {\n return getEnabledActiveIndex(0);\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeIndex = _React$useState2[0],\n setActiveIndex = _React$useState2[1];\n var setActive = function setActive(index) {\n var fromKeyboard = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n setActiveIndex(index);\n var info = {\n source: fromKeyboard ? 'keyboard' : 'mouse'\n };\n\n // Trigger active event\n var flattenItem = memoFlattenOptions[index];\n if (!flattenItem) {\n onActiveValue(null, -1, info);\n return;\n }\n onActiveValue(flattenItem.value, index, info);\n };\n\n // Auto active first item when list length or searchValue changed\n useEffect(function () {\n setActive(defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1);\n }, [memoFlattenOptions.length, searchValue]);\n\n // https://github.com/ant-design/ant-design/issues/48036\n var isAriaSelected = React.useCallback(function (value) {\n if (mode === 'combobox') {\n return String(value).toLowerCase() === searchValue.toLowerCase();\n }\n return rawValues.has(value);\n }, [mode, searchValue, _toConsumableArray(rawValues).toString(), rawValues.size]);\n\n // Auto scroll to item position in single mode\n useEffect(function () {\n /**\n * React will skip `onChange` when component update.\n * `setActive` function will call root accessibility state update which makes re-render.\n * So we need to delay to let Input component trigger onChange first.\n */\n var timeoutId = setTimeout(function () {\n if (!multiple && open && rawValues.size === 1) {\n var value = Array.from(rawValues)[0];\n var index = memoFlattenOptions.findIndex(function (_ref2) {\n var data = _ref2.data;\n return data.value === value;\n });\n if (index !== -1) {\n setActive(index);\n scrollIntoView(index);\n }\n }\n });\n\n // Force trigger scrollbar visible when open\n if (open) {\n var _listRef$current2;\n (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 || _listRef$current2.scrollTo(undefined);\n }\n return function () {\n return clearTimeout(timeoutId);\n };\n }, [open, searchValue]);\n\n // ========================== Values ==========================\n var onSelectValue = function onSelectValue(value) {\n if (value !== undefined) {\n onSelect(value, {\n selected: !rawValues.has(value)\n });\n }\n\n // Single mode should always close by select\n if (!multiple) {\n toggleOpen(false);\n }\n };\n\n // ========================= Keyboard =========================\n React.useImperativeHandle(ref, function () {\n return {\n onKeyDown: function onKeyDown(event) {\n var which = event.which,\n ctrlKey = event.ctrlKey;\n switch (which) {\n // >>> Arrow keys & ctrl + n/p on Mac\n case KeyCode.N:\n case KeyCode.P:\n case KeyCode.UP:\n case KeyCode.DOWN:\n {\n var offset = 0;\n if (which === KeyCode.UP) {\n offset = -1;\n } else if (which === KeyCode.DOWN) {\n offset = 1;\n } else if (isPlatformMac() && ctrlKey) {\n if (which === KeyCode.N) {\n offset = 1;\n } else if (which === KeyCode.P) {\n offset = -1;\n }\n }\n if (offset !== 0) {\n var nextActiveIndex = getEnabledActiveIndex(activeIndex + offset, offset);\n scrollIntoView(nextActiveIndex);\n setActive(nextActiveIndex, true);\n }\n break;\n }\n\n // >>> Select (Tab / Enter)\n case KeyCode.TAB:\n case KeyCode.ENTER:\n {\n var _item$data;\n // value\n var item = memoFlattenOptions[activeIndex];\n if (item && !(item !== null && item !== void 0 && (_item$data = item.data) !== null && _item$data !== void 0 && _item$data.disabled) && !overMaxCount) {\n onSelectValue(item.value);\n } else {\n onSelectValue(undefined);\n }\n if (open) {\n event.preventDefault();\n }\n break;\n }\n\n // >>> Close\n case KeyCode.ESC:\n {\n toggleOpen(false);\n if (open) {\n event.stopPropagation();\n }\n }\n }\n },\n onKeyUp: function onKeyUp() {},\n scrollTo: function scrollTo(index) {\n scrollIntoView(index);\n }\n };\n });\n\n // ========================== Render ==========================\n if (memoFlattenOptions.length === 0) {\n return /*#__PURE__*/React.createElement(\"div\", {\n role: \"listbox\",\n id: \"\".concat(id, \"_list\"),\n className: \"\".concat(itemPrefixCls, \"-empty\"),\n onMouseDown: onListMouseDown\n }, notFoundContent);\n }\n var omitFieldNameList = Object.keys(fieldNames).map(function (key) {\n return fieldNames[key];\n });\n var getLabel = function getLabel(item) {\n return item.label;\n };\n function getItemAriaProps(item, index) {\n var group = item.group;\n return {\n role: group ? 'presentation' : 'option',\n id: \"\".concat(id, \"_list_\").concat(index)\n };\n }\n var renderItem = function renderItem(index) {\n var item = memoFlattenOptions[index];\n if (!item) {\n return null;\n }\n var itemData = item.data || {};\n var value = itemData.value;\n var group = item.group;\n var attrs = pickAttrs(itemData, true);\n var mergedLabel = getLabel(item);\n return item ? /*#__PURE__*/React.createElement(\"div\", _extends({\n \"aria-label\": typeof mergedLabel === 'string' && !group ? mergedLabel : null\n }, attrs, {\n key: index\n }, getItemAriaProps(item, index), {\n \"aria-selected\": isAriaSelected(value)\n }), value) : null;\n };\n var a11yProps = {\n role: 'listbox',\n id: \"\".concat(id, \"_list\")\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, virtual && /*#__PURE__*/React.createElement(\"div\", _extends({}, a11yProps, {\n style: {\n height: 0,\n width: 0,\n overflow: 'hidden'\n }\n }), renderItem(activeIndex - 1), renderItem(activeIndex), renderItem(activeIndex + 1)), /*#__PURE__*/React.createElement(List, {\n itemKey: \"key\",\n ref: listRef,\n data: memoFlattenOptions,\n height: listHeight,\n itemHeight: listItemHeight,\n fullHeight: false,\n onMouseDown: onListMouseDown,\n onScroll: onPopupScroll,\n virtual: virtual,\n direction: direction,\n innerProps: virtual ? null : a11yProps\n }, function (item, itemIndex) {\n var group = item.group,\n groupOption = item.groupOption,\n data = item.data,\n label = item.label,\n value = item.value;\n var key = data.key;\n\n // Group\n if (group) {\n var _data$title;\n var groupTitle = (_data$title = data.title) !== null && _data$title !== void 0 ? _data$title : isTitleType(label) ? label.toString() : undefined;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(itemPrefixCls, \"\".concat(itemPrefixCls, \"-group\"), data.className),\n title: groupTitle\n }, label !== undefined ? label : key);\n }\n var disabled = data.disabled,\n title = data.title,\n children = data.children,\n style = data.style,\n className = data.className,\n otherProps = _objectWithoutProperties(data, _excluded);\n var passedProps = omit(otherProps, omitFieldNameList);\n\n // Option\n var selected = isSelected(value);\n var mergedDisabled = disabled || !selected && overMaxCount;\n var optionPrefixCls = \"\".concat(itemPrefixCls, \"-option\");\n var optionClassName = classNames(itemPrefixCls, optionPrefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(optionPrefixCls, \"-grouped\"), groupOption), \"\".concat(optionPrefixCls, \"-active\"), activeIndex === itemIndex && !mergedDisabled), \"\".concat(optionPrefixCls, \"-disabled\"), mergedDisabled), \"\".concat(optionPrefixCls, \"-selected\"), selected));\n var mergedLabel = getLabel(item);\n var iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === 'function' || selected;\n\n // https://github.com/ant-design/ant-design/issues/34145\n var content = typeof mergedLabel === 'number' ? mergedLabel : mergedLabel || value;\n // https://github.com/ant-design/ant-design/issues/26717\n var optionTitle = isTitleType(content) ? content.toString() : undefined;\n if (title !== undefined) {\n optionTitle = title;\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, pickAttrs(passedProps), !virtual ? getItemAriaProps(item, itemIndex) : {}, {\n \"aria-selected\": isAriaSelected(value),\n className: optionClassName,\n title: optionTitle,\n onMouseMove: function onMouseMove() {\n if (activeIndex === itemIndex || mergedDisabled) {\n return;\n }\n setActive(itemIndex);\n },\n onClick: function onClick() {\n if (!mergedDisabled) {\n onSelectValue(value);\n }\n },\n style: style\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(optionPrefixCls, \"-content\")\n }, typeof optionRender === 'function' ? optionRender(item, {\n index: itemIndex\n }) : content), /*#__PURE__*/React.isValidElement(menuItemSelectedIcon) || selected, iconVisible && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(itemPrefixCls, \"-option-state\"),\n customizeIcon: menuItemSelectedIcon,\n customizeIconProps: {\n value: value,\n disabled: mergedDisabled,\n isSelected: selected\n }\n }, selected ? '✓' : null));\n }));\n};\nvar RefOptionList = /*#__PURE__*/React.forwardRef(OptionList);\nif (process.env.NODE_ENV !== 'production') {\n RefOptionList.displayName = 'OptionList';\n}\nexport default RefOptionList;","/* istanbul ignore file */\nexport function isPlatformMac() {\n return /(mac\\sos|macintosh)/i.test(navigator.appVersion);\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport { toArray } from \"../utils/commonUtil\";\nimport { injectPropsWithOption } from \"../utils/valueUtil\";\nfunction includes(test, search) {\n return toArray(test).join('').toUpperCase().includes(search);\n}\nexport default (function (options, fieldNames, searchValue, filterOption, optionFilterProp) {\n return React.useMemo(function () {\n if (!searchValue || filterOption === false) {\n return options;\n }\n var fieldOptions = fieldNames.options,\n fieldLabel = fieldNames.label,\n fieldValue = fieldNames.value;\n var filteredOptions = [];\n var customizeFilter = typeof filterOption === 'function';\n var upperSearch = searchValue.toUpperCase();\n var filterFunc = customizeFilter ? filterOption : function (_, option) {\n // Use provided `optionFilterProp`\n if (optionFilterProp) {\n return includes(option[optionFilterProp], upperSearch);\n }\n\n // Auto select `label` or `value` by option type\n if (option[fieldOptions]) {\n // hack `fieldLabel` since `OptionGroup` children is not `label`\n return includes(option[fieldLabel !== 'children' ? fieldLabel : 'label'], upperSearch);\n }\n return includes(option[fieldValue], upperSearch);\n };\n var wrapOption = customizeFilter ? function (opt) {\n return injectPropsWithOption(opt);\n } : function (opt) {\n return opt;\n };\n options.forEach(function (item) {\n // Group should check child options\n if (item[fieldOptions]) {\n // Check group first\n var matchGroup = filterFunc(searchValue, wrapOption(item));\n if (matchGroup) {\n filteredOptions.push(item);\n } else {\n // Check option\n var subOptions = item[fieldOptions].filter(function (subItem) {\n return filterFunc(searchValue, wrapOption(subItem));\n });\n if (subOptions.length) {\n filteredOptions.push(_objectSpread(_objectSpread({}, item), {}, _defineProperty({}, fieldOptions, subOptions)));\n }\n }\n return;\n }\n if (filterFunc(searchValue, wrapOption(item))) {\n filteredOptions.push(item);\n }\n });\n return filteredOptions;\n }, [options, filterOption, optionFilterProp, searchValue, fieldNames]);\n});","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nvar uuid = 0;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && canUseDom();\n\n/** Get unique id for accessibility usage */\nexport function getUUID() {\n var retId;\n\n // Test never reach\n /* istanbul ignore if */\n if (isBrowserClient) {\n retId = uuid;\n uuid += 1;\n } else {\n retId = 'TEST_OR_SSR';\n }\n return retId;\n}\nexport default function useId(id) {\n // Inner id for accessibility usage. Only work in client side\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerId = _React$useState2[0],\n setInnerId = _React$useState2[1];\n React.useEffect(function () {\n setInnerId(\"rc_select_\".concat(getUUID()));\n }, []);\n return id || innerId;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\", \"value\"],\n _excluded2 = [\"children\"];\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nfunction convertNodeToOption(node) {\n var _ref = node,\n key = _ref.key,\n _ref$props = _ref.props,\n children = _ref$props.children,\n value = _ref$props.value,\n restProps = _objectWithoutProperties(_ref$props, _excluded);\n return _objectSpread({\n key: key,\n value: value !== undefined ? value : key,\n children: children\n }, restProps);\n}\nexport function convertChildrenToData(nodes) {\n var optionOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return toArray(nodes).map(function (node, index) {\n if (! /*#__PURE__*/React.isValidElement(node) || !node.type) {\n return null;\n }\n var _ref2 = node,\n isSelectOptGroup = _ref2.type.isSelectOptGroup,\n key = _ref2.key,\n _ref2$props = _ref2.props,\n children = _ref2$props.children,\n restProps = _objectWithoutProperties(_ref2$props, _excluded2);\n if (optionOnly || !isSelectOptGroup) {\n return convertNodeToOption(node);\n }\n return _objectSpread(_objectSpread({\n key: \"__RC_SELECT_GRP__\".concat(key === null ? index : key, \"__\"),\n label: key\n }, restProps), {}, {\n options: convertChildrenToData(children)\n });\n }).filter(function (data) {\n return data;\n });\n}","import * as React from 'react';\nimport { convertChildrenToData } from \"../utils/legacyUtil\";\n\n/**\n * Parse `children` to `options` if `options` is not provided.\n * Then flatten the `options`.\n */\nvar useOptions = function useOptions(options, children, fieldNames, optionFilterProp, optionLabelProp) {\n return React.useMemo(function () {\n var mergedOptions = options;\n var childrenAsData = !options;\n if (childrenAsData) {\n mergedOptions = convertChildrenToData(children);\n }\n var valueOptions = new Map();\n var labelOptions = new Map();\n var setLabelOptions = function setLabelOptions(labelOptionsMap, option, key) {\n if (key && typeof key === 'string') {\n labelOptionsMap.set(option[key], option);\n }\n };\n var dig = function dig(optionList) {\n var isChildren = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n // for loop to speed up collection speed\n for (var i = 0; i < optionList.length; i += 1) {\n var option = optionList[i];\n if (!option[fieldNames.options] || isChildren) {\n valueOptions.set(option[fieldNames.value], option);\n setLabelOptions(labelOptions, option, fieldNames.label);\n // https://github.com/ant-design/ant-design/issues/35304\n setLabelOptions(labelOptions, option, optionFilterProp);\n setLabelOptions(labelOptions, option, optionLabelProp);\n } else {\n dig(option[fieldNames.options], true);\n }\n }\n };\n dig(mergedOptions);\n return {\n options: mergedOptions,\n valueOptions: valueOptions,\n labelOptions: labelOptions\n };\n }, [options, children, fieldNames, optionFilterProp, optionLabelProp]);\n};\nexport default useOptions;","import * as React from 'react';\n\n/**\n * Same as `React.useCallback` but always return a memoized function\n * but redirect to real function.\n */\nexport default function useRefFunc(callback) {\n var funcRef = React.useRef();\n funcRef.current = callback;\n var cacheFn = React.useCallback(function () {\n return funcRef.current.apply(funcRef, arguments);\n }, []);\n return cacheFn;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"id\", \"mode\", \"prefixCls\", \"backfill\", \"fieldNames\", \"inputValue\", \"searchValue\", \"onSearch\", \"autoClearSearchValue\", \"onSelect\", \"onDeselect\", \"dropdownMatchSelectWidth\", \"filterOption\", \"filterSort\", \"optionFilterProp\", \"optionLabelProp\", \"options\", \"optionRender\", \"children\", \"defaultActiveFirstOption\", \"menuItemSelectedIcon\", \"virtual\", \"direction\", \"listHeight\", \"listItemHeight\", \"labelRender\", \"value\", \"defaultValue\", \"labelInValue\", \"onChange\", \"maxCount\"];\n/**\n * To match accessibility requirement, we always provide an input in the component.\n * Other element will not set `tabIndex` to avoid `onBlur` sequence problem.\n * For focused select, we set `aria-live=\"polite\"` to update the accessibility content.\n *\n * ref:\n * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions\n *\n * New api:\n * - listHeight\n * - listItemHeight\n * - component\n *\n * Remove deprecated api:\n * - multiple\n * - tags\n * - combobox\n * - firstActiveValue\n * - dropdownMenuStyle\n * - openClassName (Not list in api)\n *\n * Update:\n * - `backfill` only support `combobox` mode\n * - `combobox` mode not support `labelInValue` since it's meaningless\n * - `getInputElement` only support `combobox` mode\n * - `onChange` return OptionData instead of ReactNode\n * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode\n * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option\n * - `combobox` mode not support `optionLabelProp`\n */\n\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport BaseSelect, { isMultiple } from \"./BaseSelect\";\nimport OptGroup from \"./OptGroup\";\nimport Option from \"./Option\";\nimport OptionList from \"./OptionList\";\nimport SelectContext from \"./SelectContext\";\nimport useCache from \"./hooks/useCache\";\nimport useFilterOptions from \"./hooks/useFilterOptions\";\nimport useId from \"./hooks/useId\";\nimport useOptions from \"./hooks/useOptions\";\nimport useRefFunc from \"./hooks/useRefFunc\";\nimport { hasValue, isComboNoValue, toArray } from \"./utils/commonUtil\";\nimport { fillFieldNames, flattenOptions, injectPropsWithOption } from \"./utils/valueUtil\";\nimport warningProps, { warningNullOptions } from \"./utils/warningPropsUtil\";\nvar OMIT_DOM_PROPS = ['inputValue'];\nfunction isRawValue(value) {\n return !value || _typeof(value) !== 'object';\n}\nvar Select = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var id = props.id,\n mode = props.mode,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-select' : _props$prefixCls,\n backfill = props.backfill,\n fieldNames = props.fieldNames,\n inputValue = props.inputValue,\n searchValue = props.searchValue,\n onSearch = props.onSearch,\n _props$autoClearSearc = props.autoClearSearchValue,\n autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,\n onSelect = props.onSelect,\n onDeselect = props.onDeselect,\n _props$dropdownMatchS = props.dropdownMatchSelectWidth,\n dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,\n filterOption = props.filterOption,\n filterSort = props.filterSort,\n optionFilterProp = props.optionFilterProp,\n optionLabelProp = props.optionLabelProp,\n options = props.options,\n optionRender = props.optionRender,\n children = props.children,\n defaultActiveFirstOption = props.defaultActiveFirstOption,\n menuItemSelectedIcon = props.menuItemSelectedIcon,\n virtual = props.virtual,\n direction = props.direction,\n _props$listHeight = props.listHeight,\n listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,\n _props$listItemHeight = props.listItemHeight,\n listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,\n labelRender = props.labelRender,\n value = props.value,\n defaultValue = props.defaultValue,\n labelInValue = props.labelInValue,\n onChange = props.onChange,\n maxCount = props.maxCount,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedId = useId(id);\n var multiple = isMultiple(mode);\n var childrenAsData = !!(!options && children);\n var mergedFilterOption = React.useMemo(function () {\n if (filterOption === undefined && mode === 'combobox') {\n return false;\n }\n return filterOption;\n }, [filterOption, mode]);\n\n // ========================= FieldNames =========================\n var mergedFieldNames = React.useMemo(function () {\n return fillFieldNames(fieldNames, childrenAsData);\n }, /* eslint-disable react-hooks/exhaustive-deps */\n [\n // We stringify fieldNames to avoid unnecessary re-renders.\n JSON.stringify(fieldNames), childrenAsData]\n /* eslint-enable react-hooks/exhaustive-deps */);\n\n // =========================== Search ===========================\n var _useMergedState = useMergedState('', {\n value: searchValue !== undefined ? searchValue : inputValue,\n postState: function postState(search) {\n return search || '';\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedSearchValue = _useMergedState2[0],\n setSearchValue = _useMergedState2[1];\n\n // =========================== Option ===========================\n var parsedOptions = useOptions(options, children, mergedFieldNames, optionFilterProp, optionLabelProp);\n var valueOptions = parsedOptions.valueOptions,\n labelOptions = parsedOptions.labelOptions,\n mergedOptions = parsedOptions.options;\n\n // ========================= Wrap Value =========================\n var convert2LabelValues = React.useCallback(function (draftValues) {\n // Convert to array\n var valueList = toArray(draftValues);\n\n // Convert to labelInValue type\n return valueList.map(function (val) {\n var rawValue;\n var rawLabel;\n var rawKey;\n var rawDisabled;\n var rawTitle;\n\n // Fill label & value\n if (isRawValue(val)) {\n rawValue = val;\n } else {\n var _val$value;\n rawKey = val.key;\n rawLabel = val.label;\n rawValue = (_val$value = val.value) !== null && _val$value !== void 0 ? _val$value : rawKey;\n }\n var option = valueOptions.get(rawValue);\n if (option) {\n var _option$key;\n // Fill missing props\n if (rawLabel === undefined) rawLabel = option === null || option === void 0 ? void 0 : option[optionLabelProp || mergedFieldNames.label];\n if (rawKey === undefined) rawKey = (_option$key = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key !== void 0 ? _option$key : rawValue;\n rawDisabled = option === null || option === void 0 ? void 0 : option.disabled;\n rawTitle = option === null || option === void 0 ? void 0 : option.title;\n\n // Warning if label not same as provided\n if (process.env.NODE_ENV !== 'production' && !optionLabelProp) {\n var optionLabel = option === null || option === void 0 ? void 0 : option[mergedFieldNames.label];\n if (optionLabel !== undefined && ! /*#__PURE__*/React.isValidElement(optionLabel) && ! /*#__PURE__*/React.isValidElement(rawLabel) && optionLabel !== rawLabel) {\n warning(false, '`label` of `value` is not same as `label` in Select options.');\n }\n }\n }\n return {\n label: rawLabel,\n value: rawValue,\n key: rawKey,\n disabled: rawDisabled,\n title: rawTitle\n };\n });\n }, [mergedFieldNames, optionLabelProp, valueOptions]);\n\n // =========================== Values ===========================\n var _useMergedState3 = useMergedState(defaultValue, {\n value: value\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n internalValue = _useMergedState4[0],\n setInternalValue = _useMergedState4[1];\n\n // Merged value with LabelValueType\n var rawLabeledValues = React.useMemo(function () {\n var _values$;\n var newInternalValue = multiple && internalValue === null ? [] : internalValue;\n var values = convert2LabelValues(newInternalValue);\n\n // combobox no need save value when it's no value (exclude value equal 0)\n if (mode === 'combobox' && isComboNoValue((_values$ = values[0]) === null || _values$ === void 0 ? void 0 : _values$.value)) {\n return [];\n }\n return values;\n }, [internalValue, convert2LabelValues, mode, multiple]);\n\n // Fill label with cache to avoid option remove\n var _useCache = useCache(rawLabeledValues, valueOptions),\n _useCache2 = _slicedToArray(_useCache, 2),\n mergedValues = _useCache2[0],\n getMixedOption = _useCache2[1];\n var displayValues = React.useMemo(function () {\n // `null` need show as placeholder instead\n // https://github.com/ant-design/ant-design/issues/25057\n if (!mode && mergedValues.length === 1) {\n var firstValue = mergedValues[0];\n if (firstValue.value === null && (firstValue.label === null || firstValue.label === undefined)) {\n return [];\n }\n }\n return mergedValues.map(function (item) {\n var _ref;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_ref = typeof labelRender === 'function' ? labelRender(item) : item.label) !== null && _ref !== void 0 ? _ref : item.value\n });\n });\n }, [mode, mergedValues, labelRender]);\n\n /** Convert `displayValues` to raw value type set */\n var rawValues = React.useMemo(function () {\n return new Set(mergedValues.map(function (val) {\n return val.value;\n }));\n }, [mergedValues]);\n React.useEffect(function () {\n if (mode === 'combobox') {\n var _mergedValues$;\n var strValue = (_mergedValues$ = mergedValues[0]) === null || _mergedValues$ === void 0 ? void 0 : _mergedValues$.value;\n setSearchValue(hasValue(strValue) ? String(strValue) : '');\n }\n }, [mergedValues]);\n\n // ======================= Display Option =======================\n // Create a placeholder item if not exist in `options`\n var createTagOption = useRefFunc(function (val, label) {\n var mergedLabel = label !== null && label !== void 0 ? label : val;\n return _defineProperty(_defineProperty({}, mergedFieldNames.value, val), mergedFieldNames.label, mergedLabel);\n });\n\n // Fill tag as option if mode is `tags`\n var filledTagOptions = React.useMemo(function () {\n if (mode !== 'tags') {\n return mergedOptions;\n }\n\n // >>> Tag mode\n var cloneOptions = _toConsumableArray(mergedOptions);\n\n // Check if value exist in options (include new patch item)\n var existOptions = function existOptions(val) {\n return valueOptions.has(val);\n };\n\n // Fill current value as option\n _toConsumableArray(mergedValues).sort(function (a, b) {\n return a.value < b.value ? -1 : 1;\n }).forEach(function (item) {\n var val = item.value;\n if (!existOptions(val)) {\n cloneOptions.push(createTagOption(val, item.label));\n }\n });\n return cloneOptions;\n }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]);\n var filteredOptions = useFilterOptions(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, optionFilterProp);\n\n // Fill options with search value if needed\n var filledSearchOptions = React.useMemo(function () {\n if (mode !== 'tags' || !mergedSearchValue || filteredOptions.some(function (item) {\n return item[optionFilterProp || 'value'] === mergedSearchValue;\n })) {\n return filteredOptions;\n }\n // ignore when search value equal select input value\n if (filteredOptions.some(function (item) {\n return item[mergedFieldNames.value] === mergedSearchValue;\n })) {\n return filteredOptions;\n }\n // Fill search value as option\n return [createTagOption(mergedSearchValue)].concat(_toConsumableArray(filteredOptions));\n }, [createTagOption, optionFilterProp, mode, filteredOptions, mergedSearchValue, mergedFieldNames]);\n var sorter = function sorter(inputOptions) {\n var sortedOptions = _toConsumableArray(inputOptions).sort(function (a, b) {\n return filterSort(a, b, {\n searchValue: mergedSearchValue\n });\n });\n return sortedOptions.map(function (item) {\n if (Array.isArray(item.options)) {\n return _objectSpread(_objectSpread({}, item), {}, {\n options: item.options.length > 0 ? sorter(item.options) : item.options\n });\n }\n return item;\n });\n };\n var orderedFilteredOptions = React.useMemo(function () {\n if (!filterSort) {\n return filledSearchOptions;\n }\n return sorter(filledSearchOptions);\n }, [filledSearchOptions, filterSort, mergedSearchValue]);\n var displayOptions = React.useMemo(function () {\n return flattenOptions(orderedFilteredOptions, {\n fieldNames: mergedFieldNames,\n childrenAsData: childrenAsData\n });\n }, [orderedFilteredOptions, mergedFieldNames, childrenAsData]);\n\n // =========================== Change ===========================\n var triggerChange = function triggerChange(values) {\n var labeledValues = convert2LabelValues(values);\n setInternalValue(labeledValues);\n if (onChange && (\n // Trigger event only when value changed\n labeledValues.length !== mergedValues.length || labeledValues.some(function (newVal, index) {\n var _mergedValues$index;\n return ((_mergedValues$index = mergedValues[index]) === null || _mergedValues$index === void 0 ? void 0 : _mergedValues$index.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value);\n }))) {\n var returnValues = labelInValue ? labeledValues : labeledValues.map(function (v) {\n return v.value;\n });\n var returnOptions = labeledValues.map(function (v) {\n return injectPropsWithOption(getMixedOption(v.value));\n });\n onChange(\n // Value\n multiple ? returnValues : returnValues[0],\n // Option\n multiple ? returnOptions : returnOptions[0]);\n }\n };\n\n // ======================= Accessibility ========================\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeValue = _React$useState2[0],\n setActiveValue = _React$useState2[1];\n var _React$useState3 = React.useState(0),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n accessibilityIndex = _React$useState4[0],\n setAccessibilityIndex = _React$useState4[1];\n var mergedDefaultActiveFirstOption = defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox';\n var onActiveValue = React.useCallback(function (active, index) {\n var _ref3 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n _ref3$source = _ref3.source,\n source = _ref3$source === void 0 ? 'keyboard' : _ref3$source;\n setAccessibilityIndex(index);\n if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') {\n setActiveValue(String(active));\n }\n }, [backfill, mode]);\n\n // ========================= OptionList =========================\n var triggerSelect = function triggerSelect(val, selected, type) {\n var getSelectEnt = function getSelectEnt() {\n var _option$key2;\n var option = getMixedOption(val);\n return [labelInValue ? {\n label: option === null || option === void 0 ? void 0 : option[mergedFieldNames.label],\n value: val,\n key: (_option$key2 = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key2 !== void 0 ? _option$key2 : val\n } : val, injectPropsWithOption(option)];\n };\n if (selected && onSelect) {\n var _getSelectEnt = getSelectEnt(),\n _getSelectEnt2 = _slicedToArray(_getSelectEnt, 2),\n wrappedValue = _getSelectEnt2[0],\n _option = _getSelectEnt2[1];\n onSelect(wrappedValue, _option);\n } else if (!selected && onDeselect && type !== 'clear') {\n var _getSelectEnt3 = getSelectEnt(),\n _getSelectEnt4 = _slicedToArray(_getSelectEnt3, 2),\n _wrappedValue = _getSelectEnt4[0],\n _option2 = _getSelectEnt4[1];\n onDeselect(_wrappedValue, _option2);\n }\n };\n\n // Used for OptionList selection\n var onInternalSelect = useRefFunc(function (val, info) {\n var cloneValues;\n\n // Single mode always trigger select only with option list\n var mergedSelect = multiple ? info.selected : true;\n if (mergedSelect) {\n cloneValues = multiple ? [].concat(_toConsumableArray(mergedValues), [val]) : [val];\n } else {\n cloneValues = mergedValues.filter(function (v) {\n return v.value !== val;\n });\n }\n triggerChange(cloneValues);\n triggerSelect(val, mergedSelect);\n\n // Clean search value if single or configured\n if (mode === 'combobox') {\n // setSearchValue(String(val));\n setActiveValue('');\n } else if (!isMultiple || autoClearSearchValue) {\n setSearchValue('');\n setActiveValue('');\n }\n });\n\n // ======================= Display Change =======================\n // BaseSelect display values change\n var onDisplayValuesChange = function onDisplayValuesChange(nextValues, info) {\n triggerChange(nextValues);\n var type = info.type,\n values = info.values;\n if (type === 'remove' || type === 'clear') {\n values.forEach(function (item) {\n triggerSelect(item.value, false, type);\n });\n }\n };\n\n // =========================== Search ===========================\n var onInternalSearch = function onInternalSearch(searchText, info) {\n setSearchValue(searchText);\n setActiveValue(null);\n\n // [Submit] Tag mode should flush input\n if (info.source === 'submit') {\n var formatted = (searchText || '').trim();\n // prevent empty tags from appearing when you click the Enter button\n if (formatted) {\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), [formatted])));\n triggerChange(newRawValues);\n triggerSelect(formatted, true);\n setSearchValue('');\n }\n return;\n }\n if (info.source !== 'blur') {\n if (mode === 'combobox') {\n triggerChange(searchText);\n }\n onSearch === null || onSearch === void 0 || onSearch(searchText);\n }\n };\n var onInternalSearchSplit = function onInternalSearchSplit(words) {\n var patchValues = words;\n if (mode !== 'tags') {\n patchValues = words.map(function (word) {\n var opt = labelOptions.get(word);\n return opt === null || opt === void 0 ? void 0 : opt.value;\n }).filter(function (val) {\n return val !== undefined;\n });\n }\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), _toConsumableArray(patchValues))));\n triggerChange(newRawValues);\n newRawValues.forEach(function (newRawValue) {\n triggerSelect(newRawValue, true);\n });\n };\n\n // ========================== Context ===========================\n var selectContext = React.useMemo(function () {\n var realVirtual = virtual !== false && dropdownMatchSelectWidth !== false;\n return _objectSpread(_objectSpread({}, parsedOptions), {}, {\n flattenOptions: displayOptions,\n onActiveValue: onActiveValue,\n defaultActiveFirstOption: mergedDefaultActiveFirstOption,\n onSelect: onInternalSelect,\n menuItemSelectedIcon: menuItemSelectedIcon,\n rawValues: rawValues,\n fieldNames: mergedFieldNames,\n virtual: realVirtual,\n direction: direction,\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n childrenAsData: childrenAsData,\n maxCount: maxCount,\n optionRender: optionRender\n });\n }, [maxCount, parsedOptions, displayOptions, onActiveValue, mergedDefaultActiveFirstOption, onInternalSelect, menuItemSelectedIcon, rawValues, mergedFieldNames, virtual, dropdownMatchSelectWidth, direction, listHeight, listItemHeight, childrenAsData, optionRender]);\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props);\n warningNullOptions(mergedOptions, mergedFieldNames);\n }\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n return /*#__PURE__*/React.createElement(SelectContext.Provider, {\n value: selectContext\n }, /*#__PURE__*/React.createElement(BaseSelect, _extends({}, restProps, {\n // >>> MISC\n id: mergedId,\n prefixCls: prefixCls,\n ref: ref,\n omitDomProps: OMIT_DOM_PROPS,\n mode: mode\n // >>> Values\n ,\n displayValues: displayValues,\n onDisplayValuesChange: onDisplayValuesChange\n // >>> Trigger\n ,\n direction: direction\n // >>> Search\n ,\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n autoClearSearchValue: autoClearSearchValue,\n onSearchSplit: onInternalSearchSplit,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth\n // >>> OptionList\n ,\n OptionList: OptionList,\n emptyOptions: !displayOptions.length\n // >>> Accessibility\n ,\n activeValue: activeValue,\n activeDescendantId: \"\".concat(mergedId, \"_list_\").concat(accessibilityIndex)\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\nvar TypedSelect = Select;\nTypedSelect.Option = Option;\nTypedSelect.OptGroup = OptGroup;\nexport default TypedSelect;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\n/**\n * Cache `value` related LabeledValue & options.\n */\nexport default (function (labeledValues, valueOptions) {\n var cacheRef = React.useRef({\n values: new Map(),\n options: new Map()\n });\n var filledLabeledValues = React.useMemo(function () {\n var _cacheRef$current = cacheRef.current,\n prevValueCache = _cacheRef$current.values,\n prevOptionCache = _cacheRef$current.options;\n\n // Fill label by cache\n var patchedValues = labeledValues.map(function (item) {\n if (item.label === undefined) {\n var _prevValueCache$get;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_prevValueCache$get = prevValueCache.get(item.value)) === null || _prevValueCache$get === void 0 ? void 0 : _prevValueCache$get.label\n });\n }\n return item;\n });\n\n // Refresh cache\n var valueCache = new Map();\n var optionCache = new Map();\n patchedValues.forEach(function (item) {\n valueCache.set(item.value, item);\n optionCache.set(item.value, valueOptions.get(item.value) || prevOptionCache.get(item.value));\n });\n cacheRef.current.values = valueCache;\n cacheRef.current.options = optionCache;\n return patchedValues;\n }, [labeledValues, valueOptions]);\n var getOption = React.useCallback(function (val) {\n return valueOptions.get(val) || cacheRef.current.options.get(val);\n }, [valueOptions]);\n return [filledLabeledValues, getOption];\n});","import Select from \"./Select\";\nimport Option from \"./Option\";\nimport OptGroup from \"./OptGroup\";\nimport BaseSelect from \"./BaseSelect\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nexport { Option, OptGroup, BaseSelect, useBaseProps };\nexport default Select;","\"use client\";\n\nimport * as React from 'react';\nimport { FastColor } from '@ant-design/fast-color';\nimport { useLocale } from '../locale';\nimport { useToken } from '../theme/internal';\nconst Empty = () => {\n const [, token] = useToken();\n const [locale] = useLocale('Empty');\n const bgColor = new FastColor(token.colorBgBase);\n // Dark Theme need more dark of this\n const themeStyle = bgColor.toHsl().l < 0.5 ? {\n opacity: 0.65\n } : {};\n return /*#__PURE__*/React.createElement(\"svg\", {\n style: themeStyle,\n width: \"184\",\n height: \"152\",\n viewBox: \"0 0 184 152\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"title\", null, (locale === null || locale === void 0 ? void 0 : locale.description) || 'Empty'), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(24 31.67)\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n fillOpacity: \".8\",\n fill: \"#F5F5F7\",\n cx: \"67.797\",\n cy: \"106.89\",\n rx: \"67.797\",\n ry: \"12.668\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\",\n fill: \"#AEB8C2\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\",\n fill: \"url(#linearGradient-1)\",\n transform: \"translate(13.56)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z\",\n fill: \"#F5F5F7\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\",\n fill: \"#DCE0E6\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\",\n fill: \"#DCE0E6\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(149.65 15.383)\",\n fill: \"#FFF\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: \"20.654\",\n cy: \"3.167\",\n rx: \"2.849\",\n ry: \"2.815\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"\n }))));\n};\nif (process.env.NODE_ENV !== 'production') {\n Empty.displayName = 'EmptyImage';\n}\nexport default Empty;","\"use client\";\n\nimport * as React from 'react';\nimport { useMemo } from 'react';\nimport { FastColor } from '@ant-design/fast-color';\nimport { useToken } from '../theme/internal';\nimport { useLocale } from '../locale';\nconst Simple = () => {\n const [, token] = useToken();\n const [locale] = useLocale('Empty');\n const {\n colorFill,\n colorFillTertiary,\n colorFillQuaternary,\n colorBgContainer\n } = token;\n const {\n borderColor,\n shadowColor,\n contentColor\n } = useMemo(() => ({\n borderColor: new FastColor(colorFill).onBackground(colorBgContainer).toHexString(),\n shadowColor: new FastColor(colorFillTertiary).onBackground(colorBgContainer).toHexString(),\n contentColor: new FastColor(colorFillQuaternary).onBackground(colorBgContainer).toHexString()\n }), [colorFill, colorFillTertiary, colorFillQuaternary, colorBgContainer]);\n return /*#__PURE__*/React.createElement(\"svg\", {\n width: \"64\",\n height: \"41\",\n viewBox: \"0 0 64 41\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"title\", null, (locale === null || locale === void 0 ? void 0 : locale.description) || 'Empty'), /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(0 1)\",\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n fill: shadowColor,\n cx: \"32\",\n cy: \"33\",\n rx: \"32\",\n ry: \"7\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n fillRule: \"nonzero\",\n stroke: borderColor\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\",\n fill: contentColor\n }))));\n};\nif (process.env.NODE_ENV !== 'production') {\n Simple.displayName = 'SimpleImage';\n}\nexport default Simple;","import { genStyleHooks, mergeToken } from '../../theme/internal';\n// ============================== Shared ==============================\nconst genSharedEmptyStyle = token => {\n const {\n componentCls,\n margin,\n marginXS,\n marginXL,\n fontSize,\n lineHeight\n } = token;\n return {\n [componentCls]: {\n marginInline: marginXS,\n fontSize,\n lineHeight,\n textAlign: 'center',\n // 原来 &-image 没有父子结构,现在为了外层承担我们的 hashId,改成父子结构\n [`${componentCls}-image`]: {\n height: token.emptyImgHeight,\n marginBottom: marginXS,\n opacity: token.opacityImage,\n img: {\n height: '100%'\n },\n svg: {\n maxWidth: '100%',\n height: '100%',\n margin: 'auto'\n }\n },\n [`${componentCls}-description`]: {\n color: token.colorTextDescription\n },\n // 原来 &-footer 没有父子结构,现在为了外层承担我们的 hashId,改成父子结构\n [`${componentCls}-footer`]: {\n marginTop: margin\n },\n '&-normal': {\n marginBlock: marginXL,\n color: token.colorTextDescription,\n [`${componentCls}-description`]: {\n color: token.colorTextDescription\n },\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightMD\n }\n },\n '&-small': {\n marginBlock: marginXS,\n color: token.colorTextDescription,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightSM\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genStyleHooks('Empty', token => {\n const {\n componentCls,\n controlHeightLG,\n calc\n } = token;\n const emptyToken = mergeToken(token, {\n emptyImgCls: `${componentCls}-img`,\n emptyImgHeight: calc(controlHeightLG).mul(2.5).equal(),\n emptyImgHeightMD: controlHeightLG,\n emptyImgHeightSM: calc(controlHeightLG).mul(0.875).equal()\n });\n return [genSharedEmptyStyle(emptyToken)];\n});","\"use client\";\n\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 classNames from 'classnames';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport { useLocale } from '../locale';\nimport DefaultEmptyImg from './empty';\nimport SimpleEmptyImg from './simple';\nimport useStyle from './style';\nconst defaultEmptyImg = /*#__PURE__*/React.createElement(DefaultEmptyImg, null);\nconst simpleEmptyImg = /*#__PURE__*/React.createElement(SimpleEmptyImg, null);\nconst Empty = props => {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n const {\n className,\n rootClassName,\n prefixCls: customizePrefixCls,\n image = defaultEmptyImg,\n description,\n children,\n imageStyle,\n style,\n classNames: emptyClassNames,\n styles\n } = props,\n restProps = __rest(props, [\"className\", \"rootClassName\", \"prefixCls\", \"image\", \"description\", \"children\", \"imageStyle\", \"style\", \"classNames\", \"styles\"]);\n const {\n getPrefixCls,\n direction,\n empty\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('empty', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const [locale] = useLocale('Empty');\n const des = typeof description !== 'undefined' ? description : locale === null || locale === void 0 ? void 0 : locale.description;\n const alt = typeof des === 'string' ? des : 'empty';\n let imageNode = null;\n if (typeof image === 'string') {\n imageNode = /*#__PURE__*/React.createElement(\"img\", {\n alt: alt,\n src: image\n });\n } else {\n imageNode = image;\n }\n // ============================= Warning ==============================\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Empty');\n [['imageStyle', 'styles: { image: {} }']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n warning.deprecated(!(deprecatedName in props), deprecatedName, newName);\n });\n }\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: classNames(hashId, cssVarCls, prefixCls, empty === null || empty === void 0 ? void 0 : empty.className, {\n [`${prefixCls}-normal`]: image === simpleEmptyImg,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName, (_a = empty === null || empty === void 0 ? void 0 : empty.classNames) === null || _a === void 0 ? void 0 : _a.root, emptyClassNames === null || emptyClassNames === void 0 ? void 0 : emptyClassNames.root),\n style: Object.assign(Object.assign(Object.assign(Object.assign({}, (_b = empty === null || empty === void 0 ? void 0 : empty.styles) === null || _b === void 0 ? void 0 : _b.root), empty === null || empty === void 0 ? void 0 : empty.style), styles === null || styles === void 0 ? void 0 : styles.root), style)\n }, restProps), /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(`${prefixCls}-image`, (_c = empty === null || empty === void 0 ? void 0 : empty.classNames) === null || _c === void 0 ? void 0 : _c.image, emptyClassNames === null || emptyClassNames === void 0 ? void 0 : emptyClassNames.image),\n style: Object.assign(Object.assign(Object.assign({}, imageStyle), (_d = empty === null || empty === void 0 ? void 0 : empty.styles) === null || _d === void 0 ? void 0 : _d.image), styles === null || styles === void 0 ? void 0 : styles.image)\n }, imageNode), des && (/*#__PURE__*/React.createElement(\"div\", {\n className: classNames(`${prefixCls}-description`, (_e = empty === null || empty === void 0 ? void 0 : empty.classNames) === null || _e === void 0 ? void 0 : _e.description, emptyClassNames === null || emptyClassNames === void 0 ? void 0 : emptyClassNames.description),\n style: Object.assign(Object.assign({}, (_f = empty === null || empty === void 0 ? void 0 : empty.styles) === null || _f === void 0 ? void 0 : _f.description), styles === null || styles === void 0 ? void 0 : styles.description)\n }, des)), children && (/*#__PURE__*/React.createElement(\"div\", {\n className: classNames(`${prefixCls}-footer`, (_g = empty === null || empty === void 0 ? void 0 : empty.classNames) === null || _g === void 0 ? void 0 : _g.footer, emptyClassNames === null || emptyClassNames === void 0 ? void 0 : emptyClassNames.footer),\n style: Object.assign(Object.assign({}, (_h = empty === null || empty === void 0 ? void 0 : empty.styles) === null || _h === void 0 ? void 0 : _h.footer), styles === null || styles === void 0 ? void 0 : styles.footer)\n }, children))));\n};\nEmpty.PRESENTED_IMAGE_DEFAULT = defaultEmptyImg;\nEmpty.PRESENTED_IMAGE_SIMPLE = simpleEmptyImg;\nif (process.env.NODE_ENV !== 'production') {\n Empty.displayName = 'Empty';\n}\nexport default Empty;","\"use client\";\n\nimport React, { useContext } from 'react';\nimport { ConfigContext } from '.';\nimport Empty from '../empty';\nconst DefaultRenderEmpty = props => {\n const {\n componentName\n } = props;\n const {\n getPrefixCls\n } = useContext(ConfigContext);\n const prefix = getPrefixCls('empty');\n switch (componentName) {\n case 'Table':\n case 'List':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE\n });\n case 'Select':\n case 'TreeSelect':\n case 'Cascader':\n case 'Transfer':\n case 'Mentions':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE,\n className: `${prefix}-small`\n });\n /**\n * This type of component should satisfy the nullish coalescing operator(??) on the left-hand side.\n * to let the component itself implement the logic.\n * For example `Table.filter`.\n */\n case 'Table.filter':\n // why `null`? legacy react16 node type `undefined` is not allowed.\n return null;\n default:\n // Should never hit if we take all the component into consider.\n return /*#__PURE__*/React.createElement(Empty, null);\n }\n};\nexport default DefaultRenderEmpty;","const getBuiltInPlacements = popupOverflow => {\n const htmlRegion = popupOverflow === 'scroll' ? 'scroll' : 'visible';\n const sharedConfig = {\n overflow: {\n adjustX: true,\n adjustY: true,\n shiftY: true\n },\n htmlRegion,\n dynamicInset: true\n };\n return {\n bottomLeft: Object.assign(Object.assign({}, sharedConfig), {\n points: ['tl', 'bl'],\n offset: [0, 4]\n }),\n bottomRight: Object.assign(Object.assign({}, sharedConfig), {\n points: ['tr', 'br'],\n offset: [0, 4]\n }),\n topLeft: Object.assign(Object.assign({}, sharedConfig), {\n points: ['bl', 'tl'],\n offset: [0, -4]\n }),\n topRight: Object.assign(Object.assign({}, sharedConfig), {\n points: ['br', 'tr'],\n offset: [0, -4]\n })\n };\n};\nfunction mergedBuiltinPlacements(buildInPlacements, popupOverflow) {\n return buildInPlacements || getBuiltInPlacements(popupOverflow);\n}\nexport default mergedBuiltinPlacements;","import { resetComponent, textEllipsis } from '../../style';\nimport { initMoveMotion, initSlideMotion, slideDownIn, slideDownOut, slideUpIn, slideUpOut } from '../../style/motion';\nconst genItemStyle = token => {\n const {\n optionHeight,\n optionFontSize,\n optionLineHeight,\n optionPadding\n } = token;\n return {\n position: 'relative',\n display: 'block',\n minHeight: optionHeight,\n padding: optionPadding,\n color: token.colorText,\n fontWeight: 'normal',\n fontSize: optionFontSize,\n lineHeight: optionLineHeight,\n boxSizing: 'border-box'\n };\n};\nconst genSingleStyle = token => {\n const {\n antCls,\n componentCls\n } = token;\n const selectItemCls = `${componentCls}-item`;\n const slideUpEnterActive = `&${antCls}-slide-up-enter${antCls}-slide-up-enter-active`;\n const slideUpAppearActive = `&${antCls}-slide-up-appear${antCls}-slide-up-appear-active`;\n const slideUpLeaveActive = `&${antCls}-slide-up-leave${antCls}-slide-up-leave-active`;\n const dropdownPlacementCls = `${componentCls}-dropdown-placement-`;\n const selectedItemCls = `${selectItemCls}-option-selected`;\n return [{\n [`${componentCls}-dropdown`]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n top: -9999,\n zIndex: token.zIndexPopup,\n boxSizing: 'border-box',\n padding: token.paddingXXS,\n overflow: 'hidden',\n fontSize: token.fontSize,\n // Fix select render lag of long text in chrome\n // https://github.com/ant-design/ant-design/issues/11456\n // https://github.com/ant-design/ant-design/issues/11843\n fontVariant: 'initial',\n backgroundColor: token.colorBgElevated,\n borderRadius: token.borderRadiusLG,\n outline: 'none',\n boxShadow: token.boxShadowSecondary,\n [`\n ${slideUpEnterActive}${dropdownPlacementCls}bottomLeft,\n ${slideUpAppearActive}${dropdownPlacementCls}bottomLeft\n `]: {\n animationName: slideUpIn\n },\n [`\n ${slideUpEnterActive}${dropdownPlacementCls}topLeft,\n ${slideUpAppearActive}${dropdownPlacementCls}topLeft,\n ${slideUpEnterActive}${dropdownPlacementCls}topRight,\n ${slideUpAppearActive}${dropdownPlacementCls}topRight\n `]: {\n animationName: slideDownIn\n },\n [`${slideUpLeaveActive}${dropdownPlacementCls}bottomLeft`]: {\n animationName: slideUpOut\n },\n [`\n ${slideUpLeaveActive}${dropdownPlacementCls}topLeft,\n ${slideUpLeaveActive}${dropdownPlacementCls}topRight\n `]: {\n animationName: slideDownOut\n },\n '&-hidden': {\n display: 'none'\n },\n [selectItemCls]: Object.assign(Object.assign({}, genItemStyle(token)), {\n cursor: 'pointer',\n transition: `background ${token.motionDurationSlow} ease`,\n borderRadius: token.borderRadiusSM,\n // =========== Group ============\n '&-group': {\n color: token.colorTextDescription,\n fontSize: token.fontSizeSM,\n cursor: 'default'\n },\n // =========== Option ===========\n '&-option': {\n display: 'flex',\n '&-content': Object.assign({\n flex: 'auto'\n }, textEllipsis),\n '&-state': {\n flex: 'none',\n display: 'flex',\n alignItems: 'center'\n },\n [`&-active:not(${selectItemCls}-option-disabled)`]: {\n backgroundColor: token.optionActiveBg\n },\n [`&-selected:not(${selectItemCls}-option-disabled)`]: {\n color: token.optionSelectedColor,\n fontWeight: token.optionSelectedFontWeight,\n backgroundColor: token.optionSelectedBg,\n [`${selectItemCls}-option-state`]: {\n color: token.colorPrimary\n }\n },\n '&-disabled': {\n [`&${selectItemCls}-option-selected`]: {\n backgroundColor: token.colorBgContainerDisabled\n },\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n },\n '&-grouped': {\n paddingInlineStart: token.calc(token.controlPaddingHorizontal).mul(2).equal()\n }\n },\n '&-empty': Object.assign(Object.assign({}, genItemStyle(token)), {\n color: token.colorTextDisabled\n })\n }),\n // https://github.com/ant-design/ant-design/pull/46646\n [`${selectedItemCls}:has(+ ${selectedItemCls})`]: {\n borderEndStartRadius: 0,\n borderEndEndRadius: 0,\n [`& + ${selectedItemCls}`]: {\n borderStartStartRadius: 0,\n borderStartEndRadius: 0\n }\n },\n // =========================== RTL ===========================\n '&-rtl': {\n direction: 'rtl'\n }\n })\n },\n // Follow code may reuse in other components\n initSlideMotion(token, 'slide-up'), initSlideMotion(token, 'slide-down'), initMoveMotion(token, 'move-up'), initMoveMotion(token, 'move-down')];\n};\nexport default genSingleStyle;","import { unit } from '@ant-design/cssinjs';\nimport { resetComponent } from '../../style';\nimport { mergeToken } from '../../theme/internal';\nfunction genSizeStyle(token, suffix) {\n const {\n componentCls,\n inputPaddingHorizontalBase,\n borderRadius\n } = token;\n const selectHeightWithoutBorder = token.calc(token.controlHeight).sub(token.calc(token.lineWidth).mul(2)).equal();\n const suffixCls = suffix ? `${componentCls}-${suffix}` : '';\n return {\n [`${componentCls}-single${suffixCls}`]: {\n fontSize: token.fontSize,\n height: token.controlHeight,\n // ========================= Selector =========================\n [`${componentCls}-selector`]: Object.assign(Object.assign({}, resetComponent(token, true)), {\n display: 'flex',\n borderRadius,\n flex: '1 1 auto',\n [`${componentCls}-selection-search`]: {\n position: 'absolute',\n inset: 0,\n width: '100%',\n '&-input': {\n width: '100%',\n WebkitAppearance: 'textfield'\n }\n },\n [`\n ${componentCls}-selection-item,\n ${componentCls}-selection-placeholder\n `]: {\n display: 'block',\n padding: 0,\n lineHeight: unit(selectHeightWithoutBorder),\n transition: `all ${token.motionDurationSlow}, visibility 0s`,\n alignSelf: 'center'\n },\n [`${componentCls}-selection-placeholder`]: {\n transition: 'none',\n pointerEvents: 'none'\n },\n // For common baseline align\n [['&:after', /* For '' value baseline align */\n `${componentCls}-selection-item:empty:after`, /* For undefined value baseline align */\n `${componentCls}-selection-placeholder:empty:after`].join(',')]: {\n display: 'inline-block',\n width: 0,\n visibility: 'hidden',\n content: '\"\\\\a0\"'\n }\n }),\n [`\n &${componentCls}-show-arrow ${componentCls}-selection-item,\n &${componentCls}-show-arrow ${componentCls}-selection-search,\n &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n `]: {\n paddingInlineEnd: token.showArrowPaddingInlineEnd\n },\n // Opacity selection if open\n [`&${componentCls}-open ${componentCls}-selection-item`]: {\n color: token.colorTextPlaceholder\n },\n // ========================== Input ==========================\n // We only change the style of non-customize input which is only support by `combobox` mode.\n // Not customize\n [`&:not(${componentCls}-customize-input)`]: {\n [`${componentCls}-selector`]: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n padding: `0 ${unit(inputPaddingHorizontalBase)}`,\n [`${componentCls}-selection-search-input`]: {\n height: selectHeightWithoutBorder\n },\n '&:after': {\n lineHeight: unit(selectHeightWithoutBorder)\n }\n }\n },\n [`&${componentCls}-customize-input`]: {\n [`${componentCls}-selector`]: {\n '&:after': {\n display: 'none'\n },\n [`${componentCls}-selection-search`]: {\n position: 'static',\n width: '100%'\n },\n [`${componentCls}-selection-placeholder`]: {\n position: 'absolute',\n insetInlineStart: 0,\n insetInlineEnd: 0,\n padding: `0 ${unit(inputPaddingHorizontalBase)}`,\n '&:after': {\n display: 'none'\n }\n }\n }\n }\n }\n };\n}\nexport default function genSingleStyle(token) {\n const {\n componentCls\n } = token;\n const inputPaddingHorizontalSM = token.calc(token.controlPaddingHorizontalSM).sub(token.lineWidth).equal();\n return [genSizeStyle(token),\n // ======================== Small ========================\n // Shared\n genSizeStyle(mergeToken(token, {\n controlHeight: token.controlHeightSM,\n borderRadius: token.borderRadiusSM\n }), 'sm'),\n // padding\n {\n [`${componentCls}-single${componentCls}-sm`]: {\n [`&:not(${componentCls}-customize-input)`]: {\n [`${componentCls}-selector`]: {\n padding: `0 ${unit(inputPaddingHorizontalSM)}`\n },\n // With arrow should provides `padding-right` to show the arrow\n [`&${componentCls}-show-arrow ${componentCls}-selection-search`]: {\n insetInlineEnd: token.calc(inputPaddingHorizontalSM).add(token.calc(token.fontSize).mul(1.5)).equal()\n },\n [`\n &${componentCls}-show-arrow ${componentCls}-selection-item,\n &${componentCls}-show-arrow ${componentCls}-selection-placeholder\n `]: {\n paddingInlineEnd: token.calc(token.fontSize).mul(1.5).equal()\n }\n }\n }\n },\n // ======================== Large ========================\n // Shared\n genSizeStyle(mergeToken(token, {\n controlHeight: token.singleItemHeightLG,\n fontSize: token.fontSizeLG,\n borderRadius: token.borderRadiusLG\n }), 'lg')];\n}","export const prepareComponentToken = token => {\n const {\n fontSize,\n lineHeight,\n lineWidth,\n controlHeight,\n controlHeightSM,\n controlHeightLG,\n paddingXXS,\n controlPaddingHorizontal,\n zIndexPopupBase,\n colorText,\n fontWeightStrong,\n controlItemBgActive,\n controlItemBgHover,\n colorBgContainer,\n colorFillSecondary,\n colorBgContainerDisabled,\n colorTextDisabled,\n colorPrimaryHover,\n colorPrimary,\n controlOutline\n } = token;\n // Item height default use `controlHeight - 2 * paddingXXS`,\n // but some case `paddingXXS=0`.\n // Let's fallback it.\n const dblPaddingXXS = paddingXXS * 2;\n const dblLineWidth = lineWidth * 2;\n const multipleItemHeight = Math.min(controlHeight - dblPaddingXXS, controlHeight - dblLineWidth);\n const multipleItemHeightSM = Math.min(controlHeightSM - dblPaddingXXS, controlHeightSM - dblLineWidth);\n const multipleItemHeightLG = Math.min(controlHeightLG - dblPaddingXXS, controlHeightLG - dblLineWidth);\n // FIXED_ITEM_MARGIN is a hardcode calculation since calc not support rounding\n const INTERNAL_FIXED_ITEM_MARGIN = Math.floor(paddingXXS / 2);\n return {\n INTERNAL_FIXED_ITEM_MARGIN,\n zIndexPopup: zIndexPopupBase + 50,\n optionSelectedColor: colorText,\n optionSelectedFontWeight: fontWeightStrong,\n optionSelectedBg: controlItemBgActive,\n optionActiveBg: controlItemBgHover,\n optionPadding: `${(controlHeight - fontSize * lineHeight) / 2}px ${controlPaddingHorizontal}px`,\n optionFontSize: fontSize,\n optionLineHeight: lineHeight,\n optionHeight: controlHeight,\n selectorBg: colorBgContainer,\n clearBg: colorBgContainer,\n singleItemHeightLG: controlHeightLG,\n multipleItemBg: colorFillSecondary,\n multipleItemBorderColor: 'transparent',\n multipleItemHeight,\n multipleItemHeightSM,\n multipleItemHeightLG,\n multipleSelectorBgDisabled: colorBgContainerDisabled,\n multipleItemColorDisabled: colorTextDisabled,\n multipleItemBorderColorDisabled: 'transparent',\n showArrowPaddingInlineEnd: Math.ceil(token.fontSize * 1.25),\n hoverBorderColor: colorPrimaryHover,\n activeBorderColor: colorPrimary,\n activeOutlineColor: controlOutline,\n selectAffixPadding: paddingXXS\n };\n};","import { unit } from '@ant-design/cssinjs';\n// =====================================================\n// == Outlined ==\n// =====================================================\nconst genBaseOutlinedStyle = (token, options) => {\n const {\n componentCls,\n antCls,\n controlOutlineWidth\n } = token;\n return {\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: {\n border: `${unit(token.lineWidth)} ${token.lineType} ${options.borderColor}`,\n background: token.selectorBg\n },\n [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]: {\n [`&:hover ${componentCls}-selector`]: {\n borderColor: options.hoverBorderHover\n },\n [`${componentCls}-focused& ${componentCls}-selector`]: {\n borderColor: options.activeBorderColor,\n boxShadow: `0 0 0 ${unit(controlOutlineWidth)} ${options.activeOutlineColor}`,\n outline: 0\n },\n [`${componentCls}-prefix`]: {\n color: options.color\n }\n }\n };\n};\nconst genOutlinedStatusStyle = (token, options) => ({\n [`&${token.componentCls}-status-${options.status}`]: Object.assign({}, genBaseOutlinedStyle(token, options))\n});\nconst genOutlinedStyle = token => ({\n '&-outlined': Object.assign(Object.assign(Object.assign(Object.assign({}, genBaseOutlinedStyle(token, {\n borderColor: token.colorBorder,\n hoverBorderHover: token.hoverBorderColor,\n activeBorderColor: token.activeBorderColor,\n activeOutlineColor: token.activeOutlineColor,\n color: token.colorText\n })), genOutlinedStatusStyle(token, {\n status: 'error',\n borderColor: token.colorError,\n hoverBorderHover: token.colorErrorHover,\n activeBorderColor: token.colorError,\n activeOutlineColor: token.colorErrorOutline,\n color: token.colorError\n })), genOutlinedStatusStyle(token, {\n status: 'warning',\n borderColor: token.colorWarning,\n hoverBorderHover: token.colorWarningHover,\n activeBorderColor: token.colorWarning,\n activeOutlineColor: token.colorWarningOutline,\n color: token.colorWarning\n })), {\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n background: token.colorBgContainerDisabled,\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.multipleItemBg,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.multipleItemBorderColor}`\n }\n })\n});\n// =====================================================\n// == Filled ==\n// =====================================================\nconst genBaseFilledStyle = (token, options) => {\n const {\n componentCls,\n antCls\n } = token;\n return {\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: {\n background: options.bg,\n border: `${unit(token.lineWidth)} ${token.lineType} transparent`,\n color: options.color\n },\n [`&:not(${componentCls}-disabled):not(${componentCls}-customize-input):not(${antCls}-pagination-size-changer)`]: {\n [`&:hover ${componentCls}-selector`]: {\n background: options.hoverBg\n },\n [`${componentCls}-focused& ${componentCls}-selector`]: {\n background: token.selectorBg,\n borderColor: options.activeBorderColor,\n outline: 0\n }\n }\n };\n};\nconst genFilledStatusStyle = (token, options) => ({\n [`&${token.componentCls}-status-${options.status}`]: Object.assign({}, genBaseFilledStyle(token, options))\n});\nconst genFilledStyle = token => ({\n '&-filled': Object.assign(Object.assign(Object.assign(Object.assign({}, genBaseFilledStyle(token, {\n bg: token.colorFillTertiary,\n hoverBg: token.colorFillSecondary,\n activeBorderColor: token.activeBorderColor,\n color: token.colorText\n })), genFilledStatusStyle(token, {\n status: 'error',\n bg: token.colorErrorBg,\n hoverBg: token.colorErrorBgHover,\n activeBorderColor: token.colorError,\n color: token.colorError\n })), genFilledStatusStyle(token, {\n status: 'warning',\n bg: token.colorWarningBg,\n hoverBg: token.colorWarningBgHover,\n activeBorderColor: token.colorWarning,\n color: token.colorWarning\n })), {\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n borderColor: token.colorBorder,\n background: token.colorBgContainerDisabled,\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.colorBgContainer,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.colorSplit}`\n }\n })\n});\n// =====================================================\n// == Borderless ==\n// =====================================================\nconst genBorderlessStyle = token => ({\n '&-borderless': {\n [`${token.componentCls}-selector`]: {\n background: 'transparent',\n border: `${unit(token.lineWidth)} ${token.lineType} transparent`\n },\n [`&${token.componentCls}-disabled`]: {\n [`&:not(${token.componentCls}-customize-input) ${token.componentCls}-selector`]: {\n color: token.colorTextDisabled\n }\n },\n [`&${token.componentCls}-multiple ${token.componentCls}-selection-item`]: {\n background: token.multipleItemBg,\n border: `${unit(token.lineWidth)} ${token.lineType} ${token.multipleItemBorderColor}`\n },\n // Status\n [`&${token.componentCls}-status-error`]: {\n [`${token.componentCls}-prefix, ${token.componentCls}-selection-item`]: {\n color: token.colorError\n }\n },\n [`&${token.componentCls}-status-warning`]: {\n [`${token.componentCls}-prefix, ${token.componentCls}-selection-item`]: {\n color: token.colorWarning\n }\n }\n }\n});\nconst genVariantsStyle = token => ({\n [token.componentCls]: Object.assign(Object.assign(Object.assign({}, genOutlinedStyle(token)), genFilledStyle(token)), genBorderlessStyle(token))\n});\nexport default genVariantsStyle;","import { resetComponent, resetIcon, textEllipsis } from '../../style';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\nimport genDropdownStyle from './dropdown';\nimport genMultipleStyle from './multiple';\nimport genSingleStyle from './single';\nimport { prepareComponentToken } from './token';\nimport genVariantsStyle from './variants';\n// ============================= Selector =============================\nconst genSelectorStyle = token => {\n const {\n componentCls\n } = token;\n return {\n position: 'relative',\n transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`,\n input: {\n cursor: 'pointer'\n },\n [`${componentCls}-show-search&`]: {\n cursor: 'text',\n input: {\n cursor: 'auto',\n color: 'inherit',\n height: '100%'\n }\n },\n [`${componentCls}-disabled&`]: {\n cursor: 'not-allowed',\n input: {\n cursor: 'not-allowed'\n }\n }\n };\n};\n// ============================== Styles ==============================\n// /* Reset search input style */\nconst getSearchInputWithoutBorderStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [`${componentCls}-selection-search-input`]: {\n margin: 0,\n padding: 0,\n background: 'transparent',\n border: 'none',\n outline: 'none',\n appearance: 'none',\n fontFamily: 'inherit',\n '&::-webkit-search-cancel-button': {\n display: 'none',\n '-webkit-appearance': 'none'\n }\n }\n };\n};\n// =============================== Base ===============================\nconst genBaseStyle = token => {\n const {\n antCls,\n componentCls,\n inputPaddingHorizontalBase,\n iconCls\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n display: 'inline-flex',\n cursor: 'pointer',\n [`&:not(${componentCls}-customize-input) ${componentCls}-selector`]: Object.assign(Object.assign({}, genSelectorStyle(token)), getSearchInputWithoutBorderStyle(token)),\n // ======================== Selection ========================\n [`${componentCls}-selection-item`]: Object.assign(Object.assign({\n flex: 1,\n fontWeight: 'normal',\n position: 'relative',\n userSelect: 'none'\n }, textEllipsis), {\n // https://github.com/ant-design/ant-design/issues/40421\n [`> ${antCls}-typography`]: {\n display: 'inline'\n }\n }),\n // ======================= Placeholder =======================\n [`${componentCls}-selection-placeholder`]: Object.assign(Object.assign({}, textEllipsis), {\n flex: 1,\n color: token.colorTextPlaceholder,\n pointerEvents: 'none'\n }),\n // ========================== Arrow ==========================\n [`${componentCls}-arrow`]: Object.assign(Object.assign({}, resetIcon()), {\n position: 'absolute',\n top: '50%',\n insetInlineStart: 'auto',\n insetInlineEnd: inputPaddingHorizontalBase,\n height: token.fontSizeIcon,\n marginTop: token.calc(token.fontSizeIcon).mul(-1).div(2).equal(),\n color: token.colorTextQuaternary,\n fontSize: token.fontSizeIcon,\n lineHeight: 1,\n textAlign: 'center',\n pointerEvents: 'none',\n display: 'flex',\n alignItems: 'center',\n transition: `opacity ${token.motionDurationSlow} ease`,\n [iconCls]: {\n verticalAlign: 'top',\n transition: `transform ${token.motionDurationSlow}`,\n '> svg': {\n verticalAlign: 'top'\n },\n [`&:not(${componentCls}-suffix)`]: {\n pointerEvents: 'auto'\n }\n },\n [`${componentCls}-disabled &`]: {\n cursor: 'not-allowed'\n },\n '> *:not(:last-child)': {\n marginInlineEnd: 8 // FIXME: magic\n }\n }),\n // ========================== Wrap ===========================\n [`${componentCls}-selection-wrap`]: {\n display: 'flex',\n width: '100%',\n position: 'relative',\n minWidth: 0,\n // https://github.com/ant-design/ant-design/issues/51669\n '&:after': {\n content: '\"\\\\a0\"',\n width: 0,\n overflow: 'hidden'\n }\n },\n // ========================= Prefix ==========================\n [`${componentCls}-prefix`]: {\n flex: 'none',\n marginInlineEnd: token.selectAffixPadding\n },\n // ========================== Clear ==========================\n [`${componentCls}-clear`]: {\n position: 'absolute',\n top: '50%',\n insetInlineStart: 'auto',\n insetInlineEnd: inputPaddingHorizontalBase,\n zIndex: 1,\n display: 'inline-block',\n width: token.fontSizeIcon,\n height: token.fontSizeIcon,\n marginTop: token.calc(token.fontSizeIcon).mul(-1).div(2).equal(),\n color: token.colorTextQuaternary,\n fontSize: token.fontSizeIcon,\n fontStyle: 'normal',\n lineHeight: 1,\n textAlign: 'center',\n textTransform: 'none',\n cursor: 'pointer',\n opacity: 0,\n transition: `color ${token.motionDurationMid} ease, opacity ${token.motionDurationSlow} ease`,\n textRendering: 'auto',\n '&:before': {\n display: 'block'\n },\n '&:hover': {\n color: token.colorTextTertiary\n }\n },\n [`&:hover ${componentCls}-clear`]: {\n opacity: 1,\n background: token.colorBgBase,\n borderRadius: '50%'\n }\n }),\n // ========================= Feedback ==========================\n [`${componentCls}-status`]: {\n '&-error, &-warning, &-success, &-validating': {\n [`&${componentCls}-has-feedback`]: {\n [`${componentCls}-clear`]: {\n insetInlineEnd: token.calc(inputPaddingHorizontalBase).add(token.fontSize).add(token.paddingXS).equal()\n }\n }\n }\n }\n };\n};\n// ============================== Styles ==============================\nconst genSelectStyle = token => {\n const {\n componentCls\n } = token;\n return [{\n [componentCls]: {\n // ==================== In Form ====================\n [`&${componentCls}-in-form-item`]: {\n width: '100%'\n }\n }\n },\n // =====================================================\n // == LTR ==\n // =====================================================\n // Base\n genBaseStyle(token),\n // Single\n genSingleStyle(token),\n // Multiple\n genMultipleStyle(token),\n // Dropdown\n genDropdownStyle(token),\n // =====================================================\n // == RTL ==\n // =====================================================\n {\n [`${componentCls}-rtl`]: {\n direction: 'rtl'\n }\n },\n // =====================================================\n // == Space Compact ==\n // =====================================================\n genCompactItemStyle(token, {\n borderElCls: `${componentCls}-selector`,\n focusElCls: `${componentCls}-focused`\n })];\n};\n// ============================== Export ==============================\nexport default genStyleHooks('Select', (token, _ref) => {\n let {\n rootPrefixCls\n } = _ref;\n const selectToken = mergeToken(token, {\n rootPrefixCls,\n inputPaddingHorizontalBase: token.calc(token.paddingSM).sub(1).equal(),\n multipleSelectItemHeight: token.multipleItemHeight,\n selectHeight: token.controlHeight\n });\n return [genSelectStyle(selectToken), genVariantsStyle(selectToken)];\n}, prepareComponentToken, {\n unitless: {\n optionLineHeight: true,\n optionSelectedFontWeight: true\n }\n});","\"use client\";\n\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};\n// TODO: 4.0 - codemod should help to change `filterOption` to support node props.\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport RcSelect, { OptGroup, Option } from 'rc-select';\nimport omit from \"rc-util/es/omit\";\nimport { useZIndex } from '../_util/hooks/useZIndex';\nimport { getTransitionName } from '../_util/motion';\nimport genPurePanel from '../_util/PurePanel';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport DefaultRenderEmpty from '../config-provider/defaultRenderEmpty';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport useVariants from '../form/hooks/useVariants';\nimport { useCompactItemContext } from '../space/Compact';\nimport { useToken } from '../theme/internal';\nimport mergedBuiltinPlacements from './mergedBuiltinPlacements';\nimport useStyle from './style';\nimport useIcons from './useIcons';\nimport useShowArrow from './useShowArrow';\nconst SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';\nconst InternalSelect = (props, ref) => {\n var _a;\n const {\n prefixCls: customizePrefixCls,\n bordered,\n className,\n rootClassName,\n getPopupContainer,\n popupClassName,\n dropdownClassName,\n listHeight = 256,\n placement,\n listItemHeight: customListItemHeight,\n size: customizeSize,\n disabled: customDisabled,\n notFoundContent,\n status: customStatus,\n builtinPlacements,\n dropdownMatchSelectWidth,\n popupMatchSelectWidth,\n direction: propDirection,\n style,\n allowClear,\n variant: customizeVariant,\n dropdownStyle,\n transitionName,\n tagRender,\n maxCount,\n prefix\n } = props,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"className\", \"rootClassName\", \"getPopupContainer\", \"popupClassName\", \"dropdownClassName\", \"listHeight\", \"placement\", \"listItemHeight\", \"size\", \"disabled\", \"notFoundContent\", \"status\", \"builtinPlacements\", \"dropdownMatchSelectWidth\", \"popupMatchSelectWidth\", \"direction\", \"style\", \"allowClear\", \"variant\", \"dropdownStyle\", \"transitionName\", \"tagRender\", \"maxCount\", \"prefix\"]);\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n renderEmpty,\n direction: contextDirection,\n virtual,\n popupMatchSelectWidth: contextPopupMatchSelectWidth,\n popupOverflow,\n select\n } = React.useContext(ConfigContext);\n const [, token] = useToken();\n const listItemHeight = customListItemHeight !== null && customListItemHeight !== void 0 ? customListItemHeight : token === null || token === void 0 ? void 0 : token.controlHeight;\n const prefixCls = getPrefixCls('select', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const direction = propDirection !== null && propDirection !== void 0 ? propDirection : contextDirection;\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n const [variant, enableVariantCls] = useVariants('select', customizeVariant, bordered);\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const mode = React.useMemo(() => {\n const {\n mode: m\n } = props;\n if (m === 'combobox') {\n return undefined;\n }\n if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {\n return 'combobox';\n }\n return m;\n }, [props.mode]);\n const isMultiple = mode === 'multiple' || mode === 'tags';\n const showSuffixIcon = useShowArrow(props.suffixIcon, props.showArrow);\n const mergedPopupMatchSelectWidth = (_a = popupMatchSelectWidth !== null && popupMatchSelectWidth !== void 0 ? popupMatchSelectWidth : dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : contextPopupMatchSelectWidth;\n // ===================== Form Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n isFormItemInput,\n feedbackIcon\n } = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Empty =====================\n let mergedNotFound;\n if (notFoundContent !== undefined) {\n mergedNotFound = notFoundContent;\n } else if (mode === 'combobox') {\n mergedNotFound = null;\n } else {\n mergedNotFound = (renderEmpty === null || renderEmpty === void 0 ? void 0 : renderEmpty('Select')) || /*#__PURE__*/React.createElement(DefaultRenderEmpty, {\n componentName: \"Select\"\n });\n }\n // ===================== Icons =====================\n const {\n suffixIcon,\n itemIcon,\n removeIcon,\n clearIcon\n } = useIcons(Object.assign(Object.assign({}, rest), {\n multiple: isMultiple,\n hasFeedback,\n feedbackIcon,\n showSuffixIcon,\n prefixCls,\n componentName: 'Select'\n }));\n const mergedAllowClear = allowClear === true ? {\n clearIcon\n } : allowClear;\n const selectProps = omit(rest, ['suffixIcon', 'itemIcon']);\n const mergedPopupClassName = classNames(popupClassName || dropdownClassName, {\n [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl'\n }, rootClassName, cssVarCls, rootCls, hashId);\n const mergedSize = useSize(ctx => {\n var _a;\n return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n const mergedClassName = classNames({\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-${variant}`]: enableVariantCls,\n [`${prefixCls}-in-form-item`]: isFormItemInput\n }, getStatusClassNames(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, select === null || select === void 0 ? void 0 : select.className, className, rootClassName, cssVarCls, rootCls, hashId);\n // ===================== Placement =====================\n const memoPlacement = React.useMemo(() => {\n if (placement !== undefined) {\n return placement;\n }\n return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n }, [placement, direction]);\n // ====================== Warning ======================\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Select');\n warning.deprecated(!dropdownClassName, 'dropdownClassName', 'popupClassName');\n warning.deprecated(dropdownMatchSelectWidth === undefined, 'dropdownMatchSelectWidth', 'popupMatchSelectWidth');\n process.env.NODE_ENV !== \"production\" ? warning(!('showArrow' in props), 'deprecated', '`showArrow` is deprecated which will be removed in next major version. It will be a default behavior, you can hide it by setting `suffixIcon` to null.') : void 0;\n warning.deprecated(!('bordered' in props), 'bordered', 'variant');\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof maxCount !== 'undefined' && !isMultiple), 'usage', '`maxCount` only works with mode `multiple` or `tags`') : void 0;\n }\n // ====================== zIndex =========================\n const [zIndex] = useZIndex('SelectLike', dropdownStyle === null || dropdownStyle === void 0 ? void 0 : dropdownStyle.zIndex);\n // ====================== Render =======================\n return wrapCSSVar(/*#__PURE__*/React.createElement(RcSelect, Object.assign({\n ref: ref,\n virtual: virtual,\n showSearch: select === null || select === void 0 ? void 0 : select.showSearch\n }, selectProps, {\n style: Object.assign(Object.assign({}, select === null || select === void 0 ? void 0 : select.style), style),\n dropdownMatchSelectWidth: mergedPopupMatchSelectWidth,\n transitionName: getTransitionName(rootPrefixCls, 'slide-up', transitionName),\n builtinPlacements: mergedBuiltinPlacements(builtinPlacements, popupOverflow),\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n mode: mode,\n prefixCls: prefixCls,\n placement: memoPlacement,\n direction: direction,\n prefix: prefix,\n suffixIcon: suffixIcon,\n menuItemSelectedIcon: itemIcon,\n removeIcon: removeIcon,\n allowClear: mergedAllowClear,\n notFoundContent: mergedNotFound,\n className: mergedClassName,\n getPopupContainer: getPopupContainer || getContextPopupContainer,\n dropdownClassName: mergedPopupClassName,\n disabled: mergedDisabled,\n dropdownStyle: Object.assign(Object.assign({}, dropdownStyle), {\n zIndex\n }),\n maxCount: isMultiple ? maxCount : undefined,\n tagRender: isMultiple ? tagRender : undefined\n })));\n};\nif (process.env.NODE_ENV !== 'production') {\n InternalSelect.displayName = 'Select';\n}\nconst Select = /*#__PURE__*/React.forwardRef(InternalSelect);\n// We don't care debug panel\n/* istanbul ignore next */\nconst PurePanel = genPurePanel(Select, 'dropdownAlign');\nSelect.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;\nSelect.Option = Option;\nSelect.OptGroup = OptGroup;\nSelect._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\nexport default Select;","/**\n * Since Select, TreeSelect, Cascader is same Select like component.\n * We just use same hook to handle this logic.\n *\n * If `suffixIcon` is not equal to `null`, always show it.\n */\nexport default function useShowArrow(suffixIcon, showArrow) {\n return showArrow !== undefined ? showArrow : suffixIcon !== null;\n}","export var ColorFormat;\n(function (ColorFormat) {\n ColorFormat[\"hex\"] = \"hex\";\n ColorFormat[\"rgb\"] = \"rgb\";\n ColorFormat[\"hsb\"] = \"hsb\";\n})(ColorFormat || (ColorFormat = {}));","// This icon file is generated automatically.\nvar UpOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M890.5 755.3L537.9 269.2c-12.8-17.6-39-17.6-51.7 0L133.5 755.3A8 8 0 00140 768h75c5.1 0 9.9-2.5 12.9-6.6L512 369.8l284.1 391.6c3 4.1 7.8 6.6 12.9 6.6h75c6.5 0 10.3-7.4 6.5-12.7z\" } }] }, \"name\": \"up\", \"theme\": \"outlined\" };\nexport default UpOutlined;\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 UpOutlinedSvg from \"@ant-design/icons-svg/es/asn/UpOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar UpOutlined = function UpOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: UpOutlinedSvg\n }));\n};\n\n/**![up](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTg5MC41IDc1NS4zTDUzNy45IDI2OS4yYy0xMi44LTE3LjYtMzktMTcuNi01MS43IDBMMTMzLjUgNzU1LjNBOCA4IDAgMDAxNDAgNzY4aDc1YzUuMSAwIDkuOS0yLjUgMTIuOS02LjZMNTEyIDM2OS44bDI4NC4xIDM5MS42YzMgNC4xIDcuOCA2LjYgMTIuOSA2LjZoNzVjNi41IDAgMTAuMy03LjQgNi41LTEyLjd6IiAvPjwvc3ZnPg==) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(UpOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'UpOutlined';\n}\nexport default RefIcon;","export function supportBigInt() {\n return typeof BigInt === 'function';\n}","import { supportBigInt } from \"./supportUtil\";\n/**\n * Format string number to readable number\n */\n\nexport function trimNumber(numStr) {\n var str = numStr.trim();\n var negative = str.startsWith('-');\n\n if (negative) {\n str = str.slice(1);\n }\n\n str = str // Remove decimal 0. `1.000` => `1.`, `1.100` => `1.1`\n .replace(/(\\.\\d*[^0])0*$/, '$1') // Remove useless decimal. `1.` => `1`\n .replace(/\\.0*$/, '') // Remove integer 0. `0001` => `1`, 000.1' => `.1`\n .replace(/^0+/, '');\n\n if (str.startsWith('.')) {\n str = \"0\".concat(str);\n }\n\n var trimStr = str || '0';\n var splitNumber = trimStr.split('.');\n var integerStr = splitNumber[0] || '0';\n var decimalStr = splitNumber[1] || '0';\n\n if (integerStr === '0' && decimalStr === '0') {\n negative = false;\n }\n\n var negativeStr = negative ? '-' : '';\n return {\n negative: negative,\n negativeStr: negativeStr,\n trimStr: trimStr,\n integerStr: integerStr,\n decimalStr: decimalStr,\n fullStr: \"\".concat(negativeStr).concat(trimStr)\n };\n}\nexport function isE(number) {\n var str = String(number);\n return !Number.isNaN(Number(str)) && str.includes('e');\n}\n/**\n * [Legacy] Convert 1e-9 to 0.000000001.\n * This may lose some precision if user really want 1e-9.\n */\n\nexport function getNumberPrecision(number) {\n var numStr = String(number);\n\n if (isE(number)) {\n var precision = Number(numStr.slice(numStr.indexOf('e-') + 2));\n var decimalMatch = numStr.match(/\\.(\\d+)/);\n\n if (decimalMatch !== null && decimalMatch !== void 0 && decimalMatch[1]) {\n precision += decimalMatch[1].length;\n }\n\n return precision;\n }\n\n return numStr.includes('.') && validateNumber(numStr) ? numStr.length - numStr.indexOf('.') - 1 : 0;\n}\n/**\n * Convert number (includes scientific notation) to -xxx.yyy format\n */\n\nexport function num2str(number) {\n var numStr = String(number);\n\n if (isE(number)) {\n if (number > Number.MAX_SAFE_INTEGER) {\n return String(supportBigInt() ? BigInt(number).toString() : Number.MAX_SAFE_INTEGER);\n }\n\n if (number < Number.MIN_SAFE_INTEGER) {\n return String(supportBigInt() ? BigInt(number).toString() : Number.MIN_SAFE_INTEGER);\n }\n\n numStr = number.toFixed(getNumberPrecision(numStr));\n }\n\n return trimNumber(numStr).fullStr;\n}\nexport function validateNumber(num) {\n if (typeof num === 'number') {\n return !Number.isNaN(num);\n } // Empty\n\n\n if (!num) {\n return false;\n }\n\n return (// Normal type: 11.28\n /^\\s*-?\\d+(\\.\\d+)?\\s*$/.test(num) || // Pre-number: 1.\n /^\\s*-?\\d+\\.\\s*$/.test(num) || // Post-number: .1\n /^\\s*-?\\.\\d+\\s*$/.test(num)\n );\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\n/* eslint-disable max-classes-per-file */\nimport { getNumberPrecision, isE, num2str, trimNumber, validateNumber } from \"./numberUtil\";\nimport { supportBigInt } from \"./supportUtil\";\n\nfunction isEmpty(value) {\n return !value && value !== 0 && !Number.isNaN(value) || !String(value).trim();\n}\n\n/**\n * We can remove this when IE not support anymore\n */\nexport var NumberDecimal = /*#__PURE__*/function () {\n function NumberDecimal(value) {\n _classCallCheck(this, NumberDecimal);\n\n _defineProperty(this, \"origin\", '');\n\n _defineProperty(this, \"number\", void 0);\n\n _defineProperty(this, \"empty\", void 0);\n\n if (isEmpty(value)) {\n this.empty = true;\n return;\n }\n\n this.origin = String(value);\n this.number = Number(value);\n }\n\n _createClass(NumberDecimal, [{\n key: \"negate\",\n value: function negate() {\n return new NumberDecimal(-this.toNumber());\n }\n }, {\n key: \"add\",\n value: function add(value) {\n if (this.isInvalidate()) {\n return new NumberDecimal(value);\n }\n\n var target = Number(value);\n\n if (Number.isNaN(target)) {\n return this;\n }\n\n var number = this.number + target; // [Legacy] Back to safe integer\n\n if (number > Number.MAX_SAFE_INTEGER) {\n return new NumberDecimal(Number.MAX_SAFE_INTEGER);\n }\n\n if (number < Number.MIN_SAFE_INTEGER) {\n return new NumberDecimal(Number.MIN_SAFE_INTEGER);\n }\n\n var maxPrecision = Math.max(getNumberPrecision(this.number), getNumberPrecision(target));\n return new NumberDecimal(number.toFixed(maxPrecision));\n }\n }, {\n key: \"isEmpty\",\n value: function isEmpty() {\n return this.empty;\n }\n }, {\n key: \"isNaN\",\n value: function isNaN() {\n return Number.isNaN(this.number);\n }\n }, {\n key: \"isInvalidate\",\n value: function isInvalidate() {\n return this.isEmpty() || this.isNaN();\n }\n }, {\n key: \"equals\",\n value: function equals(target) {\n return this.toNumber() === (target === null || target === void 0 ? void 0 : target.toNumber());\n }\n }, {\n key: \"lessEquals\",\n value: function lessEquals(target) {\n return this.add(target.negate().toString()).toNumber() <= 0;\n }\n }, {\n key: \"toNumber\",\n value: function toNumber() {\n return this.number;\n }\n }, {\n key: \"toString\",\n value: function toString() {\n var safe = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n if (!safe) {\n return this.origin;\n }\n\n if (this.isInvalidate()) {\n return '';\n }\n\n return num2str(this.number);\n }\n }]);\n\n return NumberDecimal;\n}();\nexport var BigIntDecimal = /*#__PURE__*/function () {\n /** BigInt will convert `0009` to `9`. We need record the len of decimal */\n function BigIntDecimal(value) {\n _classCallCheck(this, BigIntDecimal);\n\n _defineProperty(this, \"origin\", '');\n\n _defineProperty(this, \"negative\", void 0);\n\n _defineProperty(this, \"integer\", void 0);\n\n _defineProperty(this, \"decimal\", void 0);\n\n _defineProperty(this, \"decimalLen\", void 0);\n\n _defineProperty(this, \"empty\", void 0);\n\n _defineProperty(this, \"nan\", void 0);\n\n if (isEmpty(value)) {\n this.empty = true;\n return;\n }\n\n this.origin = String(value); // Act like Number convert\n\n if (value === '-' || Number.isNaN(value)) {\n this.nan = true;\n return;\n }\n\n var mergedValue = value; // We need convert back to Number since it require `toFixed` to handle this\n\n if (isE(mergedValue)) {\n mergedValue = Number(mergedValue);\n }\n\n mergedValue = typeof mergedValue === 'string' ? mergedValue : num2str(mergedValue);\n\n if (validateNumber(mergedValue)) {\n var trimRet = trimNumber(mergedValue);\n this.negative = trimRet.negative;\n var numbers = trimRet.trimStr.split('.');\n this.integer = BigInt(numbers[0]);\n var decimalStr = numbers[1] || '0';\n this.decimal = BigInt(decimalStr);\n this.decimalLen = decimalStr.length;\n } else {\n this.nan = true;\n }\n }\n\n _createClass(BigIntDecimal, [{\n key: \"getMark\",\n value: function getMark() {\n return this.negative ? '-' : '';\n }\n }, {\n key: \"getIntegerStr\",\n value: function getIntegerStr() {\n return this.integer.toString();\n }\n }, {\n key: \"getDecimalStr\",\n value: function getDecimalStr() {\n return this.decimal.toString().padStart(this.decimalLen, '0');\n }\n /**\n * Align BigIntDecimal with same decimal length. e.g. 12.3 + 5 = 1230000\n * This is used for add function only.\n */\n\n }, {\n key: \"alignDecimal\",\n value: function alignDecimal(decimalLength) {\n var str = \"\".concat(this.getMark()).concat(this.getIntegerStr()).concat(this.getDecimalStr().padEnd(decimalLength, '0'));\n return BigInt(str);\n }\n }, {\n key: \"negate\",\n value: function negate() {\n var clone = new BigIntDecimal(this.toString());\n clone.negative = !clone.negative;\n return clone;\n }\n }, {\n key: \"add\",\n value: function add(value) {\n if (this.isInvalidate()) {\n return new BigIntDecimal(value);\n }\n\n var offset = new BigIntDecimal(value);\n\n if (offset.isInvalidate()) {\n return this;\n }\n\n var maxDecimalLength = Math.max(this.getDecimalStr().length, offset.getDecimalStr().length);\n var myAlignedDecimal = this.alignDecimal(maxDecimalLength);\n var offsetAlignedDecimal = offset.alignDecimal(maxDecimalLength);\n var valueStr = (myAlignedDecimal + offsetAlignedDecimal).toString(); // We need fill string length back to `maxDecimalLength` to avoid parser failed\n\n var _trimNumber = trimNumber(valueStr),\n negativeStr = _trimNumber.negativeStr,\n trimStr = _trimNumber.trimStr;\n\n var hydrateValueStr = \"\".concat(negativeStr).concat(trimStr.padStart(maxDecimalLength + 1, '0'));\n return new BigIntDecimal(\"\".concat(hydrateValueStr.slice(0, -maxDecimalLength), \".\").concat(hydrateValueStr.slice(-maxDecimalLength)));\n }\n }, {\n key: \"isEmpty\",\n value: function isEmpty() {\n return this.empty;\n }\n }, {\n key: \"isNaN\",\n value: function isNaN() {\n return this.nan;\n }\n }, {\n key: \"isInvalidate\",\n value: function isInvalidate() {\n return this.isEmpty() || this.isNaN();\n }\n }, {\n key: \"equals\",\n value: function equals(target) {\n return this.toString() === (target === null || target === void 0 ? void 0 : target.toString());\n }\n }, {\n key: \"lessEquals\",\n value: function lessEquals(target) {\n return this.add(target.negate().toString()).toNumber() <= 0;\n }\n }, {\n key: \"toNumber\",\n value: function toNumber() {\n if (this.isNaN()) {\n return NaN;\n }\n\n return Number(this.toString());\n }\n }, {\n key: \"toString\",\n value: function toString() {\n var safe = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n\n if (!safe) {\n return this.origin;\n }\n\n if (this.isInvalidate()) {\n return '';\n }\n\n return trimNumber(\"\".concat(this.getMark()).concat(this.getIntegerStr(), \".\").concat(this.getDecimalStr())).fullStr;\n }\n }]);\n\n return BigIntDecimal;\n}();\nexport default function getMiniDecimal(value) {\n // We use BigInt here.\n // Will fallback to Number if not support.\n if (supportBigInt()) {\n return new BigIntDecimal(value);\n }\n\n return new NumberDecimal(value);\n}\n/**\n * Align the logic of toFixed to around like 1.5 => 2.\n * If set `cutOnly`, will just remove the over decimal part.\n */\n\nexport function toFixed(numStr, separatorStr, precision) {\n var cutOnly = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n\n if (numStr === '') {\n return '';\n }\n\n var _trimNumber2 = trimNumber(numStr),\n negativeStr = _trimNumber2.negativeStr,\n integerStr = _trimNumber2.integerStr,\n decimalStr = _trimNumber2.decimalStr;\n\n var precisionDecimalStr = \"\".concat(separatorStr).concat(decimalStr);\n var numberWithoutDecimal = \"\".concat(negativeStr).concat(integerStr);\n\n if (precision >= 0) {\n // We will get last + 1 number to check if need advanced number\n var advancedNum = Number(decimalStr[precision]);\n\n if (advancedNum >= 5 && !cutOnly) {\n var advancedDecimal = getMiniDecimal(numStr).add(\"\".concat(negativeStr, \"0.\").concat('0'.repeat(precision)).concat(10 - advancedNum));\n return toFixed(advancedDecimal.toString(), separatorStr, precision, cutOnly);\n }\n\n if (precision === 0) {\n return numberWithoutDecimal;\n }\n\n return \"\".concat(numberWithoutDecimal).concat(separatorStr).concat(decimalStr.padEnd(precision, '0').slice(0, precision));\n }\n\n if (precisionDecimalStr === '.0') {\n return numberWithoutDecimal;\n }\n\n return \"\".concat(numberWithoutDecimal).concat(precisionDecimalStr);\n}","import getMiniDecimal from \"./MiniDecimal\";\nexport * from \"./MiniDecimal\";\nimport { trimNumber, getNumberPrecision, num2str, validateNumber } from \"./numberUtil\";\nexport { trimNumber, getNumberPrecision, num2str, validateNumber };\nexport default getMiniDecimal;","export function hasAddon(props) {\n return !!(props.addonBefore || props.addonAfter);\n}\nexport function hasPrefixSuffix(props) {\n return !!(props.prefix || props.suffix || props.allowClear);\n}\n\n// TODO: It's better to use `Proxy` replace the `element.value`. But we still need support IE11.\nfunction cloneEvent(event, target, value) {\n // A bug report filed on WebKit's Bugzilla tracker, dating back to 2009, specifically addresses the issue of cloneNode() not copying files of <input type=\"file\"> elements.\n // As of the last update, this bug was still marked as \"NEW,\" indicating that it might not have been resolved yet​​.\n // https://bugs.webkit.org/show_bug.cgi?id=28123\n var currentTarget = target.cloneNode(true);\n\n // click clear icon\n var newEvent = Object.create(event, {\n target: {\n value: currentTarget\n },\n currentTarget: {\n value: currentTarget\n }\n });\n\n // Fill data\n currentTarget.value = value;\n\n // Fill selection. Some type like `email` not support selection\n // https://github.com/ant-design/ant-design/issues/47833\n if (typeof target.selectionStart === 'number' && typeof target.selectionEnd === 'number') {\n currentTarget.selectionStart = target.selectionStart;\n currentTarget.selectionEnd = target.selectionEnd;\n }\n currentTarget.setSelectionRange = function () {\n target.setSelectionRange.apply(target, arguments);\n };\n return newEvent;\n}\nexport function resolveOnChange(target, e, onChange, targetValue) {\n if (!onChange) {\n return;\n }\n var event = e;\n if (e.type === 'click') {\n // Clone a new target for event.\n // Avoid the following usage, the setQuery method gets the original value.\n //\n // const [query, setQuery] = React.useState('');\n // <Input\n // allowClear\n // value={query}\n // onChange={(e)=> {\n // setQuery((prevStatus) => e.target.value);\n // }}\n // />\n\n event = cloneEvent(e, target, '');\n onChange(event);\n return;\n }\n\n // Trigger by composition event, this means we need force change the input value\n // https://github.com/ant-design/ant-design/issues/45737\n // https://github.com/ant-design/ant-design/issues/46598\n if (target.type !== 'file' && targetValue !== undefined) {\n event = cloneEvent(e, target, targetValue);\n onChange(event);\n return;\n }\n onChange(event);\n}\nexport function triggerFocus(element, option) {\n if (!element) return;\n element.focus(option);\n\n // Selection content\n var _ref = option || {},\n cursor = _ref.cursor;\n if (cursor) {\n var len = element.value.length;\n switch (cursor) {\n case 'start':\n element.setSelectionRange(0, 0);\n break;\n case 'end':\n element.setSelectionRange(len, len);\n break;\n default:\n element.setSelectionRange(0, len);\n }\n }\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport clsx from 'classnames';\nimport React, { cloneElement, useRef } from 'react';\nimport { hasAddon, hasPrefixSuffix } from \"./utils/commonUtils\";\nvar BaseInput = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props, _props2, _props3;\n var inputEl = props.inputElement,\n children = props.children,\n prefixCls = props.prefixCls,\n prefix = props.prefix,\n suffix = props.suffix,\n addonBefore = props.addonBefore,\n addonAfter = props.addonAfter,\n className = props.className,\n style = props.style,\n disabled = props.disabled,\n readOnly = props.readOnly,\n focused = props.focused,\n triggerFocus = props.triggerFocus,\n allowClear = props.allowClear,\n value = props.value,\n handleReset = props.handleReset,\n hidden = props.hidden,\n classes = props.classes,\n classNames = props.classNames,\n dataAttrs = props.dataAttrs,\n styles = props.styles,\n components = props.components,\n onClear = props.onClear;\n var inputElement = children !== null && children !== void 0 ? children : inputEl;\n var AffixWrapperComponent = (components === null || components === void 0 ? void 0 : components.affixWrapper) || 'span';\n var GroupWrapperComponent = (components === null || components === void 0 ? void 0 : components.groupWrapper) || 'span';\n var WrapperComponent = (components === null || components === void 0 ? void 0 : components.wrapper) || 'span';\n var GroupAddonComponent = (components === null || components === void 0 ? void 0 : components.groupAddon) || 'span';\n var containerRef = useRef(null);\n var onInputClick = function onInputClick(e) {\n var _containerRef$current;\n if ((_containerRef$current = containerRef.current) !== null && _containerRef$current !== void 0 && _containerRef$current.contains(e.target)) {\n triggerFocus === null || triggerFocus === void 0 || triggerFocus();\n }\n };\n var hasAffix = hasPrefixSuffix(props);\n var element = /*#__PURE__*/cloneElement(inputElement, {\n value: value,\n className: clsx((_props = inputElement.props) === null || _props === void 0 ? void 0 : _props.className, !hasAffix && (classNames === null || classNames === void 0 ? void 0 : classNames.variant)) || null\n });\n\n // ======================== Ref ======================== //\n var groupRef = useRef(null);\n React.useImperativeHandle(ref, function () {\n return {\n nativeElement: groupRef.current || containerRef.current\n };\n });\n\n // ================== Prefix & Suffix ================== //\n if (hasAffix) {\n // ================== Clear Icon ================== //\n var clearIcon = null;\n if (allowClear) {\n var needClear = !disabled && !readOnly && value;\n var clearIconCls = \"\".concat(prefixCls, \"-clear-icon\");\n var iconNode = _typeof(allowClear) === 'object' && allowClear !== null && allowClear !== void 0 && allowClear.clearIcon ? allowClear.clearIcon : '✖';\n clearIcon = /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: function onClick(event) {\n handleReset === null || handleReset === void 0 || handleReset(event);\n onClear === null || onClear === void 0 || onClear();\n }\n // Do not trigger onBlur when clear input\n // https://github.com/ant-design/ant-design/issues/31200\n ,\n onMouseDown: function onMouseDown(e) {\n return e.preventDefault();\n },\n className: clsx(clearIconCls, _defineProperty(_defineProperty({}, \"\".concat(clearIconCls, \"-hidden\"), !needClear), \"\".concat(clearIconCls, \"-has-suffix\"), !!suffix))\n }, iconNode);\n }\n var affixWrapperPrefixCls = \"\".concat(prefixCls, \"-affix-wrapper\");\n var affixWrapperCls = clsx(affixWrapperPrefixCls, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(affixWrapperPrefixCls, \"-disabled\"), disabled), \"\".concat(affixWrapperPrefixCls, \"-focused\"), focused), \"\".concat(affixWrapperPrefixCls, \"-readonly\"), readOnly), \"\".concat(affixWrapperPrefixCls, \"-input-with-clear-btn\"), suffix && allowClear && value), classes === null || classes === void 0 ? void 0 : classes.affixWrapper, classNames === null || classNames === void 0 ? void 0 : classNames.affixWrapper, classNames === null || classNames === void 0 ? void 0 : classNames.variant);\n var suffixNode = (suffix || allowClear) && /*#__PURE__*/React.createElement(\"span\", {\n className: clsx(\"\".concat(prefixCls, \"-suffix\"), classNames === null || classNames === void 0 ? void 0 : classNames.suffix),\n style: styles === null || styles === void 0 ? void 0 : styles.suffix\n }, clearIcon, suffix);\n element = /*#__PURE__*/React.createElement(AffixWrapperComponent, _extends({\n className: affixWrapperCls,\n style: styles === null || styles === void 0 ? void 0 : styles.affixWrapper,\n onClick: onInputClick\n }, dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.affixWrapper, {\n ref: containerRef\n }), prefix && /*#__PURE__*/React.createElement(\"span\", {\n className: clsx(\"\".concat(prefixCls, \"-prefix\"), classNames === null || classNames === void 0 ? void 0 : classNames.prefix),\n style: styles === null || styles === void 0 ? void 0 : styles.prefix\n }, prefix), element, suffixNode);\n }\n\n // ================== Addon ================== //\n if (hasAddon(props)) {\n var wrapperCls = \"\".concat(prefixCls, \"-group\");\n var addonCls = \"\".concat(wrapperCls, \"-addon\");\n var groupWrapperCls = \"\".concat(wrapperCls, \"-wrapper\");\n var mergedWrapperClassName = clsx(\"\".concat(prefixCls, \"-wrapper\"), wrapperCls, classes === null || classes === void 0 ? void 0 : classes.wrapper, classNames === null || classNames === void 0 ? void 0 : classNames.wrapper);\n var mergedGroupClassName = clsx(groupWrapperCls, _defineProperty({}, \"\".concat(groupWrapperCls, \"-disabled\"), disabled), classes === null || classes === void 0 ? void 0 : classes.group, classNames === null || classNames === void 0 ? void 0 : classNames.groupWrapper);\n\n // Need another wrapper for changing display:table to display:inline-block\n // and put style prop in wrapper\n element = /*#__PURE__*/React.createElement(GroupWrapperComponent, {\n className: mergedGroupClassName,\n ref: groupRef\n }, /*#__PURE__*/React.createElement(WrapperComponent, {\n className: mergedWrapperClassName\n }, addonBefore && /*#__PURE__*/React.createElement(GroupAddonComponent, {\n className: addonCls\n }, addonBefore), element, addonAfter && /*#__PURE__*/React.createElement(GroupAddonComponent, {\n className: addonCls\n }, addonAfter)));\n }\n\n // `className` and `style` are always on the root element\n return /*#__PURE__*/React.cloneElement(element, {\n className: clsx((_props2 = element.props) === null || _props2 === void 0 ? void 0 : _props2.className, className) || null,\n style: _objectSpread(_objectSpread({}, (_props3 = element.props) === null || _props3 === void 0 ? void 0 : _props3.style), style),\n hidden: hidden\n });\n});\nexport default BaseInput;","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"show\"];\nimport * as React from 'react';\n/**\n * Cut `value` by the `count.max` prop.\n */\nexport function inCountRange(value, countConfig) {\n if (!countConfig.max) {\n return true;\n }\n var count = countConfig.strategy(value);\n return count <= countConfig.max;\n}\nexport default function useCount(count, showCount) {\n return React.useMemo(function () {\n var mergedConfig = {};\n if (showCount) {\n mergedConfig.show = _typeof(showCount) === 'object' && showCount.formatter ? showCount.formatter : !!showCount;\n }\n mergedConfig = _objectSpread(_objectSpread({}, mergedConfig), count);\n var _ref = mergedConfig,\n show = _ref.show,\n rest = _objectWithoutProperties(_ref, _excluded);\n return _objectSpread(_objectSpread({}, rest), {}, {\n show: !!show,\n showFormatter: typeof show === 'function' ? show : undefined,\n strategy: rest.strategy || function (value) {\n return value.length;\n }\n });\n }, [count, showCount]);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"autoComplete\", \"onChange\", \"onFocus\", \"onBlur\", \"onPressEnter\", \"onKeyDown\", \"onKeyUp\", \"prefixCls\", \"disabled\", \"htmlSize\", \"className\", \"maxLength\", \"suffix\", \"showCount\", \"count\", \"type\", \"classes\", \"classNames\", \"styles\", \"onCompositionStart\", \"onCompositionEnd\"];\nimport clsx from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport omit from \"rc-util/es/omit\";\nimport React, { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport BaseInput from \"./BaseInput\";\nimport useCount from \"./hooks/useCount\";\nimport { resolveOnChange, triggerFocus } from \"./utils/commonUtils\";\nvar Input = /*#__PURE__*/forwardRef(function (props, ref) {\n var autoComplete = props.autoComplete,\n onChange = props.onChange,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onPressEnter = props.onPressEnter,\n onKeyDown = props.onKeyDown,\n onKeyUp = props.onKeyUp,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-input' : _props$prefixCls,\n disabled = props.disabled,\n htmlSize = props.htmlSize,\n className = props.className,\n maxLength = props.maxLength,\n suffix = props.suffix,\n showCount = props.showCount,\n count = props.count,\n _props$type = props.type,\n type = _props$type === void 0 ? 'text' : _props$type,\n classes = props.classes,\n classNames = props.classNames,\n styles = props.styles,\n _onCompositionStart = props.onCompositionStart,\n onCompositionEnd = props.onCompositionEnd,\n rest = _objectWithoutProperties(props, _excluded);\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n focused = _useState2[0],\n setFocused = _useState2[1];\n var compositionRef = useRef(false);\n var keyLockRef = useRef(false);\n var inputRef = useRef(null);\n var holderRef = useRef(null);\n var focus = function focus(option) {\n if (inputRef.current) {\n triggerFocus(inputRef.current, option);\n }\n };\n\n // ====================== Value =======================\n var _useMergedState = useMergedState(props.defaultValue, {\n value: props.value\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n value = _useMergedState2[0],\n setValue = _useMergedState2[1];\n var formatValue = value === undefined || value === null ? '' : String(value);\n\n // =================== Select Range ===================\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n selection = _useState4[0],\n setSelection = _useState4[1];\n\n // ====================== Count =======================\n var countConfig = useCount(count, showCount);\n var mergedMax = countConfig.max || maxLength;\n var valueLength = countConfig.strategy(formatValue);\n var isOutOfRange = !!mergedMax && valueLength > mergedMax;\n\n // ======================= Ref ========================\n useImperativeHandle(ref, function () {\n var _holderRef$current;\n return {\n focus: focus,\n blur: function blur() {\n var _inputRef$current;\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.blur();\n },\n setSelectionRange: function setSelectionRange(start, end, direction) {\n var _inputRef$current2;\n (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.setSelectionRange(start, end, direction);\n },\n select: function select() {\n var _inputRef$current3;\n (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 || _inputRef$current3.select();\n },\n input: inputRef.current,\n nativeElement: ((_holderRef$current = holderRef.current) === null || _holderRef$current === void 0 ? void 0 : _holderRef$current.nativeElement) || inputRef.current\n };\n });\n useEffect(function () {\n if (keyLockRef.current) {\n keyLockRef.current = false;\n }\n setFocused(function (prev) {\n return prev && disabled ? false : prev;\n });\n }, [disabled]);\n var triggerChange = function triggerChange(e, currentValue, info) {\n var cutValue = currentValue;\n if (!compositionRef.current && countConfig.exceedFormatter && countConfig.max && countConfig.strategy(currentValue) > countConfig.max) {\n cutValue = countConfig.exceedFormatter(currentValue, {\n max: countConfig.max\n });\n if (currentValue !== cutValue) {\n var _inputRef$current4, _inputRef$current5;\n setSelection([((_inputRef$current4 = inputRef.current) === null || _inputRef$current4 === void 0 ? void 0 : _inputRef$current4.selectionStart) || 0, ((_inputRef$current5 = inputRef.current) === null || _inputRef$current5 === void 0 ? void 0 : _inputRef$current5.selectionEnd) || 0]);\n }\n } else if (info.source === 'compositionEnd') {\n // Avoid triggering twice\n // https://github.com/ant-design/ant-design/issues/46587\n return;\n }\n setValue(cutValue);\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange, cutValue);\n }\n };\n useEffect(function () {\n if (selection) {\n var _inputRef$current6;\n (_inputRef$current6 = inputRef.current) === null || _inputRef$current6 === void 0 || _inputRef$current6.setSelectionRange.apply(_inputRef$current6, _toConsumableArray(selection));\n }\n }, [selection]);\n var onInternalChange = function onInternalChange(e) {\n triggerChange(e, e.target.value, {\n source: 'change'\n });\n };\n var onInternalCompositionEnd = function onInternalCompositionEnd(e) {\n compositionRef.current = false;\n triggerChange(e, e.currentTarget.value, {\n source: 'compositionEnd'\n });\n onCompositionEnd === null || onCompositionEnd === void 0 || onCompositionEnd(e);\n };\n var handleKeyDown = function handleKeyDown(e) {\n if (onPressEnter && e.key === 'Enter' && !keyLockRef.current) {\n keyLockRef.current = true;\n onPressEnter(e);\n }\n onKeyDown === null || onKeyDown === void 0 || onKeyDown(e);\n };\n var handleKeyUp = function handleKeyUp(e) {\n if (e.key === 'Enter') {\n keyLockRef.current = false;\n }\n onKeyUp === null || onKeyUp === void 0 || onKeyUp(e);\n };\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 || onFocus(e);\n };\n var handleBlur = function handleBlur(e) {\n if (keyLockRef.current) {\n keyLockRef.current = false;\n }\n setFocused(false);\n onBlur === null || onBlur === void 0 || onBlur(e);\n };\n var handleReset = function handleReset(e) {\n setValue('');\n focus();\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange);\n }\n };\n\n // ====================== Input =======================\n var outOfRangeCls = isOutOfRange && \"\".concat(prefixCls, \"-out-of-range\");\n var getInputElement = function getInputElement() {\n // Fix https://fb.me/react-unknown-prop\n var otherProps = omit(props, ['prefixCls', 'onPressEnter', 'addonBefore', 'addonAfter', 'prefix', 'suffix', 'allowClear',\n // Input elements must be either controlled or uncontrolled,\n // specify either the value prop, or the defaultValue prop, but not both.\n 'defaultValue', 'showCount', 'count', 'classes', 'htmlSize', 'styles', 'classNames', 'onClear']);\n return /*#__PURE__*/React.createElement(\"input\", _extends({\n autoComplete: autoComplete\n }, otherProps, {\n onChange: onInternalChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onKeyUp: handleKeyUp,\n className: clsx(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled), classNames === null || classNames === void 0 ? void 0 : classNames.input),\n style: styles === null || styles === void 0 ? void 0 : styles.input,\n ref: inputRef,\n size: htmlSize,\n type: type,\n onCompositionStart: function onCompositionStart(e) {\n compositionRef.current = true;\n _onCompositionStart === null || _onCompositionStart === void 0 || _onCompositionStart(e);\n },\n onCompositionEnd: onInternalCompositionEnd\n }));\n };\n var getSuffix = function getSuffix() {\n // Max length value\n var hasMaxLength = Number(mergedMax) > 0;\n if (suffix || countConfig.show) {\n var dataCount = countConfig.showFormatter ? countConfig.showFormatter({\n value: formatValue,\n count: valueLength,\n maxLength: mergedMax\n }) : \"\".concat(valueLength).concat(hasMaxLength ? \" / \".concat(mergedMax) : '');\n return /*#__PURE__*/React.createElement(React.Fragment, null, countConfig.show && /*#__PURE__*/React.createElement(\"span\", {\n className: clsx(\"\".concat(prefixCls, \"-show-count-suffix\"), _defineProperty({}, \"\".concat(prefixCls, \"-show-count-has-suffix\"), !!suffix), classNames === null || classNames === void 0 ? void 0 : classNames.count),\n style: _objectSpread({}, styles === null || styles === void 0 ? void 0 : styles.count)\n }, dataCount), suffix);\n }\n return null;\n };\n\n // ====================== Render ======================\n return /*#__PURE__*/React.createElement(BaseInput, _extends({}, rest, {\n prefixCls: prefixCls,\n className: clsx(className, outOfRangeCls),\n handleReset: handleReset,\n value: formatValue,\n focused: focused,\n triggerFocus: focus,\n suffix: getSuffix(),\n disabled: disabled,\n classes: classes,\n classNames: classNames,\n styles: styles\n }), getInputElement());\n});\nexport default Input;","import BaseInput from \"./BaseInput\";\nimport Input from \"./Input\";\nexport { BaseInput };\nexport default Input;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n/* eslint-disable react/no-unknown-property */\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport useMobile from \"rc-util/es/hooks/useMobile\";\nimport raf from \"rc-util/es/raf\";\n\n/**\n * When click and hold on a button - the speed of auto changing the value.\n */\nvar STEP_INTERVAL = 200;\n\n/**\n * When click and hold on a button - the delay before auto changing the value.\n */\nvar STEP_DELAY = 600;\nexport default function StepHandler(_ref) {\n var prefixCls = _ref.prefixCls,\n upNode = _ref.upNode,\n downNode = _ref.downNode,\n upDisabled = _ref.upDisabled,\n downDisabled = _ref.downDisabled,\n onStep = _ref.onStep;\n // ======================== Step ========================\n var stepTimeoutRef = React.useRef();\n var frameIds = React.useRef([]);\n var onStepRef = React.useRef();\n onStepRef.current = onStep;\n var onStopStep = function onStopStep() {\n clearTimeout(stepTimeoutRef.current);\n };\n\n // We will interval update step when hold mouse down\n var onStepMouseDown = function onStepMouseDown(e, up) {\n e.preventDefault();\n onStopStep();\n onStepRef.current(up);\n\n // Loop step for interval\n function loopStep() {\n onStepRef.current(up);\n stepTimeoutRef.current = setTimeout(loopStep, STEP_INTERVAL);\n }\n\n // First time press will wait some time to trigger loop step update\n stepTimeoutRef.current = setTimeout(loopStep, STEP_DELAY);\n };\n React.useEffect(function () {\n return function () {\n onStopStep();\n frameIds.current.forEach(function (id) {\n return raf.cancel(id);\n });\n };\n }, []);\n\n // ======================= Render =======================\n var isMobile = useMobile();\n if (isMobile) {\n return null;\n }\n var handlerClassName = \"\".concat(prefixCls, \"-handler\");\n var upClassName = classNames(handlerClassName, \"\".concat(handlerClassName, \"-up\"), _defineProperty({}, \"\".concat(handlerClassName, \"-up-disabled\"), upDisabled));\n var downClassName = classNames(handlerClassName, \"\".concat(handlerClassName, \"-down\"), _defineProperty({}, \"\".concat(handlerClassName, \"-down-disabled\"), downDisabled));\n\n // fix: https://github.com/ant-design/ant-design/issues/43088\n // In Safari, When we fire onmousedown and onmouseup events in quick succession, \n // there may be a problem that the onmouseup events are executed first, \n // resulting in a disordered program execution.\n // So, we need to use requestAnimationFrame to ensure that the onmouseup event is executed after the onmousedown event.\n var safeOnStopStep = function safeOnStopStep() {\n return frameIds.current.push(raf(onStopStep));\n };\n var sharedHandlerProps = {\n unselectable: 'on',\n role: 'button',\n onMouseUp: safeOnStopStep,\n onMouseLeave: safeOnStopStep\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(handlerClassName, \"-wrap\")\n }, /*#__PURE__*/React.createElement(\"span\", _extends({}, sharedHandlerProps, {\n onMouseDown: function onMouseDown(e) {\n onStepMouseDown(e, true);\n },\n \"aria-label\": \"Increase Value\",\n \"aria-disabled\": upDisabled,\n className: upClassName\n }), upNode || /*#__PURE__*/React.createElement(\"span\", {\n unselectable: \"on\",\n className: \"\".concat(prefixCls, \"-handler-up-inner\")\n })), /*#__PURE__*/React.createElement(\"span\", _extends({}, sharedHandlerProps, {\n onMouseDown: function onMouseDown(e) {\n onStepMouseDown(e, false);\n },\n \"aria-label\": \"Decrease Value\",\n \"aria-disabled\": downDisabled,\n className: downClassName\n }), downNode || /*#__PURE__*/React.createElement(\"span\", {\n unselectable: \"on\",\n className: \"\".concat(prefixCls, \"-handler-down-inner\")\n })));\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useState } from 'react';\nimport isMobile from \"../isMobile\";\nimport useLayoutEffect from \"./useLayoutEffect\";\n\n/**\n * Hook to detect if the user is on a mobile device\n * Notice that this hook will only detect the device type in effect, so it will always be false in server side\n */\nvar useMobile = function useMobile() {\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n mobile = _useState2[0],\n setMobile = _useState2[1];\n useLayoutEffect(function () {\n setMobile(isMobile());\n }, []);\n return mobile;\n};\nexport default useMobile;","import { trimNumber, num2str } from '@rc-component/mini-decimal';\nexport function getDecupleSteps(step) {\n var stepStr = typeof step === 'number' ? num2str(step) : trimNumber(step).fullStr;\n var hasPoint = stepStr.includes('.');\n if (!hasPoint) {\n return step + '0';\n }\n return trimNumber(stepStr.replace(/(\\d)\\.(\\d)/g, '$1$2.')).fullStr;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"className\", \"style\", \"min\", \"max\", \"step\", \"defaultValue\", \"value\", \"disabled\", \"readOnly\", \"upHandler\", \"downHandler\", \"keyboard\", \"changeOnWheel\", \"controls\", \"classNames\", \"stringMode\", \"parser\", \"formatter\", \"precision\", \"decimalSeparator\", \"onChange\", \"onInput\", \"onPressEnter\", \"onStep\", \"changeOnBlur\", \"domRef\"],\n _excluded2 = [\"disabled\", \"style\", \"prefixCls\", \"value\", \"prefix\", \"suffix\", \"addonBefore\", \"addonAfter\", \"className\", \"classNames\"];\nimport getMiniDecimal, { getNumberPrecision, num2str, toFixed, validateNumber } from '@rc-component/mini-decimal';\nimport clsx from 'classnames';\nimport { BaseInput } from 'rc-input';\nimport { useLayoutUpdateEffect } from \"rc-util/es/hooks/useLayoutEffect\";\nimport proxyObject from \"rc-util/es/proxyObject\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport useCursor from \"./hooks/useCursor\";\nimport StepHandler from \"./StepHandler\";\nimport { getDecupleSteps } from \"./utils/numberUtil\";\nimport { triggerFocus } from \"rc-input/es/utils/commonUtils\";\nimport useFrame from \"./hooks/useFrame\";\n/**\n * We support `stringMode` which need handle correct type when user call in onChange\n * format max or min value\n * 1. if isInvalid return null\n * 2. if precision is undefined, return decimal\n * 3. format with precision\n * I. if max > 0, round down with precision. Example: max= 3.5, precision=0 afterFormat: 3\n * II. if max < 0, round up with precision. Example: max= -3.5, precision=0 afterFormat: -4\n * III. if min > 0, round up with precision. Example: min= 3.5, precision=0 afterFormat: 4\n * IV. if min < 0, round down with precision. Example: max= -3.5, precision=0 afterFormat: -3\n */\nvar getDecimalValue = function getDecimalValue(stringMode, decimalValue) {\n if (stringMode || decimalValue.isEmpty()) {\n return decimalValue.toString();\n }\n return decimalValue.toNumber();\n};\nvar getDecimalIfValidate = function getDecimalIfValidate(value) {\n var decimal = getMiniDecimal(value);\n return decimal.isInvalidate() ? null : decimal;\n};\nvar InternalInputNumber = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n min = props.min,\n max = props.max,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n defaultValue = props.defaultValue,\n value = props.value,\n disabled = props.disabled,\n readOnly = props.readOnly,\n upHandler = props.upHandler,\n downHandler = props.downHandler,\n keyboard = props.keyboard,\n _props$changeOnWheel = props.changeOnWheel,\n changeOnWheel = _props$changeOnWheel === void 0 ? false : _props$changeOnWheel,\n _props$controls = props.controls,\n controls = _props$controls === void 0 ? true : _props$controls,\n classNames = props.classNames,\n stringMode = props.stringMode,\n parser = props.parser,\n formatter = props.formatter,\n precision = props.precision,\n decimalSeparator = props.decimalSeparator,\n onChange = props.onChange,\n onInput = props.onInput,\n onPressEnter = props.onPressEnter,\n onStep = props.onStep,\n _props$changeOnBlur = props.changeOnBlur,\n changeOnBlur = _props$changeOnBlur === void 0 ? true : _props$changeOnBlur,\n domRef = props.domRef,\n inputProps = _objectWithoutProperties(props, _excluded);\n var inputClassName = \"\".concat(prefixCls, \"-input\");\n var inputRef = React.useRef(null);\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n focus = _React$useState2[0],\n setFocus = _React$useState2[1];\n var userTypingRef = React.useRef(false);\n var compositionRef = React.useRef(false);\n var shiftKeyRef = React.useRef(false);\n\n // ============================ Value =============================\n // Real value control\n var _React$useState3 = React.useState(function () {\n return getMiniDecimal(value !== null && value !== void 0 ? value : defaultValue);\n }),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n decimalValue = _React$useState4[0],\n setDecimalValue = _React$useState4[1];\n function setUncontrolledDecimalValue(newDecimal) {\n if (value === undefined) {\n setDecimalValue(newDecimal);\n }\n }\n\n // ====================== Parser & Formatter ======================\n /**\n * `precision` is used for formatter & onChange.\n * It will auto generate by `value` & `step`.\n * But it will not block user typing.\n *\n * Note: Auto generate `precision` is used for legacy logic.\n * We should remove this since we already support high precision with BigInt.\n *\n * @param number Provide which number should calculate precision\n * @param userTyping Change by user typing\n */\n var getPrecision = React.useCallback(function (numStr, userTyping) {\n if (userTyping) {\n return undefined;\n }\n if (precision >= 0) {\n return precision;\n }\n return Math.max(getNumberPrecision(numStr), getNumberPrecision(step));\n }, [precision, step]);\n\n // >>> Parser\n var mergedParser = React.useCallback(function (num) {\n var numStr = String(num);\n if (parser) {\n return parser(numStr);\n }\n var parsedStr = numStr;\n if (decimalSeparator) {\n parsedStr = parsedStr.replace(decimalSeparator, '.');\n }\n\n // [Legacy] We still support auto convert `$ 123,456` to `123456`\n return parsedStr.replace(/[^\\w.-]+/g, '');\n }, [parser, decimalSeparator]);\n\n // >>> Formatter\n var inputValueRef = React.useRef('');\n var mergedFormatter = React.useCallback(function (number, userTyping) {\n if (formatter) {\n return formatter(number, {\n userTyping: userTyping,\n input: String(inputValueRef.current)\n });\n }\n var str = typeof number === 'number' ? num2str(number) : number;\n\n // User typing will not auto format with precision directly\n if (!userTyping) {\n var mergedPrecision = getPrecision(str, userTyping);\n if (validateNumber(str) && (decimalSeparator || mergedPrecision >= 0)) {\n // Separator\n var separatorStr = decimalSeparator || '.';\n str = toFixed(str, separatorStr, mergedPrecision);\n }\n }\n return str;\n }, [formatter, getPrecision, decimalSeparator]);\n\n // ========================== InputValue ==========================\n /**\n * Input text value control\n *\n * User can not update input content directly. It updates with follow rules by priority:\n * 1. controlled `value` changed\n * * [SPECIAL] Typing like `1.` should not immediately convert to `1`\n * 2. User typing with format (not precision)\n * 3. Blur or Enter trigger revalidate\n */\n var _React$useState5 = React.useState(function () {\n var initValue = defaultValue !== null && defaultValue !== void 0 ? defaultValue : value;\n if (decimalValue.isInvalidate() && ['string', 'number'].includes(_typeof(initValue))) {\n return Number.isNaN(initValue) ? '' : initValue;\n }\n return mergedFormatter(decimalValue.toString(), false);\n }),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n inputValue = _React$useState6[0],\n setInternalInputValue = _React$useState6[1];\n inputValueRef.current = inputValue;\n\n // Should always be string\n function setInputValue(newValue, userTyping) {\n setInternalInputValue(mergedFormatter(\n // Invalidate number is sometime passed by external control, we should let it go\n // Otherwise is controlled by internal interactive logic which check by userTyping\n // You can ref 'show limited value when input is not focused' test for more info.\n newValue.isInvalidate() ? newValue.toString(false) : newValue.toString(!userTyping), userTyping));\n }\n\n // >>> Max & Min limit\n var maxDecimal = React.useMemo(function () {\n return getDecimalIfValidate(max);\n }, [max, precision]);\n var minDecimal = React.useMemo(function () {\n return getDecimalIfValidate(min);\n }, [min, precision]);\n var upDisabled = React.useMemo(function () {\n if (!maxDecimal || !decimalValue || decimalValue.isInvalidate()) {\n return false;\n }\n return maxDecimal.lessEquals(decimalValue);\n }, [maxDecimal, decimalValue]);\n var downDisabled = React.useMemo(function () {\n if (!minDecimal || !decimalValue || decimalValue.isInvalidate()) {\n return false;\n }\n return decimalValue.lessEquals(minDecimal);\n }, [minDecimal, decimalValue]);\n\n // Cursor controller\n var _useCursor = useCursor(inputRef.current, focus),\n _useCursor2 = _slicedToArray(_useCursor, 2),\n recordCursor = _useCursor2[0],\n restoreCursor = _useCursor2[1];\n\n // ============================= Data =============================\n /**\n * Find target value closet within range.\n * e.g. [11, 28]:\n * 3 => 11\n * 23 => 23\n * 99 => 28\n */\n var getRangeValue = function getRangeValue(target) {\n // target > max\n if (maxDecimal && !target.lessEquals(maxDecimal)) {\n return maxDecimal;\n }\n\n // target < min\n if (minDecimal && !minDecimal.lessEquals(target)) {\n return minDecimal;\n }\n return null;\n };\n\n /**\n * Check value is in [min, max] range\n */\n var isInRange = function isInRange(target) {\n return !getRangeValue(target);\n };\n\n /**\n * Trigger `onChange` if value validated and not equals of origin.\n * Return the value that re-align in range.\n */\n var triggerValueUpdate = function triggerValueUpdate(newValue, userTyping) {\n var updateValue = newValue;\n var isRangeValidate = isInRange(updateValue) || updateValue.isEmpty();\n\n // Skip align value when trigger value is empty.\n // We just trigger onChange(null)\n // This should not block user typing\n if (!updateValue.isEmpty() && !userTyping) {\n // Revert value in range if needed\n updateValue = getRangeValue(updateValue) || updateValue;\n isRangeValidate = true;\n }\n if (!readOnly && !disabled && isRangeValidate) {\n var numStr = updateValue.toString();\n var mergedPrecision = getPrecision(numStr, userTyping);\n if (mergedPrecision >= 0) {\n updateValue = getMiniDecimal(toFixed(numStr, '.', mergedPrecision));\n\n // When to fixed. The value may out of min & max range.\n // 4 in [0, 3.8] => 3.8 => 4 (toFixed)\n if (!isInRange(updateValue)) {\n updateValue = getMiniDecimal(toFixed(numStr, '.', mergedPrecision, true));\n }\n }\n\n // Trigger event\n if (!updateValue.equals(decimalValue)) {\n setUncontrolledDecimalValue(updateValue);\n onChange === null || onChange === void 0 || onChange(updateValue.isEmpty() ? null : getDecimalValue(stringMode, updateValue));\n\n // Reformat input if value is not controlled\n if (value === undefined) {\n setInputValue(updateValue, userTyping);\n }\n }\n return updateValue;\n }\n return decimalValue;\n };\n\n // ========================== User Input ==========================\n var onNextPromise = useFrame();\n\n // >>> Collect input value\n var collectInputValue = function collectInputValue(inputStr) {\n recordCursor();\n\n // Update inputValue in case input can not parse as number\n // Refresh ref value immediately since it may used by formatter\n inputValueRef.current = inputStr;\n setInternalInputValue(inputStr);\n\n // Parse number\n if (!compositionRef.current) {\n var finalValue = mergedParser(inputStr);\n var finalDecimal = getMiniDecimal(finalValue);\n if (!finalDecimal.isNaN()) {\n triggerValueUpdate(finalDecimal, true);\n }\n }\n\n // Trigger onInput later to let user customize value if they want to handle something after onChange\n onInput === null || onInput === void 0 || onInput(inputStr);\n\n // optimize for chinese input experience\n // https://github.com/ant-design/ant-design/issues/8196\n onNextPromise(function () {\n var nextInputStr = inputStr;\n if (!parser) {\n nextInputStr = inputStr.replace(/。/g, '.');\n }\n if (nextInputStr !== inputStr) {\n collectInputValue(nextInputStr);\n }\n });\n };\n\n // >>> Composition\n var onCompositionStart = function onCompositionStart() {\n compositionRef.current = true;\n };\n var onCompositionEnd = function onCompositionEnd() {\n compositionRef.current = false;\n collectInputValue(inputRef.current.value);\n };\n\n // >>> Input\n var onInternalInput = function onInternalInput(e) {\n collectInputValue(e.target.value);\n };\n\n // ============================= Step =============================\n var onInternalStep = function onInternalStep(up) {\n var _inputRef$current;\n // Ignore step since out of range\n if (up && upDisabled || !up && downDisabled) {\n return;\n }\n\n // Clear typing status since it may be caused by up & down key.\n // We should sync with input value.\n userTypingRef.current = false;\n var stepDecimal = getMiniDecimal(shiftKeyRef.current ? getDecupleSteps(step) : step);\n if (!up) {\n stepDecimal = stepDecimal.negate();\n }\n var target = (decimalValue || getMiniDecimal(0)).add(stepDecimal.toString());\n var updatedValue = triggerValueUpdate(target, false);\n onStep === null || onStep === void 0 || onStep(getDecimalValue(stringMode, updatedValue), {\n offset: shiftKeyRef.current ? getDecupleSteps(step) : step,\n type: up ? 'up' : 'down'\n });\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();\n };\n\n // ============================ Flush =============================\n /**\n * Flush current input content to trigger value change & re-formatter input if needed.\n * This will always flush input value for update.\n * If it's invalidate, will fallback to last validate value.\n */\n var flushInputValue = function flushInputValue(userTyping) {\n var parsedValue = getMiniDecimal(mergedParser(inputValue));\n var formatValue;\n if (!parsedValue.isNaN()) {\n // Only validate value or empty value can be re-fill to inputValue\n // Reassign the formatValue within ranged of trigger control\n formatValue = triggerValueUpdate(parsedValue, userTyping);\n } else {\n formatValue = triggerValueUpdate(decimalValue, userTyping);\n }\n if (value !== undefined) {\n // Reset back with controlled value first\n setInputValue(decimalValue, false);\n } else if (!formatValue.isNaN()) {\n // Reset input back since no validate value\n setInputValue(formatValue, false);\n }\n };\n\n // Solve the issue of the event triggering sequence when entering numbers in chinese input (Safari)\n var onBeforeInput = function onBeforeInput() {\n userTypingRef.current = true;\n };\n var onKeyDown = function onKeyDown(event) {\n var key = event.key,\n shiftKey = event.shiftKey;\n userTypingRef.current = true;\n shiftKeyRef.current = shiftKey;\n if (key === 'Enter') {\n if (!compositionRef.current) {\n userTypingRef.current = false;\n }\n flushInputValue(false);\n onPressEnter === null || onPressEnter === void 0 || onPressEnter(event);\n }\n if (keyboard === false) {\n return;\n }\n\n // Do step\n if (!compositionRef.current && ['Up', 'ArrowUp', 'Down', 'ArrowDown'].includes(key)) {\n onInternalStep(key === 'Up' || key === 'ArrowUp');\n event.preventDefault();\n }\n };\n var onKeyUp = function onKeyUp() {\n userTypingRef.current = false;\n shiftKeyRef.current = false;\n };\n React.useEffect(function () {\n if (changeOnWheel && focus) {\n var onWheel = function onWheel(event) {\n // moving mouse wheel rises wheel event with deltaY < 0\n // scroll value grows from top to bottom, as screen Y coordinate\n onInternalStep(event.deltaY < 0);\n event.preventDefault();\n };\n var input = inputRef.current;\n if (input) {\n // React onWheel is passive and we can't preventDefault() in it.\n // That's why we should subscribe with DOM listener\n // https://stackoverflow.com/questions/63663025/react-onwheel-handler-cant-preventdefault-because-its-a-passive-event-listenev\n input.addEventListener('wheel', onWheel, {\n passive: false\n });\n return function () {\n return input.removeEventListener('wheel', onWheel);\n };\n }\n }\n });\n\n // >>> Focus & Blur\n var onBlur = function onBlur() {\n if (changeOnBlur) {\n flushInputValue(false);\n }\n setFocus(false);\n userTypingRef.current = false;\n };\n\n // ========================== Controlled ==========================\n // Input by precision & formatter\n useLayoutUpdateEffect(function () {\n if (!decimalValue.isInvalidate()) {\n setInputValue(decimalValue, false);\n }\n }, [precision, formatter]);\n\n // Input by value\n useLayoutUpdateEffect(function () {\n var newValue = getMiniDecimal(value);\n setDecimalValue(newValue);\n var currentParsedValue = getMiniDecimal(mergedParser(inputValue));\n\n // When user typing from `1.2` to `1.`, we should not convert to `1` immediately.\n // But let it go if user set `formatter`\n if (!newValue.equals(currentParsedValue) || !userTypingRef.current || formatter) {\n // Update value as effect\n setInputValue(newValue, userTypingRef.current);\n }\n }, [value]);\n\n // ============================ Cursor ============================\n useLayoutUpdateEffect(function () {\n if (formatter) {\n restoreCursor();\n }\n }, [inputValue]);\n\n // ============================ Render ============================\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: domRef,\n className: clsx(prefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-focused\"), focus), \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(prefixCls, \"-readonly\"), readOnly), \"\".concat(prefixCls, \"-not-a-number\"), decimalValue.isNaN()), \"\".concat(prefixCls, \"-out-of-range\"), !decimalValue.isInvalidate() && !isInRange(decimalValue))),\n style: style,\n onFocus: function onFocus() {\n setFocus(true);\n },\n onBlur: onBlur,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp,\n onCompositionStart: onCompositionStart,\n onCompositionEnd: onCompositionEnd,\n onBeforeInput: onBeforeInput\n }, controls && /*#__PURE__*/React.createElement(StepHandler, {\n prefixCls: prefixCls,\n upNode: upHandler,\n downNode: downHandler,\n upDisabled: upDisabled,\n downDisabled: downDisabled,\n onStep: onInternalStep\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(inputClassName, \"-wrap\")\n }, /*#__PURE__*/React.createElement(\"input\", _extends({\n autoComplete: \"off\",\n role: \"spinbutton\",\n \"aria-valuemin\": min,\n \"aria-valuemax\": max,\n \"aria-valuenow\": decimalValue.isInvalidate() ? null : decimalValue.toString(),\n step: step\n }, inputProps, {\n ref: composeRef(inputRef, ref),\n className: inputClassName,\n value: inputValue,\n onChange: onInternalInput,\n disabled: disabled,\n readOnly: readOnly\n }))));\n});\nvar InputNumber = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var disabled = props.disabled,\n style = props.style,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-input-number' : _props$prefixCls,\n value = props.value,\n prefix = props.prefix,\n suffix = props.suffix,\n addonBefore = props.addonBefore,\n addonAfter = props.addonAfter,\n className = props.className,\n classNames = props.classNames,\n rest = _objectWithoutProperties(props, _excluded2);\n var holderRef = React.useRef(null);\n var inputNumberDomRef = React.useRef(null);\n var inputFocusRef = React.useRef(null);\n var focus = function focus(option) {\n if (inputFocusRef.current) {\n triggerFocus(inputFocusRef.current, option);\n }\n };\n React.useImperativeHandle(ref, function () {\n return proxyObject(inputFocusRef.current, {\n focus: focus,\n nativeElement: holderRef.current.nativeElement || inputNumberDomRef.current\n });\n });\n return /*#__PURE__*/React.createElement(BaseInput, {\n className: className,\n triggerFocus: focus,\n prefixCls: prefixCls,\n value: value,\n disabled: disabled,\n style: style,\n prefix: prefix,\n suffix: suffix,\n addonAfter: addonAfter,\n addonBefore: addonBefore,\n classNames: classNames,\n components: {\n affixWrapper: 'div',\n groupWrapper: 'div',\n wrapper: 'div',\n groupAddon: 'div'\n },\n ref: holderRef\n }, /*#__PURE__*/React.createElement(InternalInputNumber, _extends({\n prefixCls: prefixCls,\n disabled: disabled,\n ref: inputFocusRef,\n domRef: inputNumberDomRef,\n className: classNames === null || classNames === void 0 ? void 0 : classNames.input\n }, rest)));\n});\nif (process.env.NODE_ENV !== 'production') {\n InputNumber.displayName = 'InputNumber';\n}\nexport default InputNumber;","import { useRef, useEffect } from 'react';\nimport raf from \"rc-util/es/raf\";\n\n/**\n * Always trigger latest once when call multiple time\n */\nexport default (function () {\n var idRef = useRef(0);\n var cleanUp = function cleanUp() {\n raf.cancel(idRef.current);\n };\n useEffect(function () {\n return cleanUp;\n }, []);\n return function (callback) {\n cleanUp();\n idRef.current = raf(function () {\n callback();\n });\n };\n});","import { useRef } from 'react';\nimport warning from \"rc-util/es/warning\";\n/**\n * Keep input cursor in the correct position if possible.\n * Is this necessary since we have `formatter` which may mass the content?\n */\nexport default function useCursor(input, focused) {\n var selectionRef = useRef(null);\n function recordCursor() {\n // Record position\n try {\n var start = input.selectionStart,\n end = input.selectionEnd,\n value = input.value;\n var beforeTxt = value.substring(0, start);\n var afterTxt = value.substring(end);\n selectionRef.current = {\n start: start,\n end: end,\n value: value,\n beforeTxt: beforeTxt,\n afterTxt: afterTxt\n };\n } catch (e) {\n // Fix error in Chrome:\n // Failed to read the 'selectionStart' property from 'HTMLInputElement'\n // http://stackoverflow.com/q/21177489/3040605\n }\n }\n\n /**\n * Restore logic:\n * 1. back string same\n * 2. start string same\n */\n function restoreCursor() {\n if (input && selectionRef.current && focused) {\n try {\n var value = input.value;\n var _selectionRef$current = selectionRef.current,\n beforeTxt = _selectionRef$current.beforeTxt,\n afterTxt = _selectionRef$current.afterTxt,\n start = _selectionRef$current.start;\n var startPos = value.length;\n if (value.startsWith(beforeTxt)) {\n startPos = beforeTxt.length;\n } else if (value.endsWith(afterTxt)) {\n startPos = value.length - selectionRef.current.afterTxt.length;\n } else {\n var beforeLastChar = beforeTxt[start - 1];\n var newIndex = value.indexOf(beforeLastChar, start - 1);\n if (newIndex !== -1) {\n startPos = newIndex + 1;\n }\n }\n input.setSelectionRange(startPos, startPos);\n } catch (e) {\n warning(false, \"Something warning of cursor restore. Please fire issue about this: \".concat(e.message));\n }\n }\n }\n return [recordCursor, restoreCursor];\n}","/**\n * Proxy object if environment supported\n */\nexport default function proxyObject(obj, extendProps) {\n if (typeof Proxy !== 'undefined' && obj) {\n return new Proxy(obj, {\n get: function get(target, prop) {\n if (extendProps[prop]) {\n return extendProps[prop];\n }\n\n // Proxy origin property\n var originProp = target[prop];\n return typeof originProp === 'function' ? originProp.bind(target) : originProp;\n }\n });\n }\n return obj;\n}","import InputNumber from \"./InputNumber\";\nexport default InputNumber;","import { FastColor } from '@ant-design/fast-color';\nimport { initComponentToken } from '../../input/style/token';\nexport const prepareComponentToken = token => {\n var _a;\n const handleVisible = (_a = token.handleVisible) !== null && _a !== void 0 ? _a : 'auto';\n const handleWidth = token.controlHeightSM - token.lineWidth * 2;\n return Object.assign(Object.assign({}, initComponentToken(token)), {\n controlWidth: 90,\n handleWidth,\n handleFontSize: token.fontSize / 2,\n handleVisible,\n handleActiveBg: token.colorFillAlter,\n handleBg: token.colorBgContainer,\n filledHandleBg: new FastColor(token.colorFillSecondary).onBackground(token.colorBgContainer).toHexString(),\n handleHoverColor: token.colorPrimary,\n handleBorderColor: token.colorBorder,\n handleOpacity: handleVisible === true ? 1 : 0,\n handleVisibleWidth: handleVisible === true ? handleWidth : 0\n });\n};","import { unit } from '@ant-design/cssinjs';\nimport { genBasicInputStyle, genInputGroupStyle, genPlaceholderStyle, initInputToken } from '../../input/style';\nimport { genBorderlessStyle, genFilledGroupStyle, genFilledStyle, genOutlinedGroupStyle, genOutlinedStyle } from '../../input/style/variants';\nimport { resetComponent, resetIcon } from '../../style';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\nimport { prepareComponentToken } from './token';\nexport const genRadiusStyle = (_ref, size) => {\n let {\n componentCls,\n borderRadiusSM,\n borderRadiusLG\n } = _ref;\n const borderRadius = size === 'lg' ? borderRadiusLG : borderRadiusSM;\n return {\n [`&-${size}`]: {\n [`${componentCls}-handler-wrap`]: {\n borderStartEndRadius: borderRadius,\n borderEndEndRadius: borderRadius\n },\n [`${componentCls}-handler-up`]: {\n borderStartEndRadius: borderRadius\n },\n [`${componentCls}-handler-down`]: {\n borderEndEndRadius: borderRadius\n }\n }\n };\n};\nconst genInputNumberStyles = token => {\n const {\n componentCls,\n lineWidth,\n lineType,\n borderRadius,\n inputFontSizeSM,\n inputFontSizeLG,\n controlHeightLG,\n controlHeightSM,\n colorError,\n paddingInlineSM,\n paddingBlockSM,\n paddingBlockLG,\n paddingInlineLG,\n colorTextDescription,\n motionDurationMid,\n handleHoverColor,\n handleOpacity,\n paddingInline,\n paddingBlock,\n handleBg,\n handleActiveBg,\n colorTextDisabled,\n borderRadiusSM,\n borderRadiusLG,\n controlWidth,\n handleBorderColor,\n filledHandleBg,\n lineHeightLG,\n calc\n } = token;\n return [{\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), genBasicInputStyle(token)), {\n display: 'inline-block',\n width: controlWidth,\n margin: 0,\n padding: 0,\n borderRadius\n }), genOutlinedStyle(token, {\n [`${componentCls}-handler-wrap`]: {\n background: handleBg,\n [`${componentCls}-handler-down`]: {\n borderBlockStart: `${unit(lineWidth)} ${lineType} ${handleBorderColor}`\n }\n }\n })), genFilledStyle(token, {\n [`${componentCls}-handler-wrap`]: {\n background: filledHandleBg,\n [`${componentCls}-handler-down`]: {\n borderBlockStart: `${unit(lineWidth)} ${lineType} ${handleBorderColor}`\n }\n },\n '&:focus-within': {\n [`${componentCls}-handler-wrap`]: {\n background: handleBg\n }\n }\n })), genBorderlessStyle(token)), {\n '&-rtl': {\n direction: 'rtl',\n [`${componentCls}-input`]: {\n direction: 'rtl'\n }\n },\n '&-lg': {\n padding: 0,\n fontSize: inputFontSizeLG,\n lineHeight: lineHeightLG,\n borderRadius: borderRadiusLG,\n [`input${componentCls}-input`]: {\n height: calc(controlHeightLG).sub(calc(lineWidth).mul(2)).equal(),\n padding: `${unit(paddingBlockLG)} ${unit(paddingInlineLG)}`\n }\n },\n '&-sm': {\n padding: 0,\n fontSize: inputFontSizeSM,\n borderRadius: borderRadiusSM,\n [`input${componentCls}-input`]: {\n height: calc(controlHeightSM).sub(calc(lineWidth).mul(2)).equal(),\n padding: `${unit(paddingBlockSM)} ${unit(paddingInlineSM)}`\n }\n },\n // ===================== Out Of Range =====================\n '&-out-of-range': {\n [`${componentCls}-input-wrap`]: {\n input: {\n color: colorError\n }\n }\n },\n // Style for input-group: input with label, with button or dropdown...\n '&-group': Object.assign(Object.assign(Object.assign({}, resetComponent(token)), genInputGroupStyle(token)), {\n '&-wrapper': Object.assign(Object.assign(Object.assign({\n display: 'inline-block',\n textAlign: 'start',\n verticalAlign: 'top',\n [`${componentCls}-affix-wrapper`]: {\n width: '100%'\n },\n // Size\n '&-lg': {\n [`${componentCls}-group-addon`]: {\n borderRadius: borderRadiusLG,\n fontSize: token.fontSizeLG\n }\n },\n '&-sm': {\n [`${componentCls}-group-addon`]: {\n borderRadius: borderRadiusSM\n }\n }\n }, genOutlinedGroupStyle(token)), genFilledGroupStyle(token)), {\n // Fix the issue of using icons in Space Compact mode\n // https://github.com/ant-design/ant-design/issues/45764\n [`&:not(${componentCls}-compact-first-item):not(${componentCls}-compact-last-item)${componentCls}-compact-item`]: {\n [`${componentCls}, ${componentCls}-group-addon`]: {\n borderRadius: 0\n }\n },\n [`&:not(${componentCls}-compact-last-item)${componentCls}-compact-first-item`]: {\n [`${componentCls}, ${componentCls}-group-addon`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0\n }\n },\n [`&:not(${componentCls}-compact-first-item)${componentCls}-compact-last-item`]: {\n [`${componentCls}, ${componentCls}-group-addon`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n }\n }\n })\n }),\n [`&-disabled ${componentCls}-input`]: {\n cursor: 'not-allowed'\n },\n [componentCls]: {\n '&-input': Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), {\n width: '100%',\n padding: `${unit(paddingBlock)} ${unit(paddingInline)}`,\n textAlign: 'start',\n backgroundColor: 'transparent',\n border: 0,\n borderRadius,\n outline: 0,\n transition: `all ${motionDurationMid} linear`,\n appearance: 'textfield',\n fontSize: 'inherit'\n }), genPlaceholderStyle(token.colorTextPlaceholder)), {\n '&[type=\"number\"]::-webkit-inner-spin-button, &[type=\"number\"]::-webkit-outer-spin-button': {\n margin: 0,\n webkitAppearance: 'none',\n appearance: 'none'\n }\n })\n },\n [`&:hover ${componentCls}-handler-wrap, &-focused ${componentCls}-handler-wrap`]: {\n width: token.handleWidth,\n opacity: 1\n }\n })\n },\n // Handler\n {\n [componentCls]: Object.assign(Object.assign(Object.assign({\n [`${componentCls}-handler-wrap`]: {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineEnd: 0,\n width: token.handleVisibleWidth,\n opacity: handleOpacity,\n height: '100%',\n borderStartStartRadius: 0,\n borderStartEndRadius: borderRadius,\n borderEndEndRadius: borderRadius,\n borderEndStartRadius: 0,\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n transition: `all ${motionDurationMid}`,\n overflow: 'hidden',\n // Fix input number inside Menu makes icon too large\n // We arise the selector priority by nest selector here\n // https://github.com/ant-design/ant-design/issues/14367\n [`${componentCls}-handler`]: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 'auto',\n height: '40%',\n [`\n ${componentCls}-handler-up-inner,\n ${componentCls}-handler-down-inner\n `]: {\n marginInlineEnd: 0,\n fontSize: token.handleFontSize\n }\n }\n },\n [`${componentCls}-handler`]: {\n height: '50%',\n overflow: 'hidden',\n color: colorTextDescription,\n fontWeight: 'bold',\n lineHeight: 0,\n textAlign: 'center',\n cursor: 'pointer',\n borderInlineStart: `${unit(lineWidth)} ${lineType} ${handleBorderColor}`,\n transition: `all ${motionDurationMid} linear`,\n '&:active': {\n background: handleActiveBg\n },\n // Hover\n '&:hover': {\n height: `60%`,\n [`\n ${componentCls}-handler-up-inner,\n ${componentCls}-handler-down-inner\n `]: {\n color: handleHoverColor\n }\n },\n '&-up-inner, &-down-inner': Object.assign(Object.assign({}, resetIcon()), {\n color: colorTextDescription,\n transition: `all ${motionDurationMid} linear`,\n userSelect: 'none'\n })\n },\n [`${componentCls}-handler-up`]: {\n borderStartEndRadius: borderRadius\n },\n [`${componentCls}-handler-down`]: {\n borderEndEndRadius: borderRadius\n }\n }, genRadiusStyle(token, 'lg')), genRadiusStyle(token, 'sm')), {\n // Disabled\n '&-disabled, &-readonly': {\n [`${componentCls}-handler-wrap`]: {\n display: 'none'\n },\n [`${componentCls}-input`]: {\n color: 'inherit'\n }\n },\n [`\n ${componentCls}-handler-up-disabled,\n ${componentCls}-handler-down-disabled\n `]: {\n cursor: 'not-allowed'\n },\n [`\n ${componentCls}-handler-up-disabled:hover &-handler-up-inner,\n ${componentCls}-handler-down-disabled:hover &-handler-down-inner\n `]: {\n color: colorTextDisabled\n }\n })\n }];\n};\nconst genAffixWrapperStyles = token => {\n const {\n componentCls,\n paddingBlock,\n paddingInline,\n inputAffixPadding,\n controlWidth,\n borderRadiusLG,\n borderRadiusSM,\n paddingInlineLG,\n paddingInlineSM,\n paddingBlockLG,\n paddingBlockSM,\n motionDurationMid\n } = token;\n return {\n [`${componentCls}-affix-wrapper`]: Object.assign(Object.assign({\n [`input${componentCls}-input`]: {\n padding: `${unit(paddingBlock)} 0`\n }\n }, genBasicInputStyle(token)), {\n // or number handler will cover form status\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n width: controlWidth,\n padding: 0,\n paddingInlineStart: paddingInline,\n '&-lg': {\n borderRadius: borderRadiusLG,\n paddingInlineStart: paddingInlineLG,\n [`input${componentCls}-input`]: {\n padding: `${unit(paddingBlockLG)} 0`\n }\n },\n '&-sm': {\n borderRadius: borderRadiusSM,\n paddingInlineStart: paddingInlineSM,\n [`input${componentCls}-input`]: {\n padding: `${unit(paddingBlockSM)} 0`\n }\n },\n [`&:not(${componentCls}-disabled):hover`]: {\n zIndex: 1\n },\n '&-focused, &:focus': {\n zIndex: 1\n },\n [`&-disabled > ${componentCls}-disabled`]: {\n background: 'transparent'\n },\n [`> div${componentCls}`]: {\n width: '100%',\n border: 'none',\n outline: 'none',\n [`&${componentCls}-focused`]: {\n boxShadow: 'none !important'\n }\n },\n '&::before': {\n display: 'inline-block',\n width: 0,\n visibility: 'hidden',\n content: '\"\\\\a0\"'\n },\n [`${componentCls}-handler-wrap`]: {\n zIndex: 2\n },\n [componentCls]: {\n position: 'static',\n color: 'inherit',\n '&-prefix, &-suffix': {\n display: 'flex',\n flex: 'none',\n alignItems: 'center',\n pointerEvents: 'none'\n },\n '&-prefix': {\n marginInlineEnd: inputAffixPadding\n },\n '&-suffix': {\n insetBlockStart: 0,\n insetInlineEnd: 0,\n height: '100%',\n marginInlineEnd: paddingInline,\n marginInlineStart: inputAffixPadding,\n transition: `margin ${motionDurationMid}`\n }\n },\n [`&:hover ${componentCls}-handler-wrap, &-focused ${componentCls}-handler-wrap`]: {\n width: token.handleWidth,\n opacity: 1\n },\n [`&:not(${componentCls}-affix-wrapper-without-controls):hover ${componentCls}-suffix`]: {\n marginInlineEnd: token.calc(token.handleWidth).add(paddingInline).equal()\n }\n })\n };\n};\nexport default genStyleHooks('InputNumber', token => {\n const inputNumberToken = mergeToken(token, initInputToken(token));\n return [genInputNumberStyles(inputNumberToken), genAffixWrapperStyles(inputNumberToken),\n // =====================================================\n // == Space Compact ==\n // =====================================================\n genCompactItemStyle(inputNumberToken)];\n}, prepareComponentToken, {\n unitless: {\n handleOpacity: true\n }\n});","\"use client\";\n\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 DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport UpOutlined from \"@ant-design/icons/es/icons/UpOutlined\";\nimport classNames from 'classnames';\nimport RcInputNumber from 'rc-input-number';\nimport ContextIsolator from '../_util/ContextIsolator';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport ConfigProvider, { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport useVariant from '../form/hooks/useVariants';\nimport { useCompactItemContext } from '../space/Compact';\nimport useStyle from './style';\nconst InputNumber = /*#__PURE__*/React.forwardRef((props, ref) => {\n if (process.env.NODE_ENV !== 'production') {\n const typeWarning = devUseWarning('InputNumber');\n typeWarning.deprecated(!('bordered' in props), 'bordered', 'variant');\n typeWarning(!(props.type === 'number' && props.changeOnWheel), 'usage', 'When `type=number` is used together with `changeOnWheel`, changeOnWheel may not work properly. Please delete `type=number` if it is not necessary.');\n }\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const inputRef = React.useRef(null);\n React.useImperativeHandle(ref, () => inputRef.current);\n const {\n className,\n rootClassName,\n size: customizeSize,\n disabled: customDisabled,\n prefixCls: customizePrefixCls,\n addonBefore,\n addonAfter,\n prefix,\n suffix,\n bordered,\n readOnly,\n status: customStatus,\n controls,\n variant: customVariant\n } = props,\n others = __rest(props, [\"className\", \"rootClassName\", \"size\", \"disabled\", \"prefixCls\", \"addonBefore\", \"addonAfter\", \"prefix\", \"suffix\", \"bordered\", \"readOnly\", \"status\", \"controls\", \"variant\"]);\n const prefixCls = getPrefixCls('input-number', customizePrefixCls);\n // Style\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n let upIcon = /*#__PURE__*/React.createElement(UpOutlined, {\n className: `${prefixCls}-handler-up-inner`\n });\n let downIcon = /*#__PURE__*/React.createElement(DownOutlined, {\n className: `${prefixCls}-handler-down-inner`\n });\n const controlsTemp = typeof controls === 'boolean' ? controls : undefined;\n if (typeof controls === 'object') {\n upIcon = typeof controls.upIcon === 'undefined' ? upIcon : (/*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-handler-up-inner`\n }, controls.upIcon));\n downIcon = typeof controls.downIcon === 'undefined' ? downIcon : (/*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-handler-down-inner`\n }, controls.downIcon));\n }\n const {\n hasFeedback,\n status: contextStatus,\n isFormItemInput,\n feedbackIcon\n } = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n const mergedSize = useSize(ctx => {\n var _a;\n return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n const [variant, enableVariantCls] = useVariant('inputNumber', customVariant, bordered);\n const suffixNode = hasFeedback && /*#__PURE__*/React.createElement(React.Fragment, null, feedbackIcon);\n const inputNumberClass = classNames({\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-in-form-item`]: isFormItemInput\n }, hashId);\n const wrapperClassName = `${prefixCls}-group`;\n const element = /*#__PURE__*/React.createElement(RcInputNumber, Object.assign({\n ref: inputRef,\n disabled: mergedDisabled,\n className: classNames(cssVarCls, rootCls, className, rootClassName, compactItemClassnames),\n upHandler: upIcon,\n downHandler: downIcon,\n prefixCls: prefixCls,\n readOnly: readOnly,\n controls: controlsTemp,\n prefix: prefix,\n suffix: suffixNode || suffix,\n addonBefore: addonBefore && (/*#__PURE__*/React.createElement(ContextIsolator, {\n form: true,\n space: true\n }, addonBefore)),\n addonAfter: addonAfter && (/*#__PURE__*/React.createElement(ContextIsolator, {\n form: true,\n space: true\n }, addonAfter)),\n classNames: {\n input: inputNumberClass,\n variant: classNames({\n [`${prefixCls}-${variant}`]: enableVariantCls\n }, getStatusClassNames(prefixCls, mergedStatus, hasFeedback)),\n affixWrapper: classNames({\n [`${prefixCls}-affix-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-affix-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-affix-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-affix-wrapper-without-controls`]: controls === false\n }, hashId),\n wrapper: classNames({\n [`${wrapperClassName}-rtl`]: direction === 'rtl'\n }, hashId),\n groupWrapper: classNames({\n [`${prefixCls}-group-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-group-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-group-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-group-wrapper-${variant}`]: enableVariantCls\n }, getStatusClassNames(`${prefixCls}-group-wrapper`, mergedStatus, hasFeedback), hashId)\n }\n }, others));\n return wrapCSSVar(element);\n});\nconst TypedInputNumber = InputNumber;\n/** @private Internal Component. Do not use in your production. */\nconst PureInputNumber = props => (/*#__PURE__*/React.createElement(ConfigProvider, {\n theme: {\n components: {\n InputNumber: {\n handleVisible: true\n }\n }\n }\n}, /*#__PURE__*/React.createElement(InputNumber, Object.assign({}, props))));\nif (process.env.NODE_ENV !== 'production') {\n TypedInputNumber.displayName = 'InputNumber';\n}\nTypedInputNumber._InternalPanelDoNotUseOrYouWillBeFired = PureInputNumber;\nexport default TypedInputNumber;","\"use client\";\n\nimport React, { useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport InputNumber from '../../input-number';\nconst ColorSteppers = _ref => {\n let {\n prefixCls,\n min = 0,\n max = 100,\n value,\n onChange,\n className,\n formatter\n } = _ref;\n const colorSteppersPrefixCls = `${prefixCls}-steppers`;\n const [stepValue, setStepValue] = useState(value);\n // Update step value\n useEffect(() => {\n if (!Number.isNaN(value)) {\n setStepValue(value);\n }\n }, [value]);\n return /*#__PURE__*/React.createElement(InputNumber, {\n className: classNames(colorSteppersPrefixCls, className),\n min: min,\n max: max,\n value: stepValue,\n formatter: formatter,\n size: \"small\",\n onChange: step => {\n if (!value) {\n setStepValue(step || 0);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(step);\n }\n });\n};\nexport default ColorSteppers;","\"use client\";\n\nimport React, { useEffect, useState } from 'react';\nimport { generateColor, getColorAlpha } from '../util';\nimport ColorSteppers from './ColorSteppers';\nconst ColorAlphaInput = _ref => {\n let {\n prefixCls,\n value,\n onChange\n } = _ref;\n const colorAlphaInputPrefixCls = `${prefixCls}-alpha-input`;\n const [alphaValue, setAlphaValue] = useState(generateColor(value || '#000'));\n // Update step value\n useEffect(() => {\n if (value) {\n setAlphaValue(value);\n }\n }, [value]);\n const handleAlphaChange = step => {\n const hsba = alphaValue.toHsb();\n hsba.a = (step || 0) / 100;\n const genColor = generateColor(hsba);\n if (!value) {\n setAlphaValue(genColor);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(genColor);\n };\n return /*#__PURE__*/React.createElement(ColorSteppers, {\n value: getColorAlpha(alphaValue),\n prefixCls: prefixCls,\n formatter: step => `${step}%`,\n className: colorAlphaInputPrefixCls,\n onChange: handleAlphaChange\n });\n};\nexport default ColorAlphaInput;","\"use client\";\n\nimport React from 'react';\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nconst getAllowClear = allowClear => {\n let mergedAllowClear;\n if (typeof allowClear === 'object' && (allowClear === null || allowClear === void 0 ? void 0 : allowClear.clearIcon)) {\n mergedAllowClear = allowClear;\n } else if (allowClear) {\n mergedAllowClear = {\n clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null)\n };\n }\n return mergedAllowClear;\n};\nexport default getAllowClear;","import { useEffect, useRef } from 'react';\nexport default function useRemovePasswordTimeout(inputRef, triggerOnMount) {\n const removePasswordTimeoutRef = useRef([]);\n const removePasswordTimeout = () => {\n removePasswordTimeoutRef.current.push(setTimeout(() => {\n var _a, _b, _c, _d;\n if (((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input) && ((_b = inputRef.current) === null || _b === void 0 ? void 0 : _b.input.getAttribute('type')) === 'password' && ((_c = inputRef.current) === null || _c === void 0 ? void 0 : _c.input.hasAttribute('value'))) {\n (_d = inputRef.current) === null || _d === void 0 ? void 0 : _d.input.removeAttribute('value');\n }\n }));\n };\n useEffect(() => {\n if (triggerOnMount) {\n removePasswordTimeout();\n }\n return () => removePasswordTimeoutRef.current.forEach(timer => {\n if (timer) {\n clearTimeout(timer);\n }\n });\n }, []);\n return removePasswordTimeout;\n}","\"use client\";\n\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 React, { forwardRef, useContext, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport RcInput from 'rc-input';\nimport { triggerFocus } from \"rc-input/es/utils/commonUtils\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport ContextIsolator from '../_util/ContextIsolator';\nimport getAllowClear from '../_util/getAllowClear';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport useVariant from '../form/hooks/useVariants';\nimport { useCompactItemContext } from '../space/Compact';\nimport useRemovePasswordTimeout from './hooks/useRemovePasswordTimeout';\nimport useStyle from './style';\nimport { hasPrefixSuffix } from './utils';\nexport { triggerFocus };\nconst Input = /*#__PURE__*/forwardRef((props, ref) => {\n var _a;\n const {\n prefixCls: customizePrefixCls,\n bordered = true,\n status: customStatus,\n size: customSize,\n disabled: customDisabled,\n onBlur,\n onFocus,\n suffix,\n allowClear,\n addonAfter,\n addonBefore,\n className,\n style,\n styles,\n rootClassName,\n onChange,\n classNames: classes,\n variant: customVariant\n } = props,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"status\", \"size\", \"disabled\", \"onBlur\", \"onFocus\", \"suffix\", \"allowClear\", \"addonAfter\", \"addonBefore\", \"className\", \"style\", \"styles\", \"rootClassName\", \"onChange\", \"classNames\", \"variant\"]);\n if (process.env.NODE_ENV !== 'production') {\n const {\n deprecated\n } = devUseWarning('Input');\n deprecated(!('bordered' in props), 'bordered', 'variant');\n }\n const {\n getPrefixCls,\n direction,\n input\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('input', customizePrefixCls);\n const inputRef = useRef(null);\n // Style\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n // ===================== Compact Item =====================\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n // ===================== Size =====================\n const mergedSize = useSize(ctx => {\n var _a;\n return (_a = customSize !== null && customSize !== void 0 ? customSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n feedbackIcon\n } = useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Focus warning =====================\n const inputHasPrefixSuffix = hasPrefixSuffix(props) || !!hasFeedback;\n const prevHasPrefixSuffix = useRef(inputHasPrefixSuffix);\n /* eslint-disable react-hooks/rules-of-hooks */\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Input');\n useEffect(() => {\n var _a;\n if (inputHasPrefixSuffix && !prevHasPrefixSuffix.current) {\n process.env.NODE_ENV !== \"production\" ? warning(document.activeElement === ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input), 'usage', `When Input is focused, dynamic add or remove prefix / suffix will make it lose focus caused by dom structure change. Read more: https://ant.design/components/input/#FAQ`) : void 0;\n }\n prevHasPrefixSuffix.current = inputHasPrefixSuffix;\n }, [inputHasPrefixSuffix]);\n }\n /* eslint-enable */\n // ===================== Remove Password value =====================\n const removePasswordTimeout = useRemovePasswordTimeout(inputRef, true);\n const handleBlur = e => {\n removePasswordTimeout();\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n const handleFocus = e => {\n removePasswordTimeout();\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n const handleChange = e => {\n removePasswordTimeout();\n onChange === null || onChange === void 0 ? void 0 : onChange(e);\n };\n const suffixNode = (hasFeedback || suffix) && (/*#__PURE__*/React.createElement(React.Fragment, null, suffix, hasFeedback && feedbackIcon));\n const mergedAllowClear = getAllowClear(allowClear !== null && allowClear !== void 0 ? allowClear : input === null || input === void 0 ? void 0 : input.allowClear);\n const [variant, enableVariantCls] = useVariant('input', customVariant, bordered);\n return wrapCSSVar(/*#__PURE__*/React.createElement(RcInput, Object.assign({\n ref: composeRef(ref, inputRef),\n prefixCls: prefixCls,\n autoComplete: input === null || input === void 0 ? void 0 : input.autoComplete\n }, rest, {\n disabled: mergedDisabled,\n onBlur: handleBlur,\n onFocus: handleFocus,\n style: Object.assign(Object.assign({}, input === null || input === void 0 ? void 0 : input.style), style),\n styles: Object.assign(Object.assign({}, input === null || input === void 0 ? void 0 : input.styles), styles),\n suffix: suffixNode,\n allowClear: mergedAllowClear,\n className: classNames(className, rootClassName, cssVarCls, rootCls, compactItemClassnames, input === null || input === void 0 ? void 0 : input.className),\n onChange: handleChange,\n addonBefore: addonBefore && (/*#__PURE__*/React.createElement(ContextIsolator, {\n form: true,\n space: true\n }, addonBefore)),\n addonAfter: addonAfter && (/*#__PURE__*/React.createElement(ContextIsolator, {\n form: true,\n space: true\n }, addonAfter)),\n classNames: Object.assign(Object.assign(Object.assign({}, classes), input === null || input === void 0 ? void 0 : input.classNames), {\n input: classNames({\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, classes === null || classes === void 0 ? void 0 : classes.input, (_a = input === null || input === void 0 ? void 0 : input.classNames) === null || _a === void 0 ? void 0 : _a.input, hashId),\n variant: classNames({\n [`${prefixCls}-${variant}`]: enableVariantCls\n }, getStatusClassNames(prefixCls, mergedStatus)),\n affixWrapper: classNames({\n [`${prefixCls}-affix-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-affix-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-affix-wrapper-rtl`]: direction === 'rtl'\n }, hashId),\n wrapper: classNames({\n [`${prefixCls}-group-rtl`]: direction === 'rtl'\n }, hashId),\n groupWrapper: classNames({\n [`${prefixCls}-group-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-group-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-group-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-group-wrapper-${variant}`]: enableVariantCls\n }, getStatusClassNames(`${prefixCls}-group-wrapper`, mergedStatus, hasFeedback), hashId)\n })\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Input.displayName = 'Input';\n}\nexport default Input;","export function hasPrefixSuffix(props) {\n return !!(props.prefix || props.suffix || props.allowClear || props.showCount);\n}","import { genStyleHooks, mergeToken } from '../../theme/internal';\nimport { initComponentToken, initInputToken } from './token';\n// =============================== OTP ================================\nconst genOTPStyle = token => {\n const {\n componentCls,\n paddingXS\n } = token;\n return {\n [componentCls]: {\n display: 'inline-flex',\n alignItems: 'center',\n flexWrap: 'nowrap',\n columnGap: paddingXS,\n '&-rtl': {\n direction: 'rtl'\n },\n [`${componentCls}-input`]: {\n textAlign: 'center',\n paddingInline: token.paddingXXS\n },\n // ================= Size =================\n [`&${componentCls}-sm ${componentCls}-input`]: {\n paddingInline: token.calc(token.paddingXXS).div(2).equal()\n },\n [`&${componentCls}-lg ${componentCls}-input`]: {\n paddingInline: token.paddingXS\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genStyleHooks(['Input', 'OTP'], token => {\n const inputToken = mergeToken(token, initInputToken(token));\n return [genOTPStyle(inputToken)];\n}, initComponentToken);","\"use client\";\n\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 raf from \"rc-util/es/raf\";\nimport Input from '../Input';\nconst OTPInput = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n value,\n onChange,\n onActiveChange,\n index,\n mask\n } = props,\n restProps = __rest(props, [\"value\", \"onChange\", \"onActiveChange\", \"index\", \"mask\"]);\n const internalValue = value && typeof mask === 'string' ? mask : value;\n const onInternalChange = e => {\n onChange(index, e.target.value);\n };\n // ========================== Ref ===========================\n const inputRef = React.useRef(null);\n React.useImperativeHandle(ref, () => inputRef.current);\n // ========================= Focus ==========================\n const syncSelection = () => {\n raf(() => {\n var _a;\n const inputEle = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input;\n if (document.activeElement === inputEle && inputEle) {\n inputEle.select();\n }\n });\n };\n // ======================== Keyboard ========================\n const onInternalKeyDown = event => {\n const {\n key,\n ctrlKey,\n metaKey\n } = event;\n if (key === 'ArrowLeft') {\n onActiveChange(index - 1);\n } else if (key === 'ArrowRight') {\n onActiveChange(index + 1);\n } else if (key === 'z' && (ctrlKey || metaKey)) {\n event.preventDefault();\n }\n syncSelection();\n };\n const onInternalKeyUp = e => {\n if (e.key === 'Backspace' && !value) {\n onActiveChange(index - 1);\n }\n syncSelection();\n };\n // ========================= Render =========================\n return /*#__PURE__*/React.createElement(Input, Object.assign({\n type: mask === true ? 'password' : 'text'\n }, restProps, {\n ref: inputRef,\n value: internalValue,\n onInput: onInternalChange,\n onFocus: syncSelection,\n onKeyDown: onInternalKeyDown,\n onKeyUp: onInternalKeyUp,\n onMouseDown: syncSelection,\n onMouseUp: syncSelection\n }));\n});\nexport default OTPInput;","\"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 classNames from 'classnames';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport { getMergedStatus } from '../../_util/statusUtils';\nimport { devUseWarning } from '../../_util/warning';\nimport { ConfigContext } from '../../config-provider';\nimport useCSSVarCls from '../../config-provider/hooks/useCSSVarCls';\nimport useSize from '../../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../../form/context';\nimport useStyle from '../style/otp';\nimport OTPInput from './OTPInput';\nfunction strToArr(str) {\n return (str || '').split('');\n}\nconst OTP = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n prefixCls: customizePrefixCls,\n length = 6,\n size: customSize,\n defaultValue,\n value,\n onChange,\n formatter,\n variant,\n disabled,\n status: customStatus,\n autoFocus,\n mask,\n type,\n onInput,\n inputMode\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"length\", \"size\", \"defaultValue\", \"value\", \"onChange\", \"formatter\", \"variant\", \"disabled\", \"status\", \"autoFocus\", \"mask\", \"type\", \"onInput\", \"inputMode\"]);\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Input.OTP');\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof mask === 'string' && mask.length > 1), 'usage', '`mask` prop should be a single character.') : void 0;\n }\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('otp', customizePrefixCls);\n const domAttrs = pickAttrs(restProps, {\n aria: true,\n data: true,\n attr: true\n });\n // ========================= Root =========================\n // Style\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n // ========================= Size =========================\n const mergedSize = useSize(ctx => customSize !== null && customSize !== void 0 ? customSize : ctx);\n // ======================== Status ========================\n const formContext = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(formContext.status, customStatus);\n const proxyFormContext = React.useMemo(() => Object.assign(Object.assign({}, formContext), {\n status: mergedStatus,\n hasFeedback: false,\n feedbackIcon: null\n }), [formContext, mergedStatus]);\n // ========================= Refs =========================\n const containerRef = React.useRef(null);\n const refs = React.useRef({});\n React.useImperativeHandle(ref, () => ({\n focus: () => {\n var _a;\n (_a = refs.current[0]) === null || _a === void 0 ? void 0 : _a.focus();\n },\n blur: () => {\n var _a;\n for (let i = 0; i < length; i += 1) {\n (_a = refs.current[i]) === null || _a === void 0 ? void 0 : _a.blur();\n }\n },\n nativeElement: containerRef.current\n }));\n // ======================= Formatter ======================\n const internalFormatter = txt => formatter ? formatter(txt) : txt;\n // ======================== Values ========================\n const [valueCells, setValueCells] = React.useState(strToArr(internalFormatter(defaultValue || '')));\n React.useEffect(() => {\n if (value !== undefined) {\n setValueCells(strToArr(value));\n }\n }, [value]);\n const triggerValueCellsChange = useEvent(nextValueCells => {\n setValueCells(nextValueCells);\n if (onInput) {\n onInput(nextValueCells);\n }\n // Trigger if all cells are filled\n if (onChange && nextValueCells.length === length && nextValueCells.every(c => c) && nextValueCells.some((c, index) => valueCells[index] !== c)) {\n onChange(nextValueCells.join(''));\n }\n });\n const patchValue = useEvent((index, txt) => {\n let nextCells = _toConsumableArray(valueCells);\n // Fill cells till index\n for (let i = 0; i < index; i += 1) {\n if (!nextCells[i]) {\n nextCells[i] = '';\n }\n }\n if (txt.length <= 1) {\n nextCells[index] = txt;\n } else {\n nextCells = nextCells.slice(0, index).concat(strToArr(txt));\n }\n nextCells = nextCells.slice(0, length);\n // Clean the last empty cell\n for (let i = nextCells.length - 1; i >= 0; i -= 1) {\n if (nextCells[i]) {\n break;\n }\n nextCells.pop();\n }\n // Format if needed\n const formattedValue = internalFormatter(nextCells.map(c => c || ' ').join(''));\n nextCells = strToArr(formattedValue).map((c, i) => {\n if (c === ' ' && !nextCells[i]) {\n return nextCells[i];\n }\n return c;\n });\n return nextCells;\n });\n // ======================== Change ========================\n const onInputChange = (index, txt) => {\n var _a;\n const nextCells = patchValue(index, txt);\n const nextIndex = Math.min(index + txt.length, length - 1);\n if (nextIndex !== index && nextCells[index] !== undefined) {\n (_a = refs.current[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();\n }\n triggerValueCellsChange(nextCells);\n };\n const onInputActiveChange = nextIndex => {\n var _a;\n (_a = refs.current[nextIndex]) === null || _a === void 0 ? void 0 : _a.focus();\n };\n // ======================== Render ========================\n const inputSharedProps = {\n variant,\n disabled,\n status: mergedStatus,\n mask,\n type,\n inputMode\n };\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"div\", Object.assign({}, domAttrs, {\n ref: containerRef,\n className: classNames(prefixCls, {\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, cssVarCls, hashId)\n }), /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {\n value: proxyFormContext\n }, Array.from({\n length\n }).map((_, index) => {\n const key = `otp-${index}`;\n const singleValue = valueCells[index] || '';\n return /*#__PURE__*/React.createElement(OTPInput, Object.assign({\n ref: inputEle => {\n refs.current[index] = inputEle;\n },\n key: key,\n index: index,\n size: mergedSize,\n htmlSize: 1,\n className: `${prefixCls}-input`,\n onChange: onInputChange,\n value: singleValue,\n onActiveChange: onInputActiveChange,\n autoFocus: index === 0 && autoFocus\n }, inputSharedProps));\n }))));\n});\nexport default OTP;","// This icon file is generated automatically.\nvar EyeInvisibleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z\" } }] }, \"name\": \"eye-invisible\", \"theme\": \"outlined\" };\nexport default EyeInvisibleOutlined;\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 EyeInvisibleOutlinedSvg from \"@ant-design/icons-svg/es/asn/EyeInvisibleOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar EyeInvisibleOutlined = function EyeInvisibleOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: EyeInvisibleOutlinedSvg\n }));\n};\n\n/**![eye-invisible](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTk0Mi4yIDQ4Ni4yUTg4OS40NyAzNzUuMTEgODE2LjcgMzA1bC01MC44OCA1MC44OEM4MDcuMzEgMzk1LjUzIDg0My40NSA0NDcuNCA4NzQuNyA1MTIgNzkxLjUgNjg0LjIgNjczLjQgNzY2IDUxMiA3NjZxLTcyLjY3IDAtMTMzLjg3LTIyLjM4TDMyMyA3OTguNzVRNDA4IDgzOCA1MTIgODM4cTI4OC4zIDAgNDMwLjItMzAwLjNhNjAuMjkgNjAuMjkgMCAwMDAtNTEuNXptLTYzLjU3LTMyMC42NEw4MzYgMTIyLjg4YTggOCAwIDAwLTExLjMyIDBMNzE1LjMxIDIzMi4yUTYyNC44NiAxODYgNTEyIDE4NnEtMjg4LjMgMC00MzAuMiAzMDAuM2E2MC4zIDYwLjMgMCAwMDAgNTEuNXE1Ni42OSAxMTkuNCAxMzYuNSAxOTEuNDFMMTEyLjQ4IDgzNWE4IDggMCAwMDAgMTEuMzFMMTU1LjE3IDg4OWE4IDggMCAwMDExLjMxIDBsNzEyLjE1LTcxMi4xMmE4IDggMCAwMDAtMTEuMzJ6TTE0OS4zIDUxMkMyMzIuNiAzMzkuOCAzNTAuNyAyNTggNTEyIDI1OGM1NC41NCAwIDEwNC4xMyA5LjM2IDE0OS4xMiAyOC4zOWwtNzAuMyA3MC4zYTE3NiAxNzYgMCAwMC0yMzguMTMgMjM4LjEzbC04My40MiA4My40MkMyMjMuMSA2MzcuNDkgMTgzLjMgNTgyLjI4IDE0OS4zIDUxMnptMjQ2LjcgMGExMTIuMTEgMTEyLjExIDAgMDExNDYuMi0xMDYuNjlMNDAxLjMxIDU0Ni4yQTExMiAxMTIgMCAwMTM5NiA1MTJ6IiAvPjxwYXRoIGQ9Ik01MDggNjI0Yy0zLjQ2IDAtNi44Ny0uMTYtMTAuMjUtLjQ3bC01Mi44MiA1Mi44MmExNzYuMDkgMTc2LjA5IDAgMDAyMjcuNDItMjI3LjQybC01Mi44MiA1Mi44MmMuMzEgMy4zOC40NyA2Ljc5LjQ3IDEwLjI1YTExMS45NCAxMTEuOTQgMCAwMS0xMTIgMTEyeiIgLz48L3N2Zz4=) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(EyeInvisibleOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'EyeInvisibleOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar EyeOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z\" } }] }, \"name\": \"eye\", \"theme\": \"outlined\" };\nexport default EyeOutlined;\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 EyeOutlinedSvg from \"@ant-design/icons-svg/es/asn/EyeOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar EyeOutlined = function EyeOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: EyeOutlinedSvg\n }));\n};\n\n/**![eye](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTk0Mi4yIDQ4Ni4yQzg0Ny40IDI4Ni41IDcwNC4xIDE4NiA1MTIgMTg2Yy0xOTIuMiAwLTMzNS40IDEwMC41LTQzMC4yIDMwMC4zYTYwLjMgNjAuMyAwIDAwMCA1MS41QzE3Ni42IDczNy41IDMxOS45IDgzOCA1MTIgODM4YzE5Mi4yIDAgMzM1LjQtMTAwLjUgNDMwLjItMzAwLjMgNy43LTE2LjIgNy43LTM1IDAtNTEuNXpNNTEyIDc2NmMtMTYxLjMgMC0yNzkuNC04MS44LTM2Mi43LTI1NEMyMzIuNiAzMzkuOCAzNTAuNyAyNTggNTEyIDI1OGMxNjEuMyAwIDI3OS40IDgxLjggMzYyLjcgMjU0Qzc5MS41IDY4NC4yIDY3My40IDc2NiA1MTIgNzY2em0tNC00MzBjLTk3LjIgMC0xNzYgNzguOC0xNzYgMTc2czc4LjggMTc2IDE3NiAxNzYgMTc2LTc4LjggMTc2LTE3Ni03OC44LTE3Ni0xNzYtMTc2em0wIDI4OGMtNjEuOSAwLTExMi01MC4xLTExMi0xMTJzNTAuMS0xMTIgMTEyLTExMiAxMTIgNTAuMSAxMTIgMTEyLTUwLjEgMTEyLTExMiAxMTJ6IiAvPjwvc3ZnPg==) */\nvar RefIcon = /*#__PURE__*/React.forwardRef(EyeOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'EyeOutlined';\n}\nexport default RefIcon;","\"use client\";\n\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 { useRef, useState } from 'react';\nimport EyeInvisibleOutlined from \"@ant-design/icons/es/icons/EyeInvisibleOutlined\";\nimport EyeOutlined from \"@ant-design/icons/es/icons/EyeOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useRemovePasswordTimeout from './hooks/useRemovePasswordTimeout';\nimport Input from './Input';\nconst defaultIconRender = visible => visible ? /*#__PURE__*/React.createElement(EyeOutlined, null) : /*#__PURE__*/React.createElement(EyeInvisibleOutlined, null);\nconst actionMap = {\n click: 'onClick',\n hover: 'onMouseOver'\n};\nconst Password = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n disabled: customDisabled,\n action = 'click',\n visibilityToggle = true,\n iconRender = defaultIconRender\n } = props;\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n const visibilityControlled = typeof visibilityToggle === 'object' && visibilityToggle.visible !== undefined;\n const [visible, setVisible] = useState(() => visibilityControlled ? visibilityToggle.visible : false);\n const inputRef = useRef(null);\n React.useEffect(() => {\n if (visibilityControlled) {\n setVisible(visibilityToggle.visible);\n }\n }, [visibilityControlled, visibilityToggle]);\n // Remove Password value\n const removePasswordTimeout = useRemovePasswordTimeout(inputRef);\n const onVisibleChange = () => {\n var _a;\n if (mergedDisabled) {\n return;\n }\n if (visible) {\n removePasswordTimeout();\n }\n const nextVisible = !visible;\n setVisible(nextVisible);\n if (typeof visibilityToggle === 'object') {\n (_a = visibilityToggle.onVisibleChange) === null || _a === void 0 ? void 0 : _a.call(visibilityToggle, nextVisible);\n }\n };\n const getIcon = prefixCls => {\n const iconTrigger = actionMap[action] || '';\n const icon = iconRender(visible);\n const iconProps = {\n [iconTrigger]: onVisibleChange,\n className: `${prefixCls}-icon`,\n key: 'passwordIcon',\n onMouseDown: e => {\n // Prevent focused state lost\n // https://github.com/ant-design/ant-design/issues/15173\n e.preventDefault();\n },\n onMouseUp: e => {\n // Prevent caret position change\n // https://github.com/ant-design/ant-design/issues/23524\n e.preventDefault();\n }\n };\n return /*#__PURE__*/React.cloneElement(/*#__PURE__*/React.isValidElement(icon) ? icon : /*#__PURE__*/React.createElement(\"span\", null, icon), iconProps);\n };\n const {\n className,\n prefixCls: customizePrefixCls,\n inputPrefixCls: customizeInputPrefixCls,\n size\n } = props,\n restProps = __rest(props, [\"className\", \"prefixCls\", \"inputPrefixCls\", \"size\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n const prefixCls = getPrefixCls('input-password', customizePrefixCls);\n const suffixIcon = visibilityToggle && getIcon(prefixCls);\n const inputClassName = classNames(prefixCls, className, {\n [`${prefixCls}-${size}`]: !!size\n });\n const omittedProps = Object.assign(Object.assign({}, omit(restProps, ['suffix', 'iconRender', 'visibilityToggle'])), {\n type: visible ? 'text' : 'password',\n className: inputClassName,\n prefixCls: inputPrefixCls,\n suffix: suffixIcon\n });\n if (size) {\n omittedProps.size = size;\n }\n return /*#__PURE__*/React.createElement(Input, Object.assign({\n ref: composeRef(ref, inputRef)\n }, omittedProps));\n});\nif (process.env.NODE_ENV !== 'production') {\n Password.displayName = 'Input.Password';\n}\nexport default Password;","\"use client\";\n\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 SearchOutlined from \"@ant-design/icons/es/icons/SearchOutlined\";\nimport classNames from 'classnames';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { cloneElement } from '../_util/reactNode';\nimport Button from '../button';\nimport { ConfigContext } from '../config-provider';\nimport useSize from '../config-provider/hooks/useSize';\nimport { useCompactItemContext } from '../space/Compact';\nimport Input from './Input';\nconst Search = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n prefixCls: customizePrefixCls,\n inputPrefixCls: customizeInputPrefixCls,\n className,\n size: customizeSize,\n suffix,\n enterButton = false,\n addonAfter,\n loading,\n disabled,\n onSearch: customOnSearch,\n onChange: customOnChange,\n onCompositionStart,\n onCompositionEnd\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"inputPrefixCls\", \"className\", \"size\", \"suffix\", \"enterButton\", \"addonAfter\", \"loading\", \"disabled\", \"onSearch\", \"onChange\", \"onCompositionStart\", \"onCompositionEnd\"]);\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const composedRef = React.useRef(false);\n const prefixCls = getPrefixCls('input-search', customizePrefixCls);\n const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n const {\n compactSize\n } = useCompactItemContext(prefixCls, direction);\n const size = useSize(ctx => {\n var _a;\n return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n const inputRef = React.useRef(null);\n const onChange = e => {\n if ((e === null || e === void 0 ? void 0 : e.target) && e.type === 'click' && customOnSearch) {\n customOnSearch(e.target.value, e, {\n source: 'clear'\n });\n }\n customOnChange === null || customOnChange === void 0 ? void 0 : customOnChange(e);\n };\n const onMouseDown = e => {\n var _a;\n if (document.activeElement === ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input)) {\n e.preventDefault();\n }\n };\n const onSearch = e => {\n var _a, _b;\n if (customOnSearch) {\n customOnSearch((_b = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input) === null || _b === void 0 ? void 0 : _b.value, e, {\n source: 'input'\n });\n }\n };\n const onPressEnter = e => {\n if (composedRef.current || loading) {\n return;\n }\n onSearch(e);\n };\n const searchIcon = typeof enterButton === 'boolean' ? /*#__PURE__*/React.createElement(SearchOutlined, null) : null;\n const btnClassName = `${prefixCls}-button`;\n let button;\n const enterButtonAsElement = enterButton || {};\n const isAntdButton = enterButtonAsElement.type && enterButtonAsElement.type.__ANT_BUTTON === true;\n if (isAntdButton || enterButtonAsElement.type === 'button') {\n button = cloneElement(enterButtonAsElement, Object.assign({\n onMouseDown,\n onClick: e => {\n var _a, _b;\n (_b = (_a = enterButtonAsElement === null || enterButtonAsElement === void 0 ? void 0 : enterButtonAsElement.props) === null || _a === void 0 ? void 0 : _a.onClick) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n onSearch(e);\n },\n key: 'enterButton'\n }, isAntdButton ? {\n className: btnClassName,\n size\n } : {}));\n } else {\n button = /*#__PURE__*/React.createElement(Button, {\n className: btnClassName,\n type: enterButton ? 'primary' : undefined,\n size: size,\n disabled: disabled,\n key: \"enterButton\",\n onMouseDown: onMouseDown,\n onClick: onSearch,\n loading: loading,\n icon: searchIcon\n }, enterButton);\n }\n if (addonAfter) {\n button = [button, cloneElement(addonAfter, {\n key: 'addonAfter'\n })];\n }\n const cls = classNames(prefixCls, {\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-${size}`]: !!size,\n [`${prefixCls}-with-button`]: !!enterButton\n }, className);\n const newProps = Object.assign(Object.assign({}, restProps), {\n className: cls,\n prefixCls: inputPrefixCls,\n type: 'search'\n });\n const handleOnCompositionStart = e => {\n composedRef.current = true;\n onCompositionStart === null || onCompositionStart === void 0 ? void 0 : onCompositionStart(e);\n };\n const handleOnCompositionEnd = e => {\n composedRef.current = false;\n onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e);\n };\n return /*#__PURE__*/React.createElement(Input, Object.assign({\n ref: composeRef(inputRef, ref),\n onPressEnter: onPressEnter\n }, newProps, {\n size: size,\n onCompositionStart: handleOnCompositionStart,\n onCompositionEnd: handleOnCompositionEnd,\n addonAfter: button,\n suffix: suffix,\n onChange: onChange,\n disabled: disabled\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n Search.displayName = 'Search';\n}\nexport default Search;","// Thanks to https://github.com/andreypopp/react-textarea-autosize/\n\n/**\n * calculateNodeHeight(uiTextNode, useCache = false)\n */\n\nvar HIDDEN_TEXTAREA_STYLE = \"\\n min-height:0 !important;\\n max-height:none !important;\\n height:0 !important;\\n visibility:hidden !important;\\n overflow:hidden !important;\\n position:absolute !important;\\n z-index:-1000 !important;\\n top:0 !important;\\n right:0 !important;\\n pointer-events: none !important;\\n\";\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'padding-top', 'padding-bottom', 'font-family', 'font-weight', 'font-size', 'font-variant', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-left', 'padding-right', 'border-width', 'box-sizing', 'word-break', 'white-space'];\nvar computedStyleCache = {};\nvar hiddenTextarea;\nexport function calculateNodeStyling(node) {\n var useCache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var nodeRef = node.getAttribute('id') || node.getAttribute('data-reactid') || node.getAttribute('name');\n if (useCache && computedStyleCache[nodeRef]) {\n return computedStyleCache[nodeRef];\n }\n var style = window.getComputedStyle(node);\n var boxSizing = style.getPropertyValue('box-sizing') || style.getPropertyValue('-moz-box-sizing') || style.getPropertyValue('-webkit-box-sizing');\n var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));\n var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));\n var sizingStyle = SIZING_STYLE.map(function (name) {\n return \"\".concat(name, \":\").concat(style.getPropertyValue(name));\n }).join(';');\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n if (useCache && nodeRef) {\n computedStyleCache[nodeRef] = nodeInfo;\n }\n return nodeInfo;\n}\nexport default function calculateAutoSizeStyle(uiTextNode) {\n var useCache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var minRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var maxRows = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement('textarea');\n hiddenTextarea.setAttribute('tab-index', '-1');\n hiddenTextarea.setAttribute('aria-hidden', 'true');\n // fix: A form field element should have an id or name attribute\n // A form field element has neither an id nor a name attribute. This might prevent the browser from correctly autofilling the form.\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea\n hiddenTextarea.setAttribute('name', 'hiddenTextarea');\n document.body.appendChild(hiddenTextarea);\n }\n\n // Fix wrap=\"off\" issue\n // https://github.com/ant-design/ant-design/issues/6577\n if (uiTextNode.getAttribute('wrap')) {\n hiddenTextarea.setAttribute('wrap', uiTextNode.getAttribute('wrap'));\n } else {\n hiddenTextarea.removeAttribute('wrap');\n }\n\n // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n var _calculateNodeStyling = calculateNodeStyling(uiTextNode, useCache),\n paddingSize = _calculateNodeStyling.paddingSize,\n borderSize = _calculateNodeStyling.borderSize,\n boxSizing = _calculateNodeStyling.boxSizing,\n sizingStyle = _calculateNodeStyling.sizingStyle;\n\n // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n hiddenTextarea.setAttribute('style', \"\".concat(sizingStyle, \";\").concat(HIDDEN_TEXTAREA_STYLE));\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || '';\n var minHeight = undefined;\n var maxHeight = undefined;\n var overflowY;\n var height = hiddenTextarea.scrollHeight;\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height += borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height -= paddingSize;\n }\n if (minRows !== null || maxRows !== null) {\n // measure height of a textarea with a single row\n hiddenTextarea.value = ' ';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n overflowY = height > maxHeight ? '' : 'hidden';\n height = Math.min(maxHeight, height);\n }\n }\n var style = {\n height: height,\n overflowY: overflowY,\n resize: 'none'\n };\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n return style;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"defaultValue\", \"value\", \"autoSize\", \"onResize\", \"className\", \"style\", \"disabled\", \"onChange\", \"onInternalAutoSize\"];\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nimport calculateAutoSizeStyle from \"./calculateNodeHeight\";\nvar RESIZE_START = 0;\nvar RESIZE_MEASURING = 1;\nvar RESIZE_STABLE = 2;\nvar ResizableTextArea = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _ref = props,\n prefixCls = _ref.prefixCls,\n defaultValue = _ref.defaultValue,\n value = _ref.value,\n autoSize = _ref.autoSize,\n onResize = _ref.onResize,\n className = _ref.className,\n style = _ref.style,\n disabled = _ref.disabled,\n onChange = _ref.onChange,\n onInternalAutoSize = _ref.onInternalAutoSize,\n restProps = _objectWithoutProperties(_ref, _excluded);\n\n // =============================== Value ================================\n var _useMergedState = useMergedState(defaultValue, {\n value: value,\n postState: function postState(val) {\n return val !== null && val !== void 0 ? val : '';\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedValue = _useMergedState2[0],\n setMergedValue = _useMergedState2[1];\n var onInternalChange = function onInternalChange(event) {\n setMergedValue(event.target.value);\n onChange === null || onChange === void 0 || onChange(event);\n };\n\n // ================================ Ref =================================\n var textareaRef = React.useRef();\n React.useImperativeHandle(ref, function () {\n return {\n textArea: textareaRef.current\n };\n });\n\n // ============================== AutoSize ==============================\n var _React$useMemo = React.useMemo(function () {\n if (autoSize && _typeof(autoSize) === 'object') {\n return [autoSize.minRows, autoSize.maxRows];\n }\n return [];\n }, [autoSize]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n minRows = _React$useMemo2[0],\n maxRows = _React$useMemo2[1];\n var needAutoSize = !!autoSize;\n\n // =============================== Scroll ===============================\n // https://github.com/ant-design/ant-design/issues/21870\n var fixFirefoxAutoScroll = function fixFirefoxAutoScroll() {\n try {\n // FF has bug with jump of scroll to top. We force back here.\n if (document.activeElement === textareaRef.current) {\n var _textareaRef$current = textareaRef.current,\n selectionStart = _textareaRef$current.selectionStart,\n selectionEnd = _textareaRef$current.selectionEnd,\n scrollTop = _textareaRef$current.scrollTop;\n\n // Fix Safari bug which not rollback when break line\n // This makes Chinese IME can't input. Do not fix this\n // const { value: tmpValue } = textareaRef.current;\n // textareaRef.current.value = '';\n // textareaRef.current.value = tmpValue;\n\n textareaRef.current.setSelectionRange(selectionStart, selectionEnd);\n textareaRef.current.scrollTop = scrollTop;\n }\n } catch (e) {\n // Fix error in Chrome:\n // Failed to read the 'selectionStart' property from 'HTMLInputElement'\n // http://stackoverflow.com/q/21177489/3040605\n }\n };\n\n // =============================== Resize ===============================\n var _React$useState = React.useState(RESIZE_STABLE),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n resizeState = _React$useState2[0],\n setResizeState = _React$useState2[1];\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n autoSizeStyle = _React$useState4[0],\n setAutoSizeStyle = _React$useState4[1];\n var startResize = function startResize() {\n setResizeState(RESIZE_START);\n if (process.env.NODE_ENV === 'test') {\n onInternalAutoSize === null || onInternalAutoSize === void 0 || onInternalAutoSize();\n }\n };\n\n // Change to trigger resize measure\n useLayoutEffect(function () {\n if (needAutoSize) {\n startResize();\n }\n }, [value, minRows, maxRows, needAutoSize]);\n useLayoutEffect(function () {\n if (resizeState === RESIZE_START) {\n setResizeState(RESIZE_MEASURING);\n } else if (resizeState === RESIZE_MEASURING) {\n var textareaStyles = calculateAutoSizeStyle(textareaRef.current, false, minRows, maxRows);\n\n // Safari has bug that text will keep break line on text cut when it's prev is break line.\n // ZombieJ: This not often happen. So we just skip it.\n // const { selectionStart, selectionEnd, scrollTop } = textareaRef.current;\n // const { value: tmpValue } = textareaRef.current;\n // textareaRef.current.value = '';\n // textareaRef.current.value = tmpValue;\n\n // if (document.activeElement === textareaRef.current) {\n // textareaRef.current.scrollTop = scrollTop;\n // textareaRef.current.setSelectionRange(selectionStart, selectionEnd);\n // }\n\n setResizeState(RESIZE_STABLE);\n setAutoSizeStyle(textareaStyles);\n } else {\n fixFirefoxAutoScroll();\n }\n }, [resizeState]);\n\n // We lock resize trigger by raf to avoid Safari warning\n var resizeRafRef = React.useRef();\n var cleanRaf = function cleanRaf() {\n raf.cancel(resizeRafRef.current);\n };\n var onInternalResize = function onInternalResize(size) {\n if (resizeState === RESIZE_STABLE) {\n onResize === null || onResize === void 0 || onResize(size);\n if (autoSize) {\n cleanRaf();\n resizeRafRef.current = raf(function () {\n startResize();\n });\n }\n }\n };\n React.useEffect(function () {\n return cleanRaf;\n }, []);\n\n // =============================== Render ===============================\n var mergedAutoSizeStyle = needAutoSize ? autoSizeStyle : null;\n var mergedStyle = _objectSpread(_objectSpread({}, style), mergedAutoSizeStyle);\n if (resizeState === RESIZE_START || resizeState === RESIZE_MEASURING) {\n mergedStyle.overflowY = 'hidden';\n mergedStyle.overflowX = 'hidden';\n }\n return /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onInternalResize,\n disabled: !(autoSize || onResize)\n }, /*#__PURE__*/React.createElement(\"textarea\", _extends({}, restProps, {\n ref: textareaRef,\n style: mergedStyle,\n className: classNames(prefixCls, className, _defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled)),\n disabled: disabled,\n value: mergedValue,\n onChange: onInternalChange\n })));\n});\nexport default ResizableTextArea;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"defaultValue\", \"value\", \"onFocus\", \"onBlur\", \"onChange\", \"allowClear\", \"maxLength\", \"onCompositionStart\", \"onCompositionEnd\", \"suffix\", \"prefixCls\", \"showCount\", \"count\", \"className\", \"style\", \"disabled\", \"hidden\", \"classNames\", \"styles\", \"onResize\", \"onClear\", \"onPressEnter\", \"readOnly\", \"autoSize\", \"onKeyDown\"];\nimport clsx from 'classnames';\nimport { BaseInput } from 'rc-input';\nimport useCount from \"rc-input/es/hooks/useCount\";\nimport { resolveOnChange } from \"rc-input/es/utils/commonUtils\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport React, { useEffect, useImperativeHandle, useRef } from 'react';\nimport ResizableTextArea from \"./ResizableTextArea\";\nvar TextArea = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var _countConfig$max;\n var defaultValue = _ref.defaultValue,\n customValue = _ref.value,\n onFocus = _ref.onFocus,\n onBlur = _ref.onBlur,\n onChange = _ref.onChange,\n allowClear = _ref.allowClear,\n maxLength = _ref.maxLength,\n onCompositionStart = _ref.onCompositionStart,\n onCompositionEnd = _ref.onCompositionEnd,\n suffix = _ref.suffix,\n _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-textarea' : _ref$prefixCls,\n showCount = _ref.showCount,\n count = _ref.count,\n className = _ref.className,\n style = _ref.style,\n disabled = _ref.disabled,\n hidden = _ref.hidden,\n classNames = _ref.classNames,\n styles = _ref.styles,\n onResize = _ref.onResize,\n onClear = _ref.onClear,\n onPressEnter = _ref.onPressEnter,\n readOnly = _ref.readOnly,\n autoSize = _ref.autoSize,\n onKeyDown = _ref.onKeyDown,\n rest = _objectWithoutProperties(_ref, _excluded);\n var _useMergedState = useMergedState(defaultValue, {\n value: customValue,\n defaultValue: defaultValue\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n value = _useMergedState2[0],\n setValue = _useMergedState2[1];\n var formatValue = value === undefined || value === null ? '' : String(value);\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n focused = _React$useState2[0],\n setFocused = _React$useState2[1];\n var compositionRef = React.useRef(false);\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n textareaResized = _React$useState4[0],\n setTextareaResized = _React$useState4[1];\n\n // =============================== Ref ================================\n var holderRef = useRef(null);\n var resizableTextAreaRef = useRef(null);\n var getTextArea = function getTextArea() {\n var _resizableTextAreaRef;\n return (_resizableTextAreaRef = resizableTextAreaRef.current) === null || _resizableTextAreaRef === void 0 ? void 0 : _resizableTextAreaRef.textArea;\n };\n var focus = function focus() {\n getTextArea().focus();\n };\n useImperativeHandle(ref, function () {\n var _holderRef$current;\n return {\n resizableTextArea: resizableTextAreaRef.current,\n focus: focus,\n blur: function blur() {\n getTextArea().blur();\n },\n nativeElement: ((_holderRef$current = holderRef.current) === null || _holderRef$current === void 0 ? void 0 : _holderRef$current.nativeElement) || getTextArea()\n };\n });\n useEffect(function () {\n setFocused(function (prev) {\n return !disabled && prev;\n });\n }, [disabled]);\n\n // =========================== Select Range ===========================\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n selection = _React$useState6[0],\n setSelection = _React$useState6[1];\n React.useEffect(function () {\n if (selection) {\n var _getTextArea;\n (_getTextArea = getTextArea()).setSelectionRange.apply(_getTextArea, _toConsumableArray(selection));\n }\n }, [selection]);\n\n // ============================== Count ===============================\n var countConfig = useCount(count, showCount);\n var mergedMax = (_countConfig$max = countConfig.max) !== null && _countConfig$max !== void 0 ? _countConfig$max : maxLength;\n\n // Max length value\n var hasMaxLength = Number(mergedMax) > 0;\n var valueLength = countConfig.strategy(formatValue);\n var isOutOfRange = !!mergedMax && valueLength > mergedMax;\n\n // ============================== Change ==============================\n var triggerChange = function triggerChange(e, currentValue) {\n var cutValue = currentValue;\n if (!compositionRef.current && countConfig.exceedFormatter && countConfig.max && countConfig.strategy(currentValue) > countConfig.max) {\n cutValue = countConfig.exceedFormatter(currentValue, {\n max: countConfig.max\n });\n if (currentValue !== cutValue) {\n setSelection([getTextArea().selectionStart || 0, getTextArea().selectionEnd || 0]);\n }\n }\n setValue(cutValue);\n resolveOnChange(e.currentTarget, e, onChange, cutValue);\n };\n\n // =========================== Value Update ===========================\n var onInternalCompositionStart = function onInternalCompositionStart(e) {\n compositionRef.current = true;\n onCompositionStart === null || onCompositionStart === void 0 || onCompositionStart(e);\n };\n var onInternalCompositionEnd = function onInternalCompositionEnd(e) {\n compositionRef.current = false;\n triggerChange(e, e.currentTarget.value);\n onCompositionEnd === null || onCompositionEnd === void 0 || onCompositionEnd(e);\n };\n var onInternalChange = function onInternalChange(e) {\n triggerChange(e, e.target.value);\n };\n var handleKeyDown = function handleKeyDown(e) {\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n onKeyDown === null || onKeyDown === void 0 || onKeyDown(e);\n };\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 || onFocus(e);\n };\n var handleBlur = function handleBlur(e) {\n setFocused(false);\n onBlur === null || onBlur === void 0 || onBlur(e);\n };\n\n // ============================== Reset ===============================\n var handleReset = function handleReset(e) {\n setValue('');\n focus();\n resolveOnChange(getTextArea(), e, onChange);\n };\n var suffixNode = suffix;\n var dataCount;\n if (countConfig.show) {\n if (countConfig.showFormatter) {\n dataCount = countConfig.showFormatter({\n value: formatValue,\n count: valueLength,\n maxLength: mergedMax\n });\n } else {\n dataCount = \"\".concat(valueLength).concat(hasMaxLength ? \" / \".concat(mergedMax) : '');\n }\n suffixNode = /*#__PURE__*/React.createElement(React.Fragment, null, suffixNode, /*#__PURE__*/React.createElement(\"span\", {\n className: clsx(\"\".concat(prefixCls, \"-data-count\"), classNames === null || classNames === void 0 ? void 0 : classNames.count),\n style: styles === null || styles === void 0 ? void 0 : styles.count\n }, dataCount));\n }\n var handleResize = function handleResize(size) {\n var _getTextArea2;\n onResize === null || onResize === void 0 || onResize(size);\n if ((_getTextArea2 = getTextArea()) !== null && _getTextArea2 !== void 0 && _getTextArea2.style.height) {\n setTextareaResized(true);\n }\n };\n var isPureTextArea = !autoSize && !showCount && !allowClear;\n return /*#__PURE__*/React.createElement(BaseInput, {\n ref: holderRef,\n value: formatValue,\n allowClear: allowClear,\n handleReset: handleReset,\n suffix: suffixNode,\n prefixCls: prefixCls,\n classNames: _objectSpread(_objectSpread({}, classNames), {}, {\n affixWrapper: clsx(classNames === null || classNames === void 0 ? void 0 : classNames.affixWrapper, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-show-count\"), showCount), \"\".concat(prefixCls, \"-textarea-allow-clear\"), allowClear))\n }),\n disabled: disabled,\n focused: focused,\n className: clsx(className, isOutOfRange && \"\".concat(prefixCls, \"-out-of-range\")),\n style: _objectSpread(_objectSpread({}, style), textareaResized && !isPureTextArea ? {\n height: 'auto'\n } : {}),\n dataAttrs: {\n affixWrapper: {\n 'data-count': typeof dataCount === 'string' ? dataCount : undefined\n }\n },\n hidden: hidden,\n readOnly: readOnly,\n onClear: onClear\n }, /*#__PURE__*/React.createElement(ResizableTextArea, _extends({}, rest, {\n autoSize: autoSize,\n maxLength: maxLength,\n onKeyDown: handleKeyDown,\n onChange: onInternalChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onCompositionStart: onInternalCompositionStart,\n onCompositionEnd: onInternalCompositionEnd,\n className: clsx(classNames === null || classNames === void 0 ? void 0 : classNames.textarea),\n style: _objectSpread(_objectSpread({}, styles === null || styles === void 0 ? void 0 : styles.textarea), {}, {\n resize: style === null || style === void 0 ? void 0 : style.resize\n }),\n disabled: disabled,\n prefixCls: prefixCls,\n onResize: handleResize,\n ref: resizableTextAreaRef,\n readOnly: readOnly\n })));\n});\nexport default TextArea;","import TextArea from \"./TextArea\";\nexport { default as ResizableTextArea } from \"./ResizableTextArea\";\nexport default TextArea;","\"use client\";\n\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 { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport RcTextArea from 'rc-textarea';\nimport getAllowClear from '../_util/getAllowClear';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport useVariant from '../form/hooks/useVariants';\nimport { triggerFocus } from './Input';\nimport useStyle from './style';\nconst TextArea = /*#__PURE__*/forwardRef((props, ref) => {\n var _a, _b;\n const {\n prefixCls: customizePrefixCls,\n bordered = true,\n size: customizeSize,\n disabled: customDisabled,\n status: customStatus,\n allowClear,\n classNames: classes,\n rootClassName,\n className,\n style,\n styles,\n variant: customVariant\n } = props,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"size\", \"disabled\", \"status\", \"allowClear\", \"classNames\", \"rootClassName\", \"className\", \"style\", \"styles\", \"variant\"]);\n if (process.env.NODE_ENV !== 'production') {\n const {\n deprecated\n } = devUseWarning('TextArea');\n deprecated(!('bordered' in props), 'bordered', 'variant');\n }\n const {\n getPrefixCls,\n direction,\n textArea\n } = React.useContext(ConfigContext);\n // ===================== Size =====================\n const mergedSize = useSize(customizeSize);\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n feedbackIcon\n } = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Ref =====================\n const innerRef = React.useRef(null);\n React.useImperativeHandle(ref, () => {\n var _a;\n return {\n resizableTextArea: (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.resizableTextArea,\n focus: option => {\n var _a, _b;\n triggerFocus((_b = (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.resizableTextArea) === null || _b === void 0 ? void 0 : _b.textArea, option);\n },\n blur: () => {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n }\n };\n });\n const prefixCls = getPrefixCls('input', customizePrefixCls);\n // ===================== Style =====================\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const [variant, enableVariantCls] = useVariant('textArea', customVariant, bordered);\n const mergedAllowClear = getAllowClear(allowClear !== null && allowClear !== void 0 ? allowClear : textArea === null || textArea === void 0 ? void 0 : textArea.allowClear);\n return wrapCSSVar(/*#__PURE__*/React.createElement(RcTextArea, Object.assign({\n autoComplete: textArea === null || textArea === void 0 ? void 0 : textArea.autoComplete\n }, rest, {\n style: Object.assign(Object.assign({}, textArea === null || textArea === void 0 ? void 0 : textArea.style), style),\n styles: Object.assign(Object.assign({}, textArea === null || textArea === void 0 ? void 0 : textArea.styles), styles),\n disabled: mergedDisabled,\n allowClear: mergedAllowClear,\n className: classNames(cssVarCls, rootCls, className, rootClassName, textArea === null || textArea === void 0 ? void 0 : textArea.className),\n classNames: Object.assign(Object.assign(Object.assign({}, classes), textArea === null || textArea === void 0 ? void 0 : textArea.classNames), {\n textarea: classNames({\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large'\n }, hashId, classes === null || classes === void 0 ? void 0 : classes.textarea, (_a = textArea === null || textArea === void 0 ? void 0 : textArea.classNames) === null || _a === void 0 ? void 0 : _a.textarea),\n variant: classNames({\n [`${prefixCls}-${variant}`]: enableVariantCls\n }, getStatusClassNames(prefixCls, mergedStatus)),\n affixWrapper: classNames(`${prefixCls}-textarea-affix-wrapper`, {\n [`${prefixCls}-affix-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-affix-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-affix-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-textarea-show-count`]: props.showCount || ((_b = props.count) === null || _b === void 0 ? void 0 : _b.show)\n }, hashId)\n }),\n prefixCls: prefixCls,\n suffix: hasFeedback && /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-textarea-suffix`\n }, feedbackIcon),\n ref: innerRef\n })));\n});\nexport default TextArea;","\"use client\";\n\nimport Group from './Group';\nimport InternalInput from './Input';\nimport OTP from './OTP';\nimport Password from './Password';\nimport Search from './Search';\nimport TextArea from './TextArea';\nconst Input = InternalInput;\nInput.Group = Group;\nInput.Search = Search;\nInput.TextArea = TextArea;\nInput.Password = Password;\nInput.OTP = OTP;\nexport default Input;","\"use client\";\n\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport classNames from 'classnames';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport { FormItemInputContext } from '../form/context';\nimport useStyle from './style';\nconst Group = props => {\n const {\n getPrefixCls,\n direction\n } = useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n className\n } = props;\n const prefixCls = getPrefixCls('input-group', customizePrefixCls);\n const inputPrefixCls = getPrefixCls('input');\n const [wrapCSSVar, hashId] = useStyle(inputPrefixCls);\n const cls = classNames(prefixCls, {\n [`${prefixCls}-lg`]: props.size === 'large',\n [`${prefixCls}-sm`]: props.size === 'small',\n [`${prefixCls}-compact`]: props.compact,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, hashId, className);\n const formItemContext = useContext(FormItemInputContext);\n const groupFormItemContext = useMemo(() => Object.assign(Object.assign({}, formItemContext), {\n isFormItemInput: false\n }), [formItemContext]);\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Input.Group');\n warning.deprecated(false, 'Input.Group', 'Space.Compact');\n }\n return wrapCSSVar(/*#__PURE__*/React.createElement(\"span\", {\n className: cls,\n style: props.style,\n onMouseEnter: props.onMouseEnter,\n onMouseLeave: props.onMouseLeave,\n onFocus: props.onFocus,\n onBlur: props.onBlur\n }, /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {\n value: groupFormItemContext\n }, props.children)));\n};\nexport default Group;","\"use client\";\n\nimport React, { useEffect, useState } from 'react';\nimport Input from '../../input';\nimport { toHexFormat } from '../color';\nimport { generateColor } from '../util';\nconst hexReg = /(^#[\\da-f]{6}$)|(^#[\\da-f]{8}$)/i;\nconst isHexString = hex => hexReg.test(`#${hex}`);\nconst ColorHexInput = _ref => {\n let {\n prefixCls,\n value,\n onChange\n } = _ref;\n const colorHexInputPrefixCls = `${prefixCls}-hex-input`;\n const [hexValue, setHexValue] = useState(() => value ? toHexFormat(value.toHexString()) : undefined);\n // Update step value\n useEffect(() => {\n if (value) {\n setHexValue(toHexFormat(value.toHexString()));\n }\n }, [value]);\n const handleHexChange = e => {\n const originValue = e.target.value;\n setHexValue(toHexFormat(originValue));\n if (isHexString(toHexFormat(originValue, true))) {\n onChange === null || onChange === void 0 ? void 0 : onChange(generateColor(originValue));\n }\n };\n return /*#__PURE__*/React.createElement(Input, {\n className: colorHexInputPrefixCls,\n value: hexValue,\n prefix: \"#\",\n onChange: handleHexChange,\n size: \"small\"\n });\n};\nexport default ColorHexInput;","\"use client\";\n\nimport React, { useEffect, useState } from 'react';\nimport { generateColor, getRoundNumber } from '../util';\nimport ColorSteppers from './ColorSteppers';\nconst ColorHsbInput = _ref => {\n let {\n prefixCls,\n value,\n onChange\n } = _ref;\n const colorHsbInputPrefixCls = `${prefixCls}-hsb-input`;\n const [hsbValue, setHsbValue] = useState(generateColor(value || '#000'));\n // Update step value\n useEffect(() => {\n if (value) {\n setHsbValue(value);\n }\n }, [value]);\n const handleHsbChange = (step, type) => {\n const hsb = hsbValue.toHsb();\n hsb[type] = type === 'h' ? step : (step || 0) / 100;\n const genColor = generateColor(hsb);\n if (!value) {\n setHsbValue(genColor);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(genColor);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: colorHsbInputPrefixCls\n }, /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 360,\n min: 0,\n value: Number(hsbValue.toHsb().h),\n prefixCls: prefixCls,\n className: colorHsbInputPrefixCls,\n formatter: step => getRoundNumber(step || 0).toString(),\n onChange: step => handleHsbChange(Number(step), 'h')\n }), /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 100,\n min: 0,\n value: Number(hsbValue.toHsb().s) * 100,\n prefixCls: prefixCls,\n className: colorHsbInputPrefixCls,\n formatter: step => `${getRoundNumber(step || 0)}%`,\n onChange: step => handleHsbChange(Number(step), 's')\n }), /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 100,\n min: 0,\n value: Number(hsbValue.toHsb().b) * 100,\n prefixCls: prefixCls,\n className: colorHsbInputPrefixCls,\n formatter: step => `${getRoundNumber(step || 0)}%`,\n onChange: step => handleHsbChange(Number(step), 'b')\n }));\n};\nexport default ColorHsbInput;","\"use client\";\n\nimport React, { useEffect, useState } from 'react';\nimport { generateColor } from '../util';\nimport ColorSteppers from './ColorSteppers';\nconst ColorRgbInput = _ref => {\n let {\n prefixCls,\n value,\n onChange\n } = _ref;\n const colorRgbInputPrefixCls = `${prefixCls}-rgb-input`;\n const [rgbValue, setRgbValue] = useState(generateColor(value || '#000'));\n // Update step value\n useEffect(() => {\n if (value) {\n setRgbValue(value);\n }\n }, [value]);\n const handleRgbChange = (step, type) => {\n const rgb = rgbValue.toRgb();\n rgb[type] = step || 0;\n const genColor = generateColor(rgb);\n if (!value) {\n setRgbValue(genColor);\n }\n onChange === null || onChange === void 0 ? void 0 : onChange(genColor);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: colorRgbInputPrefixCls\n }, /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 255,\n min: 0,\n value: Number(rgbValue.toRgb().r),\n prefixCls: prefixCls,\n className: colorRgbInputPrefixCls,\n onChange: step => handleRgbChange(Number(step), 'r')\n }), /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 255,\n min: 0,\n value: Number(rgbValue.toRgb().g),\n prefixCls: prefixCls,\n className: colorRgbInputPrefixCls,\n onChange: step => handleRgbChange(Number(step), 'g')\n }), /*#__PURE__*/React.createElement(ColorSteppers, {\n max: 255,\n min: 0,\n value: Number(rgbValue.toRgb().b),\n prefixCls: prefixCls,\n className: colorRgbInputPrefixCls,\n onChange: step => handleRgbChange(Number(step), 'b')\n }));\n};\nexport default ColorRgbInput;","\"use client\";\n\nimport React, { useMemo } from 'react';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport Select from '../../select';\nimport { ColorFormat } from '../interface';\nimport ColorAlphaInput from './ColorAlphaInput';\nimport ColorHexInput from './ColorHexInput';\nimport ColorHsbInput from './ColorHsbInput';\nimport ColorRgbInput from './ColorRgbInput';\nconst selectOptions = [ColorFormat.hex, ColorFormat.hsb, ColorFormat.rgb].map(format => ({\n value: format,\n label: format.toLocaleUpperCase()\n}));\nconst ColorInput = props => {\n const {\n prefixCls,\n format,\n value,\n disabledAlpha,\n onFormatChange,\n onChange,\n disabledFormat\n } = props;\n const [colorFormat, setColorFormat] = useMergedState(ColorFormat.hex, {\n value: format,\n onChange: onFormatChange\n });\n const colorInputPrefixCls = `${prefixCls}-input`;\n const handleFormatChange = newFormat => {\n setColorFormat(newFormat);\n };\n const steppersNode = useMemo(() => {\n const inputProps = {\n value,\n prefixCls,\n onChange\n };\n switch (colorFormat) {\n case ColorFormat.hsb:\n return /*#__PURE__*/React.createElement(ColorHsbInput, Object.assign({}, inputProps));\n case ColorFormat.rgb:\n return /*#__PURE__*/React.createElement(ColorRgbInput, Object.assign({}, inputProps));\n // case ColorFormat.hex:\n default:\n return /*#__PURE__*/React.createElement(ColorHexInput, Object.assign({}, inputProps));\n }\n }, [colorFormat, prefixCls, value, onChange]);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: `${colorInputPrefixCls}-container`\n }, !disabledFormat && (/*#__PURE__*/React.createElement(Select, {\n value: colorFormat,\n variant: \"borderless\",\n getPopupContainer: current => current,\n popupMatchSelectWidth: 68,\n placement: \"bottomRight\",\n onChange: handleFormatChange,\n className: `${prefixCls}-format-select`,\n size: \"small\",\n options: selectOptions\n })), /*#__PURE__*/React.createElement(\"div\", {\n className: colorInputPrefixCls\n }, steppersNode), !disabledAlpha && (/*#__PURE__*/React.createElement(ColorAlphaInput, {\n prefixCls: prefixCls,\n value: value,\n onChange: onChange\n })));\n};\nexport default ColorInput;","export function getOffset(value, min, max) {\n return (value - min) / (max - min);\n}\nexport function getDirectionStyle(direction, value, min, max) {\n var offset = getOffset(value, min, max);\n var positionStyle = {};\n switch (direction) {\n case 'rtl':\n positionStyle.right = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateX(50%)';\n break;\n case 'btt':\n positionStyle.bottom = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateY(50%)';\n break;\n case 'ttb':\n positionStyle.top = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateY(-50%)';\n break;\n default:\n positionStyle.left = \"\".concat(offset * 100, \"%\");\n positionStyle.transform = 'translateX(-50%)';\n break;\n }\n return positionStyle;\n}\n\n/** Return index value if is list or return value directly */\nexport function getIndex(value, index) {\n return Array.isArray(value) ? value[index] : value;\n}","import * as React from 'react';\nvar SliderContext = /*#__PURE__*/React.createContext({\n min: 0,\n max: 0,\n direction: 'ltr',\n step: 1,\n includedStart: 0,\n includedEnd: 0,\n tabIndex: 0,\n keyboard: true,\n styles: {},\n classNames: {}\n});\nexport default SliderContext;\n/** @private NOT PROMISE AVAILABLE. DO NOT USE IN PRODUCTION. */\nexport var UnstableContext = /*#__PURE__*/React.createContext({});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"value\", \"valueIndex\", \"onStartMove\", \"onDelete\", \"style\", \"render\", \"dragging\", \"draggingDelete\", \"onOffsetChange\", \"onChangeComplete\", \"onFocus\", \"onMouseEnter\"];\nimport cls from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle, getIndex } from \"../util\";\nvar Handle = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n value = props.value,\n valueIndex = props.valueIndex,\n onStartMove = props.onStartMove,\n onDelete = props.onDelete,\n style = props.style,\n render = props.render,\n dragging = props.dragging,\n draggingDelete = props.draggingDelete,\n onOffsetChange = props.onOffsetChange,\n onChangeComplete = props.onChangeComplete,\n onFocus = props.onFocus,\n onMouseEnter = props.onMouseEnter,\n restProps = _objectWithoutProperties(props, _excluded);\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n disabled = _React$useContext.disabled,\n keyboard = _React$useContext.keyboard,\n range = _React$useContext.range,\n tabIndex = _React$useContext.tabIndex,\n ariaLabelForHandle = _React$useContext.ariaLabelForHandle,\n ariaLabelledByForHandle = _React$useContext.ariaLabelledByForHandle,\n ariaRequired = _React$useContext.ariaRequired,\n ariaValueTextFormatterForHandle = _React$useContext.ariaValueTextFormatterForHandle,\n styles = _React$useContext.styles,\n classNames = _React$useContext.classNames;\n var handlePrefixCls = \"\".concat(prefixCls, \"-handle\");\n\n // ============================ Events ============================\n var onInternalStartMove = function onInternalStartMove(e) {\n if (!disabled) {\n onStartMove(e, valueIndex);\n }\n };\n var onInternalFocus = function onInternalFocus(e) {\n onFocus === null || onFocus === void 0 || onFocus(e, valueIndex);\n };\n var onInternalMouseEnter = function onInternalMouseEnter(e) {\n onMouseEnter(e, valueIndex);\n };\n\n // =========================== Keyboard ===========================\n var onKeyDown = function onKeyDown(e) {\n if (!disabled && keyboard) {\n var offset = null;\n\n // Change the value\n switch (e.which || e.keyCode) {\n case KeyCode.LEFT:\n offset = direction === 'ltr' || direction === 'btt' ? -1 : 1;\n break;\n case KeyCode.RIGHT:\n offset = direction === 'ltr' || direction === 'btt' ? 1 : -1;\n break;\n\n // Up is plus\n case KeyCode.UP:\n offset = direction !== 'ttb' ? 1 : -1;\n break;\n\n // Down is minus\n case KeyCode.DOWN:\n offset = direction !== 'ttb' ? -1 : 1;\n break;\n case KeyCode.HOME:\n offset = 'min';\n break;\n case KeyCode.END:\n offset = 'max';\n break;\n case KeyCode.PAGE_UP:\n offset = 2;\n break;\n case KeyCode.PAGE_DOWN:\n offset = -2;\n break;\n case KeyCode.BACKSPACE:\n case KeyCode.DELETE:\n onDelete(valueIndex);\n break;\n }\n if (offset !== null) {\n e.preventDefault();\n onOffsetChange(offset, valueIndex);\n }\n }\n };\n var handleKeyUp = function handleKeyUp(e) {\n switch (e.which || e.keyCode) {\n case KeyCode.LEFT:\n case KeyCode.RIGHT:\n case KeyCode.UP:\n case KeyCode.DOWN:\n case KeyCode.HOME:\n case KeyCode.END:\n case KeyCode.PAGE_UP:\n case KeyCode.PAGE_DOWN:\n onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete();\n break;\n }\n };\n\n // ============================ Offset ============================\n var positionStyle = getDirectionStyle(direction, value, min, max);\n\n // ============================ Render ============================\n var divProps = {};\n if (valueIndex !== null) {\n var _getIndex;\n divProps = {\n tabIndex: disabled ? null : getIndex(tabIndex, valueIndex),\n role: 'slider',\n 'aria-valuemin': min,\n 'aria-valuemax': max,\n 'aria-valuenow': value,\n 'aria-disabled': disabled,\n 'aria-label': getIndex(ariaLabelForHandle, valueIndex),\n 'aria-labelledby': getIndex(ariaLabelledByForHandle, valueIndex),\n 'aria-required': getIndex(ariaRequired, valueIndex),\n 'aria-valuetext': (_getIndex = getIndex(ariaValueTextFormatterForHandle, valueIndex)) === null || _getIndex === void 0 ? void 0 : _getIndex(value),\n 'aria-orientation': direction === 'ltr' || direction === 'rtl' ? 'horizontal' : 'vertical',\n onMouseDown: onInternalStartMove,\n onTouchStart: onInternalStartMove,\n onFocus: onInternalFocus,\n onMouseEnter: onInternalMouseEnter,\n onKeyDown: onKeyDown,\n onKeyUp: handleKeyUp\n };\n }\n var handleNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: ref,\n className: cls(handlePrefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(handlePrefixCls, \"-\").concat(valueIndex + 1), valueIndex !== null && range), \"\".concat(handlePrefixCls, \"-dragging\"), dragging), \"\".concat(handlePrefixCls, \"-dragging-delete\"), draggingDelete), classNames.handle),\n style: _objectSpread(_objectSpread(_objectSpread({}, positionStyle), style), styles.handle)\n }, divProps, restProps));\n\n // Customize\n if (render) {\n handleNode = render(handleNode, {\n index: valueIndex,\n prefixCls: prefixCls,\n value: value,\n dragging: dragging,\n draggingDelete: draggingDelete\n });\n }\n return handleNode;\n});\nif (process.env.NODE_ENV !== 'production') {\n Handle.displayName = 'Handle';\n}\nexport default Handle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"style\", \"onStartMove\", \"onOffsetChange\", \"values\", \"handleRender\", \"activeHandleRender\", \"draggingIndex\", \"draggingDelete\", \"onFocus\"];\nimport * as React from 'react';\nimport { flushSync } from 'react-dom';\nimport { getIndex } from \"../util\";\nimport Handle from \"./Handle\";\nvar Handles = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n style = props.style,\n onStartMove = props.onStartMove,\n onOffsetChange = props.onOffsetChange,\n values = props.values,\n handleRender = props.handleRender,\n activeHandleRender = props.activeHandleRender,\n draggingIndex = props.draggingIndex,\n draggingDelete = props.draggingDelete,\n onFocus = props.onFocus,\n restProps = _objectWithoutProperties(props, _excluded);\n var handlesRef = React.useRef({});\n\n // =========================== Active ===========================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeVisible = _React$useState2[0],\n setActiveVisible = _React$useState2[1];\n var _React$useState3 = React.useState(-1),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n activeIndex = _React$useState4[0],\n setActiveIndex = _React$useState4[1];\n var onActive = function onActive(index) {\n setActiveIndex(index);\n setActiveVisible(true);\n };\n var onHandleFocus = function onHandleFocus(e, index) {\n onActive(index);\n onFocus === null || onFocus === void 0 || onFocus(e);\n };\n var onHandleMouseEnter = function onHandleMouseEnter(e, index) {\n onActive(index);\n };\n\n // =========================== Render ===========================\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus(index) {\n var _handlesRef$current$i;\n (_handlesRef$current$i = handlesRef.current[index]) === null || _handlesRef$current$i === void 0 || _handlesRef$current$i.focus();\n },\n hideHelp: function hideHelp() {\n flushSync(function () {\n setActiveVisible(false);\n });\n }\n };\n });\n\n // =========================== Render ===========================\n // Handle Props\n var handleProps = _objectSpread({\n prefixCls: prefixCls,\n onStartMove: onStartMove,\n onOffsetChange: onOffsetChange,\n render: handleRender,\n onFocus: onHandleFocus,\n onMouseEnter: onHandleMouseEnter\n }, restProps);\n return /*#__PURE__*/React.createElement(React.Fragment, null, values.map(function (value, index) {\n var dragging = draggingIndex === index;\n return /*#__PURE__*/React.createElement(Handle, _extends({\n ref: function ref(node) {\n if (!node) {\n delete handlesRef.current[index];\n } else {\n handlesRef.current[index] = node;\n }\n },\n dragging: dragging,\n draggingDelete: dragging && draggingDelete,\n style: getIndex(style, index),\n key: index,\n value: value,\n valueIndex: index\n }, handleProps));\n }), activeHandleRender && activeVisible && /*#__PURE__*/React.createElement(Handle, _extends({\n key: \"a11y\"\n }, handleProps, {\n value: values[activeIndex],\n valueIndex: null,\n dragging: draggingIndex !== -1,\n draggingDelete: draggingDelete,\n render: activeHandleRender,\n style: {\n pointerEvents: 'none'\n },\n tabIndex: null,\n \"aria-hidden\": true\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Handles.displayName = 'Handles';\n}\nexport default Handles;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle } from \"../util\";\nvar Mark = function Mark(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n children = props.children,\n value = props.value,\n _onClick = props.onClick;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n includedStart = _React$useContext.includedStart,\n includedEnd = _React$useContext.includedEnd,\n included = _React$useContext.included;\n var textCls = \"\".concat(prefixCls, \"-text\");\n\n // ============================ Offset ============================\n var positionStyle = getDirectionStyle(direction, value, min, max);\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(textCls, _defineProperty({}, \"\".concat(textCls, \"-active\"), included && includedStart <= value && value <= includedEnd)),\n style: _objectSpread(_objectSpread({}, positionStyle), style),\n onMouseDown: function onMouseDown(e) {\n e.stopPropagation();\n },\n onClick: function onClick() {\n _onClick(value);\n }\n }, children);\n};\nexport default Mark;","import * as React from 'react';\nimport Mark from \"./Mark\";\nvar Marks = function Marks(props) {\n var prefixCls = props.prefixCls,\n marks = props.marks,\n onClick = props.onClick;\n var markPrefixCls = \"\".concat(prefixCls, \"-mark\");\n\n // Not render mark if empty\n if (!marks.length) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: markPrefixCls\n }, marks.map(function (_ref) {\n var value = _ref.value,\n style = _ref.style,\n label = _ref.label;\n return /*#__PURE__*/React.createElement(Mark, {\n key: value,\n prefixCls: markPrefixCls,\n style: style,\n value: value,\n onClick: onClick\n }, label);\n }));\n};\nexport default Marks;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getDirectionStyle } from \"../util\";\nvar Dot = function Dot(props) {\n var prefixCls = props.prefixCls,\n value = props.value,\n style = props.style,\n activeStyle = props.activeStyle;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n direction = _React$useContext.direction,\n included = _React$useContext.included,\n includedStart = _React$useContext.includedStart,\n includedEnd = _React$useContext.includedEnd;\n var dotClassName = \"\".concat(prefixCls, \"-dot\");\n var active = included && includedStart <= value && value <= includedEnd;\n\n // ============================ Offset ============================\n var mergedStyle = _objectSpread(_objectSpread({}, getDirectionStyle(direction, value, min, max)), typeof style === 'function' ? style(value) : style);\n if (active) {\n mergedStyle = _objectSpread(_objectSpread({}, mergedStyle), typeof activeStyle === 'function' ? activeStyle(value) : activeStyle);\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(dotClassName, _defineProperty({}, \"\".concat(dotClassName, \"-active\"), active)),\n style: mergedStyle\n });\n};\nexport default Dot;","import * as React from 'react';\nimport SliderContext from \"../context\";\nimport Dot from \"./Dot\";\nvar Steps = function Steps(props) {\n var prefixCls = props.prefixCls,\n marks = props.marks,\n dots = props.dots,\n style = props.style,\n activeStyle = props.activeStyle;\n var _React$useContext = React.useContext(SliderContext),\n min = _React$useContext.min,\n max = _React$useContext.max,\n step = _React$useContext.step;\n var stepDots = React.useMemo(function () {\n var dotSet = new Set();\n\n // Add marks\n marks.forEach(function (mark) {\n dotSet.add(mark.value);\n });\n\n // Fill dots\n if (dots && step !== null) {\n var current = min;\n while (current <= max) {\n dotSet.add(current);\n current += step;\n }\n }\n return Array.from(dotSet);\n }, [min, max, step, dots, marks]);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-step\")\n }, stepDots.map(function (dotValue) {\n return /*#__PURE__*/React.createElement(Dot, {\n prefixCls: prefixCls,\n key: dotValue,\n value: dotValue,\n style: style,\n activeStyle: activeStyle\n });\n }));\n};\nexport default Steps;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport cls from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getOffset } from \"../util\";\nvar Track = function Track(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n start = props.start,\n end = props.end,\n index = props.index,\n onStartMove = props.onStartMove,\n replaceCls = props.replaceCls;\n var _React$useContext = React.useContext(SliderContext),\n direction = _React$useContext.direction,\n min = _React$useContext.min,\n max = _React$useContext.max,\n disabled = _React$useContext.disabled,\n range = _React$useContext.range,\n classNames = _React$useContext.classNames;\n var trackPrefixCls = \"\".concat(prefixCls, \"-track\");\n var offsetStart = getOffset(start, min, max);\n var offsetEnd = getOffset(end, min, max);\n\n // ============================ Events ============================\n var onInternalStartMove = function onInternalStartMove(e) {\n if (!disabled && onStartMove) {\n onStartMove(e, -1);\n }\n };\n\n // ============================ Render ============================\n var positionStyle = {};\n switch (direction) {\n case 'rtl':\n positionStyle.right = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.width = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n case 'btt':\n positionStyle.bottom = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.height = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n case 'ttb':\n positionStyle.top = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.height = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n break;\n default:\n positionStyle.left = \"\".concat(offsetStart * 100, \"%\");\n positionStyle.width = \"\".concat(offsetEnd * 100 - offsetStart * 100, \"%\");\n }\n var className = replaceCls || cls(trackPrefixCls, _defineProperty(_defineProperty({}, \"\".concat(trackPrefixCls, \"-\").concat(index + 1), index !== null && range), \"\".concat(prefixCls, \"-track-draggable\"), onStartMove), classNames.track);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: className,\n style: _objectSpread(_objectSpread({}, positionStyle), style),\n onMouseDown: onInternalStartMove,\n onTouchStart: onInternalStartMove\n });\n};\nexport default Track;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport cls from 'classnames';\nimport * as React from 'react';\nimport SliderContext from \"../context\";\nimport { getIndex } from \"../util\";\nimport Track from \"./Track\";\nvar Tracks = function Tracks(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n values = props.values,\n startPoint = props.startPoint,\n onStartMove = props.onStartMove;\n var _React$useContext = React.useContext(SliderContext),\n included = _React$useContext.included,\n range = _React$useContext.range,\n min = _React$useContext.min,\n styles = _React$useContext.styles,\n classNames = _React$useContext.classNames;\n\n // =========================== List ===========================\n var trackList = React.useMemo(function () {\n if (!range) {\n // null value do not have track\n if (values.length === 0) {\n return [];\n }\n var startValue = startPoint !== null && startPoint !== void 0 ? startPoint : min;\n var endValue = values[0];\n return [{\n start: Math.min(startValue, endValue),\n end: Math.max(startValue, endValue)\n }];\n }\n\n // Multiple\n var list = [];\n for (var i = 0; i < values.length - 1; i += 1) {\n list.push({\n start: values[i],\n end: values[i + 1]\n });\n }\n return list;\n }, [values, range, startPoint, min]);\n if (!included) {\n return null;\n }\n\n // ========================== Render ==========================\n var tracksNode = trackList !== null && trackList !== void 0 && trackList.length && (classNames.tracks || styles.tracks) ? /*#__PURE__*/React.createElement(Track, {\n index: null,\n prefixCls: prefixCls,\n start: trackList[0].start,\n end: trackList[trackList.length - 1].end,\n replaceCls: cls(classNames.tracks, \"\".concat(prefixCls, \"-tracks\")),\n style: styles.tracks\n }) : null;\n return /*#__PURE__*/React.createElement(React.Fragment, null, tracksNode, trackList.map(function (_ref, index) {\n var start = _ref.start,\n end = _ref.end;\n return /*#__PURE__*/React.createElement(Track, {\n index: index,\n prefixCls: prefixCls,\n style: _objectSpread(_objectSpread({}, getIndex(style, index)), styles.track),\n start: start,\n end: end,\n key: index,\n onStartMove: onStartMove\n });\n }));\n};\nexport default Tracks;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { UnstableContext } from \"../context\";\n/** Drag to delete offset. It's a user experience number for dragging out */\nvar REMOVE_DIST = 130;\nfunction getPosition(e) {\n var obj = 'targetTouches' in e ? e.targetTouches[0] : e;\n return {\n pageX: obj.pageX,\n pageY: obj.pageY\n };\n}\nfunction useDrag(containerRef, direction, rawValues, min, max, formatValue, triggerChange, finishChange, offsetValues, editable, minCount) {\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n draggingValue = _React$useState2[0],\n setDraggingValue = _React$useState2[1];\n var _React$useState3 = React.useState(-1),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n draggingIndex = _React$useState4[0],\n setDraggingIndex = _React$useState4[1];\n var _React$useState5 = React.useState(false),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n draggingDelete = _React$useState6[0],\n setDraggingDelete = _React$useState6[1];\n var _React$useState7 = React.useState(rawValues),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n cacheValues = _React$useState8[0],\n setCacheValues = _React$useState8[1];\n var _React$useState9 = React.useState(rawValues),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n originValues = _React$useState10[0],\n setOriginValues = _React$useState10[1];\n var mouseMoveEventRef = React.useRef(null);\n var mouseUpEventRef = React.useRef(null);\n var touchEventTargetRef = React.useRef(null);\n var _React$useContext = React.useContext(UnstableContext),\n onDragStart = _React$useContext.onDragStart,\n onDragChange = _React$useContext.onDragChange;\n useLayoutEffect(function () {\n if (draggingIndex === -1) {\n setCacheValues(rawValues);\n }\n }, [rawValues, draggingIndex]);\n\n // Clean up event\n React.useEffect(function () {\n return function () {\n document.removeEventListener('mousemove', mouseMoveEventRef.current);\n document.removeEventListener('mouseup', mouseUpEventRef.current);\n if (touchEventTargetRef.current) {\n touchEventTargetRef.current.removeEventListener('touchmove', mouseMoveEventRef.current);\n touchEventTargetRef.current.removeEventListener('touchend', mouseUpEventRef.current);\n }\n };\n }, []);\n var flushValues = function flushValues(nextValues, nextValue, deleteMark) {\n // Perf: Only update state when value changed\n if (nextValue !== undefined) {\n setDraggingValue(nextValue);\n }\n setCacheValues(nextValues);\n var changeValues = nextValues;\n if (deleteMark) {\n changeValues = nextValues.filter(function (_, i) {\n return i !== draggingIndex;\n });\n }\n triggerChange(changeValues);\n if (onDragChange) {\n onDragChange({\n rawValues: nextValues,\n deleteIndex: deleteMark ? draggingIndex : -1,\n draggingIndex: draggingIndex,\n draggingValue: nextValue\n });\n }\n };\n var updateCacheValue = useEvent(function (valueIndex, offsetPercent, deleteMark) {\n if (valueIndex === -1) {\n // >>>> Dragging on the track\n var startValue = originValues[0];\n var endValue = originValues[originValues.length - 1];\n var maxStartOffset = min - startValue;\n var maxEndOffset = max - endValue;\n\n // Get valid offset\n var offset = offsetPercent * (max - min);\n offset = Math.max(offset, maxStartOffset);\n offset = Math.min(offset, maxEndOffset);\n\n // Use first value to revert back of valid offset (like steps marks)\n var formatStartValue = formatValue(startValue + offset);\n offset = formatStartValue - startValue;\n var cloneCacheValues = originValues.map(function (val) {\n return val + offset;\n });\n flushValues(cloneCacheValues);\n } else {\n // >>>> Dragging on the handle\n var offsetDist = (max - min) * offsetPercent;\n\n // Always start with the valueIndex origin value\n var cloneValues = _toConsumableArray(cacheValues);\n cloneValues[valueIndex] = originValues[valueIndex];\n var next = offsetValues(cloneValues, offsetDist, valueIndex, 'dist');\n flushValues(next.values, next.value, deleteMark);\n }\n });\n var onStartMove = function onStartMove(e, valueIndex, startValues) {\n e.stopPropagation();\n\n // 如果是点击 track 触发的,需要传入变化后的初始值,而不能直接用 rawValues\n var initialValues = startValues || rawValues;\n var originValue = initialValues[valueIndex];\n setDraggingIndex(valueIndex);\n setDraggingValue(originValue);\n setOriginValues(initialValues);\n setCacheValues(initialValues);\n setDraggingDelete(false);\n var _getPosition = getPosition(e),\n startX = _getPosition.pageX,\n startY = _getPosition.pageY;\n\n // We declare it here since closure can't get outer latest value\n var deleteMark = false;\n\n // Internal trigger event\n if (onDragStart) {\n onDragStart({\n rawValues: initialValues,\n draggingIndex: valueIndex,\n draggingValue: originValue\n });\n }\n\n // Moving\n var onMouseMove = function onMouseMove(event) {\n event.preventDefault();\n var _getPosition2 = getPosition(event),\n moveX = _getPosition2.pageX,\n moveY = _getPosition2.pageY;\n var offsetX = moveX - startX;\n var offsetY = moveY - startY;\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n width = _containerRef$current.width,\n height = _containerRef$current.height;\n var offSetPercent;\n var removeDist;\n switch (direction) {\n case 'btt':\n offSetPercent = -offsetY / height;\n removeDist = offsetX;\n break;\n case 'ttb':\n offSetPercent = offsetY / height;\n removeDist = offsetX;\n break;\n case 'rtl':\n offSetPercent = -offsetX / width;\n removeDist = offsetY;\n break;\n default:\n offSetPercent = offsetX / width;\n removeDist = offsetY;\n }\n\n // Check if need mark remove\n deleteMark = editable ? Math.abs(removeDist) > REMOVE_DIST && minCount < cacheValues.length : false;\n setDraggingDelete(deleteMark);\n updateCacheValue(valueIndex, offSetPercent, deleteMark);\n };\n\n // End\n var onMouseUp = function onMouseUp(event) {\n event.preventDefault();\n document.removeEventListener('mouseup', onMouseUp);\n document.removeEventListener('mousemove', onMouseMove);\n if (touchEventTargetRef.current) {\n touchEventTargetRef.current.removeEventListener('touchmove', mouseMoveEventRef.current);\n touchEventTargetRef.current.removeEventListener('touchend', mouseUpEventRef.current);\n }\n mouseMoveEventRef.current = null;\n mouseUpEventRef.current = null;\n touchEventTargetRef.current = null;\n finishChange(deleteMark);\n setDraggingIndex(-1);\n setDraggingDelete(false);\n };\n document.addEventListener('mouseup', onMouseUp);\n document.addEventListener('mousemove', onMouseMove);\n e.currentTarget.addEventListener('touchend', onMouseUp);\n e.currentTarget.addEventListener('touchmove', onMouseMove);\n mouseMoveEventRef.current = onMouseMove;\n mouseUpEventRef.current = onMouseUp;\n touchEventTargetRef.current = e.currentTarget;\n };\n\n // Only return cache value when it mapping with rawValues\n var returnValues = React.useMemo(function () {\n var sourceValues = _toConsumableArray(rawValues).sort(function (a, b) {\n return a - b;\n });\n var targetValues = _toConsumableArray(cacheValues).sort(function (a, b) {\n return a - b;\n });\n var counts = {};\n targetValues.forEach(function (val) {\n counts[val] = (counts[val] || 0) + 1;\n });\n sourceValues.forEach(function (val) {\n counts[val] = (counts[val] || 0) - 1;\n });\n var maxDiffCount = editable ? 1 : 0;\n var diffCount = Object.values(counts).reduce(function (prev, next) {\n return prev + Math.abs(next);\n }, 0);\n return diffCount <= maxDiffCount ? cacheValues : rawValues;\n }, [rawValues, cacheValues, editable]);\n return [draggingIndex, draggingValue, draggingDelete, returnValues, onStartMove];\n}\nexport default useDrag;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport cls from 'classnames';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport Handles from \"./Handles\";\nimport Marks from \"./Marks\";\nimport Steps from \"./Steps\";\nimport Tracks from \"./Tracks\";\nimport SliderContext from \"./context\";\nimport useDrag from \"./hooks/useDrag\";\nimport useOffset from \"./hooks/useOffset\";\nimport useRange from \"./hooks/useRange\";\n\n/**\n * New:\n * - click mark to update range value\n * - handleRender\n * - Fix handle with count not correct\n * - Fix pushable not work in some case\n * - No more FindDOMNode\n * - Move all position related style into inline style\n * - Key: up is plus, down is minus\n * - fix Key with step = null not align with marks\n * - Change range should not trigger onChange\n * - keyboard support pushable\n */\n\nvar Slider = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-slider' : _props$prefixCls,\n className = props.className,\n style = props.style,\n classNames = props.classNames,\n styles = props.styles,\n id = props.id,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$keyboard = props.keyboard,\n keyboard = _props$keyboard === void 0 ? true : _props$keyboard,\n autoFocus = props.autoFocus,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n _props$min = props.min,\n min = _props$min === void 0 ? 0 : _props$min,\n _props$max = props.max,\n max = _props$max === void 0 ? 100 : _props$max,\n _props$step = props.step,\n step = _props$step === void 0 ? 1 : _props$step,\n value = props.value,\n defaultValue = props.defaultValue,\n range = props.range,\n count = props.count,\n onChange = props.onChange,\n onBeforeChange = props.onBeforeChange,\n onAfterChange = props.onAfterChange,\n onChangeComplete = props.onChangeComplete,\n _props$allowCross = props.allowCross,\n allowCross = _props$allowCross === void 0 ? true : _props$allowCross,\n _props$pushable = props.pushable,\n pushable = _props$pushable === void 0 ? false : _props$pushable,\n reverse = props.reverse,\n vertical = props.vertical,\n _props$included = props.included,\n included = _props$included === void 0 ? true : _props$included,\n startPoint = props.startPoint,\n trackStyle = props.trackStyle,\n handleStyle = props.handleStyle,\n railStyle = props.railStyle,\n dotStyle = props.dotStyle,\n activeDotStyle = props.activeDotStyle,\n marks = props.marks,\n dots = props.dots,\n handleRender = props.handleRender,\n activeHandleRender = props.activeHandleRender,\n track = props.track,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n ariaLabelForHandle = props.ariaLabelForHandle,\n ariaLabelledByForHandle = props.ariaLabelledByForHandle,\n ariaRequired = props.ariaRequired,\n ariaValueTextFormatterForHandle = props.ariaValueTextFormatterForHandle;\n var handlesRef = React.useRef(null);\n var containerRef = React.useRef(null);\n var direction = React.useMemo(function () {\n if (vertical) {\n return reverse ? 'ttb' : 'btt';\n }\n return reverse ? 'rtl' : 'ltr';\n }, [reverse, vertical]);\n\n // ============================ Range =============================\n var _useRange = useRange(range),\n _useRange2 = _slicedToArray(_useRange, 5),\n rangeEnabled = _useRange2[0],\n rangeEditable = _useRange2[1],\n rangeDraggableTrack = _useRange2[2],\n minCount = _useRange2[3],\n maxCount = _useRange2[4];\n var mergedMin = React.useMemo(function () {\n return isFinite(min) ? min : 0;\n }, [min]);\n var mergedMax = React.useMemo(function () {\n return isFinite(max) ? max : 100;\n }, [max]);\n\n // ============================= Step =============================\n var mergedStep = React.useMemo(function () {\n return step !== null && step <= 0 ? 1 : step;\n }, [step]);\n\n // ============================= Push =============================\n var mergedPush = React.useMemo(function () {\n if (typeof pushable === 'boolean') {\n return pushable ? mergedStep : false;\n }\n return pushable >= 0 ? pushable : false;\n }, [pushable, mergedStep]);\n\n // ============================ Marks =============================\n var markList = React.useMemo(function () {\n return Object.keys(marks || {}).map(function (key) {\n var mark = marks[key];\n var markObj = {\n value: Number(key)\n };\n if (mark && _typeof(mark) === 'object' && ! /*#__PURE__*/React.isValidElement(mark) && ('label' in mark || 'style' in mark)) {\n markObj.style = mark.style;\n markObj.label = mark.label;\n } else {\n markObj.label = mark;\n }\n return markObj;\n }).filter(function (_ref) {\n var label = _ref.label;\n return label || typeof label === 'number';\n }).sort(function (a, b) {\n return a.value - b.value;\n });\n }, [marks]);\n\n // ============================ Format ============================\n var _useOffset = useOffset(mergedMin, mergedMax, mergedStep, markList, allowCross, mergedPush),\n _useOffset2 = _slicedToArray(_useOffset, 2),\n formatValue = _useOffset2[0],\n offsetValues = _useOffset2[1];\n\n // ============================ Values ============================\n var _useMergedState = useMergedState(defaultValue, {\n value: value\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedValue = _useMergedState2[0],\n setValue = _useMergedState2[1];\n var rawValues = React.useMemo(function () {\n var valueList = mergedValue === null || mergedValue === undefined ? [] : Array.isArray(mergedValue) ? mergedValue : [mergedValue];\n var _valueList = _slicedToArray(valueList, 1),\n _valueList$ = _valueList[0],\n val0 = _valueList$ === void 0 ? mergedMin : _valueList$;\n var returnValues = mergedValue === null ? [] : [val0];\n\n // Format as range\n if (rangeEnabled) {\n returnValues = _toConsumableArray(valueList);\n\n // When count provided or value is `undefined`, we fill values\n if (count || mergedValue === undefined) {\n var pointCount = count >= 0 ? count + 1 : 2;\n returnValues = returnValues.slice(0, pointCount);\n\n // Fill with count\n while (returnValues.length < pointCount) {\n var _returnValues;\n returnValues.push((_returnValues = returnValues[returnValues.length - 1]) !== null && _returnValues !== void 0 ? _returnValues : mergedMin);\n }\n }\n returnValues.sort(function (a, b) {\n return a - b;\n });\n }\n\n // Align in range\n returnValues.forEach(function (val, index) {\n returnValues[index] = formatValue(val);\n });\n return returnValues;\n }, [mergedValue, rangeEnabled, mergedMin, count, formatValue]);\n\n // =========================== onChange ===========================\n var getTriggerValue = function getTriggerValue(triggerValues) {\n return rangeEnabled ? triggerValues : triggerValues[0];\n };\n var triggerChange = useEvent(function (nextValues) {\n // Order first\n var cloneNextValues = _toConsumableArray(nextValues).sort(function (a, b) {\n return a - b;\n });\n\n // Trigger event if needed\n if (onChange && !isEqual(cloneNextValues, rawValues, true)) {\n onChange(getTriggerValue(cloneNextValues));\n }\n\n // We set this later since it will re-render component immediately\n setValue(cloneNextValues);\n });\n var finishChange = useEvent(function (draggingDelete) {\n // Trigger from `useDrag` will tell if it's a delete action\n if (draggingDelete) {\n handlesRef.current.hideHelp();\n }\n var finishValue = getTriggerValue(rawValues);\n onAfterChange === null || onAfterChange === void 0 || onAfterChange(finishValue);\n warning(!onAfterChange, '[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead.');\n onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete(finishValue);\n });\n var onDelete = function onDelete(index) {\n if (disabled || !rangeEditable || rawValues.length <= minCount) {\n return;\n }\n var cloneNextValues = _toConsumableArray(rawValues);\n cloneNextValues.splice(index, 1);\n onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(cloneNextValues));\n triggerChange(cloneNextValues);\n var nextFocusIndex = Math.max(0, index - 1);\n handlesRef.current.hideHelp();\n handlesRef.current.focus(nextFocusIndex);\n };\n var _useDrag = useDrag(containerRef, direction, rawValues, mergedMin, mergedMax, formatValue, triggerChange, finishChange, offsetValues, rangeEditable, minCount),\n _useDrag2 = _slicedToArray(_useDrag, 5),\n draggingIndex = _useDrag2[0],\n draggingValue = _useDrag2[1],\n draggingDelete = _useDrag2[2],\n cacheValues = _useDrag2[3],\n onStartDrag = _useDrag2[4];\n\n /**\n * When `rangeEditable` will insert a new value in the values array.\n * Else it will replace the value in the values array.\n */\n var changeToCloseValue = function changeToCloseValue(newValue, e) {\n if (!disabled) {\n // Create new values\n var cloneNextValues = _toConsumableArray(rawValues);\n var valueIndex = 0;\n var valueBeforeIndex = 0; // Record the index which value < newValue\n var valueDist = mergedMax - mergedMin;\n rawValues.forEach(function (val, index) {\n var dist = Math.abs(newValue - val);\n if (dist <= valueDist) {\n valueDist = dist;\n valueIndex = index;\n }\n if (val < newValue) {\n valueBeforeIndex = index;\n }\n });\n var focusIndex = valueIndex;\n if (rangeEditable && valueDist !== 0 && (!maxCount || rawValues.length < maxCount)) {\n cloneNextValues.splice(valueBeforeIndex + 1, 0, newValue);\n focusIndex = valueBeforeIndex + 1;\n } else {\n cloneNextValues[valueIndex] = newValue;\n }\n\n // Fill value to match default 2 (only when `rawValues` is empty)\n if (rangeEnabled && !rawValues.length && count === undefined) {\n cloneNextValues.push(newValue);\n }\n var nextValue = getTriggerValue(cloneNextValues);\n onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(nextValue);\n triggerChange(cloneNextValues);\n if (e) {\n var _document$activeEleme, _document$activeEleme2;\n (_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 || (_document$activeEleme2 = _document$activeEleme.blur) === null || _document$activeEleme2 === void 0 || _document$activeEleme2.call(_document$activeEleme);\n handlesRef.current.focus(focusIndex);\n onStartDrag(e, focusIndex, cloneNextValues);\n } else {\n // https://github.com/ant-design/ant-design/issues/49997\n onAfterChange === null || onAfterChange === void 0 || onAfterChange(nextValue);\n warning(!onAfterChange, '[rc-slider] `onAfterChange` is deprecated. Please use `onChangeComplete` instead.');\n onChangeComplete === null || onChangeComplete === void 0 || onChangeComplete(nextValue);\n }\n }\n };\n\n // ============================ Click =============================\n var onSliderMouseDown = function onSliderMouseDown(e) {\n e.preventDefault();\n var _containerRef$current = containerRef.current.getBoundingClientRect(),\n width = _containerRef$current.width,\n height = _containerRef$current.height,\n left = _containerRef$current.left,\n top = _containerRef$current.top,\n bottom = _containerRef$current.bottom,\n right = _containerRef$current.right;\n var clientX = e.clientX,\n clientY = e.clientY;\n var percent;\n switch (direction) {\n case 'btt':\n percent = (bottom - clientY) / height;\n break;\n case 'ttb':\n percent = (clientY - top) / height;\n break;\n case 'rtl':\n percent = (right - clientX) / width;\n break;\n default:\n percent = (clientX - left) / width;\n }\n var nextValue = mergedMin + percent * (mergedMax - mergedMin);\n changeToCloseValue(formatValue(nextValue), e);\n };\n\n // =========================== Keyboard ===========================\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n keyboardValue = _React$useState2[0],\n setKeyboardValue = _React$useState2[1];\n var onHandleOffsetChange = function onHandleOffsetChange(offset, valueIndex) {\n if (!disabled) {\n var next = offsetValues(rawValues, offset, valueIndex);\n onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValues));\n triggerChange(next.values);\n setKeyboardValue(next.value);\n }\n };\n React.useEffect(function () {\n if (keyboardValue !== null) {\n var valueIndex = rawValues.indexOf(keyboardValue);\n if (valueIndex >= 0) {\n handlesRef.current.focus(valueIndex);\n }\n }\n setKeyboardValue(null);\n }, [keyboardValue]);\n\n // ============================= Drag =============================\n var mergedDraggableTrack = React.useMemo(function () {\n if (rangeDraggableTrack && mergedStep === null) {\n if (process.env.NODE_ENV !== 'production') {\n warning(false, '`draggableTrack` is not supported when `step` is `null`.');\n }\n return false;\n }\n return rangeDraggableTrack;\n }, [rangeDraggableTrack, mergedStep]);\n var onStartMove = useEvent(function (e, valueIndex) {\n onStartDrag(e, valueIndex);\n onBeforeChange === null || onBeforeChange === void 0 || onBeforeChange(getTriggerValue(rawValues));\n });\n\n // Auto focus for updated handle\n var dragging = draggingIndex !== -1;\n React.useEffect(function () {\n if (!dragging) {\n var valueIndex = rawValues.lastIndexOf(draggingValue);\n handlesRef.current.focus(valueIndex);\n }\n }, [dragging]);\n\n // =========================== Included ===========================\n var sortedCacheValues = React.useMemo(function () {\n return _toConsumableArray(cacheValues).sort(function (a, b) {\n return a - b;\n });\n }, [cacheValues]);\n\n // Provide a range values with included [min, max]\n // Used for Track, Mark & Dot\n var _React$useMemo = React.useMemo(function () {\n if (!rangeEnabled) {\n return [mergedMin, sortedCacheValues[0]];\n }\n return [sortedCacheValues[0], sortedCacheValues[sortedCacheValues.length - 1]];\n }, [sortedCacheValues, rangeEnabled, mergedMin]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n includedStart = _React$useMemo2[0],\n includedEnd = _React$useMemo2[1];\n\n // ============================= Refs =============================\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus() {\n handlesRef.current.focus(0);\n },\n blur: function blur() {\n var _containerRef$current2;\n var _document = document,\n activeElement = _document.activeElement;\n if ((_containerRef$current2 = containerRef.current) !== null && _containerRef$current2 !== void 0 && _containerRef$current2.contains(activeElement)) {\n activeElement === null || activeElement === void 0 || activeElement.blur();\n }\n }\n };\n });\n\n // ========================== Auto Focus ==========================\n React.useEffect(function () {\n if (autoFocus) {\n handlesRef.current.focus(0);\n }\n }, []);\n\n // =========================== Context ============================\n var context = React.useMemo(function () {\n return {\n min: mergedMin,\n max: mergedMax,\n direction: direction,\n disabled: disabled,\n keyboard: keyboard,\n step: mergedStep,\n included: included,\n includedStart: includedStart,\n includedEnd: includedEnd,\n range: rangeEnabled,\n tabIndex: tabIndex,\n ariaLabelForHandle: ariaLabelForHandle,\n ariaLabelledByForHandle: ariaLabelledByForHandle,\n ariaRequired: ariaRequired,\n ariaValueTextFormatterForHandle: ariaValueTextFormatterForHandle,\n styles: styles || {},\n classNames: classNames || {}\n };\n }, [mergedMin, mergedMax, direction, disabled, keyboard, mergedStep, included, includedStart, includedEnd, rangeEnabled, tabIndex, ariaLabelForHandle, ariaLabelledByForHandle, ariaRequired, ariaValueTextFormatterForHandle, styles, classNames]);\n\n // ============================ Render ============================\n return /*#__PURE__*/React.createElement(SliderContext.Provider, {\n value: context\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: containerRef,\n className: cls(prefixCls, className, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled), \"\".concat(prefixCls, \"-vertical\"), vertical), \"\".concat(prefixCls, \"-horizontal\"), !vertical), \"\".concat(prefixCls, \"-with-marks\"), markList.length)),\n style: style,\n onMouseDown: onSliderMouseDown,\n id: id\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: cls(\"\".concat(prefixCls, \"-rail\"), classNames === null || classNames === void 0 ? void 0 : classNames.rail),\n style: _objectSpread(_objectSpread({}, railStyle), styles === null || styles === void 0 ? void 0 : styles.rail)\n }), track !== false && /*#__PURE__*/React.createElement(Tracks, {\n prefixCls: prefixCls,\n style: trackStyle,\n values: rawValues,\n startPoint: startPoint,\n onStartMove: mergedDraggableTrack ? onStartMove : undefined\n }), /*#__PURE__*/React.createElement(Steps, {\n prefixCls: prefixCls,\n marks: markList,\n dots: dots,\n style: dotStyle,\n activeStyle: activeDotStyle\n }), /*#__PURE__*/React.createElement(Handles, {\n ref: handlesRef,\n prefixCls: prefixCls,\n style: handleStyle,\n values: cacheValues,\n draggingIndex: draggingIndex,\n draggingDelete: draggingDelete,\n onStartMove: onStartMove,\n onOffsetChange: onHandleOffsetChange,\n onFocus: onFocus,\n onBlur: onBlur,\n handleRender: handleRender,\n activeHandleRender: activeHandleRender,\n onChangeComplete: finishChange,\n onDelete: rangeEditable ? onDelete : undefined\n }), /*#__PURE__*/React.createElement(Marks, {\n prefixCls: prefixCls,\n marks: markList,\n onClick: changeToCloseValue\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Slider.displayName = 'Slider';\n}\nexport default Slider;","import { warning } from \"rc-util/es/warning\";\nimport { useMemo } from 'react';\nexport default function useRange(range) {\n return useMemo(function () {\n if (range === true || !range) {\n return [!!range, false, false, 0];\n }\n var editable = range.editable,\n draggableTrack = range.draggableTrack,\n minCount = range.minCount,\n maxCount = range.maxCount;\n if (process.env.NODE_ENV !== 'production') {\n warning(!editable || !draggableTrack, '`editable` can not work with `draggableTrack`.');\n }\n return [true, editable, !editable && draggableTrack, minCount || 0, maxCount];\n }, [range]);\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\n\n/** Format the value in the range of [min, max] */\n\n/** Format value align with step */\n\n/** Format value align with step & marks */\n\nexport default function useOffset(min, max, step, markList, allowCross, pushable) {\n var formatRangeValue = React.useCallback(function (val) {\n return Math.max(min, Math.min(max, val));\n }, [min, max]);\n var formatStepValue = React.useCallback(function (val) {\n if (step !== null) {\n var stepValue = min + Math.round((formatRangeValue(val) - min) / step) * step;\n\n // Cut number in case to be like 0.30000000000000004\n var getDecimal = function getDecimal(num) {\n return (String(num).split('.')[1] || '').length;\n };\n var maxDecimal = Math.max(getDecimal(step), getDecimal(max), getDecimal(min));\n var fixedValue = Number(stepValue.toFixed(maxDecimal));\n return min <= fixedValue && fixedValue <= max ? fixedValue : null;\n }\n return null;\n }, [step, min, max, formatRangeValue]);\n var formatValue = React.useCallback(function (val) {\n var formatNextValue = formatRangeValue(val);\n\n // List align values\n var alignValues = markList.map(function (mark) {\n return mark.value;\n });\n if (step !== null) {\n alignValues.push(formatStepValue(val));\n }\n\n // min & max\n alignValues.push(min, max);\n\n // Align with marks\n var closeValue = alignValues[0];\n var closeDist = max - min;\n alignValues.forEach(function (alignValue) {\n var dist = Math.abs(formatNextValue - alignValue);\n if (dist <= closeDist) {\n closeValue = alignValue;\n closeDist = dist;\n }\n });\n return closeValue;\n }, [min, max, markList, step, formatRangeValue, formatStepValue]);\n\n // ========================== Offset ==========================\n // Single Value\n var offsetValue = function offsetValue(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n if (typeof offset === 'number') {\n var nextValue;\n var originValue = values[valueIndex];\n\n // Only used for `dist` mode\n var targetDistValue = originValue + offset;\n\n // Compare next step value & mark value which is best match\n var potentialValues = [];\n markList.forEach(function (mark) {\n potentialValues.push(mark.value);\n });\n\n // Min & Max\n potentialValues.push(min, max);\n\n // In case origin value is align with mark but not with step\n potentialValues.push(formatStepValue(originValue));\n\n // Put offset step value also\n var sign = offset > 0 ? 1 : -1;\n if (mode === 'unit') {\n potentialValues.push(formatStepValue(originValue + sign * step));\n } else {\n potentialValues.push(formatStepValue(targetDistValue));\n }\n\n // Find close one\n potentialValues = potentialValues.filter(function (val) {\n return val !== null;\n })\n // Remove reverse value\n .filter(function (val) {\n return offset < 0 ? val <= originValue : val >= originValue;\n });\n if (mode === 'unit') {\n // `unit` mode can not contain itself\n potentialValues = potentialValues.filter(function (val) {\n return val !== originValue;\n });\n }\n var compareValue = mode === 'unit' ? originValue : targetDistValue;\n nextValue = potentialValues[0];\n var valueDist = Math.abs(nextValue - compareValue);\n potentialValues.forEach(function (potentialValue) {\n var dist = Math.abs(potentialValue - compareValue);\n if (dist < valueDist) {\n nextValue = potentialValue;\n valueDist = dist;\n }\n });\n\n // Out of range will back to range\n if (nextValue === undefined) {\n return offset < 0 ? min : max;\n }\n\n // `dist` mode\n if (mode === 'dist') {\n return nextValue;\n }\n\n // `unit` mode may need another round\n if (Math.abs(offset) > 1) {\n var cloneValues = _toConsumableArray(values);\n cloneValues[valueIndex] = nextValue;\n return offsetValue(cloneValues, offset - sign, valueIndex, mode);\n }\n return nextValue;\n } else if (offset === 'min') {\n return min;\n } else if (offset === 'max') {\n return max;\n }\n };\n\n /** Same as `offsetValue` but return `changed` mark to tell value changed */\n var offsetChangedValue = function offsetChangedValue(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n var originValue = values[valueIndex];\n var nextValue = offsetValue(values, offset, valueIndex, mode);\n return {\n value: nextValue,\n changed: nextValue !== originValue\n };\n };\n var needPush = function needPush(dist) {\n return pushable === null && dist === 0 || typeof pushable === 'number' && dist < pushable;\n };\n\n // Values\n var offsetValues = function offsetValues(values, offset, valueIndex) {\n var mode = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'unit';\n var nextValues = values.map(formatValue);\n var originValue = nextValues[valueIndex];\n var nextValue = offsetValue(nextValues, offset, valueIndex, mode);\n nextValues[valueIndex] = nextValue;\n if (allowCross === false) {\n // >>>>> Allow Cross\n var pushNum = pushable || 0;\n\n // ============ AllowCross ===============\n if (valueIndex > 0 && nextValues[valueIndex - 1] !== originValue) {\n nextValues[valueIndex] = Math.max(nextValues[valueIndex], nextValues[valueIndex - 1] + pushNum);\n }\n if (valueIndex < nextValues.length - 1 && nextValues[valueIndex + 1] !== originValue) {\n nextValues[valueIndex] = Math.min(nextValues[valueIndex], nextValues[valueIndex + 1] - pushNum);\n }\n } else if (typeof pushable === 'number' || pushable === null) {\n // >>>>> Pushable\n // =============== Push ==================\n\n // >>>>>> Basic push\n // End values\n for (var i = valueIndex + 1; i < nextValues.length; i += 1) {\n var changed = true;\n while (needPush(nextValues[i] - nextValues[i - 1]) && changed) {\n var _offsetChangedValue = offsetChangedValue(nextValues, 1, i);\n nextValues[i] = _offsetChangedValue.value;\n changed = _offsetChangedValue.changed;\n }\n }\n\n // Start values\n for (var _i = valueIndex; _i > 0; _i -= 1) {\n var _changed = true;\n while (needPush(nextValues[_i] - nextValues[_i - 1]) && _changed) {\n var _offsetChangedValue2 = offsetChangedValue(nextValues, -1, _i - 1);\n nextValues[_i - 1] = _offsetChangedValue2.value;\n _changed = _offsetChangedValue2.changed;\n }\n }\n\n // >>>>> Revert back to safe push range\n // End to Start\n for (var _i2 = nextValues.length - 1; _i2 > 0; _i2 -= 1) {\n var _changed2 = true;\n while (needPush(nextValues[_i2] - nextValues[_i2 - 1]) && _changed2) {\n var _offsetChangedValue3 = offsetChangedValue(nextValues, -1, _i2 - 1);\n nextValues[_i2 - 1] = _offsetChangedValue3.value;\n _changed2 = _offsetChangedValue3.changed;\n }\n }\n\n // Start to End\n for (var _i3 = 0; _i3 < nextValues.length - 1; _i3 += 1) {\n var _changed3 = true;\n while (needPush(nextValues[_i3 + 1] - nextValues[_i3]) && _changed3) {\n var _offsetChangedValue4 = offsetChangedValue(nextValues, 1, _i3 + 1);\n nextValues[_i3 + 1] = _offsetChangedValue4.value;\n _changed3 = _offsetChangedValue4.changed;\n }\n }\n }\n return {\n value: nextValues[valueIndex],\n values: nextValues\n };\n };\n return [formatValue, offsetValues];\n}","import Slider from \"./Slider\";\nexport { UnstableContext } from \"./context\";\nexport default Slider;","import { createContext } from 'react';\n/** @private Internal context. Do not use in your production. */\nconst SliderInternalContext = /*#__PURE__*/createContext({});\nexport default SliderInternalContext;","\"use client\";\n\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport raf from \"rc-util/es/raf\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport Tooltip from '../tooltip';\nconst SliderTooltip = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n open,\n draggingDelete\n } = props;\n const innerRef = useRef(null);\n const mergedOpen = open && !draggingDelete;\n const rafRef = useRef(null);\n function cancelKeepAlign() {\n raf.cancel(rafRef.current);\n rafRef.current = null;\n }\n function keepAlign() {\n rafRef.current = raf(() => {\n var _a;\n (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.forceAlign();\n rafRef.current = null;\n });\n }\n React.useEffect(() => {\n if (mergedOpen) {\n keepAlign();\n } else {\n cancelKeepAlign();\n }\n return cancelKeepAlign;\n }, [mergedOpen, props.title]);\n return /*#__PURE__*/React.createElement(Tooltip, Object.assign({\n ref: composeRef(innerRef, ref)\n }, props, {\n open: mergedOpen\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n SliderTooltip.displayName = 'SliderTooltip';\n}\nexport default SliderTooltip;","import { unit } from '@ant-design/cssinjs';\nimport { FastColor } from '@ant-design/fast-color';\nimport { resetComponent } from '../../style';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\n// =============================== Base ===============================\nconst genBaseStyle = token => {\n const {\n componentCls,\n antCls,\n controlSize,\n dotSize,\n marginFull,\n marginPart,\n colorFillContentHover,\n handleColorDisabled,\n calc,\n handleSize,\n handleSizeHover,\n handleActiveColor,\n handleActiveOutlineColor,\n handleLineWidth,\n handleLineWidthHover,\n motionDurationMid\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n height: controlSize,\n margin: `${unit(marginPart)} ${unit(marginFull)}`,\n padding: 0,\n cursor: 'pointer',\n touchAction: 'none',\n '&-vertical': {\n margin: `${unit(marginFull)} ${unit(marginPart)}`\n },\n [`${componentCls}-rail`]: {\n position: 'absolute',\n backgroundColor: token.railBg,\n borderRadius: token.borderRadiusXS,\n transition: `background-color ${motionDurationMid}`\n },\n [`${componentCls}-track,${componentCls}-tracks`]: {\n position: 'absolute',\n transition: `background-color ${motionDurationMid}`\n },\n [`${componentCls}-track`]: {\n backgroundColor: token.trackBg,\n borderRadius: token.borderRadiusXS\n },\n [`${componentCls}-track-draggable`]: {\n boxSizing: 'content-box',\n backgroundClip: 'content-box',\n border: 'solid rgba(0,0,0,0)'\n },\n '&:hover': {\n [`${componentCls}-rail`]: {\n backgroundColor: token.railHoverBg\n },\n [`${componentCls}-track`]: {\n backgroundColor: token.trackHoverBg\n },\n [`${componentCls}-dot`]: {\n borderColor: colorFillContentHover\n },\n [`${componentCls}-handle::after`]: {\n boxShadow: `0 0 0 ${unit(handleLineWidth)} ${token.colorPrimaryBorderHover}`\n },\n [`${componentCls}-dot-active`]: {\n borderColor: token.dotActiveBorderColor\n }\n },\n [`${componentCls}-handle`]: {\n position: 'absolute',\n width: handleSize,\n height: handleSize,\n outline: 'none',\n userSelect: 'none',\n // Dragging status\n '&-dragging-delete': {\n opacity: 0\n },\n // 扩大选区\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n insetInlineStart: calc(handleLineWidth).mul(-1).equal(),\n insetBlockStart: calc(handleLineWidth).mul(-1).equal(),\n width: calc(handleSize).add(calc(handleLineWidth).mul(2)).equal(),\n height: calc(handleSize).add(calc(handleLineWidth).mul(2)).equal(),\n backgroundColor: 'transparent'\n },\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineStart: 0,\n width: handleSize,\n height: handleSize,\n backgroundColor: token.colorBgElevated,\n boxShadow: `0 0 0 ${unit(handleLineWidth)} ${token.handleColor}`,\n outline: `0px solid transparent`,\n borderRadius: '50%',\n cursor: 'pointer',\n transition: `\n inset-inline-start ${motionDurationMid},\n inset-block-start ${motionDurationMid},\n width ${motionDurationMid},\n height ${motionDurationMid},\n box-shadow ${motionDurationMid},\n outline ${motionDurationMid}\n `\n },\n '&:hover, &:active, &:focus': {\n '&::before': {\n insetInlineStart: calc(handleSizeHover).sub(handleSize).div(2).add(handleLineWidthHover).mul(-1).equal(),\n insetBlockStart: calc(handleSizeHover).sub(handleSize).div(2).add(handleLineWidthHover).mul(-1).equal(),\n width: calc(handleSizeHover).add(calc(handleLineWidthHover).mul(2)).equal(),\n height: calc(handleSizeHover).add(calc(handleLineWidthHover).mul(2)).equal()\n },\n '&::after': {\n boxShadow: `0 0 0 ${unit(handleLineWidthHover)} ${handleActiveColor}`,\n outline: `6px solid ${handleActiveOutlineColor}`,\n width: handleSizeHover,\n height: handleSizeHover,\n insetInlineStart: token.calc(handleSize).sub(handleSizeHover).div(2).equal(),\n insetBlockStart: token.calc(handleSize).sub(handleSizeHover).div(2).equal()\n }\n }\n },\n [`&-lock ${componentCls}-handle`]: {\n '&::before, &::after': {\n transition: 'none'\n }\n },\n [`${componentCls}-mark`]: {\n position: 'absolute',\n fontSize: token.fontSize\n },\n [`${componentCls}-mark-text`]: {\n position: 'absolute',\n display: 'inline-block',\n color: token.colorTextDescription,\n textAlign: 'center',\n wordBreak: 'keep-all',\n cursor: 'pointer',\n userSelect: 'none',\n '&-active': {\n color: token.colorText\n }\n },\n [`${componentCls}-step`]: {\n position: 'absolute',\n background: 'transparent',\n pointerEvents: 'none'\n },\n [`${componentCls}-dot`]: {\n position: 'absolute',\n width: dotSize,\n height: dotSize,\n backgroundColor: token.colorBgElevated,\n border: `${unit(handleLineWidth)} solid ${token.dotBorderColor}`,\n borderRadius: '50%',\n cursor: 'pointer',\n transition: `border-color ${token.motionDurationSlow}`,\n pointerEvents: 'auto',\n '&-active': {\n borderColor: token.dotActiveBorderColor\n }\n },\n [`&${componentCls}-disabled`]: {\n cursor: 'not-allowed',\n [`${componentCls}-rail`]: {\n backgroundColor: `${token.railBg} !important`\n },\n [`${componentCls}-track`]: {\n backgroundColor: `${token.trackBgDisabled} !important`\n },\n [`\n ${componentCls}-dot\n `]: {\n backgroundColor: token.colorBgElevated,\n borderColor: token.trackBgDisabled,\n boxShadow: 'none',\n cursor: 'not-allowed'\n },\n [`${componentCls}-handle::after`]: {\n backgroundColor: token.colorBgElevated,\n cursor: 'not-allowed',\n width: handleSize,\n height: handleSize,\n boxShadow: `0 0 0 ${unit(handleLineWidth)} ${handleColorDisabled}`,\n insetInlineStart: 0,\n insetBlockStart: 0\n },\n [`\n ${componentCls}-mark-text,\n ${componentCls}-dot\n `]: {\n cursor: `not-allowed !important`\n }\n },\n [`&-tooltip ${antCls}-tooltip-inner`]: {\n minWidth: 'unset'\n }\n })\n };\n};\n// ============================ Horizontal ============================\nconst genDirectionStyle = (token, horizontal) => {\n const {\n componentCls,\n railSize,\n handleSize,\n dotSize,\n marginFull,\n calc\n } = token;\n const railPadding = horizontal ? 'paddingBlock' : 'paddingInline';\n const full = horizontal ? 'width' : 'height';\n const part = horizontal ? 'height' : 'width';\n const handlePos = horizontal ? 'insetBlockStart' : 'insetInlineStart';\n const markInset = horizontal ? 'top' : 'insetInlineStart';\n const handlePosSize = calc(railSize).mul(3).sub(handleSize).div(2).equal();\n const draggableBorderSize = calc(handleSize).sub(railSize).div(2).equal();\n const draggableBorder = horizontal ? {\n borderWidth: `${unit(draggableBorderSize)} 0`,\n transform: `translateY(${unit(calc(draggableBorderSize).mul(-1).equal())})`\n } : {\n borderWidth: `0 ${unit(draggableBorderSize)}`,\n transform: `translateX(${unit(token.calc(draggableBorderSize).mul(-1).equal())})`\n };\n return {\n [railPadding]: railSize,\n [part]: calc(railSize).mul(3).equal(),\n [`${componentCls}-rail`]: {\n [full]: '100%',\n [part]: railSize\n },\n [`${componentCls}-track,${componentCls}-tracks`]: {\n [part]: railSize\n },\n [`${componentCls}-track-draggable`]: Object.assign({}, draggableBorder),\n [`${componentCls}-handle`]: {\n [handlePos]: handlePosSize\n },\n [`${componentCls}-mark`]: {\n // Reset all\n insetInlineStart: 0,\n top: 0,\n // https://github.com/ant-design/ant-design/issues/43731\n [markInset]: calc(railSize).mul(3).add(horizontal ? 0 : marginFull).equal(),\n [full]: '100%'\n },\n [`${componentCls}-step`]: {\n // Reset all\n insetInlineStart: 0,\n top: 0,\n [markInset]: railSize,\n [full]: '100%',\n [part]: railSize\n },\n [`${componentCls}-dot`]: {\n position: 'absolute',\n [handlePos]: calc(railSize).sub(dotSize).div(2).equal()\n }\n };\n};\n// ============================ Horizontal ============================\nconst genHorizontalStyle = token => {\n const {\n componentCls,\n marginPartWithMark\n } = token;\n return {\n [`${componentCls}-horizontal`]: Object.assign(Object.assign({}, genDirectionStyle(token, true)), {\n [`&${componentCls}-with-marks`]: {\n marginBottom: marginPartWithMark\n }\n })\n };\n};\n// ============================= Vertical =============================\nconst genVerticalStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [`${componentCls}-vertical`]: Object.assign(Object.assign({}, genDirectionStyle(token, false)), {\n height: '100%'\n })\n };\n};\n// ============================== Export ==============================\nexport const prepareComponentToken = token => {\n // Handle line width is always width-er 1px\n const increaseHandleWidth = 1;\n const controlSize = token.controlHeightLG / 4;\n const controlSizeHover = token.controlHeightSM / 2;\n const handleLineWidth = token.lineWidth + increaseHandleWidth;\n const handleLineWidthHover = token.lineWidth + increaseHandleWidth * 1.5;\n const handleActiveColor = token.colorPrimary;\n const handleActiveOutlineColor = new FastColor(handleActiveColor).setA(0.2).toRgbString();\n return {\n controlSize,\n railSize: 4,\n handleSize: controlSize,\n handleSizeHover: controlSizeHover,\n dotSize: 8,\n handleLineWidth,\n handleLineWidthHover,\n railBg: token.colorFillTertiary,\n railHoverBg: token.colorFillSecondary,\n trackBg: token.colorPrimaryBorder,\n trackHoverBg: token.colorPrimaryBorderHover,\n handleColor: token.colorPrimaryBorder,\n handleActiveColor,\n handleActiveOutlineColor,\n handleColorDisabled: new FastColor(token.colorTextDisabled).onBackground(token.colorBgContainer).toHexString(),\n dotBorderColor: token.colorBorderSecondary,\n dotActiveBorderColor: token.colorPrimaryBorder,\n trackBgDisabled: token.colorBgContainerDisabled\n };\n};\nexport default genStyleHooks('Slider', token => {\n const sliderToken = mergeToken(token, {\n marginPart: token.calc(token.controlHeight).sub(token.controlSize).div(2).equal(),\n marginFull: token.calc(token.controlSize).div(2).equal(),\n marginPartWithMark: token.calc(token.controlHeightLG).sub(token.controlSize).equal()\n });\n return [genBaseStyle(sliderToken), genHorizontalStyle(sliderToken), genVerticalStyle(sliderToken)];\n}, prepareComponentToken);","import * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nexport default function useRafLock() {\n const [state, setState] = React.useState(false);\n const rafRef = React.useRef(null);\n const cleanup = () => {\n raf.cancel(rafRef.current);\n };\n const setDelayState = nextState => {\n cleanup();\n if (nextState) {\n setState(nextState);\n } else {\n rafRef.current = raf(() => {\n setState(nextState);\n });\n }\n };\n React.useEffect(() => cleanup, []);\n return [state, setDelayState];\n}","\"use client\";\n\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 React from 'react';\nimport classNames from 'classnames';\nimport RcSlider from 'rc-slider';\nimport raf from \"rc-util/es/raf\";\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport SliderInternalContext from './Context';\nimport SliderTooltip from './SliderTooltip';\nimport useStyle from './style';\nimport useRafLock from './useRafLock';\nfunction getTipFormatter(tipFormatter, legacyTipFormatter) {\n if (tipFormatter || tipFormatter === null) {\n return tipFormatter;\n }\n if (legacyTipFormatter || legacyTipFormatter === null) {\n return legacyTipFormatter;\n }\n return val => typeof val === 'number' ? val.toString() : '';\n}\nconst Slider = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n const {\n prefixCls: customizePrefixCls,\n range,\n className,\n rootClassName,\n style,\n disabled,\n // Deprecated Props\n tooltipPrefixCls: legacyTooltipPrefixCls,\n tipFormatter: legacyTipFormatter,\n tooltipVisible: legacyTooltipVisible,\n getTooltipPopupContainer: legacyGetTooltipPopupContainer,\n tooltipPlacement: legacyTooltipPlacement,\n tooltip = {},\n onChangeComplete,\n classNames: sliderClassNames,\n styles\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"range\", \"className\", \"rootClassName\", \"style\", \"disabled\", \"tooltipPrefixCls\", \"tipFormatter\", \"tooltipVisible\", \"getTooltipPopupContainer\", \"tooltipPlacement\", \"tooltip\", \"onChangeComplete\", \"classNames\", \"styles\"]);\n const {\n vertical\n } = props;\n const {\n direction: contextDirection,\n slider,\n getPrefixCls,\n getPopupContainer\n } = React.useContext(ConfigContext);\n const contextDisabled = React.useContext(DisabledContext);\n const mergedDisabled = disabled !== null && disabled !== void 0 ? disabled : contextDisabled;\n // ============================= Context ==============================\n const {\n handleRender: contextHandleRender,\n direction: internalContextDirection\n } = React.useContext(SliderInternalContext);\n const mergedDirection = internalContextDirection || contextDirection;\n const isRTL = mergedDirection === 'rtl';\n // =============================== Open ===============================\n const [hoverOpen, setHoverOpen] = useRafLock();\n const [focusOpen, setFocusOpen] = useRafLock();\n const tooltipProps = Object.assign({}, tooltip);\n const {\n open: tooltipOpen,\n placement: tooltipPlacement,\n getPopupContainer: getTooltipPopupContainer,\n prefixCls: customizeTooltipPrefixCls,\n formatter: tipFormatter\n } = tooltipProps;\n const lockOpen = tooltipOpen !== null && tooltipOpen !== void 0 ? tooltipOpen : legacyTooltipVisible;\n const activeOpen = (hoverOpen || focusOpen) && lockOpen !== false;\n const mergedTipFormatter = getTipFormatter(tipFormatter, legacyTipFormatter);\n // ============================= Change ==============================\n const [dragging, setDragging] = useRafLock();\n const onInternalChangeComplete = nextValues => {\n onChangeComplete === null || onChangeComplete === void 0 ? void 0 : onChangeComplete(nextValues);\n setDragging(false);\n };\n // ============================ Placement ============================\n const getTooltipPlacement = (placement, vert) => {\n if (placement) {\n return placement;\n }\n if (!vert) {\n return 'top';\n }\n return isRTL ? 'left' : 'right';\n };\n // ============================== Style ===============================\n const prefixCls = getPrefixCls('slider', customizePrefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls);\n const rootClassNames = classNames(className, slider === null || slider === void 0 ? void 0 : slider.className, (_a = slider === null || slider === void 0 ? void 0 : slider.classNames) === null || _a === void 0 ? void 0 : _a.root, sliderClassNames === null || sliderClassNames === void 0 ? void 0 : sliderClassNames.root, rootClassName, {\n [`${prefixCls}-rtl`]: isRTL,\n [`${prefixCls}-lock`]: dragging\n }, hashId, cssVarCls);\n // make reverse default on rtl direction\n if (isRTL && !restProps.vertical) {\n restProps.reverse = !restProps.reverse;\n }\n // ============================= Warning ==============================\n // Warning for deprecated usage\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('Slider');\n [['tooltipPrefixCls', 'prefixCls'], ['getTooltipPopupContainer', 'getPopupContainer'], ['tipFormatter', 'formatter'], ['tooltipPlacement', 'placement'], ['tooltipVisible', 'open']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n warning.deprecated(!(deprecatedName in props), deprecatedName, `tooltip.${newName}`);\n });\n }\n // ============================== Handle ==============================\n React.useEffect(() => {\n const onMouseUp = () => {\n // Delay for 1 frame to make the click to enable hide tooltip\n // even when the handle is focused\n raf(() => {\n setFocusOpen(false);\n }, 1);\n };\n document.addEventListener('mouseup', onMouseUp);\n return () => {\n document.removeEventListener('mouseup', onMouseUp);\n };\n }, []);\n const useActiveTooltipHandle = range && !lockOpen;\n const handleRender = contextHandleRender || ((node, info) => {\n const {\n index\n } = info;\n const nodeProps = node.props;\n function proxyEvent(eventName, event, triggerRestPropsEvent) {\n var _a, _b, _c, _d;\n if (triggerRestPropsEvent) {\n (_b = (_a = restProps)[eventName]) === null || _b === void 0 ? void 0 : _b.call(_a, event);\n }\n (_d = (_c = nodeProps)[eventName]) === null || _d === void 0 ? void 0 : _d.call(_c, event);\n }\n const passedProps = Object.assign(Object.assign({}, nodeProps), {\n onMouseEnter: e => {\n setHoverOpen(true);\n proxyEvent('onMouseEnter', e);\n },\n onMouseLeave: e => {\n setHoverOpen(false);\n proxyEvent('onMouseLeave', e);\n },\n onMouseDown: e => {\n setFocusOpen(true);\n setDragging(true);\n proxyEvent('onMouseDown', e);\n },\n onFocus: e => {\n var _a;\n setFocusOpen(true);\n (_a = restProps.onFocus) === null || _a === void 0 ? void 0 : _a.call(restProps, e);\n proxyEvent('onFocus', e, true);\n },\n onBlur: e => {\n var _a;\n setFocusOpen(false);\n (_a = restProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(restProps, e);\n proxyEvent('onBlur', e, true);\n }\n });\n const cloneNode = /*#__PURE__*/React.cloneElement(node, passedProps);\n const open = (!!lockOpen || activeOpen) && mergedTipFormatter !== null;\n // Wrap on handle with Tooltip when is single mode or multiple with all show tooltip\n if (!useActiveTooltipHandle) {\n return /*#__PURE__*/React.createElement(SliderTooltip, Object.assign({}, tooltipProps, {\n prefixCls: getPrefixCls('tooltip', customizeTooltipPrefixCls !== null && customizeTooltipPrefixCls !== void 0 ? customizeTooltipPrefixCls : legacyTooltipPrefixCls),\n title: mergedTipFormatter ? mergedTipFormatter(info.value) : '',\n open: open,\n placement: getTooltipPlacement(tooltipPlacement !== null && tooltipPlacement !== void 0 ? tooltipPlacement : legacyTooltipPlacement, vertical),\n key: index,\n classNames: {\n root: `${prefixCls}-tooltip`\n },\n getPopupContainer: getTooltipPopupContainer || legacyGetTooltipPopupContainer || getPopupContainer\n }), cloneNode);\n }\n return cloneNode;\n });\n // ========================== Active Handle ===========================\n const activeHandleRender = useActiveTooltipHandle ? (handle, info) => {\n const cloneNode = /*#__PURE__*/React.cloneElement(handle, {\n style: Object.assign(Object.assign({}, handle.props.style), {\n visibility: 'hidden'\n })\n });\n return /*#__PURE__*/React.createElement(SliderTooltip, Object.assign({}, tooltipProps, {\n prefixCls: getPrefixCls('tooltip', customizeTooltipPrefixCls !== null && customizeTooltipPrefixCls !== void 0 ? customizeTooltipPrefixCls : legacyTooltipPrefixCls),\n title: mergedTipFormatter ? mergedTipFormatter(info.value) : '',\n open: mergedTipFormatter !== null && activeOpen,\n placement: getTooltipPlacement(tooltipPlacement !== null && tooltipPlacement !== void 0 ? tooltipPlacement : legacyTooltipPlacement, vertical),\n key: \"tooltip\",\n classNames: {\n root: `${prefixCls}-tooltip`\n },\n getPopupContainer: getTooltipPopupContainer || legacyGetTooltipPopupContainer || getPopupContainer,\n draggingDelete: info.draggingDelete\n }), cloneNode);\n } : undefined;\n // ============================== Render ==============================\n const rootStyle = Object.assign(Object.assign(Object.assign(Object.assign({}, (_b = slider === null || slider === void 0 ? void 0 : slider.styles) === null || _b === void 0 ? void 0 : _b.root), slider === null || slider === void 0 ? void 0 : slider.style), styles === null || styles === void 0 ? void 0 : styles.root), style);\n const mergedTracks = Object.assign(Object.assign({}, (_c = slider === null || slider === void 0 ? void 0 : slider.styles) === null || _c === void 0 ? void 0 : _c.tracks), styles === null || styles === void 0 ? void 0 : styles.tracks);\n const mergedTracksClassNames = classNames((_d = slider === null || slider === void 0 ? void 0 : slider.classNames) === null || _d === void 0 ? void 0 : _d.tracks, sliderClassNames === null || sliderClassNames === void 0 ? void 0 : sliderClassNames.tracks);\n return wrapCSSVar(\n /*#__PURE__*/\n // @ts-ignore\n React.createElement(RcSlider, Object.assign({}, restProps, {\n classNames: Object.assign({\n handle: classNames((_e = slider === null || slider === void 0 ? void 0 : slider.classNames) === null || _e === void 0 ? void 0 : _e.handle, sliderClassNames === null || sliderClassNames === void 0 ? void 0 : sliderClassNames.handle),\n rail: classNames((_f = slider === null || slider === void 0 ? void 0 : slider.classNames) === null || _f === void 0 ? void 0 : _f.rail, sliderClassNames === null || sliderClassNames === void 0 ? void 0 : sliderClassNames.rail),\n track: classNames((_g = slider === null || slider === void 0 ? void 0 : slider.classNames) === null || _g === void 0 ? void 0 : _g.track, sliderClassNames === null || sliderClassNames === void 0 ? void 0 : sliderClassNames.track)\n }, mergedTracksClassNames ? {\n tracks: mergedTracksClassNames\n } : {}),\n styles: Object.assign({\n handle: Object.assign(Object.assign({}, (_h = slider === null || slider === void 0 ? void 0 : slider.styles) === null || _h === void 0 ? void 0 : _h.handle), styles === null || styles === void 0 ? void 0 : styles.handle),\n rail: Object.assign(Object.assign({}, (_j = slider === null || slider === void 0 ? void 0 : slider.styles) === null || _j === void 0 ? void 0 : _j.rail), styles === null || styles === void 0 ? void 0 : styles.rail),\n track: Object.assign(Object.assign({}, (_k = slider === null || slider === void 0 ? void 0 : slider.styles) === null || _k === void 0 ? void 0 : _k.track), styles === null || styles === void 0 ? void 0 : styles.track)\n }, Object.keys(mergedTracks).length ? {\n tracks: mergedTracks\n } : {}),\n step: restProps.step,\n range: range,\n className: rootClassNames,\n style: rootStyle,\n disabled: mergedDisabled,\n ref: ref,\n prefixCls: prefixCls,\n handleRender: handleRender,\n activeHandleRender: activeHandleRender,\n onChangeComplete: onInternalChangeComplete\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Slider.displayName = 'Slider';\n}\nexport default Slider;","\"use client\";\n\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 classNames from 'classnames';\nimport { UnstableContext } from 'rc-slider';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport Slider from '../../slider';\nimport SliderInternalContext from '../../slider/Context';\nimport { getGradientPercentColor } from '../util';\nexport const GradientColorSlider = props => {\n const {\n prefixCls,\n colors,\n type,\n color,\n range = false,\n className,\n activeIndex,\n onActive,\n onDragStart,\n onDragChange,\n onKeyDelete\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"colors\", \"type\", \"color\", \"range\", \"className\", \"activeIndex\", \"onActive\", \"onDragStart\", \"onDragChange\", \"onKeyDelete\"]);\n const sliderProps = Object.assign(Object.assign({}, restProps), {\n track: false\n });\n // ========================== Background ==========================\n const linearCss = React.useMemo(() => {\n const colorsStr = colors.map(c => `${c.color} ${c.percent}%`).join(', ');\n return `linear-gradient(90deg, ${colorsStr})`;\n }, [colors]);\n const pointColor = React.useMemo(() => {\n if (!color || !type) {\n return null;\n }\n if (type === 'alpha') {\n return color.toRgbString();\n }\n return `hsl(${color.toHsb().h}, 100%, 50%)`;\n }, [color, type]);\n // ======================= Context: Slider ========================\n const onInternalDragStart = useEvent(onDragStart);\n const onInternalDragChange = useEvent(onDragChange);\n const unstableContext = React.useMemo(() => ({\n onDragStart: onInternalDragStart,\n onDragChange: onInternalDragChange\n }), []);\n // ======================= Context: Render ========================\n const handleRender = useEvent((ori, info) => {\n const {\n onFocus,\n style,\n className: handleCls,\n onKeyDown\n } = ori.props;\n // Point Color\n const mergedStyle = Object.assign({}, style);\n if (type === 'gradient') {\n mergedStyle.background = getGradientPercentColor(colors, info.value);\n }\n return /*#__PURE__*/React.cloneElement(ori, {\n onFocus: e => {\n onActive === null || onActive === void 0 ? void 0 : onActive(info.index);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n },\n style: mergedStyle,\n className: classNames(handleCls, {\n [`${prefixCls}-slider-handle-active`]: activeIndex === info.index\n }),\n onKeyDown: e => {\n if ((e.key === 'Delete' || e.key === 'Backspace') && onKeyDelete) {\n onKeyDelete(info.index);\n }\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n }\n });\n });\n const sliderContext = React.useMemo(() => ({\n direction: 'ltr',\n handleRender\n }), []);\n // ============================ Render ============================\n return /*#__PURE__*/React.createElement(SliderInternalContext.Provider, {\n value: sliderContext\n }, /*#__PURE__*/React.createElement(UnstableContext.Provider, {\n value: unstableContext\n }, /*#__PURE__*/React.createElement(Slider, Object.assign({}, sliderProps, {\n className: classNames(className, `${prefixCls}-slider`),\n tooltip: {\n open: false\n },\n range: {\n editable: range,\n minCount: 2\n },\n styles: {\n rail: {\n background: linearCss\n },\n handle: pointColor ? {\n background: pointColor\n } : {}\n },\n classNames: {\n rail: `${prefixCls}-slider-rail`,\n handle: `${prefixCls}-slider-handle`\n }\n }))));\n};\nconst SingleColorSlider = props => {\n const {\n value,\n onChange,\n onChangeComplete\n } = props;\n const singleOnChange = v => onChange(v[0]);\n const singleOnChangeComplete = v => onChangeComplete(v[0]);\n return /*#__PURE__*/React.createElement(GradientColorSlider, Object.assign({}, props, {\n value: [value],\n onChange: singleOnChange,\n onChangeComplete: singleOnChangeComplete\n }));\n};\nexport default SingleColorSlider;","\"use client\";\n\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport { AggregationColor } from '../../color';\nimport { getGradientPercentColor } from '../../util';\nimport { GradientColorSlider } from '../ColorSlider';\nfunction sortColors(colors) {\n return _toConsumableArray(colors).sort((a, b) => a.percent - b.percent);\n}\n/**\n * GradientColorBar will auto show when the mode is `gradient`.\n */\nconst GradientColorBar = props => {\n const {\n prefixCls,\n mode,\n onChange,\n onChangeComplete,\n onActive,\n activeIndex,\n onGradientDragging,\n colors\n } = props;\n const isGradient = mode === 'gradient';\n // ============================= Colors =============================\n const colorList = React.useMemo(() => colors.map(info => ({\n percent: info.percent,\n color: info.color.toRgbString()\n })), [colors]);\n const values = React.useMemo(() => colorList.map(info => info.percent), [colorList]);\n // ============================== Drag ==============================\n const colorsRef = React.useRef(colorList);\n // Record current colors\n const onDragStart = _ref => {\n let {\n rawValues,\n draggingIndex,\n draggingValue\n } = _ref;\n if (rawValues.length > colorList.length) {\n // Add new node\n const newPointColor = getGradientPercentColor(colorList, draggingValue);\n const nextColors = _toConsumableArray(colorList);\n nextColors.splice(draggingIndex, 0, {\n percent: draggingValue,\n color: newPointColor\n });\n colorsRef.current = nextColors;\n } else {\n colorsRef.current = colorList;\n }\n onGradientDragging(true);\n onChange(new AggregationColor(sortColors(colorsRef.current)), true);\n };\n // Adjust color when dragging\n const onDragChange = _ref2 => {\n let {\n deleteIndex,\n draggingIndex,\n draggingValue\n } = _ref2;\n let nextColors = _toConsumableArray(colorsRef.current);\n if (deleteIndex !== -1) {\n nextColors.splice(deleteIndex, 1);\n } else {\n nextColors[draggingIndex] = Object.assign(Object.assign({}, nextColors[draggingIndex]), {\n percent: draggingValue\n });\n nextColors = sortColors(nextColors);\n }\n onChange(new AggregationColor(nextColors), true);\n };\n // ============================== Key ===============================\n const onKeyDelete = index => {\n const nextColors = _toConsumableArray(colorList);\n nextColors.splice(index, 1);\n const nextColor = new AggregationColor(nextColors);\n onChange(nextColor);\n onChangeComplete(nextColor);\n };\n // ============================= Change =============================\n const onInternalChangeComplete = nextValues => {\n onChangeComplete(new AggregationColor(colorList));\n // Reset `activeIndex` if out of range\n if (activeIndex >= nextValues.length) {\n onActive(nextValues.length - 1);\n }\n onGradientDragging(false);\n };\n // ============================= Render =============================\n if (!isGradient) {\n return null;\n }\n return /*#__PURE__*/React.createElement(GradientColorSlider, {\n min: 0,\n max: 100,\n prefixCls: prefixCls,\n className: `${prefixCls}-gradient-slider`,\n colors: colorList,\n color: null,\n value: values,\n range: true,\n onChangeComplete: onInternalChangeComplete,\n disabled: false,\n type: \"gradient\",\n // Active\n activeIndex: activeIndex,\n onActive: onActive,\n // Drag\n onDragStart: onDragStart,\n onDragChange: onDragChange,\n onKeyDelete: onKeyDelete\n });\n};\nexport default /*#__PURE__*/React.memo(GradientColorBar);","\"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 React, { useContext } from 'react';\nimport RcColorPicker from '@rc-component/color-picker';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Segmented from '../../../segmented';\nimport { AggregationColor } from '../../color';\nimport { PanelPickerContext } from '../../context';\nimport { genAlphaColor, generateColor } from '../../util';\nimport ColorClear from '../ColorClear';\nimport ColorInput from '../ColorInput';\nimport ColorSlider from '../ColorSlider';\nimport GradientColorBar from './GradientColorBar';\nconst components = {\n slider: ColorSlider\n};\nconst PanelPicker = () => {\n const panelPickerContext = useContext(PanelPickerContext);\n const {\n mode,\n onModeChange,\n modeOptions,\n prefixCls,\n allowClear,\n value,\n disabledAlpha,\n onChange,\n onClear,\n onChangeComplete,\n activeIndex,\n gradientDragging\n } = panelPickerContext,\n injectProps = __rest(panelPickerContext, [\"mode\", \"onModeChange\", \"modeOptions\", \"prefixCls\", \"allowClear\", \"value\", \"disabledAlpha\", \"onChange\", \"onClear\", \"onChangeComplete\", \"activeIndex\", \"gradientDragging\"]);\n // ============================ Colors ============================\n const colors = React.useMemo(() => {\n if (!value.cleared) {\n return value.getColors();\n }\n return [{\n percent: 0,\n color: new AggregationColor('')\n }, {\n percent: 100,\n color: new AggregationColor('')\n }];\n }, [value]);\n // ========================= Single Color =========================\n const isSingle = !value.isGradient();\n // We cache the point color in case user drag the gradient point across another one\n const [lockedColor, setLockedColor] = React.useState(value);\n // Use layout effect here since `useEffect` will cause a blink when mouseDown\n useLayoutEffect(() => {\n var _a;\n if (!isSingle) {\n setLockedColor((_a = colors[activeIndex]) === null || _a === void 0 ? void 0 : _a.color);\n }\n }, [gradientDragging, activeIndex]);\n const activeColor = React.useMemo(() => {\n var _a;\n if (isSingle) {\n return value;\n }\n // Use cache when dragging. User can not operation panel when dragging.\n if (gradientDragging) {\n return lockedColor;\n }\n return (_a = colors[activeIndex]) === null || _a === void 0 ? void 0 : _a.color;\n }, [value, activeIndex, isSingle, lockedColor, gradientDragging]);\n // ========================= Picker Color =========================\n const [pickerColor, setPickerColor] = React.useState(activeColor);\n const [forceSync, setForceSync] = React.useState(0);\n const mergedPickerColor = (pickerColor === null || pickerColor === void 0 ? void 0 : pickerColor.equals(activeColor)) ? activeColor : pickerColor;\n useLayoutEffect(() => {\n setPickerColor(activeColor);\n }, [forceSync, activeColor === null || activeColor === void 0 ? void 0 : activeColor.toHexString()]);\n // ============================ Change ============================\n const fillColor = (nextColor, info) => {\n let submitColor = generateColor(nextColor);\n // Fill alpha color to 100% if origin is cleared color\n if (value.cleared) {\n const rgb = submitColor.toRgb();\n // Auto fill color if origin is `0/0/0` to enhance user experience\n if (!rgb.r && !rgb.g && !rgb.b && info) {\n const {\n type: infoType,\n value: infoValue = 0\n } = info;\n submitColor = new AggregationColor({\n h: infoType === 'hue' ? infoValue : 0,\n s: 1,\n b: 1,\n a: infoType === 'alpha' ? infoValue / 100 : 1\n });\n } else {\n submitColor = genAlphaColor(submitColor);\n }\n }\n if (mode === 'single') {\n return submitColor;\n }\n const nextColors = _toConsumableArray(colors);\n nextColors[activeIndex] = Object.assign(Object.assign({}, nextColors[activeIndex]), {\n color: submitColor\n });\n return new AggregationColor(nextColors);\n };\n const onPickerChange = (colorValue, fromPicker, info) => {\n const nextColor = fillColor(colorValue, info);\n setPickerColor(nextColor.isGradient() ? nextColor.getColors()[activeIndex].color : nextColor);\n onChange(nextColor, fromPicker);\n };\n const onInternalChangeComplete = (nextColor, info) => {\n // Trigger complete event\n onChangeComplete(fillColor(nextColor, info));\n // Back of origin color in case in controlled\n // This will set after `onChangeComplete` to avoid `setState` trigger rerender\n // which will make `fillColor` get wrong `color.cleared` state\n setForceSync(ori => ori + 1);\n };\n const onInputChange = colorValue => {\n onChange(fillColor(colorValue));\n };\n // ============================ Render ============================\n // Operation bar\n let operationNode = null;\n const showMode = modeOptions.length > 1;\n if (allowClear || showMode) {\n operationNode = /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-operation`\n }, showMode && (/*#__PURE__*/React.createElement(Segmented, {\n size: \"small\",\n options: modeOptions,\n value: mode,\n onChange: onModeChange\n })), /*#__PURE__*/React.createElement(ColorClear, Object.assign({\n prefixCls: prefixCls,\n value: value,\n onChange: clearColor => {\n onChange(clearColor);\n onClear === null || onClear === void 0 ? void 0 : onClear();\n }\n }, injectProps)));\n }\n // Return\n return /*#__PURE__*/React.createElement(React.Fragment, null, operationNode, /*#__PURE__*/React.createElement(GradientColorBar, Object.assign({}, panelPickerContext, {\n colors: colors\n })), /*#__PURE__*/React.createElement(RcColorPicker, {\n prefixCls: prefixCls,\n value: mergedPickerColor === null || mergedPickerColor === void 0 ? void 0 : mergedPickerColor.toHsb(),\n disabledAlpha: disabledAlpha,\n onChange: (colorValue, info) => {\n onPickerChange(colorValue, true, info);\n },\n onChangeComplete: (colorValue, info) => {\n onInternalChangeComplete(colorValue, info);\n },\n components: components\n }), /*#__PURE__*/React.createElement(ColorInput, Object.assign({\n value: activeColor,\n onChange: onInputChange,\n prefixCls: prefixCls,\n disabledAlpha: disabledAlpha\n }, injectProps)));\n};\nexport default PanelPicker;","\"use client\";\n\nimport React, { useContext } from 'react';\nimport { PanelPresetsContext } from '../context';\nimport ColorPresets from './ColorPresets';\nconst PanelPresets = () => {\n const {\n prefixCls,\n value,\n presets,\n onChange\n } = useContext(PanelPresetsContext);\n return Array.isArray(presets) ? (/*#__PURE__*/React.createElement(ColorPresets, {\n value: value,\n presets: presets,\n prefixCls: prefixCls,\n onChange: onChange\n })) : null;\n};\nexport default PanelPresets;","\"use client\";\n\nimport React from 'react';\nimport Divider from '../divider';\nimport PanelPicker from './components/PanelPicker';\nimport PanelPresets from './components/PanelPresets';\nimport { PanelPickerContext, PanelPresetsContext } from './context';\nconst ColorPickerPanel = props => {\n const {\n prefixCls,\n presets,\n panelRender,\n value,\n onChange,\n onClear,\n allowClear,\n disabledAlpha,\n mode,\n onModeChange,\n modeOptions,\n onChangeComplete,\n activeIndex,\n onActive,\n format,\n onFormatChange,\n gradientDragging,\n onGradientDragging,\n disabledFormat\n } = props;\n const colorPickerPanelPrefixCls = `${prefixCls}-inner`;\n // ===================== Context ======================\n const panelContext = React.useMemo(() => ({\n prefixCls,\n value,\n onChange,\n onClear,\n allowClear,\n disabledAlpha,\n mode,\n onModeChange,\n modeOptions,\n onChangeComplete,\n activeIndex,\n onActive,\n format,\n onFormatChange,\n gradientDragging,\n onGradientDragging,\n disabledFormat\n }), [prefixCls, value, onChange, onClear, allowClear, disabledAlpha, mode, onModeChange, modeOptions, onChangeComplete, activeIndex, onActive, format, onFormatChange, gradientDragging, onGradientDragging, disabledFormat]);\n const presetContext = React.useMemo(() => ({\n prefixCls,\n value,\n presets,\n onChange\n }), [prefixCls, value, presets, onChange]);\n // ====================== Render ======================\n const innerPanel = /*#__PURE__*/React.createElement(\"div\", {\n className: `${colorPickerPanelPrefixCls}-content`\n }, /*#__PURE__*/React.createElement(PanelPicker, null), Array.isArray(presets) && /*#__PURE__*/React.createElement(Divider, null), /*#__PURE__*/React.createElement(PanelPresets, null));\n return /*#__PURE__*/React.createElement(PanelPickerContext.Provider, {\n value: panelContext\n }, /*#__PURE__*/React.createElement(PanelPresetsContext.Provider, {\n value: presetContext\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: colorPickerPanelPrefixCls\n }, typeof panelRender === 'function' ? panelRender(innerPanel, {\n components: {\n Picker: PanelPicker,\n Presets: PanelPresets\n }\n }) : innerPanel)));\n};\nif (process.env.NODE_ENV !== 'production') {\n ColorPickerPanel.displayName = 'ColorPickerPanel';\n}\nexport default ColorPickerPanel;","\"use client\";\n\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 React, { forwardRef, useMemo } from 'react';\nimport { ColorBlock } from '@rc-component/color-picker';\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport { useLocale } from '../../locale';\nimport { getColorAlpha } from '../util';\nimport ColorClear from './ColorClear';\nconst ColorTrigger = /*#__PURE__*/forwardRef((props, ref) => {\n const {\n color,\n prefixCls,\n open,\n disabled,\n format,\n className,\n showText,\n activeIndex\n } = props,\n rest = __rest(props, [\"color\", \"prefixCls\", \"open\", \"disabled\", \"format\", \"className\", \"showText\", \"activeIndex\"]);\n const colorTriggerPrefixCls = `${prefixCls}-trigger`;\n const colorTextPrefixCls = `${colorTriggerPrefixCls}-text`;\n const colorTextCellPrefixCls = `${colorTextPrefixCls}-cell`;\n const [locale] = useLocale('ColorPicker');\n // ============================== Text ==============================\n const desc = React.useMemo(() => {\n if (!showText) {\n return '';\n }\n if (typeof showText === 'function') {\n return showText(color);\n }\n if (color.cleared) {\n return locale.transparent;\n }\n if (color.isGradient()) {\n return color.getColors().map((c, index) => {\n const inactive = activeIndex !== -1 && activeIndex !== index;\n return /*#__PURE__*/React.createElement(\"span\", {\n key: index,\n className: classNames(colorTextCellPrefixCls, inactive && `${colorTextCellPrefixCls}-inactive`)\n }, c.color.toRgbString(), \" \", c.percent, \"%\");\n });\n }\n const hexString = color.toHexString().toUpperCase();\n const alpha = getColorAlpha(color);\n switch (format) {\n case 'rgb':\n return color.toRgbString();\n case 'hsb':\n return color.toHsbString();\n // case 'hex':\n default:\n return alpha < 100 ? `${hexString.slice(0, 7)},${alpha}%` : hexString;\n }\n }, [color, format, showText, activeIndex]);\n // ============================= Render =============================\n const containerNode = useMemo(() => color.cleared ? (/*#__PURE__*/React.createElement(ColorClear, {\n prefixCls: prefixCls\n })) : (/*#__PURE__*/React.createElement(ColorBlock, {\n prefixCls: prefixCls,\n color: color.toCssString()\n })), [color, prefixCls]);\n return /*#__PURE__*/React.createElement(\"div\", Object.assign({\n ref: ref,\n className: classNames(colorTriggerPrefixCls, className, {\n [`${colorTriggerPrefixCls}-active`]: open,\n [`${colorTriggerPrefixCls}-disabled`]: disabled\n })\n }, pickAttrs(rest)), containerNode, showText && /*#__PURE__*/React.createElement(\"div\", {\n className: colorTextPrefixCls\n }, desc));\n});\nexport default ColorTrigger;","import { unit } from '@ant-design/cssinjs';\n/**\n * @private Internal usage only\n */\nexport const getTransBg = (size, colorFill) => ({\n backgroundImage: `conic-gradient(${colorFill} 0 25%, transparent 0 50%, ${colorFill} 0 75%, transparent 0)`,\n backgroundSize: `${size} ${size}`\n});\nconst genColorBlockStyle = (token, size) => {\n const {\n componentCls,\n borderRadiusSM,\n colorPickerInsetShadow,\n lineWidth,\n colorFillSecondary\n } = token;\n return {\n [`${componentCls}-color-block`]: Object.assign(Object.assign({\n position: 'relative',\n borderRadius: borderRadiusSM,\n width: size,\n height: size,\n boxShadow: colorPickerInsetShadow,\n flex: 'none'\n }, getTransBg('50%', token.colorFillSecondary)), {\n [`${componentCls}-color-block-inner`]: {\n width: '100%',\n height: '100%',\n boxShadow: `inset 0 0 0 ${unit(lineWidth)} ${colorFillSecondary}`,\n borderRadius: 'inherit'\n }\n })\n };\n};\nexport default genColorBlockStyle;","import { unit } from '@ant-design/cssinjs';\nconst genInputStyle = token => {\n const {\n componentCls,\n antCls,\n fontSizeSM,\n lineHeightSM,\n colorPickerAlphaInputWidth,\n marginXXS,\n paddingXXS,\n controlHeightSM,\n marginXS,\n fontSizeIcon,\n paddingXS,\n colorTextPlaceholder,\n colorPickerInputNumberHandleWidth,\n lineWidth\n } = token;\n return {\n [`${componentCls}-input-container`]: {\n display: 'flex',\n [`${componentCls}-steppers${antCls}-input-number`]: {\n fontSize: fontSizeSM,\n lineHeight: lineHeightSM,\n [`${antCls}-input-number-input`]: {\n paddingInlineStart: paddingXXS,\n paddingInlineEnd: 0\n },\n [`${antCls}-input-number-handler-wrap`]: {\n width: colorPickerInputNumberHandleWidth\n }\n },\n [`${componentCls}-steppers${componentCls}-alpha-input`]: {\n flex: `0 0 ${unit(colorPickerAlphaInputWidth)}`,\n marginInlineStart: marginXXS\n },\n [`${componentCls}-format-select${antCls}-select`]: {\n marginInlineEnd: marginXS,\n width: 'auto',\n '&-single': {\n [`${antCls}-select-selector`]: {\n padding: 0,\n border: 0\n },\n [`${antCls}-select-arrow`]: {\n insetInlineEnd: 0\n },\n [`${antCls}-select-selection-item`]: {\n paddingInlineEnd: token.calc(fontSizeIcon).add(marginXXS).equal(),\n fontSize: fontSizeSM,\n lineHeight: unit(controlHeightSM)\n },\n [`${antCls}-select-item-option-content`]: {\n fontSize: fontSizeSM,\n lineHeight: lineHeightSM\n },\n [`${antCls}-select-dropdown`]: {\n [`${antCls}-select-item`]: {\n minHeight: 'auto'\n }\n }\n }\n },\n [`${componentCls}-input`]: {\n gap: marginXXS,\n alignItems: 'center',\n flex: 1,\n width: 0,\n [`${componentCls}-hsb-input,${componentCls}-rgb-input`]: {\n display: 'flex',\n gap: marginXXS,\n alignItems: 'center'\n },\n [`${componentCls}-steppers`]: {\n flex: 1\n },\n [`${componentCls}-hex-input${antCls}-input-affix-wrapper`]: {\n flex: 1,\n padding: `0 ${unit(paddingXS)}`,\n [`${antCls}-input`]: {\n fontSize: fontSizeSM,\n textTransform: 'uppercase',\n lineHeight: unit(token.calc(controlHeightSM).sub(token.calc(lineWidth).mul(2)).equal())\n },\n [`${antCls}-input-prefix`]: {\n color: colorTextPlaceholder\n }\n }\n }\n }\n };\n};\nexport default genInputStyle;","import { unit } from '@ant-design/cssinjs';\nconst genPickerStyle = token => {\n const {\n componentCls,\n controlHeightLG,\n borderRadiusSM,\n colorPickerInsetShadow,\n marginSM,\n colorBgElevated,\n colorFillSecondary,\n lineWidthBold,\n colorPickerHandlerSize\n } = token;\n return {\n userSelect: 'none',\n [`${componentCls}-select`]: {\n [`${componentCls}-palette`]: {\n minHeight: token.calc(controlHeightLG).mul(4).equal(),\n overflow: 'hidden',\n borderRadius: borderRadiusSM\n },\n [`${componentCls}-saturation`]: {\n position: 'absolute',\n borderRadius: 'inherit',\n boxShadow: colorPickerInsetShadow,\n inset: 0\n },\n marginBottom: marginSM\n },\n // ======================== Panel =========================\n [`${componentCls}-handler`]: {\n width: colorPickerHandlerSize,\n height: colorPickerHandlerSize,\n border: `${unit(lineWidthBold)} solid ${colorBgElevated}`,\n position: 'relative',\n borderRadius: '50%',\n cursor: 'pointer',\n boxShadow: `${colorPickerInsetShadow}, 0 0 0 1px ${colorFillSecondary}`\n }\n };\n};\nexport default genPickerStyle;","import { unit } from '@ant-design/cssinjs';\nconst genPresetsStyle = token => {\n const {\n componentCls,\n antCls,\n colorTextQuaternary,\n paddingXXS,\n colorPickerPresetColorSize,\n fontSizeSM,\n colorText,\n lineHeightSM,\n lineWidth,\n borderRadius,\n colorFill,\n colorWhite,\n marginXXS,\n paddingXS,\n fontHeightSM\n } = token;\n return {\n [`${componentCls}-presets`]: {\n [`${antCls}-collapse-item > ${antCls}-collapse-header`]: {\n padding: 0,\n [`${antCls}-collapse-expand-icon`]: {\n height: fontHeightSM,\n color: colorTextQuaternary,\n paddingInlineEnd: paddingXXS\n }\n },\n [`${antCls}-collapse`]: {\n display: 'flex',\n flexDirection: 'column',\n gap: marginXXS\n },\n [`${antCls}-collapse-item > ${antCls}-collapse-content > ${antCls}-collapse-content-box`]: {\n padding: `${unit(paddingXS)} 0`\n },\n '&-label': {\n fontSize: fontSizeSM,\n color: colorText,\n lineHeight: lineHeightSM\n },\n '&-items': {\n display: 'flex',\n flexWrap: 'wrap',\n gap: token.calc(marginXXS).mul(1.5).equal(),\n [`${componentCls}-presets-color`]: {\n position: 'relative',\n cursor: 'pointer',\n width: colorPickerPresetColorSize,\n height: colorPickerPresetColorSize,\n '&::before': {\n content: '\"\"',\n pointerEvents: 'none',\n width: token.calc(colorPickerPresetColorSize).add(token.calc(lineWidth).mul(4)).equal(),\n height: token.calc(colorPickerPresetColorSize).add(token.calc(lineWidth).mul(4)).equal(),\n position: 'absolute',\n top: token.calc(lineWidth).mul(-2).equal(),\n insetInlineStart: token.calc(lineWidth).mul(-2).equal(),\n borderRadius,\n border: `${unit(lineWidth)} solid transparent`,\n transition: `border-color ${token.motionDurationMid} ${token.motionEaseInBack}`\n },\n '&:hover::before': {\n borderColor: colorFill\n },\n '&::after': {\n boxSizing: 'border-box',\n position: 'absolute',\n top: '50%',\n insetInlineStart: '21.5%',\n display: 'table',\n width: token.calc(colorPickerPresetColorSize).div(13).mul(5).equal(),\n height: token.calc(colorPickerPresetColorSize).div(13).mul(8).equal(),\n border: `${unit(token.lineWidthBold)} solid ${token.colorWhite}`,\n borderTop: 0,\n borderInlineStart: 0,\n transform: 'rotate(45deg) scale(0) translate(-50%,-50%)',\n opacity: 0,\n content: '\"\"',\n transition: `all ${token.motionDurationFast} ${token.motionEaseInBack}, opacity ${token.motionDurationFast}`\n },\n [`&${componentCls}-presets-color-checked`]: {\n '&::after': {\n opacity: 1,\n borderColor: colorWhite,\n transform: 'rotate(45deg) scale(1) translate(-50%,-50%)',\n transition: `transform ${token.motionDurationMid} ${token.motionEaseOutBack} ${token.motionDurationFast}`\n },\n [`&${componentCls}-presets-color-bright`]: {\n '&::after': {\n borderColor: 'rgba(0, 0, 0, 0.45)'\n }\n }\n }\n }\n },\n '&-empty': {\n fontSize: fontSizeSM,\n color: colorTextQuaternary\n }\n }\n };\n};\nexport default genPresetsStyle;","import { unit } from '@ant-design/cssinjs';\nimport { getTransBg } from './color-block';\nconst genSliderStyle = token => {\n const {\n componentCls,\n colorPickerInsetShadow,\n colorBgElevated,\n colorFillSecondary,\n lineWidthBold,\n colorPickerHandlerSizeSM,\n colorPickerSliderHeight,\n marginSM,\n marginXS\n } = token;\n const handleInnerSize = token.calc(colorPickerHandlerSizeSM).sub(token.calc(lineWidthBold).mul(2).equal()).equal();\n const handleHoverSize = token.calc(colorPickerHandlerSizeSM).add(token.calc(lineWidthBold).mul(2).equal()).equal();\n const activeHandleStyle = {\n '&:after': {\n transform: 'scale(1)',\n boxShadow: `${colorPickerInsetShadow}, 0 0 0 1px ${token.colorPrimaryActive}`\n }\n };\n return {\n // ======================== Slider ========================\n [`${componentCls}-slider`]: [getTransBg(unit(colorPickerSliderHeight), token.colorFillSecondary), {\n margin: 0,\n padding: 0,\n height: colorPickerSliderHeight,\n borderRadius: token.calc(colorPickerSliderHeight).div(2).equal(),\n '&-rail': {\n height: colorPickerSliderHeight,\n borderRadius: token.calc(colorPickerSliderHeight).div(2).equal(),\n boxShadow: colorPickerInsetShadow\n },\n [`& ${componentCls}-slider-handle`]: {\n width: handleInnerSize,\n height: handleInnerSize,\n top: 0,\n borderRadius: '100%',\n '&:before': {\n display: 'block',\n position: 'absolute',\n background: 'transparent',\n left: {\n _skip_check_: true,\n value: '50%'\n },\n top: '50%',\n transform: 'translate(-50%, -50%)',\n width: handleHoverSize,\n height: handleHoverSize,\n borderRadius: '100%'\n },\n '&:after': {\n width: colorPickerHandlerSizeSM,\n height: colorPickerHandlerSizeSM,\n border: `${unit(lineWidthBold)} solid ${colorBgElevated}`,\n boxShadow: `${colorPickerInsetShadow}, 0 0 0 1px ${colorFillSecondary}`,\n outline: 'none',\n insetInlineStart: token.calc(lineWidthBold).mul(-1).equal(),\n top: token.calc(lineWidthBold).mul(-1).equal(),\n background: 'transparent',\n transition: 'none'\n },\n '&:focus': activeHandleStyle\n }\n }],\n // ======================== Layout ========================\n [`${componentCls}-slider-container`]: {\n display: 'flex',\n gap: marginSM,\n marginBottom: marginSM,\n // Group\n [`${componentCls}-slider-group`]: {\n flex: 1,\n flexDirection: 'column',\n justifyContent: 'space-between',\n display: 'flex',\n '&-disabled-alpha': {\n justifyContent: 'center'\n }\n }\n },\n [`${componentCls}-gradient-slider`]: {\n marginBottom: marginXS,\n [`& ${componentCls}-slider-handle`]: {\n '&:after': {\n transform: 'scale(0.8)'\n },\n '&-active, &:focus': activeHandleStyle\n }\n }\n };\n};\nexport default genSliderStyle;","import { unit } from '@ant-design/cssinjs';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genStyleHooks, mergeToken } from '../../theme/internal';\nimport genColorBlockStyle from './color-block';\nimport genInputStyle from './input';\nimport genPickerStyle from './picker';\nimport genPresetsStyle from './presets';\nimport genSliderStyle from './slider';\nexport const genActiveStyle = (token, borderColor, outlineColor) => ({\n borderInlineEndWidth: token.lineWidth,\n borderColor,\n boxShadow: `0 0 0 ${unit(token.controlOutlineWidth)} ${outlineColor}`,\n outline: 0\n});\nconst genRtlStyle = token => {\n const {\n componentCls\n } = token;\n return {\n '&-rtl': {\n [`${componentCls}-presets-color`]: {\n '&::after': {\n direction: 'ltr'\n }\n },\n [`${componentCls}-clear`]: {\n '&::after': {\n direction: 'ltr'\n }\n }\n }\n };\n};\nconst genClearStyle = (token, size, extraStyle) => {\n const {\n componentCls,\n borderRadiusSM,\n lineWidth,\n colorSplit,\n colorBorder,\n red6\n } = token;\n return {\n [`${componentCls}-clear`]: Object.assign(Object.assign({\n width: size,\n height: size,\n borderRadius: borderRadiusSM,\n border: `${unit(lineWidth)} solid ${colorSplit}`,\n position: 'relative',\n overflow: 'hidden',\n cursor: 'inherit',\n transition: `all ${token.motionDurationFast}`\n }, extraStyle), {\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n insetInlineEnd: token.calc(lineWidth).mul(-1).equal(),\n top: token.calc(lineWidth).mul(-1).equal(),\n display: 'block',\n width: 40,\n // maximum\n height: 2,\n // fixed\n transformOrigin: `calc(100% - 1px) 1px`,\n transform: 'rotate(-45deg)',\n backgroundColor: red6\n },\n '&:hover': {\n borderColor: colorBorder\n }\n })\n };\n};\nconst genStatusStyle = token => {\n const {\n componentCls,\n colorError,\n colorWarning,\n colorErrorHover,\n colorWarningHover,\n colorErrorOutline,\n colorWarningOutline\n } = token;\n return {\n [`&${componentCls}-status-error`]: {\n borderColor: colorError,\n '&:hover': {\n borderColor: colorErrorHover\n },\n [`&${componentCls}-trigger-active`]: Object.assign({}, genActiveStyle(token, colorError, colorErrorOutline))\n },\n [`&${componentCls}-status-warning`]: {\n borderColor: colorWarning,\n '&:hover': {\n borderColor: colorWarningHover\n },\n [`&${componentCls}-trigger-active`]: Object.assign({}, genActiveStyle(token, colorWarning, colorWarningOutline))\n }\n };\n};\nconst genSizeStyle = token => {\n const {\n componentCls,\n controlHeightLG,\n controlHeightSM,\n controlHeight,\n controlHeightXS,\n borderRadius,\n borderRadiusSM,\n borderRadiusXS,\n borderRadiusLG,\n fontSizeLG\n } = token;\n return {\n [`&${componentCls}-lg`]: {\n minWidth: controlHeightLG,\n minHeight: controlHeightLG,\n borderRadius: borderRadiusLG,\n [`${componentCls}-color-block, ${componentCls}-clear`]: {\n width: controlHeight,\n height: controlHeight,\n borderRadius\n },\n [`${componentCls}-trigger-text`]: {\n fontSize: fontSizeLG\n }\n },\n [`&${componentCls}-sm`]: {\n minWidth: controlHeightSM,\n minHeight: controlHeightSM,\n borderRadius: borderRadiusSM,\n [`${componentCls}-color-block, ${componentCls}-clear`]: {\n width: controlHeightXS,\n height: controlHeightXS,\n borderRadius: borderRadiusXS\n },\n [`${componentCls}-trigger-text`]: {\n lineHeight: unit(controlHeightXS)\n }\n }\n };\n};\nconst genColorPickerStyle = token => {\n const {\n antCls,\n componentCls,\n colorPickerWidth,\n colorPrimary,\n motionDurationMid,\n colorBgElevated,\n colorTextDisabled,\n colorText,\n colorBgContainerDisabled,\n borderRadius,\n marginXS,\n marginSM,\n controlHeight,\n controlHeightSM,\n colorBgTextActive,\n colorPickerPresetColorSize,\n colorPickerPreviewSize,\n lineWidth,\n colorBorder,\n paddingXXS,\n fontSize,\n colorPrimaryHover,\n controlOutline\n } = token;\n return [{\n [componentCls]: Object.assign({\n [`${componentCls}-inner`]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({\n '&-content': {\n display: 'flex',\n flexDirection: 'column',\n width: colorPickerWidth,\n [`& > ${antCls}-divider`]: {\n margin: `${unit(marginSM)} 0 ${unit(marginXS)}`\n }\n },\n [`${componentCls}-panel`]: Object.assign({}, genPickerStyle(token))\n }, genSliderStyle(token)), genColorBlockStyle(token, colorPickerPreviewSize)), genInputStyle(token)), genPresetsStyle(token)), genClearStyle(token, colorPickerPresetColorSize, {\n marginInlineStart: 'auto'\n })), {\n // Operation bar\n [`${componentCls}-operation`]: {\n display: 'flex',\n justifyContent: 'space-between',\n marginBottom: marginXS\n }\n }),\n '&-trigger': Object.assign(Object.assign(Object.assign(Object.assign({\n minWidth: controlHeight,\n minHeight: controlHeight,\n borderRadius,\n border: `${unit(lineWidth)} solid ${colorBorder}`,\n cursor: 'pointer',\n display: 'inline-flex',\n alignItems: 'flex-start',\n justifyContent: 'center',\n transition: `all ${motionDurationMid}`,\n background: colorBgElevated,\n padding: token.calc(paddingXXS).sub(lineWidth).equal(),\n [`${componentCls}-trigger-text`]: {\n marginInlineStart: marginXS,\n marginInlineEnd: token.calc(marginXS).sub(token.calc(paddingXXS).sub(lineWidth)).equal(),\n fontSize,\n color: colorText,\n alignSelf: 'center',\n '&-cell': {\n '&:not(:last-child):after': {\n content: '\", \"'\n },\n '&-inactive': {\n color: colorTextDisabled\n }\n }\n },\n '&:hover': {\n borderColor: colorPrimaryHover\n },\n [`&${componentCls}-trigger-active`]: Object.assign({}, genActiveStyle(token, colorPrimary, controlOutline)),\n '&-disabled': {\n color: colorTextDisabled,\n background: colorBgContainerDisabled,\n cursor: 'not-allowed',\n '&:hover': {\n borderColor: colorBgTextActive\n },\n [`${componentCls}-trigger-text`]: {\n color: colorTextDisabled\n }\n }\n }, genClearStyle(token, controlHeightSM)), genColorBlockStyle(token, controlHeightSM)), genStatusStyle(token)), genSizeStyle(token))\n }, genRtlStyle(token))\n }, genCompactItemStyle(token, {\n focusElCls: `${componentCls}-trigger-active`\n })];\n};\nexport default genStyleHooks('ColorPicker', token => {\n const {\n colorTextQuaternary,\n marginSM\n } = token;\n const colorPickerSliderHeight = 8;\n const colorPickerToken = mergeToken(token, {\n colorPickerWidth: 234,\n colorPickerHandlerSize: 16,\n colorPickerHandlerSizeSM: 12,\n colorPickerAlphaInputWidth: 44,\n colorPickerInputNumberHandleWidth: 16,\n colorPickerPresetColorSize: 24,\n colorPickerInsetShadow: `inset 0 0 1px 0 ${colorTextQuaternary}`,\n colorPickerSliderHeight,\n colorPickerPreviewSize: token.calc(colorPickerSliderHeight).mul(2).add(marginSM).equal()\n });\n return [genColorPickerStyle(colorPickerToken)];\n});","\"use client\";\n\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 React, { useContext, useMemo } from 'react';\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport ContextIsolator from '../_util/ContextIsolator';\nimport genPurePanel from '../_util/PurePanel';\nimport { getStatusClassNames } from '../_util/statusUtils';\nimport { devUseWarning } from '../_util/warning';\nimport { ConfigContext } from '../config-provider/context';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport useCSSVarCls from '../config-provider/hooks/useCSSVarCls';\nimport useSize from '../config-provider/hooks/useSize';\nimport { FormItemInputContext } from '../form/context';\nimport Popover from '../popover';\nimport { useCompactItemContext } from '../space/Compact';\nimport { AggregationColor } from './color';\nimport ColorPickerPanel from './ColorPickerPanel';\nimport ColorTrigger from './components/ColorTrigger';\nimport useModeColor from './hooks/useModeColor';\nimport useStyle from './style';\nimport { genAlphaColor, generateColor, getColorAlpha } from './util';\nconst ColorPicker = props => {\n const {\n mode,\n value,\n defaultValue,\n format,\n defaultFormat,\n allowClear = false,\n presets,\n children,\n trigger = 'click',\n open,\n disabled,\n placement = 'bottomLeft',\n arrow = true,\n panelRender,\n showText,\n style,\n className,\n size: customizeSize,\n rootClassName,\n prefixCls: customizePrefixCls,\n styles,\n disabledAlpha = false,\n onFormatChange,\n onChange,\n onClear,\n onOpenChange,\n onChangeComplete,\n getPopupContainer,\n autoAdjustOverflow = true,\n destroyTooltipOnHide,\n disabledFormat\n } = props,\n rest = __rest(props, [\"mode\", \"value\", \"defaultValue\", \"format\", \"defaultFormat\", \"allowClear\", \"presets\", \"children\", \"trigger\", \"open\", \"disabled\", \"placement\", \"arrow\", \"panelRender\", \"showText\", \"style\", \"className\", \"size\", \"rootClassName\", \"prefixCls\", \"styles\", \"disabledAlpha\", \"onFormatChange\", \"onChange\", \"onClear\", \"onOpenChange\", \"onChangeComplete\", \"getPopupContainer\", \"autoAdjustOverflow\", \"destroyTooltipOnHide\", \"disabledFormat\"]);\n const {\n getPrefixCls,\n direction,\n colorPicker\n } = useContext(ConfigContext);\n const contextDisabled = useContext(DisabledContext);\n const mergedDisabled = disabled !== null && disabled !== void 0 ? disabled : contextDisabled;\n const [popupOpen, setPopupOpen] = useMergedState(false, {\n value: open,\n postState: openData => !mergedDisabled && openData,\n onChange: onOpenChange\n });\n const [formatValue, setFormatValue] = useMergedState(format, {\n value: format,\n defaultValue: defaultFormat,\n onChange: onFormatChange\n });\n const prefixCls = getPrefixCls('color-picker', customizePrefixCls);\n // ================== Value & Mode =================\n const [mergedColor, setColor, modeState, setModeState, modeOptions] = useModeColor(defaultValue, value, mode);\n const isAlphaColor = useMemo(() => getColorAlpha(mergedColor) < 100, [mergedColor]);\n // ==================== Change =====================\n // To enhance user experience, we cache the gradient color when switch from gradient to single\n // If user not modify single color, we will use the cached gradient color.\n const [cachedGradientColor, setCachedGradientColor] = React.useState(null);\n const onInternalChangeComplete = color => {\n if (onChangeComplete) {\n let changeColor = generateColor(color);\n // ignore alpha color\n if (disabledAlpha && isAlphaColor) {\n changeColor = genAlphaColor(color);\n }\n onChangeComplete(changeColor);\n }\n };\n const onInternalChange = (data, changeFromPickerDrag) => {\n let color = generateColor(data);\n // ignore alpha color\n if (disabledAlpha && isAlphaColor) {\n color = genAlphaColor(color);\n }\n setColor(color);\n setCachedGradientColor(null);\n // Trigger change event\n if (onChange) {\n onChange(color, color.toCssString());\n }\n // Only for drag-and-drop color picking\n if (!changeFromPickerDrag) {\n onInternalChangeComplete(color);\n }\n };\n // =================== Gradient ====================\n const [activeIndex, setActiveIndex] = React.useState(0);\n const [gradientDragging, setGradientDragging] = React.useState(false);\n // Mode change should also trigger color change\n const onInternalModeChange = newMode => {\n setModeState(newMode);\n if (newMode === 'single' && mergedColor.isGradient()) {\n setActiveIndex(0);\n onInternalChange(new AggregationColor(mergedColor.getColors()[0].color));\n // Should after `onInternalChange` since it will clear the cached color\n setCachedGradientColor(mergedColor);\n } else if (newMode === 'gradient' && !mergedColor.isGradient()) {\n const baseColor = isAlphaColor ? genAlphaColor(mergedColor) : mergedColor;\n onInternalChange(new AggregationColor(cachedGradientColor || [{\n percent: 0,\n color: baseColor\n }, {\n percent: 100,\n color: baseColor\n }]));\n }\n };\n // ================== Form Status ==================\n const {\n status: contextStatus\n } = React.useContext(FormItemInputContext);\n // ==================== Compact ====================\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n // ===================== Style =====================\n const mergedSize = useSize(ctx => {\n var _a;\n return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx;\n });\n const rootCls = useCSSVarCls(prefixCls);\n const [wrapCSSVar, hashId, cssVarCls] = useStyle(prefixCls, rootCls);\n const rtlCls = {\n [`${prefixCls}-rtl`]: direction\n };\n const mergedRootCls = classNames(rootClassName, cssVarCls, rootCls, rtlCls);\n const mergedCls = classNames(getStatusClassNames(prefixCls, contextStatus), {\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large'\n }, compactItemClassnames, colorPicker === null || colorPicker === void 0 ? void 0 : colorPicker.className, mergedRootCls, className, hashId);\n const mergedPopupCls = classNames(prefixCls, mergedRootCls);\n // ===================== Warning ======================\n if (process.env.NODE_ENV !== 'production') {\n const warning = devUseWarning('ColorPicker');\n process.env.NODE_ENV !== \"production\" ? warning(!(disabledAlpha && isAlphaColor), 'usage', '`disabledAlpha` will make the alpha to be 100% when use alpha color.') : void 0;\n }\n const popoverProps = {\n open: popupOpen,\n trigger,\n placement,\n arrow,\n rootClassName,\n getPopupContainer,\n autoAdjustOverflow,\n destroyTooltipOnHide\n };\n const mergedStyle = Object.assign(Object.assign({}, colorPicker === null || colorPicker === void 0 ? void 0 : colorPicker.style), style);\n // ============================ zIndex ============================\n return wrapCSSVar(/*#__PURE__*/React.createElement(Popover, Object.assign({\n style: styles === null || styles === void 0 ? void 0 : styles.popup,\n styles: {\n body: styles === null || styles === void 0 ? void 0 : styles.popupOverlayInner\n },\n onOpenChange: visible => {\n if (!visible || !mergedDisabled) {\n setPopupOpen(visible);\n }\n },\n content: /*#__PURE__*/React.createElement(ContextIsolator, {\n form: true\n }, /*#__PURE__*/React.createElement(ColorPickerPanel, {\n mode: modeState,\n onModeChange: onInternalModeChange,\n modeOptions: modeOptions,\n prefixCls: prefixCls,\n value: mergedColor,\n allowClear: allowClear,\n disabled: mergedDisabled,\n disabledAlpha: disabledAlpha,\n presets: presets,\n panelRender: panelRender,\n format: formatValue,\n onFormatChange: setFormatValue,\n onChange: onInternalChange,\n onChangeComplete: onInternalChangeComplete,\n onClear: onClear,\n activeIndex: activeIndex,\n onActive: setActiveIndex,\n gradientDragging: gradientDragging,\n onGradientDragging: setGradientDragging,\n disabledFormat: disabledFormat\n })),\n classNames: {\n root: mergedPopupCls\n }\n }, popoverProps), children || (/*#__PURE__*/React.createElement(ColorTrigger, Object.assign({\n activeIndex: popupOpen ? activeIndex : -1,\n open: popupOpen,\n className: mergedCls,\n style: mergedStyle,\n prefixCls: prefixCls,\n disabled: mergedDisabled,\n showText: showText,\n format: formatValue\n }, rest, {\n color: mergedColor\n })))));\n};\nif (process.env.NODE_ENV !== 'production') {\n ColorPicker.displayName = 'ColorPicker';\n}\nconst PurePanel = genPurePanel(ColorPicker, undefined, props => Object.assign(Object.assign({}, props), {\n placement: 'bottom',\n autoAdjustOverflow: false\n}), 'color-picker', /* istanbul ignore next */\nprefixCls => prefixCls);\nColorPicker._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nexport default ColorPicker;","import * as React from 'react';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport { useLocale } from '../../locale';\nimport { generateColor } from '../util';\n/**\n * Combine the `color` and `mode` to make sure sync of state.\n */\nexport default function useModeColor(defaultValue, value, mode) {\n const [locale] = useLocale('ColorPicker');\n // ======================== Base ========================\n // Color\n const [mergedColor, setMergedColor] = useMergedState(defaultValue, {\n value\n });\n // Mode\n const [modeState, setModeState] = React.useState('single');\n const [modeOptionList, modeSet] = React.useMemo(() => {\n const list = (Array.isArray(mode) ? mode : [mode]).filter(m => m);\n if (!list.length) {\n list.push('single');\n }\n const modes = new Set(list);\n const optionList = [];\n const pushOption = (modeType, localeTxt) => {\n if (modes.has(modeType)) {\n optionList.push({\n label: localeTxt,\n value: modeType\n });\n }\n };\n pushOption('single', locale.singleColor);\n pushOption('gradient', locale.gradientColor);\n return [optionList, modes];\n }, [mode]);\n // ======================== Post ========================\n // We need align `mode` with `color` state\n // >>>>> Color\n const [cacheColor, setCacheColor] = React.useState(null);\n const setColor = useEvent(nextColor => {\n setCacheColor(nextColor);\n setMergedColor(nextColor);\n });\n const postColor = React.useMemo(() => {\n const colorObj = generateColor(mergedColor || '');\n // Use `cacheColor` in case the color is `cleared`\n return colorObj.equals(cacheColor) ? cacheColor : colorObj;\n }, [mergedColor, cacheColor]);\n // >>>>> Mode\n const postMode = React.useMemo(() => {\n var _a;\n if (modeSet.has(modeState)) {\n return modeState;\n }\n return (_a = modeOptionList[0]) === null || _a === void 0 ? void 0 : _a.value;\n }, [modeSet, modeState, modeOptionList]);\n // ======================= Effect =======================\n // Dynamic update mode when color change\n React.useEffect(() => {\n setModeState(postColor.isGradient() ? 'gradient' : 'single');\n }, [postColor]);\n // ======================= Return =======================\n return [postColor, setColor, postMode, setModeState, modeOptionList];\n}","\"use client\";\n\nimport ColorPicker from './ColorPicker';\nexport default ColorPicker;"],"names":["getRenderPropValue","propValue","Popup","props","children","prefixCls","id","innerStyle","overlayInnerStyle","bodyClassName","className","style","concat","role","autoAdjustOverflowTopBottom","shiftX","adjustY","autoAdjustOverflowLeftRight","adjustX","shiftY","targetOffset","placements","left","points","overflow","offset","right","top","bottom","topLeft","leftTop","topRight","rightTop","bottomRight","rightBottom","bottomLeft","leftBottom","_excluded","Tooltip","ref","overlayClassName","_props$trigger","trigger","_props$mouseEnterDela","mouseEnterDelay","_props$mouseLeaveDela","mouseLeaveDelay","overlayStyle","_props$prefixCls","onVisibleChange","afterVisibleChange","transitionName","animation","motion","_props$placement","placement","_props$align","align","_props$destroyTooltip","destroyTooltipOnHide","defaultVisible","getTooltipContainer","overlay","arrowContent","_props$showArrow","showArrow","tooltipClassNames","classNames","tooltipStyles","styles","restProps","triggerRef","useRef","useImperativeHandle","current","extraProps","popupVisible","visible","popupClassName","root","popup","key","body","action","builtinPlacements","popupPlacement","popupAlign","getPopupContainer","onPopupVisibleChange","afterPopupVisibleChange","popupTransitionName","popupAnimation","popupMotion","defaultPopupVisible","autoDestroy","popupStyle","arrow","forwardRef","MAX_VERTICAL_CONTENT_RADIUS","getArrowOffsetToken","options","contentRadius","limitVerticalRadius","arrowOffset","arrowOffsetHorizontal","arrowOffsetVertical","isInject","valid","code","getArrowStyle","token","colorBg","componentCls","boxShadowPopoverArrow","arrowDistance","arrowPlacement","Object","assign","position","zIndex","display","background","join","transform","_skip_check_","value","PlacementAlignMap","ArrowCenterPlacementAlignMap","DisableAutoArrowList","Set","zoomIn","opacity","zoomOut","zoomBigIn","zoomBigOut","zoomUpIn","transformOrigin","zoomUpOut","zoomMotion","zoom","inKeyframes","outKeyframes","initZoomMotion","motionName","antCls","motionCls","motionDurationFast","motionDurationMid","animationTimingFunction","motionEaseOutCirc","motionEaseInOutCirc","genPresetColor","genCss","reduce","prev","colorKey","lightColor","lightBorderColor","darkColor","textColor","genTooltipStyle","calc","tooltipMaxWidth","tooltipColor","tooltipBg","tooltipBorderRadius","zIndexPopup","controlHeight","boxShadowSecondary","paddingSM","paddingXS","sizePopupArrow","edgeAlignMinWidth","add","equal","centerAlignMinWidth","mul","width","maxWidth","visibility","minWidth","minHeight","padding","div","color","textAlign","textDecoration","wordWrap","backgroundColor","borderRadius","boxShadow","boxSizing","min","_ref","direction","margin","prepareComponentToken","zIndexPopupBase","borderRadiusOuter","Math","injectStyle","arguments","length","undefined","colorTextLightSolid","colorBgSpotlight","TooltipToken","resetStyle","useStyle","inverseColors","map","parseColor","isInternalColor","includes","isPresetColor","arrowStyle","InternalTooltip","_a","_b","_c","_d","_e","_f","customizePrefixCls","openClassName","afterOpenChange","title","arrowPointAtCenter","autoAdjustOverflow","mergedShowArrow","useToken","getContextPopupContainer","getPrefixCls","tooltip","warning","tooltipRef","forceAlign","forcePopupAlign","deprecated","nativeElement","open","setOpen","useMergedState","defaultValue","defaultOpen","noTitle","tooltipPlacements","mergedArrowPointAtCenter","pointAtCenter","config","arrowWidth","visibleFirst","halfArrowWidth","placementMap","keys","forEach","template","placementInfo","dynamicInset","has","autoArrow","baseOverflow","mergedOverflow","getOverflowOptions","htmlRegion","getPlacements","marginXXS","memoOverlay","memoOverlayWrapper","ContextIsolator","space","rootClassName","otherProps","s","e","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","propertyIsEnumerable","__rest","rootPrefixCls","injectFromPopover","tempOpen","child","childProps","childCls","wrapCSSVar","hashId","cssVarCls","colorInfo","arrowContentStyle","rootClassNames","bodyClassNames","contextZIndex","useZIndex","content","vis","onOpenChange","motionDeadline","Provider","_InternalPanelDoNotUseOrYouWillBeFired","formattedOverlayInnerStyle","cls","genBaseStyle","popoverColor","titleMinWidth","fontWeightStrong","innerPadding","colorTextHeading","borderRadiusLG","titleMarginBottom","colorBgElevated","popoverBg","titleBorderBottom","innerContentPadding","titlePadding","fontWeight","whiteSpace","cursor","userSelect","backgroundClip","marginBottom","borderBottom","genColorStyle","colorText","popoverToken","lineWidth","fontHeight","wireframe","marginXS","lineType","colorSplit","titlePaddingBlockDist","popoverTitlePaddingBlockTop","popoverTitlePaddingBlockBottom","popoverPaddingHorizontal","deprecatedTokens","Overlay","RawPurePanel","titleNode","contentNode","InternalPopover","popoverClassNames","popover","settingOpen","onKeyDown","keyCode","KeyCode","ESC","Popover","genSharedDividerStyle","sizePaddingEdgeHorizontal","textPaddingInline","orientationMargin","verticalMarginInline","borderBlockStart","height","marginInline","marginBlock","verticalAlign","borderTop","borderInlineStart","clear","dividerHorizontalGutterMargin","alignItems","dividerHorizontalWithTextGutterMargin","fontSize","fontSizeLG","borderBlockStartColor","borderBlockEnd","paddingBlock","paddingInline","borderColor","borderStyle","borderWidth","borderInlineStartWidth","borderInlineEnd","paddingInlineStart","paddingInlineEnd","dividerToken","marginLG","unitless","divider","type","orientation","dashed","variant","plain","hasChildren","hasCustomMarginLeft","hasCustomMarginRight","classString","memoizedOrientationMargin","test","Number","marginLeft","marginRight","calcThumbStyle","targetElement","vertical","offsetLeft","parentElement","clientWidth","offsetTop","clientHeight","toPX","MotionThumb","containerRef","getValueIndex","onMotionStart","onMotionEnd","_props$vertical","thumbRef","_React$useState","_React$useState2","prevValue","setPrevValue","findValueElement","val","_containerRef$current","index","ele","querySelectorAll","offsetParent","_React$useState3","_React$useState4","prevStyle","setPrevStyle","_React$useState5","_React$useState6","nextStyle","setNextStyle","useLayoutEffect","next","calcPrevStyle","calcNextStyle","thumbStart","_prevStyle$top","thumbActive","_nextStyle$top","motionAppear","onAppearStart","onAppearActive","onVisibleChanged","motionClassName","motionStyle","mergedStyle","motionProps","InternalSegmentedOption","disabled","checked","label","name","onChange","onFocus","onBlur","onKeyUp","onMouseDown","event","_segmentedOptions$","_classNames2","_props$options","_props$className","_props$motionName","mergedRef","segmentedOptions","option","validTitle","_option$label","toString","getValidTitle","normalizeOptions","_useMergedState","_useMergedState2","rawValue","setRawValue","thumbShow","setThumbShow","handleChange","divProps","omit","isKeyboard","setIsKeyboard","isFocused","setIsFocused","handleFocus","handleBlur","handleMouseDown","handleKeyUp","onOffset","currentIndex","findIndex","total","nextOption","handleKeyDown","tabIndex","n","segmentedOption","_classNames3","getItemDisabledStyle","colorTextDisabled","getItemSelectedStyle","itemSelectedBg","boxShadowTertiary","segmentedTextEllipsisCss","genSegmentedStyle","labelHeight","sub","trackPadding","labelHeightLG","controlHeightLG","labelHeightSM","controlHeightSM","itemColor","trackBg","transition","motionEaseInOut","justifyItems","flexDirection","paddingXXS","flex","borderRadiusSM","itemSelectedColor","insetInlineStart","pointerEvents","itemHoverColor","itemHoverBg","itemActiveBg","lineHeight","segmentedPaddingHorizontal","marginInlineStart","marginSM","insetBlockStart","motionDurationSlow","segmentedPaddingHorizontalSM","borderRadiusXS","willChange","segmentedToken","controlPaddingHorizontal","controlPaddingHorizontalSM","colorTextLabel","colorFillSecondary","colorFill","lineWidthBold","colorBgLayout","InternalSegmented","defaultName","useId","block","size","customSize","segmented","mergedSize","useSize","extendedOptions","icon","isSegmentedLabeledOptionWithIcon","restOption","PanelPickerContext","PanelPresetsContext","onClick","cleared","hsba","toHsb","a","genColor","customizeIcon","customizeIconProps","_onMouseDown","preventDefault","WebkitUserSelect","unselectable","split","BaseSelectContext","useLock","duration","lockRef","timeoutRef","window","clearTimeout","locked","setTimeout","Input","_inputNode2","inputElement","autoFocus","autoComplete","editable","activeDescendantId","maxLength","_onKeyDown","_onChange","onPaste","_onCompositionStart","onCompositionStart","_onCompositionEnd","onCompositionEnd","_onBlur","attrs","inputNode","_inputNode","originRef","originProps","onOriginKeyDown","onOriginChange","onOriginMouseDown","onOriginCompositionStart","onOriginCompositionEnd","onOriginBlur","readOnly","Array","isArray","isBrowserClient","document","documentElement","isTitleType","getTitle","item","itemKey","_value$key","onPreventMouseDown","stopPropagation","effect","deps","values","searchValue","autoClearSearchValue","inputRef","placeholder","mode","showSearch","removeIcon","maxTagCount","maxTagTextLength","_props$maxTagPlacehol","maxTagPlaceholder","omittedValues","tagRender","onToggleOpen","onRemove","onInputChange","onInputPaste","onInputKeyDown","onInputMouseDown","onInputCompositionStart","onInputCompositionEnd","onInputBlur","measureRef","_useState","useState","_useState2","inputWidth","setInputWidth","_useState3","_useState4","focused","setFocused","selectionPrefixCls","inputValue","inputEditable","scrollWidth","defaultRenderSelector","itemDisabled","closable","onClose","customizeRenderSelector","isMaxTag","pickAttrs","selectionNode","data","renderItem","valueItem","displayLabel","strLabel","String","slice","renderRest","suffix","maxCount","activeValue","inputChanged","setInputChanged","combobox","hasTextInput","selectionTitle","placeholderNode","Selector","compositionStatusRef","tokenWithEnter","prefix","onSearch","onSearchSubmit","domRef","focus","blur","_useLock","_useLock2","getInputMouseDown","setInputMouseDown","pastedTextRef","triggerOnSearch","sharedProps","currentKeyCode","which","isTextAreaElement","HTMLTextAreaElement","UP","DOWN","ENTER","target","LEFT","RIGHT","SHIFT","BACKSPACE","TAB","WIN_KEY","ALT","META","WIN_KEY_RIGHT","CTRL","SEMICOLON","EQUALS","CAPS_LOCK","CONTEXT_MENU","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","replacedText","replace","clipboardData","getData","selectNode","MultipleSelector","msTouchAction","inputMouseDown","SelectTrigger","popupElement","dropdownStyle","dropdownClassName","_props$direction","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","empty","getTriggerDOMNode","onPopupMouseEnter","dropdownPrefixCls","popupNode","mergedBuiltinPlacements","getBuiltInPlacements","mergedTransitionName","isNumberPopupWidth","stretch","triggerPopupRef","getPopupElement","_triggerPopupRef$curr","showAction","hideAction","onMouseEnter","getKey","isValidCount","isNaN","fillFieldNames","fieldNames","childrenAsData","mergedLabel","groupLabel","injectPropsWithOption","newOption","defineProperty","get","Polite","DEFAULT_OMIT_PROPS","BaseSelect","_customizeRawInputEle","omitDomProps","displayValues","onDisplayValuesChange","emptyOptions","_props$notFoundConten","notFoundContent","onClear","loading","getInputElement","getRawInputElement","onDropdownVisibleChange","onActiveValueChange","onSearchSplit","tokenSeparators","allowClear","suffixIcon","clearIcon","OptionList","_props$showAction","multiple","mergedShowSearch","domProps","propName","mobile","setMobile","isMobile","selectorDomRef","selectorRef","listRef","blurRef","_useDelayReset","timeout","bool","setBool","delayRef","cancelLatest","callback","useDelayReset","_useDelayReset2","mockFocused","setMockFocused","cancelSetMockFocused","_selectorRef$current","_selectorRef$current2","scrollTo","arg","_listRef$current","mergedSearchValue","_displayValues$","customizeInputElement","customizeRawInputElement","customizeRawInputRef","rendered","setRendered","innerOpen","setInnerOpen","mergedOpen","emptyListContent","triggerOpen","newOpen","nextOpen","some","tokenSeparator","rawValues","onInternalSearch","searchText","fromTyping","isCompositing","ret","newSearchText","separatedList","text","tokens","end","match","list","separate","str","_ref3","_ref4","restTokens","prevList","unitStr","filter","Boolean","getSeparatedContent","patchLabels","source","getClearLock","setClearLock","keyLockRef","focusRef","activeTimeoutIds","timeoutId","splice","onTriggerVisibleChange","forceUpdate","elements","customizedTrigger","propsRef","onGlobalMouseDown","_propsRef$current","_triggerRef$current2","shadowRoot","composed","composedPath","element","every","contains","addEventListener","removeEventListener","useSelectTriggerControl","arrowNode","baseSelectContext","toggleOpen","showSuffixIcon","renderNode","_useAllowClear","onClearMouseDown","mergedClearIcon","useAllowClear","_selectorRef$current4","mergedAllowClear","clearNode","optionList","mergedClassName","selectorNode","node","trim","newValues","_triggerRef$current","_selectorRef$current3","activeElement","push","_len3","restArgs","_key3","apply","_listRef$current2","clearLock","isEnterKey","cloneDisplayValues","removedDisplayValue","_len","rest","_key","_len2","_key2","_listRef$current3","OptGroup","isSelectOptGroup","Option","isSelectOption","Filler","offsetY","offsetX","onInnerResize","innerProps","rtl","extra","outerStyle","onResize","_ref2","offsetHeight","displayName","Item","setRef","refFunc","navigator","userAgent","isScrollAtTop","isScrollAtBottom","isScrollAtLeft","isScrollAtRight","lockTimeoutRef","scrollPingRef","isHorizontal","delta","smoothOffset","originScroll","CacheMap","this","maps","create","SMOOTH_PTG","getPageXY","horizontal","touches","ScrollBar","scrollOffset","scrollRange","onStartMove","onStopMove","onScroll","spinSize","containerSize","propsThumbStyle","thumbStyle","dragging","setDragging","pageXY","setPageXY","startTop","setStartTop","isLTR","scrollbarRef","_React$useState7","_React$useState8","setVisible","visibleTimeoutRef","delayHidden","enableScrollRange","enableOffsetRange","stateRef","pageY","onThumbMouseDown","onScrollbarTouchStart","scrollbarEle","thumbEle","passive","enableScrollRangeRef","enableOffsetRangeRef","moveRafId","onMouseMove","_stateRef$current","stateDragging","statePageY","stateStartTop","raf","cancel","rect","getBoundingClientRect","scale","newTop","tmpEnableScrollRange","tmpEnableOffsetRange","ptg","newScrollTop","ceil","max","onMouseUp","scrollbarPrefixCls","containerStyle","MIN_SIZE","getSpinSize","baseSize","floor","EMPTY_DATA","ScrollStyle","overflowY","overflowAnchor","RawList","itemHeight","_props$fullHeight","fullHeight","virtual","_props$component","component","Component","onVirtualScroll","extraRender","_useHeights","onItemAdd","onItemRemove","updatedMark","setUpdatedMark","instanceRef","Map","heightsRef","collectRafRef","cancelRaf","collectHeight","sync","doCollect","htmlElement","findDOMNode","set","c","useEffect","instance","delete","useHeights","_useHeights2","setInstanceRef","heights","heightUpdatedMark","useVirtual","containerHeight","curr","inVirtual","isRTL","mergedData","componentRef","fillerInnerRef","setOffsetTop","setOffsetLeft","_useState5","_useState6","scrollMoving","setScrollMoving","onScrollbarStartMove","onScrollbarStopMove","sharedConfig","syncScrollTop","origin","alignedTop","maxScrollHeightRef","keepInRange","scrollTop","rangeRef","start","diffItemRef","_useDiffItem","onDiff","prevData","setPrevData","diffItem","setDiffItem","diff","originList","targetList","shortList","longList","originLen","targetLen","notExistKey","__EMPTY_ITEM__","getItemKey","diffIndex","abs","shortKey","findListDiffIndex","useDiffItem","_React$useMemo","scrollHeight","_fillerInnerRef$curre","startIndex","startOffset","endIndex","itemTop","dataLen","_item","cacheHeight","currentItemBottom","fillerOffset","setSize","verticalScrollBarRef","horizontalScrollBarRef","horizontalScrollBarSpinSize","verticalScrollBarSpinSize","maxScrollHeight","useOriginScroll","getVirtualScrollInfo","x","y","lastVirtualScrollInfoRef","triggerScroll","params","nextInfo","onScrollBar","newScrollOffset","newOffset","flushSync","keepInHorizontalRange","nextOffsetLeft","tmpOffsetLeft","onWheelDelta","offsetXY","fromHorizontal","_useFrameWheel","horizontalScroll","offsetRef","nextFrameRef","wheelValueRef","isMouseScrollRef","wheelDirectionRef","wheelDirectionCleanRef","deltaX","deltaY","shiftKey","mergedDeltaX","mergedDeltaY","absX","absY","patchMultiple","onWheelY","onWheelX","detail","useFrameWheel","_useFrameWheel2","onRawWheel","onFireFoxScroll","cleanUpEvents","touchedRef","touchXRef","touchYRef","elementRef","intervalRef","onTouchMove","currentX","pageX","currentY","_isHorizontal","clearInterval","setInterval","onTouchEnd","onTouchStart","useMobileTouchMove","onMozMousePixelScroll","componentEle","newOffsetLeft","delayHideScrollBar","_verticalScrollBarRef","_horizontalScrollBarR","_scrollTo","triggerFlash","scrollRef","syncState","setSyncState","times","ori","targetAlign","originAlign","needCollectHeight","newTargetAlign","targetTop","mergedAlign","stackTop","itemBottom","maxLen","leftHeight","_i","_cacheHeight","lastTop","_arg$offset","useScrollTo","getScrollInfo","renderList","getSize","_React$useMemo2","key2Index","bottomList","startKey","endKey","_heights$get","useGetSize","extraContent","listChildren","setNodeRef","renderFunc","useChildren","componentStyle","overflowX","containerProps","dir","sizeInfo","offsetWidth","currentTarget","verticalScrollBar","verticalScrollBarThumb","horizontalScrollBar","horizontalScrollBarThumb","List","_","_useBaseProps","onPopupScroll","_React$useContext","flattenOptions","onActiveValue","defaultActiveFirstOption","onSelect","menuItemSelectedIcon","listHeight","listItemHeight","optionRender","itemPrefixCls","memoFlattenOptions","useMemo","overMaxCount","onListMouseDown","scrollIntoView","args","isSelected","getEnabledActiveIndex","len","group","activeIndex","setActiveIndex","setActive","fromKeyboard","info","flattenItem","isAriaSelected","toLowerCase","from","onSelectValue","selected","ctrlKey","N","P","appVersion","nextActiveIndex","_item$data","omitFieldNameList","getLabel","getItemAriaProps","itemData","a11yProps","itemIndex","groupOption","_data$title","groupTitle","passedProps","mergedDisabled","optionPrefixCls","optionClassName","iconVisible","optionTitle","search","toUpperCase","uuid","canUseDom","_excluded2","nodes","optionOnly","_ref2$props","_ref$props","convertNodeToOption","optionFilterProp","optionLabelProp","mergedOptions","valueOptions","labelOptions","setLabelOptions","labelOptionsMap","dig","isChildren","useRefFunc","funcRef","cacheFn","OMIT_DOM_PROPS","Select","backfill","_props$autoClearSearc","onDeselect","_props$dropdownMatchS","filterOption","filterSort","_props$listHeight","_props$listItemHeight","labelRender","labelInValue","mergedId","innerId","setInnerId","retId","mergedFilterOption","mergedFieldNames","JSON","stringify","postState","setSearchValue","parsedOptions","convert2LabelValues","draftValues","rawLabel","rawKey","rawDisabled","rawTitle","_val$value","isRawValue","_option$key","_useMergedState3","_useMergedState4","internalValue","setInternalValue","rawLabeledValues","_values$","isComboNoValue","_useCache","labeledValues","cacheRef","_cacheRef$current","prevValueCache","prevOptionCache","patchedValues","_prevValueCache$get","valueCache","optionCache","useCache","_useCache2","mergedValues","getMixedOption","firstValue","_mergedValues$","strValue","hasValue","createTagOption","filteredOptions","fieldOptions","fieldLabel","fieldValue","customizeFilter","upperSearch","filterFunc","wrapOption","opt","subOptions","subItem","useFilterOptions","cloneOptions","sort","b","existOptions","filledSearchOptions","sorter","inputOptions","orderedFilteredOptions","displayOptions","flattenList","_fillFieldNames","isGroupOption","grpLabel","triggerChange","newVal","_mergedValues$index","returnValues","v","returnOptions","setActiveValue","accessibilityIndex","setAccessibilityIndex","mergedDefaultActiveFirstOption","active","_ref3$source","triggerSelect","getSelectEnt","_option$key2","_getSelectEnt","_getSelectEnt2","wrappedValue","_option","_getSelectEnt3","_getSelectEnt4","_wrappedValue","_option2","onInternalSelect","cloneValues","mergedSelect","selectContext","realVirtual","nextValues","formatted","newRawValues","words","patchValues","word","newRawValue","TypedSelect","locale","useLocale","themeStyle","colorBgBase","toHsl","l","viewBox","xmlns","description","fill","fillRule","fillOpacity","cx","cy","rx","ry","d","colorFillTertiary","colorFillQuaternary","colorBgContainer","shadowColor","contentColor","onBackground","toHexString","stroke","genSharedEmptyStyle","marginXL","emptyImgHeight","opacityImage","img","svg","colorTextDescription","marginTop","emptyImgHeightMD","emptyImgHeightSM","emptyToken","emptyImgCls","defaultEmptyImg","simpleEmptyImg","_g","_h","image","imageStyle","emptyClassNames","des","alt","imageNode","src","footer","PRESENTED_IMAGE_DEFAULT","PRESENTED_IMAGE_SIMPLE","componentName","useContext","buildInPlacements","popupOverflow","genItemStyle","optionHeight","optionFontSize","optionLineHeight","optionPadding","selectItemCls","slideUpEnterActive","slideUpAppearActive","slideUpLeaveActive","dropdownPlacementCls","selectedItemCls","fontVariant","outline","animationName","slide","fontSizeSM","optionActiveBg","optionSelectedColor","optionSelectedFontWeight","optionSelectedBg","colorPrimary","colorBgContainerDisabled","borderEndStartRadius","borderEndEndRadius","borderStartStartRadius","borderStartEndRadius","genSizeStyle","inputPaddingHorizontalBase","selectHeightWithoutBorder","inset","WebkitAppearance","alignSelf","showArrowPaddingInlineEnd","colorTextPlaceholder","insetInlineEnd","inputPaddingHorizontalSM","singleItemHeightLG","genBaseOutlinedStyle","controlOutlineWidth","border","selectorBg","hoverBorderHover","activeBorderColor","activeOutlineColor","genOutlinedStatusStyle","status","genOutlinedStyle","colorBorder","hoverBorderColor","colorError","colorErrorHover","colorErrorOutline","colorWarning","colorWarningHover","colorWarningOutline","multipleItemBg","multipleItemBorderColor","genBaseFilledStyle","bg","hoverBg","genFilledStatusStyle","genFilledStyle","colorErrorBg","colorErrorBgHover","colorWarningBg","colorWarningBgHover","genBorderlessStyle","genSelectorStyle","input","getSearchInputWithoutBorderStyle","appearance","fontFamily","iconCls","fontSizeIcon","colorTextQuaternary","marginInlineEnd","selectAffixPadding","fontStyle","textTransform","textRendering","colorTextTertiary","genSelectStyle","borderElCls","focusElCls","selectToken","multipleSelectItemHeight","multipleItemHeight","selectHeight","controlItemBgActive","controlItemBgHover","colorPrimaryHover","controlOutline","dblPaddingXXS","dblLineWidth","multipleItemHeightSM","multipleItemHeightLG","INTERNAL_FIXED_ITEM_MARGIN","clearBg","multipleSelectorBgDisabled","multipleItemColorDisabled","multipleItemBorderColorDisabled","SECRET_COMBOBOX_MODE_DO_NOT_USE","InternalSelect","bordered","customListItemHeight","customizeSize","customDisabled","customStatus","popupMatchSelectWidth","propDirection","customizeVariant","renderEmpty","contextDirection","contextPopupMatchSelectWidth","select","compactSize","compactItemClassnames","enableVariantCls","useVariants","rootCls","useCSSVarCls","m","isMultiple","useShowArrow","mergedPopupMatchSelectWidth","contextStatus","hasFeedback","isFormItemInput","feedbackIcon","mergedStatus","mergedNotFound","itemIcon","useIcons","selectProps","mergedPopupClassName","ctx","DisabledContext","memoPlacement","ColorFormat","AntdIcon","A","supportBigInt","BigInt","trimNumber","numStr","negative","startsWith","trimStr","splitNumber","integerStr","decimalStr","negativeStr","fullStr","isE","number","getNumberPrecision","precision","decimalMatch","validateNumber","num2str","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","toFixed","num","isEmpty","NumberDecimal","toNumber","isInvalidate","maxPrecision","negate","BigIntDecimal","nan","mergedValue","trimRet","numbers","integer","decimal","decimalLen","padStart","decimalLength","getMark","getIntegerStr","getDecimalStr","padEnd","clone","maxDecimalLength","_trimNumber","alignDecimal","hydrateValueStr","NaN","getMiniDecimal","separatorStr","cutOnly","_trimNumber2","precisionDecimalStr","numberWithoutDecimal","advancedNum","repeat","cloneEvent","cloneNode","newEvent","selectionStart","selectionEnd","setSelectionRange","resolveOnChange","targetValue","triggerFocus","BaseInput","_props","_props2","_props3","inputEl","addonBefore","addonAfter","handleReset","hidden","classes","dataAttrs","components","AffixWrapperComponent","affixWrapper","GroupWrapperComponent","groupWrapper","WrapperComponent","wrapper","GroupAddonComponent","groupAddon","hasAffix","hasPrefixSuffix","cloneElement","groupRef","needClear","clearIconCls","iconNode","affixWrapperPrefixCls","affixWrapperCls","suffixNode","hasAddon","wrapperCls","addonCls","groupWrapperCls","mergedWrapperClassName","mergedGroupClassName","useCount","count","showCount","mergedConfig","show","formatter","showFormatter","strategy","onPressEnter","htmlSize","_props$type","compositionRef","holderRef","setValue","formatValue","selection","setSelection","countConfig","mergedMax","valueLength","isOutOfRange","_holderRef$current","_inputRef$current","_inputRef$current2","_inputRef$current3","currentValue","_inputRef$current4","_inputRef$current5","cutValue","exceedFormatter","_inputRef$current6","outOfRangeCls","hasMaxLength","dataCount","getSuffix","StepHandler","upNode","downNode","upDisabled","downDisabled","onStep","stepTimeoutRef","frameIds","onStepRef","onStopStep","onStepMouseDown","up","loopStep","handlerClassName","upClassName","downClassName","safeOnStopStep","sharedHandlerProps","onMouseLeave","getDecupleSteps","step","stepStr","getDecimalValue","stringMode","decimalValue","getDecimalIfValidate","InternalInputNumber","_props$step","upHandler","downHandler","keyboard","_props$changeOnWheel","changeOnWheel","_props$controls","controls","parser","decimalSeparator","onInput","_props$changeOnBlur","changeOnBlur","inputProps","inputClassName","setFocus","userTypingRef","shiftKeyRef","setDecimalValue","getPrecision","userTyping","mergedParser","parsedStr","inputValueRef","mergedFormatter","mergedPrecision","initValue","setInternalInputValue","setInputValue","newValue","idRef","cleanUp","maxDecimal","minDecimal","lessEquals","_useCursor","selectionRef","beforeTxt","substring","afterTxt","_selectionRef$current","startPos","endsWith","beforeLastChar","newIndex","message","useCursor","_useCursor2","recordCursor","restoreCursor","getRangeValue","isInRange","triggerValueUpdate","updateValue","isRangeValidate","equals","onNextPromise","collectInputValue","inputStr","finalValue","finalDecimal","nextInputStr","onInternalStep","stepDecimal","updatedValue","flushInputValue","parsedValue","onWheel","currentParsedValue","onBeforeInput","InputNumber","inputNumberDomRef","inputFocusRef","obj","extendProps","Proxy","prop","originProp","bind","genRadiusStyle","genInputNumberStyles","inputFontSizeSM","inputFontSizeLG","paddingInlineSM","paddingBlockSM","paddingBlockLG","paddingInlineLG","handleHoverColor","handleOpacity","handleBg","handleActiveBg","controlWidth","handleBorderColor","filledHandleBg","lineHeightLG","webkitAppearance","handleWidth","handleVisibleWidth","justifyContent","handleFontSize","genAffixWrapperStyles","inputAffixPadding","inputNumberToken","handleVisible","colorFillAlter","customVariant","others","upIcon","downIcon","DownOutlined","controlsTemp","inputNumberClass","wrapperClassName","form","TypedInputNumber","theme","colorSteppersPrefixCls","stepValue","setStepValue","colorAlphaInputPrefixCls","alphaValue","setAlphaValue","CloseCircleFilled","useRemovePasswordTimeout","triggerOnMount","removePasswordTimeoutRef","removePasswordTimeout","getAttribute","hasAttribute","removeAttribute","timer","inputHasPrefixSuffix","genOTPStyle","flexWrap","columnGap","inputToken","onActiveChange","mask","syncSelection","inputEle","metaKey","strToArr","inputMode","domAttrs","aria","attr","formContext","proxyFormContext","refs","internalFormatter","txt","valueCells","setValueCells","triggerValueCellsChange","useEvent","nextValueCells","patchValue","nextCells","pop","formattedValue","nextIndex","onInputActiveChange","inputSharedProps","singleValue","defaultIconRender","actionMap","click","hover","visibilityToggle","iconRender","visibilityControlled","nextVisible","inputPrefixCls","customizeInputPrefixCls","iconTrigger","iconProps","getIcon","omittedProps","enterButton","customOnSearch","customOnChange","composedRef","searchIcon","SearchOutlined","btnClassName","button","enterButtonAsElement","isAntdButton","__ANT_BUTTON","newProps","hiddenTextarea","SIZING_STYLE","computedStyleCache","ResizableTextArea","autoSize","onInternalAutoSize","setMergedValue","textareaRef","textArea","minRows","maxRows","needAutoSize","resizeState","setResizeState","autoSizeStyle","setAutoSizeStyle","startResize","textareaStyles","uiTextNode","createElement","setAttribute","appendChild","_calculateNodeStyling","nodeRef","getComputedStyle","getPropertyValue","paddingSize","parseFloat","borderSize","nodeInfo","sizingStyle","calculateNodeStyling","maxHeight","singleRowHeight","resize","calculateAutoSizeStyle","_textareaRef$current","fixFirefoxAutoScroll","resizeRafRef","cleanRaf","mergedAutoSizeStyle","TextArea","_countConfig$max","customValue","_ref$prefixCls","textareaResized","setTextareaResized","resizableTextAreaRef","getTextArea","_resizableTextAreaRef","resizableTextArea","_getTextArea","isPureTextArea","textarea","_getTextArea2","innerRef","Group","compact","formItemContext","groupFormItemContext","Search","Password","OTP","hexReg","colorHexInputPrefixCls","hexValue","setHexValue","originValue","hex","colorHsbInputPrefixCls","hsbValue","setHsbValue","handleHsbChange","hsb","h","colorRgbInputPrefixCls","rgbValue","setRgbValue","handleRgbChange","rgb","toRgb","r","g","selectOptions","format","toLocaleUpperCase","disabledAlpha","onFormatChange","disabledFormat","colorFormat","setColorFormat","colorInputPrefixCls","steppersNode","newFormat","getOffset","getDirectionStyle","positionStyle","getIndex","includedStart","includedEnd","UnstableContext","Handle","_getIndex","valueIndex","onDelete","render","draggingDelete","onOffsetChange","onChangeComplete","range","ariaLabelForHandle","ariaLabelledByForHandle","ariaRequired","ariaValueTextFormatterForHandle","handlePrefixCls","onInternalStartMove","HOME","END","PAGE_UP","PAGE_DOWN","DELETE","handleNode","handle","Handles","handleRender","activeHandleRender","draggingIndex","handlesRef","activeVisible","setActiveVisible","onActive","_handlesRef$current$i","hideHelp","handleProps","_onClick","included","textCls","marks","markPrefixCls","activeStyle","dotClassName","dots","stepDots","dotSet","mark","dotValue","replaceCls","trackPrefixCls","offsetStart","offsetEnd","track","startPoint","trackList","startValue","endValue","tracksNode","tracks","getPosition","targetTouches","Slider","_props$disabled","_props$keyboard","_props$min","_props$max","onBeforeChange","onAfterChange","_props$allowCross","allowCross","_props$pushable","pushable","reverse","_props$included","trackStyle","handleStyle","railStyle","dotStyle","activeDotStyle","_props$tabIndex","_useRange","draggableTrack","minCount","useRange","_useRange2","rangeEnabled","rangeEditable","rangeDraggableTrack","mergedMin","isFinite","mergedStep","mergedPush","markList","markObj","_useOffset","formatRangeValue","formatStepValue","round","getDecimal","fixedValue","formatNextValue","alignValues","closeValue","closeDist","alignValue","dist","offsetValue","nextValue","targetDistValue","potentialValues","sign","compareValue","valueDist","potentialValue","offsetChangedValue","changed","needPush","pushNum","_offsetChangedValue","_changed","_offsetChangedValue2","_i2","_changed2","_offsetChangedValue3","_i3","_changed3","_offsetChangedValue4","useOffset","_useOffset2","offsetValues","valueList","_valueList$","pointCount","_returnValues","getTriggerValue","triggerValues","cloneNextValues","isEqual","finishChange","finishValue","_useDrag","draggingValue","setDraggingValue","setDraggingIndex","setDraggingDelete","cacheValues","setCacheValues","_React$useState9","_React$useState10","originValues","setOriginValues","mouseMoveEventRef","mouseUpEventRef","touchEventTargetRef","onDragStart","onDragChange","flushValues","deleteMark","changeValues","deleteIndex","updateCacheValue","offsetPercent","maxStartOffset","maxEndOffset","formatStartValue","cloneCacheValues","offsetDist","sourceValues","targetValues","counts","maxDiffCount","startValues","initialValues","_getPosition","startX","startY","offSetPercent","removeDist","_getPosition2","moveX","moveY","_useDrag2","onStartDrag","changeToCloseValue","valueBeforeIndex","focusIndex","_document$activeEleme","_document$activeEleme2","keyboardValue","setKeyboardValue","mergedDraggableTrack","lastIndexOf","sortedCacheValues","_containerRef$current2","context","percent","clientX","clientY","rail","nextFocusIndex","createContext","rafRef","cancelKeepAlign","controlSize","dotSize","marginFull","marginPart","colorFillContentHover","handleColorDisabled","handleSize","handleSizeHover","handleActiveColor","handleActiveOutlineColor","handleLineWidth","handleLineWidthHover","touchAction","railBg","railHoverBg","trackHoverBg","colorPrimaryBorderHover","dotActiveBorderColor","handleColor","wordBreak","dotBorderColor","trackBgDisabled","genDirectionStyle","railSize","railPadding","full","part","handlePos","markInset","handlePosSize","draggableBorderSize","draggableBorder","genHorizontalStyle","marginPartWithMark","genVerticalStyle","sliderToken","controlSizeHover","increaseHandleWidth","setA","toRgbString","colorPrimaryBorder","colorBorderSecondary","useRafLock","state","setState","cleanup","nextState","_j","_k","tooltipPrefixCls","legacyTooltipPrefixCls","tipFormatter","legacyTipFormatter","tooltipVisible","legacyTooltipVisible","getTooltipPopupContainer","legacyGetTooltipPopupContainer","tooltipPlacement","legacyTooltipPlacement","sliderClassNames","slider","contextDisabled","contextHandleRender","internalContextDirection","hoverOpen","setHoverOpen","focusOpen","setFocusOpen","tooltipProps","tooltipOpen","customizeTooltipPrefixCls","lockOpen","activeOpen","mergedTipFormatter","getTipFormatter","getTooltipPlacement","vert","useActiveTooltipHandle","nodeProps","proxyEvent","eventName","triggerRestPropsEvent","rootStyle","mergedTracks","mergedTracksClassNames","GradientColorSlider","colors","onKeyDelete","sliderProps","linearCss","pointColor","onInternalDragStart","onInternalDragChange","unstableContext","handleCls","sliderContext","sortColors","GradientColorBar","onGradientDragging","isGradient","colorList","colorsRef","newPointColor","nextColors","nextColor","panelPickerContext","onModeChange","modeOptions","gradientDragging","injectProps","getColors","isSingle","lockedColor","setLockedColor","activeColor","pickerColor","setPickerColor","forceSync","setForceSync","mergedPickerColor","fillColor","submitColor","infoType","infoValue","operationNode","showMode","clearColor","colorValue","fromPicker","onPickerChange","onInternalChangeComplete","presets","ColorPresets","panelRender","colorPickerPanelPrefixCls","panelContext","presetContext","innerPanel","Picker","Presets","ColorTrigger","showText","colorTriggerPrefixCls","colorTextPrefixCls","colorTextCellPrefixCls","desc","transparent","inactive","hexString","alpha","toHsbString","containerNode","toCssString","getTransBg","backgroundImage","backgroundSize","colorPickerInsetShadow","lineHeightSM","colorPickerAlphaInputWidth","colorPickerInputNumberHandleWidth","gap","colorPickerHandlerSize","colorPickerPresetColorSize","colorWhite","fontHeightSM","motionEaseInBack","motionEaseOutBack","colorPickerHandlerSizeSM","colorPickerSliderHeight","handleInnerSize","handleHoverSize","activeHandleStyle","colorPrimaryActive","genActiveStyle","outlineColor","borderInlineEndWidth","genRtlStyle","genClearStyle","extraStyle","red6","genStatusStyle","controlHeightXS","genColorPickerStyle","colorPickerWidth","colorBgTextActive","colorPickerPreviewSize","colorPickerToken","ColorPicker","defaultFormat","colorPicker","popupOpen","setPopupOpen","openData","setFormatValue","mergedColor","setColor","modeState","setModeState","setMergedColor","modeOptionList","modeSet","modes","pushOption","modeType","localeTxt","singleColor","gradientColor","cacheColor","setCacheColor","postColor","colorObj","postMode","useModeColor","isAlphaColor","cachedGradientColor","setCachedGradientColor","changeColor","onInternalChange","changeFromPickerDrag","setGradientDragging","rtlCls","mergedRootCls","mergedCls","mergedPopupCls","popoverProps","popupOverlayInner","newMode","baseColor"],"sourceRoot":""}