cnhis-design-vue 2.1.57 → 2.1.59

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 (574) hide show
  1. package/.prettierrc.js +27 -27
  2. package/CHANGELOG.md +2610 -2634
  3. package/README.md +90 -90
  4. package/commitlint.config.js +1 -1
  5. package/es/affix/index.js +8 -8
  6. package/es/age/index.js +18 -18
  7. package/es/alert/index.js +8 -8
  8. package/es/anchor/index.js +8 -8
  9. package/es/auto-complete/index.js +8 -8
  10. package/es/avatar/index.js +8 -8
  11. package/es/back-top/index.js +8 -8
  12. package/es/badge/index.js +8 -8
  13. package/es/base/index.js +8 -8
  14. package/es/big-table/index.js +345 -333
  15. package/es/big-table/style.css +1 -1
  16. package/es/breadcrumb/index.js +8 -8
  17. package/es/button/index.js +31 -31
  18. package/es/calendar/index.js +8 -8
  19. package/es/captcha/index.js +7 -7
  20. package/es/card/index.js +8 -8
  21. package/es/carousel/index.js +8 -8
  22. package/es/cascader/index.js +8 -8
  23. package/es/checkbox/index.js +17 -17
  24. package/es/col/index.js +8 -8
  25. package/es/collapse/index.js +8 -8
  26. package/es/color-picker/index.js +5 -5
  27. package/es/comment/index.js +8 -8
  28. package/es/config-provider/index.js +8 -8
  29. package/es/date-picker/index.js +30 -30
  30. package/es/descriptions/index.js +8 -8
  31. package/es/divider/index.js +8 -8
  32. package/es/drag-layout/index.js +5 -5
  33. package/es/drawer/index.js +8 -8
  34. package/es/dropdown/index.js +8 -8
  35. package/es/editor/index.js +1 -1
  36. package/es/ellipsis/index.js +1 -1
  37. package/es/empty/index.js +8 -8
  38. package/es/fabric-chart/index.js +724 -436
  39. package/es/fabric-chart/style.css +1 -1
  40. package/es/form/index.js +8 -8
  41. package/es/form-model/index.js +8 -8
  42. package/es/form-table/index.js +221 -189
  43. package/es/form-table/style.css +1 -1
  44. package/es/grid/index.js +4 -4
  45. package/es/index/index.js +2042 -1695
  46. package/es/index/style.css +1 -1
  47. package/es/input/index.js +11 -11
  48. package/es/input-number/index.js +8 -8
  49. package/es/keep-cache/index.js +9 -9
  50. package/es/layout/index.js +8 -8
  51. package/es/list/index.js +8 -8
  52. package/es/locale-provider/index.js +8 -8
  53. package/es/map/index.js +13 -13
  54. package/es/mentions/index.js +8 -8
  55. package/es/menu/index.js +8 -8
  56. package/es/message/index.js +8 -8
  57. package/es/multi-chat/index.js +116 -116
  58. package/es/multi-chat-client/index.js +110 -110
  59. package/es/multi-chat-history/index.js +6 -6
  60. package/es/multi-chat-record/index.js +27 -27
  61. package/es/multi-chat-setting/index.js +43 -43
  62. package/es/multi-chat-sip/index.js +1 -1
  63. package/es/notification/index.js +8 -8
  64. package/es/page-header/index.js +8 -8
  65. package/es/pagination/index.js +8 -8
  66. package/es/popconfirm/index.js +8 -8
  67. package/es/popover/index.js +8 -8
  68. package/es/progress/index.js +8 -8
  69. package/es/radio/index.js +17 -17
  70. package/es/rate/index.js +8 -8
  71. package/es/result/index.js +8 -8
  72. package/es/row/index.js +8 -8
  73. package/es/scale-container/index.js +28 -23
  74. package/es/scale-container/style.css +1 -1
  75. package/es/scale-view/index.js +158 -158
  76. package/es/select/index.js +44 -44
  77. package/es/select-label/index.js +50 -50
  78. package/es/select-person/index.js +20 -20
  79. package/es/shortcut-setter/index.js +10 -10
  80. package/es/skeleton/index.js +8 -8
  81. package/es/slider/index.js +8 -8
  82. package/es/space/index.js +8 -8
  83. package/es/spin/index.js +8 -8
  84. package/es/statistic/index.js +8 -8
  85. package/es/steps/index.js +8 -8
  86. package/es/switch/index.js +8 -8
  87. package/es/table-filter/index.js +253 -238
  88. package/es/table-filter/style.css +1 -1
  89. package/es/tabs/index.js +8 -8
  90. package/es/tag/index.js +9 -9
  91. package/es/time-picker/index.js +8 -8
  92. package/es/timeline/index.js +8 -8
  93. package/es/tooltip/index.js +8 -8
  94. package/es/transfer/index.js +8 -8
  95. package/es/tree/index.js +8 -8
  96. package/es/tree-select/index.js +8 -8
  97. package/es/upload/index.js +8 -8
  98. package/es/utils/clickoutside.js +7 -7
  99. package/es/utils/kty.min-1.0.0.js +5 -5
  100. package/es/utils/time-domain.js +16 -16
  101. package/es/utils/utils-map.js +32 -32
  102. package/es/utils/vexutils.js +27 -27
  103. package/es/verification-code/index.js +2 -2
  104. package/lib/cui.common.js +2172 -1825
  105. package/lib/cui.umd.js +2172 -1825
  106. package/lib/cui.umd.min.js +28 -28
  107. package/package.json +110 -110
  108. package/packages/affix/index.js +12 -12
  109. package/packages/affix/src/Affix.jsx +12 -12
  110. package/packages/age/index.js +27 -27
  111. package/packages/age/src/age/index.vue +139 -139
  112. package/packages/age/src/age-com/index.vue +209 -209
  113. package/packages/alert/index.js +12 -12
  114. package/packages/alert/src/Alert.jsx +11 -11
  115. package/packages/anchor/index.js +18 -18
  116. package/packages/anchor/src/Anchor.jsx +11 -11
  117. package/packages/anchor/src/Link.jsx +11 -11
  118. package/packages/auto-complete/index.js +12 -12
  119. package/packages/auto-complete/src/AutoComplete.jsx +12 -12
  120. package/packages/avatar/index.js +12 -12
  121. package/packages/avatar/src/Avatar.jsx +11 -11
  122. package/packages/back-top/index.js +12 -12
  123. package/packages/back-top/src/BackTop.jsx +11 -11
  124. package/packages/badge/index.js +12 -12
  125. package/packages/badge/src/Badge.jsx +11 -11
  126. package/packages/base/index.js +3 -3
  127. package/packages/big-table/index.js +16 -16
  128. package/packages/big-table/src/BigTable.vue +3150 -3144
  129. package/packages/big-table/src/Fieldset.vue +2067 -2067
  130. package/packages/big-table/src/assets/iconfont/iconfont.css +21 -21
  131. package/packages/big-table/src/assets/style/table-base.less +385 -385
  132. package/packages/big-table/src/assets/style/table-global.less +175 -175
  133. package/packages/big-table/src/components/AutoLayoutButton.vue +279 -279
  134. package/packages/big-table/src/components/NoData.vue +81 -81
  135. package/packages/big-table/src/components/TextOverTooltip.vue +120 -120
  136. package/packages/big-table/src/components/edit-form/EditForm.vue +509 -509
  137. package/packages/big-table/src/components/edit-form/edit-component/config-data/index.js +68 -68
  138. package/packages/big-table/src/components/edit-form/edit-component/edit-date-picker/edit-date-picker.vue +60 -60
  139. package/packages/big-table/src/components/edit-form/edit-component/edit-digital/edit-digital.vue +54 -54
  140. package/packages/big-table/src/components/edit-form/edit-component/edit-input/edit-input.vue +39 -39
  141. package/packages/big-table/src/components/edit-form/edit-component/edit-input-password/edit-input-password.vue +79 -79
  142. package/packages/big-table/src/components/edit-form/edit-component/edit-month-picker/edit-month-picker.vue +37 -37
  143. package/packages/big-table/src/components/edit-form/edit-component/edit-search/edit-search.vue +82 -82
  144. package/packages/big-table/src/components/edit-form/edit-component/edit-search-more/edit-search-more.vue +95 -95
  145. package/packages/big-table/src/components/edit-form/edit-component/edit-select/edit-select.vue +40 -40
  146. package/packages/big-table/src/components/edit-form/edit-component/edit-select-multiple/edit-select-multiple.vue +55 -55
  147. package/packages/big-table/src/components/edit-form/edit-component/edit-switch/edit-switch.vue +43 -43
  148. package/packages/big-table/src/components/edit-form/edit-component/edit-textarea/edit-textarea.vue +41 -41
  149. package/packages/big-table/src/components/edit-form/edit-component/edit-time-picker/edit-time-picker.vue +40 -40
  150. package/packages/big-table/src/components/edit-form/edit-component/mixins/bound-date.js +3 -3
  151. package/packages/big-table/src/components/edit-form/edit-component/mixins/dateType.js +217 -217
  152. package/packages/big-table/src/components/edit-form/edit-component/mixins/item-default.js +639 -639
  153. package/packages/big-table/src/components/edit-form/edit-component/mixins/search.js +1247 -1247
  154. package/packages/big-table/src/components/edit-form/edit-component/register-com.js +26 -26
  155. package/packages/big-table/src/components/edit-form/edit-item/form-event.js +80 -80
  156. package/packages/big-table/src/components/edit-form/edit-item/global-props.js +33 -33
  157. package/packages/big-table/src/components/edit-form/edit-item/index.js +4 -4
  158. package/packages/big-table/src/components/edit-form/edit-item/render-methods.js +28 -28
  159. package/packages/big-table/src/components/edit-form/edit-item/validate-rules.js +463 -463
  160. package/packages/big-table/src/components/edit-form/edit-mixins/form-commom.js +673 -673
  161. package/packages/big-table/src/components/edit-form/edit-mixins/index.js +3 -3
  162. package/packages/big-table/src/components/edit-form/edit-utils/index.js +112 -112
  163. package/packages/big-table/src/components/password-com.vue +58 -58
  164. package/packages/big-table/src/components/player-vod/index.vue +57 -57
  165. package/packages/big-table/src/components/player-vod/player.vue +189 -189
  166. package/packages/big-table/src/components/player-vod/video-list.vue +265 -265
  167. package/packages/big-table/src/components/player-vod/video-modal.vue +126 -126
  168. package/packages/big-table/src/utils/CustomPagination.vue +86 -86
  169. package/packages/big-table/src/utils/batchEditing.js +610 -610
  170. package/packages/big-table/src/utils/bigTableProps.js +103 -103
  171. package/packages/big-table/src/utils/format.js +557 -557
  172. package/packages/big-table/src/utils/nestTable.js +109 -109
  173. package/packages/big-table/src/utils/tableParse.js +234 -234
  174. package/packages/breadcrumb/index.js +21 -21
  175. package/packages/breadcrumb/src/Breadcrumb.jsx +11 -11
  176. package/packages/breadcrumb/src/BreadcrumbItem.jsx +11 -11
  177. package/packages/breadcrumb/src/BreadcrumbSeparator.jsx +11 -11
  178. package/packages/button/index.js +21 -21
  179. package/packages/button/src/Button.jsx +11 -11
  180. package/packages/button/src/ButtonGroup.jsx +11 -11
  181. package/packages/button/src/ButtonPrint/components/IdentityVerification.vue +181 -181
  182. package/packages/button/src/ButtonPrint/index.vue +766 -766
  183. package/packages/button/src/ButtonPrint/mixin/his-print.js +95 -95
  184. package/packages/calendar/index.js +12 -12
  185. package/packages/calendar/src/Calendar.jsx +11 -11
  186. package/packages/captcha/index.js +9 -9
  187. package/packages/captcha/src/Captcha.vue +164 -164
  188. package/packages/captcha/src/Index.vue +47 -47
  189. package/packages/captcha/src/SlideVerify.vue +285 -285
  190. package/packages/card/index.js +21 -21
  191. package/packages/card/src/Card.jsx +12 -12
  192. package/packages/card/src/CardGrid.js +7 -7
  193. package/packages/card/src/CardMeta.js +7 -7
  194. package/packages/carousel/index.js +12 -12
  195. package/packages/carousel/src/Carousel.jsx +12 -12
  196. package/packages/cascader/index.js +12 -12
  197. package/packages/cascader/src/Cascader.jsx +11 -11
  198. package/packages/checkbox/index.js +30 -30
  199. package/packages/checkbox/src/Checkbox.jsx +11 -11
  200. package/packages/checkbox/src/CheckboxImg/index.vue +141 -141
  201. package/packages/checkbox/src/Group.jsx +11 -11
  202. package/packages/col/index.js +13 -13
  203. package/packages/col/src/Col.jsx +11 -11
  204. package/packages/collapse/index.js +18 -18
  205. package/packages/collapse/src/Collapse.jsx +11 -11
  206. package/packages/collapse/src/Panel.jsx +11 -11
  207. package/packages/color-picker/index.js +10 -10
  208. package/packages/color-picker/src/color-picker.vue +191 -191
  209. package/packages/color-picker/src/style.less +109 -109
  210. package/packages/comment/index.js +12 -12
  211. package/packages/comment/src/Comment.jsx +11 -11
  212. package/packages/config-provider/index.js +12 -12
  213. package/packages/config-provider/src/ConfigProvider.jsx +11 -11
  214. package/packages/date-picker/index.js +26 -26
  215. package/packages/date-picker/src/DatePicker.jsx +12 -12
  216. package/packages/date-picker/src/MonthPicker.jsx +11 -11
  217. package/packages/date-picker/src/RangePicker.jsx +11 -11
  218. package/packages/date-picker/src/WeekPicker.jsx +11 -11
  219. package/packages/date-picker/src/utils/index.js +374 -374
  220. package/packages/descriptions/index.js +18 -18
  221. package/packages/descriptions/src/Descriptions.jsx +11 -11
  222. package/packages/descriptions/src/Item.jsx +11 -11
  223. package/packages/divider/index.js +12 -12
  224. package/packages/divider/src/Divider.jsx +11 -11
  225. package/packages/drag-layout/DragFormLeftItem.vue +173 -173
  226. package/packages/drag-layout/DragFormRightItem.vue +284 -284
  227. package/packages/drag-layout/I18n-mixins.js +10 -10
  228. package/packages/drag-layout/drag-layout.vue +778 -778
  229. package/packages/drag-layout/index.js +12 -12
  230. package/packages/drawer/index.js +12 -12
  231. package/packages/drawer/src/Drawer.jsx +11 -11
  232. package/packages/dropdown/index.js +12 -12
  233. package/packages/dropdown/src/Dropdown.jsx +11 -11
  234. package/packages/editor/index.js +9 -9
  235. package/packages/ellipsis/index.js +8 -8
  236. package/packages/ellipsis/src/Ellipsis.vue +65 -65
  237. package/packages/empty/index.js +12 -12
  238. package/packages/empty/src/Empty.jsx +11 -11
  239. package/packages/fabric-chart/index.js +9 -9
  240. package/packages/fabric-chart/src/FabricGrid.vue +67 -66
  241. package/packages/fabric-chart/src/components/DropPopup.vue +90 -90
  242. package/packages/fabric-chart/src/components/MouseRightClick.vue +168 -168
  243. package/packages/fabric-chart/src/components/TimeScaleValue.vue +114 -115
  244. package/packages/fabric-chart/src/const/defaultVaule.js +60 -59
  245. package/packages/fabric-chart/src/fabric-chart/FabricCanvas.vue +43 -9
  246. package/packages/fabric-chart/src/fabric-chart/FabricLines.vue +579 -552
  247. package/packages/fabric-chart/src/fabric-chart/FabricPolylines.vue +1142 -1126
  248. package/packages/fabric-chart/src/fabric-chart/FabricScaleValue.vue +134 -134
  249. package/packages/fabric-chart/src/fabric-chart/FabricTextGroup.vue +574 -566
  250. package/packages/fabric-chart/src/mixins/eventCommon.js +34 -1
  251. package/packages/fabric-chart/src/mixins/fabricCommon.js +95 -95
  252. package/packages/fabric-chart/src/mixins/fabricObject.js +193 -193
  253. package/packages/fabric-chart/src/mixins/type.js +5 -5
  254. package/packages/form/index.js +16 -16
  255. package/packages/form/src/Form.jsx +11 -11
  256. package/packages/form/src/Item.jsx +11 -11
  257. package/packages/form-model/index.js +14 -14
  258. package/packages/form-model/src/FormModel.jsx +11 -11
  259. package/packages/form-model/src/Item.jsx +11 -11
  260. package/packages/form-table/index.js +16 -16
  261. package/packages/form-table/src/FormTable.vue +1110 -1110
  262. package/packages/form-table/src/components/table-component/config-data/index.js +80 -80
  263. package/packages/form-table/src/components/table-component/global-props.js +22 -22
  264. package/packages/form-table/src/components/table-component/index.js +8 -8
  265. package/packages/form-table/src/components/table-component/mixins/bound-date.js +455 -455
  266. package/packages/form-table/src/components/table-component/mixins/dateType.js +217 -217
  267. package/packages/form-table/src/components/table-component/mixins/item-default.js +257 -257
  268. package/packages/form-table/src/components/table-component/mixins/search.js +1242 -1238
  269. package/packages/form-table/src/components/table-component/register-com.js +30 -30
  270. package/packages/form-table/src/components/table-component/table-age/table-age.vue +175 -175
  271. package/packages/form-table/src/components/table-component/table-date-picker/table-date-picker.vue +87 -87
  272. package/packages/form-table/src/components/table-component/table-digital/table-digital.vue +93 -93
  273. package/packages/form-table/src/components/table-component/table-input/table-input.vue +81 -81
  274. package/packages/form-table/src/components/table-component/table-input-password/table-input-password.vue +126 -126
  275. package/packages/form-table/src/components/table-component/table-month-picker/table-month-picker.vue +55 -55
  276. package/packages/form-table/src/components/table-component/table-search/table-search.vue +174 -174
  277. package/packages/form-table/src/components/table-component/table-search-more/table-search-more.vue +191 -191
  278. package/packages/form-table/src/components/table-component/table-select/table-select.vue +64 -64
  279. package/packages/form-table/src/components/table-component/table-select-multiple/table-select-multiple.vue +81 -81
  280. package/packages/form-table/src/components/table-component/table-textarea/table-textarea.vue +76 -76
  281. package/packages/form-table/src/components/table-component/table-time-picker/table-time-picker.vue +55 -55
  282. package/packages/form-table/src/components/table-component/table-tree-select/table-tree-select.vue +135 -135
  283. package/packages/form-table/src/components/table-component/text-over-tooltip/TextOverTooltip.vue +97 -97
  284. package/packages/form-table/src/components/table-item/form-event.js +81 -81
  285. package/packages/form-table/src/components/table-item/global-props.js +27 -27
  286. package/packages/form-table/src/components/table-item/index.js +4 -4
  287. package/packages/form-table/src/components/table-item/render-methods.js +28 -28
  288. package/packages/form-table/src/components/table-item/validate-rules.js +520 -520
  289. package/packages/form-table/src/components/table-mixins/form-commom.js +98 -98
  290. package/packages/form-table/src/components/table-mixins/index.js +3 -3
  291. package/packages/form-table/src/components/table-utils/index.js +112 -112
  292. package/packages/form-table/src/disabledDetail.less +46 -46
  293. package/packages/grid/index.js +10 -10
  294. package/packages/grid/src/grid.js +28 -28
  295. package/packages/icon/index.js +10 -10
  296. package/packages/icon/src/icon.js +13 -13
  297. package/packages/index.js +313 -313
  298. package/packages/input/index.js +30 -30
  299. package/packages/input/src/Group.jsx +11 -11
  300. package/packages/input/src/Input.jsx +11 -11
  301. package/packages/input/src/Password.jsx +11 -11
  302. package/packages/input/src/Search.jsx +11 -11
  303. package/packages/input/src/TextArea.jsx +11 -11
  304. package/packages/input/src/input-quick/components/quick-item.vue +284 -284
  305. package/packages/input/src/input-quick/components/quick-popover.vue +596 -596
  306. package/packages/input/src/input-quick/index.vue +137 -137
  307. package/packages/input-number/index.js +12 -12
  308. package/packages/input-number/src/InputNumber.jsx +11 -11
  309. package/packages/keep-cache/KeepCache.js +236 -236
  310. package/packages/keep-cache/index.css +2 -2
  311. package/packages/keep-cache/index.js +8 -8
  312. package/packages/layout/index.js +27 -27
  313. package/packages/layout/src/Content.jsx +11 -11
  314. package/packages/layout/src/Footer.jsx +11 -11
  315. package/packages/layout/src/Header.jsx +11 -11
  316. package/packages/layout/src/Layout.jsx +11 -11
  317. package/packages/layout/src/Sider.jsx +11 -11
  318. package/packages/list/index.js +21 -21
  319. package/packages/list/src/Item.jsx +11 -11
  320. package/packages/list/src/ItemMeta.jsx +11 -11
  321. package/packages/list/src/List.jsx +11 -11
  322. package/packages/locale-provider/index.js +12 -12
  323. package/packages/locale-provider/src/LocaleProvider.jsx +11 -11
  324. package/packages/map/index.js +9 -9
  325. package/packages/map/src/Map.vue +484 -484
  326. package/packages/map/src/popup-map.vue +53 -53
  327. package/packages/mentions/index.js +18 -18
  328. package/packages/mentions/src/Mentions.jsx +11 -11
  329. package/packages/mentions/src/Option.jsx +11 -11
  330. package/packages/menu/index.js +27 -27
  331. package/packages/menu/src/Divider.jsx +11 -11
  332. package/packages/menu/src/Item.jsx +11 -11
  333. package/packages/menu/src/ItemGroup.jsx +11 -11
  334. package/packages/menu/src/Menu.jsx +11 -11
  335. package/packages/menu/src/SubMenu.jsx +11 -11
  336. package/packages/message/index.js +8 -8
  337. package/packages/modal/index.js +10 -10
  338. package/packages/modal/src/Modal.js +7 -7
  339. package/packages/multi-chat/chat/addConference.vue +200 -200
  340. package/packages/multi-chat/chat/addMembers.vue +411 -411
  341. package/packages/multi-chat/chat/advancedFilter.vue +372 -372
  342. package/packages/multi-chat/chat/calling.vue +246 -246
  343. package/packages/multi-chat/chat/chatFooter.vue +1596 -1596
  344. package/packages/multi-chat/chat/chatHistory.vue +605 -605
  345. package/packages/multi-chat/chat/chatMain.vue +1486 -1486
  346. package/packages/multi-chat/chat/client/index.vue +149 -149
  347. package/packages/multi-chat/chat/delay.vue +177 -177
  348. package/packages/multi-chat/chat/evaluate.vue +343 -343
  349. package/packages/multi-chat/chat/messageRecord.vue +324 -324
  350. package/packages/multi-chat/chat/mixins/NoData.js +20 -20
  351. package/packages/multi-chat/chat/mixins/base.js +97 -97
  352. package/packages/multi-chat/chat/mixins/uniRTCAPI.js +80 -80
  353. package/packages/multi-chat/chat/mixins/viewerOptions.js +67 -67
  354. package/packages/multi-chat/chat/quickReply.vue +439 -439
  355. package/packages/multi-chat/chat/robot/index.vue +312 -312
  356. package/packages/multi-chat/chat/scrollList.vue +1238 -1238
  357. package/packages/multi-chat/chat/videoVoiceList.vue +348 -348
  358. package/packages/multi-chat/chat/voice.vue +431 -431
  359. package/packages/multi-chat/components/avatar.vue +113 -113
  360. package/packages/multi-chat/components/chat-tabs-header.vue +251 -251
  361. package/packages/multi-chat/components/classify-tabs.vue +185 -185
  362. package/packages/multi-chat/components/empty.vue +24 -24
  363. package/packages/multi-chat/components/modal-refuse-reason.vue +112 -112
  364. package/packages/multi-chat/components/modal-sip.vue +160 -160
  365. package/packages/multi-chat/components/modal-user-transfer.vue +98 -98
  366. package/packages/multi-chat/components/msg-describe.vue +138 -138
  367. package/packages/multi-chat/components/msg-picture.vue +68 -68
  368. package/packages/multi-chat/components/msg-prescription.vue +205 -205
  369. package/packages/multi-chat/components/read-record.vue +133 -133
  370. package/packages/multi-chat/components/read-status.vue +34 -34
  371. package/packages/multi-chat/components/user-status.vue +198 -198
  372. package/packages/multi-chat/index.js +7 -7
  373. package/packages/multi-chat/setting/authority/index.vue +156 -156
  374. package/packages/multi-chat/setting/authority/roleSetting.vue +204 -204
  375. package/packages/multi-chat/setting/baseInfo/index.vue +1316 -1316
  376. package/packages/multi-chat/setting/customerService/batchSelect.vue +403 -403
  377. package/packages/multi-chat/setting/customerService/index.vue +273 -273
  378. package/packages/multi-chat/setting/event/edit/condition.vue +128 -128
  379. package/packages/multi-chat/setting/event/edit/index.vue +437 -437
  380. package/packages/multi-chat/setting/event/edit/notice.vue +129 -129
  381. package/packages/multi-chat/setting/event/edit/strategy.vue +98 -98
  382. package/packages/multi-chat/setting/event/index.vue +249 -249
  383. package/packages/multi-chat/setting/index.vue +269 -269
  384. package/packages/multi-chat/setting/page.vue +14 -14
  385. package/packages/multi-chat/setting/sessionList/index.vue +412 -412
  386. package/packages/multi-chat/setting/sessionList/messageRecord.vue +372 -372
  387. package/packages/multi-chat/setting/userConfig/index.vue +124 -124
  388. package/packages/multi-chat/setting/worktime/index.vue +274 -274
  389. package/packages/multi-chat/store/actions.js +452 -452
  390. package/packages/multi-chat/store/getters.js +371 -371
  391. package/packages/multi-chat/store/helper.js +66 -66
  392. package/packages/multi-chat/store/index.js +50 -50
  393. package/packages/multi-chat/store/mutation.js +296 -296
  394. package/packages/multi-chat/store/state.js +117 -117
  395. package/packages/multi-chat/style/emoji.css +315 -315
  396. package/packages/multi-chat/style/message.mixin.less +38 -38
  397. package/packages/multi-chat/utils/chatSock.js +93 -93
  398. package/packages/multi-chat/utils/compressImage.js +115 -115
  399. package/packages/multi-chat/utils/emoji.json +68 -68
  400. package/packages/multi-chat/utils/index.js +259 -259
  401. package/packages/multi-chat/utils/observer-scroll.js +49 -49
  402. package/packages/multi-chat/utils/panelsetting.js +48 -48
  403. package/packages/multi-chat-client/index.js +7 -7
  404. package/packages/multi-chat-history/index.js +7 -7
  405. package/packages/multi-chat-record/index.js +7 -7
  406. package/packages/multi-chat-setting/index.js +7 -7
  407. package/packages/multi-chat-sip/index.js +6 -6
  408. package/packages/notification/index.js +8 -8
  409. package/packages/page-header/index.js +12 -12
  410. package/packages/page-header/src/PageHeader.jsx +11 -11
  411. package/packages/pagination/index.js +12 -12
  412. package/packages/pagination/src/Pagination.jsx +11 -11
  413. package/packages/popconfirm/index.js +12 -12
  414. package/packages/popconfirm/src/Popconfirm.jsx +11 -11
  415. package/packages/popover/index.js +12 -12
  416. package/packages/popover/src/Popover.jsx +11 -11
  417. package/packages/progress/index.js +12 -12
  418. package/packages/progress/src/Progress.jsx +11 -11
  419. package/packages/radio/index.js +33 -33
  420. package/packages/radio/src/Group.jsx +11 -11
  421. package/packages/radio/src/Radio.jsx +11 -11
  422. package/packages/radio/src/RadioButton.jsx +11 -11
  423. package/packages/radio/src/RadioImg/index.vue +124 -124
  424. package/packages/rate/index.js +12 -12
  425. package/packages/rate/src/Rate.jsx +11 -11
  426. package/packages/result/index.js +12 -12
  427. package/packages/result/src/Result.jsx +11 -11
  428. package/packages/row/index.js +12 -12
  429. package/packages/row/src/Row.jsx +11 -11
  430. package/packages/scale-container/index.js +8 -8
  431. package/packages/scale-container/src/ScaleContainer.vue +197 -194
  432. package/packages/scale-view/NoData.vue +81 -81
  433. package/packages/scale-view/answerParse.vue +133 -133
  434. package/packages/scale-view/customList.vue +801 -801
  435. package/packages/scale-view/data.js +80 -80
  436. package/packages/scale-view/evaluateCountdown.vue +155 -155
  437. package/packages/scale-view/evaluatePage.vue +202 -202
  438. package/packages/scale-view/formitem/data.js +3991 -3991
  439. package/packages/scale-view/formitem/index.js +6 -6
  440. package/packages/scale-view/formitem/r-address.vue +238 -238
  441. package/packages/scale-view/formitem/r-choice.vue +726 -726
  442. package/packages/scale-view/formitem/r-input.vue +92 -92
  443. package/packages/scale-view/formitem/r-prompt.vue +52 -52
  444. package/packages/scale-view/formitem/r-time.vue +285 -285
  445. package/packages/scale-view/formitem/r-upload-custom-list.vue +242 -242
  446. package/packages/scale-view/formitem/r-upload.vue +287 -287
  447. package/packages/scale-view/formitem/text-over-tooltip/TextOverTooltip.vue +98 -98
  448. package/packages/scale-view/index.js +17 -17
  449. package/packages/scale-view/mixin/NoData.js +38 -38
  450. package/packages/scale-view/mixin/evaluate.js +146 -146
  451. package/packages/scale-view/mixin/index.js +337 -337
  452. package/packages/scale-view/mixin/judgeTypes.js +267 -267
  453. package/packages/scale-view/scaleView.vue +2010 -2010
  454. package/packages/select/index.js +27 -27
  455. package/packages/select/src/CustomSelect/index.vue +130 -130
  456. package/packages/select/src/OptGroup.jsx +11 -11
  457. package/packages/select/src/Option.jsx +11 -11
  458. package/packages/select/src/Select/Select.vue +231 -231
  459. package/packages/select/src/Select/index.js +12 -12
  460. package/packages/select/src/TableSelect/index.vue +514 -514
  461. package/packages/select-label/index.js +14 -14
  462. package/packages/select-label/label-classify.vue +129 -129
  463. package/packages/select-label/labelFormContent.vue +787 -787
  464. package/packages/select-label/select-label.vue +581 -581
  465. package/packages/select-person/index.js +10 -10
  466. package/packages/select-person/search-tree.vue +373 -373
  467. package/packages/select-person/select-person.vue +1696 -1696
  468. package/packages/shortcut-setter/index.js +12 -12
  469. package/packages/shortcut-setter/src/ShortcutSetter.vue +55 -55
  470. package/packages/shortcut-setter/src/ShortcutSetterItem.vue +84 -84
  471. package/packages/shortcut-setter/src/utils/index.js +63 -63
  472. package/packages/skeleton/index.js +12 -12
  473. package/packages/skeleton/src/Skeleton.jsx +11 -11
  474. package/packages/slider/index.js +12 -12
  475. package/packages/slider/src/Slider.jsx +11 -11
  476. package/packages/space/index.js +12 -12
  477. package/packages/space/src/Space.jsx +11 -11
  478. package/packages/spin/index.js +12 -12
  479. package/packages/spin/src/Spin.jsx +11 -11
  480. package/packages/statistic/index.js +18 -18
  481. package/packages/statistic/src/Countdown.jsx +11 -11
  482. package/packages/statistic/src/Statistic.jsx +11 -11
  483. package/packages/steps/index.js +18 -18
  484. package/packages/steps/src/Step.jsx +11 -11
  485. package/packages/steps/src/Steps.jsx +11 -11
  486. package/packages/switch/index.js +12 -12
  487. package/packages/switch/src/Switch.jsx +11 -11
  488. package/packages/table-filter/index.js +27 -27
  489. package/packages/table-filter/src/base-search-com/BaseSearch.vue +2572 -2572
  490. package/packages/table-filter/src/classification/Classification-com.vue +1756 -1756
  491. package/packages/table-filter/src/classification/search-class-name.vue +266 -266
  492. package/packages/table-filter/src/classification/search-professional-model.vue +680 -680
  493. package/packages/table-filter/src/components/TextOverTooltip.vue +107 -107
  494. package/packages/table-filter/src/components/age-com/index.vue +205 -205
  495. package/packages/table-filter/src/components/button-group/ButtonGroup.vue +162 -162
  496. package/packages/table-filter/src/components/button-icon/button-icon.js +33 -33
  497. package/packages/table-filter/src/components/button-icon/getBtnIcon.js +34 -34
  498. package/packages/table-filter/src/components/c-tree-select/tree-select.vue +336 -336
  499. package/packages/table-filter/src/components/drop-button/drop-button.vue +224 -224
  500. package/packages/table-filter/src/components/drop-button/head-btn-icon.js +33 -33
  501. package/packages/table-filter/src/components/drop-view/drop-view.vue +89 -89
  502. package/packages/table-filter/src/components/multi-select/multi-select.vue +227 -227
  503. package/packages/table-filter/src/components/out-quick-search/out-quick-search.vue +340 -340
  504. package/packages/table-filter/src/components/range-age/index.vue +172 -172
  505. package/packages/table-filter/src/components/search-condition/SearchCondition.vue +1897 -1897
  506. package/packages/table-filter/src/components/search-condition/fieldTypeList.js +169 -169
  507. package/packages/table-filter/src/components/search-filter/SearchFilter.vue +278 -278
  508. package/packages/table-filter/src/components/search-modal/set-classification.vue +310 -310
  509. package/packages/table-filter/src/components/table-modal/TableModal.vue +473 -463
  510. package/packages/table-filter/src/const/dataOptions.js +43 -43
  511. package/packages/table-filter/src/const/index.js +1 -1
  512. package/packages/table-filter/src/index.vue +584 -584
  513. package/packages/table-filter/src/mixins/mixins.js +694 -694
  514. package/packages/table-filter/src/mixins/tableSearchCon.js +128 -128
  515. package/packages/table-filter/src/mixins/wordBookutils.js +102 -102
  516. package/packages/table-filter/src/quick-search/QuickSearch.vue +2125 -2125
  517. package/packages/tabs/index.js +18 -18
  518. package/packages/tabs/src/TabPane.jsx +11 -11
  519. package/packages/tabs/src/Tabs.jsx +11 -11
  520. package/packages/tag/index.js +21 -21
  521. package/packages/tag/src/CheckableTag.jsx +11 -11
  522. package/packages/tag/src/Tag.jsx +11 -11
  523. package/packages/tag/src/TagGroup.vue +621 -621
  524. package/packages/time-picker/index.js +12 -12
  525. package/packages/time-picker/src/TimePicker.jsx +11 -11
  526. package/packages/timeline/index.js +14 -14
  527. package/packages/timeline/src/Item.jsx +11 -11
  528. package/packages/timeline/src/Timeline.jsx +11 -11
  529. package/packages/tooltip/index.js +12 -12
  530. package/packages/tooltip/src/Tooltip.jsx +11 -11
  531. package/packages/transfer/index.js +12 -12
  532. package/packages/transfer/src/Transfer.jsx +11 -11
  533. package/packages/tree/index.js +18 -18
  534. package/packages/tree/src/Tree.jsx +11 -11
  535. package/packages/tree/src/TreeNode.jsx +11 -11
  536. package/packages/tree-select/index.js +18 -18
  537. package/packages/tree-select/src/TreeNode.jsx +11 -11
  538. package/packages/tree-select/src/TreeSelect.jsx +11 -11
  539. package/packages/upload/chunk-upload/chunk-upload-new.vue +1001 -1001
  540. package/packages/upload/chunk-upload/vod-chunk-upload.vue +749 -749
  541. package/packages/upload/chunk-upload/vod-upload-modal.vue +100 -100
  542. package/packages/upload/index.js +12 -12
  543. package/packages/upload/src/Upload.jsx +11 -11
  544. package/packages/verification-code/SlideVerify.vue +306 -306
  545. package/packages/verification-code/index.js +17 -17
  546. package/packages/verification-code/verification-code.vue +147 -147
  547. package/src/component/player-vod/index.vue +57 -57
  548. package/src/component/player-vod/player.vue +188 -188
  549. package/src/component/player-vod/video-list.vue +262 -262
  550. package/src/component/player-vod/video-modal.vue +128 -128
  551. package/src/component/select-options/index.vue +430 -413
  552. package/src/component/select-pages/index.vue +95 -95
  553. package/src/component/svg/index.vue +59 -59
  554. package/src/core/create.js +6 -6
  555. package/src/core/event.js +23 -23
  556. package/src/core/table-methods.js +444 -444
  557. package/src/directive/flexibleResize.js +151 -151
  558. package/src/directive/preventReClick.js +12 -12
  559. package/src/directive/scroll.js +230 -230
  560. package/src/global/variable.js +2 -2
  561. package/src/style/normalize.css +424 -424
  562. package/src/style/style.less +49 -49
  563. package/src/utils/UniRTCv2.js +626 -626
  564. package/src/utils/chatFetch.js +61 -61
  565. package/src/utils/clickoutside.js +75 -75
  566. package/src/utils/crypto.js +25 -25
  567. package/src/utils/index.js +81 -81
  568. package/src/utils/kty-sdk.js +582 -582
  569. package/src/utils/kty.min-1.0.0.js +14378 -14378
  570. package/src/utils/sip-device.js +79 -79
  571. package/src/utils/time-domain.js +193 -193
  572. package/src/utils/trtc.js +1 -1
  573. package/src/utils/utils-map.js +484 -484
  574. package/src/utils/vexutils.js +836 -836
@@ -1,374 +1,374 @@
1
- /**
2
- * 重写antd的一些方法满足业务需要
3
- */
4
- import { message } from 'ant-design-vue/es';
5
- import DateInput from 'ant-design-vue/es/vc-calendar/src/date/DateInput.js';
6
- import TimePickerHeader from 'ant-design-vue/es/vc-time-picker/Header.js';
7
- import KEYCODE from 'ant-design-vue/es/_util/KeyCode';
8
- import moment from 'moment';
9
-
10
- function checkDateVal(val, type) {
11
- const regObj = {
12
- YYYYMMDD: /\d{8}/,
13
- YYYYMM: /\d{6}/,
14
- YYYY: /\d{4}/,
15
- 'YYYY-MM-DD': /\d{4}-\d\d-\d\d/,
16
- 'YYYY-MM': /\d{4}-\d\d/
17
- };
18
- if (regObj[type]) {
19
- return regObj[type].test(val);
20
- }
21
- return false;
22
- }
23
-
24
- function checkTimeVal(val, type) {
25
- const regObj = {
26
- 'HH:mm:ss': /\d\d:\d\d:\d\d/,
27
- 'HH:mm': /\d\d:\d\d/,
28
- HHmmss: /\d\d\d\d\d\d/,
29
- HHmm: /\d\d\d\d/,
30
- HH: /\d\d/
31
- };
32
- if (regObj[type]) {
33
- return regObj[type].test(val);
34
- }
35
- return false;
36
- }
37
-
38
- /**
39
- *
40
- * @param {string} str
41
- * @param {string} formatStr
42
- * @returns
43
- */
44
- function getHasTimeValue(str, formatStr) {
45
- let res = str;
46
- let [dateType, timeType] = formatStr.split(' ');
47
- let dateTypeStr = dateType.toUpperCase().replace(/-/g, '');
48
- let timeTypeStr = timeType.replace(/:/g, '');
49
- if (str.length > 8) {
50
- let dateValue = str.slice(0, 8);
51
- let timeValue = str.slice(8).trim();
52
-
53
- // time 兼容两种输入 HH:mm:ss | HHmmss
54
- if (checkDateVal(dateValue, dateTypeStr) && (checkTimeVal(timeValue, timeType) || checkTimeVal(timeValue, timeTypeStr))) {
55
- // 使用 moment 的 iso Date 格式转换值
56
- dateValue = moment(dateValue, dateTypeStr).format(dateType);
57
- // 使用 moment 的 iso time 格式转换值
58
- timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
59
- res = `${dateValue} ${timeValue}`;
60
- }
61
- }
62
- return res;
63
- }
64
-
65
- function mendTime(timeVal, timeType, defVal) {
66
- let res = timeVal;
67
- return res + defVal.slice(0, timeType.length).slice(timeVal.length);
68
- }
69
-
70
- /**
71
- * 补全时间
72
- * @param {*} str
73
- * @param {*} formatStr
74
- * @returns
75
- */
76
- function strFormatToDate(str, formatStr) {
77
- let res = '';
78
- let [dateType, timeType] = formatStr.split(' ');
79
- let updateType = dateType.toUpperCase();
80
- let dateTypeStr = updateType.replace(/-/g, '');
81
- let timeTypeStr = timeType.replace(/:/g, '');
82
- let strDateValue = '',
83
- strTimeValue = '';
84
- let ordinary = false;
85
- if (str.length >= 10) {
86
- strDateValue = str.slice(0, 10);
87
- }
88
- // 是否是"YYYY-MM-DD" 格式
89
- if (checkDateVal(strDateValue, updateType)) {
90
- strTimeValue = str.slice(10).trim();
91
- ordinary = true;
92
- } else {
93
- // 处理“yyyymmdd”的格式
94
- if (str.length >= 8) {
95
- strDateValue = str.slice(0, 8);
96
- strTimeValue = str.slice(8).trim();
97
- }
98
- }
99
-
100
- // time 兼容两种输入 HH:mm:ss | HHmmss
101
- let ff = !checkTimeVal(strTimeValue, timeType) || !checkTimeVal(strTimeValue, timeTypeStr);
102
-
103
- // 日期格式
104
- let dateFlag = ordinary || checkDateVal(strDateValue, dateTypeStr);
105
-
106
- if (dateFlag && ff) {
107
- if (strTimeValue && ff) {
108
- let f = strTimeValue.includes(':') || ordinary;
109
- if (f) {
110
- strTimeValue = mendTime(strTimeValue, timeType, '00:00:00');
111
- } else {
112
- strTimeValue = mendTime(strTimeValue, timeTypeStr, '000000');
113
- }
114
- }
115
- if (!strTimeValue) {
116
- strTimeValue = '00:00:00';
117
- }
118
- // 使用 moment 的 iso Date 格式转换值
119
- strDateValue = moment(strDateValue, dateTypeStr).format(dateType);
120
- // 使用 moment 的 iso time 格式转换值
121
- strTimeValue = strDateValue ? moment(strTimeValue, timeTypeStr).format(timeType) : '';
122
- res = `${strDateValue} ${strTimeValue}`;
123
- // 有解析错误的置空
124
- if (res.includes('Invalid date')) {
125
- res = '';
126
- }
127
- }
128
-
129
- return res;
130
- }
131
-
132
- function getHasTimeValue2(str, formatStr) {
133
- let res = '';
134
- let [dateType, timeType] = formatStr.split(' ');
135
- let updateType = dateType.toUpperCase();
136
- let dateTypeStr = updateType.replace(/-/g, '');
137
- let timeTypeStr = timeType.replace(/:/g, '');
138
-
139
- if (str.length >= 8) {
140
- let dateValue = str.slice(0, 8);
141
- let timeValue = str.slice(8).trim();
142
- let ff = !checkTimeVal(timeValue, timeType) || !checkTimeVal(timeValue, timeTypeStr);
143
-
144
- // time 兼容两种输入 HH:mm:ss | HHmmss
145
- if (checkDateVal(dateValue, dateTypeStr) && ff) {
146
- if (timeValue && ff) {
147
- let f = timeValue.includes(':');
148
- if (f) {
149
- timeValue = timeValue + '00:00:00'.slice(timeValue.length);
150
- } else {
151
- timeValue = timeValue + '000000'.slice(timeValue.length);
152
- }
153
- }
154
- if (!timeValue) {
155
- timeValue = '00:00:00';
156
- }
157
- // 使用 moment 的 iso Date 格式转换值
158
- dateValue = moment(dateValue, dateTypeStr).format(dateType);
159
- // 使用 moment 的 iso time 格式转换值
160
- timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
161
- res = `${dateValue} ${timeValue}`;
162
- }
163
- }
164
- return res;
165
- }
166
- const extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
167
-
168
- function sleep() {
169
- return new Promise(res => {
170
- setTimeout(() => res(), 0);
171
- });
172
- }
173
-
174
- const getMomentObjectIfValid = date => {
175
- if (moment.isMoment(date) && date.isValid()) {
176
- return date;
177
- }
178
- return false;
179
- };
180
-
181
- function customGetValue(str, formatStr) {
182
- let res = '';
183
- // 如果有含有“时间”, 自定义拼值
184
- if (formatStr && /(HH)|(hh)/.test(formatStr)) {
185
- res = strFormatToDate(str, formatStr);
186
- } else {
187
- let dateTypeStr = formatStr.toUpperCase().replace(/-/g, '');
188
- res = checkDateVal(str, dateTypeStr) ? moment(str, dateTypeStr).format(formatStr) : str;
189
- }
190
- // 如是含有错误解析,重置输出
191
- if (res.includes('Invalid date')) {
192
- res = '';
193
- }
194
- return res;
195
- }
196
-
197
- function onInputChange11(e) {
198
- const { value: str, composing } = e.target;
199
- const { str: oldStr = '' } = this;
200
-
201
- const { disabledDate, format, selectedValue } = this.$props;
202
-
203
- // 没有内容,合法并直接退出
204
- if (!str) {
205
- this.__emit('change', null);
206
- this.setState({
207
- invalid: false,
208
- str
209
- });
210
- return;
211
- }
212
-
213
- // 不合法直接退出
214
- const parsed = moment(str, format, true);
215
- if (!parsed.isValid()) {
216
- this.setState({
217
- invalid: true,
218
- str
219
- });
220
- return;
221
- }
222
- const value = this.value.clone();
223
- value
224
- .year(parsed.year())
225
- .month(parsed.month())
226
- .date(parsed.date())
227
- .hour(parsed.hour())
228
- .minute(parsed.minute())
229
- .second(parsed.second());
230
-
231
- if (!value || (disabledDate && disabledDate(value))) {
232
- this.setState({
233
- invalid: true,
234
- str
235
- });
236
- return;
237
- }
238
-
239
- if (selectedValue !== value || (selectedValue && value && !selectedValue.isSame(value))) {
240
- this.setState({
241
- invalid: false,
242
- str
243
- });
244
- this.__emit('change', value);
245
- }
246
- }
247
-
248
- export function rewriteAntd() {
249
- /**
250
- * 改写日期弹窗框的 input 元素的 onInputChange 方法,满足格式化 '20221014121517' | '20221014 12:15:17'
251
- */
252
- /**
253
- * TODO: 输入完整的日期格式,光标会移到最后。有可能是 antd 的bug
254
- */
255
- if (DateInput && DateInput.methods) {
256
- DateInput.methods.onInputChange11 = onInputChange11;
257
- // 缓存原有的方法
258
- DateInput.methods.originalOnInputChange = DateInput.methods.onInputChange;
259
- // 重新 onInputChange
260
- DateInput.methods.onInputChange = function(e) {
261
- // console.log(e.target.selectionStart, "e.target.selectionStart");
262
- const { value: str, composing } = e.target;
263
- let res = str;
264
- const formatStr = this.format;
265
- // 如果有含有“时间”, 自定义拼值
266
- if (formatStr && /(HH)|(hh)/.test(formatStr)) {
267
- res = getHasTimeValue(str, formatStr);
268
- } else {
269
- let dateTypeStr = this.format.toUpperCase().replace(/-/g, '');
270
- res = checkDateVal(str, dateTypeStr) ? moment(str, dateTypeStr).format(this.format) : str;
271
- }
272
- // 如是含有错误解析,重置输出
273
- if (res.includes('Invalid date')) {
274
- res = str;
275
- }
276
- // 调用原来的 onInputChange 方法
277
- // 原本是传入事件对象,目前只传入需要的参数
278
- this.originalOnInputChange({
279
- target: { value: res, composing }
280
- });
281
- // this.originalOnInputChange(e);
282
- };
283
-
284
- /**
285
- * 改写 onKeyDown 事件,满足按回车键,不满足的 yyyymmdd: hhmmss 格式的自动补“时间”(hhmmss)
286
- * @param {*} event
287
- * @returns
288
- */
289
- DateInput.methods.onKeyDown = async function(event) {
290
- const { keyCode, target } = event;
291
-
292
- if (keyCode === KEYCODE.ENTER) {
293
- const formatStr = this.format;
294
- const tValue = target.value;
295
- const pProps = this.$parent.$props;
296
- // 回车自动补全“时间”
297
- if (tValue && formatStr && /(HH)|(hh)/.test(formatStr) && (!extendedIsoRegex.test(tValue) || checkDateVal(tValue, 'YYYY-MM-DD'))) {
298
- // 是否可以自动补全时间
299
- let ress = strFormatToDate(tValue, formatStr);
300
- if (ress) {
301
- this.onInputChange11({
302
- target: { value: ress }
303
- });
304
- await sleep();
305
- }
306
- }
307
- const { disabledDate, value, selectedValue } = this.$props;
308
-
309
- const validateDate = !disabledDate || !disabledDate(value);
310
- // if (selectedValue !== value || (selectedValue && value && !selectedValue.isSame(value))) {
311
-
312
- // }
313
- let def = getMomentObjectIfValid(pProps.value) || getMomentObjectIfValid(pProps.defaultValue);
314
- if (validateDate) {
315
- let dateTypeStr = formatStr.toUpperCase().replace(/-/g, '');
316
- let f = checkDateVal(tValue, formatStr) || checkDateVal(tValue, dateTypeStr);
317
- // 有输入的值,但是格式错误,提示
318
- if (tValue && ((!customGetValue(tValue, formatStr) && !extendedIsoRegex.test(tValue) && /(HH)|(hh)/.test(formatStr)) || (['YYYYMMDD', 'YYYYMM', 'YYYY'].includes(dateTypeStr) && !f))) {
319
- console.log(tValue, '-----------------');
320
- message.error('请输入有效的格式');
321
- }
322
- if (!selectedValue && !def) {
323
- message.error('请输入有效的格式');
324
- return false;
325
- }
326
- if (!selectedValue && def && def.isSame(value)) {
327
- this.__emit('select', null);
328
- return false;
329
- }
330
- this.__emit('select', value.clone());
331
- }
332
- event.preventDefault();
333
- }
334
- };
335
- }
336
-
337
- /**
338
- * TimePickerHeader
339
- */
340
- if (TimePickerHeader && TimePickerHeader.methods) {
341
- // 缓存原有的方法
342
- TimePickerHeader.methods.originalOnKeyDown = TimePickerHeader.methods.onKeyDown;
343
-
344
- TimePickerHeader.methods.onKeyDown = async function(event) {
345
- const { keyCode, target } = event;
346
-
347
- if (keyCode === KEYCODE.ENTER) {
348
- const timeType = this.format;
349
- const tValue = target.value;
350
- let timeValue = tValue;
351
- let timeTypeStr = timeType.replace(/:/g, '');
352
- // iso time 格式
353
- if (checkTimeVal(timeValue, timeTypeStr)) {
354
- timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
355
- if (checkTimeVal(timeValue, timeType)) {
356
- this.onInputChange({
357
- target: { value: timeValue }
358
- });
359
- await sleep();
360
- this.__emit('esc');
361
- return;
362
- }
363
- } else if (checkTimeVal(timeValue, timeType)) {
364
- // 满足条件按回车关闭弹窗
365
- this.__emit('esc');
366
- } else {
367
- message.error('请输入有效的时间格式');
368
- }
369
- }
370
-
371
- this.originalOnKeyDown(event);
372
- };
373
- }
374
- }
1
+ /**
2
+ * 重写antd的一些方法满足业务需要
3
+ */
4
+ import { message } from 'ant-design-vue/es';
5
+ import DateInput from 'ant-design-vue/es/vc-calendar/src/date/DateInput.js';
6
+ import TimePickerHeader from 'ant-design-vue/es/vc-time-picker/Header.js';
7
+ import KEYCODE from 'ant-design-vue/es/_util/KeyCode';
8
+ import moment from 'moment';
9
+
10
+ function checkDateVal(val, type) {
11
+ const regObj = {
12
+ YYYYMMDD: /\d{8}/,
13
+ YYYYMM: /\d{6}/,
14
+ YYYY: /\d{4}/,
15
+ 'YYYY-MM-DD': /\d{4}-\d\d-\d\d/,
16
+ 'YYYY-MM': /\d{4}-\d\d/
17
+ };
18
+ if (regObj[type]) {
19
+ return regObj[type].test(val);
20
+ }
21
+ return false;
22
+ }
23
+
24
+ function checkTimeVal(val, type) {
25
+ const regObj = {
26
+ 'HH:mm:ss': /\d\d:\d\d:\d\d/,
27
+ 'HH:mm': /\d\d:\d\d/,
28
+ HHmmss: /\d\d\d\d\d\d/,
29
+ HHmm: /\d\d\d\d/,
30
+ HH: /\d\d/
31
+ };
32
+ if (regObj[type]) {
33
+ return regObj[type].test(val);
34
+ }
35
+ return false;
36
+ }
37
+
38
+ /**
39
+ *
40
+ * @param {string} str
41
+ * @param {string} formatStr
42
+ * @returns
43
+ */
44
+ function getHasTimeValue(str, formatStr) {
45
+ let res = str;
46
+ let [dateType, timeType] = formatStr.split(' ');
47
+ let dateTypeStr = dateType.toUpperCase().replace(/-/g, '');
48
+ let timeTypeStr = timeType.replace(/:/g, '');
49
+ if (str.length > 8) {
50
+ let dateValue = str.slice(0, 8);
51
+ let timeValue = str.slice(8).trim();
52
+
53
+ // time 兼容两种输入 HH:mm:ss | HHmmss
54
+ if (checkDateVal(dateValue, dateTypeStr) && (checkTimeVal(timeValue, timeType) || checkTimeVal(timeValue, timeTypeStr))) {
55
+ // 使用 moment 的 iso Date 格式转换值
56
+ dateValue = moment(dateValue, dateTypeStr).format(dateType);
57
+ // 使用 moment 的 iso time 格式转换值
58
+ timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
59
+ res = `${dateValue} ${timeValue}`;
60
+ }
61
+ }
62
+ return res;
63
+ }
64
+
65
+ function mendTime(timeVal, timeType, defVal) {
66
+ let res = timeVal;
67
+ return res + defVal.slice(0, timeType.length).slice(timeVal.length);
68
+ }
69
+
70
+ /**
71
+ * 补全时间
72
+ * @param {*} str
73
+ * @param {*} formatStr
74
+ * @returns
75
+ */
76
+ function strFormatToDate(str, formatStr) {
77
+ let res = '';
78
+ let [dateType, timeType] = formatStr.split(' ');
79
+ let updateType = dateType.toUpperCase();
80
+ let dateTypeStr = updateType.replace(/-/g, '');
81
+ let timeTypeStr = timeType.replace(/:/g, '');
82
+ let strDateValue = '',
83
+ strTimeValue = '';
84
+ let ordinary = false;
85
+ if (str.length >= 10) {
86
+ strDateValue = str.slice(0, 10);
87
+ }
88
+ // 是否是"YYYY-MM-DD" 格式
89
+ if (checkDateVal(strDateValue, updateType)) {
90
+ strTimeValue = str.slice(10).trim();
91
+ ordinary = true;
92
+ } else {
93
+ // 处理“yyyymmdd”的格式
94
+ if (str.length >= 8) {
95
+ strDateValue = str.slice(0, 8);
96
+ strTimeValue = str.slice(8).trim();
97
+ }
98
+ }
99
+
100
+ // time 兼容两种输入 HH:mm:ss | HHmmss
101
+ let ff = !checkTimeVal(strTimeValue, timeType) || !checkTimeVal(strTimeValue, timeTypeStr);
102
+
103
+ // 日期格式
104
+ let dateFlag = ordinary || checkDateVal(strDateValue, dateTypeStr);
105
+
106
+ if (dateFlag && ff) {
107
+ if (strTimeValue && ff) {
108
+ let f = strTimeValue.includes(':') || ordinary;
109
+ if (f) {
110
+ strTimeValue = mendTime(strTimeValue, timeType, '00:00:00');
111
+ } else {
112
+ strTimeValue = mendTime(strTimeValue, timeTypeStr, '000000');
113
+ }
114
+ }
115
+ if (!strTimeValue) {
116
+ strTimeValue = '00:00:00';
117
+ }
118
+ // 使用 moment 的 iso Date 格式转换值
119
+ strDateValue = moment(strDateValue, dateTypeStr).format(dateType);
120
+ // 使用 moment 的 iso time 格式转换值
121
+ strTimeValue = strDateValue ? moment(strTimeValue, timeTypeStr).format(timeType) : '';
122
+ res = `${strDateValue} ${strTimeValue}`;
123
+ // 有解析错误的置空
124
+ if (res.includes('Invalid date')) {
125
+ res = '';
126
+ }
127
+ }
128
+
129
+ return res;
130
+ }
131
+
132
+ function getHasTimeValue2(str, formatStr) {
133
+ let res = '';
134
+ let [dateType, timeType] = formatStr.split(' ');
135
+ let updateType = dateType.toUpperCase();
136
+ let dateTypeStr = updateType.replace(/-/g, '');
137
+ let timeTypeStr = timeType.replace(/:/g, '');
138
+
139
+ if (str.length >= 8) {
140
+ let dateValue = str.slice(0, 8);
141
+ let timeValue = str.slice(8).trim();
142
+ let ff = !checkTimeVal(timeValue, timeType) || !checkTimeVal(timeValue, timeTypeStr);
143
+
144
+ // time 兼容两种输入 HH:mm:ss | HHmmss
145
+ if (checkDateVal(dateValue, dateTypeStr) && ff) {
146
+ if (timeValue && ff) {
147
+ let f = timeValue.includes(':');
148
+ if (f) {
149
+ timeValue = timeValue + '00:00:00'.slice(timeValue.length);
150
+ } else {
151
+ timeValue = timeValue + '000000'.slice(timeValue.length);
152
+ }
153
+ }
154
+ if (!timeValue) {
155
+ timeValue = '00:00:00';
156
+ }
157
+ // 使用 moment 的 iso Date 格式转换值
158
+ dateValue = moment(dateValue, dateTypeStr).format(dateType);
159
+ // 使用 moment 的 iso time 格式转换值
160
+ timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
161
+ res = `${dateValue} ${timeValue}`;
162
+ }
163
+ }
164
+ return res;
165
+ }
166
+ const extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
167
+
168
+ function sleep() {
169
+ return new Promise(res => {
170
+ setTimeout(() => res(), 0);
171
+ });
172
+ }
173
+
174
+ const getMomentObjectIfValid = date => {
175
+ if (moment.isMoment(date) && date.isValid()) {
176
+ return date;
177
+ }
178
+ return false;
179
+ };
180
+
181
+ function customGetValue(str, formatStr) {
182
+ let res = '';
183
+ // 如果有含有“时间”, 自定义拼值
184
+ if (formatStr && /(HH)|(hh)/.test(formatStr)) {
185
+ res = strFormatToDate(str, formatStr);
186
+ } else {
187
+ let dateTypeStr = formatStr.toUpperCase().replace(/-/g, '');
188
+ res = checkDateVal(str, dateTypeStr) ? moment(str, dateTypeStr).format(formatStr) : str;
189
+ }
190
+ // 如是含有错误解析,重置输出
191
+ if (res.includes('Invalid date')) {
192
+ res = '';
193
+ }
194
+ return res;
195
+ }
196
+
197
+ function onInputChange11(e) {
198
+ const { value: str, composing } = e.target;
199
+ const { str: oldStr = '' } = this;
200
+
201
+ const { disabledDate, format, selectedValue } = this.$props;
202
+
203
+ // 没有内容,合法并直接退出
204
+ if (!str) {
205
+ this.__emit('change', null);
206
+ this.setState({
207
+ invalid: false,
208
+ str
209
+ });
210
+ return;
211
+ }
212
+
213
+ // 不合法直接退出
214
+ const parsed = moment(str, format, true);
215
+ if (!parsed.isValid()) {
216
+ this.setState({
217
+ invalid: true,
218
+ str
219
+ });
220
+ return;
221
+ }
222
+ const value = this.value.clone();
223
+ value
224
+ .year(parsed.year())
225
+ .month(parsed.month())
226
+ .date(parsed.date())
227
+ .hour(parsed.hour())
228
+ .minute(parsed.minute())
229
+ .second(parsed.second());
230
+
231
+ if (!value || (disabledDate && disabledDate(value))) {
232
+ this.setState({
233
+ invalid: true,
234
+ str
235
+ });
236
+ return;
237
+ }
238
+
239
+ if (selectedValue !== value || (selectedValue && value && !selectedValue.isSame(value))) {
240
+ this.setState({
241
+ invalid: false,
242
+ str
243
+ });
244
+ this.__emit('change', value);
245
+ }
246
+ }
247
+
248
+ export function rewriteAntd() {
249
+ /**
250
+ * 改写日期弹窗框的 input 元素的 onInputChange 方法,满足格式化 '20221014121517' | '20221014 12:15:17'
251
+ */
252
+ /**
253
+ * TODO: 输入完整的日期格式,光标会移到最后。有可能是 antd 的bug
254
+ */
255
+ if (DateInput && DateInput.methods) {
256
+ DateInput.methods.onInputChange11 = onInputChange11;
257
+ // 缓存原有的方法
258
+ DateInput.methods.originalOnInputChange = DateInput.methods.onInputChange;
259
+ // 重新 onInputChange
260
+ DateInput.methods.onInputChange = function(e) {
261
+ // console.log(e.target.selectionStart, "e.target.selectionStart");
262
+ const { value: str, composing } = e.target;
263
+ let res = str;
264
+ const formatStr = this.format;
265
+ // 如果有含有“时间”, 自定义拼值
266
+ if (formatStr && /(HH)|(hh)/.test(formatStr)) {
267
+ res = getHasTimeValue(str, formatStr);
268
+ } else {
269
+ let dateTypeStr = this.format.toUpperCase().replace(/-/g, '');
270
+ res = checkDateVal(str, dateTypeStr) ? moment(str, dateTypeStr).format(this.format) : str;
271
+ }
272
+ // 如是含有错误解析,重置输出
273
+ if (res.includes('Invalid date')) {
274
+ res = str;
275
+ }
276
+ // 调用原来的 onInputChange 方法
277
+ // 原本是传入事件对象,目前只传入需要的参数
278
+ this.originalOnInputChange({
279
+ target: { value: res, composing }
280
+ });
281
+ // this.originalOnInputChange(e);
282
+ };
283
+
284
+ /**
285
+ * 改写 onKeyDown 事件,满足按回车键,不满足的 yyyymmdd: hhmmss 格式的自动补“时间”(hhmmss)
286
+ * @param {*} event
287
+ * @returns
288
+ */
289
+ DateInput.methods.onKeyDown = async function(event) {
290
+ const { keyCode, target } = event;
291
+
292
+ if (keyCode === KEYCODE.ENTER) {
293
+ const formatStr = this.format;
294
+ const tValue = target.value;
295
+ const pProps = this.$parent.$props;
296
+ // 回车自动补全“时间”
297
+ if (tValue && formatStr && /(HH)|(hh)/.test(formatStr) && (!extendedIsoRegex.test(tValue) || checkDateVal(tValue, 'YYYY-MM-DD'))) {
298
+ // 是否可以自动补全时间
299
+ let ress = strFormatToDate(tValue, formatStr);
300
+ if (ress) {
301
+ this.onInputChange11({
302
+ target: { value: ress }
303
+ });
304
+ await sleep();
305
+ }
306
+ }
307
+ const { disabledDate, value, selectedValue } = this.$props;
308
+
309
+ const validateDate = !disabledDate || !disabledDate(value);
310
+ // if (selectedValue !== value || (selectedValue && value && !selectedValue.isSame(value))) {
311
+
312
+ // }
313
+ let def = getMomentObjectIfValid(pProps.value) || getMomentObjectIfValid(pProps.defaultValue);
314
+ if (validateDate) {
315
+ let dateTypeStr = formatStr.toUpperCase().replace(/-/g, '');
316
+ let f = checkDateVal(tValue, formatStr) || checkDateVal(tValue, dateTypeStr);
317
+ // 有输入的值,但是格式错误,提示
318
+ if (tValue && ((!customGetValue(tValue, formatStr) && !extendedIsoRegex.test(tValue) && /(HH)|(hh)/.test(formatStr)) || (['YYYYMMDD', 'YYYYMM', 'YYYY'].includes(dateTypeStr) && !f))) {
319
+ console.log(tValue, '-----------------');
320
+ message.error('请输入有效的格式');
321
+ }
322
+ if (!selectedValue && !def) {
323
+ message.error('请输入有效的格式');
324
+ return false;
325
+ }
326
+ if (!selectedValue && def && def.isSame(value)) {
327
+ this.__emit('select', null);
328
+ return false;
329
+ }
330
+ this.__emit('select', value.clone());
331
+ }
332
+ event.preventDefault();
333
+ }
334
+ };
335
+ }
336
+
337
+ /**
338
+ * TimePickerHeader
339
+ */
340
+ if (TimePickerHeader && TimePickerHeader.methods) {
341
+ // 缓存原有的方法
342
+ TimePickerHeader.methods.originalOnKeyDown = TimePickerHeader.methods.onKeyDown;
343
+
344
+ TimePickerHeader.methods.onKeyDown = async function(event) {
345
+ const { keyCode, target } = event;
346
+
347
+ if (keyCode === KEYCODE.ENTER) {
348
+ const timeType = this.format;
349
+ const tValue = target.value;
350
+ let timeValue = tValue;
351
+ let timeTypeStr = timeType.replace(/:/g, '');
352
+ // iso time 格式
353
+ if (checkTimeVal(timeValue, timeTypeStr)) {
354
+ timeValue = timeValue ? moment(timeValue, timeTypeStr).format(timeType) : '';
355
+ if (checkTimeVal(timeValue, timeType)) {
356
+ this.onInputChange({
357
+ target: { value: timeValue }
358
+ });
359
+ await sleep();
360
+ this.__emit('esc');
361
+ return;
362
+ }
363
+ } else if (checkTimeVal(timeValue, timeType)) {
364
+ // 满足条件按回车关闭弹窗
365
+ this.__emit('esc');
366
+ } else {
367
+ message.error('请输入有效的时间格式');
368
+ }
369
+ }
370
+
371
+ this.originalOnKeyDown(event);
372
+ };
373
+ }
374
+ }