btt-ui 1.0.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.
- package/README.md +16 -0
- package/es/_virtual/plugin-vue_export-helper.mjs +9 -0
- package/es/assets/ts/colormap.mjs +5073 -0
- package/es/assets/ts/hotMap.mjs +87 -0
- package/es/assets/ts/utils.mjs +46 -0
- package/es/index.mjs +68 -0
- package/es/src/button/index.mjs +7 -0
- package/es/src/button/src/button.mjs +59 -0
- package/es/src/button/src/style/index.css +212 -0
- package/es/src/button/src/style/variable.css +0 -0
- package/es/src/card/index.mjs +7 -0
- package/es/src/card/src/card.mjs +43 -0
- package/es/src/card/src/style/index.css +81 -0
- package/es/src/checkbox/index.mjs +9 -0
- package/es/src/checkbox/src/checkbox-group.mjs +36 -0
- package/es/src/checkbox/src/checkbox.mjs +33 -0
- package/es/src/checkbox/src/checkbox2.mjs +68 -0
- package/es/src/checkbox/src/style/index.css +111 -0
- package/es/src/collapse/index.mjs +9 -0
- package/es/src/collapse/src/collapse-item.mjs +82 -0
- package/es/src/collapse/src/collapse.mjs +13 -0
- package/es/src/collapse/src/collapse2.mjs +33 -0
- package/es/src/collapse/src/style/index.css +58 -0
- package/es/src/collapse-transition/index.mjs +7 -0
- package/es/src/collapse-transition/src/collapse-transition.mjs +41 -0
- package/es/src/collapse-transition/src/collapse-transition.vue_vue_type_style_index_0_lang.mjs +4 -0
- package/es/src/dialog/index.mjs +6 -0
- package/es/src/dialog/src/dialog.mjs +117 -0
- package/es/src/dialog/src/style/index.css +58 -0
- package/es/src/directives/bubble.mjs +48 -0
- package/es/src/directives/drag.mjs +121 -0
- package/es/src/directives/index.mjs +10 -0
- package/es/src/directives/zoomIn.mjs +43 -0
- package/es/src/drag/index.mjs +7 -0
- package/es/src/drag/src/drag.mjs +78 -0
- package/es/src/drag/src/style/index.css +25 -0
- package/es/src/echarts/index.mjs +7 -0
- package/es/src/echarts/src/index.mjs +113 -0
- package/es/src/echarts/src/style/index.css +30 -0
- package/es/src/echarts/src/ts/factory.mjs +281 -0
- package/es/src/hotmap/index.mjs +7 -0
- package/es/src/hotmap/src/index.mjs +67 -0
- package/es/src/hotmap/src/style/index.css +0 -0
- package/es/src/icon/index.mjs +9 -0
- package/es/src/icon/src/icon.mjs +66 -0
- package/es/src/icon/src/icon2.mjs +86 -0
- package/es/src/icon/src/style/index.css +85 -0
- package/es/src/icon/src/svg/alarm.mjs +4 -0
- package/es/src/icon/src/svg/arrow-down.mjs +4 -0
- package/es/src/icon/src/svg/arrow-left.mjs +4 -0
- package/es/src/icon/src/svg/arrow-right.mjs +4 -0
- package/es/src/icon/src/svg/arrow-up.mjs +4 -0
- package/es/src/icon/src/svg/baocun.mjs +4 -0
- package/es/src/icon/src/svg/caogaoxiang.mjs +4 -0
- package/es/src/icon/src/svg/card.mjs +4 -0
- package/es/src/icon/src/svg/caret-right.mjs +4 -0
- package/es/src/icon/src/svg/chakan.mjs +45 -0
- package/es/src/icon/src/svg/change.mjs +4 -0
- package/es/src/icon/src/svg/chongzhi.mjs +18 -0
- package/es/src/icon/src/svg/circle-close.mjs +4 -0
- package/es/src/icon/src/svg/close.mjs +4 -0
- package/es/src/icon/src/svg/delete.mjs +4 -0
- package/es/src/icon/src/svg/detail.mjs +4 -0
- package/es/src/icon/src/svg/dianhua.mjs +22 -0
- package/es/src/icon/src/svg/disabled.mjs +4 -0
- package/es/src/icon/src/svg/down.mjs +4 -0
- package/es/src/icon/src/svg/download.mjs +12 -0
- package/es/src/icon/src/svg/edit.mjs +4 -0
- package/es/src/icon/src/svg/editor.mjs +4 -0
- package/es/src/icon/src/svg/enable.mjs +4 -0
- package/es/src/icon/src/svg/exit.mjs +4 -0
- package/es/src/icon/src/svg/file-open.mjs +4 -0
- package/es/src/icon/src/svg/handle.mjs +4 -0
- package/es/src/icon/src/svg/lahei.mjs +20 -0
- package/es/src/icon/src/svg/max.mjs +4 -0
- package/es/src/icon/src/svg/measure.mjs +4 -0
- package/es/src/icon/src/svg/min.mjs +4 -0
- package/es/src/icon/src/svg/nan.mjs +17 -0
- package/es/src/icon/src/svg/no.mjs +16 -0
- package/es/src/icon/src/svg/nv.mjs +19 -0
- package/es/src/icon/src/svg/people.mjs +4 -0
- package/es/src/icon/src/svg/player.mjs +19 -0
- package/es/src/icon/src/svg/plus.mjs +4 -0
- package/es/src/icon/src/svg/preview.mjs +44 -0
- package/es/src/icon/src/svg/print.mjs +12 -0
- package/es/src/icon/src/svg/printmb.mjs +4 -0
- package/es/src/icon/src/svg/publish.mjs +4 -0
- package/es/src/icon/src/svg/qiye.mjs +4 -0
- package/es/src/icon/src/svg/quxiao.mjs +4 -0
- package/es/src/icon/src/svg/record.mjs +4 -0
- package/es/src/icon/src/svg/refresh.mjs +4 -0
- package/es/src/icon/src/svg/reset.mjs +4 -0
- package/es/src/icon/src/svg/risk.mjs +4 -0
- package/es/src/icon/src/svg/search.mjs +4 -0
- package/es/src/icon/src/svg/set.mjs +4 -0
- package/es/src/icon/src/svg/shenhe.mjs +4 -0
- package/es/src/icon/src/svg/shenqing.mjs +4 -0
- package/es/src/icon/src/svg/tongbu.mjs +18 -0
- package/es/src/icon/src/svg/up.mjs +4 -0
- package/es/src/icon/src/svg/upload.mjs +9 -0
- package/es/src/icon/src/svg/urging.mjs +4 -0
- package/es/src/icon/src/svg/yes.mjs +18 -0
- package/es/src/icon/src/svg/yuyue.mjs +4 -0
- package/es/src/index.mjs +80 -0
- package/es/src/input/index.mjs +7 -0
- package/es/src/input/src/input.mjs +119 -0
- package/es/src/input/src/style/index.css +52 -0
- package/es/src/link/index.mjs +6 -0
- package/es/src/link/link.mjs +30 -0
- package/es/src/link/style/index.css +44 -0
- package/es/src/link/types.mjs +14 -0
- package/es/src/overlay/index.mjs +7 -0
- package/es/src/overlay/src/overlay.mjs +36 -0
- package/es/src/overlay/src/style/index.css +19 -0
- package/es/src/popper/index.mjs +7 -0
- package/es/src/popper/src/forward-ref.mjs +27 -0
- package/es/src/popper/src/popper.mjs +93 -0
- package/es/src/popper/src/popper2.mjs +100 -0
- package/es/src/popper/src/style/index.css +67 -0
- package/es/src/popper/src/trigger.mjs +68 -0
- package/es/src/popper/src/use-floating.mjs +38 -0
- package/es/src/popper/src/use-nowrap.mjs +13 -0
- package/es/src/popper/src/use-popper-container.mjs +14 -0
- package/es/src/scroll/index.mjs +6 -0
- package/es/src/scroll/src/scroll.mjs +88 -0
- package/es/src/scroll/src/style/index.css +46 -0
- package/es/src/select/index.mjs +9 -0
- package/es/src/select/src/option.mjs +30 -0
- package/es/src/select/src/select.mjs +32 -0
- package/es/src/select/src/select2.mjs +89 -0
- package/es/src/select/src/style/index.css +82 -0
- package/es/src/shake/index.mjs +6 -0
- package/es/src/shake/shake.mjs +25 -0
- package/es/src/shake/style/index.css +20 -0
- package/es/src/sign/index.mjs +7 -0
- package/es/src/sign/src/sign.mjs +137 -0
- package/es/src/sign/src/style/index.css +0 -0
- package/es/src/style/common.css +2518 -0
- package/es/src/style/css-variables.css +88 -0
- package/es/src/style/index.min.css +2254 -0
- package/es/src/style/previewimg.css +109 -0
- package/es/src/style/var.css +5 -0
- package/es/src/style/zoomimg.css +36 -0
- package/es/src/switch/index.mjs +7 -0
- package/es/src/switch/src/style/index.css +96 -0
- package/es/src/switch/src/switch.mjs +79 -0
- package/es/src/tableScroll/index.mjs +7 -0
- package/es/src/tableScroll/src/index.mjs +235 -0
- package/es/src/timeline/index.mjs +7 -0
- package/es/src/timeline/src/style/index.css +63 -0
- package/es/src/timeline/src/timeline.mjs +96 -0
- package/es/src/toast/index.mjs +6 -0
- package/es/src/toast/style/index.css +13 -0
- package/es/src/toast/toast.mjs +17 -0
- package/es/src/tooltip/index.mjs +7 -0
- package/es/src/tooltip/src/style/index.css +4 -0
- package/es/src/tooltip/src/tooltip.mjs +50 -0
- package/es/src/tooltip/src/tooltip2.mjs +22 -0
- package/es/src/tree/index.mjs +7 -0
- package/es/src/tree/src/style/index.css +154 -0
- package/es/src/tree/src/tree.mjs +233 -0
- package/es/src/tree/src/tree2.mjs +67 -0
- package/es/src/tree/src/use-drag.mjs +52 -0
- package/es/src/upload/dragger.mjs +51 -0
- package/es/src/upload/index.mjs +6 -0
- package/es/src/upload/style/drag.css +36 -0
- package/es/src/upload/style/index.css +40 -0
- package/es/src/upload/upload.mjs +76 -0
- package/es/src/uploadFile/index.mjs +6 -0
- package/es/src/uploadFile/src/style/index.css +131 -0
- package/es/src/uploadFile/src/uploadFile.mjs +209 -0
- package/es/src/uploadFile/src/uploadFile2.mjs +17 -0
- package/es/src/wheel/index.mjs +6 -0
- package/es/src/wheel/style/index.css +5 -0
- package/es/src/wheel/wheel.mjs +45 -0
- package/es/src/xgplayer/src/style/index.css +6 -0
- package/es/style.css +1 -0
- package/lib/_virtual/plugin-vue_export-helper.js +1 -0
- package/lib/assets/ts/colormap.js +1 -0
- package/lib/assets/ts/hotMap.js +1 -0
- package/lib/assets/ts/utils.js +1 -0
- package/lib/index.js +1 -0
- package/lib/src/button/index.js +1 -0
- package/lib/src/button/src/button.js +1 -0
- package/lib/src/button/src/style/index.css +212 -0
- package/lib/src/button/src/style/variable.css +0 -0
- package/lib/src/card/index.js +1 -0
- package/lib/src/card/src/card.js +1 -0
- package/lib/src/card/src/style/index.css +81 -0
- package/lib/src/checkbox/index.js +1 -0
- package/lib/src/checkbox/src/checkbox-group.js +1 -0
- package/lib/src/checkbox/src/checkbox.js +1 -0
- package/lib/src/checkbox/src/checkbox2.js +1 -0
- package/lib/src/checkbox/src/style/index.css +111 -0
- package/lib/src/collapse/index.js +1 -0
- package/lib/src/collapse/src/collapse-item.js +1 -0
- package/lib/src/collapse/src/collapse.js +1 -0
- package/lib/src/collapse/src/collapse2.js +1 -0
- package/lib/src/collapse/src/style/index.css +58 -0
- package/lib/src/collapse-transition/index.js +1 -0
- package/lib/src/collapse-transition/src/collapse-transition.js +1 -0
- package/lib/src/collapse-transition/src/collapse-transition.vue_vue_type_style_index_0_lang.js +1 -0
- package/lib/src/dialog/index.js +1 -0
- package/lib/src/dialog/src/dialog.js +1 -0
- package/lib/src/dialog/src/style/index.css +58 -0
- package/lib/src/directives/bubble.js +1 -0
- package/lib/src/directives/drag.js +1 -0
- package/lib/src/directives/index.js +1 -0
- package/lib/src/directives/zoomIn.js +1 -0
- package/lib/src/drag/index.js +1 -0
- package/lib/src/drag/src/drag.js +1 -0
- package/lib/src/drag/src/style/index.css +25 -0
- package/lib/src/echarts/index.js +1 -0
- package/lib/src/echarts/src/index.js +1 -0
- package/lib/src/echarts/src/style/index.css +30 -0
- package/lib/src/echarts/src/ts/factory.js +1 -0
- package/lib/src/hotmap/index.js +1 -0
- package/lib/src/hotmap/src/index.js +1 -0
- package/lib/src/hotmap/src/style/index.css +0 -0
- package/lib/src/icon/index.js +1 -0
- package/lib/src/icon/src/icon.js +1 -0
- package/lib/src/icon/src/icon2.js +1 -0
- package/lib/src/icon/src/style/index.css +85 -0
- package/lib/src/icon/src/svg/alarm.js +1 -0
- package/lib/src/icon/src/svg/arrow-down.js +1 -0
- package/lib/src/icon/src/svg/arrow-left.js +1 -0
- package/lib/src/icon/src/svg/arrow-right.js +1 -0
- package/lib/src/icon/src/svg/arrow-up.js +1 -0
- package/lib/src/icon/src/svg/baocun.js +1 -0
- package/lib/src/icon/src/svg/caogaoxiang.js +1 -0
- package/lib/src/icon/src/svg/card.js +1 -0
- package/lib/src/icon/src/svg/caret-right.js +1 -0
- package/lib/src/icon/src/svg/chakan.js +42 -0
- package/lib/src/icon/src/svg/change.js +1 -0
- package/lib/src/icon/src/svg/chongzhi.js +15 -0
- package/lib/src/icon/src/svg/circle-close.js +1 -0
- package/lib/src/icon/src/svg/close.js +1 -0
- package/lib/src/icon/src/svg/delete.js +1 -0
- package/lib/src/icon/src/svg/detail.js +1 -0
- package/lib/src/icon/src/svg/dianhua.js +19 -0
- package/lib/src/icon/src/svg/disabled.js +1 -0
- package/lib/src/icon/src/svg/down.js +1 -0
- package/lib/src/icon/src/svg/download.js +9 -0
- package/lib/src/icon/src/svg/edit.js +1 -0
- package/lib/src/icon/src/svg/editor.js +1 -0
- package/lib/src/icon/src/svg/enable.js +1 -0
- package/lib/src/icon/src/svg/exit.js +1 -0
- package/lib/src/icon/src/svg/file-open.js +1 -0
- package/lib/src/icon/src/svg/handle.js +1 -0
- package/lib/src/icon/src/svg/lahei.js +17 -0
- package/lib/src/icon/src/svg/max.js +1 -0
- package/lib/src/icon/src/svg/measure.js +1 -0
- package/lib/src/icon/src/svg/min.js +1 -0
- package/lib/src/icon/src/svg/nan.js +14 -0
- package/lib/src/icon/src/svg/no.js +13 -0
- package/lib/src/icon/src/svg/nv.js +16 -0
- package/lib/src/icon/src/svg/people.js +1 -0
- package/lib/src/icon/src/svg/player.js +16 -0
- package/lib/src/icon/src/svg/plus.js +1 -0
- package/lib/src/icon/src/svg/preview.js +41 -0
- package/lib/src/icon/src/svg/print.js +9 -0
- package/lib/src/icon/src/svg/printmb.js +1 -0
- package/lib/src/icon/src/svg/publish.js +1 -0
- package/lib/src/icon/src/svg/qiye.js +1 -0
- package/lib/src/icon/src/svg/quxiao.js +1 -0
- package/lib/src/icon/src/svg/record.js +1 -0
- package/lib/src/icon/src/svg/refresh.js +1 -0
- package/lib/src/icon/src/svg/reset.js +1 -0
- package/lib/src/icon/src/svg/risk.js +1 -0
- package/lib/src/icon/src/svg/search.js +1 -0
- package/lib/src/icon/src/svg/set.js +1 -0
- package/lib/src/icon/src/svg/shenhe.js +1 -0
- package/lib/src/icon/src/svg/shenqing.js +1 -0
- package/lib/src/icon/src/svg/tongbu.js +15 -0
- package/lib/src/icon/src/svg/up.js +1 -0
- package/lib/src/icon/src/svg/upload.js +6 -0
- package/lib/src/icon/src/svg/urging.js +1 -0
- package/lib/src/icon/src/svg/yes.js +15 -0
- package/lib/src/icon/src/svg/yuyue.js +1 -0
- package/lib/src/index.js +1 -0
- package/lib/src/input/index.js +1 -0
- package/lib/src/input/src/input.js +1 -0
- package/lib/src/input/src/style/index.css +52 -0
- package/lib/src/link/index.js +1 -0
- package/lib/src/link/link.js +1 -0
- package/lib/src/link/style/index.css +44 -0
- package/lib/src/link/types.js +1 -0
- package/lib/src/overlay/index.js +1 -0
- package/lib/src/overlay/src/overlay.js +1 -0
- package/lib/src/overlay/src/style/index.css +19 -0
- package/lib/src/popper/index.js +1 -0
- package/lib/src/popper/src/forward-ref.js +1 -0
- package/lib/src/popper/src/popper.js +1 -0
- package/lib/src/popper/src/popper2.js +1 -0
- package/lib/src/popper/src/style/index.css +67 -0
- package/lib/src/popper/src/trigger.js +1 -0
- package/lib/src/popper/src/use-floating.js +1 -0
- package/lib/src/popper/src/use-nowrap.js +1 -0
- package/lib/src/popper/src/use-popper-container.js +1 -0
- package/lib/src/scroll/index.js +1 -0
- package/lib/src/scroll/src/scroll.js +1 -0
- package/lib/src/scroll/src/style/index.css +46 -0
- package/lib/src/select/index.js +1 -0
- package/lib/src/select/src/option.js +1 -0
- package/lib/src/select/src/select.js +1 -0
- package/lib/src/select/src/select2.js +1 -0
- package/lib/src/select/src/style/index.css +82 -0
- package/lib/src/shake/index.js +1 -0
- package/lib/src/shake/shake.js +1 -0
- package/lib/src/shake/style/index.css +20 -0
- package/lib/src/sign/index.js +1 -0
- package/lib/src/sign/src/sign.js +1 -0
- package/lib/src/sign/src/style/index.css +0 -0
- package/lib/src/style/common.css +2518 -0
- package/lib/src/style/css-variables.css +88 -0
- package/lib/src/style/index.min.css +2254 -0
- package/lib/src/style/previewimg.css +109 -0
- package/lib/src/style/var.css +5 -0
- package/lib/src/style/zoomimg.css +36 -0
- package/lib/src/switch/index.js +1 -0
- package/lib/src/switch/src/style/index.css +96 -0
- package/lib/src/switch/src/switch.js +1 -0
- package/lib/src/tableScroll/index.js +1 -0
- package/lib/src/tableScroll/src/index.js +1 -0
- package/lib/src/timeline/index.js +1 -0
- package/lib/src/timeline/src/style/index.css +63 -0
- package/lib/src/timeline/src/timeline.js +1 -0
- package/lib/src/toast/index.js +1 -0
- package/lib/src/toast/style/index.css +13 -0
- package/lib/src/toast/toast.js +1 -0
- package/lib/src/tooltip/index.js +1 -0
- package/lib/src/tooltip/src/style/index.css +4 -0
- package/lib/src/tooltip/src/tooltip.js +1 -0
- package/lib/src/tooltip/src/tooltip2.js +1 -0
- package/lib/src/tree/index.js +1 -0
- package/lib/src/tree/src/style/index.css +154 -0
- package/lib/src/tree/src/tree.js +1 -0
- package/lib/src/tree/src/tree2.js +1 -0
- package/lib/src/tree/src/use-drag.js +1 -0
- package/lib/src/upload/dragger.js +1 -0
- package/lib/src/upload/index.js +1 -0
- package/lib/src/upload/style/drag.css +36 -0
- package/lib/src/upload/style/index.css +40 -0
- package/lib/src/upload/upload.js +1 -0
- package/lib/src/uploadFile/index.js +1 -0
- package/lib/src/uploadFile/src/style/index.css +131 -0
- package/lib/src/uploadFile/src/uploadFile.js +1 -0
- package/lib/src/uploadFile/src/uploadFile2.js +1 -0
- package/lib/src/wheel/index.js +1 -0
- package/lib/src/wheel/style/index.css +5 -0
- package/lib/src/wheel/wheel.js +1 -0
- package/lib/src/xgplayer/src/style/index.css +6 -0
- package/package.json +31 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ref as N } from "vue";
|
|
2
|
+
import { isFunction as P } from "../../../assets/ts/utils.mjs";
|
|
3
|
+
const I = (n, g, i) => {
|
|
4
|
+
const o = N({
|
|
5
|
+
draggingNode: {},
|
|
6
|
+
dropNode: {}
|
|
7
|
+
});
|
|
8
|
+
function t(a, r) {
|
|
9
|
+
const { draggingNode: d, dropNode: e } = o.value;
|
|
10
|
+
g(a, d, e, r);
|
|
11
|
+
}
|
|
12
|
+
function f() {
|
|
13
|
+
var u, v;
|
|
14
|
+
const { draggingNode: a, dropNode: r } = o.value, d = ((u = a == null ? void 0 : a.parent) == null ? void 0 : u.data) || a.store, e = ((v = r == null ? void 0 : r.parent) == null ? void 0 : v.data) || a.store, h = d === e, s = d.children.findIndex((l) => l === a.data), c = e.children.findIndex((l) => l === r.data);
|
|
15
|
+
h ? [e.children[s], e.children[c]] = [e.children[c], e.children[s]] : (d.children.splice(s, 1), e.children.push(a.data)), i();
|
|
16
|
+
}
|
|
17
|
+
function D(a) {
|
|
18
|
+
return {
|
|
19
|
+
onDragstart(r) {
|
|
20
|
+
r.stopPropagation(), o.value.draggingNode = a, o.value.dropNode = a, t("node-drag-start", r);
|
|
21
|
+
},
|
|
22
|
+
onDragenter(r) {
|
|
23
|
+
r.stopPropagation(), p(r.target, "is-dragging"), o.value.dropNode = a, t("node-drag-enter", r);
|
|
24
|
+
},
|
|
25
|
+
onDragleave(r) {
|
|
26
|
+
r.stopPropagation(), p(r.target, "is-dragging", !0), o.value.dropNode = a, t("node-drag-leave", r);
|
|
27
|
+
},
|
|
28
|
+
ondragover(r) {
|
|
29
|
+
r.preventDefault(), r.stopPropagation(), o.value.dropNode = a, t("node-drag-over", r);
|
|
30
|
+
},
|
|
31
|
+
ondragend(r) {
|
|
32
|
+
r.stopPropagation(), o.value.dropNode = a, t("node-drag-end", r);
|
|
33
|
+
},
|
|
34
|
+
onDrop(r) {
|
|
35
|
+
if (r.stopPropagation(), o.value.dropNode = a, p(r.target, "is-dragging", !0), P(n.allowDrop) && !n.allowDrop(o.value.draggingNode, o.value.dropNode, ""))
|
|
36
|
+
return !1;
|
|
37
|
+
f(), t("node-drop", r);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
createDragEvents: D,
|
|
43
|
+
dragState: o
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
function p(n, g, i = !1) {
|
|
47
|
+
i ? n.classList.remove(g) : n.classList.add(g);
|
|
48
|
+
}
|
|
49
|
+
export {
|
|
50
|
+
p as addClass,
|
|
51
|
+
I as useDrag
|
|
52
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { defineComponent as i, ref as a, onMounted as p, openBlock as m, createElementBlock as v, normalizeClass as g, createElementVNode as l, createVNode as _, unref as F, toDisplayString as k, createTextVNode as E } from "vue";
|
|
2
|
+
import "./style/drag.css";
|
|
3
|
+
import { Icon as y } from "../icon/index.mjs";
|
|
4
|
+
const A = { class: "k-upload-content" }, B = /* @__PURE__ */ l("div", { class: "k-upload-dragger-text" }, [
|
|
5
|
+
/* @__PURE__ */ E("\u5C06\u6587\u4EF6\u62D6\u5230\u6B64\u5904\u6216"),
|
|
6
|
+
/* @__PURE__ */ l("em", null, "\u70B9\u51FB\u4E0A\u4F20")
|
|
7
|
+
], -1), C = { class: "file-formatter" }, D = i({
|
|
8
|
+
name: "dragger"
|
|
9
|
+
}), N = i({
|
|
10
|
+
...D,
|
|
11
|
+
props: {
|
|
12
|
+
accept: {
|
|
13
|
+
type: String,
|
|
14
|
+
default: ""
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
emits: ["getFilesList", "fileUpload"],
|
|
18
|
+
setup(d, { emit: c }) {
|
|
19
|
+
const r = c, o = a(), u = a(!1), t = a(null), s = a([]);
|
|
20
|
+
p(() => {
|
|
21
|
+
o.value.addEventListener("drop", (e) => {
|
|
22
|
+
e.preventDefault(), s.value.push(...Array.from(e.dataTransfer.files)), r("getFilesList", s.value);
|
|
23
|
+
}, !1), o.value.addEventListener("dragover", f, !1);
|
|
24
|
+
});
|
|
25
|
+
const f = (e) => {
|
|
26
|
+
u.value = !0, t.value !== null && clearTimeout(t.value), t.value = window.setTimeout(() => {
|
|
27
|
+
u.value = !1, t.value = null;
|
|
28
|
+
}, 100), e.stopPropagation(), e.preventDefault();
|
|
29
|
+
};
|
|
30
|
+
return (e, n) => (m(), v("div", {
|
|
31
|
+
class: g(["k-upload-dragger", { ["k-upload-draggerenter"]: u.value }]),
|
|
32
|
+
ref_key: "fileArea",
|
|
33
|
+
ref: o,
|
|
34
|
+
onClick: n[0] || (n[0] = (L) => r("fileUpload"))
|
|
35
|
+
}, [
|
|
36
|
+
l("div", A, [
|
|
37
|
+
_(F(y), {
|
|
38
|
+
class: "k-upload-icon",
|
|
39
|
+
name: "file-open",
|
|
40
|
+
size: 60,
|
|
41
|
+
style: { margin: "0 auto" }
|
|
42
|
+
}),
|
|
43
|
+
B
|
|
44
|
+
]),
|
|
45
|
+
l("div", C, "\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u6709\uFF1A" + k(d.accept), 1)
|
|
46
|
+
], 2));
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
export {
|
|
50
|
+
N as default
|
|
51
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
.k-upload-dragger {
|
|
2
|
+
background-color: #fff;
|
|
3
|
+
border: 1px dashed #d9d9d9;
|
|
4
|
+
border-radius: 6px;
|
|
5
|
+
box-sizing: border-box;
|
|
6
|
+
width: 360px;
|
|
7
|
+
height: 180px;
|
|
8
|
+
display: flex;
|
|
9
|
+
cursor: pointer;
|
|
10
|
+
align-items: center;
|
|
11
|
+
justify-content: center;
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
}
|
|
14
|
+
.k-upload-dragger:hover {
|
|
15
|
+
border: 1px dashed #409eff;
|
|
16
|
+
}
|
|
17
|
+
.k-upload-dragger .k-upload-content {
|
|
18
|
+
text-align: center;
|
|
19
|
+
color: #606266;
|
|
20
|
+
}
|
|
21
|
+
.k-upload-dragger .k-upload-content .k-upload-icon {
|
|
22
|
+
font-size: 20px;
|
|
23
|
+
}
|
|
24
|
+
.k-upload-dragger .k-upload-content em {
|
|
25
|
+
color: #409eff;
|
|
26
|
+
font-style: normal;
|
|
27
|
+
}
|
|
28
|
+
.k-upload-dragger .file-formatter {
|
|
29
|
+
font-size: 12px;
|
|
30
|
+
color: gray;
|
|
31
|
+
margin-top: 6px;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.k-upload-draggerenter {
|
|
35
|
+
border: 1px dashed #409eff;
|
|
36
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
.k-upload .k-upload-list .k-upload-list_item:first-child {
|
|
2
|
+
margin-top: 10px;
|
|
3
|
+
}
|
|
4
|
+
.k-upload .k-upload-list .k-upload-list_item {
|
|
5
|
+
transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);
|
|
6
|
+
font-size: 14px;
|
|
7
|
+
color: #606266;
|
|
8
|
+
line-height: 1.8;
|
|
9
|
+
margin-top: 5px;
|
|
10
|
+
position: relative;
|
|
11
|
+
box-sizing: border-box;
|
|
12
|
+
border-radius: 4px;
|
|
13
|
+
width: 100%;
|
|
14
|
+
}
|
|
15
|
+
.k-upload .k-upload-list .k-upload-list_item .k-upload-list_item-name {
|
|
16
|
+
color: #606266;
|
|
17
|
+
display: block;
|
|
18
|
+
margin-right: 40px;
|
|
19
|
+
overflow: hidden;
|
|
20
|
+
padding-left: 4px;
|
|
21
|
+
text-overflow: ellipsis;
|
|
22
|
+
transition: color 0.3s;
|
|
23
|
+
white-space: nowrap;
|
|
24
|
+
}
|
|
25
|
+
.k-upload .k-upload-list .k-upload-list_item .k-upload-list_item-status-label {
|
|
26
|
+
position: absolute;
|
|
27
|
+
right: 5px;
|
|
28
|
+
top: 5px;
|
|
29
|
+
line-height: inherit;
|
|
30
|
+
}
|
|
31
|
+
.k-upload .k-upload-list .k-upload-list_item:hover {
|
|
32
|
+
cursor: pointer;
|
|
33
|
+
background: #f5f7fa;
|
|
34
|
+
}
|
|
35
|
+
.k-upload .k-upload-list .k-upload-list_item:hover .k-upload-list_item-name {
|
|
36
|
+
color: #409eff;
|
|
37
|
+
}
|
|
38
|
+
.k-upload .k-upload-dragger-text {
|
|
39
|
+
margin-top: 6px;
|
|
40
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { defineComponent as m, ref as d, openBlock as l, createElementBlock as i, withDirectives as F, createElementVNode as c, vShow as L, renderSlot as C, createBlock as B, Fragment as w, renderList as I, toDisplayString as N, createVNode as S, unref as V, createCommentVNode as $ } from "vue";
|
|
2
|
+
import "./style/index.css";
|
|
3
|
+
import { Icon as A } from "../icon/index.mjs";
|
|
4
|
+
import D from "./dragger.mjs";
|
|
5
|
+
const E = { class: "k-upload" }, U = ["multiple", "accept"], b = {
|
|
6
|
+
key: 2,
|
|
7
|
+
class: "k-upload-list"
|
|
8
|
+
}, G = { class: "k-upload-list_item-name" }, j = { class: "k-upload-list_item-status-label" }, q = m({
|
|
9
|
+
name: "k-upload"
|
|
10
|
+
}), M = m({
|
|
11
|
+
...q,
|
|
12
|
+
props: {
|
|
13
|
+
multiple: { type: Boolean },
|
|
14
|
+
accept: {},
|
|
15
|
+
drag: { type: Boolean },
|
|
16
|
+
data: {}
|
|
17
|
+
},
|
|
18
|
+
emits: ["getFilesList"],
|
|
19
|
+
setup(_, { expose: f, emit: k }) {
|
|
20
|
+
var p;
|
|
21
|
+
const s = _, n = d(), a = k, e = d((p = s.data) != null ? p : []), r = () => {
|
|
22
|
+
n.value.click();
|
|
23
|
+
}, v = (t) => {
|
|
24
|
+
const o = t.target.files;
|
|
25
|
+
!o || (s.multiple ? e.value.push(...Array.from(o)) : e.value = [...o], a("getFilesList", e.value));
|
|
26
|
+
}, g = (t) => {
|
|
27
|
+
e.value.splice(t, 1), a("getFilesList", e.value);
|
|
28
|
+
}, h = (t) => {
|
|
29
|
+
e.value = t, a("getFilesList", t);
|
|
30
|
+
};
|
|
31
|
+
return f({
|
|
32
|
+
clear: () => {
|
|
33
|
+
e.value = new Array();
|
|
34
|
+
}
|
|
35
|
+
}), (t, o) => (l(), i("div", E, [
|
|
36
|
+
F(c("input", {
|
|
37
|
+
type: "file",
|
|
38
|
+
multiple: s.multiple,
|
|
39
|
+
accept: s.accept,
|
|
40
|
+
ref_key: "kIpt",
|
|
41
|
+
ref: n,
|
|
42
|
+
onChange: v
|
|
43
|
+
}, null, 40, U), [
|
|
44
|
+
[L, !1]
|
|
45
|
+
]),
|
|
46
|
+
s.drag ? (l(), B(D, {
|
|
47
|
+
key: 1,
|
|
48
|
+
onGetFilesList: h,
|
|
49
|
+
onFileUpload: r,
|
|
50
|
+
accept: t.accept
|
|
51
|
+
}, null, 8, ["accept"])) : (l(), i("div", {
|
|
52
|
+
key: 0,
|
|
53
|
+
onClick: r
|
|
54
|
+
}, [
|
|
55
|
+
C(t.$slots, "default")
|
|
56
|
+
])),
|
|
57
|
+
e.value.length > 0 ? (l(), i("div", b, [
|
|
58
|
+
(l(!0), i(w, null, I(e.value, (y, u) => (l(), i("div", {
|
|
59
|
+
class: "k-upload-list_item",
|
|
60
|
+
key: u
|
|
61
|
+
}, [
|
|
62
|
+
c("div", G, N(y.name), 1),
|
|
63
|
+
c("div", j, [
|
|
64
|
+
S(V(A), {
|
|
65
|
+
name: "delete",
|
|
66
|
+
onClick: (x) => g(u)
|
|
67
|
+
}, null, 8, ["onClick"])
|
|
68
|
+
])
|
|
69
|
+
]))), 128))
|
|
70
|
+
])) : $("", !0)
|
|
71
|
+
]));
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
export {
|
|
75
|
+
M as default
|
|
76
|
+
};
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
.k-upload-file-wrapper {
|
|
2
|
+
--bg-li:#edebeb;
|
|
3
|
+
--text-li:#000;
|
|
4
|
+
--icon-close-color:#e50000;
|
|
5
|
+
--bg-li-hover:#c7d3ed;
|
|
6
|
+
--li-hover-border-color:#c7d3ed;
|
|
7
|
+
--upload-btn-border-color:#bdb4b4;
|
|
8
|
+
--border-color:#e1e1e1;
|
|
9
|
+
--error-text-color:red;
|
|
10
|
+
}
|
|
11
|
+
.k-upload-file-wrapper .k-image-list {
|
|
12
|
+
display: flex;
|
|
13
|
+
gap: 10px;
|
|
14
|
+
flex-wrap: wrap;
|
|
15
|
+
}
|
|
16
|
+
.k-upload-file-wrapper .k-image-list li {
|
|
17
|
+
height: 60px;
|
|
18
|
+
width: 60px;
|
|
19
|
+
position: relative;
|
|
20
|
+
border: 1px solid transparent;
|
|
21
|
+
margin-bottom: 16px;
|
|
22
|
+
cursor: pointer;
|
|
23
|
+
}
|
|
24
|
+
.k-upload-file-wrapper .k-image-list li .img-wrapper {
|
|
25
|
+
width: 100%;
|
|
26
|
+
height: 100%;
|
|
27
|
+
overflow: hidden;
|
|
28
|
+
display: flex;
|
|
29
|
+
justify-content: center;
|
|
30
|
+
align-items: center;
|
|
31
|
+
}
|
|
32
|
+
.k-upload-file-wrapper .k-image-list li img {
|
|
33
|
+
width: 100%;
|
|
34
|
+
}
|
|
35
|
+
.k-upload-file-wrapper .k-image-list li .k-file-icon-close {
|
|
36
|
+
position: absolute;
|
|
37
|
+
background-color: #cf0707;
|
|
38
|
+
width: 18px;
|
|
39
|
+
height: 18px;
|
|
40
|
+
display: flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
justify-content: center;
|
|
43
|
+
border-radius: 50%;
|
|
44
|
+
top: -8px;
|
|
45
|
+
right: -8px;
|
|
46
|
+
color: #fff;
|
|
47
|
+
cursor: pointer;
|
|
48
|
+
opacity: 0;
|
|
49
|
+
transition: all 0.3s;
|
|
50
|
+
}
|
|
51
|
+
.k-upload-file-wrapper .k-image-list.can-edit {
|
|
52
|
+
transition: all 0.3s;
|
|
53
|
+
}
|
|
54
|
+
.k-upload-file-wrapper .k-image-list.can-edit li:hover {
|
|
55
|
+
border: 1px solid var(--li-hover-border-color);
|
|
56
|
+
}
|
|
57
|
+
.k-upload-file-wrapper .k-image-list.can-edit li:hover .k-file-icon-close {
|
|
58
|
+
opacity: 1;
|
|
59
|
+
}
|
|
60
|
+
.k-upload-file-wrapper .k-file-list li {
|
|
61
|
+
display: flex;
|
|
62
|
+
justify-content: space-between;
|
|
63
|
+
padding: 4px 10px;
|
|
64
|
+
background-color: var(--bg-li);
|
|
65
|
+
margin-bottom: 10px;
|
|
66
|
+
color: var(--text-li);
|
|
67
|
+
transition: all 0.3s;
|
|
68
|
+
border: 1px solid transparent;
|
|
69
|
+
align-items: center;
|
|
70
|
+
}
|
|
71
|
+
.k-upload-file-wrapper .k-file-list li .k-file-icon-close {
|
|
72
|
+
color: var(--icon-close-color);
|
|
73
|
+
opacity: 0;
|
|
74
|
+
transition: all 0.18s;
|
|
75
|
+
transform: scale(0);
|
|
76
|
+
}
|
|
77
|
+
.k-upload-file-wrapper .k-file-list.can-edit li:hover {
|
|
78
|
+
border: 1px solid var(--li-hover-border-color);
|
|
79
|
+
background-color: var(--bg-li-hover);
|
|
80
|
+
}
|
|
81
|
+
.k-upload-file-wrapper .k-file-list.can-edit li:hover .k-file-icon-close {
|
|
82
|
+
cursor: pointer;
|
|
83
|
+
opacity: 1;
|
|
84
|
+
transform: scale(1);
|
|
85
|
+
}
|
|
86
|
+
.k-upload-file-wrapper .k-file-extensions-desc {
|
|
87
|
+
font-size: 12px;
|
|
88
|
+
color: #a19393;
|
|
89
|
+
margin-top: 10px;
|
|
90
|
+
}
|
|
91
|
+
.k-upload-file-wrapper .btn-file-image {
|
|
92
|
+
display: inline-flex;
|
|
93
|
+
width: 100px;
|
|
94
|
+
height: 100px;
|
|
95
|
+
display: flex;
|
|
96
|
+
justify-content: center;
|
|
97
|
+
align-items: center;
|
|
98
|
+
border: 1px dashed var(--border-color);
|
|
99
|
+
margin-bottom: 10px;
|
|
100
|
+
transition: all 0.3s;
|
|
101
|
+
overflow: hidden;
|
|
102
|
+
}
|
|
103
|
+
.k-upload-file-wrapper .btn-file-image img {
|
|
104
|
+
width: 100%;
|
|
105
|
+
}
|
|
106
|
+
.k-upload-file-wrapper .btn-file-image .k-icon {
|
|
107
|
+
color: var(--border-color);
|
|
108
|
+
font-size: 30px;
|
|
109
|
+
transition: all 0.3s;
|
|
110
|
+
}
|
|
111
|
+
.k-upload-file-wrapper .btn-file-image:hover {
|
|
112
|
+
border-color: var(--bg-li-hover);
|
|
113
|
+
}
|
|
114
|
+
.k-upload-file-wrapper .btn-file-image:hover .k-icon {
|
|
115
|
+
color: var(--bg-li-hover);
|
|
116
|
+
}
|
|
117
|
+
.k-upload-file-wrapper .error-tip {
|
|
118
|
+
color: var(--error-text-color);
|
|
119
|
+
}
|
|
120
|
+
.k-upload-file-wrapper .upload-btn-section .btn-box {
|
|
121
|
+
width: 120px;
|
|
122
|
+
display: flex;
|
|
123
|
+
align-items: center;
|
|
124
|
+
justify-content: center;
|
|
125
|
+
gap: 6px;
|
|
126
|
+
border: 1px solid var(--upload-btn-border-color);
|
|
127
|
+
color: var(--upload-btn-border-color);
|
|
128
|
+
border-radius: 4px;
|
|
129
|
+
cursor: pointer;
|
|
130
|
+
margin-bottom: 10px;
|
|
131
|
+
}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { defineComponent as b, ref as v, reactive as j, watch as N, openBlock as i, createElementBlock as s, renderSlot as d, createElementVNode as o, createVNode as E, unref as y, withModifiers as B, createCommentVNode as n, createBlock as C, Fragment as g, normalizeClass as S, renderList as L, toDisplayString as a, createTextVNode as D, nextTick as I } from "vue";
|
|
2
|
+
import { Icon as k } from "../../icon/index.mjs";
|
|
3
|
+
import "./style/index.css";
|
|
4
|
+
import { uploadImg as R } from "./uploadFile2.mjs";
|
|
5
|
+
import { Dragger as T } from "../../directives/drag.mjs";
|
|
6
|
+
import { ZoomIn as M } from "../../directives/zoomIn.mjs";
|
|
7
|
+
const U = { class: "k-upload-file-wrapper" }, O = { key: 0 }, Z = { class: "upload-btn-section" }, q = { class: "btn-box" }, G = /* @__PURE__ */ o("span", null, "\u4E0A\u4F20\u9644\u4EF6", -1), H = ["src"], J = { class: "img-wrapper" }, K = ["src", "title"], P = ["src", "title"], Q = ["src", "title"], W = ["onClick"], X = ["onClick"], Y = { class: "k-file-extensions-desc" }, _ = {
|
|
8
|
+
key: 0,
|
|
9
|
+
class: "error-tip"
|
|
10
|
+
}, ee = { key: 0 }, te = b({
|
|
11
|
+
name: "k-upload-file"
|
|
12
|
+
}), ae = b({
|
|
13
|
+
...te,
|
|
14
|
+
props: {
|
|
15
|
+
data: {
|
|
16
|
+
type: Array,
|
|
17
|
+
default: () => []
|
|
18
|
+
},
|
|
19
|
+
isView: {
|
|
20
|
+
type: Boolean,
|
|
21
|
+
default: !0
|
|
22
|
+
},
|
|
23
|
+
accept: {
|
|
24
|
+
type: Array,
|
|
25
|
+
default: [".png", ".jpg", ".jpeg", ".webp", ".xls", ".pdf", ".xlsx", ".docx"]
|
|
26
|
+
},
|
|
27
|
+
limit: {
|
|
28
|
+
type: Number,
|
|
29
|
+
default: 1
|
|
30
|
+
},
|
|
31
|
+
type: {
|
|
32
|
+
type: String,
|
|
33
|
+
default: "image"
|
|
34
|
+
},
|
|
35
|
+
maxSize: {
|
|
36
|
+
type: Number,
|
|
37
|
+
default: 10
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
emits: ["limitError", "success", "deleteSuccess", "fileSizeError"],
|
|
41
|
+
setup(r, { expose: V, emit: $ }) {
|
|
42
|
+
const w = v();
|
|
43
|
+
let f, A = v(1024 * 1024 * 10);
|
|
44
|
+
const c = r;
|
|
45
|
+
A.value = c.maxSize * 1024 * 1024;
|
|
46
|
+
const p = $, e = j({
|
|
47
|
+
fileList: new Array(),
|
|
48
|
+
errFiles: new Array()
|
|
49
|
+
});
|
|
50
|
+
e.fileList = c.data, N(() => c.data, (t) => {
|
|
51
|
+
e.fileList = t;
|
|
52
|
+
}, { deep: !0 });
|
|
53
|
+
const z = () => {
|
|
54
|
+
f && f.hide(), R({
|
|
55
|
+
acceptType: c.accept,
|
|
56
|
+
limit: c.limit,
|
|
57
|
+
maxSize: A.value,
|
|
58
|
+
success: (t) => {
|
|
59
|
+
e.errFiles = new Array();
|
|
60
|
+
let m = new Array();
|
|
61
|
+
for (let l = 0; l < t.length; l++)
|
|
62
|
+
t[l].url = window.URL.createObjectURL(t[l]), m.push(t[l]);
|
|
63
|
+
c.limit == 1 ? (e.fileList = m, c.type == "image" && I(() => {
|
|
64
|
+
f || (f = new M(w.value, { type: "margin" })), f && f.updateSrc(e.fileList[0].url);
|
|
65
|
+
})) : e.fileList = [...e.fileList, ...m], p("success", e.fileList);
|
|
66
|
+
},
|
|
67
|
+
limitError: (t) => {
|
|
68
|
+
p("limitError"), e.errFiles = new Array();
|
|
69
|
+
},
|
|
70
|
+
fileSizeError: (t) => {
|
|
71
|
+
e.errFiles = t, p("fileSizeError", t);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}, F = (t) => {
|
|
75
|
+
let m = e.fileList[t];
|
|
76
|
+
e.fileList.splice(t, 1), p("deleteSuccess", { deleteFile: m, result: e.fileList });
|
|
77
|
+
}, h = (t) => {
|
|
78
|
+
new T(t.target, { type: "margin", list: e.fileList }).build();
|
|
79
|
+
};
|
|
80
|
+
return V({
|
|
81
|
+
clearFiles: () => {
|
|
82
|
+
e.fileList = new Array();
|
|
83
|
+
},
|
|
84
|
+
deleteFile: F
|
|
85
|
+
}), (t, m) => (i(), s("div", U, [
|
|
86
|
+
r.isView ? n("", !0) : d(t.$slots, "default", { key: 0 }, () => [
|
|
87
|
+
r.type == "file" ? (i(), s("div", O, [
|
|
88
|
+
o("span", { onClick: z }, [
|
|
89
|
+
d(t.$slots, "icon", {}, () => [
|
|
90
|
+
o("div", Z, [
|
|
91
|
+
o("div", q, [
|
|
92
|
+
E(y(k), {
|
|
93
|
+
name: "download",
|
|
94
|
+
color: "#cccccc",
|
|
95
|
+
size: "20"
|
|
96
|
+
}),
|
|
97
|
+
G
|
|
98
|
+
])
|
|
99
|
+
])
|
|
100
|
+
])
|
|
101
|
+
])
|
|
102
|
+
])) : (i(), s("div", {
|
|
103
|
+
key: 1,
|
|
104
|
+
class: "btn-file-image",
|
|
105
|
+
onClick: B(z, ["stop"])
|
|
106
|
+
}, [
|
|
107
|
+
e.fileList.length > 0 && r.limit == 1 ? (i(), s("img", {
|
|
108
|
+
key: 0,
|
|
109
|
+
src: e.fileList[0].url,
|
|
110
|
+
ref_key: "imgRef",
|
|
111
|
+
ref: w
|
|
112
|
+
}, null, 8, H)) : n("", !0),
|
|
113
|
+
d(t.$slots, "icon", {}, () => [
|
|
114
|
+
e.fileList.length == 0 && r.limit == 1 ? (i(), C(y(k), {
|
|
115
|
+
key: 0,
|
|
116
|
+
name: "plus",
|
|
117
|
+
color: "#409eff"
|
|
118
|
+
})) : n("", !0),
|
|
119
|
+
r.limit > 1 ? (i(), C(y(k), {
|
|
120
|
+
key: 1,
|
|
121
|
+
name: "plus",
|
|
122
|
+
color: "#409eff"
|
|
123
|
+
})) : n("", !0)
|
|
124
|
+
])
|
|
125
|
+
]))
|
|
126
|
+
]),
|
|
127
|
+
d(t.$slots, "files", {
|
|
128
|
+
data: e.fileList
|
|
129
|
+
}, () => [
|
|
130
|
+
r.type == "image" && r.limit > 1 ? (i(), s(g, { key: 0 }, [
|
|
131
|
+
e.fileList.length > 0 ? (i(), s("ul", {
|
|
132
|
+
key: 0,
|
|
133
|
+
class: S(["k-image-list", { "can-edit": !r.isView }])
|
|
134
|
+
}, [
|
|
135
|
+
(i(!0), s(g, null, L(e.fileList, (l, u) => (i(), s("li", { key: u }, [
|
|
136
|
+
o("div", J, [
|
|
137
|
+
l.type == "image/webp" ? (i(), s("img", {
|
|
138
|
+
key: 0,
|
|
139
|
+
src: l.url,
|
|
140
|
+
onClick: h,
|
|
141
|
+
title: l.name
|
|
142
|
+
}, null, 8, K)) : l.type == "image/png" ? (i(), s("img", {
|
|
143
|
+
key: 1,
|
|
144
|
+
src: l.url,
|
|
145
|
+
onClick: h,
|
|
146
|
+
title: l.name
|
|
147
|
+
}, null, 8, P)) : l.type == "image/jpg" || l.type == "image/jpeg" ? (i(), s("img", {
|
|
148
|
+
key: 2,
|
|
149
|
+
src: l.url,
|
|
150
|
+
onClick: h,
|
|
151
|
+
title: l.name
|
|
152
|
+
}, null, 8, Q)) : n("", !0)
|
|
153
|
+
]),
|
|
154
|
+
r.isView ? n("", !0) : (i(), s("span", {
|
|
155
|
+
key: 0,
|
|
156
|
+
class: "k-file-icon-close",
|
|
157
|
+
onClick: (x) => F(u)
|
|
158
|
+
}, [
|
|
159
|
+
E(y(k), {
|
|
160
|
+
name: "close",
|
|
161
|
+
size: "12"
|
|
162
|
+
})
|
|
163
|
+
], 8, W))
|
|
164
|
+
]))), 128))
|
|
165
|
+
], 2)) : n("", !0)
|
|
166
|
+
], 64)) : n("", !0),
|
|
167
|
+
r.type == "file" ? (i(), s(g, { key: 1 }, [
|
|
168
|
+
e.fileList.length > 0 ? (i(), s("ul", {
|
|
169
|
+
key: 0,
|
|
170
|
+
class: S(["k-file-list", { "can-edit": !r.isView }])
|
|
171
|
+
}, [
|
|
172
|
+
(i(!0), s(g, null, L(e.fileList, (l, u) => (i(), s("li", { key: u }, [
|
|
173
|
+
d(t.$slots, "file", { data: l }, () => [
|
|
174
|
+
o("span", null, a(l.name), 1),
|
|
175
|
+
r.isView ? n("", !0) : (i(), s("span", {
|
|
176
|
+
key: 0,
|
|
177
|
+
class: "k-file-icon-close",
|
|
178
|
+
onClick: (x) => F(u)
|
|
179
|
+
}, [
|
|
180
|
+
E(y(k), {
|
|
181
|
+
name: "close",
|
|
182
|
+
size: "12"
|
|
183
|
+
})
|
|
184
|
+
], 8, X))
|
|
185
|
+
])
|
|
186
|
+
]))), 128))
|
|
187
|
+
], 2)) : n("", !0)
|
|
188
|
+
], 64)) : n("", !0)
|
|
189
|
+
]),
|
|
190
|
+
d(t.$slots, "tip", {}, () => [
|
|
191
|
+
o("div", Y, "\u652F\u6301\u7684" + a(r.type == "file" ? "\u6587\u4EF6" : "\u56FE\u7247") + "\u683C\u5F0F\u6709\uFF1A" + a(r.accept.join(",")) + ",\u6700\u591A\u4E0A\u4F20" + a(r.limit) + "\u4E2A\u6587\u4EF6," + a(r.type == "file" ? "\u5355\u4E2A\u6587\u4EF6" : "\u5355\u5F20\u56FE\u7247") + "\u4E0D\u80FD\u5927\u4E8E" + a(r.maxSize) + "MB", 1)
|
|
192
|
+
]),
|
|
193
|
+
d(t.$slots, "sizeError", {
|
|
194
|
+
data: e.errFiles
|
|
195
|
+
}, () => [
|
|
196
|
+
e.errFiles.length > 0 ? (i(), s("div", _, [
|
|
197
|
+
o("span", null, " \u8D85\u51FA\u5927\u5C0F\u9650\u5236\u7684" + a(r.type == "file" ? "\u6587\u4EF6" : "\u56FE\u7247") + "\u6709\uFF1A", 1),
|
|
198
|
+
(i(!0), s(g, null, L(e.errFiles, (l, u) => (i(), s("span", { key: u }, [
|
|
199
|
+
u > 0 ? (i(), s("span", ee, ", ")) : n("", !0),
|
|
200
|
+
D(" " + a(l.name), 1)
|
|
201
|
+
]))), 128))
|
|
202
|
+
])) : n("", !0)
|
|
203
|
+
])
|
|
204
|
+
]));
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
export {
|
|
208
|
+
ae as default
|
|
209
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
const f = new Array(), u = (e) => {
|
|
2
|
+
e = { ...{
|
|
3
|
+
acceptType: f
|
|
4
|
+
}, ...e };
|
|
5
|
+
let t = document.createElement("form");
|
|
6
|
+
t.style.display = "none", document.body.appendChild(t);
|
|
7
|
+
let l = document.createElement("input");
|
|
8
|
+
l.type = "file", e.limit > 1 && (l.multiple = "multiple"), e.acceptType.length > 0 && (l.accept = e.acceptType.join(",")), l.onchange = (r) => {
|
|
9
|
+
let c = r.target.files, a = new Array();
|
|
10
|
+
for (let i = 0; i < c.length; i++)
|
|
11
|
+
c[i].size > e.maxSize && a.push(c[i]);
|
|
12
|
+
a.length > 0 ? e.fileSizeError && e.fileSizeError(a) : r.target.files.length > e.limit ? e.limitError && e.limitError(r.target.files) : e.success && e.success(r.target.files), t.reset();
|
|
13
|
+
}, t.appendChild(l), l.click();
|
|
14
|
+
};
|
|
15
|
+
export {
|
|
16
|
+
u as uploadImg
|
|
17
|
+
};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { defineComponent as o, ref as u, onMounted as a, watch as m, nextTick as c, onUnmounted as d, openBlock as f, createElementBlock as p, createElementVNode as i, renderSlot as _ } from "vue";
|
|
2
|
+
import h from "better-scroll";
|
|
3
|
+
import "./style/index.css";
|
|
4
|
+
const b = o({
|
|
5
|
+
name: "k-mouse-wheel"
|
|
6
|
+
}), W = o({
|
|
7
|
+
...b,
|
|
8
|
+
props: {
|
|
9
|
+
data: { default: () => [] },
|
|
10
|
+
scrollbar: { default: () => null }
|
|
11
|
+
},
|
|
12
|
+
emits: [""],
|
|
13
|
+
setup(l, { expose: n, emit: k }) {
|
|
14
|
+
const r = u(), t = l;
|
|
15
|
+
let e;
|
|
16
|
+
return a(() => {
|
|
17
|
+
e = new h(r.value, {
|
|
18
|
+
mouseWheel: !0,
|
|
19
|
+
scrollbar: t.scrollbar
|
|
20
|
+
});
|
|
21
|
+
}), m(() => t.data, () => {
|
|
22
|
+
c(() => {
|
|
23
|
+
e && e.refresh();
|
|
24
|
+
});
|
|
25
|
+
}, {
|
|
26
|
+
immediate: !0,
|
|
27
|
+
deep: !0
|
|
28
|
+
}), n({
|
|
29
|
+
bs: () => e
|
|
30
|
+
}), d(() => {
|
|
31
|
+
e.destroy(), e = null;
|
|
32
|
+
}), (s, w) => (f(), p("div", {
|
|
33
|
+
ref_key: "refMouseWheel",
|
|
34
|
+
ref: r,
|
|
35
|
+
class: "mouse-wheel-wrapper"
|
|
36
|
+
}, [
|
|
37
|
+
i("ul", null, [
|
|
38
|
+
_(s.$slots, "default")
|
|
39
|
+
])
|
|
40
|
+
], 512));
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
export {
|
|
44
|
+
W as default
|
|
45
|
+
};
|