doway-coms 1.1.49 → 1.1.50

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 (627) hide show
  1. package/dist/css/{index.09276b50.css → index.7946d50b.css} +1 -1
  2. package/dist/js/{chunk-vendors.e0519f75.js → chunk-vendors.28fda91d.js} +22 -22
  3. package/dist/js/index.49bc6add.js +2 -0
  4. package/lib/package.json +30 -0
  5. package/node_modules/vxe-table/LICENSE +21 -0
  6. package/node_modules/vxe-table/README.md +170 -0
  7. package/node_modules/vxe-table/helper/vetur/attributes.json +1770 -0
  8. package/node_modules/vxe-table/helper/vetur/tags.json +588 -0
  9. package/node_modules/vxe-table/lib/all.js +528 -0
  10. package/node_modules/vxe-table/lib/all.min.js +1 -0
  11. package/node_modules/vxe-table/lib/button/index.d.ts +4 -0
  12. package/node_modules/vxe-table/lib/button/index.js +19 -0
  13. package/node_modules/vxe-table/lib/button/index.min.js +1 -0
  14. package/node_modules/vxe-table/lib/button/src/button.js +414 -0
  15. package/node_modules/vxe-table/lib/button/src/button.min.js +1 -0
  16. package/node_modules/vxe-table/lib/button/style/index.js +1 -0
  17. package/node_modules/vxe-table/lib/button/style/style.css +478 -0
  18. package/node_modules/vxe-table/lib/button/style/style.min.css +1 -0
  19. package/node_modules/vxe-table/lib/checkbox/index.d.ts +4 -0
  20. package/node_modules/vxe-table/lib/checkbox/index.js +19 -0
  21. package/node_modules/vxe-table/lib/checkbox/index.min.js +1 -0
  22. package/node_modules/vxe-table/lib/checkbox/src/checkbox.js +128 -0
  23. package/node_modules/vxe-table/lib/checkbox/src/checkbox.min.js +1 -0
  24. package/node_modules/vxe-table/lib/checkbox/src/group.js +62 -0
  25. package/node_modules/vxe-table/lib/checkbox/src/group.min.js +1 -0
  26. package/node_modules/vxe-table/lib/checkbox/style/index.js +1 -0
  27. package/node_modules/vxe-table/lib/checkbox/style/style.css +294 -0
  28. package/node_modules/vxe-table/lib/checkbox/style/style.min.css +1 -0
  29. package/node_modules/vxe-table/lib/checkbox-group/index.d.ts +4 -0
  30. package/node_modules/vxe-table/lib/checkbox-group/index.js +19 -0
  31. package/node_modules/vxe-table/lib/checkbox-group/index.min.js +1 -0
  32. package/node_modules/vxe-table/lib/checkbox-group/style/index.js +1 -0
  33. package/node_modules/vxe-table/lib/checkbox-group/style/style.css +25 -0
  34. package/node_modules/vxe-table/lib/checkbox-group/style/style.min.css +0 -0
  35. package/node_modules/vxe-table/lib/colgroup/index.d.ts +4 -0
  36. package/node_modules/vxe-table/lib/colgroup/index.js +21 -0
  37. package/node_modules/vxe-table/lib/colgroup/index.min.js +1 -0
  38. package/node_modules/vxe-table/lib/colgroup/style/index.js +1 -0
  39. package/node_modules/vxe-table/lib/colgroup/style/style.css +25 -0
  40. package/node_modules/vxe-table/lib/colgroup/style/style.min.css +0 -0
  41. package/node_modules/vxe-table/lib/column/index.d.ts +4 -0
  42. package/node_modules/vxe-table/lib/column/index.js +21 -0
  43. package/node_modules/vxe-table/lib/column/index.min.js +1 -0
  44. package/node_modules/vxe-table/lib/column/style/index.js +1 -0
  45. package/node_modules/vxe-table/lib/column/style/style.css +25 -0
  46. package/node_modules/vxe-table/lib/column/style/style.min.css +0 -0
  47. package/node_modules/vxe-table/lib/edit/index.d.ts +4 -0
  48. package/node_modules/vxe-table/lib/edit/index.js +25 -0
  49. package/node_modules/vxe-table/lib/edit/index.min.js +1 -0
  50. package/node_modules/vxe-table/lib/edit/src/mixin.js +997 -0
  51. package/node_modules/vxe-table/lib/edit/src/mixin.min.js +1 -0
  52. package/node_modules/vxe-table/lib/edit/style/index.js +1 -0
  53. package/node_modules/vxe-table/lib/edit/style/style.css +25 -0
  54. package/node_modules/vxe-table/lib/edit/style/style.min.css +0 -0
  55. package/node_modules/vxe-table/lib/export/index.d.ts +4 -0
  56. package/node_modules/vxe-table/lib/export/index.js +75 -0
  57. package/node_modules/vxe-table/lib/export/index.min.js +1 -0
  58. package/node_modules/vxe-table/lib/export/src/export-panel.js +451 -0
  59. package/node_modules/vxe-table/lib/export/src/export-panel.min.js +1 -0
  60. package/node_modules/vxe-table/lib/export/src/import-panel.js +196 -0
  61. package/node_modules/vxe-table/lib/export/src/import-panel.min.js +1 -0
  62. package/node_modules/vxe-table/lib/export/src/mixin.js +1943 -0
  63. package/node_modules/vxe-table/lib/export/src/mixin.min.js +1 -0
  64. package/node_modules/vxe-table/lib/export/style/index.js +1 -0
  65. package/node_modules/vxe-table/lib/export/style/style.css +255 -0
  66. package/node_modules/vxe-table/lib/export/style/style.min.css +1 -0
  67. package/node_modules/vxe-table/lib/filter/index.d.ts +4 -0
  68. package/node_modules/vxe-table/lib/filter/index.js +30 -0
  69. package/node_modules/vxe-table/lib/filter/index.min.js +1 -0
  70. package/node_modules/vxe-table/lib/filter/src/mixin.js +357 -0
  71. package/node_modules/vxe-table/lib/filter/src/mixin.min.js +1 -0
  72. package/node_modules/vxe-table/lib/filter/src/panel.js +220 -0
  73. package/node_modules/vxe-table/lib/filter/src/panel.min.js +1 -0
  74. package/node_modules/vxe-table/lib/filter/style/index.js +1 -0
  75. package/node_modules/vxe-table/lib/filter/style/style.css +208 -0
  76. package/node_modules/vxe-table/lib/filter/style/style.min.css +1 -0
  77. package/node_modules/vxe-table/lib/footer/index.d.ts +4 -0
  78. package/node_modules/vxe-table/lib/footer/index.js +19 -0
  79. package/node_modules/vxe-table/lib/footer/index.min.js +1 -0
  80. package/node_modules/vxe-table/lib/footer/src/footer.js +375 -0
  81. package/node_modules/vxe-table/lib/footer/src/footer.min.js +1 -0
  82. package/node_modules/vxe-table/lib/footer/style/index.js +1 -0
  83. package/node_modules/vxe-table/lib/footer/style/style.css +42 -0
  84. package/node_modules/vxe-table/lib/footer/style/style.min.css +1 -0
  85. package/node_modules/vxe-table/lib/form/index.d.ts +4 -0
  86. package/node_modules/vxe-table/lib/form/index.js +19 -0
  87. package/node_modules/vxe-table/lib/form/index.min.js +1 -0
  88. package/node_modules/vxe-table/lib/form/src/form-gather.js +37 -0
  89. package/node_modules/vxe-table/lib/form/src/form-gather.min.js +1 -0
  90. package/node_modules/vxe-table/lib/form/src/form-item.js +195 -0
  91. package/node_modules/vxe-table/lib/form/src/form-item.min.js +1 -0
  92. package/node_modules/vxe-table/lib/form/src/form.js +876 -0
  93. package/node_modules/vxe-table/lib/form/src/form.min.js +1 -0
  94. package/node_modules/vxe-table/lib/form/src/render.js +84 -0
  95. package/node_modules/vxe-table/lib/form/src/render.min.js +1 -0
  96. package/node_modules/vxe-table/lib/form/src/util.js +127 -0
  97. package/node_modules/vxe-table/lib/form/src/util.min.js +1 -0
  98. package/node_modules/vxe-table/lib/form/style/index.js +1 -0
  99. package/node_modules/vxe-table/lib/form/style/style.css +329 -0
  100. package/node_modules/vxe-table/lib/form/style/style.min.css +1 -0
  101. package/node_modules/vxe-table/lib/form-gather/index.d.ts +4 -0
  102. package/node_modules/vxe-table/lib/form-gather/index.js +19 -0
  103. package/node_modules/vxe-table/lib/form-gather/index.min.js +1 -0
  104. package/node_modules/vxe-table/lib/form-gather/style/index.js +1 -0
  105. package/node_modules/vxe-table/lib/form-gather/style/style.css +25 -0
  106. package/node_modules/vxe-table/lib/form-gather/style/style.min.css +0 -0
  107. package/node_modules/vxe-table/lib/form-item/index.d.ts +4 -0
  108. package/node_modules/vxe-table/lib/form-item/index.js +19 -0
  109. package/node_modules/vxe-table/lib/form-item/index.min.js +1 -0
  110. package/node_modules/vxe-table/lib/form-item/style/index.js +1 -0
  111. package/node_modules/vxe-table/lib/form-item/style/style.css +25 -0
  112. package/node_modules/vxe-table/lib/form-item/style/style.min.css +0 -0
  113. package/node_modules/vxe-table/lib/grid/index.d.ts +4 -0
  114. package/node_modules/vxe-table/lib/grid/index.js +23 -0
  115. package/node_modules/vxe-table/lib/grid/index.min.js +1 -0
  116. package/node_modules/vxe-table/lib/grid/src/grid.js +1338 -0
  117. package/node_modules/vxe-table/lib/grid/src/grid.min.js +1 -0
  118. package/node_modules/vxe-table/lib/grid/style/index.js +1 -0
  119. package/node_modules/vxe-table/lib/grid/style/style.css +78 -0
  120. package/node_modules/vxe-table/lib/grid/style/style.min.css +1 -0
  121. package/node_modules/vxe-table/lib/header/index.d.ts +4 -0
  122. package/node_modules/vxe-table/lib/header/index.js +19 -0
  123. package/node_modules/vxe-table/lib/header/index.min.js +1 -0
  124. package/node_modules/vxe-table/lib/header/src/header.js +378 -0
  125. package/node_modules/vxe-table/lib/header/src/header.min.js +1 -0
  126. package/node_modules/vxe-table/lib/header/src/util.js +92 -0
  127. package/node_modules/vxe-table/lib/header/src/util.min.js +1 -0
  128. package/node_modules/vxe-table/lib/header/style/index.js +1 -0
  129. package/node_modules/vxe-table/lib/header/style/style.css +129 -0
  130. package/node_modules/vxe-table/lib/header/style/style.min.css +1 -0
  131. package/node_modules/vxe-table/lib/icon/index.d.ts +4 -0
  132. package/node_modules/vxe-table/lib/icon/index.js +13 -0
  133. package/node_modules/vxe-table/lib/icon/index.min.js +1 -0
  134. package/node_modules/vxe-table/lib/icon/style/index.js +1 -0
  135. package/node_modules/vxe-table/lib/icon/style/style.css +533 -0
  136. package/node_modules/vxe-table/lib/icon/style/style.min.css +1 -0
  137. package/node_modules/vxe-table/lib/index.common.js +30 -0
  138. package/node_modules/vxe-table/lib/index.common.min.js +1 -0
  139. package/node_modules/vxe-table/lib/index.css +1 -0
  140. package/node_modules/vxe-table/lib/index.umd.js +38912 -0
  141. package/node_modules/vxe-table/lib/index.umd.min.js +1 -0
  142. package/node_modules/vxe-table/lib/input/index.d.ts +4 -0
  143. package/node_modules/vxe-table/lib/input/index.js +19 -0
  144. package/node_modules/vxe-table/lib/input/index.min.js +1 -0
  145. package/node_modules/vxe-table/lib/input/src/date.js +54 -0
  146. package/node_modules/vxe-table/lib/input/src/date.min.js +1 -0
  147. package/node_modules/vxe-table/lib/input/src/input.js +2452 -0
  148. package/node_modules/vxe-table/lib/input/src/input.min.js +1 -0
  149. package/node_modules/vxe-table/lib/input/src/number.js +23 -0
  150. package/node_modules/vxe-table/lib/input/src/number.min.js +1 -0
  151. package/node_modules/vxe-table/lib/input/style/index.js +1 -0
  152. package/node_modules/vxe-table/lib/input/style/style.css +874 -0
  153. package/node_modules/vxe-table/lib/input/style/style.min.css +1 -0
  154. package/node_modules/vxe-table/lib/keyboard/index.d.ts +4 -0
  155. package/node_modules/vxe-table/lib/keyboard/index.js +25 -0
  156. package/node_modules/vxe-table/lib/keyboard/index.min.js +1 -0
  157. package/node_modules/vxe-table/lib/keyboard/src/mixin.js +487 -0
  158. package/node_modules/vxe-table/lib/keyboard/src/mixin.min.js +1 -0
  159. package/node_modules/vxe-table/lib/keyboard/style/index.js +1 -0
  160. package/node_modules/vxe-table/lib/keyboard/style/style.css +25 -0
  161. package/node_modules/vxe-table/lib/keyboard/style/style.min.css +0 -0
  162. package/node_modules/vxe-table/lib/list/index.d.ts +4 -0
  163. package/node_modules/vxe-table/lib/list/index.js +19 -0
  164. package/node_modules/vxe-table/lib/list/index.min.js +1 -0
  165. package/node_modules/vxe-table/lib/list/src/list.js +386 -0
  166. package/node_modules/vxe-table/lib/list/src/list.min.js +1 -0
  167. package/node_modules/vxe-table/lib/list/style/index.js +1 -0
  168. package/node_modules/vxe-table/lib/list/style/style.css +46 -0
  169. package/node_modules/vxe-table/lib/list/style/style.min.css +1 -0
  170. package/node_modules/vxe-table/lib/locale/lang/en-US.d.ts +8 -0
  171. package/node_modules/vxe-table/lib/locale/lang/en-US.js +312 -0
  172. package/node_modules/vxe-table/lib/locale/lang/en-US.min.js +1 -0
  173. package/node_modules/vxe-table/lib/locale/lang/en-US.umd.js +326 -0
  174. package/node_modules/vxe-table/lib/locale/lang/ja-JP.d.ts +8 -0
  175. package/node_modules/vxe-table/lib/locale/lang/ja-JP.js +312 -0
  176. package/node_modules/vxe-table/lib/locale/lang/ja-JP.min.js +1 -0
  177. package/node_modules/vxe-table/lib/locale/lang/ja-JP.umd.js +326 -0
  178. package/node_modules/vxe-table/lib/locale/lang/language.d.ts +5 -0
  179. package/node_modules/vxe-table/lib/locale/lang/zh-CN.d.ts +8 -0
  180. package/node_modules/vxe-table/lib/locale/lang/zh-CN.js +312 -0
  181. package/node_modules/vxe-table/lib/locale/lang/zh-CN.min.js +1 -0
  182. package/node_modules/vxe-table/lib/locale/lang/zh-CN.umd.js +326 -0
  183. package/node_modules/vxe-table/lib/locale/lang/zh-HK.d.ts +8 -0
  184. package/node_modules/vxe-table/lib/locale/lang/zh-HK.js +13 -0
  185. package/node_modules/vxe-table/lib/locale/lang/zh-HK.min.js +1 -0
  186. package/node_modules/vxe-table/lib/locale/lang/zh-HK.umd.js +326 -0
  187. package/node_modules/vxe-table/lib/locale/lang/zh-MO.d.ts +8 -0
  188. package/node_modules/vxe-table/lib/locale/lang/zh-MO.js +13 -0
  189. package/node_modules/vxe-table/lib/locale/lang/zh-MO.min.js +1 -0
  190. package/node_modules/vxe-table/lib/locale/lang/zh-MO.umd.js +326 -0
  191. package/node_modules/vxe-table/lib/locale/lang/zh-TC.d.ts +8 -0
  192. package/node_modules/vxe-table/lib/locale/lang/zh-TC.js +312 -0
  193. package/node_modules/vxe-table/lib/locale/lang/zh-TC.min.js +1 -0
  194. package/node_modules/vxe-table/lib/locale/lang/zh-TC.umd.js +326 -0
  195. package/node_modules/vxe-table/lib/locale/lang/zh-TW.d.ts +8 -0
  196. package/node_modules/vxe-table/lib/locale/lang/zh-TW.js +13 -0
  197. package/node_modules/vxe-table/lib/locale/lang/zh-TW.min.js +1 -0
  198. package/node_modules/vxe-table/lib/locale/lang/zh-TW.umd.js +326 -0
  199. package/node_modules/vxe-table/lib/menu/index.d.ts +4 -0
  200. package/node_modules/vxe-table/lib/menu/index.js +30 -0
  201. package/node_modules/vxe-table/lib/menu/index.min.js +1 -0
  202. package/node_modules/vxe-table/lib/menu/src/mixin.js +394 -0
  203. package/node_modules/vxe-table/lib/menu/src/mixin.min.js +1 -0
  204. package/node_modules/vxe-table/lib/menu/src/panel.js +103 -0
  205. package/node_modules/vxe-table/lib/menu/src/panel.min.js +1 -0
  206. package/node_modules/vxe-table/lib/menu/style/index.js +1 -0
  207. package/node_modules/vxe-table/lib/menu/style/style.css +117 -0
  208. package/node_modules/vxe-table/lib/menu/style/style.min.css +1 -0
  209. package/node_modules/vxe-table/lib/mixins/size.js +16 -0
  210. package/node_modules/vxe-table/lib/mixins/size.min.js +1 -0
  211. package/node_modules/vxe-table/lib/modal/index.d.ts +4 -0
  212. package/node_modules/vxe-table/lib/modal/index.js +149 -0
  213. package/node_modules/vxe-table/lib/modal/index.min.js +1 -0
  214. package/node_modules/vxe-table/lib/modal/src/modal.js +1233 -0
  215. package/node_modules/vxe-table/lib/modal/src/modal.min.js +1 -0
  216. package/node_modules/vxe-table/lib/modal/style/index.js +1 -0
  217. package/node_modules/vxe-table/lib/modal/style/style.css +309 -0
  218. package/node_modules/vxe-table/lib/modal/style/style.min.css +1 -0
  219. package/node_modules/vxe-table/lib/optgroup/index.d.ts +4 -0
  220. package/node_modules/vxe-table/lib/optgroup/index.js +19 -0
  221. package/node_modules/vxe-table/lib/optgroup/index.min.js +1 -0
  222. package/node_modules/vxe-table/lib/optgroup/style/index.js +1 -0
  223. package/node_modules/vxe-table/lib/optgroup/style/style.css +25 -0
  224. package/node_modules/vxe-table/lib/optgroup/style/style.min.css +0 -0
  225. package/node_modules/vxe-table/lib/option/index.d.ts +4 -0
  226. package/node_modules/vxe-table/lib/option/index.js +19 -0
  227. package/node_modules/vxe-table/lib/option/index.min.js +1 -0
  228. package/node_modules/vxe-table/lib/option/style/index.js +1 -0
  229. package/node_modules/vxe-table/lib/option/style/style.css +25 -0
  230. package/node_modules/vxe-table/lib/option/style/style.min.css +0 -0
  231. package/node_modules/vxe-table/lib/pager/index.d.ts +4 -0
  232. package/node_modules/vxe-table/lib/pager/index.js +19 -0
  233. package/node_modules/vxe-table/lib/pager/index.min.js +1 -0
  234. package/node_modules/vxe-table/lib/pager/src/pager.js +508 -0
  235. package/node_modules/vxe-table/lib/pager/src/pager.min.js +1 -0
  236. package/node_modules/vxe-table/lib/pager/style/index.js +1 -0
  237. package/node_modules/vxe-table/lib/pager/style/style.css +300 -0
  238. package/node_modules/vxe-table/lib/pager/style/style.min.css +1 -0
  239. package/node_modules/vxe-table/lib/pulldown/index.d.ts +4 -0
  240. package/node_modules/vxe-table/lib/pulldown/index.js +19 -0
  241. package/node_modules/vxe-table/lib/pulldown/index.min.js +1 -0
  242. package/node_modules/vxe-table/lib/pulldown/src/pulldown.js +336 -0
  243. package/node_modules/vxe-table/lib/pulldown/src/pulldown.min.js +1 -0
  244. package/node_modules/vxe-table/lib/pulldown/style/index.js +1 -0
  245. package/node_modules/vxe-table/lib/pulldown/style/style.css +81 -0
  246. package/node_modules/vxe-table/lib/pulldown/style/style.min.css +1 -0
  247. package/node_modules/vxe-table/lib/radio/index.d.ts +4 -0
  248. package/node_modules/vxe-table/lib/radio/index.js +19 -0
  249. package/node_modules/vxe-table/lib/radio/index.min.js +1 -0
  250. package/node_modules/vxe-table/lib/radio/src/button.js +128 -0
  251. package/node_modules/vxe-table/lib/radio/src/button.min.js +1 -0
  252. package/node_modules/vxe-table/lib/radio/src/group.js +60 -0
  253. package/node_modules/vxe-table/lib/radio/src/group.min.js +1 -0
  254. package/node_modules/vxe-table/lib/radio/src/radio.js +132 -0
  255. package/node_modules/vxe-table/lib/radio/src/radio.min.js +1 -0
  256. package/node_modules/vxe-table/lib/radio/style/index.js +1 -0
  257. package/node_modules/vxe-table/lib/radio/style/style.css +330 -0
  258. package/node_modules/vxe-table/lib/radio/style/style.min.css +1 -0
  259. package/node_modules/vxe-table/lib/radio-button/index.d.ts +4 -0
  260. package/node_modules/vxe-table/lib/radio-button/index.js +19 -0
  261. package/node_modules/vxe-table/lib/radio-button/index.min.js +1 -0
  262. package/node_modules/vxe-table/lib/radio-button/style/index.js +1 -0
  263. package/node_modules/vxe-table/lib/radio-button/style/style.css +25 -0
  264. package/node_modules/vxe-table/lib/radio-button/style/style.min.css +0 -0
  265. package/node_modules/vxe-table/lib/radio-group/index.d.ts +4 -0
  266. package/node_modules/vxe-table/lib/radio-group/index.js +19 -0
  267. package/node_modules/vxe-table/lib/radio-group/index.min.js +1 -0
  268. package/node_modules/vxe-table/lib/radio-group/style/index.js +1 -0
  269. package/node_modules/vxe-table/lib/radio-group/style/style.css +25 -0
  270. package/node_modules/vxe-table/lib/radio-group/style/style.min.css +0 -0
  271. package/node_modules/vxe-table/lib/select/index.d.ts +4 -0
  272. package/node_modules/vxe-table/lib/select/index.js +27 -0
  273. package/node_modules/vxe-table/lib/select/index.min.js +1 -0
  274. package/node_modules/vxe-table/lib/select/src/optgroup.js +60 -0
  275. package/node_modules/vxe-table/lib/select/src/optgroup.min.js +1 -0
  276. package/node_modules/vxe-table/lib/select/src/option.js +54 -0
  277. package/node_modules/vxe-table/lib/select/src/option.min.js +1 -0
  278. package/node_modules/vxe-table/lib/select/src/select.js +941 -0
  279. package/node_modules/vxe-table/lib/select/src/select.min.js +1 -0
  280. package/node_modules/vxe-table/lib/select/src/util.js +91 -0
  281. package/node_modules/vxe-table/lib/select/src/util.min.js +1 -0
  282. package/node_modules/vxe-table/lib/select/style/index.js +1 -0
  283. package/node_modules/vxe-table/lib/select/style/style.css +247 -0
  284. package/node_modules/vxe-table/lib/select/style/style.min.css +1 -0
  285. package/node_modules/vxe-table/lib/style.css +1 -0
  286. package/node_modules/vxe-table/lib/style.min.css +1 -0
  287. package/node_modules/vxe-table/lib/switch/index.d.ts +4 -0
  288. package/node_modules/vxe-table/lib/switch/index.js +19 -0
  289. package/node_modules/vxe-table/lib/switch/index.min.js +1 -0
  290. package/node_modules/vxe-table/lib/switch/src/switch.js +158 -0
  291. package/node_modules/vxe-table/lib/switch/src/switch.min.js +1 -0
  292. package/node_modules/vxe-table/lib/switch/style/index.js +1 -0
  293. package/node_modules/vxe-table/lib/switch/style/style.css +107 -0
  294. package/node_modules/vxe-table/lib/switch/style/style.min.css +1 -0
  295. package/node_modules/vxe-table/lib/table/index.d.ts +4 -0
  296. package/node_modules/vxe-table/lib/table/index.js +44 -0
  297. package/node_modules/vxe-table/lib/table/index.min.js +1 -0
  298. package/node_modules/vxe-table/lib/table/src/body.js +947 -0
  299. package/node_modules/vxe-table/lib/table/src/body.min.js +1 -0
  300. package/node_modules/vxe-table/lib/table/src/cell.js +948 -0
  301. package/node_modules/vxe-table/lib/table/src/cell.min.js +1 -0
  302. package/node_modules/vxe-table/lib/table/src/column.js +158 -0
  303. package/node_modules/vxe-table/lib/table/src/column.min.js +1 -0
  304. package/node_modules/vxe-table/lib/table/src/columnInfo.js +202 -0
  305. package/node_modules/vxe-table/lib/table/src/columnInfo.min.js +1 -0
  306. package/node_modules/vxe-table/lib/table/src/group.js +22 -0
  307. package/node_modules/vxe-table/lib/table/src/group.min.js +1 -0
  308. package/node_modules/vxe-table/lib/table/src/methods.js +6541 -0
  309. package/node_modules/vxe-table/lib/table/src/methods.min.js +1 -0
  310. package/node_modules/vxe-table/lib/table/src/table.js +1439 -0
  311. package/node_modules/vxe-table/lib/table/src/table.min.js +1 -0
  312. package/node_modules/vxe-table/lib/table/src/util.js +390 -0
  313. package/node_modules/vxe-table/lib/table/src/util.min.js +1 -0
  314. package/node_modules/vxe-table/lib/table/style/index.js +1 -0
  315. package/node_modules/vxe-table/lib/table/style/style.css +1142 -0
  316. package/node_modules/vxe-table/lib/table/style/style.min.css +1 -0
  317. package/node_modules/vxe-table/lib/textarea/index.d.ts +4 -0
  318. package/node_modules/vxe-table/lib/textarea/index.js +19 -0
  319. package/node_modules/vxe-table/lib/textarea/index.min.js +1 -0
  320. package/node_modules/vxe-table/lib/textarea/src/textarea.js +293 -0
  321. package/node_modules/vxe-table/lib/textarea/src/textarea.min.js +1 -0
  322. package/node_modules/vxe-table/lib/textarea/style/index.js +1 -0
  323. package/node_modules/vxe-table/lib/textarea/style/style.css +115 -0
  324. package/node_modules/vxe-table/lib/textarea/style/style.min.css +1 -0
  325. package/node_modules/vxe-table/lib/toolbar/index.d.ts +4 -0
  326. package/node_modules/vxe-table/lib/toolbar/index.js +19 -0
  327. package/node_modules/vxe-table/lib/toolbar/index.min.js +1 -0
  328. package/node_modules/vxe-table/lib/toolbar/src/toolbar.js +820 -0
  329. package/node_modules/vxe-table/lib/toolbar/src/toolbar.min.js +1 -0
  330. package/node_modules/vxe-table/lib/toolbar/style/index.js +1 -0
  331. package/node_modules/vxe-table/lib/toolbar/style/style.css +315 -0
  332. package/node_modules/vxe-table/lib/toolbar/style/style.min.css +1 -0
  333. package/node_modules/vxe-table/lib/tools/dom.js +234 -0
  334. package/node_modules/vxe-table/lib/tools/dom.min.js +1 -0
  335. package/node_modules/vxe-table/lib/tools/event.js +109 -0
  336. package/node_modules/vxe-table/lib/tools/event.min.js +1 -0
  337. package/node_modules/vxe-table/lib/tools/log.js +29 -0
  338. package/node_modules/vxe-table/lib/tools/log.min.js +1 -0
  339. package/node_modules/vxe-table/lib/tools/resize.js +122 -0
  340. package/node_modules/vxe-table/lib/tools/resize.min.js +1 -0
  341. package/node_modules/vxe-table/lib/tools/utils.js +142 -0
  342. package/node_modules/vxe-table/lib/tools/utils.min.js +1 -0
  343. package/node_modules/vxe-table/lib/tooltip/index.d.ts +4 -0
  344. package/node_modules/vxe-table/lib/tooltip/index.js +22 -0
  345. package/node_modules/vxe-table/lib/tooltip/index.min.js +1 -0
  346. package/node_modules/vxe-table/lib/tooltip/src/tooltip.js +400 -0
  347. package/node_modules/vxe-table/lib/tooltip/src/tooltip.min.js +1 -0
  348. package/node_modules/vxe-table/lib/tooltip/style/index.js +1 -0
  349. package/node_modules/vxe-table/lib/tooltip/style/style.css +113 -0
  350. package/node_modules/vxe-table/lib/tooltip/style/style.min.css +1 -0
  351. package/node_modules/vxe-table/lib/v-x-e-table/index.d.ts +4 -0
  352. package/node_modules/vxe-table/lib/v-x-e-table/index.js +239 -0
  353. package/node_modules/vxe-table/lib/v-x-e-table/index.min.js +1 -0
  354. package/node_modules/vxe-table/lib/v-x-e-table/src/commands.js +19 -0
  355. package/node_modules/vxe-table/lib/v-x-e-table/src/commands.min.js +1 -0
  356. package/node_modules/vxe-table/lib/v-x-e-table/src/conf.js +345 -0
  357. package/node_modules/vxe-table/lib/v-x-e-table/src/conf.min.js +1 -0
  358. package/node_modules/vxe-table/lib/v-x-e-table/src/formats.js +19 -0
  359. package/node_modules/vxe-table/lib/v-x-e-table/src/formats.min.js +1 -0
  360. package/node_modules/vxe-table/lib/v-x-e-table/src/interceptor.js +71 -0
  361. package/node_modules/vxe-table/lib/v-x-e-table/src/interceptor.min.js +1 -0
  362. package/node_modules/vxe-table/lib/v-x-e-table/src/menus.js +19 -0
  363. package/node_modules/vxe-table/lib/v-x-e-table/src/menus.min.js +1 -0
  364. package/node_modules/vxe-table/lib/v-x-e-table/src/renderer.js +843 -0
  365. package/node_modules/vxe-table/lib/v-x-e-table/src/renderer.min.js +1 -0
  366. package/node_modules/vxe-table/lib/v-x-e-table/src/setup.js +19 -0
  367. package/node_modules/vxe-table/lib/v-x-e-table/src/setup.min.js +1 -0
  368. package/node_modules/vxe-table/lib/v-x-e-table/src/store.js +66 -0
  369. package/node_modules/vxe-table/lib/v-x-e-table/src/store.min.js +1 -0
  370. package/node_modules/vxe-table/lib/v-x-e-table/style/index.js +1 -0
  371. package/node_modules/vxe-table/lib/v-x-e-table/style/style.css +25 -0
  372. package/node_modules/vxe-table/lib/v-x-e-table/style/style.min.css +0 -0
  373. package/node_modules/vxe-table/lib/validator/index.d.ts +4 -0
  374. package/node_modules/vxe-table/lib/validator/index.js +25 -0
  375. package/node_modules/vxe-table/lib/validator/index.min.js +1 -0
  376. package/node_modules/vxe-table/lib/validator/src/mixin.js +492 -0
  377. package/node_modules/vxe-table/lib/validator/src/mixin.min.js +1 -0
  378. package/node_modules/vxe-table/lib/validator/style/index.js +1 -0
  379. package/node_modules/vxe-table/lib/validator/style/style.css +25 -0
  380. package/node_modules/vxe-table/lib/validator/style/style.min.css +0 -0
  381. package/node_modules/vxe-table/lib/vxe-table/index.d.ts +4 -0
  382. package/node_modules/vxe-table/lib/vxe-table/style/index.js +1 -0
  383. package/node_modules/vxe-table/lib/vxe-table/style/style.css +25 -0
  384. package/node_modules/vxe-table/lib/vxe-table/style/style.min.css +0 -0
  385. package/node_modules/vxe-table/package.json +110 -0
  386. package/node_modules/vxe-table/packages/all.js +136 -0
  387. package/node_modules/vxe-table/packages/button/index.d.ts +4 -0
  388. package/node_modules/vxe-table/packages/button/index.js +9 -0
  389. package/node_modules/vxe-table/packages/button/src/button.js +333 -0
  390. package/node_modules/vxe-table/packages/checkbox/index.d.ts +4 -0
  391. package/node_modules/vxe-table/packages/checkbox/index.js +9 -0
  392. package/node_modules/vxe-table/packages/checkbox/src/checkbox.js +84 -0
  393. package/node_modules/vxe-table/packages/checkbox/src/group.js +42 -0
  394. package/node_modules/vxe-table/packages/checkbox-group/index.d.ts +4 -0
  395. package/node_modules/vxe-table/packages/checkbox-group/index.js +9 -0
  396. package/node_modules/vxe-table/packages/colgroup/index.d.ts +4 -0
  397. package/node_modules/vxe-table/packages/colgroup/index.js +11 -0
  398. package/node_modules/vxe-table/packages/column/index.d.ts +4 -0
  399. package/node_modules/vxe-table/packages/column/index.js +11 -0
  400. package/node_modules/vxe-table/packages/edit/index.d.ts +4 -0
  401. package/node_modules/vxe-table/packages/edit/index.js +12 -0
  402. package/node_modules/vxe-table/packages/edit/src/mixin.js +667 -0
  403. package/node_modules/vxe-table/packages/export/index.d.ts +4 -0
  404. package/node_modules/vxe-table/packages/export/index.js +40 -0
  405. package/node_modules/vxe-table/packages/export/src/export-panel.js +458 -0
  406. package/node_modules/vxe-table/packages/export/src/import-panel.js +189 -0
  407. package/node_modules/vxe-table/packages/export/src/mixin.js +1446 -0
  408. package/node_modules/vxe-table/packages/filter/index.d.ts +4 -0
  409. package/node_modules/vxe-table/packages/filter/index.js +15 -0
  410. package/node_modules/vxe-table/packages/filter/src/mixin.js +258 -0
  411. package/node_modules/vxe-table/packages/filter/src/panel.js +209 -0
  412. package/node_modules/vxe-table/packages/footer/index.d.ts +4 -0
  413. package/node_modules/vxe-table/packages/footer/index.js +9 -0
  414. package/node_modules/vxe-table/packages/footer/src/footer.js +283 -0
  415. package/node_modules/vxe-table/packages/form/index.d.ts +4 -0
  416. package/node_modules/vxe-table/packages/form/index.js +9 -0
  417. package/node_modules/vxe-table/packages/form/src/form-gather.js +24 -0
  418. package/node_modules/vxe-table/packages/form/src/form-item.js +159 -0
  419. package/node_modules/vxe-table/packages/form/src/form.js +627 -0
  420. package/node_modules/vxe-table/packages/form/src/render.js +79 -0
  421. package/node_modules/vxe-table/packages/form/src/util.js +83 -0
  422. package/node_modules/vxe-table/packages/form-gather/index.d.ts +4 -0
  423. package/node_modules/vxe-table/packages/form-gather/index.js +9 -0
  424. package/node_modules/vxe-table/packages/form-item/index.d.ts +4 -0
  425. package/node_modules/vxe-table/packages/form-item/index.js +9 -0
  426. package/node_modules/vxe-table/packages/grid/index.d.ts +4 -0
  427. package/node_modules/vxe-table/packages/grid/index.js +12 -0
  428. package/node_modules/vxe-table/packages/grid/src/grid.js +950 -0
  429. package/node_modules/vxe-table/packages/header/index.d.ts +4 -0
  430. package/node_modules/vxe-table/packages/header/index.js +9 -0
  431. package/node_modules/vxe-table/packages/header/src/header.js +291 -0
  432. package/node_modules/vxe-table/packages/header/src/util.js +62 -0
  433. package/node_modules/vxe-table/packages/icon/index.d.ts +4 -0
  434. package/node_modules/vxe-table/packages/icon/index.js +6 -0
  435. package/node_modules/vxe-table/packages/index.common.js +4 -0
  436. package/node_modules/vxe-table/packages/input/index.d.ts +4 -0
  437. package/node_modules/vxe-table/packages/input/index.js +9 -0
  438. package/node_modules/vxe-table/packages/input/src/date.js +38 -0
  439. package/node_modules/vxe-table/packages/input/src/input.js +1966 -0
  440. package/node_modules/vxe-table/packages/input/src/number.js +12 -0
  441. package/node_modules/vxe-table/packages/keyboard/index.d.ts +4 -0
  442. package/node_modules/vxe-table/packages/keyboard/index.js +12 -0
  443. package/node_modules/vxe-table/packages/keyboard/src/mixin.js +354 -0
  444. package/node_modules/vxe-table/packages/list/index.d.ts +4 -0
  445. package/node_modules/vxe-table/packages/list/index.js +9 -0
  446. package/node_modules/vxe-table/packages/list/src/list.js +289 -0
  447. package/node_modules/vxe-table/packages/locale/lang/en-US.d.ts +8 -0
  448. package/node_modules/vxe-table/packages/locale/lang/en-US.js +305 -0
  449. package/node_modules/vxe-table/packages/locale/lang/ja-JP.d.ts +8 -0
  450. package/node_modules/vxe-table/packages/locale/lang/ja-JP.js +305 -0
  451. package/node_modules/vxe-table/packages/locale/lang/language.d.ts +5 -0
  452. package/node_modules/vxe-table/packages/locale/lang/zh-CN.d.ts +8 -0
  453. package/node_modules/vxe-table/packages/locale/lang/zh-CN.js +305 -0
  454. package/node_modules/vxe-table/packages/locale/lang/zh-HK.d.ts +8 -0
  455. package/node_modules/vxe-table/packages/locale/lang/zh-HK.js +3 -0
  456. package/node_modules/vxe-table/packages/locale/lang/zh-MO.d.ts +8 -0
  457. package/node_modules/vxe-table/packages/locale/lang/zh-MO.js +3 -0
  458. package/node_modules/vxe-table/packages/locale/lang/zh-TC.d.ts +8 -0
  459. package/node_modules/vxe-table/packages/locale/lang/zh-TC.js +305 -0
  460. package/node_modules/vxe-table/packages/locale/lang/zh-TW.d.ts +8 -0
  461. package/node_modules/vxe-table/packages/locale/lang/zh-TW.js +3 -0
  462. package/node_modules/vxe-table/packages/menu/index.d.ts +4 -0
  463. package/node_modules/vxe-table/packages/menu/index.js +15 -0
  464. package/node_modules/vxe-table/packages/menu/src/mixin.js +270 -0
  465. package/node_modules/vxe-table/packages/menu/src/panel.js +100 -0
  466. package/node_modules/vxe-table/packages/mixins/size.js +8 -0
  467. package/node_modules/vxe-table/packages/modal/index.d.ts +4 -0
  468. package/node_modules/vxe-table/packages/modal/index.js +111 -0
  469. package/node_modules/vxe-table/packages/modal/src/modal.js +801 -0
  470. package/node_modules/vxe-table/packages/optgroup/index.d.ts +4 -0
  471. package/node_modules/vxe-table/packages/optgroup/index.js +9 -0
  472. package/node_modules/vxe-table/packages/option/index.d.ts +4 -0
  473. package/node_modules/vxe-table/packages/option/index.js +9 -0
  474. package/node_modules/vxe-table/packages/pager/index.d.ts +4 -0
  475. package/node_modules/vxe-table/packages/pager/index.js +9 -0
  476. package/node_modules/vxe-table/packages/pager/src/pager.js +408 -0
  477. package/node_modules/vxe-table/packages/pulldown/index.d.ts +4 -0
  478. package/node_modules/vxe-table/packages/pulldown/index.js +9 -0
  479. package/node_modules/vxe-table/packages/pulldown/src/pulldown.js +258 -0
  480. package/node_modules/vxe-table/packages/radio/index.d.ts +4 -0
  481. package/node_modules/vxe-table/packages/radio/index.js +9 -0
  482. package/node_modules/vxe-table/packages/radio/src/button.js +92 -0
  483. package/node_modules/vxe-table/packages/radio/src/group.js +39 -0
  484. package/node_modules/vxe-table/packages/radio/src/radio.js +95 -0
  485. package/node_modules/vxe-table/packages/radio-button/index.d.ts +4 -0
  486. package/node_modules/vxe-table/packages/radio-button/index.js +9 -0
  487. package/node_modules/vxe-table/packages/radio-group/index.d.ts +4 -0
  488. package/node_modules/vxe-table/packages/radio-group/index.js +9 -0
  489. package/node_modules/vxe-table/packages/select/index.d.ts +4 -0
  490. package/node_modules/vxe-table/packages/select/index.js +15 -0
  491. package/node_modules/vxe-table/packages/select/src/optgroup.js +48 -0
  492. package/node_modules/vxe-table/packages/select/src/option.js +42 -0
  493. package/node_modules/vxe-table/packages/select/src/select.js +735 -0
  494. package/node_modules/vxe-table/packages/select/src/util.js +52 -0
  495. package/node_modules/vxe-table/packages/switch/index.d.ts +4 -0
  496. package/node_modules/vxe-table/packages/switch/index.js +9 -0
  497. package/node_modules/vxe-table/packages/switch/src/switch.js +124 -0
  498. package/node_modules/vxe-table/packages/table/index.d.ts +4 -0
  499. package/node_modules/vxe-table/packages/table/index.js +25 -0
  500. package/node_modules/vxe-table/packages/table/src/body.js +779 -0
  501. package/node_modules/vxe-table/packages/table/src/cell.js +775 -0
  502. package/node_modules/vxe-table/packages/table/src/column.js +125 -0
  503. package/node_modules/vxe-table/packages/table/src/columnInfo.js +149 -0
  504. package/node_modules/vxe-table/packages/table/src/group.js +12 -0
  505. package/node_modules/vxe-table/packages/table/src/methods.js +4658 -0
  506. package/node_modules/vxe-table/packages/table/src/table.js +1159 -0
  507. package/node_modules/vxe-table/packages/table/src/util.js +282 -0
  508. package/node_modules/vxe-table/packages/textarea/index.d.ts +4 -0
  509. package/node_modules/vxe-table/packages/textarea/index.js +9 -0
  510. package/node_modules/vxe-table/packages/textarea/src/textarea.js +206 -0
  511. package/node_modules/vxe-table/packages/toolbar/index.d.ts +4 -0
  512. package/node_modules/vxe-table/packages/toolbar/index.js +9 -0
  513. package/node_modules/vxe-table/packages/toolbar/src/toolbar.js +649 -0
  514. package/node_modules/vxe-table/packages/tools/dom.js +178 -0
  515. package/node_modules/vxe-table/packages/tools/event.js +82 -0
  516. package/node_modules/vxe-table/packages/tools/log.js +16 -0
  517. package/node_modules/vxe-table/packages/tools/resize.js +76 -0
  518. package/node_modules/vxe-table/packages/tools/utils.js +97 -0
  519. package/node_modules/vxe-table/packages/tooltip/index.d.ts +4 -0
  520. package/node_modules/vxe-table/packages/tooltip/index.js +11 -0
  521. package/node_modules/vxe-table/packages/tooltip/src/tooltip.js +282 -0
  522. package/node_modules/vxe-table/packages/v-x-e-table/index.d.ts +4 -0
  523. package/node_modules/vxe-table/packages/v-x-e-table/index.js +113 -0
  524. package/node_modules/vxe-table/packages/v-x-e-table/src/commands.js +7 -0
  525. package/node_modules/vxe-table/packages/v-x-e-table/src/conf.js +347 -0
  526. package/node_modules/vxe-table/packages/v-x-e-table/src/formats.js +7 -0
  527. package/node_modules/vxe-table/packages/v-x-e-table/src/interceptor.js +53 -0
  528. package/node_modules/vxe-table/packages/v-x-e-table/src/menus.js +7 -0
  529. package/node_modules/vxe-table/packages/v-x-e-table/src/renderer.js +692 -0
  530. package/node_modules/vxe-table/packages/v-x-e-table/src/setup.js +9 -0
  531. package/node_modules/vxe-table/packages/v-x-e-table/src/store.js +38 -0
  532. package/node_modules/vxe-table/packages/validator/index.d.ts +4 -0
  533. package/node_modules/vxe-table/packages/validator/index.js +12 -0
  534. package/node_modules/vxe-table/packages/validator/src/mixin.js +363 -0
  535. package/node_modules/vxe-table/packages/vxe-table/index.d.ts +4 -0
  536. package/node_modules/vxe-table/packages/vxe-table/index.ts +4 -0
  537. package/node_modules/vxe-table/styles/base/checked.scss +179 -0
  538. package/node_modules/vxe-table/styles/base/common.scss +88 -0
  539. package/node_modules/vxe-table/styles/base/loading.scss +71 -0
  540. package/node_modules/vxe-table/styles/button.scss +390 -0
  541. package/node_modules/vxe-table/styles/checkbox-group.scss +1 -0
  542. package/node_modules/vxe-table/styles/checkbox.scss +151 -0
  543. package/node_modules/vxe-table/styles/colgroup.scss +1 -0
  544. package/node_modules/vxe-table/styles/column.scss +1 -0
  545. package/node_modules/vxe-table/styles/default.scss +1 -0
  546. package/node_modules/vxe-table/styles/edit.scss +1 -0
  547. package/node_modules/vxe-table/styles/export.scss +161 -0
  548. package/node_modules/vxe-table/styles/filter.scss +146 -0
  549. package/node_modules/vxe-table/styles/footer.scss +23 -0
  550. package/node_modules/vxe-table/styles/form-gather.scss +1 -0
  551. package/node_modules/vxe-table/styles/form-item.scss +1 -0
  552. package/node_modules/vxe-table/styles/form.scss +319 -0
  553. package/node_modules/vxe-table/styles/grid.scss +70 -0
  554. package/node_modules/vxe-table/styles/header.scss +135 -0
  555. package/node_modules/vxe-table/styles/helpers/mixin.scss +3 -0
  556. package/node_modules/vxe-table/styles/icon.scss +712 -0
  557. package/node_modules/vxe-table/styles/index.scss +2 -0
  558. package/node_modules/vxe-table/styles/input.scss +864 -0
  559. package/node_modules/vxe-table/styles/keyboard.scss +1 -0
  560. package/node_modules/vxe-table/styles/list.scss +28 -0
  561. package/node_modules/vxe-table/styles/menu.scss +101 -0
  562. package/node_modules/vxe-table/styles/modal.scss +382 -0
  563. package/node_modules/vxe-table/styles/modules.scss +31 -0
  564. package/node_modules/vxe-table/styles/optgroup.scss +1 -0
  565. package/node_modules/vxe-table/styles/option.scss +1 -0
  566. package/node_modules/vxe-table/styles/pager.scss +285 -0
  567. package/node_modules/vxe-table/styles/pulldown.scss +58 -0
  568. package/node_modules/vxe-table/styles/radio-button.scss +1 -0
  569. package/node_modules/vxe-table/styles/radio-group.scss +1 -0
  570. package/node_modules/vxe-table/styles/radio.scss +216 -0
  571. package/node_modules/vxe-table/styles/select.scss +192 -0
  572. package/node_modules/vxe-table/styles/switch.scss +115 -0
  573. package/node_modules/vxe-table/styles/table.scss +1179 -0
  574. package/node_modules/vxe-table/styles/textarea.scss +104 -0
  575. package/node_modules/vxe-table/styles/toolbar.scss +207 -0
  576. package/node_modules/vxe-table/styles/tooltip.scss +135 -0
  577. package/node_modules/vxe-table/styles/v-x-e-table.scss +1 -0
  578. package/node_modules/vxe-table/styles/validator.scss +1 -0
  579. package/node_modules/vxe-table/styles/variable.scss +255 -0
  580. package/node_modules/vxe-table/styles/vxe-table.scss +1 -0
  581. package/node_modules/vxe-table/types/all.d.ts +79 -0
  582. package/node_modules/vxe-table/types/button.d.ts +43 -0
  583. package/node_modules/vxe-table/types/checkbox-group.d.ts +15 -0
  584. package/node_modules/vxe-table/types/checkbox.d.ts +31 -0
  585. package/node_modules/vxe-table/types/colgroup.d.ts +154 -0
  586. package/node_modules/vxe-table/types/column.d.ts +425 -0
  587. package/node_modules/vxe-table/types/component.d.ts +24 -0
  588. package/node_modules/vxe-table/types/edit.d.ts +60 -0
  589. package/node_modules/vxe-table/types/export.d.ts +236 -0
  590. package/node_modules/vxe-table/types/filter.d.ts +126 -0
  591. package/node_modules/vxe-table/types/footer.d.ts +44 -0
  592. package/node_modules/vxe-table/types/form-gather.d.ts +11 -0
  593. package/node_modules/vxe-table/types/form-item.d.ts +207 -0
  594. package/node_modules/vxe-table/types/form.d.ts +134 -0
  595. package/node_modules/vxe-table/types/grid.d.ts +138 -0
  596. package/node_modules/vxe-table/types/header.d.ts +32 -0
  597. package/node_modules/vxe-table/types/icon.d.ts +6 -0
  598. package/node_modules/vxe-table/types/index.d.ts +9 -0
  599. package/node_modules/vxe-table/types/input.d.ts +160 -0
  600. package/node_modules/vxe-table/types/keyboard.d.ts +6 -0
  601. package/node_modules/vxe-table/types/list.d.ts +70 -0
  602. package/node_modules/vxe-table/types/menu.d.ts +41 -0
  603. package/node_modules/vxe-table/types/modal.d.ts +324 -0
  604. package/node_modules/vxe-table/types/optgroup.d.ts +19 -0
  605. package/node_modules/vxe-table/types/option.d.ts +23 -0
  606. package/node_modules/vxe-table/types/pager.d.ts +122 -0
  607. package/node_modules/vxe-table/types/pulldown.d.ts +44 -0
  608. package/node_modules/vxe-table/types/radio-button.d.ts +19 -0
  609. package/node_modules/vxe-table/types/radio-group.d.ts +15 -0
  610. package/node_modules/vxe-table/types/radio.d.ts +31 -0
  611. package/node_modules/vxe-table/types/select.d.ts +65 -0
  612. package/node_modules/vxe-table/types/switch.d.ts +21 -0
  613. package/node_modules/vxe-table/types/table.d.ts +1449 -0
  614. package/node_modules/vxe-table/types/textarea.d.ts +63 -0
  615. package/node_modules/vxe-table/types/toolbar.d.ts +177 -0
  616. package/node_modules/vxe-table/types/tooltip.d.ts +39 -0
  617. package/node_modules/vxe-table/types/v-x-e-table/commands.d.ts +19 -0
  618. package/node_modules/vxe-table/types/v-x-e-table/formats.d.ts +19 -0
  619. package/node_modules/vxe-table/types/v-x-e-table/index.d.ts +116 -0
  620. package/node_modules/vxe-table/types/v-x-e-table/interceptor.d.ts +46 -0
  621. package/node_modules/vxe-table/types/v-x-e-table/menus.d.ts +13 -0
  622. package/node_modules/vxe-table/types/v-x-e-table/renderer.d.ts +173 -0
  623. package/node_modules/vxe-table/types/v-x-e-table/setup.d.ts +74 -0
  624. package/node_modules/vxe-table/types/validator.d.ts +61 -0
  625. package/node_modules/vxe-table/types/vxe-table/index.d.ts +4 -0
  626. package/package.json +5 -2
  627. package/dist/js/index.d840b37b.js +0 -2
@@ -0,0 +1,1966 @@
1
+ import XEUtils from 'xe-utils'
2
+ import GlobalConfig from '../../v-x-e-table/src/conf'
3
+ import vSize from '../../mixins/size'
4
+ import UtilTools, { getFuncText } from '../../tools/utils'
5
+ import DomTools from '../../tools/dom'
6
+ import { GlobalEvent } from '../../tools/event'
7
+ import { toStringTimeDate, getDateQuarter } from './date'
8
+ import { handleNumber, toFloatValueFixed } from './number'
9
+ import { warnLog } from '../../tools/log'
10
+
11
+ const yearSize = 20
12
+ const monthSize = 20
13
+ const quarterSize = 8
14
+
15
+ function getNumberValue (_vm, val) {
16
+ const { type, exponential, digitsValue, inpMaxlength } = _vm
17
+ const restVal = (type === 'float' ? toFloatValueFixed(val, digitsValue) : XEUtils.toValueString(val))
18
+ if (exponential && (val === restVal || XEUtils.toValueString(val).toLowerCase() === XEUtils.toNumber(restVal).toExponential())) {
19
+ return val
20
+ }
21
+ return restVal.slice(0, inpMaxlength)
22
+ }
23
+
24
+ function renderDateLabel (h, _vm, item, label) {
25
+ const festivalMethod = _vm.festivalMethod
26
+ if (festivalMethod) {
27
+ const festivalRest = festivalMethod({ $input: _vm, type: _vm.datePanelType, viewType: _vm.datePanelType, ...item })
28
+ const festivalItem = festivalRest ? (XEUtils.isString(festivalRest) ? { label: festivalRest } : festivalRest) : {}
29
+ const extraItem = festivalItem.extra ? (XEUtils.isString(festivalItem.extra) ? { label: festivalItem.extra } : festivalItem.extra) : null
30
+ const labels = [
31
+ h('span', {
32
+ class: ['vxe-input--date-label', {
33
+ 'is-notice': festivalItem.notice
34
+ }]
35
+ }, extraItem && extraItem.label ? [
36
+ h('span', label),
37
+ h('span', {
38
+ class: ['vxe-input--date-label--extra', extraItem.important ? 'is-important' : '', extraItem.className],
39
+ style: extraItem.style
40
+ }, XEUtils.toValueString(extraItem.label))
41
+ ] : label)
42
+ ]
43
+ const festivalLabel = festivalItem.label
44
+ if (festivalLabel) {
45
+ // 默认最多支持3个节日重叠
46
+ const festivalLabels = XEUtils.toValueString(festivalLabel).split(',')
47
+ labels.push(
48
+ h('span', {
49
+ class: ['vxe-input--date-festival', festivalItem.important ? 'is-important' : '', festivalItem.className],
50
+ style: festivalItem.style
51
+ }, [
52
+ festivalLabels.length > 1 ? h('span', {
53
+ class: ['vxe-input--date-festival--overlap', `overlap--${festivalLabels.length}`]
54
+ }, festivalLabels.map(label => h('span', label.substring(0, 3)))) : h('span', {
55
+ class: 'vxe-input--date-festival--label'
56
+ }, festivalLabels[0].substring(0, 3))
57
+ ])
58
+ )
59
+ }
60
+ return labels
61
+ }
62
+ return label
63
+ }
64
+
65
+ function isDateDisabled (_vm, item) {
66
+ const disabledMethod = _vm.disabledMethod
67
+ return disabledMethod && disabledMethod({ $input: _vm, type: _vm.datePanelType, viewType: _vm.datePanelType, date: item.date })
68
+ }
69
+
70
+ function renderDateDayTable (h, _vm) {
71
+ const { datePanelType, dateValue, datePanelValue, dateHeaders, dayDatas } = _vm
72
+ const matchFormat = 'yyyy-MM-dd'
73
+ return [
74
+ h('table', {
75
+ class: `vxe-input--date-${datePanelType}-view`,
76
+ attrs: {
77
+ cellspacing: 0,
78
+ cellpadding: 0,
79
+ border: 0
80
+ }
81
+ }, [
82
+ h('thead', [
83
+ h('tr', dateHeaders.map(item => {
84
+ return h('th', item.label)
85
+ }))
86
+ ]),
87
+ h('tbody', dayDatas.map(rows => {
88
+ return h('tr', rows.map(item => {
89
+ return h('td', {
90
+ class: {
91
+ 'is--prev': item.isPrev,
92
+ 'is--current': item.isCurrent,
93
+ 'is--now': item.isNow,
94
+ 'is--next': item.isNext,
95
+ 'is--disabled': isDateDisabled(_vm, item),
96
+ 'is--selected': XEUtils.isDateSame(dateValue, item.date, matchFormat),
97
+ 'is--hover': XEUtils.isDateSame(datePanelValue, item.date, matchFormat)
98
+ },
99
+ on: {
100
+ click: () => _vm.dateSelectEvent(item),
101
+ mouseenter: () => _vm.dateMouseenterEvent(item)
102
+ }
103
+ }, renderDateLabel(h, _vm, item, item.label))
104
+ }))
105
+ }))
106
+ ])
107
+ ]
108
+ }
109
+
110
+ function renderDateWeekTable (h, _vm) {
111
+ const { datePanelType, dateValue, datePanelValue, weekHeaders, weekDates } = _vm
112
+ const matchFormat = 'yyyyMMdd'
113
+ return [
114
+ h('table', {
115
+ class: `vxe-input--date-${datePanelType}-view`,
116
+ attrs: {
117
+ cellspacing: 0,
118
+ cellpadding: 0,
119
+ border: 0
120
+ }
121
+ }, [
122
+ h('thead', [
123
+ h('tr', weekHeaders.map(item => {
124
+ return h('th', item.label)
125
+ }))
126
+ ]),
127
+ h('tbody', weekDates.map(rows => {
128
+ const isSelected = rows.some(item => XEUtils.isDateSame(dateValue, item.date, matchFormat))
129
+ const isHover = rows.some(item => XEUtils.isDateSame(datePanelValue, item.date, matchFormat))
130
+ return h('tr', rows.map(item => {
131
+ return h('td', {
132
+ class: {
133
+ 'is--prev': item.isPrev,
134
+ 'is--current': item.isCurrent,
135
+ 'is--now': item.isNow,
136
+ 'is--next': item.isNext,
137
+ 'is--disabled': isDateDisabled(_vm, item),
138
+ 'is--selected': isSelected,
139
+ 'is--hover': isHover
140
+ },
141
+ on: {
142
+ click: () => _vm.dateSelectEvent(item),
143
+ mouseenter: () => _vm.dateMouseenterEvent(item)
144
+ }
145
+ }, renderDateLabel(h, _vm, item, item.label))
146
+ }))
147
+ }))
148
+ ])
149
+ ]
150
+ }
151
+
152
+ function renderDateMonthTable (h, _vm) {
153
+ const { dateValue, datePanelType, monthDatas, datePanelValue } = _vm
154
+ const matchFormat = 'yyyyMM'
155
+ return [
156
+ h('table', {
157
+ class: `vxe-input--date-${datePanelType}-view`,
158
+ attrs: {
159
+ cellspacing: 0,
160
+ cellpadding: 0,
161
+ border: 0
162
+ }
163
+ }, [
164
+ h('tbody', monthDatas.map(rows => {
165
+ return h('tr', rows.map(item => {
166
+ return h('td', {
167
+ class: {
168
+ 'is--prev': item.isPrev,
169
+ 'is--current': item.isCurrent,
170
+ 'is--now': item.isNow,
171
+ 'is--next': item.isNext,
172
+ 'is--disabled': isDateDisabled(_vm, item),
173
+ 'is--selected': XEUtils.isDateSame(dateValue, item.date, matchFormat),
174
+ 'is--hover': XEUtils.isDateSame(datePanelValue, item.date, matchFormat)
175
+ },
176
+ on: {
177
+ click: () => _vm.dateSelectEvent(item),
178
+ mouseenter: () => _vm.dateMouseenterEvent(item)
179
+ }
180
+ }, renderDateLabel(h, _vm, item, GlobalConfig.i18n(`vxe.input.date.months.m${item.month}`)))
181
+ }))
182
+ }))
183
+ ])
184
+ ]
185
+ }
186
+
187
+ function renderDateQuarterTable (h, _vm) {
188
+ const { dateValue, datePanelType, quarterDatas, datePanelValue } = _vm
189
+ const matchFormat = 'yyyyq'
190
+ return [
191
+ h('table', {
192
+ class: `vxe-input--date-${datePanelType}-view`,
193
+ attrs: {
194
+ cellspacing: 0,
195
+ cellpadding: 0,
196
+ border: 0
197
+ }
198
+ }, [
199
+ h('tbody', quarterDatas.map(rows => {
200
+ return h('tr', rows.map(item => {
201
+ return h('td', {
202
+ class: {
203
+ 'is--prev': item.isPrev,
204
+ 'is--current': item.isCurrent,
205
+ 'is--now': item.isNow,
206
+ 'is--next': item.isNext,
207
+ 'is--disabled': isDateDisabled(_vm, item),
208
+ 'is--selected': XEUtils.isDateSame(dateValue, item.date, matchFormat),
209
+ 'is--hover': XEUtils.isDateSame(datePanelValue, item.date, matchFormat)
210
+ },
211
+ on: {
212
+ click: () => _vm.dateSelectEvent(item),
213
+ mouseenter: () => _vm.dateMouseenterEvent(item)
214
+ }
215
+ }, renderDateLabel(h, _vm, item, GlobalConfig.i18n(`vxe.input.date.quarters.q${item.quarter}`)))
216
+ }))
217
+ }))
218
+ ])
219
+ ]
220
+ }
221
+
222
+ function renderDateYearTable (h, _vm) {
223
+ const { dateValue, datePanelType, yearDatas, datePanelValue } = _vm
224
+ const matchFormat = 'yyyy'
225
+ return [
226
+ h('table', {
227
+ class: `vxe-input--date-${datePanelType}-view`,
228
+ attrs: {
229
+ cellspacing: 0,
230
+ cellpadding: 0,
231
+ border: 0
232
+ }
233
+ }, [
234
+ h('tbody', yearDatas.map(rows => {
235
+ return h('tr', rows.map(item => {
236
+ return h('td', {
237
+ class: {
238
+ 'is--disabled': isDateDisabled(_vm, item),
239
+ 'is--current': item.isCurrent,
240
+ 'is--now': item.isNow,
241
+ 'is--selected': XEUtils.isDateSame(dateValue, item.date, matchFormat),
242
+ 'is--hover': XEUtils.isDateSame(datePanelValue, item.date, matchFormat)
243
+ },
244
+ on: {
245
+ click: () => _vm.dateSelectEvent(item),
246
+ mouseenter: () => _vm.dateMouseenterEvent(item)
247
+ }
248
+ }, renderDateLabel(h, _vm, item, item.year))
249
+ }))
250
+ }))
251
+ ])
252
+ ]
253
+ }
254
+
255
+ function renderDateTable (h, _vm) {
256
+ const { datePanelType } = _vm
257
+ switch (datePanelType) {
258
+ case 'week' :
259
+ return renderDateWeekTable(h, _vm)
260
+ case 'month' :
261
+ return renderDateMonthTable(h, _vm)
262
+ case 'quarter' :
263
+ return renderDateQuarterTable(h, _vm)
264
+ case 'year' :
265
+ return renderDateYearTable(h, _vm)
266
+ }
267
+ return renderDateDayTable(h, _vm)
268
+ }
269
+
270
+ function renderDatePanel (h, _vm) {
271
+ const { datePanelType, selectDatePanelLabel, isDisabledPrevDateBtn, isDisabledNextDateBtn } = _vm
272
+ return [
273
+ h('div', {
274
+ class: 'vxe-input--date-picker-header'
275
+ }, [
276
+ h('div', {
277
+ class: 'vxe-input--date-picker-type-wrapper'
278
+ }, [
279
+ datePanelType === 'year' ? h('span', {
280
+ class: 'vxe-input--date-picker-label'
281
+ }, selectDatePanelLabel) : h('span', {
282
+ class: 'vxe-input--date-picker-btn',
283
+ on: {
284
+ click: _vm.dateToggleTypeEvent
285
+ }
286
+ }, selectDatePanelLabel)
287
+ ]),
288
+ h('div', {
289
+ class: 'vxe-input--date-picker-btn-wrapper'
290
+ }, [
291
+ h('span', {
292
+ class: ['vxe-input--date-picker-btn vxe-input--date-picker-prev-btn', {
293
+ 'is--disabled': isDisabledPrevDateBtn
294
+ }],
295
+ on: {
296
+ click: _vm.datePrevEvent
297
+ }
298
+ }, [
299
+ h('i', {
300
+ class: 'vxe-icon--caret-left'
301
+ })
302
+ ]),
303
+ h('span', {
304
+ class: 'vxe-input--date-picker-btn vxe-input--date-picker-current-btn',
305
+ on: {
306
+ click: _vm.dateTodayMonthEvent
307
+ }
308
+ }, [
309
+ h('i', {
310
+ class: 'vxe-icon--dot'
311
+ })
312
+ ]),
313
+ h('span', {
314
+ class: ['vxe-input--date-picker-btn vxe-input--date-picker-next-btn', {
315
+ 'is--disabled': isDisabledNextDateBtn
316
+ }],
317
+ on: {
318
+ click: _vm.dateNextEvent
319
+ }
320
+ }, [
321
+ h('i', {
322
+ class: 'vxe-icon--caret-right'
323
+ })
324
+ ])
325
+ ])
326
+ ]),
327
+ h('div', {
328
+ class: 'vxe-input--date-picker-body'
329
+ }, renderDateTable(h, _vm))
330
+ ]
331
+ }
332
+
333
+ function renderTimePanel (h, _vm) {
334
+ const { dateTimeLabel, datetimePanelValue, hourList, minuteList, secondList } = _vm
335
+ return [
336
+ h('div', {
337
+ class: 'vxe-input--time-picker-header'
338
+ }, [
339
+ h('span', {
340
+ class: 'vxe-input--time-picker-title'
341
+ }, dateTimeLabel),
342
+ h('button', {
343
+ class: 'vxe-input--time-picker-confirm',
344
+ attrs: {
345
+ type: 'button'
346
+ },
347
+ on: {
348
+ click: _vm.dateConfirmEvent
349
+ }
350
+ }, GlobalConfig.i18n('vxe.button.confirm'))
351
+ ]),
352
+ h('div', {
353
+ ref: 'timeBody',
354
+ class: 'vxe-input--time-picker-body'
355
+ }, [
356
+ h('ul', {
357
+ class: 'vxe-input--time-picker-hour-list'
358
+ }, hourList.map((item, index) => {
359
+ return h('li', {
360
+ key: index,
361
+ class: {
362
+ 'is--selected': datetimePanelValue && datetimePanelValue.getHours() === item.value
363
+ },
364
+ on: {
365
+ click: (evnt) => _vm.dateHourEvent(evnt, item)
366
+ }
367
+ }, item.label)
368
+ })),
369
+ h('ul', {
370
+ class: 'vxe-input--time-picker-minute-list'
371
+ }, minuteList.map((item, index) => {
372
+ return h('li', {
373
+ key: index,
374
+ class: {
375
+ 'is--selected': datetimePanelValue && datetimePanelValue.getMinutes() === item.value
376
+ },
377
+ on: {
378
+ click: (evnt) => _vm.dateMinuteEvent(evnt, item)
379
+ }
380
+ }, item.label)
381
+ })),
382
+ h('ul', {
383
+ class: 'vxe-input--time-picker-second-list'
384
+ }, secondList.map((item, index) => {
385
+ return h('li', {
386
+ key: index,
387
+ class: {
388
+ 'is--selected': datetimePanelValue && datetimePanelValue.getSeconds() === item.value
389
+ },
390
+ on: {
391
+ click: (evnt) => _vm.dateSecondEvent(evnt, item)
392
+ }
393
+ }, item.label)
394
+ }))
395
+ ])
396
+ ]
397
+ }
398
+
399
+ function renderPanel (h, _vm) {
400
+ const { type, vSize, isDatePickerType, transfer, animatVisible, visiblePanel, panelPlacement, panelStyle } = _vm
401
+ const renders = []
402
+ if (isDatePickerType) {
403
+ if (type === 'datetime') {
404
+ renders.push(
405
+ h('div', {
406
+ class: 'vxe-input--panel-layout-wrapper'
407
+ }, [
408
+ h('div', {
409
+ class: 'vxe-input--panel-left-wrapper'
410
+ }, renderDatePanel(h, _vm)),
411
+ h('div', {
412
+ class: 'vxe-input--panel-right-wrapper'
413
+ }, renderTimePanel(h, _vm))
414
+ ])
415
+ )
416
+ } else if (type === 'time') {
417
+ renders.push(
418
+ h('div', {
419
+ class: 'vxe-input--panel-wrapper'
420
+ }, renderTimePanel(h, _vm))
421
+ )
422
+ } else {
423
+ renders.push(
424
+ h('div', {
425
+ class: 'vxe-input--panel-wrapper'
426
+ }, renderDatePanel(h, _vm))
427
+ )
428
+ }
429
+ return h('div', {
430
+ ref: 'panel',
431
+ class: ['vxe-table--ignore-clear vxe-input--panel', `type--${type}`, {
432
+ [`size--${vSize}`]: vSize,
433
+ 'is--transfer': transfer,
434
+ 'animat--leave': animatVisible,
435
+ 'animat--enter': visiblePanel
436
+ }],
437
+ attrs: {
438
+ placement: panelPlacement
439
+ },
440
+ style: panelStyle
441
+ }, renders)
442
+ }
443
+ return null
444
+ }
445
+
446
+ function renderNumberIcon (h, _vm) {
447
+ return h('span', {
448
+ class: 'vxe-input--number-suffix'
449
+ }, [
450
+ h('span', {
451
+ class: 'vxe-input--number-prev is--prev',
452
+ on: {
453
+ mousedown: _vm.numberMousedownEvent,
454
+ mouseup: _vm.numberStopDown,
455
+ mouseleave: _vm.numberStopDown
456
+ }
457
+ }, [
458
+ h('i', {
459
+ class: ['vxe-input--number-prev-icon', GlobalConfig.icon.INPUT_PREV_NUM]
460
+ })
461
+ ]),
462
+ h('span', {
463
+ class: 'vxe-input--number-next is--next',
464
+ on: {
465
+ mousedown: _vm.numberMousedownEvent,
466
+ mouseup: _vm.numberStopDown,
467
+ mouseleave: _vm.numberStopDown
468
+ }
469
+ }, [
470
+ h('i', {
471
+ class: ['vxe-input--number-next-icon', GlobalConfig.icon.INPUT_NEXT_NUM]
472
+ })
473
+ ])
474
+ ])
475
+ }
476
+
477
+ function renderDatePickerIcon (h, _vm) {
478
+ return h('span', {
479
+ class: 'vxe-input--date-picker-suffix',
480
+ on: {
481
+ click: _vm.datePickerOpenEvent
482
+ }
483
+ }, [
484
+ h('i', {
485
+ class: ['vxe-input--date-picker-icon', GlobalConfig.icon.INPUT_DATE]
486
+ })
487
+ ])
488
+ }
489
+
490
+ function renderSearchIcon (h, _vm) {
491
+ return h('span', {
492
+ class: 'vxe-input--search-suffix',
493
+ on: {
494
+ click: _vm.searchEvent
495
+ }
496
+ }, [
497
+ h('i', {
498
+ class: ['vxe-input--search-icon', GlobalConfig.icon.INPUT_SEARCH]
499
+ })
500
+ ])
501
+ }
502
+
503
+ function renderPasswordIcon (h, _vm) {
504
+ const { showPwd } = _vm
505
+ return h('span', {
506
+ class: 'vxe-input--password-suffix',
507
+ on: {
508
+ click: _vm.passwordToggleEvent
509
+ }
510
+ }, [
511
+ h('i', {
512
+ class: ['vxe-input--password-icon', showPwd ? GlobalConfig.icon.INPUT_SHOW_PWD : GlobalConfig.icon.INPUT_PWD]
513
+ })
514
+ ])
515
+ }
516
+
517
+ function rendePrefixIcon (h, _vm) {
518
+ const { $scopedSlots, prefixIcon } = _vm
519
+ const icons = []
520
+ if ($scopedSlots.prefix) {
521
+ icons.push(
522
+ h('span', {
523
+ class: 'vxe-input--prefix-icon'
524
+ }, $scopedSlots.prefix.call(this, {}, h))
525
+ )
526
+ } else if (prefixIcon) {
527
+ icons.push(
528
+ h('i', {
529
+ class: ['vxe-input--prefix-icon', prefixIcon]
530
+ })
531
+ )
532
+ }
533
+ return icons.length ? h('span', {
534
+ class: 'vxe-input--prefix',
535
+ on: {
536
+ click: _vm.clickPrefixEvent
537
+ }
538
+ }, icons) : null
539
+ }
540
+
541
+ function renderSuffixIcon (h, _vm) {
542
+ const { $scopedSlots, inputValue, isClearable, disabled, suffixIcon } = _vm
543
+ const icons = []
544
+ if ($scopedSlots.suffix) {
545
+ icons.push(
546
+ h('span', {
547
+ class: 'vxe-input--suffix-icon'
548
+ }, $scopedSlots.suffix.call(this, {}, h))
549
+ )
550
+ } else if (suffixIcon) {
551
+ icons.push(
552
+ h('i', {
553
+ class: ['vxe-input--suffix-icon', suffixIcon]
554
+ })
555
+ )
556
+ }
557
+ if (isClearable) {
558
+ icons.push(
559
+ h('i', {
560
+ class: ['vxe-input--clear-icon', GlobalConfig.icon.INPUT_CLEAR]
561
+ })
562
+ )
563
+ }
564
+ return icons.length ? h('span', {
565
+ class: ['vxe-input--suffix', {
566
+ 'is--clear': isClearable && !disabled && !(inputValue === '' || XEUtils.eqNull(inputValue))
567
+ }],
568
+ on: {
569
+ click: _vm.clickSuffixEvent
570
+ }
571
+ }, icons) : null
572
+ }
573
+
574
+ function renderExtraSuffixIcon (h, _vm) {
575
+ const { controls, isPawdType, isNumType, isDatePickerType, isSearch } = _vm
576
+ let icons
577
+ if (isPawdType) {
578
+ icons = renderPasswordIcon(h, _vm)
579
+ } else if (isNumType) {
580
+ if (controls) {
581
+ icons = renderNumberIcon(h, _vm)
582
+ }
583
+ } else if (isDatePickerType) {
584
+ icons = renderDatePickerIcon(h, _vm)
585
+ } else if (isSearch) {
586
+ icons = renderSearchIcon(h, _vm)
587
+ }
588
+ return icons ? h('span', {
589
+ class: 'vxe-input--extra-suffix'
590
+ }, [icons]) : null
591
+ }
592
+
593
+ export default {
594
+ name: 'VxeInput',
595
+ mixins: [vSize],
596
+ model: {
597
+ prop: 'value',
598
+ event: 'modelValue'
599
+ },
600
+ props: {
601
+ value: [String, Number, Date],
602
+ immediate: { type: Boolean, default: true },
603
+ name: String,
604
+ type: { type: String, default: 'text' },
605
+ clearable: { type: Boolean, default: () => GlobalConfig.input.clearable },
606
+ readonly: Boolean,
607
+ disabled: Boolean,
608
+ placeholder: String,
609
+ maxlength: [String, Number],
610
+ autocomplete: { type: String, default: 'off' },
611
+ align: String,
612
+ form: String,
613
+ className: String,
614
+ size: { type: String, default: () => GlobalConfig.input.size || GlobalConfig.size },
615
+
616
+ // number、integer、float
617
+ min: { type: [String, Number], default: null },
618
+ max: { type: [String, Number], default: null },
619
+ step: [String, Number],
620
+ exponential: { type: Boolean, default: () => GlobalConfig.input.exponential },
621
+
622
+ // number、integer、float、password
623
+ controls: { type: Boolean, default: () => GlobalConfig.input.controls },
624
+
625
+ // float
626
+ digits: { type: [String, Number], default: () => GlobalConfig.input.digits },
627
+
628
+ // date、week、month、year
629
+ dateConfig: Object,
630
+ minDate: { type: [String, Number, Date], default: () => GlobalConfig.input.minDate },
631
+ maxDate: { type: [String, Number, Date], default: () => GlobalConfig.input.maxDate },
632
+ // 已废弃 startWeek,被 startDay 替换
633
+ startWeek: Number,
634
+ startDay: { type: [String, Number], default: () => GlobalConfig.input.startDay },
635
+ labelFormat: { type: String, default: () => GlobalConfig.input.labelFormat },
636
+ valueFormat: { type: String, default: () => GlobalConfig.input.valueFormat },
637
+ editable: { type: Boolean, default: true },
638
+ festivalMethod: { type: Function, default: () => GlobalConfig.input.festivalMethod },
639
+ disabledMethod: { type: Function, default: () => GlobalConfig.input.disabledMethod },
640
+
641
+ // week
642
+ selectDay: { type: Number, default: () => GlobalConfig.input.selectDay },
643
+
644
+ prefixIcon: String,
645
+ suffixIcon: String,
646
+ placement: String,
647
+ transfer: { type: Boolean, default: () => GlobalConfig.input.transfer }
648
+ },
649
+ data () {
650
+ return {
651
+ panelIndex: 0,
652
+ showPwd: false,
653
+ visiblePanel: false,
654
+ animatVisible: false,
655
+ panelStyle: null,
656
+ panelPlacement: null,
657
+ isActivated: false,
658
+ inputValue: this.value,
659
+ datetimePanelValue: null,
660
+ datePanelValue: null,
661
+ datePanelLabel: '',
662
+ datePanelType: 'day',
663
+ selectMonth: null,
664
+ currentDate: null
665
+ }
666
+ },
667
+ computed: {
668
+ isNumType () {
669
+ return ['number', 'integer', 'float'].indexOf(this.type) > -1
670
+ },
671
+ isDatePickerType () {
672
+ return this.hasTime || ['date', 'week', 'month', 'quarter', 'year'].indexOf(this.type) > -1
673
+ },
674
+ hasTime () {
675
+ const { type } = this
676
+ return type === 'time' || type === 'datetime'
677
+ },
678
+ isPawdType () {
679
+ return this.type === 'password'
680
+ },
681
+ isSearch () {
682
+ return this.type === 'search'
683
+ },
684
+ stepValue () {
685
+ const { type, step } = this
686
+ if (type === 'integer') {
687
+ return XEUtils.toInteger(step) || 1
688
+ } else if (type === 'float') {
689
+ return XEUtils.toNumber(step) || (1 / Math.pow(10, this.digitsValue))
690
+ }
691
+ return XEUtils.toNumber(step) || 1
692
+ },
693
+ digitsValue () {
694
+ return XEUtils.toInteger(this.digits) || 1
695
+ },
696
+ isClearable () {
697
+ return this.clearable && (this.isPawdType || this.isNumType || this.isDatePickerType || this.type === 'text' || this.type === 'search')
698
+ },
699
+ isDisabledPrevDateBtn () {
700
+ const { selectMonth, dateMinTime } = this
701
+ if (selectMonth) {
702
+ return selectMonth <= dateMinTime
703
+ }
704
+ return false
705
+ },
706
+ isDisabledNextDateBtn () {
707
+ const { selectMonth, dateMaxTime } = this
708
+ if (selectMonth) {
709
+ return selectMonth >= dateMaxTime
710
+ }
711
+ return false
712
+ },
713
+ dateMinTime () {
714
+ return this.minDate ? XEUtils.toStringDate(this.minDate) : null
715
+ },
716
+ dateMaxTime () {
717
+ return this.maxDate ? XEUtils.toStringDate(this.maxDate) : null
718
+ },
719
+ dateValue () {
720
+ const { value, isDatePickerType, dateValueFormat } = this
721
+ let val = null
722
+ if (value && isDatePickerType) {
723
+ const date = this.parseDate(value, dateValueFormat)
724
+ if (XEUtils.isValidDate(date)) {
725
+ val = date
726
+ }
727
+ }
728
+ return val
729
+ },
730
+ dateTimeLabel () {
731
+ const { datetimePanelValue } = this
732
+ if (datetimePanelValue) {
733
+ return XEUtils.toDateString(datetimePanelValue, 'HH:mm:ss')
734
+ }
735
+ return ''
736
+ },
737
+ hmsTime () {
738
+ const { dateValue } = this
739
+ return dateValue && (this.hasTime) ? (dateValue.getHours() * 3600 + dateValue.getMinutes() * 60 + dateValue.getSeconds()) * 1000 : 0
740
+ },
741
+ dateLabelFormat () {
742
+ if (this.isDatePickerType) {
743
+ return this.labelFormat || GlobalConfig.i18n(`vxe.input.date.labelFormat.${this.type}`)
744
+ }
745
+ return null
746
+ },
747
+ dateValueFormat () {
748
+ const { type } = this
749
+ return type === 'time' ? 'HH:mm:ss' : (this.valueFormat || (type === 'datetime' ? 'yyyy-MM-dd HH:mm:ss' : 'yyyy-MM-dd'))
750
+ },
751
+ selectDatePanelLabel () {
752
+ if (this.isDatePickerType) {
753
+ const { datePanelType, selectMonth, yearList } = this
754
+ let year = ''
755
+ let month
756
+ if (selectMonth) {
757
+ year = selectMonth.getFullYear()
758
+ month = selectMonth.getMonth() + 1
759
+ }
760
+ if (datePanelType === 'quarter') {
761
+ return GlobalConfig.i18n('vxe.input.date.quarterLabel', [year])
762
+ } else if (datePanelType === 'month') {
763
+ return GlobalConfig.i18n('vxe.input.date.monthLabel', [year])
764
+ } else if (datePanelType === 'year') {
765
+ return yearList.length ? `${yearList[0].year} - ${yearList[yearList.length - 1].year}` : ''
766
+ }
767
+ return GlobalConfig.i18n('vxe.input.date.dayLabel', [year, month ? GlobalConfig.i18n(`vxe.input.date.m${month}`) : '-'])
768
+ }
769
+ return ''
770
+ },
771
+ firstDayOfWeek () {
772
+ const { startDay, startWeek } = this
773
+ return XEUtils.toNumber(XEUtils.isNumber(startDay) || XEUtils.isString(startDay) ? startDay : startWeek)
774
+ },
775
+ weekDatas () {
776
+ const weeks = []
777
+ if (this.isDatePickerType) {
778
+ let { firstDayOfWeek: sWeek } = this
779
+ weeks.push(sWeek)
780
+ for (let index = 0; index < 6; index++) {
781
+ if (sWeek >= 6) {
782
+ sWeek = 0
783
+ } else {
784
+ sWeek++
785
+ }
786
+ weeks.push(sWeek)
787
+ }
788
+ }
789
+ return weeks
790
+ },
791
+ dateHeaders () {
792
+ if (this.isDatePickerType) {
793
+ return this.weekDatas.map(day => {
794
+ return {
795
+ value: day,
796
+ label: GlobalConfig.i18n(`vxe.input.date.weeks.w${day}`)
797
+ }
798
+ })
799
+ }
800
+ return []
801
+ },
802
+ weekHeaders () {
803
+ if (this.isDatePickerType) {
804
+ return [{ label: GlobalConfig.i18n('vxe.input.date.weeks.w') }].concat(this.dateHeaders)
805
+ }
806
+ return []
807
+ },
808
+ yearList () {
809
+ const { selectMonth, currentDate } = this
810
+ const months = []
811
+ if (selectMonth && currentDate) {
812
+ const currFullYear = currentDate.getFullYear()
813
+ const startYear = new Date(('' + selectMonth.getFullYear()).replace(/\d{1}$/, '0'), 0, 1)
814
+ for (let index = -10; index < yearSize - 10; index++) {
815
+ const date = XEUtils.getWhatYear(startYear, index, 'first')
816
+ const itemFullYear = date.getFullYear()
817
+ months.push({
818
+ date,
819
+ isCurrent: true,
820
+ isNow: currFullYear === itemFullYear,
821
+ year: itemFullYear
822
+ })
823
+ }
824
+ }
825
+ return months
826
+ },
827
+ yearDatas () {
828
+ return XEUtils.chunk(this.yearList, 4)
829
+ },
830
+ quarterList () {
831
+ const { selectMonth, currentDate } = this
832
+ const quarters = []
833
+ if (selectMonth && currentDate) {
834
+ const currFullYear = currentDate.getFullYear()
835
+ const currQuarter = getDateQuarter(currentDate)
836
+ const firstYear = XEUtils.getWhatYear(selectMonth, 0, 'first')
837
+ const selFullYear = firstYear.getFullYear()
838
+ for (let index = -2; index < quarterSize - 2; index++) {
839
+ const date = XEUtils.getWhatQuarter(firstYear, index)
840
+ const itemFullYear = date.getFullYear()
841
+ const itemQuarter = getDateQuarter(date)
842
+ const isPrev = itemFullYear < selFullYear
843
+ quarters.push({
844
+ date,
845
+ isPrev,
846
+ isCurrent: itemFullYear === selFullYear,
847
+ isNow: itemFullYear === currFullYear && itemQuarter === currQuarter,
848
+ isNext: !isPrev && itemFullYear > selFullYear,
849
+ quarter: itemQuarter
850
+ })
851
+ }
852
+ }
853
+ return quarters
854
+ },
855
+ quarterDatas () {
856
+ return XEUtils.chunk(this.quarterList, 2)
857
+ },
858
+ monthList () {
859
+ const { selectMonth, currentDate } = this
860
+ const months = []
861
+ if (selectMonth && currentDate) {
862
+ const currFullYear = currentDate.getFullYear()
863
+ const currMonth = currentDate.getMonth()
864
+ const selFullYear = XEUtils.getWhatYear(selectMonth, 0, 'first').getFullYear()
865
+ for (let index = -4; index < monthSize - 4; index++) {
866
+ const date = XEUtils.getWhatYear(selectMonth, 0, index)
867
+ const itemFullYear = date.getFullYear()
868
+ const itemMonth = date.getMonth()
869
+ const isPrev = itemFullYear < selFullYear
870
+ months.push({
871
+ date,
872
+ isPrev,
873
+ isCurrent: itemFullYear === selFullYear,
874
+ isNow: itemFullYear === currFullYear && itemMonth === currMonth,
875
+ isNext: !isPrev && itemFullYear > selFullYear,
876
+ month: itemMonth
877
+ })
878
+ }
879
+ }
880
+ return months
881
+ },
882
+ monthDatas () {
883
+ return XEUtils.chunk(this.monthList, 4)
884
+ },
885
+ dayList () {
886
+ const { weekDatas, selectMonth, currentDate, hmsTime } = this
887
+ const days = []
888
+ if (selectMonth && currentDate) {
889
+ const currFullYear = currentDate.getFullYear()
890
+ const currMonth = currentDate.getMonth()
891
+ const currDate = currentDate.getDate()
892
+ const selFullYear = selectMonth.getFullYear()
893
+ const selMonth = selectMonth.getMonth()
894
+ const selDay = selectMonth.getDay()
895
+ const prevOffsetDate = -weekDatas.indexOf(selDay)
896
+ const startDate = new Date(XEUtils.getWhatDay(selectMonth, prevOffsetDate).getTime() + hmsTime)
897
+ for (let index = 0; index < 42; index++) {
898
+ const date = XEUtils.getWhatDay(startDate, index)
899
+ const itemFullYear = date.getFullYear()
900
+ const itemMonth = date.getMonth()
901
+ const itemDate = date.getDate()
902
+ const isPrev = date < selectMonth
903
+ days.push({
904
+ date,
905
+ isPrev,
906
+ isCurrent: itemFullYear === selFullYear && itemMonth === selMonth,
907
+ isNow: itemFullYear === currFullYear && itemMonth === currMonth && itemDate === currDate,
908
+ isNext: !isPrev && selMonth !== itemMonth,
909
+ label: itemDate
910
+ })
911
+ }
912
+ }
913
+ return days
914
+ },
915
+ dayDatas () {
916
+ return XEUtils.chunk(this.dayList, 7)
917
+ },
918
+ weekDates () {
919
+ const { dayDatas, firstDayOfWeek } = this
920
+ return dayDatas.map(list => {
921
+ const firstItem = list[0]
922
+ const item = {
923
+ date: firstItem.date,
924
+ isWeekNumber: true,
925
+ isPrev: false,
926
+ isCurrent: false,
927
+ isNow: false,
928
+ isNext: false,
929
+ label: XEUtils.getYearWeek(firstItem.date, firstDayOfWeek)
930
+ }
931
+ return [item].concat(list)
932
+ })
933
+ },
934
+ hourList () {
935
+ const list = []
936
+ if (this.hasTime) {
937
+ for (let index = 0; index < 24; index++) {
938
+ list.push({
939
+ value: index,
940
+ label: ('' + index).padStart(2, 0)
941
+ })
942
+ }
943
+ }
944
+ return list
945
+ },
946
+ minuteList () {
947
+ const list = []
948
+ if (this.hasTime) {
949
+ for (let index = 0; index < 60; index++) {
950
+ list.push({
951
+ value: index,
952
+ label: ('' + index).padStart(2, 0)
953
+ })
954
+ }
955
+ }
956
+ return list
957
+ },
958
+ secondList () {
959
+ return this.minuteList
960
+ },
961
+ inpImmediate () {
962
+ const { type, immediate } = this
963
+ return immediate || !(type === 'text' || type === 'number' || type === 'integer' || type === 'float')
964
+ },
965
+ inpPlaceholder () {
966
+ const { placeholder } = this
967
+ if (placeholder) {
968
+ return getFuncText(placeholder)
969
+ }
970
+ return ''
971
+ },
972
+ inputType () {
973
+ const { isDatePickerType, isNumType, isPawdType, type, showPwd } = this
974
+ if (isDatePickerType || isNumType || (isPawdType && showPwd) || type === 'number') {
975
+ return 'text'
976
+ }
977
+ return type
978
+ },
979
+ inpMaxlength () {
980
+ const { isNumType, maxlength } = this
981
+ // 数值最大长度限制 16 位,包含小数
982
+ return isNumType && !XEUtils.toNumber(maxlength) ? 16 : maxlength
983
+ },
984
+ inpReadonly () {
985
+ const { type, readonly, editable } = this
986
+ return readonly || !editable || (type === 'week' || type === 'quarter')
987
+ }
988
+ },
989
+ watch: {
990
+ value (val) {
991
+ this.inputValue = val
992
+ this.changeValue()
993
+ },
994
+ type () {
995
+ // 切换类型是重置内置变量
996
+ Object.assign(this, {
997
+ inputValue: this.value,
998
+ datetimePanelValue: null,
999
+ datePanelValue: null,
1000
+ datePanelLabel: '',
1001
+ datePanelType: 'day',
1002
+ selectMonth: null,
1003
+ currentDate: null
1004
+ })
1005
+ this.initValue()
1006
+ },
1007
+ dateLabelFormat () {
1008
+ if (this.isDatePickerType) {
1009
+ this.dateParseValue(this.datePanelValue)
1010
+ this.inputValue = this.datePanelLabel
1011
+ }
1012
+ }
1013
+ },
1014
+ created () {
1015
+ this.initValue()
1016
+ GlobalEvent.on(this, 'mousewheel', this.handleGlobalMousewheelEvent)
1017
+ GlobalEvent.on(this, 'mousedown', this.handleGlobalMousedownEvent)
1018
+ GlobalEvent.on(this, 'keydown', this.handleGlobalKeydownEvent)
1019
+ GlobalEvent.on(this, 'blur', this.handleGlobalBlurEvent)
1020
+ },
1021
+ mounted () {
1022
+ if (this.dateConfig) {
1023
+ warnLog('vxe.error.removeProp', ['date-config'])
1024
+ }
1025
+ if (this.isDatePickerType) {
1026
+ if (this.transfer) {
1027
+ document.body.appendChild(this.$refs.panel)
1028
+ }
1029
+ }
1030
+ },
1031
+ beforeDestroy () {
1032
+ const panelElem = this.$refs.panel
1033
+ if (panelElem && panelElem.parentNode) {
1034
+ panelElem.parentNode.removeChild(panelElem)
1035
+ }
1036
+ },
1037
+ destroyed () {
1038
+ this.numberStopDown()
1039
+ GlobalEvent.off(this, 'mousewheel')
1040
+ GlobalEvent.off(this, 'mousedown')
1041
+ GlobalEvent.off(this, 'keydown')
1042
+ GlobalEvent.off(this, 'blur')
1043
+ },
1044
+ render (h) {
1045
+ const { name, form, inputType, inpPlaceholder, inpMaxlength, inpReadonly, className, controls, inputValue, isDatePickerType, visiblePanel, isActivated, vSize, type, align, readonly, disabled, autocomplete } = this
1046
+ const childs = []
1047
+ const prefix = rendePrefixIcon(h, this)
1048
+ const suffix = renderSuffixIcon(h, this)
1049
+ // 前缀图标
1050
+ if (prefix) {
1051
+ childs.push(prefix)
1052
+ }
1053
+ // 输入框
1054
+ childs.push(
1055
+ h('input', {
1056
+ ref: 'input',
1057
+ class: 'vxe-input--inner',
1058
+ domProps: {
1059
+ value: inputValue
1060
+ },
1061
+ attrs: {
1062
+ name,
1063
+ form,
1064
+ type: inputType,
1065
+ placeholder: inpPlaceholder,
1066
+ maxlength: inpMaxlength,
1067
+ readonly: inpReadonly,
1068
+ disabled,
1069
+ autocomplete
1070
+ },
1071
+ on: {
1072
+ keydown: this.keydownEvent,
1073
+ keyup: this.triggerEvent,
1074
+ wheel: this.wheelEvent,
1075
+ click: this.clickEvent,
1076
+ input: this.inputEvent,
1077
+ change: this.changeEvent,
1078
+ focus: this.focusEvent,
1079
+ blur: this.blurEvent
1080
+ }
1081
+ })
1082
+ )
1083
+ // 后缀图标
1084
+ if (suffix) {
1085
+ childs.push(suffix)
1086
+ }
1087
+ // 特殊功能图标
1088
+ childs.push(renderExtraSuffixIcon(h, this))
1089
+ // 面板容器
1090
+ if (isDatePickerType) {
1091
+ childs.push(renderPanel(h, this))
1092
+ }
1093
+ return h('div', {
1094
+ class: ['vxe-input', `type--${type}`, className, {
1095
+ [`size--${vSize}`]: vSize,
1096
+ [`is--${align}`]: align,
1097
+ 'is--controls': controls,
1098
+ 'is--prefix': !!prefix,
1099
+ 'is--suffix': !!suffix,
1100
+ 'is--readonly': readonly,
1101
+ 'is--visivle': visiblePanel,
1102
+ 'is--disabled': disabled,
1103
+ 'is--active': isActivated
1104
+ }]
1105
+ }, childs)
1106
+ },
1107
+ methods: {
1108
+ focus () {
1109
+ this.isActivated = true
1110
+ this.$refs.input.focus()
1111
+ return this.$nextTick()
1112
+ },
1113
+ blur () {
1114
+ this.$refs.input.blur()
1115
+ this.isActivated = false
1116
+ return this.$nextTick()
1117
+ },
1118
+ triggerEvent (evnt) {
1119
+ const { $refs, inputValue } = this
1120
+ this.$emit(evnt.type, { $panel: $refs.panel, value: inputValue, $event: evnt })
1121
+ },
1122
+ emitModel (value, evnt) {
1123
+ this.inputValue = value
1124
+ this.$emit('modelValue', value)
1125
+ this.$emit('input', { value, $event: evnt })
1126
+ if (XEUtils.toValueString(this.value) !== value) {
1127
+ this.$emit('change', { value, $event: evnt })
1128
+ }
1129
+ },
1130
+ emitInputEvent (value, evnt) {
1131
+ const { inpImmediate, isDatePickerType } = this
1132
+ this.inputValue = value
1133
+ if (!isDatePickerType) {
1134
+ if (inpImmediate) {
1135
+ this.emitModel(value, evnt)
1136
+ } else {
1137
+ this.$emit('input', { value, $event: evnt })
1138
+ }
1139
+ }
1140
+ },
1141
+ inputEvent (evnt) {
1142
+ const value = evnt.target.value
1143
+ this.emitInputEvent(value, evnt)
1144
+ },
1145
+ changeEvent (evnt) {
1146
+ const { inpImmediate } = this
1147
+ if (!inpImmediate) {
1148
+ this.triggerEvent(evnt)
1149
+ }
1150
+ },
1151
+ focusEvent (evnt) {
1152
+ this.isActivated = true
1153
+ this.triggerEvent(evnt)
1154
+ },
1155
+ blurEvent (evnt) {
1156
+ const { inputValue, inpImmediate } = this
1157
+ const value = inputValue
1158
+ if (!inpImmediate) {
1159
+ this.emitModel(value, evnt)
1160
+ }
1161
+ this.afterCheckValue()
1162
+ if (!this.visiblePanel) {
1163
+ this.isActivated = false
1164
+ }
1165
+ this.$emit('blur', { value, $event: evnt })
1166
+ },
1167
+ keydownEvent (evnt) {
1168
+ const { exponential, controls, isNumType } = this
1169
+ if (isNumType) {
1170
+ const isCtrlKey = evnt.ctrlKey
1171
+ const isShiftKey = evnt.shiftKey
1172
+ const isAltKey = evnt.altKey
1173
+ const keyCode = evnt.keyCode
1174
+ if (!isCtrlKey && !isShiftKey && !isAltKey && (keyCode === 32 || ((!exponential || keyCode !== 69) && (keyCode >= 65 && keyCode <= 90)) || (keyCode >= 186 && keyCode <= 188) || keyCode >= 191)) {
1175
+ evnt.preventDefault()
1176
+ }
1177
+ if (controls) {
1178
+ this.numberKeydownEvent(evnt)
1179
+ }
1180
+ }
1181
+ this.triggerEvent(evnt)
1182
+ },
1183
+ wheelEvent (evnt) {
1184
+ if (this.isNumType && this.controls) {
1185
+ if (this.isActivated) {
1186
+ const delta = evnt.deltaY
1187
+ if (delta > 0) {
1188
+ this.numberNextEvent(evnt)
1189
+ } else if (delta < 0) {
1190
+ this.numberPrevEvent(evnt)
1191
+ }
1192
+ evnt.preventDefault()
1193
+ }
1194
+ }
1195
+ this.triggerEvent(evnt)
1196
+ },
1197
+ clickEvent (evnt) {
1198
+ const { isDatePickerType } = this
1199
+ if (isDatePickerType) {
1200
+ this.datePickerOpenEvent(evnt)
1201
+ }
1202
+ this.triggerEvent(evnt)
1203
+ },
1204
+ clickPrefixEvent (evnt) {
1205
+ const { $refs, disabled, inputValue } = this
1206
+ if (!disabled) {
1207
+ this.$emit('prefix-click', { $panel: $refs.panel, value: inputValue, $event: evnt })
1208
+ }
1209
+ },
1210
+ clickSuffixEvent (evnt) {
1211
+ const { $refs, disabled, inputValue } = this
1212
+ if (!disabled) {
1213
+ if (DomTools.hasClass(evnt.currentTarget, 'is--clear')) {
1214
+ this.emitModel('', evnt)
1215
+ this.clearValueEvent(evnt, '')
1216
+ } else {
1217
+ this.$emit('suffix-click', { $panel: $refs.panel, value: inputValue, $event: evnt })
1218
+ }
1219
+ }
1220
+ },
1221
+ clearValueEvent (evnt, value) {
1222
+ const { $refs, type, isNumType } = this
1223
+ if (this.isDatePickerType) {
1224
+ this.hidePanel()
1225
+ }
1226
+ if (isNumType || ['text', 'search', 'password'].indexOf(type) > -1) {
1227
+ this.focus()
1228
+ }
1229
+ this.$emit('clear', { $panel: $refs.panel, value, $event: evnt })
1230
+ },
1231
+ parseDate (value, format) {
1232
+ const { type } = this
1233
+ if (type === 'time') {
1234
+ return toStringTimeDate(value)
1235
+ }
1236
+ return XEUtils.toStringDate(value, format)
1237
+ },
1238
+ /**
1239
+ * 检查初始值
1240
+ */
1241
+ initValue () {
1242
+ const { type, isDatePickerType, inputValue, digitsValue } = this
1243
+ if (isDatePickerType) {
1244
+ this.changeValue()
1245
+ } else if (type === 'float') {
1246
+ if (inputValue) {
1247
+ const validValue = toFloatValueFixed(inputValue, digitsValue)
1248
+ if (inputValue !== validValue) {
1249
+ this.emitModel(validValue, { type: 'init' })
1250
+ }
1251
+ }
1252
+ }
1253
+ },
1254
+ /**
1255
+ * 值变化时处理
1256
+ */
1257
+ changeValue () {
1258
+ if (this.isDatePickerType) {
1259
+ this.dateParseValue(this.inputValue)
1260
+ this.inputValue = this.datePanelLabel
1261
+ }
1262
+ },
1263
+ afterCheckValue () {
1264
+ const { type, exponential, inpReadonly, inputValue, isDatePickerType, isNumType, datetimePanelValue, dateLabelFormat, min, max, firstDayOfWeek } = this
1265
+ if (!inpReadonly) {
1266
+ if (isNumType) {
1267
+ if (inputValue) {
1268
+ let inpNumVal = type === 'integer' ? XEUtils.toInteger(handleNumber(inputValue)) : XEUtils.toNumber(handleNumber(inputValue))
1269
+ if (!this.vaildMinNum(inpNumVal)) {
1270
+ inpNumVal = min
1271
+ } else if (!this.vaildMaxNum(inpNumVal)) {
1272
+ inpNumVal = max
1273
+ }
1274
+ if (exponential) {
1275
+ const inpStringVal = XEUtils.toValueString(inputValue).toLowerCase()
1276
+ if (inpStringVal === XEUtils.toNumber(inpNumVal).toExponential()) {
1277
+ inpNumVal = inpStringVal
1278
+ }
1279
+ }
1280
+ this.emitModel(getNumberValue(this, inpNumVal), { type: 'check' })
1281
+ }
1282
+ } else if (isDatePickerType) {
1283
+ if (inputValue) {
1284
+ if (type === 'week' || type === 'quarter') {
1285
+ // 周和季度选择器不支持解析,无需处理
1286
+ } else {
1287
+ let inpDateVal = this.parseDate(inputValue, dateLabelFormat)
1288
+ if (XEUtils.isValidDate(inpDateVal)) {
1289
+ if (type === 'time') {
1290
+ inpDateVal = toStringTimeDate(inpDateVal)
1291
+ if (inputValue !== inpDateVal) {
1292
+ this.emitModel(inpDateVal, { type: 'check' })
1293
+ }
1294
+ this.inputValue = inpDateVal
1295
+ } else {
1296
+ let isChange = false
1297
+ if (type === 'datetime') {
1298
+ if (inputValue !== XEUtils.toDateString(this.dateValue, dateLabelFormat) || inputValue !== XEUtils.toDateString(inpDateVal, dateLabelFormat)) {
1299
+ isChange = true
1300
+ datetimePanelValue.setHours(inpDateVal.getHours())
1301
+ datetimePanelValue.setMinutes(inpDateVal.getMinutes())
1302
+ datetimePanelValue.setSeconds(inpDateVal.getSeconds())
1303
+ }
1304
+ } else {
1305
+ isChange = true
1306
+ }
1307
+ this.inputValue = XEUtils.toDateString(inpDateVal, dateLabelFormat, { firstDay: firstDayOfWeek })
1308
+ if (isChange) {
1309
+ this.dateChange(inpDateVal)
1310
+ }
1311
+ }
1312
+ } else {
1313
+ this.dateRevert()
1314
+ }
1315
+ }
1316
+ } else {
1317
+ this.emitModel('', { type: 'check' })
1318
+ }
1319
+ }
1320
+ }
1321
+ },
1322
+
1323
+ // 密码
1324
+ passwordToggleEvent (evnt) {
1325
+ const { disabled, readonly, showPwd } = this
1326
+ if (!disabled && !readonly) {
1327
+ this.showPwd = !showPwd
1328
+ }
1329
+ this.$emit('toggle-visible', { visible: this.showPwd, $event: evnt })
1330
+ },
1331
+ // 密码
1332
+
1333
+ // 搜索
1334
+ searchEvent (evnt) {
1335
+ this.$emit('search-click', { $event: evnt })
1336
+ },
1337
+ // 搜索
1338
+
1339
+ // 数值
1340
+ vaildMinNum (num) {
1341
+ return this.min === null || num >= XEUtils.toNumber(this.min)
1342
+ },
1343
+ vaildMaxNum (num) {
1344
+ return this.max === null || num <= XEUtils.toNumber(this.max)
1345
+ },
1346
+ numberStopDown () {
1347
+ clearTimeout(this.downbumTimeout)
1348
+ },
1349
+ numberDownPrevEvent (evnt) {
1350
+ this.downbumTimeout = setTimeout(() => {
1351
+ this.numberPrevEvent(evnt)
1352
+ this.numberDownPrevEvent(evnt)
1353
+ }, 60)
1354
+ },
1355
+ numberDownNextEvent (evnt) {
1356
+ this.downbumTimeout = setTimeout(() => {
1357
+ this.numberNextEvent(evnt)
1358
+ this.numberDownNextEvent(evnt)
1359
+ }, 60)
1360
+ },
1361
+ numberKeydownEvent (evnt) {
1362
+ const { keyCode } = evnt
1363
+ const isUpArrow = keyCode === 38
1364
+ const isDwArrow = keyCode === 40
1365
+ if (isUpArrow || isDwArrow) {
1366
+ evnt.preventDefault()
1367
+ if (isUpArrow) {
1368
+ this.numberPrevEvent(evnt)
1369
+ } else {
1370
+ this.numberNextEvent(evnt)
1371
+ }
1372
+ }
1373
+ },
1374
+ numberMousedownEvent (evnt) {
1375
+ this.numberStopDown()
1376
+ if (evnt.button === 0) {
1377
+ const isPrevNumber = DomTools.hasClass(evnt.currentTarget, 'is--prev')
1378
+ if (isPrevNumber) {
1379
+ this.numberPrevEvent(evnt)
1380
+ } else {
1381
+ this.numberNextEvent(evnt)
1382
+ }
1383
+ this.downbumTimeout = setTimeout(() => {
1384
+ if (isPrevNumber) {
1385
+ this.numberDownPrevEvent(evnt)
1386
+ } else {
1387
+ this.numberDownNextEvent(evnt)
1388
+ }
1389
+ }, 500)
1390
+ }
1391
+ },
1392
+ numberPrevEvent (evnt) {
1393
+ const { disabled, readonly } = this
1394
+ clearTimeout(this.downbumTimeout)
1395
+ if (!disabled && !readonly) {
1396
+ this.numberChange(true, evnt)
1397
+ }
1398
+ this.$emit('prev-number', { $event: evnt })
1399
+ },
1400
+ numberNextEvent (evnt) {
1401
+ const { disabled, readonly } = this
1402
+ clearTimeout(this.downbumTimeout)
1403
+ if (!disabled && !readonly) {
1404
+ this.numberChange(false, evnt)
1405
+ }
1406
+ this.$emit('next-number', { $event: evnt })
1407
+ },
1408
+ numberChange (isPlus, evnt) {
1409
+ const { min, max, type, inputValue, stepValue } = this
1410
+ const numValue = type === 'integer' ? XEUtils.toInteger(handleNumber(inputValue)) : XEUtils.toNumber(handleNumber(inputValue))
1411
+ const newValue = isPlus ? XEUtils.add(numValue, stepValue) : XEUtils.subtract(numValue, stepValue)
1412
+ let restNum
1413
+ if (!this.vaildMinNum(newValue)) {
1414
+ restNum = min
1415
+ } else if (!this.vaildMaxNum(newValue)) {
1416
+ restNum = max
1417
+ } else {
1418
+ restNum = newValue
1419
+ }
1420
+ this.emitInputEvent(getNumberValue(this, restNum), evnt)
1421
+ },
1422
+ // 数值
1423
+
1424
+ // 日期
1425
+ datePickerOpenEvent (evnt) {
1426
+ const { readonly } = this
1427
+ if (!readonly) {
1428
+ evnt.preventDefault()
1429
+ this.showPanel()
1430
+ }
1431
+ },
1432
+ dateMonthHandle (date, offsetMonth) {
1433
+ this.selectMonth = XEUtils.getWhatMonth(date, offsetMonth, 'first')
1434
+ },
1435
+ dateNowHandle () {
1436
+ const currentDate = XEUtils.getWhatDay(Date.now(), 0, 'first')
1437
+ this.currentDate = currentDate
1438
+ this.dateMonthHandle(currentDate, 0)
1439
+ },
1440
+ dateToggleTypeEvent () {
1441
+ let { datePanelType } = this
1442
+ if (datePanelType === 'month' || datePanelType === 'quarter') {
1443
+ datePanelType = 'year'
1444
+ } else {
1445
+ datePanelType = 'month'
1446
+ }
1447
+ this.datePanelType = datePanelType
1448
+ },
1449
+ datePrevEvent (evnt) {
1450
+ const { isDisabledPrevDateBtn, type, datePanelType } = this
1451
+ if (!isDisabledPrevDateBtn) {
1452
+ if (type === 'year') {
1453
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, -yearSize, 'first')
1454
+ } else if (type === 'month' || type === 'quarter') {
1455
+ if (datePanelType === 'year') {
1456
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, -yearSize, 'first')
1457
+ } else {
1458
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, -1, 'first')
1459
+ }
1460
+ } else {
1461
+ if (datePanelType === 'year') {
1462
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, -yearSize, 'first')
1463
+ } else if (datePanelType === 'month') {
1464
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, -1, 'first')
1465
+ } else {
1466
+ this.selectMonth = XEUtils.getWhatMonth(this.selectMonth, -1, 'first')
1467
+ }
1468
+ }
1469
+ this.$emit('date-prev', { type, $event: evnt })
1470
+ }
1471
+ },
1472
+ dateTodayMonthEvent (evnt) {
1473
+ this.dateNowHandle()
1474
+ this.dateChange(this.currentDate)
1475
+ this.hidePanel()
1476
+ this.$emit('date-today', { type: this.type, $event: evnt })
1477
+ },
1478
+ dateNextEvent (evnt) {
1479
+ const { isDisabledNextDateBtn, type, datePanelType } = this
1480
+ if (!isDisabledNextDateBtn) {
1481
+ if (type === 'year') {
1482
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, yearSize, 'first')
1483
+ } else if (type === 'month' || type === 'quarter') {
1484
+ if (datePanelType === 'year') {
1485
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, yearSize, 'first')
1486
+ } else {
1487
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, 1, 'first')
1488
+ }
1489
+ } else {
1490
+ if (datePanelType === 'year') {
1491
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, yearSize, 'first')
1492
+ } else if (datePanelType === 'month') {
1493
+ this.selectMonth = XEUtils.getWhatYear(this.selectMonth, 1, 'first')
1494
+ } else {
1495
+ this.selectMonth = XEUtils.getWhatMonth(this.selectMonth, 1, 'first')
1496
+ }
1497
+ }
1498
+ this.$emit('date-next', { type, $event: evnt })
1499
+ }
1500
+ },
1501
+ dateSelectEvent (item) {
1502
+ if (!isDateDisabled(this, item)) {
1503
+ this.dateSelectItem(item.date)
1504
+ }
1505
+ },
1506
+ dateSelectItem (date) {
1507
+ const { type, datePanelType } = this
1508
+ const isWeekType = type === 'week'
1509
+ if (type === 'month') {
1510
+ if (datePanelType === 'year') {
1511
+ this.datePanelType = 'month'
1512
+ this.dateCheckMonth(date)
1513
+ } else {
1514
+ this.dateChange(date)
1515
+ this.hidePanel()
1516
+ }
1517
+ } else if (type === 'year') {
1518
+ this.hidePanel()
1519
+ this.dateChange(date)
1520
+ } else if (type === 'quarter') {
1521
+ if (datePanelType === 'year') {
1522
+ this.datePanelType = 'quarter'
1523
+ this.dateCheckMonth(date)
1524
+ } else {
1525
+ this.dateChange(date)
1526
+ this.hidePanel()
1527
+ }
1528
+ } else {
1529
+ if (datePanelType === 'month') {
1530
+ this.datePanelType = type === 'week' ? type : 'day'
1531
+ this.dateCheckMonth(date)
1532
+ } else if (datePanelType === 'year') {
1533
+ this.datePanelType = 'month'
1534
+ this.dateCheckMonth(date)
1535
+ } else {
1536
+ this.dateChange(date)
1537
+ this.hidePanel()
1538
+ }
1539
+ }
1540
+ if (isWeekType) {
1541
+ this.changeValue()
1542
+ }
1543
+ },
1544
+ dateMouseenterEvent (item) {
1545
+ if (!isDateDisabled(this, item)) {
1546
+ const { datePanelType } = this
1547
+ if (datePanelType === 'month') {
1548
+ this.dateMoveMonth(item.date)
1549
+ } else if (datePanelType === 'quarter') {
1550
+ this.dateMoveQuarter(item.date)
1551
+ } else if (datePanelType === 'year') {
1552
+ this.dateMoveYear(item.date)
1553
+ } else {
1554
+ this.dateMoveDay(item.date)
1555
+ }
1556
+ }
1557
+ },
1558
+ dateHourEvent (evnt, item) {
1559
+ this.datetimePanelValue.setHours(item.value)
1560
+ this.dateTimeChangeEvent(evnt)
1561
+ },
1562
+ dateConfirmEvent () {
1563
+ this.dateChange(this.dateValue || this.currentDate)
1564
+ this.hidePanel()
1565
+ },
1566
+ dateMinuteEvent (evnt, item) {
1567
+ this.datetimePanelValue.setMinutes(item.value)
1568
+ this.dateTimeChangeEvent(evnt)
1569
+ },
1570
+ dateSecondEvent (evnt, item) {
1571
+ this.datetimePanelValue.setSeconds(item.value)
1572
+ this.dateTimeChangeEvent(evnt)
1573
+ },
1574
+ dateTimeChangeEvent (evnt) {
1575
+ this.datetimePanelValue = new Date(this.datetimePanelValue.getTime())
1576
+ this.updateTimePos(evnt.currentTarget)
1577
+ },
1578
+ updateTimePos (liElem) {
1579
+ if (liElem) {
1580
+ const height = liElem.offsetHeight
1581
+ liElem.parentNode.scrollTop = liElem.offsetTop - height * 4
1582
+ }
1583
+ },
1584
+ dateMoveDay (offsetDay) {
1585
+ if (!isDateDisabled(this, { date: offsetDay })) {
1586
+ if (!this.dayList.some(item => XEUtils.isDateSame(item.date, offsetDay, 'yyyyMMdd'))) {
1587
+ this.dateCheckMonth(offsetDay)
1588
+ }
1589
+ this.dateParseValue(offsetDay)
1590
+ }
1591
+ },
1592
+ dateMoveMonth (offsetMonth) {
1593
+ if (!isDateDisabled(this, { date: offsetMonth })) {
1594
+ if (!this.monthList.some(item => XEUtils.isDateSame(item.date, offsetMonth, 'yyyyMM'))) {
1595
+ this.dateCheckMonth(offsetMonth)
1596
+ }
1597
+ this.dateParseValue(offsetMonth)
1598
+ }
1599
+ },
1600
+ dateMoveQuarter (offsetQuarter) {
1601
+ if (!isDateDisabled(this, { date: offsetQuarter })) {
1602
+ if (!this.quarterList.some(item => XEUtils.isDateSame(item.date, offsetQuarter, 'yyyyq'))) {
1603
+ this.dateCheckMonth(offsetQuarter)
1604
+ }
1605
+ this.dateParseValue(offsetQuarter)
1606
+ }
1607
+ },
1608
+ dateMoveYear (offsetYear) {
1609
+ if (!isDateDisabled(this, { date: offsetYear })) {
1610
+ if (!this.yearList.some(item => XEUtils.isDateSame(item.date, offsetYear, 'yyyy'))) {
1611
+ this.dateCheckMonth(offsetYear)
1612
+ }
1613
+ this.dateParseValue(offsetYear)
1614
+ }
1615
+ },
1616
+ dateParseValue (date) {
1617
+ const { type, dateLabelFormat, valueFormat, firstDayOfWeek } = this
1618
+ let dValue = null
1619
+ let dLabel = ''
1620
+ if (date) {
1621
+ dValue = this.parseDate(date, valueFormat)
1622
+ }
1623
+ if (XEUtils.isValidDate(dValue)) {
1624
+ dLabel = XEUtils.toDateString(dValue, dateLabelFormat, { firstDay: firstDayOfWeek })
1625
+ // 由于年份和第几周是冲突的行为,所以需要特殊处理,判断是否跨年
1626
+ if (dateLabelFormat && type === 'week') {
1627
+ const firstWeekDate = XEUtils.getWhatWeek(dValue, 0, firstDayOfWeek, firstDayOfWeek)
1628
+ if (firstWeekDate.getFullYear() < dValue.getFullYear()) {
1629
+ const yyIndex = dateLabelFormat.indexOf('yyyy')
1630
+ if (yyIndex > -1) {
1631
+ const yyNum = Number(dLabel.substring(yyIndex, yyIndex + 4))
1632
+ if (yyNum && !isNaN(yyNum)) {
1633
+ dLabel = dLabel.replace(`${yyNum}`, `${yyNum - 1}`)
1634
+ }
1635
+ }
1636
+ }
1637
+ }
1638
+ } else {
1639
+ dValue = null
1640
+ }
1641
+ this.datePanelValue = dValue
1642
+ this.datePanelLabel = dLabel
1643
+ },
1644
+ dateOffsetEvent (evnt) {
1645
+ const { isActivated, datePanelValue, datePanelType, firstDayOfWeek } = this
1646
+ if (isActivated) {
1647
+ evnt.preventDefault()
1648
+ const keyCode = evnt.keyCode
1649
+ const isLeftArrow = keyCode === 37
1650
+ const isUpArrow = keyCode === 38
1651
+ const isRightArrow = keyCode === 39
1652
+ const isDwArrow = keyCode === 40
1653
+ if (datePanelType === 'year') {
1654
+ let offsetYear = XEUtils.getWhatYear(datePanelValue || Date.now(), 0, 'first')
1655
+ if (isLeftArrow) {
1656
+ offsetYear = XEUtils.getWhatYear(offsetYear, -1)
1657
+ } else if (isUpArrow) {
1658
+ offsetYear = XEUtils.getWhatYear(offsetYear, -4)
1659
+ } else if (isRightArrow) {
1660
+ offsetYear = XEUtils.getWhatYear(offsetYear, 1)
1661
+ } else if (isDwArrow) {
1662
+ offsetYear = XEUtils.getWhatYear(offsetYear, 4)
1663
+ }
1664
+ this.dateMoveYear(offsetYear)
1665
+ } else if (datePanelType === 'quarter') {
1666
+ let offsetQuarter = XEUtils.getWhatQuarter(datePanelValue || Date.now(), 0, 'first')
1667
+ if (isLeftArrow) {
1668
+ offsetQuarter = XEUtils.getWhatQuarter(offsetQuarter, -1)
1669
+ } else if (isUpArrow) {
1670
+ offsetQuarter = XEUtils.getWhatQuarter(offsetQuarter, -2)
1671
+ } else if (isRightArrow) {
1672
+ offsetQuarter = XEUtils.getWhatQuarter(offsetQuarter, 1)
1673
+ } else if (isDwArrow) {
1674
+ offsetQuarter = XEUtils.getWhatQuarter(offsetQuarter, 2)
1675
+ }
1676
+ this.dateMoveQuarter(offsetQuarter)
1677
+ } else if (datePanelType === 'month') {
1678
+ let offsetMonth = XEUtils.getWhatMonth(datePanelValue || Date.now(), 0, 'first')
1679
+ if (isLeftArrow) {
1680
+ offsetMonth = XEUtils.getWhatMonth(offsetMonth, -1)
1681
+ } else if (isUpArrow) {
1682
+ offsetMonth = XEUtils.getWhatMonth(offsetMonth, -4)
1683
+ } else if (isRightArrow) {
1684
+ offsetMonth = XEUtils.getWhatMonth(offsetMonth, 1)
1685
+ } else if (isDwArrow) {
1686
+ offsetMonth = XEUtils.getWhatMonth(offsetMonth, 4)
1687
+ }
1688
+ this.dateMoveMonth(offsetMonth)
1689
+ } else {
1690
+ let offsetDay = datePanelValue || XEUtils.getWhatDay(Date.now(), 0, 'first')
1691
+ if (isLeftArrow) {
1692
+ offsetDay = XEUtils.getWhatDay(offsetDay, -1)
1693
+ } else if (isUpArrow) {
1694
+ offsetDay = XEUtils.getWhatWeek(offsetDay, -1, firstDayOfWeek)
1695
+ } else if (isRightArrow) {
1696
+ offsetDay = XEUtils.getWhatDay(offsetDay, 1)
1697
+ } else if (isDwArrow) {
1698
+ offsetDay = XEUtils.getWhatWeek(offsetDay, 1, firstDayOfWeek)
1699
+ }
1700
+ this.dateMoveDay(offsetDay)
1701
+ }
1702
+ }
1703
+ },
1704
+ datePgOffsetEvent (evnt) {
1705
+ const { isActivated } = this
1706
+ if (isActivated) {
1707
+ const isPgUp = evnt.keyCode === 33
1708
+ evnt.preventDefault()
1709
+ if (isPgUp) {
1710
+ this.datePrevEvent(evnt)
1711
+ } else {
1712
+ this.dateNextEvent(evnt)
1713
+ }
1714
+ }
1715
+ },
1716
+ dateChange (date) {
1717
+ const { value, datetimePanelValue, dateValueFormat, firstDayOfWeek } = this
1718
+ if (this.type === 'week') {
1719
+ const sWeek = XEUtils.toNumber(this.selectDay)
1720
+ date = XEUtils.getWhatWeek(date, 0, sWeek, firstDayOfWeek)
1721
+ } else if (this.hasTime) {
1722
+ date.setHours(datetimePanelValue.getHours())
1723
+ date.setMinutes(datetimePanelValue.getMinutes())
1724
+ date.setSeconds(datetimePanelValue.getSeconds())
1725
+ }
1726
+ const inpVal = XEUtils.toDateString(date, dateValueFormat, { firstDay: firstDayOfWeek })
1727
+ this.dateCheckMonth(date)
1728
+ if (!XEUtils.isEqual(value, inpVal)) {
1729
+ this.emitModel(inpVal, { type: 'update' })
1730
+ }
1731
+ },
1732
+ dateCheckMonth (date) {
1733
+ const month = XEUtils.getWhatMonth(date, 0, 'first')
1734
+ if (!XEUtils.isEqual(month, this.selectMonth)) {
1735
+ this.selectMonth = month
1736
+ }
1737
+ },
1738
+ dateOpenPanel () {
1739
+ const { type, dateValue } = this
1740
+ if (['year', 'quarter', 'month', 'week'].indexOf(type) > -1) {
1741
+ this.datePanelType = type
1742
+ } else {
1743
+ this.datePanelType = 'day'
1744
+ }
1745
+ this.currentDate = XEUtils.getWhatDay(Date.now(), 0, 'first')
1746
+ if (dateValue) {
1747
+ this.dateMonthHandle(dateValue, 0)
1748
+ this.dateParseValue(dateValue)
1749
+ } else {
1750
+ this.dateNowHandle()
1751
+ }
1752
+ if (this.hasTime) {
1753
+ this.datetimePanelValue = this.datePanelValue || XEUtils.getWhatDay(Date.now(), 0, 'first')
1754
+ this.$nextTick(() => {
1755
+ XEUtils.arrayEach(this.$refs.timeBody.querySelectorAll('li.is--selected'), this.updateTimePos)
1756
+ })
1757
+ }
1758
+ },
1759
+ dateRevert () {
1760
+ this.inputValue = this.datePanelLabel
1761
+ },
1762
+ // 日期
1763
+
1764
+ // 弹出面板
1765
+ updateZindex () {
1766
+ if (this.panelIndex < UtilTools.getLastZIndex()) {
1767
+ this.panelIndex = UtilTools.nextZIndex()
1768
+ }
1769
+ },
1770
+ showPanel () {
1771
+ const { disabled, visiblePanel, isDatePickerType } = this
1772
+ if (!disabled && !visiblePanel) {
1773
+ clearTimeout(this.hidePanelTimeout)
1774
+ this.isActivated = true
1775
+ this.animatVisible = true
1776
+ if (isDatePickerType) {
1777
+ this.dateOpenPanel()
1778
+ }
1779
+ setTimeout(() => {
1780
+ this.visiblePanel = true
1781
+ }, 10)
1782
+ this.updateZindex()
1783
+ this.updatePlacement()
1784
+ }
1785
+ },
1786
+ hidePanel () {
1787
+ this.visiblePanel = false
1788
+ this.hidePanelTimeout = setTimeout(() => {
1789
+ this.animatVisible = false
1790
+ }, 350)
1791
+ },
1792
+ updatePlacement () {
1793
+ return this.$nextTick().then(() => {
1794
+ const { $refs, transfer, placement, panelIndex } = this
1795
+ const targetElem = $refs.input
1796
+ const panelElem = $refs.panel
1797
+ if (targetElem && panelElem) {
1798
+ const targetHeight = targetElem.offsetHeight
1799
+ const targetWidth = targetElem.offsetWidth
1800
+ const panelHeight = panelElem.offsetHeight
1801
+ const panelWidth = panelElem.offsetWidth
1802
+ const marginSize = 5
1803
+ const panelStyle = {
1804
+ zIndex: panelIndex
1805
+ }
1806
+ const { boundingTop, boundingLeft, visibleHeight, visibleWidth } = DomTools.getAbsolutePos(targetElem)
1807
+ let panelPlacement = 'bottom'
1808
+ if (transfer) {
1809
+ let left = boundingLeft
1810
+ let top = boundingTop + targetHeight
1811
+ if (placement === 'top') {
1812
+ panelPlacement = 'top'
1813
+ top = boundingTop - panelHeight
1814
+ } else if (!placement) {
1815
+ // 如果下面不够放,则向上
1816
+ if (top + panelHeight + marginSize > visibleHeight) {
1817
+ panelPlacement = 'top'
1818
+ top = boundingTop - panelHeight
1819
+ }
1820
+ // 如果上面不够放,则向下(优先)
1821
+ if (top < marginSize) {
1822
+ panelPlacement = 'bottom'
1823
+ top = boundingTop + targetHeight
1824
+ }
1825
+ }
1826
+ // 如果溢出右边
1827
+ if (left + panelWidth + marginSize > visibleWidth) {
1828
+ left -= left + panelWidth + marginSize - visibleWidth
1829
+ }
1830
+ // 如果溢出左边
1831
+ if (left < marginSize) {
1832
+ left = marginSize
1833
+ }
1834
+ Object.assign(panelStyle, {
1835
+ left: `${left}px`,
1836
+ top: `${top}px`,
1837
+ minWidth: `${targetWidth}px`
1838
+ })
1839
+ } else {
1840
+ if (placement === 'top') {
1841
+ panelPlacement = 'top'
1842
+ panelStyle.bottom = `${targetHeight}px`
1843
+ } else if (!placement) {
1844
+ // 如果下面不够放,则向上
1845
+ if (boundingTop + targetHeight + panelHeight > visibleHeight) {
1846
+ // 如果上面不够放,则向下(优先)
1847
+ if (boundingTop - targetHeight - panelHeight > marginSize) {
1848
+ panelPlacement = 'top'
1849
+ panelStyle.bottom = `${targetHeight}px`
1850
+ }
1851
+ }
1852
+ }
1853
+ }
1854
+ this.panelStyle = panelStyle
1855
+ this.panelPlacement = panelPlacement
1856
+ return this.$nextTick()
1857
+ }
1858
+ })
1859
+ },
1860
+ // 弹出面板
1861
+
1862
+ // 全局事件
1863
+ handleGlobalMousedownEvent (evnt) {
1864
+ const { $refs, $el, disabled, visiblePanel, isActivated } = this
1865
+ if (!disabled && isActivated) {
1866
+ this.isActivated = DomTools.getEventTargetNode(evnt, $el).flag || DomTools.getEventTargetNode(evnt, $refs.panel).flag
1867
+ if (!this.isActivated) {
1868
+ // 如果是日期类型
1869
+ if (this.isDatePickerType) {
1870
+ if (visiblePanel) {
1871
+ this.hidePanel()
1872
+ this.afterCheckValue()
1873
+ }
1874
+ } else {
1875
+ this.afterCheckValue()
1876
+ }
1877
+ }
1878
+ }
1879
+ },
1880
+ handleGlobalKeydownEvent (evnt) {
1881
+ const { isDatePickerType, visiblePanel, clearable, disabled } = this
1882
+ if (!disabled) {
1883
+ const keyCode = evnt.keyCode
1884
+ const isTab = keyCode === 9
1885
+ const isDel = keyCode === 46
1886
+ const isEsc = keyCode === 27
1887
+ const isEnter = keyCode === 13
1888
+ const isLeftArrow = keyCode === 37
1889
+ const isUpArrow = keyCode === 38
1890
+ const isRightArrow = keyCode === 39
1891
+ const isDwArrow = keyCode === 40
1892
+ const isPgUp = keyCode === 33
1893
+ const isPgDn = keyCode === 34
1894
+ const operArrow = isLeftArrow || isUpArrow || isRightArrow || isDwArrow
1895
+ let isActivated = this.isActivated
1896
+ if (isTab) {
1897
+ if (isActivated) {
1898
+ this.afterCheckValue()
1899
+ }
1900
+ isActivated = false
1901
+ this.isActivated = isActivated
1902
+ } else if (operArrow) {
1903
+ if (isDatePickerType) {
1904
+ if (isActivated) {
1905
+ if (visiblePanel) {
1906
+ this.dateOffsetEvent(evnt)
1907
+ } else if (isUpArrow || isDwArrow) {
1908
+ this.datePickerOpenEvent(evnt)
1909
+ }
1910
+ }
1911
+ }
1912
+ } else if (isEnter) {
1913
+ if (isDatePickerType) {
1914
+ if (visiblePanel) {
1915
+ if (this.datePanelValue) {
1916
+ this.dateSelectItem(this.datePanelValue)
1917
+ } else {
1918
+ this.hidePanel()
1919
+ }
1920
+ } else if (isActivated) {
1921
+ this.datePickerOpenEvent(evnt)
1922
+ }
1923
+ }
1924
+ } else if (isPgUp || isPgDn) {
1925
+ if (isDatePickerType) {
1926
+ if (isActivated) {
1927
+ this.datePgOffsetEvent(evnt)
1928
+ }
1929
+ }
1930
+ }
1931
+ if (isTab || isEsc) {
1932
+ if (visiblePanel) {
1933
+ this.hidePanel()
1934
+ }
1935
+ } else if (isDel && clearable) {
1936
+ if (isActivated) {
1937
+ this.clearValueEvent(evnt, null)
1938
+ }
1939
+ }
1940
+ }
1941
+ },
1942
+ handleGlobalMousewheelEvent (evnt) {
1943
+ const { $refs, disabled, visiblePanel } = this
1944
+ if (!disabled) {
1945
+ if (visiblePanel) {
1946
+ if (DomTools.getEventTargetNode(evnt, $refs.panel).flag) {
1947
+ this.updatePlacement()
1948
+ } else {
1949
+ this.hidePanel()
1950
+ this.afterCheckValue()
1951
+ }
1952
+ }
1953
+ }
1954
+ },
1955
+ handleGlobalBlurEvent () {
1956
+ const { isActivated, visiblePanel } = this
1957
+ if (visiblePanel) {
1958
+ this.hidePanel()
1959
+ this.afterCheckValue()
1960
+ } else if (isActivated) {
1961
+ this.afterCheckValue()
1962
+ }
1963
+ }
1964
+ // 全局事件
1965
+ }
1966
+ }