vxe-pc-ui 4.5.35 → 4.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/es/calendar/src/calendar.js +1 -1
  2. package/es/components.js +6 -0
  3. package/es/date-panel/index.js +12 -0
  4. package/es/date-panel/src/date-panel.js +1587 -0
  5. package/es/date-panel/src/util.js +191 -0
  6. package/es/date-panel/style.css +443 -0
  7. package/es/date-panel/style.min.css +1 -0
  8. package/es/date-picker/index.js +0 -1
  9. package/es/date-picker/src/date-picker.js +274 -1663
  10. package/es/date-picker/style.css +68 -810
  11. package/es/date-picker/style.min.css +1 -1
  12. package/es/date-range-picker/index.js +12 -0
  13. package/es/date-range-picker/src/date-range-picker.js +1121 -0
  14. package/es/date-range-picker/style.css +284 -0
  15. package/es/date-range-picker/style.min.css +1 -0
  16. package/es/form/render/index.js +21 -15
  17. package/es/icon/style.css +1 -1
  18. package/es/input/src/input.js +1 -1
  19. package/es/language/ar-EG.js +1 -1
  20. package/es/language/de-DE.js +1 -1
  21. package/es/language/en-US.js +1 -1
  22. package/es/language/es-ES.js +1 -1
  23. package/es/language/fr-FR.d.ts +2 -0
  24. package/es/language/fr-FR.js +1 -1
  25. package/es/language/hu-HU.js +1 -1
  26. package/es/language/hy-AM.d.ts +2 -0
  27. package/es/language/hy-AM.js +1 -1
  28. package/es/language/id-ID.d.ts +2 -0
  29. package/es/language/id-ID.js +1 -1
  30. package/es/language/it-IT.d.ts +2 -0
  31. package/es/language/it-IT.js +1 -1
  32. package/es/language/ja-JP.js +1 -1
  33. package/es/language/ko-KR.js +1 -1
  34. package/es/language/ms-MY.d.ts +2 -0
  35. package/es/language/ms-MY.js +708 -0
  36. package/es/language/nb-NO.d.ts +2 -0
  37. package/es/language/nb-NO.js +1 -1
  38. package/es/language/pt-BR.js +1 -1
  39. package/es/language/ru-RU.js +1 -1
  40. package/es/language/th-TH.d.ts +2 -0
  41. package/es/language/th-TH.js +1 -1
  42. package/es/language/ug-CN.d.ts +2 -0
  43. package/es/language/ug-CN.js +1 -1
  44. package/es/language/uk-UA.js +1 -1
  45. package/es/language/uz-UZ.d.ts +2 -0
  46. package/es/language/uz-UZ.js +708 -0
  47. package/es/language/vi-VN.d.ts +2 -0
  48. package/es/language/vi-VN.js +1 -1
  49. package/es/language/zh-CHT.d.ts +2 -0
  50. package/es/language/zh-CHT.js +1 -1
  51. package/es/language/zh-CN.js +1 -1
  52. package/es/print/src/print.js +4 -0
  53. package/es/print/src/util.js +46 -3
  54. package/es/pulldown/style.css +15 -0
  55. package/es/pulldown/style.min.css +1 -1
  56. package/es/select/style.css +15 -0
  57. package/es/select/style.min.css +1 -1
  58. package/es/style.css +1 -1
  59. package/es/style.min.css +1 -1
  60. package/es/table-select/style.css +15 -0
  61. package/es/table-select/style.min.css +1 -1
  62. package/es/tree-select/style.css +15 -0
  63. package/es/tree-select/style.min.css +1 -1
  64. package/es/ui/index.js +31 -6
  65. package/es/ui/src/log.js +1 -1
  66. package/es/vxe-date-panel/index.js +3 -0
  67. package/es/vxe-date-panel/style.css +443 -0
  68. package/es/vxe-date-panel/style.min.css +1 -0
  69. package/es/vxe-date-picker/style.css +68 -810
  70. package/es/vxe-date-picker/style.min.css +1 -1
  71. package/es/vxe-date-range-picker/index.js +3 -0
  72. package/es/vxe-date-range-picker/style.css +284 -0
  73. package/es/vxe-date-range-picker/style.min.css +1 -0
  74. package/es/vxe-pulldown/style.css +15 -0
  75. package/es/vxe-pulldown/style.min.css +1 -1
  76. package/es/vxe-select/style.css +15 -0
  77. package/es/vxe-select/style.min.css +1 -1
  78. package/es/vxe-table-select/style.css +15 -0
  79. package/es/vxe-table-select/style.min.css +1 -1
  80. package/es/vxe-tree-select/style.css +15 -0
  81. package/es/vxe-tree-select/style.min.css +1 -1
  82. package/lib/calendar/src/calendar.js +1 -1
  83. package/lib/calendar/src/calendar.min.js +1 -1
  84. package/lib/components.js +25 -1
  85. package/lib/components.min.js +1 -1
  86. package/lib/date-panel/index.js +19 -0
  87. package/lib/date-panel/index.min.js +1 -0
  88. package/lib/date-panel/src/date-panel.js +1667 -0
  89. package/lib/date-panel/src/date-panel.min.js +1 -0
  90. package/lib/date-panel/src/util.js +219 -0
  91. package/lib/date-panel/src/util.min.js +1 -0
  92. package/lib/date-panel/style/index.js +1 -0
  93. package/lib/date-panel/style/style.css +443 -0
  94. package/lib/date-panel/style/style.min.css +1 -0
  95. package/lib/date-picker/index.js +0 -1
  96. package/lib/date-picker/index.min.js +1 -1
  97. package/lib/date-picker/src/date-picker.js +288 -1717
  98. package/lib/date-picker/src/date-picker.min.js +1 -1
  99. package/lib/date-picker/style/style.css +68 -810
  100. package/lib/date-picker/style/style.min.css +1 -1
  101. package/lib/date-range-picker/index.js +19 -0
  102. package/lib/date-range-picker/index.min.js +1 -0
  103. package/lib/date-range-picker/src/date-range-picker.js +1194 -0
  104. package/lib/date-range-picker/src/date-range-picker.min.js +1 -0
  105. package/lib/date-range-picker/style/index.js +1 -0
  106. package/lib/date-range-picker/style/style.css +284 -0
  107. package/lib/date-range-picker/style/style.min.css +1 -0
  108. package/lib/form/render/index.js +21 -15
  109. package/lib/form/render/index.min.js +1 -1
  110. package/lib/icon/style/style.css +1 -1
  111. package/lib/icon/style/style.min.css +1 -1
  112. package/lib/index.umd.js +2971 -1254
  113. package/lib/index.umd.min.js +1 -1
  114. package/lib/input/src/input.js +1 -1
  115. package/lib/input/src/input.min.js +1 -1
  116. package/lib/language/ar-EG.d.ts +2 -0
  117. package/lib/language/ar-EG.js +1 -1
  118. package/lib/language/ar-EG.min.js +1 -1
  119. package/lib/language/ar-EG.umd.js +728 -0
  120. package/lib/language/de-DE.d.ts +2 -0
  121. package/lib/language/de-DE.js +1 -1
  122. package/lib/language/de-DE.min.js +1 -1
  123. package/lib/language/de-DE.umd.js +728 -0
  124. package/lib/language/en-US.js +1 -1
  125. package/lib/language/en-US.min.js +1 -1
  126. package/lib/language/en-US.umd.js +1 -1
  127. package/lib/language/es-ES.js +1 -1
  128. package/lib/language/es-ES.min.js +1 -1
  129. package/lib/language/es-ES.umd.js +1 -1
  130. package/lib/language/fr-FR.d.ts +2 -0
  131. package/lib/language/fr-FR.js +1 -1
  132. package/lib/language/fr-FR.min.js +1 -1
  133. package/lib/language/fr-FR.umd.js +728 -0
  134. package/lib/language/hu-HU.js +1 -1
  135. package/lib/language/hu-HU.min.js +1 -1
  136. package/lib/language/hu-HU.umd.js +1 -1
  137. package/lib/language/hy-AM.d.ts +2 -0
  138. package/lib/language/hy-AM.js +1 -1
  139. package/lib/language/hy-AM.min.js +1 -1
  140. package/lib/language/hy-AM.umd.js +728 -0
  141. package/lib/language/id-ID.d.ts +2 -0
  142. package/lib/language/id-ID.js +1 -1
  143. package/lib/language/id-ID.min.js +1 -1
  144. package/lib/language/id-ID.umd.js +728 -0
  145. package/lib/language/it-IT.d.ts +2 -0
  146. package/lib/language/it-IT.js +1 -1
  147. package/lib/language/it-IT.min.js +1 -1
  148. package/lib/language/it-IT.umd.js +728 -0
  149. package/lib/language/ja-JP.js +1 -1
  150. package/lib/language/ja-JP.min.js +1 -1
  151. package/lib/language/ja-JP.umd.js +1 -1
  152. package/lib/language/ko-KR.js +1 -1
  153. package/lib/language/ko-KR.min.js +1 -1
  154. package/lib/language/ko-KR.umd.js +1 -1
  155. package/lib/language/ms-MY.d.ts +2 -0
  156. package/lib/language/ms-MY.js +714 -0
  157. package/lib/language/ms-MY.min.js +1 -0
  158. package/lib/language/ms-MY.umd.js +728 -0
  159. package/lib/language/nb-NO.d.ts +2 -0
  160. package/lib/language/nb-NO.js +1 -1
  161. package/lib/language/nb-NO.min.js +1 -1
  162. package/lib/language/nb-NO.umd.js +728 -0
  163. package/lib/language/pt-BR.js +1 -1
  164. package/lib/language/pt-BR.min.js +1 -1
  165. package/lib/language/pt-BR.umd.js +1 -1
  166. package/lib/language/ru-RU.js +1 -1
  167. package/lib/language/ru-RU.min.js +1 -1
  168. package/lib/language/ru-RU.umd.js +1 -1
  169. package/lib/language/th-TH.d.ts +2 -0
  170. package/lib/language/th-TH.js +1 -1
  171. package/lib/language/th-TH.min.js +1 -1
  172. package/lib/language/th-TH.umd.js +728 -0
  173. package/lib/language/ug-CN.d.ts +2 -0
  174. package/lib/language/ug-CN.js +1 -1
  175. package/lib/language/ug-CN.min.js +1 -1
  176. package/lib/language/ug-CN.umd.js +728 -0
  177. package/lib/language/uk-UA.js +1 -1
  178. package/lib/language/uk-UA.min.js +1 -1
  179. package/lib/language/uk-UA.umd.js +1 -1
  180. package/lib/language/uz-UZ.d.ts +2 -0
  181. package/lib/language/uz-UZ.js +714 -0
  182. package/lib/language/uz-UZ.min.js +1 -0
  183. package/lib/language/uz-UZ.umd.js +728 -0
  184. package/lib/language/vi-VN.d.ts +2 -0
  185. package/lib/language/vi-VN.js +1 -1
  186. package/lib/language/vi-VN.min.js +1 -1
  187. package/lib/language/vi-VN.umd.js +728 -0
  188. package/lib/language/zh-CHT.d.ts +2 -0
  189. package/lib/language/zh-CHT.js +1 -1
  190. package/lib/language/zh-CHT.min.js +1 -1
  191. package/lib/language/zh-CHT.umd.js +728 -0
  192. package/lib/language/zh-CN.js +1 -1
  193. package/lib/language/zh-CN.min.js +1 -1
  194. package/lib/language/zh-CN.umd.js +1 -1
  195. package/lib/language/zh-TC.min.js +1 -1
  196. package/lib/print/src/print.js +4 -0
  197. package/lib/print/src/print.min.js +1 -1
  198. package/lib/print/src/util.js +45 -2
  199. package/lib/print/src/util.min.js +1 -1
  200. package/lib/pulldown/style/style.css +15 -0
  201. package/lib/pulldown/style/style.min.css +1 -1
  202. package/lib/select/style/style.css +15 -0
  203. package/lib/select/style/style.min.css +1 -1
  204. package/lib/style.css +1 -1
  205. package/lib/style.min.css +1 -1
  206. package/lib/table-select/style/style.css +15 -0
  207. package/lib/table-select/style/style.min.css +1 -1
  208. package/lib/tree-select/style/style.css +15 -0
  209. package/lib/tree-select/style/style.min.css +1 -1
  210. package/lib/ui/index.js +31 -6
  211. package/lib/ui/index.min.js +1 -1
  212. package/lib/ui/src/log.js +1 -1
  213. package/lib/ui/src/log.min.js +1 -1
  214. package/lib/vxe-date-panel/index.js +22 -0
  215. package/lib/vxe-date-panel/index.min.js +1 -0
  216. package/lib/vxe-date-panel/style/index.js +1 -0
  217. package/lib/vxe-date-panel/style/style.css +443 -0
  218. package/lib/vxe-date-panel/style/style.min.css +1 -0
  219. package/lib/vxe-date-picker/style/style.css +68 -810
  220. package/lib/vxe-date-picker/style/style.min.css +1 -1
  221. package/lib/vxe-date-range-picker/index.js +22 -0
  222. package/lib/vxe-date-range-picker/index.min.js +1 -0
  223. package/lib/vxe-date-range-picker/style/index.js +1 -0
  224. package/lib/vxe-date-range-picker/style/style.css +284 -0
  225. package/lib/vxe-date-range-picker/style/style.min.css +1 -0
  226. package/lib/vxe-pulldown/style/style.css +15 -0
  227. package/lib/vxe-pulldown/style/style.min.css +1 -1
  228. package/lib/vxe-select/style/style.css +15 -0
  229. package/lib/vxe-select/style/style.min.css +1 -1
  230. package/lib/vxe-table-select/style/style.css +15 -0
  231. package/lib/vxe-table-select/style/style.min.css +1 -1
  232. package/lib/vxe-tree-select/style/style.css +15 -0
  233. package/lib/vxe-tree-select/style/style.min.css +1 -1
  234. package/package.json +4 -5
  235. package/packages/calendar/src/calendar.ts +10 -10
  236. package/packages/components.ts +6 -0
  237. package/packages/date-panel/index.ts +16 -0
  238. package/packages/date-panel/src/date-panel.ts +1654 -0
  239. package/packages/date-panel/src/util.ts +212 -0
  240. package/packages/date-picker/index.ts +0 -1
  241. package/packages/date-picker/src/date-picker.ts +298 -1697
  242. package/packages/date-range-picker/index.ts +16 -0
  243. package/packages/date-range-picker/src/date-range-picker.ts +1196 -0
  244. package/packages/form/render/index.ts +21 -15
  245. package/packages/input/src/input.ts +15 -15
  246. package/packages/language/ar-EG.ts +1 -1
  247. package/packages/language/de-DE.ts +1 -1
  248. package/packages/language/en-US.ts +1 -1
  249. package/packages/language/es-ES.ts +1 -1
  250. package/packages/language/fr-FR.ts +1 -1
  251. package/packages/language/hu-HU.ts +1 -1
  252. package/packages/language/hy-AM.ts +1 -1
  253. package/packages/language/id-ID.ts +1 -1
  254. package/packages/language/it-IT.ts +1 -1
  255. package/packages/language/ja-JP.ts +1 -1
  256. package/packages/language/ko-KR.ts +1 -1
  257. package/packages/language/ms-MY.ts +708 -0
  258. package/packages/language/nb-NO.ts +1 -1
  259. package/packages/language/pt-BR.ts +1 -1
  260. package/packages/language/ru-RU.ts +1 -1
  261. package/packages/language/th-TH.ts +1 -1
  262. package/packages/language/ug-CN.ts +1 -1
  263. package/packages/language/uk-UA.ts +1 -1
  264. package/packages/language/uz-UZ.ts +708 -0
  265. package/packages/language/vi-VN.ts +1 -1
  266. package/packages/language/zh-CHT.ts +1 -1
  267. package/packages/language/zh-CN.ts +1 -1
  268. package/packages/print/src/print.ts +4 -0
  269. package/packages/print/src/util.ts +47 -4
  270. package/packages/ui/index.ts +30 -5
  271. package/styles/all.scss +2 -0
  272. package/styles/components/date-panel.scss +491 -0
  273. package/styles/components/date-picker.scss +62 -652
  274. package/styles/components/date-range-picker.scss +284 -0
  275. package/styles/components/pulldown.scss +10 -0
  276. package/styles/components/select.scss +8 -0
  277. package/styles/components/table-select.scss +8 -0
  278. package/styles/components/tree-select.scss +8 -0
  279. package/styles/helpers/baseMixin.scss +13 -0
  280. package/types/all.d.ts +6 -0
  281. package/types/components/button-group.d.ts +1 -1
  282. package/types/components/date-panel.d.ts +240 -0
  283. package/types/components/date-picker.d.ts +35 -142
  284. package/types/components/date-range-picker.d.ts +267 -0
  285. package/types/components/print.d.ts +8 -0
  286. package/types/components/table-module/filter.d.ts +8 -0
  287. package/types/ui/commands.d.ts +28 -2
  288. package/types/ui/global-config.d.ts +4 -0
  289. package/es/date-picker/src/util.js +0 -41
  290. package/lib/date-picker/src/util.js +0 -46
  291. package/lib/date-picker/src/util.min.js +0 -1
  292. package/lib/language/zh-TC.umd.js +0 -23
  293. package/packages/date-picker/src/util.ts +0 -42
  294. /package/es/icon/{iconfont.1746002850171.ttf → iconfont.1746782659171.ttf} +0 -0
  295. /package/es/icon/{iconfont.1746002850171.woff → iconfont.1746782659171.woff} +0 -0
  296. /package/es/icon/{iconfont.1746002850171.woff2 → iconfont.1746782659171.woff2} +0 -0
  297. /package/es/{iconfont.1746002850171.ttf → iconfont.1746782659171.ttf} +0 -0
  298. /package/es/{iconfont.1746002850171.woff → iconfont.1746782659171.woff} +0 -0
  299. /package/es/{iconfont.1746002850171.woff2 → iconfont.1746782659171.woff2} +0 -0
  300. /package/es/language/{zh-TC.d.ts → ar-EG.d.ts} +0 -0
  301. /package/{lib/language/zh-TC.d.ts → es/language/de-DE.d.ts} +0 -0
  302. /package/lib/icon/style/{iconfont.1746002850171.ttf → iconfont.1746782659171.ttf} +0 -0
  303. /package/lib/icon/style/{iconfont.1746002850171.woff → iconfont.1746782659171.woff} +0 -0
  304. /package/lib/icon/style/{iconfont.1746002850171.woff2 → iconfont.1746782659171.woff2} +0 -0
  305. /package/lib/{iconfont.1746002850171.ttf → iconfont.1746782659171.ttf} +0 -0
  306. /package/lib/{iconfont.1746002850171.woff → iconfont.1746782659171.woff} +0 -0
  307. /package/lib/{iconfont.1746002850171.woff2 → iconfont.1746782659171.woff2} +0 -0
@@ -0,0 +1,284 @@
1
+ @use "sass:list";
2
+ @use '../helpers/baseMixin.scss';
3
+
4
+ .vxe-date-range-picker--readonly {
5
+ color: var(--vxe-ui-font-color);
6
+ display: inline-flex;
7
+ }
8
+ .vxe-date-range-picker--wrapper {
9
+ flex-grow: 1;
10
+ overflow: hidden;
11
+ }
12
+ .vxe-date-range-picker--inner {
13
+ display: block;
14
+ width: 100%;
15
+ height: 100%;
16
+ outline: 0;
17
+ margin: 0;
18
+ font-size: inherit;
19
+ font-family: inherit;
20
+ line-height: inherit;
21
+ padding: 0 0.5em;
22
+ color: var(--vxe-ui-font-color);
23
+ border: 0;
24
+ border-radius: var(--vxe-ui-base-border-radius);
25
+ background-color: var(--vxe-ui-layout-background-color);
26
+ box-shadow: none;
27
+ &::placeholder {
28
+ color: var(--vxe-ui-input-placeholder-color);
29
+ }
30
+ &::-webkit-autofill {
31
+ background-color: var(--vxe-ui-layout-background-color);
32
+ }
33
+ &[disabled] {
34
+ cursor: not-allowed;
35
+ color: var(--vxe-ui-font-disabled-color);
36
+ background-color: var(--vxe-ui-input-disabled-background-color);
37
+ }
38
+ }
39
+
40
+ // 禁用
41
+ .vxe-date-range-picker {
42
+ &.is--disabled {
43
+ background-color: var(--vxe-ui-input-disabled-background-color);
44
+ .vxe-date-range-picker--prefix,
45
+ .vxe-date-range-picker--suffix,
46
+ .vxe-date-range-picker--clear-icon,
47
+ .vxe-date-range-picker--control-icon {
48
+ cursor: not-allowed;
49
+ }
50
+ .vxe-date-range-picker--prefix,
51
+ .vxe-date-range-picker--suffix {
52
+ background-color: var(--vxe-ui-input-disabled-background-color);
53
+ }
54
+ }
55
+ }
56
+
57
+ // 图标
58
+ .vxe-date-range-picker {
59
+ display: inline-flex;
60
+ flex-direction: row;
61
+ position: relative;
62
+ border-radius: var(--vxe-ui-base-border-radius);
63
+ width: 330px;
64
+ border: 1px solid var(--vxe-ui-input-border-color);
65
+ &.is--active {
66
+ border: 1px solid var(--vxe-ui-font-primary-color);
67
+ }
68
+ &.show--clear {
69
+ &:hover {
70
+ .vxe-date-range-picker--clear-icon {
71
+ display: block;
72
+ }
73
+ }
74
+ }
75
+ }
76
+ .vxe-date-range-picker--prefix,
77
+ .vxe-date-range-picker--suffix {
78
+ display: flex;
79
+ flex-direction: row;
80
+ align-items: center;
81
+ flex-shrink: 0;
82
+ background-color: var(--vxe-ui-layout-background-color);
83
+ }
84
+ .vxe-date-range-picker--prefix-icon {
85
+ padding-left: 0.5em;
86
+ }
87
+ .vxe-date-range-picker--clear-icon,
88
+ .vxe-date-range-picker--control-icon,
89
+ .vxe-date-range-picker--suffix-icon {
90
+ padding-right: 0.5em;
91
+ }
92
+ .vxe-date-range-picker--clear-icon,
93
+ .vxe-date-range-picker--control-icon {
94
+ height: 100%;
95
+ color: var(--vxe-ui-input-placeholder-color);
96
+ cursor: pointer;
97
+ }
98
+ .vxe-date-range-picker--clear-icon {
99
+ display: none;
100
+ &:hover {
101
+ color: var(--vxe-ui-font-color);
102
+ }
103
+ &:active {
104
+ color: var(--vxe-ui-font-primary-color);
105
+ }
106
+ }
107
+
108
+ .vxe-date-range-picker--panel {
109
+ display: none;
110
+ position: absolute;
111
+ left: 0;
112
+ padding: 4px 0;
113
+ color: var(--vxe-ui-font-color);
114
+ font-size: var(--vxe-ui-font-size-default);
115
+ text-align: left;
116
+ &.is--transfer {
117
+ position: fixed;
118
+ }
119
+ &.ani--leave {
120
+ display: block;
121
+ opacity: 0;
122
+ transform: scaleY(0.5);
123
+ transition: transform .3s cubic-bezier(.23,1,.32,1), opacity .3s cubic-bezier(.23,1,.32,1);
124
+ transform-origin: center top;
125
+ backface-visibility: hidden;
126
+ transform-style: preserve-3d;
127
+ &[placement="top"] {
128
+ transform-origin: center bottom;
129
+ }
130
+ }
131
+ &.ani--enter {
132
+ opacity: 1;
133
+ transform: scaleY(1);
134
+ & > div {
135
+ &::after {
136
+ display: none;
137
+ }
138
+ }
139
+ }
140
+ & > div {
141
+ @include baseMixin.createEmptyMask();
142
+ }
143
+ }
144
+
145
+ .vxe-date-range-picker--panel {
146
+ pointer-events: none;
147
+ &.show--top,
148
+ &.show--right {
149
+ .vxe-date-range-picker--layout-wrapper,
150
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
151
+ border-top-right-radius: 0;
152
+ }
153
+ }
154
+ &.show--right,
155
+ &.show--bottom {
156
+ .vxe-date-range-picker--layout-wrapper,
157
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
158
+ border-bottom-right-radius: 0;
159
+ }
160
+ }
161
+ &.show--bottom,
162
+ &.show--left {
163
+ .vxe-date-range-picker--layout-wrapper,
164
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
165
+ border-bottom-left-radius: 0;
166
+ }
167
+ }
168
+ &.show--top,
169
+ &.show--left {
170
+ .vxe-date-range-picker--layout-wrapper,
171
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
172
+ border-top-left-radius: 0;
173
+ }
174
+ }
175
+ &.show--top {
176
+ .vxe-date-range-picker--layout-wrapper,
177
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
178
+ border-top-width: 1px;
179
+ }
180
+ }
181
+ &.show--bottom {
182
+ .vxe-date-range-picker--layout-wrapper,
183
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
184
+ border-bottom-width: 1px;
185
+ }
186
+ }
187
+ &.show--left {
188
+ .vxe-date-range-picker--layout-wrapper,
189
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
190
+ border-left-width: 1px;
191
+ }
192
+ }
193
+ &.show--right {
194
+ .vxe-date-range-picker--layout-wrapper,
195
+ .vxe-date-range-picker--layout-datetime-layout-wrapper {
196
+ border-right-width: 1px;
197
+ }
198
+ }
199
+ }
200
+
201
+ .vxe-date-range-picker--layout-all-wrapper {
202
+ display: inline-flex;
203
+ flex-direction: column;
204
+ pointer-events: auto;
205
+ background-color: var(--vxe-ui-layout-background-color);
206
+ border: 1px solid var(--vxe-ui-base-popup-border-color);
207
+ box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
208
+ border-radius: var(--vxe-ui-base-border-radius);
209
+ line-height: 1.5;
210
+ }
211
+ .vxe-date-range-picker--layout-body-layout-wrapper {
212
+ display: flex;
213
+ flex-direction: row;
214
+ white-space: nowrap;
215
+ }
216
+ .vxe-date-range-picker--layout-body-content-wrapper,
217
+ .vxe-date-range-picker--layout-body-layout-wrapper,
218
+ .vxe-date-range-picker--layout-body-wrapper {
219
+ flex-grow: 1;
220
+ }
221
+ .vxe-date-range-picker--layout-body-wrapper {
222
+ display: flex;
223
+ flex-direction: row;
224
+ }
225
+ .vxe-date-range-picker--layout-top-wrapper,
226
+ .vxe-date-range-picker--layout-bottom-wrapper,
227
+ .vxe-date-range-picker--layout-left-wrapper,
228
+ .vxe-date-range-picker--layout-right-wrapper,
229
+ .vxe-date-range-picker--layout-header-wrapper,
230
+ .vxe-date-range-picker--layout-footer-wrapper {
231
+ flex-shrink: 0;
232
+ }
233
+
234
+ .vxe-date-range-picker--layout-top-wrapper {
235
+ border-bottom: 1px solid var(--vxe-ui-base-popup-border-color);
236
+ }
237
+ .vxe-date-range-picker--layout-bottom-wrapper {
238
+ border-top: 1px solid var(--vxe-ui-base-popup-border-color);
239
+ }
240
+ .vxe-date-range-picker--layout-left-wrapper {
241
+ border-right: 1px solid var(--vxe-ui-base-popup-border-color);
242
+ }
243
+ .vxe-date-range-picker--layout-right-wrapper {
244
+ border-left: 1px solid var(--vxe-ui-base-popup-border-color);
245
+ }
246
+
247
+ .vxe-date-range-picker--layout-footer-wrapper {
248
+ display: flex;
249
+ flex-direction: row;
250
+ padding: 0 0.8em 0.8em 0.8em;
251
+ }
252
+ .vxe-date-range-picker--layout-footer-label {
253
+ padding-right: 0.8em;
254
+ flex-shrink: 0;
255
+ }
256
+ .vxe-date-range-picker--layout-footer-custom {
257
+ flex-grow: 1;
258
+ text-align: right;
259
+ }
260
+ .vxe-date-range-picker--layout-footer-btns {
261
+ flex-shrink: 0;
262
+ padding-left: 0.8em;
263
+ }
264
+
265
+ .vxe-date-range-picker {
266
+ font-size: var(--vxe-ui-font-size-default);
267
+ height: var(--vxe-ui-input-height-default);
268
+ line-height: var(--vxe-ui-input-height-default);
269
+ &.size--medium {
270
+ font-size: var(--vxe-ui-font-size-medium);
271
+ height: var(--vxe-ui-input-height-medium);
272
+ line-height: var(--vxe-ui-input-height-medium);
273
+ }
274
+ &.size--small {
275
+ font-size: var(--vxe-ui-font-size-small);
276
+ height: var(--vxe-ui-input-height-small);
277
+ line-height: var(--vxe-ui-input-height-small);
278
+ }
279
+ &.size--mini {
280
+ font-size: var(--vxe-ui-font-size-mini);
281
+ height: var(--vxe-ui-input-height-mini);
282
+ line-height: var(--vxe-ui-input-height-mini);
283
+ }
284
+ }
@@ -1,3 +1,5 @@
1
+ @use '../helpers/baseMixin.scss';
2
+
1
3
  .vxe-pulldown {
2
4
  position: relative;
3
5
  display: inline-block;
@@ -39,6 +41,14 @@
39
41
  &.ani--enter {
40
42
  opacity: 1;
41
43
  transform: scaleY(1);
44
+ & > div {
45
+ &::after {
46
+ display: none;
47
+ }
48
+ }
49
+ }
50
+ & > div {
51
+ @include baseMixin.createEmptyMask();
42
52
  }
43
53
  }
44
54
  .vxe-pulldown--panel-wrapper {
@@ -76,6 +76,14 @@
76
76
  &.ani--enter {
77
77
  opacity: 1;
78
78
  transform: scaleY(1);
79
+ & > div {
80
+ &::after {
81
+ display: none;
82
+ }
83
+ }
84
+ }
85
+ & > div {
86
+ @include baseMixin.createEmptyMask();
79
87
  }
80
88
  }
81
89
 
@@ -73,6 +73,14 @@
73
73
  &.ani--enter {
74
74
  opacity: 1;
75
75
  transform: scaleY(1);
76
+ & > div {
77
+ &::after {
78
+ display: none;
79
+ }
80
+ }
81
+ }
82
+ & > div {
83
+ @include baseMixin.createEmptyMask();
76
84
  }
77
85
  }
78
86
 
@@ -73,6 +73,14 @@
73
73
  &.ani--enter {
74
74
  opacity: 1;
75
75
  transform: scaleY(1);
76
+ & > div {
77
+ &::after {
78
+ display: none;
79
+ }
80
+ }
81
+ }
82
+ & > div {
83
+ @include baseMixin.createEmptyMask();
76
84
  }
77
85
  }
78
86
 
@@ -80,3 +80,16 @@
80
80
  vertical-align: middle;
81
81
  }
82
82
  }
83
+
84
+ @mixin createEmptyMask {
85
+ &::after {
86
+ content: "";
87
+ position: absolute;
88
+ top: 0;
89
+ left: 0;
90
+ width: 100%;
91
+ height: 100%;
92
+ z-index: 1;
93
+ user-select: none;
94
+ }
95
+ }
package/types/all.d.ts CHANGED
@@ -21,7 +21,9 @@ import VxeCollapse from './components/collapse'
21
21
  import VxeCollapsePane from './components/collapse-pane'
22
22
  import VxeColorPicker from './components/color-picker'
23
23
  import VxeCountdown from './components/countdown'
24
+ import VxeDatePanel from './components/date-panel'
24
25
  import VxeDatePicker from './components/date-picker'
26
+ import VxeDateRangePicker from './components/date-range-picker'
25
27
  import VxeDrawer from './components/drawer'
26
28
  import VxeEmpty from './components/empty'
27
29
  import VxeFlowDesign from './components/flow-design'
@@ -115,7 +117,9 @@ interface AllComponents {
115
117
  VxeCollapsePane: typeof VxeCollapsePane
116
118
  VxeColorPicker: typeof VxeColorPicker
117
119
  VxeCountdown: typeof VxeCountdown
120
+ VxeDatePanel: typeof VxeDatePanel
118
121
  VxeDatePicker: typeof VxeDatePicker
122
+ VxeDateRangePicker: typeof VxeDateRangePicker
119
123
  VxeDrawer: typeof VxeDrawer
120
124
  VxeEmpty: typeof VxeEmpty
121
125
  VxeFlowDesign: typeof VxeFlowDesign
@@ -218,7 +222,9 @@ export * from './components/collapse'
218
222
  export * from './components/collapse-pane'
219
223
  export * from './components/color-picker'
220
224
  export * from './components/countdown'
225
+ export * from './components/date-panel'
221
226
  export * from './components/date-picker'
227
+ export * from './components/date-range-picker'
222
228
  export * from './components/drawer'
223
229
  export * from './components/empty'
224
230
  export * from './components/flow-design'
@@ -84,7 +84,7 @@ export namespace VxeButtonGroupDefines {
84
84
 
85
85
  export interface ClickEventParams extends ButtonGroupEventParams {
86
86
  name: VxeButtonPropTypes.Name
87
- option: VxeButtonProps
87
+ option: VxeButtonProps & Record<string, any>
88
88
  }
89
89
  }
90
90
 
@@ -0,0 +1,240 @@
1
+ import { RenderFunction, SetupContext, Ref } from 'vue'
2
+ import { DefineVxeComponentApp, DefineVxeComponentOptions, DefineVxeComponentInstance, VxeComponentBaseOptions, VxeComponentEventParams, ValueOf, VxeComponentStyleType, VxeComponentSizeType } from '@vxe-ui/core'
3
+
4
+ /* eslint-disable no-use-before-define,@typescript-eslint/ban-types */
5
+
6
+ export declare const VxeDatePanel: DefineVxeComponentApp<VxeDatePanelProps, VxeDatePanelEventProps, VxeDatePanelSlots, VxeDatePanelMethods>
7
+ export type VxeDatePanelComponent = DefineVxeComponentOptions<VxeDatePanelProps, VxeDatePanelEventProps>
8
+
9
+ export type VxeDatePanelInstance = DefineVxeComponentInstance<VxeDatePanelProps, VxeDatePanelConstructor>
10
+
11
+ export interface VxeDatePanelConstructor extends VxeComponentBaseOptions, VxeDatePanelMethods {
12
+ props: VxeDatePanelProps
13
+ context: SetupContext<VxeDatePanelEmits>
14
+ reactData: DatePanelReactData
15
+ getRefMaps(): DatePanelPrivateRef
16
+ getComputeMaps(): DatePanelPrivateComputed
17
+ renderVN: RenderFunction
18
+ }
19
+
20
+ export interface DatePanelPrivateRef {
21
+ refElem: Ref<HTMLDivElement | undefined>
22
+ refInput: Ref<HTMLInputElement>
23
+ }
24
+ export interface VxeDatePanelPrivateRef extends DatePanelPrivateRef { }
25
+
26
+ export namespace VxeDatePanelPropTypes {
27
+ export type Size = VxeComponentSizeType
28
+ export type ModelValue = string | number | Date | null
29
+ export type ClassName = string
30
+ export type Type = 'date' | 'time' | 'datetime' | 'week' | 'month' | 'quarter' | 'year'
31
+ export type Multiple = boolean
32
+ export type LimitCount = string | number
33
+ export type StartDate = string | number | Date
34
+ export type EndDate = string | number | Date
35
+ export type MinDate = string | number | Date
36
+ export type MaxDate = string | number | Date
37
+ export type StartDay = 0 | 1 | 2 | 3 | 4 | 5 | 6
38
+ export type SelectDay = 0 | 1 | 2 | 3 | 4 | 5 | 6
39
+ export type LabelFormat = string
40
+ export type ValueFormat = string
41
+ export type FestivalMethod = (params: VxeDatePanelDefines.DateFestivalParams) => VxeDatePanelDefines.DateFestivalInfo | null | void
42
+ export type DisabledMethod = (params: VxeDatePanelDefines.DateDisabledParams) => boolean
43
+ }
44
+
45
+ export interface VxeDatePanelProps {
46
+ size?: VxeDatePanelPropTypes.Size
47
+ modelValue?: VxeDatePanelPropTypes.ModelValue
48
+ className?: VxeDatePanelPropTypes.ClassName
49
+ type?: VxeDatePanelPropTypes.Type
50
+ multiple?: VxeDatePanelPropTypes.Multiple
51
+ limitCount?: VxeDatePanelPropTypes.LimitCount
52
+
53
+ /**
54
+ * 日期面板的起始周为星期几
55
+ */
56
+ startDate?: VxeDatePanelPropTypes.StartDate
57
+ endDate?: VxeDatePanelPropTypes.EndDate
58
+ minDate?: VxeDatePanelPropTypes.MinDate
59
+ maxDate?: VxeDatePanelPropTypes.MaxDate
60
+
61
+ startDay?: VxeDatePanelPropTypes.StartDay
62
+ labelFormat?: VxeDatePanelPropTypes.LabelFormat
63
+ valueFormat?: VxeDatePanelPropTypes.ValueFormat
64
+ festivalMethod?: VxeDatePanelPropTypes.FestivalMethod
65
+ disabledMethod?: VxeDatePanelPropTypes.DisabledMethod
66
+
67
+ /**
68
+ * 只对 type=week 有效,选中日期后指定为一周的哪一天
69
+ */
70
+ selectDay?: VxeDatePanelPropTypes.SelectDay
71
+ }
72
+
73
+ export interface DatePanelPrivateComputed {
74
+ }
75
+ export interface VxeDatePanelPrivateComputed extends DatePanelPrivateComputed { }
76
+
77
+ export interface DatePanelReactData {
78
+ visiblePanel: boolean
79
+ isAniVisible: boolean
80
+ isActivated: boolean
81
+ inputValue: any
82
+ datetimePanelValue: Date | null
83
+ datePanelValue: Date | null
84
+ datePanelLabel: string
85
+ datePanelType: VxeDatePanelDefines.DatePanelType
86
+ selectMonth: any
87
+ currentDate: any
88
+ }
89
+
90
+ export interface DatePanelInternalData {
91
+ yearSize: number
92
+ monthSize: number
93
+ quarterSize: number
94
+ hpTimeout?: undefined | number
95
+ }
96
+
97
+ export interface DatePanelMethods {
98
+ dispatchEvent(type: ValueOf<VxeDatePanelEmits>, params: Record<string, any>, evnt: Event | null): void
99
+
100
+ getValue(): string
101
+ setPanelDate(date: Date): void
102
+ getPanelDate(): Date
103
+ checkValue(inputLabel: string): void
104
+ confirmByEvent(event: Event): void
105
+ }
106
+ export interface VxeDatePanelMethods extends DatePanelMethods { }
107
+
108
+ export interface DatePanelPrivateMethods { }
109
+ export interface VxeDatePanelPrivateMethods extends DatePanelPrivateMethods { }
110
+
111
+ export type VxeDatePanelEmits = [
112
+ 'update:modelValue',
113
+ 'change',
114
+ 'click',
115
+ 'clear',
116
+ 'date-prev',
117
+ 'date-today',
118
+ 'date-next',
119
+ 'confirm'
120
+ ]
121
+
122
+ export namespace VxeDatePanelDefines {
123
+ export interface DatePanelEventParams extends VxeComponentEventParams {
124
+ $datePanel: VxeDatePanelConstructor
125
+ }
126
+
127
+ export interface DateYearItem {
128
+ date: Date;
129
+ isPrev: boolean;
130
+ isCurrent: boolean;
131
+ isNow: boolean;
132
+ isNext: boolean;
133
+ year: number;
134
+ }
135
+
136
+ export interface DateMonthItem {
137
+ date: Date;
138
+ isPrev: boolean;
139
+ isCurrent: boolean;
140
+ isNow: boolean;
141
+ isNext: boolean;
142
+ month: number;
143
+ }
144
+
145
+ export interface DateQuarterItem {
146
+ date: Date;
147
+ isPrev: boolean;
148
+ isCurrent: boolean;
149
+ isNow: boolean;
150
+ isNext: boolean;
151
+ quarter: number;
152
+ }
153
+
154
+ export interface DateDayItem {
155
+ date: Date;
156
+ isWeekNumber?: boolean;
157
+ isPrev: boolean;
158
+ isCurrent: boolean;
159
+ isNow: boolean;
160
+ isNext: boolean;
161
+ label: number;
162
+ }
163
+
164
+ export interface DateHourMinuteSecondItem {
165
+ value: number;
166
+ label: string;
167
+ }
168
+
169
+ export type DatePanelType = 'year' | 'quarter' | 'month' | 'week' | 'day'
170
+
171
+ interface DateFestivalItem {
172
+ /**
173
+ * 显示名称
174
+ */
175
+ label?: string
176
+ /**
177
+ * 标记为重要信息
178
+ */
179
+ important?: boolean
180
+ className?: string
181
+ style?: VxeComponentStyleType
182
+ }
183
+
184
+ /**
185
+ * 日期节日对象
186
+ */
187
+ export interface DateFestivalInfo extends DateFestivalItem {
188
+ /**
189
+ * 显示左上角小圆点通知
190
+ */
191
+ notice?: boolean
192
+ /**
193
+ * 显示右上角信息
194
+ */
195
+ extra?: string | DateFestivalItem
196
+ }
197
+
198
+ export interface DateFestivalParams {
199
+ $datePanel: VxeDatePanelConstructor
200
+ type: string
201
+ viewType: DatePanelType
202
+ date: Date
203
+ }
204
+
205
+ export interface DateDisabledParams {
206
+ $datePanel: VxeDatePanelConstructor
207
+ type: string
208
+ viewType: DatePanelType
209
+ date: Date
210
+ }
211
+
212
+ export interface DatePanelParams {
213
+ value: string
214
+ }
215
+
216
+ export interface ChangeEventParams extends DatePanelEventParams, DatePanelParams { }
217
+ }
218
+
219
+ export type VxeDatePanelEventProps = {
220
+ onChange?: VxeDatePanelEvents.Change
221
+ }
222
+
223
+ export interface VxeDatePanelListeners {
224
+ change?: VxeDatePanelEvents.Change
225
+ }
226
+
227
+ export namespace VxeDatePanelEvents {
228
+ export type Change = (params: VxeDatePanelDefines.ChangeEventParams) => void
229
+ }
230
+
231
+ export namespace VxeDatePanelSlotTypes {
232
+ export interface DefaultSlotParams {}
233
+ }
234
+
235
+ export interface VxeDatePanelSlots {
236
+ default?: (params: VxeDatePanelSlotTypes.DefaultSlotParams) => any
237
+ }
238
+
239
+ export const DatePanel: typeof VxeDatePanel
240
+ export default VxeDatePanel