yanzhen-design-vue
Version:
45 lines (44 loc) • 1.29 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const vue = require("vue");
const useFileListConfig = require("./hooks/use-file-list-config.cjs");
function useUploadPreview(props, emit) {
const imagePreviewRef = vue.ref();
const filePreviewRef = vue.ref();
const { fileListRef, isImageType } = useFileListConfig.useFileListConfig(props, emit);
function handleOpenPreviewImage(file) {
var _a, _b;
if ((_a = vue.unref(imagePreviewRef)) == null ? void 0 : _a.open) {
(_b = vue.unref(imagePreviewRef)) == null ? void 0 : _b.open(file);
}
}
function handleOpenPreviewFile(file) {
var _a, _b;
if ((_a = vue.unref(filePreviewRef)) == null ? void 0 : _a.open) {
(_b = vue.unref(filePreviewRef)) == null ? void 0 : _b.open(file);
}
}
function handleOpenPreview(file) {
if (vue.unref(isImageType)) {
handleOpenPreviewImage(file);
} else {
handleOpenPreviewFile(file);
}
}
const ctx = {
handleOpenPreviewImage,
handleOpenPreviewFile,
handleOpenPreview,
imagePreviewRef,
filePreviewRef,
fileListRef,
isImageType
};
const exposeCtx = vue.reactive(ctx);
return {
...ctx,
ctx,
exposeCtx
};
}
exports.useUploadPreview = useUploadPreview;