bhd-components 0.9.1 → 0.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/README.md +1 -1
  2. package/dist/index.esm.es5.development.css +833 -363
  3. package/dist/index.esm.es5.development.js +4159 -6606
  4. package/dist/index.esm.es5.production.css +1 -1
  5. package/dist/index.esm.es5.production.js +1 -1
  6. package/dist/vendor.esm.es5.development.css +119 -0
  7. package/dist/{100c4e1e.esm.es5.development.js → vendor.esm.es5.development.js} +16857 -8463
  8. package/dist/vendor.esm.es5.production.css +11 -0
  9. package/dist/vendor.esm.es5.production.js +485 -0
  10. package/es2017/bhdAppLayout/components/BhdTableSimple/index.js +1 -1
  11. package/es2017/bhdAppLayout/components/BhdTableSimple/index/347/232/204/345/211/257/346/234/254.js +2 -2
  12. package/es2017/bhdAppLayout/index.js +16 -16
  13. package/es2017/bhdDatePicker/index.d.ts +1 -2
  14. package/es2017/bhdDatePicker/index.js +253 -256
  15. package/es2017/bhdDatePicker/index.module.less +120 -8
  16. package/es2017/bhdSelect/index.js +4 -4
  17. package/es2017/bhdTipModal/index.js +6 -6
  18. package/es2017/customerService/contactsList.d.ts +2 -2
  19. package/es2017/customerService/contactsList.js +2 -2
  20. package/es2017/customerService/function.js +2 -1
  21. package/es2017/customerService/historyFun.d.ts +2 -2
  22. package/es2017/customerService/historyFun.js +2 -2
  23. package/es2017/customerService/index.d.ts +2 -2
  24. package/es2017/customerService/index.js +6 -6
  25. package/es2017/customerService/js-screen-shot/assets/less/screen-shot.less +478 -0
  26. package/es2017/customerService/js-screen-shot/lib/common-methods/CanvasPatch.d.ts +1 -0
  27. package/es2017/customerService/js-screen-shot/lib/common-methods/CanvasPatch.js +15 -0
  28. package/es2017/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.d.ts +2 -0
  29. package/es2017/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.js +32 -0
  30. package/es2017/customerService/js-screen-shot/lib/common-methods/FixedData.d.ts +11 -0
  31. package/es2017/customerService/js-screen-shot/lib/common-methods/FixedData.js +17 -0
  32. package/es2017/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.d.ts +5 -0
  33. package/es2017/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.js +18 -0
  34. package/es2017/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.d.ts +4 -0
  35. package/es2017/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.js +25 -0
  36. package/es2017/customerService/js-screen-shot/lib/common-methods/GetColor.d.ts +1 -0
  37. package/es2017/customerService/js-screen-shot/lib/common-methods/GetColor.js +41 -0
  38. package/es2017/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.d.ts +1 -0
  39. package/es2017/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.js +23 -0
  40. package/es2017/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.d.ts +7 -0
  41. package/es2017/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.js +9 -0
  42. package/es2017/customerService/js-screen-shot/lib/common-methods/ImgScaling.d.ts +11 -0
  43. package/es2017/customerService/js-screen-shot/lib/common-methods/ImgScaling.js +41 -0
  44. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.d.ts +8 -0
  45. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.js +125 -0
  46. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.d.ts +1 -0
  47. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.js +38 -0
  48. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.d.ts +1 -0
  49. package/es2017/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.js +27 -0
  50. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectColor.d.ts +1 -0
  51. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectColor.js +6 -0
  52. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectTextSize.d.ts +5 -0
  53. package/es2017/customerService/js-screen-shot/lib/common-methods/SelectTextSize.js +26 -0
  54. package/es2017/customerService/js-screen-shot/lib/common-methods/SetBrushSize.d.ts +14 -0
  55. package/es2017/customerService/js-screen-shot/lib/common-methods/SetBrushSize.js +50 -0
  56. package/es2017/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.d.ts +7 -0
  57. package/es2017/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.js +28 -0
  58. package/es2017/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.d.ts +1 -0
  59. package/es2017/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.js +20 -0
  60. package/es2017/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.d.ts +1 -0
  61. package/es2017/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.js +10 -0
  62. package/es2017/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.d.ts +17 -0
  63. package/es2017/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.js +92 -0
  64. package/es2017/customerService/js-screen-shot/lib/config/Toolbar.d.ts +5 -0
  65. package/es2017/customerService/js-screen-shot/lib/config/Toolbar.js +46 -0
  66. package/es2017/customerService/js-screen-shot/lib/main-entrance/CreateDom.d.ts +24 -0
  67. package/es2017/customerService/js-screen-shot/lib/main-entrance/CreateDom.js +305 -0
  68. package/es2017/customerService/js-screen-shot/lib/main-entrance/InitData.d.ts +78 -0
  69. package/es2017/customerService/js-screen-shot/lib/main-entrance/InitData.js +538 -0
  70. package/es2017/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.d.ts +46 -0
  71. package/es2017/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.js +162 -0
  72. package/es2017/customerService/js-screen-shot/lib/split-methods/AddHistoryData.d.ts +1 -0
  73. package/es2017/customerService/js-screen-shot/lib/split-methods/AddHistoryData.js +23 -0
  74. package/es2017/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.d.ts +8 -0
  75. package/es2017/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.js +13 -0
  76. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.d.ts +5 -0
  77. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.js +21 -0
  78. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.d.ts +16 -0
  79. package/es2017/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.js +39 -0
  80. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawArrow.d.ts +31 -0
  81. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawArrow.js +131 -0
  82. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCircle.d.ts +11 -0
  83. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCircle.js +37 -0
  84. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.d.ts +19 -0
  85. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.js +119 -0
  86. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.d.ts +13 -0
  87. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.js +51 -0
  88. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMasking.d.ts +6 -0
  89. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMasking.js +41 -0
  90. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMosaic.d.ts +12 -0
  91. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawMosaic.js +67 -0
  92. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawPencil.d.ts +13 -0
  93. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawPencil.js +27 -0
  94. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawRectangle.d.ts +11 -0
  95. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawRectangle.js +22 -0
  96. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawText.d.ts +10 -0
  97. package/es2017/customerService/js-screen-shot/lib/split-methods/DrawText.js +24 -0
  98. package/es2017/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.d.ts +10 -0
  99. package/es2017/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.js +50 -0
  100. package/es2017/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.d.ts +2 -0
  101. package/es2017/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.js +62 -0
  102. package/es2017/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.d.ts +1 -0
  103. package/es2017/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.js +132 -0
  104. package/es2017/customerService/js-screen-shot/lib/split-methods/drawCrossImg.d.ts +1 -0
  105. package/es2017/customerService/js-screen-shot/lib/split-methods/drawCrossImg.js +33 -0
  106. package/es2017/customerService/js-screen-shot/lib/type/ComponentType.d.ts +133 -0
  107. package/es2017/customerService/js-screen-shot/lib/type/ComponentType.js +2 -0
  108. package/es2017/customerService/js-screen-shot/main.d.ts +110 -0
  109. package/es2017/customerService/js-screen-shot/main.js +1101 -0
  110. package/es2017/customerService/screenshotTool.d.ts +2 -2
  111. package/es2017/customerService/screenshotTool.js +2 -2
  112. package/es2017/customerService/teacherList.d.ts +2 -2
  113. package/es2017/customerService/teacherList.js +2 -2
  114. package/es2017/i18n/en_US.js +4 -1
  115. package/es2017/i18n/zh_CN.js +4 -1
  116. package/es2017/icons/index.js +2 -2
  117. package/es2017/index.js +14 -14
  118. package/es2017/provider/index.js +2 -2
  119. package/es2017/table/index.js +4 -4
  120. package/es2017/tableSelect/index.js +3 -3
  121. package/es2017/textTootip/index.js +1 -1
  122. package/es2017/titleBar/index.js +3 -3
  123. package/es2017/viewImage/index.js +13 -13
  124. package/esm/bhdAppLayout/index.js +15 -15
  125. package/esm/bhdDatePicker/index.d.ts +1 -2
  126. package/esm/bhdDatePicker/index.js +254 -257
  127. package/esm/bhdDatePicker/index.module.less +120 -8
  128. package/esm/bhdSelect/index.js +1 -1
  129. package/esm/bhdTipModal/index.js +1 -1
  130. package/esm/customerService/contactsList.d.ts +2 -2
  131. package/esm/customerService/contactsList.js +1 -1
  132. package/esm/customerService/function.js +2 -1
  133. package/esm/customerService/historyFun.d.ts +2 -2
  134. package/esm/customerService/historyFun.js +1 -1
  135. package/esm/customerService/index.d.ts +2 -2
  136. package/esm/customerService/index.js +2 -2
  137. package/esm/customerService/js-screen-shot/assets/less/screen-shot.less +478 -0
  138. package/esm/customerService/js-screen-shot/lib/common-methods/CanvasPatch.d.ts +1 -0
  139. package/esm/customerService/js-screen-shot/lib/common-methods/CanvasPatch.js +15 -0
  140. package/esm/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.d.ts +2 -0
  141. package/esm/customerService/js-screen-shot/lib/common-methods/DeviceTypeVerif.js +32 -0
  142. package/esm/customerService/js-screen-shot/lib/common-methods/FixedData.d.ts +11 -0
  143. package/esm/customerService/js-screen-shot/lib/common-methods/FixedData.js +17 -0
  144. package/esm/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.d.ts +5 -0
  145. package/esm/customerService/js-screen-shot/lib/common-methods/GetBrushSelectedName.js +18 -0
  146. package/esm/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.d.ts +4 -0
  147. package/esm/customerService/js-screen-shot/lib/common-methods/GetCanvasImgData.js +25 -0
  148. package/esm/customerService/js-screen-shot/lib/common-methods/GetColor.d.ts +1 -0
  149. package/esm/customerService/js-screen-shot/lib/common-methods/GetColor.js +41 -0
  150. package/esm/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.d.ts +1 -0
  151. package/esm/customerService/js-screen-shot/lib/common-methods/GetSelectedCalssName.js +23 -0
  152. package/esm/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.d.ts +7 -0
  153. package/esm/customerService/js-screen-shot/lib/common-methods/GetToolRelativePosition.js +10 -0
  154. package/esm/customerService/js-screen-shot/lib/common-methods/ImgScaling.d.ts +11 -0
  155. package/esm/customerService/js-screen-shot/lib/common-methods/ImgScaling.js +38 -0
  156. package/esm/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.d.ts +8 -0
  157. package/esm/customerService/js-screen-shot/lib/common-methods/SaveBorderArrInfo.js +125 -0
  158. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.d.ts +1 -0
  159. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToBase64.js +38 -0
  160. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.d.ts +1 -0
  161. package/esm/customerService/js-screen-shot/lib/common-methods/SaveCanvasToImage.js +27 -0
  162. package/esm/customerService/js-screen-shot/lib/common-methods/SelectColor.d.ts +1 -0
  163. package/esm/customerService/js-screen-shot/lib/common-methods/SelectColor.js +6 -0
  164. package/esm/customerService/js-screen-shot/lib/common-methods/SelectTextSize.d.ts +5 -0
  165. package/esm/customerService/js-screen-shot/lib/common-methods/SelectTextSize.js +26 -0
  166. package/esm/customerService/js-screen-shot/lib/common-methods/SetBrushSize.d.ts +14 -0
  167. package/esm/customerService/js-screen-shot/lib/common-methods/SetBrushSize.js +50 -0
  168. package/esm/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.d.ts +7 -0
  169. package/esm/customerService/js-screen-shot/lib/common-methods/SetSelectedClassName.js +28 -0
  170. package/esm/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.d.ts +1 -0
  171. package/esm/customerService/js-screen-shot/lib/common-methods/TakeOutHistory.js +20 -0
  172. package/esm/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.d.ts +1 -0
  173. package/esm/customerService/js-screen-shot/lib/common-methods/UpdateContainerMouseStyle.js +10 -0
  174. package/esm/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.d.ts +17 -0
  175. package/esm/customerService/js-screen-shot/lib/common-methods/ZoomCutOutBoxPosition.js +92 -0
  176. package/esm/customerService/js-screen-shot/lib/config/Toolbar.d.ts +5 -0
  177. package/esm/customerService/js-screen-shot/lib/config/Toolbar.js +46 -0
  178. package/esm/customerService/js-screen-shot/lib/main-entrance/CreateDom.d.ts +24 -0
  179. package/esm/customerService/js-screen-shot/lib/main-entrance/CreateDom.js +346 -0
  180. package/esm/customerService/js-screen-shot/lib/main-entrance/InitData.d.ts +78 -0
  181. package/esm/customerService/js-screen-shot/lib/main-entrance/InitData.js +758 -0
  182. package/esm/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.d.ts +46 -0
  183. package/esm/customerService/js-screen-shot/lib/main-entrance/PlugInParameters.js +259 -0
  184. package/esm/customerService/js-screen-shot/lib/split-methods/AddHistoryData.d.ts +1 -0
  185. package/esm/customerService/js-screen-shot/lib/split-methods/AddHistoryData.js +23 -0
  186. package/esm/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.d.ts +8 -0
  187. package/esm/customerService/js-screen-shot/lib/split-methods/BoundaryJudgment.js +13 -0
  188. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.d.ts +5 -0
  189. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateOptionIcoPosition.js +21 -0
  190. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.d.ts +16 -0
  191. package/esm/customerService/js-screen-shot/lib/split-methods/CalculateToolLocation.js +39 -0
  192. package/esm/customerService/js-screen-shot/lib/split-methods/DrawArrow.d.ts +31 -0
  193. package/esm/customerService/js-screen-shot/lib/split-methods/DrawArrow.js +159 -0
  194. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCircle.d.ts +11 -0
  195. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCircle.js +37 -0
  196. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.d.ts +19 -0
  197. package/esm/customerService/js-screen-shot/lib/split-methods/DrawCutOutBox.js +120 -0
  198. package/esm/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.d.ts +13 -0
  199. package/esm/customerService/js-screen-shot/lib/split-methods/DrawLineArrow.js +51 -0
  200. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMasking.d.ts +6 -0
  201. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMasking.js +41 -0
  202. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMosaic.d.ts +12 -0
  203. package/esm/customerService/js-screen-shot/lib/split-methods/DrawMosaic.js +67 -0
  204. package/esm/customerService/js-screen-shot/lib/split-methods/DrawPencil.d.ts +13 -0
  205. package/esm/customerService/js-screen-shot/lib/split-methods/DrawPencil.js +27 -0
  206. package/esm/customerService/js-screen-shot/lib/split-methods/DrawRectangle.d.ts +11 -0
  207. package/esm/customerService/js-screen-shot/lib/split-methods/DrawRectangle.js +22 -0
  208. package/esm/customerService/js-screen-shot/lib/split-methods/DrawText.d.ts +10 -0
  209. package/esm/customerService/js-screen-shot/lib/split-methods/DrawText.js +24 -0
  210. package/esm/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.d.ts +10 -0
  211. package/esm/customerService/js-screen-shot/lib/split-methods/KeyboardEventHandle.js +61 -0
  212. package/esm/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.d.ts +2 -0
  213. package/esm/customerService/js-screen-shot/lib/split-methods/SetPlugInParameters.js +63 -0
  214. package/esm/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.d.ts +1 -0
  215. package/esm/customerService/js-screen-shot/lib/split-methods/ToolClickEvent.js +132 -0
  216. package/esm/customerService/js-screen-shot/lib/split-methods/drawCrossImg.d.ts +1 -0
  217. package/esm/customerService/js-screen-shot/lib/split-methods/drawCrossImg.js +33 -0
  218. package/esm/customerService/js-screen-shot/lib/type/ComponentType.d.ts +133 -0
  219. package/esm/customerService/js-screen-shot/lib/type/ComponentType.js +2 -0
  220. package/esm/customerService/js-screen-shot/main.d.ts +110 -0
  221. package/esm/customerService/js-screen-shot/main.js +1204 -0
  222. package/esm/customerService/screenshotTool.d.ts +2 -2
  223. package/esm/customerService/screenshotTool.js +1 -1
  224. package/esm/customerService/teacherList.d.ts +2 -2
  225. package/esm/customerService/teacherList.js +1 -1
  226. package/esm/i18n/en_US.js +4 -1
  227. package/esm/i18n/zh_CN.js +4 -1
  228. package/esm/icons/index.js +1 -1
  229. package/esm/index.js +14 -14
  230. package/esm/tableSelect/index.js +1 -1
  231. package/esm/viewImage/index.js +3 -3
  232. package/package.json +1 -1
  233. package/dist/a4d5ce04.esm.es5.production.js +0 -468
  234. package/dist/vendor.esm.es5.development.esm.es5.development.css +0 -119
  235. package/dist/vendor.esm.es5.production.esm.es5.production.css +0 -11
  236. package/es2017/customerService/screenShotPlugin.esm.js +0 -6515
  237. package/esm/customerService/screenShotPlugin.esm.js +0 -6516
@@ -4,28 +4,52 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@ice/jsx-runt
4
4
  import * as React from "react";
5
5
  import { useState, useEffect, useRef } from "react";
6
6
  import styles from "./index.module.less";
7
- import { Button, DatePicker } from "antd";
8
- import { CustomArrow } from "../icons/index";
9
- import dayjs from "dayjs";
10
- const { RangePicker } = DatePicker;
11
- let months = [
12
- "一",
13
- "二",
14
- "三",
15
- "四",
16
- "五",
17
- "六",
18
- "七",
19
- "八",
20
- "九",
21
- "十",
22
- "十一",
23
- "十二"
24
- ];
7
+ import { ConfigProvider, Button, DatePicker } from "antd";
8
+ import { CustomArrow } from "../icons";
9
+ // import dayjs from "dayjs";
10
+ import i18Conversion from "../i18n";
11
+ const { RangePicker } = DatePicker;
25
12
  const BhdDatePicker = (props)=>{
26
- let { kind ="single" , value =props.kind === "range" ? [] : "" , extraItems , extraReadonly =false , picker , useType ="" , className , popupClassName , showTime , showNow =true , onClick , onBlur , onChange , onOk , presets =[] } = props;
13
+ const lang = ConfigProvider.lang === "en" ? "en_US" : "zh_CN";
14
+ // if (lang === "en_US") {
15
+ // const enUS = require("dayjs/locale/en");
16
+ // dayjs.locale(enUS);
17
+ // } else {
18
+ // const zhCN = require("dayjs/locale/zh-cn");
19
+ // dayjs.locale(zhCN);
20
+ // }
21
+ // 默认格式
22
+ const getDefaultFormat = ()=>{
23
+ if (props.format) {
24
+ return props.format;
25
+ } else {
26
+ let fm = props.showTime ? "YYYY-MM-DD hh:mm:ss" : "YYYY-MM-DD";
27
+ switch(props.picker){
28
+ case undefined:
29
+ case "date":
30
+ break;
31
+ case "week":
32
+ fm = "YYYY-wo";
33
+ break;
34
+ case "month":
35
+ fm = "YYYY-MM";
36
+ break;
37
+ case "quarter":
38
+ fm = "YYYY-QQ";
39
+ break;
40
+ case "year":
41
+ fm = "YYYY";
42
+ break;
43
+ default:
44
+ break;
45
+ }
46
+ return fm;
47
+ }
48
+ };
49
+ // 自己组件内使用的,或者自己处理的
50
+ let { kind = "single", extraItems, extraReadonly = false, useType = "", open = false, mode, picker, value = props.kind === "range" ? [] : "", format = getDefaultFormat(), presets = [], className, popupClassName, showTime, showNow = true, allowClear = true, onClick, onBlur, onChange, onOk, onCalendarChange, onOpenChange, onPanelChange, disabledDate, cellRender, renderExtraFooter } = props;
27
51
  const bhdDatePickerRef = useRef(null);
28
- const [open, setOpen] = useState(false);
52
+ const [panelOpen, setPanelOpen] = useState(open);
29
53
  const [panelMode, setPanelMode] = useState("date");
30
54
  const [rangePanelMode, setRangePanelMode] = useState([
31
55
  "date",
@@ -38,79 +62,110 @@ const BhdDatePicker = (props)=>{
38
62
  const [selectedRangeDate, setSelectedRangeDate] = useState(value);
39
63
  const [selectedRangeDateString, setSelectedRangeDateString] = useState([]);
40
64
  const [rangeOpenChange, setRangeOpenChange] = useState(false); // 用于范围选择失去焦点后,判断是否关闭
41
- const timer = useRef(null);
42
65
  useEffect(()=>{
43
66
  setDefaultMode();
44
- }, []);
45
- useEffect(()=>{
46
- if (panelMode === "year") {
47
- timer.current = setTimeout(()=>{
48
- const doms = document.getElementsByClassName("bhd-picker-decade-btn");
49
- for(let index = 0; index < doms.length; index++){
50
- var _doms_index, _doms_index_childNodes;
51
- const dom = (_doms_index = doms[index]) === null || _doms_index === void 0 ? void 0 : (_doms_index_childNodes = _doms_index.childNodes) === null || _doms_index_childNodes === void 0 ? void 0 : _doms_index_childNodes[1];
52
- if (dom) {
53
- if (dom.textContent !== " ㅡ ") {
54
- dom.textContent = " ㅡ ";
55
- }
56
- }
57
- }
58
- }, 0);
67
+ if (kind === "range") {
68
+ if (selectedRangeDate[0] && selectedRangeDate[1]) {
69
+ setSelectedRangeDateString([
70
+ selectedRangeDate[0].format(format),
71
+ selectedRangeDate[1].format(format)
72
+ ]);
73
+ }
74
+ } else {
75
+ if (selectedDate) {
76
+ setSelectedDateString((prevState)=>{
77
+ selectedDateStringRef.current = selectedDate.format(format);
78
+ return selectedDateStringRef.current;
79
+ });
80
+ }
59
81
  }
60
- return ()=>{
61
- clearTimeout(timer.current);
62
- };
63
- }, [
64
- open,
65
- panelMode
66
- ]);
82
+ }, []);
83
+ // 传给 DatePicker 的props参数
67
84
  const getConfig = ()=>{
68
- let config = _object_spread({}, props);
69
- delete config.cellRender;
70
- delete config.className;
71
- delete config.prevIcon;
72
- delete config.nextIcon;
73
- delete config.superPrevIcon;
74
- delete config.superNextIcon;
85
+ let config = _object_spread_props(_object_spread({
86
+ prevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
87
+ style: {
88
+ transform: "rotate(90deg)"
89
+ }
90
+ }),
91
+ nextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
92
+ style: {
93
+ transform: "rotate(-90deg)"
94
+ }
95
+ }),
96
+ superPrevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
97
+ style: {
98
+ transform: "rotate(90deg)"
99
+ }
100
+ }),
101
+ superNextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
102
+ style: {
103
+ transform: "rotate(-90deg)"
104
+ }
105
+ })
106
+ }, props), {
107
+ //--------------- 下边是需要处理的
108
+ className: `${className} ${useType === "table" ? "table-date-picker" : ""}`,
109
+ popupClassName,
110
+ allowClear,
111
+ showTime,
112
+ cellRender,
113
+ renderExtraFooter: selfRenderExtraFooter
114
+ });
115
+ //组件支持传入,防止再次传入DatePicker,所以删掉
116
+ delete config.mode;
75
117
  delete config.open;
76
118
  delete config.onOpenChange;
77
- delete config.renderExtraFooter;
78
- delete config.useType;
79
- delete config.showNow;
80
119
  delete config.onClick;
81
120
  delete config.onBlur;
82
121
  delete config.onOk;
83
122
  delete config.onChange;
84
- delete config.presets;
85
- delete config.mode;
86
- if (kind === "single" || kind === "extra") {
87
- delete config.value;
123
+ delete config.useType; // 组件自己定义的
124
+ delete config.presets; // 必须删掉,因为预设由官网的左侧换到底部
125
+ delete config.showNow; // 必须删掉,因为官网的今天按钮有bug,不受showNow的值控制
126
+ if (!config.cellRender) {
127
+ config.cellRender = selfCellRender;
88
128
  }
89
- if (kind === "extra" && picker !== "date") {
90
- delete config.extraItems;
129
+ // 单选
130
+ if (kind === "single") {
131
+ config.popupClassName = `
132
+ ${styles.bhdDatePickerPopup} ${styles.singlePicker} ${popupClassName || ""} ${showTime ? styles.showTime : ""} ${renderExtraFooter ? styles.showExtraFooter : ""}`;
91
133
  }
134
+ // 范围选择
135
+ if (kind === "range") {
136
+ config.popupClassName = `${styles.bhdDatePickerPopup} ${styles.rangePicker} ${popupClassName || ""} ${showTime ? styles.showTime : ""} ${renderExtraFooter ? styles.showExtraFooter : ""}`;
137
+ }
138
+ // 日常安排
92
139
  if (kind === "extra") {
93
- delete config.disabledDate;
140
+ delete config.showTime; // 日程安排的时候,不允许展示时间面板
141
+ showTime = false; // 日程安排不选择时间
142
+ config.popupClassName = `${styles.bhdDatePickerPopup} ${styles.extraPicker} ${extraReadonly ? styles.readonly : ""} ${popupClassName || ""} ${showTime ? styles.showTime : ""} ${renderExtraFooter ? styles.showExtraFooter : ""}`;
143
+ if (extraReadonly) {
144
+ config.allowClear = false; // 日程安排查看时,不显示清除按钮
145
+ }
94
146
  }
95
147
  return config;
96
148
  };
97
149
  // 设置默认mode
98
150
  const setDefaultMode = ()=>{
151
+ if (kind === "single" || kind === "extra") {
152
+ setPanelMode(mode || picker || "date");
153
+ }
99
154
  if (kind === "range") {
155
+ var _mode, _mode1;
100
156
  setRangePanelMode([
101
- picker || "date",
102
- picker || "date"
157
+ ((_mode = mode) === null || _mode === void 0 ? void 0 : _mode[0]) || picker || "date",
158
+ ((_mode1 = mode) === null || _mode1 === void 0 ? void 0 : _mode1[1]) || picker || "date"
103
159
  ]);
104
- } else {
105
- setPanelMode(picker || "date");
106
160
  }
107
161
  };
108
162
  //单元格渲染
109
- const cellRender = (current, info)=>{
163
+ const selfCellRender = (current, info)=>{
110
164
  if (info.type === "date") {
111
165
  let extraItem = null;
112
166
  if (kind === "extra") {
113
- extraItem = extraItems === null || extraItems === void 0 ? void 0 : extraItems.find((item)=>item.date.format("YYYYMMDD") === current.format("YYYYMMDD"));
167
+ var _extraItems;
168
+ extraItem = (_extraItems = extraItems) === null || _extraItems === void 0 ? void 0 : _extraItems.find((item)=>item.date.format("YYYYMMDD") === current.format("YYYYMMDD"));
114
169
  }
115
170
  return /*#__PURE__*/ _jsx(_Fragment, {
116
171
  children: /*#__PURE__*/ _jsxs("div", {
@@ -125,67 +180,97 @@ const BhdDatePicker = (props)=>{
125
180
  })
126
181
  });
127
182
  }
183
+ // 月份 中文模式下显示全名称(例:一月),英文模式下显示短名称(例:Jan)
128
184
  if (info.type === "month") {
129
185
  return /*#__PURE__*/ _jsx("div", {
130
186
  className: `${"bhd-picker-cell-inner"}`,
131
- children: months[Number(current.format("M")) - 1] + ""
187
+ children: current.format(lang === "zh_CN" ? "MMMM" : "MMM")
132
188
  });
133
189
  }
134
190
  return info.originNode;
135
191
  };
136
192
  //日期禁用
137
- const disabledDate = (current)=>{
138
- // if (extraReadonly) {
139
- // return true;
140
- // }
193
+ const selfDisabledDate = (current)=>{
194
+ // 或者是传过来的
195
+ if (disabledDate) {
196
+ return disabledDate(current);
197
+ }
141
198
  // 不能选择的是没有日程安排的
142
199
  let extraItem = null;
143
200
  if (kind === "extra") {
144
- extraItem = extraItems === null || extraItems === void 0 ? void 0 : extraItems.find((item)=>item.date.format("YYYYMMDD") === current.format("YYYYMMDD"));
201
+ var _extraItems;
202
+ extraItem = (_extraItems = extraItems) === null || _extraItems === void 0 ? void 0 : _extraItems.find((item)=>item.date.format("YYYYMMDD") === current.format("YYYYMMDD"));
145
203
  if (extraReadonly && extraItem) {
146
204
  return false;
147
205
  }
206
+ return !extraItem || current && extraItem.status === "noselectable";
148
207
  }
149
- return !extraItem || current && extraItem.status === "noselectable";
208
+ return false;
150
209
  };
151
- // 渲染底部扩展内容
152
- const renderExtraFooter = (mode)=>{
153
- return !showTime ? /*#__PURE__*/ _jsxs("ul", {
154
- className: "bhd-picker-ranges",
210
+ // 渲染底部扩展内容(包括确定按钮、今天按钮、预设、传入的底部扩展)
211
+ const selfRenderExtraFooter = (mode)=>{
212
+ var _selectedRangeDate, _selectedRangeDate1;
213
+ return /*#__PURE__*/ _jsxs(_Fragment, {
155
214
  children: [
156
- renderPresets(),
157
- showNow && (kind === "single" || kind === "extra" && extraItems.filter((item)=>item.status !== "noselectable" && item.date.format("YYYY-MM-DD") === dayjs().format("YYYY-MM-DD")).length > 0) && mode === "date" && /*#__PURE__*/ _jsx("li", {
158
- className: "bhd-picker-now",
159
- children: /*#__PURE__*/ _jsx("a", {
160
- className: "bhd-picker-now-btn",
161
- onClick: todayClick,
162
- children: showTime ? "此刻" : "今天"
163
- })
215
+ renderExtraFooter && /*#__PURE__*/ _jsx("div", {
216
+ className: "bhddatepicker-picker-footer-extra-extend",
217
+ children: renderExtraFooter()
164
218
  }),
165
- /*#__PURE__*/ _jsx("li", {
166
- className: "bhd-picker-ok",
167
- children: /*#__PURE__*/ _jsx(Button, {
168
- type: "primary",
169
- disabled: kind === "range" ? !((selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[0]) && (selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[1])) : !(selectedDate && selectedDateString),
170
- onClick: okClick,
171
- children: "确定"
219
+ !showTime ? /*#__PURE__*/ _jsx(_Fragment, {
220
+ children: /*#__PURE__*/ _jsxs("ul", {
221
+ className: "bhd-picker-ranges",
222
+ children: [
223
+ selfRenderPresets(),
224
+ renderNow(),
225
+ /*#__PURE__*/ _jsx("li", {
226
+ className: "bhd-picker-ok",
227
+ children: /*#__PURE__*/ _jsx(Button, {
228
+ type: "primary",
229
+ disabled: kind === "range" ? !(((_selectedRangeDate = selectedRangeDate) === null || _selectedRangeDate === void 0 ? void 0 : _selectedRangeDate[0]) && ((_selectedRangeDate1 = selectedRangeDate) === null || _selectedRangeDate1 === void 0 ? void 0 : _selectedRangeDate1[1])) : !(selectedDate && selectedDateString),
230
+ onClick: okClick,
231
+ children: i18Conversion("确定")
232
+ })
233
+ })
234
+ ]
172
235
  })
236
+ }) : /*#__PURE__*/ _jsx("ul", {
237
+ className: `bhd-picker-ranges showPresets ${showNow ? "showNow" : ""}`,
238
+ children: selfRenderPresets()
173
239
  })
174
240
  ]
175
- }) : /*#__PURE__*/ _jsx("ul", {
176
- className: "bhd-picker-ranges",
177
- children: renderPresets()
178
241
  });
179
242
  };
243
+ // 渲染今天
244
+ const renderNow = ()=>{
245
+ // 显示now
246
+ if (showNow) {
247
+ var _extraItems;
248
+ // 日程安排时: extraItems中今天是否是可选或者已选择状态
249
+ let hasNow = ((_extraItems = extraItems) === null || _extraItems === void 0 ? void 0 : _extraItems.filter((item)=>item.status !== "noselectable").length) > 0;
250
+ if (kind === "single" || kind === "extra" && hasNow) {
251
+ if (mode === "date" || mode === undefined) {
252
+ return /*#__PURE__*/ _jsx("li", {
253
+ className: "bhd-picker-now",
254
+ children: /*#__PURE__*/ _jsx("a", {
255
+ className: "bhd-picker-now-btn",
256
+ onClick: todayClick,
257
+ children: showTime ? i18Conversion("此刻") : i18Conversion("今天")
258
+ })
259
+ });
260
+ }
261
+ }
262
+ }
263
+ return null;
264
+ };
180
265
  // 渲染预设
181
- const renderPresets = ()=>{
266
+ const selfRenderPresets = ()=>{
182
267
  return /*#__PURE__*/ _jsx("li", {
183
268
  className: "bhd-picker-presets",
184
269
  children: presets.map((item, index)=>{
185
270
  return /*#__PURE__*/ _jsx("a", {
186
271
  className: "bhd-picker-preset-btn",
187
272
  onClick: ()=>{
188
- presetClick(item.value);
273
+ presetClick(item);
189
274
  },
190
275
  children: item.label
191
276
  }, index);
@@ -197,77 +282,70 @@ const BhdDatePicker = (props)=>{
197
282
  if (kind === "range") {
198
283
  if (selectedRangeDate[0] && selectedRangeDate[1] && selectedRangeDateString[0] && selectedRangeDateString[1]) {
199
284
  onChange && onChange(selectedRangeDate, selectedRangeDateString);
200
- setOpen(false);
285
+ setPanelOpen(false);
201
286
  } else {
202
- setOpen(true);
287
+ setPanelOpen(true);
203
288
  }
204
289
  } else {
205
290
  if (selectedDate && selectedDateString) {
206
291
  onChange && onChange(selectedDate, selectedDateString);
207
- setOpen(false);
292
+ setPanelOpen(false);
208
293
  }
209
294
  }
210
295
  };
296
+ // 今天点击
211
297
  const todayClick = ()=>{
212
- var today = dayjs();
213
- var todayString = today.format(showTime ? "YYYY-MM-DD hh:mm:ss" : "YYYY-MM-DD");
214
- setSelectedDate(today);
215
- setSelectedDateString(todayString);
216
- onChange && onChange(today, todayString);
217
- setOpen(false);
298
+ // var today = dayjs();
299
+ // var todayString = today.format(format);
300
+ // setSelectedDate((prevState) => {
301
+ // selectedDateRef.current = today;
302
+ // return selectedDateRef.current;
303
+ // });
304
+ // setSelectedDateString((prevState) => {
305
+ // selectedDateStringRef.current = todayString;
306
+ // return selectedDateStringRef.current;
307
+ // });
308
+ // onChange && onChange(today, todayString);
309
+ // setPanelOpen(false);
218
310
  };
219
311
  //预设点击
220
- const presetClick = (value)=>{
221
- var todayString = value.format(showTime ? "YYYY-MM-DD hh:mm:ss" : "YYYY-MM-DD");
222
- setSelectedDate(value);
223
- setSelectedDateString(todayString);
224
- onChange && onChange(value, todayString);
225
- setOpen(false);
312
+ const presetClick = (info)=>{
313
+ console.log(typeof info.value);
314
+ const value = typeof info.value === "function" ? info.value() : info.value;
315
+ const valueString = value.format(format);
316
+ setSelectedDate((prevState)=>{
317
+ selectedDateRef.current = value;
318
+ return selectedDateRef.current;
319
+ });
320
+ setSelectedDateString((prevState)=>{
321
+ selectedDateStringRef.current = valueString;
322
+ return selectedDateStringRef.current;
323
+ });
324
+ onChange && onChange(value, valueString);
325
+ setPanelOpen(false);
226
326
  };
227
327
  return /*#__PURE__*/ _jsxs("span", {
228
328
  className: `${styles.bhdDatePicker}`,
229
329
  ref: bhdDatePickerRef,
230
330
  children: [
231
- kind === "single" && /*#__PURE__*/ _jsx(_Fragment, {
331
+ (kind === "single" || kind === "extra") && /*#__PURE__*/ _jsx(_Fragment, {
232
332
  children: /*#__PURE__*/ _jsx(DatePicker, _object_spread_props(_object_spread({}, getConfig()), {
233
- id: "pickerRef",
234
- className: `${className} ${useType === "table" ? "table-date-picker" : ""}`,
235
- popupClassName: `${styles.bhdDatePickerPopup} ${styles.singlePicker} ${popupClassName || ""}`,
236
- cellRender: cellRender,
237
- prevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
238
- style: {
239
- transform: "rotate(90deg)"
240
- }
241
- }),
242
- nextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
243
- style: {
244
- transform: "rotate(-90deg)"
245
- }
246
- }),
247
- superPrevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
248
- style: {
249
- transform: "rotate(90deg)"
250
- }
251
- }),
252
- superNextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
253
- style: {
254
- transform: "rotate(-90deg)"
255
- }
256
- }),
333
+ value: selectedDate,
334
+ showNow: showTime ? showNow : false,
335
+ mode: panelMode,
336
+ open: panelOpen,
337
+ disabledDate: selfDisabledDate,
257
338
  onPanelChange: (value, mode)=>{
258
339
  setPanelMode(mode);
340
+ onPanelChange && onPanelChange(value, mode);
259
341
  },
260
- mode: panelMode,
261
- open: open,
262
342
  onOpenChange: (value)=>{
263
343
  // 打开设置默认mode
264
344
  if (value) {
265
345
  setDefaultMode();
266
346
  }
347
+ onOpenChange && onOpenChange(value);
267
348
  },
268
- showNow: showTime ? showNow : false,
269
- defaultPickerValue: selectedDate,
270
- value: selectedDate,
271
349
  onChange: (date, dateString)=>{
272
350
  setSelectedDate((prevState)=>{
273
351
  selectedDateRef.current = date;
@@ -278,149 +356,68 @@ const BhdDatePicker = (props)=>{
278
356
  return selectedDateStringRef.current;
279
357
  });
280
358
  },
281
- onOk: ()=>{
359
+ onOk: (date)=>{
282
360
  if (showTime) {
283
361
  setTimeout(()=>{
284
- console.log({
285
- selectedDate: selectedDateRef.current,
286
- selectedDateString: selectedDateStringRef.current
287
- });
288
362
  onChange && onChange(selectedDateRef.current, selectedDateStringRef.current);
289
- setOpen(false);
363
+ setPanelOpen(false);
290
364
  }, 0);
291
365
  }
292
- onOk && onOk();
366
+ onOk && onOk(date);
293
367
  },
294
- onClick: ()=>{
295
- setOpen(true);
296
- onClick && onClick();
368
+ onClick: (e)=>{
369
+ setPanelOpen(true);
370
+ onClick && onClick(e);
297
371
  },
298
- onBlur: ()=>{
372
+ onBlur: (e)=>{
299
373
  okClick();
300
- setOpen(false);
301
- onBlur && onBlur();
302
- },
303
- renderExtraFooter: renderExtraFooter
374
+ setPanelOpen(false);
375
+ onBlur && onBlur(e);
376
+ }
304
377
  }))
305
378
  }),
306
379
  kind === "range" && /*#__PURE__*/ _jsx(_Fragment, {
307
380
  children: /*#__PURE__*/ _jsx(RangePicker, _object_spread_props(_object_spread({}, getConfig()), {
308
- className: `${className} ${useType === "table" ? "table-date-picker" : ""}`,
309
- popupClassName: `${styles.bhdDatePickerPopup} ${styles.rangePicker} ${popupClassName || ""}`,
310
- cellRender: cellRender,
311
- prevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
312
- style: {
313
- transform: "rotate(90deg)"
314
- }
315
- }),
316
- nextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
317
- style: {
318
- transform: "rotate(-90deg)"
319
- }
320
- }),
321
- superPrevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
322
- style: {
323
- transform: "rotate(90deg)"
324
- }
325
- }),
326
- superNextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
327
- style: {
328
- transform: "rotate(-90deg)"
329
- }
330
- }),
381
+ value: selectedRangeDate,
382
+ showNow: false,
383
+ mode: rangePanelMode,
384
+ open: panelOpen,
385
+ disabledDate: selfDisabledDate,
331
386
  onPanelChange: (value, mode)=>{
332
387
  setRangePanelMode(mode);
388
+ onPanelChange && onPanelChange(value, mode);
333
389
  },
334
- mode: rangePanelMode,
335
- open: open,
336
390
  onOpenChange: (value)=>{
337
391
  if (value) {
338
392
  setDefaultMode();
339
393
  }
394
+ if (showTime) {
395
+ setPanelOpen(value);
396
+ }
340
397
  setRangeOpenChange(value);
398
+ onOpenChange && onOpenChange(value);
341
399
  },
342
- showNow: false,
343
- defaultPickerValue: selectedRangeDate,
344
- value: selectedRangeDate,
345
- onClick: ()=>{
346
- setOpen(true);
347
- onClick && onClick();
400
+ onClick: (e)=>{
401
+ setPanelOpen(true);
402
+ onClick && onClick(e);
348
403
  },
349
404
  onCalendarChange: (dates, dateStrings, info)=>{
350
405
  setSelectedRangeDate(dates);
351
406
  setSelectedRangeDateString(dateStrings);
407
+ onCalendarChange && onCalendarChange(dates, dateStrings, info);
352
408
  },
353
- onBlur: ()=>{
354
- if ((selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[0]) && (selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[1])) {
409
+ onBlur: (e)=>{
410
+ var _selectedRangeDate, _selectedRangeDate1, _selectedRangeDate2, _selectedRangeDate3;
411
+ if (((_selectedRangeDate = selectedRangeDate) === null || _selectedRangeDate === void 0 ? void 0 : _selectedRangeDate[0]) && ((_selectedRangeDate1 = selectedRangeDate) === null || _selectedRangeDate1 === void 0 ? void 0 : _selectedRangeDate1[1])) {
355
412
  okClick();
356
- setOpen(false);
357
- } else if (!(selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[0]) || !(selectedRangeDate === null || selectedRangeDate === void 0 ? void 0 : selectedRangeDate[1])) {
358
- setOpen(rangeOpenChange);
413
+ setPanelOpen(false);
414
+ } else if (!((_selectedRangeDate2 = selectedRangeDate) === null || _selectedRangeDate2 === void 0 ? void 0 : _selectedRangeDate2[0]) || !((_selectedRangeDate3 = selectedRangeDate) === null || _selectedRangeDate3 === void 0 ? void 0 : _selectedRangeDate3[1])) {
415
+ setPanelOpen(rangeOpenChange);
359
416
  }
360
- onBlur && onBlur();
361
- },
362
- panelRender: (panelNode)=>{
363
- return panelNode;
364
- },
365
- renderExtraFooter: renderExtraFooter
366
- }))
367
- }),
368
- kind === "extra" && /*#__PURE__*/ _jsx(DatePicker, _object_spread_props(_object_spread({}, getConfig()), {
369
- className: `${className} ${useType === "table" ? "hide" : ""}`,
370
- popupClassName: `${styles.bhdDatePickerPopup} ${styles.extraPicker} ${extraReadonly ? styles.readonly : ""} ${popupClassName || ""}`,
371
- cellRender: cellRender,
372
- prevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
373
- style: {
374
- transform: "rotate(90deg)"
375
- }
376
- }),
377
- nextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
378
- style: {
379
- transform: "rotate(-90deg)"
417
+ onBlur && onBlur(e);
380
418
  }
381
- }),
382
- superPrevIcon: /*#__PURE__*/ _jsx(CustomArrow, {
383
- style: {
384
- transform: "rotate(90deg)"
385
- }
386
- }),
387
- superNextIcon: /*#__PURE__*/ _jsx(CustomArrow, {
388
- style: {
389
- transform: "rotate(-90deg)"
390
- }
391
- }),
392
- disabledDate: disabledDate,
393
- allowClear: !extraReadonly,
394
- onPanelChange: (value, mode)=>{
395
- setPanelMode(mode);
396
- },
397
- mode: panelMode,
398
- onOpenChange: (value)=>{
399
- if (value) {
400
- setDefaultMode();
401
- }
402
- },
403
- open: open,
404
- showNow: false,
405
- defaultPickerValue: selectedDate,
406
- value: selectedDate,
407
- onChange: (date, dateString)=>{
408
- setSelectedDate(date);
409
- setSelectedDateString(dateString);
410
- },
411
- onClick: ()=>{
412
- setOpen(true);
413
- onClick && onClick();
414
- },
415
- onBlur: ()=>{
416
- if (!extraReadonly) {
417
- okClick();
418
- }
419
- setOpen(false);
420
- onBlur && onBlur();
421
- },
422
- renderExtraFooter: extraReadonly ? null : renderExtraFooter
423
- }))
419
+ }))
420
+ })
424
421
  ]
425
422
  });
426
423
  };