vxe-pc-ui 3.14.27 → 3.14.28

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 (60) hide show
  1. package/es/date-panel/src/date-panel.js +11 -10
  2. package/es/date-panel/style.css +4 -0
  3. package/es/date-panel/style.min.css +1 -1
  4. package/es/date-range-picker/src/date-range-picker.js +17 -0
  5. package/es/select/src/select.js +4 -1
  6. package/es/style.css +1 -1
  7. package/es/style.min.css +1 -1
  8. package/es/table-select/src/table-select.js +4 -1
  9. package/es/tree-select/src/tree-select.js +4 -1
  10. package/es/ui/index.js +1 -1
  11. package/es/ui/src/log.js +1 -1
  12. package/es/upload/src/upload.js +53 -3
  13. package/es/vxe-date-panel/style.css +4 -0
  14. package/es/vxe-date-panel/style.min.css +1 -1
  15. package/lib/date-panel/src/date-panel.js +46 -10
  16. package/lib/date-panel/src/date-panel.min.js +1 -1
  17. package/lib/date-panel/style/style.css +4 -0
  18. package/lib/date-panel/style/style.min.css +1 -1
  19. package/lib/date-range-picker/src/date-range-picker.js +21 -3
  20. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  21. package/lib/index.umd.js +148 -23
  22. package/lib/index.umd.min.js +1 -1
  23. package/lib/select/src/select.js +6 -1
  24. package/lib/select/src/select.min.js +1 -1
  25. package/lib/style.css +1 -1
  26. package/lib/style.min.css +1 -1
  27. package/lib/table-select/src/table-select.js +4 -1
  28. package/lib/table-select/src/table-select.min.js +1 -1
  29. package/lib/tree-select/src/tree-select.js +4 -1
  30. package/lib/tree-select/src/tree-select.min.js +1 -1
  31. package/lib/ui/index.js +1 -1
  32. package/lib/ui/index.min.js +1 -1
  33. package/lib/ui/src/log.js +1 -1
  34. package/lib/ui/src/log.min.js +1 -1
  35. package/lib/upload/src/upload.js +65 -5
  36. package/lib/upload/src/upload.min.js +1 -1
  37. package/lib/vxe-date-panel/style/style.css +4 -0
  38. package/lib/vxe-date-panel/style/style.min.css +1 -1
  39. package/package.json +1 -1
  40. package/packages/date-panel/src/date-panel.ts +11 -10
  41. package/packages/date-range-picker/src/date-range-picker.ts +18 -0
  42. package/packages/select/src/select.ts +4 -1
  43. package/packages/table-select/src/table-select.ts +4 -1
  44. package/packages/tree-select/src/tree-select.ts +4 -1
  45. package/packages/upload/src/upload.ts +73 -5
  46. package/styles/components/date-panel.scss +4 -0
  47. package/types/components/date-panel.d.ts +7 -0
  48. package/types/components/upload.d.ts +36 -1
  49. /package/es/icon/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  50. /package/es/icon/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  51. /package/es/icon/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  52. /package/es/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  53. /package/es/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  54. /package/es/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  55. /package/lib/icon/style/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  56. /package/lib/icon/style/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  57. /package/lib/icon/style/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
  58. /package/lib/{iconfont.1780477610393.ttf → iconfont.1780570410811.ttf} +0 -0
  59. /package/lib/{iconfont.1780477610393.woff → iconfont.1780570410811.woff} +0 -0
  60. /package/lib/{iconfont.1780477610393.woff2 → iconfont.1780570410811.woff2} +0 -0
@@ -186,6 +186,7 @@
186
186
  }
187
187
 
188
188
  .vxe-date-panel--view-item {
189
+ position: relative;
189
190
  padding: 0.2em;
190
191
  }
191
192
  .vxe-date-panel--view-item.is--prev .vxe-date-panel--view-item-inner, .vxe-date-panel--view-item.is--next .vxe-date-panel--view-item-inner {
@@ -228,6 +229,9 @@
228
229
  .vxe-date-panel--view-item.is--selected .vxe-date-panel--label.is-notice:before {
229
230
  background-color: var(--vxe-ui-input-date-picker-notice-selected-background-color);
230
231
  }
232
+ .vxe-date-panel--view-item.is--range-selected {
233
+ background-color: var(--vxe-ui-font-primary-tinge-color);
234
+ }
231
235
  .vxe-date-panel--view-item.is--range-disabled .vxe-date-panel--view-item-inner {
232
236
  color: var(--vxe-ui-input-disabled-color);
233
237
  background-color: inherit;
@@ -1 +1 @@
1
- .vxe-date-panel{color:var(--vxe-ui-font-color);flex-shrink:0}.vxe-date-panel--time-layout-wrapper,.vxe-date-panel--wrapper{border:0 solid var(--vxe-ui-base-popup-border-color);border-radius:var(--vxe-ui-base-border-radius)}.vxe-date-panel--time-left-wrapper,.vxe-date-panel--wrapper{display:inline-flex;flex-direction:column;padding:.8em}.vxe-date-panel--time-right-wrapper{padding:.8em .8em .8em 0}.vxe-date-panel--time-layout-wrapper{display:inline-flex;flex-direction:row}.vxe-date-panel--time-title{display:flex;align-items:center;justify-content:center;flex-grow:1;text-align:center;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);height:2em;font-weight:700}.vxe-date-panel--time-header{position:relative;flex-shrink:0}.vxe-date-panel--picker-header,.vxe-date-panel--time-header{display:flex;flex-direction:row;align-items:center;height:3em;padding-bottom:.5em}.vxe-date-panel--picker-header{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--picker-header .vxe-date-panel--picker-type-wrapper{flex-grow:1;font-size:1.1em}.vxe-date-panel--picker-header .vxe-date-panel--picker-btn-wrapper{flex-shrink:0;text-align:center}.vxe-date-panel--picker-type-wrapper{display:flex;align-items:center}.vxe-date-panel--picker-type-wrapper .vxe-date-panel--picker-btn,.vxe-date-panel--picker-type-wrapper .vxe-date-panel--picker-label{display:inline-block}.vxe-date-panel--picker-btn-wrapper{display:flex;flex-direction:row}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-current-btn,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-next-btn,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-prev-btn{height:2.2em;padding:0 .5em;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-input-border-color);margin-left:.5em}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-current-btn i,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-next-btn i,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-prev-btn i{font-size:1.2em}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-btn:not(.is--disabled):active{transform:scale(.9)}.vxe-date-panel--picker-btn,.vxe-date-panel--picker-label{display:flex;align-items:center;justify-content:center;background-color:var(--vxe-ui-layout-background-color)}.vxe-date-panel--picker-btn.is--disabled{color:var(--vxe-ui-font-disabled-color);cursor:no-drop}.vxe-date-panel--picker-btn:not(.is--disabled){cursor:pointer}.vxe-date-panel--picker-btn:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-color);background-color:#fff}.vxe-date-panel--picker-btn:not(.is--disabled):active{background-color:#fff}.vxe-date-panel--picker-btns .vxe-date-panel--picker-btn{margin-left:.6em}.vxe-date-panel--picker-btns .vxe-date-panel--picker-btn:first-child{margin-left:0}.vxe-date-panel--view-wrapper{display:flex;flex-direction:column;line-height:1.5}.vxe-date-panel--picker-body{border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--view-header{box-shadow:inset 0 -1px 0 0 var(--vxe-ui-base-popup-border-color);text-align:center}.vxe-date-panel--view-body{display:inline-flex;flex-direction:column;width:24em}.vxe-date-panel--view-wrapper.type--day .vxe-date-panel--view-body,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-body{height:18em}.vxe-date-panel--view-header .vxe-date-panel--view-row{height:2em}.vxe-date-panel--time-body,.vxe-date-panel--view-body{height:20em}.vxe-date-panel.type--time .vxe-date-panel--time-body{height:15em}.vxe-date-panel--view-body .vxe-date-panel--view-item{cursor:pointer}.vxe-date-panel--view-body .vxe-date-panel--view-item.is--disabled,.vxe-date-panel--view-body .vxe-date-panel--view-item.is--range-disabled{cursor:no-drop}.vxe-date-panel--view-body .vxe-date-panel--view-item.is--over{cursor:no-drop}.vxe-date-panel--view-row{display:flex;flex-direction:row}.vxe-date-panel--view-item{padding:.2em}.vxe-date-panel--view-item.is--next .vxe-date-panel--view-item-inner,.vxe-date-panel--view-item.is--prev .vxe-date-panel--view-item-inner{color:var(--vxe-ui-font-disabled-color)}.vxe-date-panel--view-item.is--next .vxe-date-panel--festival,.vxe-date-panel--view-item.is--next .vxe-date-panel--label,.vxe-date-panel--view-item.is--prev .vxe-date-panel--festival,.vxe-date-panel--view-item.is--prev .vxe-date-panel--label{color:var(--vxe-ui-font-disabled-color)}.vxe-date-panel--view-item.is--now .vxe-date-panel--view-item-inner{color:var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-item.is--now:not(.is--selected).is--current{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--now:not(.is--selected).is--current .vxe-date-panel--festival,.vxe-date-panel--view-item.is--now:not(.is--selected).is--current .vxe-date-panel--label{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--hover .vxe-date-panel--view-item-inner{background-color:var(--vxe-ui-font-primary-tinge-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-date-picker-selected-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--selected.is--hover .vxe-date-panel--view-item-inner{box-shadow:0 0 6px 1px var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--selected.is--next .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected.is--next .vxe-date-panel--label,.vxe-date-panel--view-item.is--selected.is--prev .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected.is--prev .vxe-date-panel--label{color:var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected .vxe-date-panel--label{color:var(--vxe-ui-input-date-picker-festival-selected-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--label.is-notice:before{background-color:var(--vxe-ui-input-date-picker-notice-selected-background-color)}.vxe-date-panel--view-item.is--range-disabled .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-disabled-color);background-color:inherit}.vxe-date-panel--view-item.is--disabled .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-disabled-color);background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-panel--view-item.is--disabled .vxe-date-panel--festival,.vxe-date-panel--view-item.is--disabled .vxe-date-panel--label{color:var(--vxe-ui-input-disabled-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item{padding:.2em 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item .vxe-date-panel--view-item-inner{border-radius:0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:first-child{padding:.2em 0 .2em .2em;border-right:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:first-child .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-date-festival-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:last-child{padding:.2em .2em .2em 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--hover:first-child .vxe-date-panel--view-item-inner,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--selected:first-child .vxe-date-panel--view-item-inner{border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--hover:last-child .vxe-date-panel--view-item-inner,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--selected:last-child .vxe-date-panel--view-item-inner{border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--now:not(.is--selected):first-child .vxe-date-panel--view-item-inner{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;border:1px solid transparent;border-radius:var(--vxe-ui-base-border-radius);overflow:hidden}.vxe-date-panel--view-item-label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-date-panel--festival,.vxe-date-panel--label{width:100%;display:block;overflow:hidden;text-align:center}.vxe-date-panel--label{position:relative;height:1.4em;line-height:1.4em}.vxe-date-panel--label.is-notice:before{content:"";position:absolute;width:.25em;height:.25em;left:50%;top:0;transform:translateX(-50%);border-radius:100%;background-color:var(--vxe-ui-input-date-notice-background-color)}.vxe-date-panel--label--extra{position:absolute;right:-.1em;top:-.4em;font-size:12px;transform:scale(.9);color:var(--vxe-ui-input-date-extra-color)}.vxe-date-panel--label--extra.is-important{color:var(--vxe-ui-input-date-extra-important-color)}.vxe-date-panel--festival{color:var(--vxe-ui-input-date-festival-color);height:1em;line-height:1em;overflow:hidden}.vxe-date-panel--festival.is-important{color:var(--vxe-ui-input-date-festival-important-color)}.vxe-date-panel--festival--label{display:block;font-size:1em;transform:scale(.8)}@keyframes festivalOverlap2{0%,100%,45%{transform:translateY(0)}50%,95%{transform:translateY(-14px)}}@keyframes festivalOverlap3{0%,100%,20%{transform:translateY(0)}25%,45%,75%,95%{transform:translateY(-14px)}50%,70%{transform:translateY(-28px)}}.vxe-date-panel--festival--overlap{display:block;font-size:.86em}.vxe-date-panel--festival--overlap.overlap--2{animation:festivalOverlap2 6s infinite ease-in-out}.vxe-date-panel--festival--overlap.overlap--3{animation:festivalOverlap3 9s infinite ease-in-out}.vxe-date-panel--festival--overlap>span{height:14px;display:block;transform:scale(.8)}.vxe-date-panel--time-body{position:relative;display:flex;flex-direction:row;border:1px solid var(--vxe-ui-base-popup-border-color);flex-grow:1;border-radius:var(--vxe-ui-base-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--time-body>ul{height:100%;overflow:hidden;margin:0;padding:0;width:3.2em}.vxe-date-panel--time-body>ul:after,.vxe-date-panel--time-body>ul:before{content:" ";display:block;height:6em}.vxe-date-panel--time-body>ul:hover{overflow-y:auto}.vxe-date-panel--time-body>ul>li{display:block;height:2em;line-height:2em;padding-left:.4em}.vxe-date-panel--time-body>ul>li:not(.is--disabled):hover{background-color:var(--vxe-ui-input-date-picker-hover-background-color);cursor:pointer}.vxe-date-panel--time-body>ul>li.is--selected{font-weight:700;color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--time-body>ul>li.is--disabled{color:var(--vxe-ui-font-disabled-color);cursor:no-drop}.vxe-date-panel--time-body .vxe-date-panel--time-minute-list{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--time-body .vxe-date-panel--time-second-list{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel.type--time .vxe-date-panel--time-body>ul{width:4em}.vxe-date-panel.type--time .vxe-date-panel--time-body>ul>li{height:2.2em;line-height:2.2em;padding-left:.8em}.vxe-date-panel{font-size:var(--vxe-ui-font-size-default)}.vxe-date-panel.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-date-panel.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-date-panel.size--mini{font-size:var(--vxe-ui-font-size-mini)}
1
+ .vxe-date-panel{color:var(--vxe-ui-font-color);flex-shrink:0}.vxe-date-panel--time-layout-wrapper,.vxe-date-panel--wrapper{border:0 solid var(--vxe-ui-base-popup-border-color);border-radius:var(--vxe-ui-base-border-radius)}.vxe-date-panel--time-left-wrapper,.vxe-date-panel--wrapper{display:inline-flex;flex-direction:column;padding:.8em}.vxe-date-panel--time-right-wrapper{padding:.8em .8em .8em 0}.vxe-date-panel--time-layout-wrapper{display:inline-flex;flex-direction:row}.vxe-date-panel--time-title{display:flex;align-items:center;justify-content:center;flex-grow:1;text-align:center;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);height:2em;font-weight:700}.vxe-date-panel--time-header{position:relative;flex-shrink:0}.vxe-date-panel--picker-header,.vxe-date-panel--time-header{display:flex;flex-direction:row;align-items:center;height:3em;padding-bottom:.5em}.vxe-date-panel--picker-header{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--picker-header .vxe-date-panel--picker-type-wrapper{flex-grow:1;font-size:1.1em}.vxe-date-panel--picker-header .vxe-date-panel--picker-btn-wrapper{flex-shrink:0;text-align:center}.vxe-date-panel--picker-type-wrapper{display:flex;align-items:center}.vxe-date-panel--picker-type-wrapper .vxe-date-panel--picker-btn,.vxe-date-panel--picker-type-wrapper .vxe-date-panel--picker-label{display:inline-block}.vxe-date-panel--picker-btn-wrapper{display:flex;flex-direction:row}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-current-btn,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-next-btn,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-prev-btn{height:2.2em;padding:0 .5em;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-input-border-color);margin-left:.5em}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-current-btn i,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-next-btn i,.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-prev-btn i{font-size:1.2em}.vxe-date-panel--picker-btn-wrapper .vxe-date-panel--picker-btn:not(.is--disabled):active{transform:scale(.9)}.vxe-date-panel--picker-btn,.vxe-date-panel--picker-label{display:flex;align-items:center;justify-content:center;background-color:var(--vxe-ui-layout-background-color)}.vxe-date-panel--picker-btn.is--disabled{color:var(--vxe-ui-font-disabled-color);cursor:no-drop}.vxe-date-panel--picker-btn:not(.is--disabled){cursor:pointer}.vxe-date-panel--picker-btn:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-color);background-color:#fff}.vxe-date-panel--picker-btn:not(.is--disabled):active{background-color:#fff}.vxe-date-panel--picker-btns .vxe-date-panel--picker-btn{margin-left:.6em}.vxe-date-panel--picker-btns .vxe-date-panel--picker-btn:first-child{margin-left:0}.vxe-date-panel--view-wrapper{display:flex;flex-direction:column;line-height:1.5}.vxe-date-panel--picker-body{border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--view-header{box-shadow:inset 0 -1px 0 0 var(--vxe-ui-base-popup-border-color);text-align:center}.vxe-date-panel--view-body{display:inline-flex;flex-direction:column;width:24em}.vxe-date-panel--view-wrapper.type--day .vxe-date-panel--view-body,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-body{height:18em}.vxe-date-panel--view-header .vxe-date-panel--view-row{height:2em}.vxe-date-panel--time-body,.vxe-date-panel--view-body{height:20em}.vxe-date-panel.type--time .vxe-date-panel--time-body{height:15em}.vxe-date-panel--view-body .vxe-date-panel--view-item{cursor:pointer}.vxe-date-panel--view-body .vxe-date-panel--view-item.is--disabled,.vxe-date-panel--view-body .vxe-date-panel--view-item.is--range-disabled{cursor:no-drop}.vxe-date-panel--view-body .vxe-date-panel--view-item.is--over{cursor:no-drop}.vxe-date-panel--view-row{display:flex;flex-direction:row}.vxe-date-panel--view-item{position:relative;padding:.2em}.vxe-date-panel--view-item.is--next .vxe-date-panel--view-item-inner,.vxe-date-panel--view-item.is--prev .vxe-date-panel--view-item-inner{color:var(--vxe-ui-font-disabled-color)}.vxe-date-panel--view-item.is--next .vxe-date-panel--festival,.vxe-date-panel--view-item.is--next .vxe-date-panel--label,.vxe-date-panel--view-item.is--prev .vxe-date-panel--festival,.vxe-date-panel--view-item.is--prev .vxe-date-panel--label{color:var(--vxe-ui-font-disabled-color)}.vxe-date-panel--view-item.is--now .vxe-date-panel--view-item-inner{color:var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-item.is--now:not(.is--selected).is--current{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--now:not(.is--selected).is--current .vxe-date-panel--festival,.vxe-date-panel--view-item.is--now:not(.is--selected).is--current .vxe-date-panel--label{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--hover .vxe-date-panel--view-item-inner{background-color:var(--vxe-ui-font-primary-tinge-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-date-picker-selected-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--selected.is--hover .vxe-date-panel--view-item-inner{box-shadow:0 0 6px 1px var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item.is--selected.is--next .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected.is--next .vxe-date-panel--label,.vxe-date-panel--view-item.is--selected.is--prev .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected.is--prev .vxe-date-panel--label{color:var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--festival,.vxe-date-panel--view-item.is--selected .vxe-date-panel--label{color:var(--vxe-ui-input-date-picker-festival-selected-color)}.vxe-date-panel--view-item.is--selected .vxe-date-panel--label.is-notice:before{background-color:var(--vxe-ui-input-date-picker-notice-selected-background-color)}.vxe-date-panel--view-item.is--range-selected{background-color:var(--vxe-ui-font-primary-tinge-color)}.vxe-date-panel--view-item.is--range-disabled .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-disabled-color);background-color:inherit}.vxe-date-panel--view-item.is--disabled .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-disabled-color);background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-panel--view-item.is--disabled .vxe-date-panel--festival,.vxe-date-panel--view-item.is--disabled .vxe-date-panel--label{color:var(--vxe-ui-input-disabled-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item{padding:.2em 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item .vxe-date-panel--view-item-inner{border-radius:0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:first-child{padding:.2em 0 .2em .2em;border-right:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:first-child .vxe-date-panel--view-item-inner{color:var(--vxe-ui-input-date-festival-color)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item:last-child{padding:.2em .2em .2em 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--hover:first-child .vxe-date-panel--view-item-inner,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--selected:first-child .vxe-date-panel--view-item-inner{border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--hover:last-child .vxe-date-panel--view-item-inner,.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--selected:last-child .vxe-date-panel--view-item-inner{border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-date-panel--view-wrapper.type--week .vxe-date-panel--view-item.is--now:not(.is--selected):first-child .vxe-date-panel--view-item-inner{color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--view-item-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;border:1px solid transparent;border-radius:var(--vxe-ui-base-border-radius);overflow:hidden}.vxe-date-panel--view-item-label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-date-panel--festival,.vxe-date-panel--label{width:100%;display:block;overflow:hidden;text-align:center}.vxe-date-panel--label{position:relative;height:1.4em;line-height:1.4em}.vxe-date-panel--label.is-notice:before{content:"";position:absolute;width:.25em;height:.25em;left:50%;top:0;transform:translateX(-50%);border-radius:100%;background-color:var(--vxe-ui-input-date-notice-background-color)}.vxe-date-panel--label--extra{position:absolute;right:-.1em;top:-.4em;font-size:12px;transform:scale(.9);color:var(--vxe-ui-input-date-extra-color)}.vxe-date-panel--label--extra.is-important{color:var(--vxe-ui-input-date-extra-important-color)}.vxe-date-panel--festival{color:var(--vxe-ui-input-date-festival-color);height:1em;line-height:1em;overflow:hidden}.vxe-date-panel--festival.is-important{color:var(--vxe-ui-input-date-festival-important-color)}.vxe-date-panel--festival--label{display:block;font-size:1em;transform:scale(.8)}@keyframes festivalOverlap2{0%,100%,45%{transform:translateY(0)}50%,95%{transform:translateY(-14px)}}@keyframes festivalOverlap3{0%,100%,20%{transform:translateY(0)}25%,45%,75%,95%{transform:translateY(-14px)}50%,70%{transform:translateY(-28px)}}.vxe-date-panel--festival--overlap{display:block;font-size:.86em}.vxe-date-panel--festival--overlap.overlap--2{animation:festivalOverlap2 6s infinite ease-in-out}.vxe-date-panel--festival--overlap.overlap--3{animation:festivalOverlap3 9s infinite ease-in-out}.vxe-date-panel--festival--overlap>span{height:14px;display:block;transform:scale(.8)}.vxe-date-panel--time-body{position:relative;display:flex;flex-direction:row;border:1px solid var(--vxe-ui-base-popup-border-color);flex-grow:1;border-radius:var(--vxe-ui-base-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-date-panel--time-body>ul{height:100%;overflow:hidden;margin:0;padding:0;width:3.2em}.vxe-date-panel--time-body>ul:after,.vxe-date-panel--time-body>ul:before{content:" ";display:block;height:6em}.vxe-date-panel--time-body>ul:hover{overflow-y:auto}.vxe-date-panel--time-body>ul>li{display:block;height:2em;line-height:2em;padding-left:.4em}.vxe-date-panel--time-body>ul>li:not(.is--disabled):hover{background-color:var(--vxe-ui-input-date-picker-hover-background-color);cursor:pointer}.vxe-date-panel--time-body>ul>li.is--selected{font-weight:700;color:var(--vxe-ui-font-primary-color)}.vxe-date-panel--time-body>ul>li.is--disabled{color:var(--vxe-ui-font-disabled-color);cursor:no-drop}.vxe-date-panel--time-body .vxe-date-panel--time-minute-list{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel--time-body .vxe-date-panel--time-second-list{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-panel.type--time .vxe-date-panel--time-body>ul{width:4em}.vxe-date-panel.type--time .vxe-date-panel--time-body>ul>li{height:2.2em;line-height:2.2em;padding-left:.8em}.vxe-date-panel{font-size:var(--vxe-ui-font-size-default)}.vxe-date-panel.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-date-panel.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-date-panel.size--mini{font-size:var(--vxe-ui-font-size-mini)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-pc-ui",
3
- "version": "3.14.27",
3
+ "version": "3.14.28",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -22,6 +22,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
22
22
  default: 'date' as VxeDatePanelPropTypes.Type
23
23
  },
24
24
  className: String as PropType<VxeDatePanelPropTypes.ClassName>,
25
+ cellClassName: [String, Function] as PropType<VxeDatePanelPropTypes.CellClassName>,
25
26
  size: {
26
27
  type: String as PropType<VxeDatePanelPropTypes.Size>,
27
28
  default: () => getConfig().datePanel.size || getConfig().size
@@ -1435,7 +1436,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1435
1436
  const props = $xeDatePanel
1436
1437
  const reactData = $xeDatePanel.reactData
1437
1438
 
1438
- const { multiple } = props
1439
+ const { type, multiple, cellClassName } = props
1439
1440
  const { datePanelType, datePanelValue } = reactData
1440
1441
  const dateValue = $xeDatePanel.computeDateValue
1441
1442
  const dateHeaders = $xeDatePanel.computeDateHeaders
@@ -1480,7 +1481,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1480
1481
  }, rows.map((item) => {
1481
1482
  const isSelected = multiple ? dateListValue.some(val => XEUtils.isDateSame(val, item.date, matchFormat)) : XEUtils.isDateSame(dateValue, item.date, matchFormat)
1482
1483
  return h('div', {
1483
- class: ['vxe-date-panel--view-item', {
1484
+ class: ['vxe-date-panel--view-item', cellClassName ? (XEUtils.isFunction(cellClassName) ? `${cellClassName({ $datePanel: $xeDatePanel, type, viewType: datePanelType, date: item.date }) || ''}` : `${cellClassName || ''}`) : '', {
1484
1485
  'is--prev': item.isPrev,
1485
1486
  'is--current': item.isCurrent,
1486
1487
  'is--now': item.isNow,
@@ -1514,7 +1515,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1514
1515
  const props = $xeDatePanel
1515
1516
  const reactData = $xeDatePanel.reactData
1516
1517
 
1517
- const { multiple } = props
1518
+ const { type, multiple, cellClassName } = props
1518
1519
  const { datePanelType, datePanelValue } = reactData
1519
1520
  const dateValue = $xeDatePanel.computeDateValue
1520
1521
  const weekHeaders = $xeDatePanel.computeWeekHeaders
@@ -1561,7 +1562,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1561
1562
  }
1562
1563
  }, rows.map((item, rIndex) => {
1563
1564
  return h('div', {
1564
- class: ['vxe-date-panel--view-item', {
1565
+ class: ['vxe-date-panel--view-item', cellClassName ? (XEUtils.isFunction(cellClassName) ? `${cellClassName({ $datePanel: $xeDatePanel, type, viewType: datePanelType, date: item.date }) || ''}` : `${cellClassName || ''}`) : '', {
1565
1566
  'is--prev': item.isPrev,
1566
1567
  'is--current': item.isCurrent,
1567
1568
  'is--now': rIndex ? item.isNow : isNowWeek,
@@ -1595,7 +1596,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1595
1596
  const props = $xeDatePanel
1596
1597
  const reactData = $xeDatePanel.reactData
1597
1598
 
1598
- const { multiple } = props
1599
+ const { type, multiple, cellClassName } = props
1599
1600
  const { datePanelType, datePanelValue } = reactData
1600
1601
  const dateValue = $xeDatePanel.computeDateValue
1601
1602
  const monthDatas = $xeDatePanel.computeMonthDatas
@@ -1617,7 +1618,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1617
1618
  }, rows.map((item) => {
1618
1619
  const isSelected = multiple ? dateListValue.some(val => XEUtils.isDateSame(val, item.date, matchFormat)) : XEUtils.isDateSame(dateValue, item.date, matchFormat)
1619
1620
  return h('div', {
1620
- class: ['vxe-date-panel--view-item', {
1621
+ class: ['vxe-date-panel--view-item', cellClassName ? (XEUtils.isFunction(cellClassName) ? `${cellClassName({ $datePanel: $xeDatePanel, type, viewType: datePanelType, date: item.date }) || ''}` : `${cellClassName || ''}`) : '', {
1621
1622
  'is--prev': item.isPrev,
1622
1623
  'is--current': item.isCurrent,
1623
1624
  'is--now': item.isNow,
@@ -1651,7 +1652,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1651
1652
  const props = $xeDatePanel
1652
1653
  const reactData = $xeDatePanel.reactData
1653
1654
 
1654
- const { multiple } = props
1655
+ const { type, multiple, cellClassName } = props
1655
1656
  const { datePanelType, datePanelValue } = reactData
1656
1657
  const dateValue = $xeDatePanel.computeDateValue
1657
1658
  const quarterDatas = $xeDatePanel.computeQuarterDatas
@@ -1673,7 +1674,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1673
1674
  }, rows.map((item) => {
1674
1675
  const isSelected = multiple ? dateListValue.some(val => XEUtils.isDateSame(val, item.date, matchFormat)) : XEUtils.isDateSame(dateValue, item.date, matchFormat)
1675
1676
  return h('div', {
1676
- class: ['vxe-date-panel--view-item', {
1677
+ class: ['vxe-date-panel--view-item', cellClassName ? (XEUtils.isFunction(cellClassName) ? `${cellClassName({ $datePanel: $xeDatePanel, type, viewType: datePanelType, date: item.date }) || ''}` : `${cellClassName || ''}`) : '', {
1677
1678
  'is--prev': item.isPrev,
1678
1679
  'is--current': item.isCurrent,
1679
1680
  'is--now': item.isNow,
@@ -1707,7 +1708,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1707
1708
  const props = $xeDatePanel
1708
1709
  const reactData = $xeDatePanel.reactData
1709
1710
 
1710
- const { multiple } = props
1711
+ const { type, multiple, cellClassName } = props
1711
1712
  const { datePanelType, datePanelValue } = reactData
1712
1713
  const dateValue = $xeDatePanel.computeDateValue
1713
1714
  const yearDatas = $xeDatePanel.computeYearDatas
@@ -1729,7 +1730,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1729
1730
  }, rows.map((item) => {
1730
1731
  const isSelected = multiple ? dateListValue.some(val => XEUtils.isDateSame(val, item.date, matchFormat)) : XEUtils.isDateSame(dateValue, item.date, matchFormat)
1731
1732
  return h('div', {
1732
- class: ['vxe-date-panel--view-item', {
1733
+ class: ['vxe-date-panel--view-item', cellClassName ? (XEUtils.isFunction(cellClassName) ? `${cellClassName({ $datePanel: $xeDatePanel, type, viewType: datePanelType, date: item.date }) || ''}` : `${cellClassName || ''}`) : '', {
1733
1734
  'is--prev': item.isPrev,
1734
1735
  'is--current': item.isCurrent,
1735
1736
  'is--now': item.isNow,
@@ -639,6 +639,22 @@ export default /* define-vxe-component start */ defineVxeComponent({
639
639
  }
640
640
  }
641
641
  },
642
+ panelCellClassName ({ date }: { date: Date }) {
643
+ const $xeDateRangePicker = this
644
+ const reactData = $xeDateRangePicker.reactData
645
+
646
+ const startValue = reactData.startValue
647
+ const endValue = reactData.endValue
648
+ if (startValue && endValue) {
649
+ const currTime = date.getTime()
650
+ const startTime = XEUtils.toStringDate(startValue).getTime()
651
+ const endTime = XEUtils.toStringDate(endValue).getTime()
652
+ if (currTime >= startTime && currTime <= endTime) {
653
+ return 'is--range-selected'
654
+ }
655
+ }
656
+ return ''
657
+ },
642
658
  handleSelectClose () {
643
659
  const $xeDateRangePicker = this
644
660
  const props = $xeDateRangePicker
@@ -1187,6 +1203,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1187
1203
  timeConfig: timeOpts,
1188
1204
  festivalMethod: props.festivalMethod,
1189
1205
  disabledMethod: props.disabledMethod,
1206
+ cellClassName: $xeDateRangePicker.panelCellClassName,
1190
1207
  selectDay: props.selectDay
1191
1208
  },
1192
1209
  on: {
@@ -1211,6 +1228,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1211
1228
  timeConfig: timeOpts,
1212
1229
  festivalMethod: props.festivalMethod,
1213
1230
  disabledMethod: props.disabledMethod,
1231
+ cellClassName: $xeDateRangePicker.panelCellClassName,
1214
1232
  selectDay: props.selectDay
1215
1233
  },
1216
1234
  on: {
@@ -58,7 +58,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
58
58
  props: {
59
59
  value: [String, Number, Boolean, Array] as PropType<VxeSelectPropTypes.ModelValue>,
60
60
  defaultConfig: Object as PropType<VxeSelectPropTypes.DefaultConfig>,
61
- clearable: Boolean as PropType<VxeSelectPropTypes.Clearable>,
61
+ clearable: {
62
+ type: Boolean as PropType<VxeSelectPropTypes.Clearable>,
63
+ default: () => getConfig().select.clearable
64
+ },
62
65
  placeholder: String as PropType<VxeSelectPropTypes.Placeholder>,
63
66
  readonly: {
64
67
  type: Boolean as PropType<VxeSelectPropTypes.Readonly>,
@@ -35,7 +35,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
35
35
  },
36
36
  props: {
37
37
  value: [String, Number, Array] as PropType<VxeTableSelectPropTypes.ModelValue>,
38
- clearable: Boolean as PropType<VxeTableSelectPropTypes.Clearable>,
38
+ clearable: {
39
+ type: Boolean as PropType<VxeTableSelectPropTypes.Clearable>,
40
+ default: getConfig().tableSelect.clearable
41
+ },
39
42
  placeholder: {
40
43
  type: String as PropType<VxeTableSelectPropTypes.Placeholder>,
41
44
  default: () => XEUtils.eqNull(getConfig().tableSelect.placeholder) ? getI18n('vxe.base.pleaseSelect') : getConfig().tableSelect.placeholder
@@ -55,7 +55,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
55
55
  },
56
56
  props: {
57
57
  value: [String, Number, Array] as PropType<VxeTreeSelectPropTypes.ModelValue>,
58
- clearable: Boolean as PropType<VxeTreeSelectPropTypes.Clearable>,
58
+ clearable: {
59
+ type: Boolean as PropType<VxeTreeSelectPropTypes.Clearable>,
60
+ default: getConfig().treeSelect.clearable
61
+ },
59
62
  placeholder: {
60
63
  type: String as PropType<VxeTreeSelectPropTypes.Placeholder>,
61
64
  default: () => XEUtils.eqNull(getConfig().treeSelect.placeholder) ? getI18n('vxe.base.pleaseSelect') : getConfig().treeSelect.placeholder
@@ -66,6 +66,51 @@ function hideDropTip ($xeUpload: VxeUploadConstructor) {
66
66
  }
67
67
  }
68
68
 
69
+ const handleClearFile = ($xeUpload: VxeUploadConstructor, evnt: Event | null) => {
70
+ const reactData = $xeUpload.reactData
71
+
72
+ const { fileList } = reactData
73
+ const urlProp = $xeUpload.computeUrlProp
74
+ const rest: Promise<{
75
+ url: string
76
+ status: boolean
77
+ }>[] = []
78
+ XEUtils.lastEach(fileList, (item, index) => {
79
+ rest.push(
80
+ $xeUpload.removeFileEvent(evnt, item, index).then(status => {
81
+ return { url: item[urlProp], status }
82
+ })
83
+ )
84
+ })
85
+ return Promise.all(rest)
86
+ }
87
+
88
+ function handleRemoveFile ($xeUpload: VxeUploadConstructor, evnt: Event | null, urlOrItem: string | VxeUploadDefines.FileObjItem | string[] | VxeUploadDefines.FileObjItem[] | null) {
89
+ const reactData = $xeUpload.reactData
90
+
91
+ const { fileList } = reactData
92
+ const urlProp = $xeUpload.computeUrlProp
93
+ const urls = (XEUtils.isArray(urlOrItem) ? urlOrItem : [urlOrItem])
94
+ const rest: Promise<{
95
+ url: string
96
+ status: boolean
97
+ }>[] = []
98
+ urls.forEach((obj: any) => {
99
+ if (obj) {
100
+ const url = XEUtils.isString(obj) ? obj : obj[urlProp]
101
+ const index = XEUtils.findIndexOf(fileList, fileItem => fileItem[urlProp] === url)
102
+ if (index > -1) {
103
+ rest.push(
104
+ $xeUpload.removeFileEvent(evnt, fileList[index], index).then(status => {
105
+ return { url: url, status }
106
+ })
107
+ )
108
+ }
109
+ }
110
+ })
111
+ return Promise.all(rest)
112
+ }
113
+
69
114
  function createReactData (): UploadReactData {
70
115
  return {
71
116
  isDragUploadStatus: false,
@@ -528,6 +573,16 @@ export default /* define-vxe-component start */ defineVxeComponent({
528
573
  const $xeUpload = this
529
574
  return $xeUpload.handleChoose(null)
530
575
  },
576
+ clear () {
577
+ const $xeUpload = this
578
+
579
+ return handleClearFile($xeUpload, null)
580
+ },
581
+ clearByEvent (evnt: Event) {
582
+ const $xeUpload = this
583
+
584
+ return handleClearFile($xeUpload, evnt)
585
+ },
531
586
  getPendingFiles () {
532
587
  const $xeUpload = this
533
588
  const reactData = $xeUpload.reactData
@@ -611,6 +666,16 @@ export default /* define-vxe-component start */ defineVxeComponent({
611
666
  }
612
667
  return $xeUpload.$nextTick()
613
668
  },
669
+ remove (urlOrItem: string | string[] | VxeUploadDefines.FileObjItem | VxeUploadDefines.FileObjItem[] | null) {
670
+ const $xeUpload = this
671
+
672
+ return handleRemoveFile($xeUpload, null, urlOrItem)
673
+ },
674
+ removeByEvent (evnt: Event, urlOrItem: string | string[] | VxeUploadDefines.FileObjItem | VxeUploadDefines.FileObjItem[] | null) {
675
+ const $xeUpload = this
676
+
677
+ return handleRemoveFile($xeUpload, evnt, urlOrItem)
678
+ },
614
679
  getFieldKey (item: VxeUploadDefines.FileObjItem) {
615
680
  const $xeUpload = this
616
681
 
@@ -1040,7 +1105,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1040
1105
  // 错误文件类型
1041
1106
  })
1042
1107
  },
1043
- handleRemoveEvent (evnt: MouseEvent, item: VxeUploadDefines.FileObjItem, index: number) {
1108
+ handleRemoveEvent (evnt: Event | null, item: VxeUploadDefines.FileObjItem, index: number) {
1044
1109
  const $xeUpload = this
1045
1110
  const reactData = $xeUpload.reactData
1046
1111
  const $xeForm = $xeUpload.$xeForm
@@ -1051,17 +1116,19 @@ export default /* define-vxe-component start */ defineVxeComponent({
1051
1116
  $xeUpload.handleChange(fileList)
1052
1117
  // 自动更新校验状态
1053
1118
  if ($xeForm && formItemInfo) {
1054
- $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, fileList)
1119
+ $xeForm.triggerItemEvent(evnt || { type: 'remove' }, formItemInfo.itemConfig.field, fileList)
1120
+ }
1121
+ if (evnt) {
1122
+ $xeUpload.dispatchEvent('remove', { option: item }, evnt)
1055
1123
  }
1056
- $xeUpload.dispatchEvent('remove', { option: item }, evnt)
1057
1124
  },
1058
- removeFileEvent (evnt: MouseEvent, item: VxeUploadDefines.FileObjItem, index: number) {
1125
+ removeFileEvent (evnt: Event | null, item: VxeUploadDefines.FileObjItem, index: number) {
1059
1126
  const $xeUpload = this
1060
1127
  const props = $xeUpload
1061
1128
 
1062
1129
  const beforeRemoveFn = props.beforeRemoveMethod || getConfig().upload.beforeRemoveMethod
1063
1130
  const removeFn = props.removeMethod || getConfig().upload.removeMethod
1064
- Promise.resolve(
1131
+ return Promise.resolve(
1065
1132
  beforeRemoveFn
1066
1133
  ? beforeRemoveFn({
1067
1134
  $upload: $xeUpload,
@@ -1085,6 +1152,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
1085
1152
  } else {
1086
1153
  $xeUpload.dispatchEvent('remove-fail', { option: item }, evnt)
1087
1154
  }
1155
+ return status
1088
1156
  })
1089
1157
  },
1090
1158
  handleDownloadEvent (evnt: MouseEvent, item: VxeUploadDefines.FileObjItem) {
@@ -187,6 +187,7 @@
187
187
  flex-direction: row;
188
188
  }
189
189
  .vxe-date-panel--view-item {
190
+ position: relative;
190
191
  padding: 0.2em;
191
192
  &.is--prev,
192
193
  &.is--next {
@@ -246,6 +247,9 @@
246
247
  }
247
248
  }
248
249
  }
250
+ &.is--range-selected {
251
+ background-color: var(--vxe-ui-font-primary-tinge-color);
252
+ }
249
253
  &.is--range-disabled {
250
254
  .vxe-date-panel--view-item-inner {
251
255
  color: var(--vxe-ui-input-disabled-color);
@@ -19,6 +19,12 @@ export namespace VxeDatePanelPropTypes {
19
19
  export type Size = VxeComponentSizeType
20
20
  export type ModelValue = string | number | Date | null
21
21
  export type ClassName = string
22
+ export type CellClassName = string | ((params: {
23
+ $datePanel: VxeDatePanelConstructor
24
+ type: string
25
+ viewType: VxeDatePanelDefines.DatePanelType
26
+ date: Date
27
+ }) => string)
22
28
  export type Type = 'date' | 'time' | 'datetime' | 'week' | 'month' | 'quarter' | 'year'
23
29
  export type Multiple = boolean
24
30
  export type LimitCount = string | number
@@ -68,6 +74,7 @@ export interface VxeDatePanelProps {
68
74
  size?: VxeDatePanelPropTypes.Size
69
75
  value?: VxeDatePanelPropTypes.ModelValue
70
76
  className?: VxeDatePanelPropTypes.ClassName
77
+ cellClassName?: VxeDatePanelPropTypes.CellClassName
71
78
  type?: VxeDatePanelPropTypes.Type
72
79
  multiple?: VxeDatePanelPropTypes.Multiple
73
80
  limitCount?: VxeDatePanelPropTypes.LimitCount
@@ -212,6 +212,7 @@ export interface VxeUploadProps {
212
212
  }
213
213
 
214
214
  export interface UploadPrivateComputed {
215
+ computeUrlProp: string
215
216
  }
216
217
  export interface VxeUploadPrivateComputed extends UploadPrivateComputed { }
217
218
 
@@ -251,6 +252,20 @@ export interface UploadMethods {
251
252
  * 用于 auto-upload 模式,手动调用上传附件;如果传 true,这包含未上传和上传失败的都会重新提交
252
253
  */
253
254
  submit(isFull?: boolean): Promise<void>
255
+ /**
256
+ * 清除所有文件
257
+ */
258
+ clear(): Promise<{
259
+ url: string
260
+ status: boolean
261
+ }[]>
262
+ /**
263
+ * 区别就是会触发对应的事件
264
+ */
265
+ clearByEvent(event: Event): Promise<{
266
+ url: string
267
+ status: boolean
268
+ }[]>
254
269
  /**
255
270
  * 获取更多弹窗的可视状态
256
271
  */
@@ -267,8 +282,28 @@ export interface UploadMethods {
267
282
  * 关闭更多弹窗
268
283
  */
269
284
  closeMore(): Promise<void>
285
+ /**
286
+ * 删除指定文件
287
+ */
288
+ remove(urlOrItem: string | VxeUploadDefines.FileObjItem | string[] | VxeUploadDefines.FileObjItem[] | null): Promise<{
289
+ url: string
290
+ status: boolean
291
+ }[]>
292
+ /**
293
+ * 区别就是会触发对应的事件
294
+ */
295
+ removeByEvent(event: Event, urlOrItem: string | VxeUploadDefines.FileObjItem | string[] | VxeUploadDefines.FileObjItem[] | null): Promise<{
296
+ url: string
297
+ status: boolean
298
+ }[]>
299
+ }
300
+ export interface VxeUploadMethods extends UploadMethods {
301
+ /**
302
+ * 内部方法
303
+ * @private
304
+ */
305
+ removeFileEvent(evnt: Event | null, item: VxeUploadDefines.FileObjItem, index: number): Promise<any>
270
306
  }
271
- export interface VxeUploadMethods extends UploadMethods { }
272
307
 
273
308
  export interface UploadPrivateMethods { }
274
309
  export interface VxeUploadPrivateMethods extends UploadPrivateMethods { }