vft 0.0.383 → 0.0.384

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.
@@ -56,6 +56,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
56
56
  };
57
57
  fileList: {
58
58
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
59
+ default: never[];
59
60
  };
60
61
  withCredentials: {
61
62
  type: import("vue").PropType<boolean>;
@@ -175,6 +176,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
175
176
  sizeHeight: number;
176
177
  action: string;
177
178
  accept: string;
179
+ fileList: import("./types").UploadUserFile[];
178
180
  showFileList: boolean;
179
181
  autoUpload: boolean;
180
182
  listType: import("./types").ListType;
@@ -247,6 +249,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
247
249
  };
248
250
  fileList: {
249
251
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
252
+ default: never[];
250
253
  };
251
254
  withCredentials: {
252
255
  type: import("vue").PropType<boolean>;
@@ -366,6 +369,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
366
369
  sizeHeight: number;
367
370
  action: string;
368
371
  accept: string;
372
+ fileList: import("./types").UploadUserFile[];
369
373
  showFileList: boolean;
370
374
  autoUpload: boolean;
371
375
  listType: import("./types").ListType;
@@ -435,6 +439,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
435
439
  };
436
440
  fileList: {
437
441
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
442
+ default: never[];
438
443
  };
439
444
  withCredentials: {
440
445
  type: import("vue").PropType<boolean>;
@@ -554,6 +559,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
554
559
  sizeHeight: number;
555
560
  action: string;
556
561
  accept: string;
562
+ fileList: import("./types").UploadUserFile[];
557
563
  showFileList: boolean;
558
564
  autoUpload: boolean;
559
565
  listType: import("./types").ListType;
@@ -14,6 +14,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
14
14
  autoUpload: boolean;
15
15
  listType: string;
16
16
  httpRequest: import("./types").UploadRequestHandler;
17
+ fileList: never[];
17
18
  replaceOnLimit: boolean;
18
19
  maxSize: undefined;
19
20
  sizeExceedMessage: string;
@@ -34,6 +35,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
34
35
  autoUpload: boolean;
35
36
  listType: string;
36
37
  httpRequest: import("./types").UploadRequestHandler;
38
+ fileList: never[];
37
39
  replaceOnLimit: boolean;
38
40
  maxSize: undefined;
39
41
  sizeExceedMessage: string;
@@ -49,6 +51,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
49
51
  sizeHeight: number;
50
52
  action: string;
51
53
  accept: string;
54
+ fileList: import("./types").UploadUserFile[];
52
55
  showFileList: boolean;
53
56
  autoUpload: boolean;
54
57
  listType: import("./types").ListType;
@@ -21,7 +21,7 @@ const ne = ["onKeydown"], ie = ["name", "multiple", "accept"], se = O({
21
21
  }), Ce = /* @__PURE__ */ O({
22
22
  ...se,
23
23
  props: {
24
- fileList: {},
24
+ fileList: { default: [] },
25
25
  replaceOnLimit: { type: Boolean, default: !1 },
26
26
  action: { default: "#" },
27
27
  headers: {},
@@ -19,6 +19,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
19
19
  autoUpload: boolean;
20
20
  listType: string;
21
21
  httpRequest: import("./types").UploadRequestHandler;
22
+ fileList: never[];
22
23
  replaceOnLimit: boolean;
23
24
  maxSize: undefined;
24
25
  sizeExceedMessage: string;
@@ -86,6 +87,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
86
87
  autoUpload: boolean;
87
88
  listType: string;
88
89
  httpRequest: import("./types").UploadRequestHandler;
90
+ fileList: never[];
89
91
  replaceOnLimit: boolean;
90
92
  maxSize: undefined;
91
93
  sizeExceedMessage: string;
@@ -102,6 +104,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
102
104
  sizeHeight: number;
103
105
  action: string;
104
106
  accept: string;
107
+ fileList: import("./types").UploadUserFile[];
105
108
  showFileList: boolean;
106
109
  autoUpload: boolean;
107
110
  listType: import("./types").ListType;
@@ -1,16 +1,16 @@
1
- import { defineComponent as L, useSlots as j, shallowRef as N, computed as b, onBeforeUnmount as O, provide as q, createElementBlock as D, openBlock as c, normalizeClass as H, unref as o, createBlock as y, createCommentVNode as a, renderSlot as s, createSlots as z, withCtx as f, createVNode as K, mergeProps as B } from "vue";
1
+ import { defineComponent as L, useSlots as j, shallowRef as N, computed as b, onBeforeUnmount as O, provide as q, toRef as D, createElementBlock as H, openBlock as c, normalizeClass as K, unref as o, createBlock as y, createCommentVNode as a, renderSlot as s, createSlots as z, withCtx as f, createVNode as W, mergeProps as B } from "vue";
2
2
  import "../form/index.js";
3
3
  import { VftMessage as C } from "../message/index.js";
4
- import { ajaxUpload as W } from "./ajax.js";
5
- import { uploadContextKey as A } from "./constants.js";
4
+ import { ajaxUpload as A } from "./ajax.js";
5
+ import { uploadContextKey as G } from "./constants.js";
6
6
  import E from "./upload-content.vue2.js";
7
7
  import F from "./upload-list.vue2.js";
8
- import { useHandlers as G } from "./use-handlers.js";
9
- import { useFormDisabled as J } from "../form/hooks/use-form-common-props.js";
10
- const Q = L({
8
+ import { useHandlers as J } from "./use-handlers.js";
9
+ import { useFormDisabled as Q } from "../form/hooks/use-form-common-props.js";
10
+ const X = L({
11
11
  name: "vft-upload"
12
- }), ae = /* @__PURE__ */ L({
13
- ...Q,
12
+ }), se = /* @__PURE__ */ L({
13
+ ...X,
14
14
  props: {
15
15
  action: { default: "#" },
16
16
  headers: {},
@@ -23,10 +23,10 @@ const Q = L({
23
23
  showFileList: { type: Boolean, default: !0 },
24
24
  accept: { default: "" },
25
25
  type: { default: "select" },
26
- fileList: {},
26
+ fileList: { default: [] },
27
27
  autoUpload: { type: Boolean, default: !1 },
28
28
  listType: { default: "text" },
29
- httpRequest: { type: Function, default: W },
29
+ httpRequest: { type: Function, default: A },
30
30
  disabled: { type: Boolean },
31
31
  limit: {},
32
32
  replaceOnLimit: { type: Boolean, default: !1 },
@@ -48,7 +48,7 @@ const Q = L({
48
48
  onSizeExceed: {}
49
49
  },
50
50
  setup(P, { expose: M }) {
51
- const t = P, r = j(), v = J(), u = N(), {
51
+ const t = P, r = j(), v = Q(), u = N(), {
52
52
  abort: g,
53
53
  submit: h,
54
54
  clearFiles: w,
@@ -58,7 +58,7 @@ const Q = L({
58
58
  handleRemove: p,
59
59
  handleSuccess: I,
60
60
  handleProgress: T
61
- } = G(t, u), m = b(() => t.listType === "picture-card"), V = {
61
+ } = J(t, u), m = b(() => t.listType === "picture-card"), V = {
62
62
  abort: g,
63
63
  submit: h,
64
64
  clearFiles: w,
@@ -96,8 +96,8 @@ const Q = L({
96
96
  n.value.forEach(({ url: e }) => {
97
97
  e?.startsWith("blob:") && URL.revokeObjectURL(e);
98
98
  });
99
- }), q(A, {
100
- accept: toRef(t, "accept")
99
+ }), q(G, {
100
+ accept: D(t, "accept")
101
101
  }), M({
102
102
  abort: g,
103
103
  submit: h,
@@ -105,8 +105,8 @@ const Q = L({
105
105
  handleStart: S,
106
106
  handleRemove: p,
107
107
  fileList: n
108
- }), (e, l) => (c(), D("div", {
109
- class: H(["vft-upload-wrapper", { disabled: o(v) }])
108
+ }), (e, l) => (c(), H("div", {
109
+ class: K(["vft-upload-wrapper", { disabled: o(v) }])
110
110
  }, [
111
111
  m.value && e.showFileList ? (c(), y(F, {
112
112
  key: 0,
@@ -117,7 +117,7 @@ const Q = L({
117
117
  onRemove: o(p)
118
118
  }, z({
119
119
  append: f(() => [
120
- K(E, B({
120
+ W(E, B({
121
121
  ref_key: "uploadRef",
122
122
  ref: u
123
123
  }, $.value), {
@@ -171,5 +171,5 @@ const Q = L({
171
171
  }
172
172
  });
173
173
  export {
174
- ae as default
174
+ se as default
175
175
  };
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.383",
3
+ "version": "0.0.384",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -1,4 +1,4 @@
1
- const o = "0.0.383";
1
+ const o = "0.0.384";
2
2
  export {
3
3
  o as version
4
4
  };
@@ -56,6 +56,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
56
56
  };
57
57
  fileList: {
58
58
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
59
+ default: never[];
59
60
  };
60
61
  withCredentials: {
61
62
  type: import("vue").PropType<boolean>;
@@ -175,6 +176,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
175
176
  sizeHeight: number;
176
177
  action: string;
177
178
  accept: string;
179
+ fileList: import("./types").UploadUserFile[];
178
180
  showFileList: boolean;
179
181
  autoUpload: boolean;
180
182
  listType: import("./types").ListType;
@@ -247,6 +249,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
247
249
  };
248
250
  fileList: {
249
251
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
252
+ default: never[];
250
253
  };
251
254
  withCredentials: {
252
255
  type: import("vue").PropType<boolean>;
@@ -366,6 +369,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
366
369
  sizeHeight: number;
367
370
  action: string;
368
371
  accept: string;
372
+ fileList: import("./types").UploadUserFile[];
369
373
  showFileList: boolean;
370
374
  autoUpload: boolean;
371
375
  listType: import("./types").ListType;
@@ -435,6 +439,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
435
439
  };
436
440
  fileList: {
437
441
  type: import("vue").PropType<import("./types").UploadUserFile[]>;
442
+ default: never[];
438
443
  };
439
444
  withCredentials: {
440
445
  type: import("vue").PropType<boolean>;
@@ -554,6 +559,7 @@ export declare const VftUpload: import("vft/es/utils").SFCWithInstall<{
554
559
  sizeHeight: number;
555
560
  action: string;
556
561
  accept: string;
562
+ fileList: import("./types").UploadUserFile[];
557
563
  showFileList: boolean;
558
564
  autoUpload: boolean;
559
565
  listType: import("./types").ListType;
@@ -14,6 +14,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
14
14
  autoUpload: boolean;
15
15
  listType: string;
16
16
  httpRequest: import("./types").UploadRequestHandler;
17
+ fileList: never[];
17
18
  replaceOnLimit: boolean;
18
19
  maxSize: undefined;
19
20
  sizeExceedMessage: string;
@@ -34,6 +35,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
34
35
  autoUpload: boolean;
35
36
  listType: string;
36
37
  httpRequest: import("./types").UploadRequestHandler;
38
+ fileList: never[];
37
39
  replaceOnLimit: boolean;
38
40
  maxSize: undefined;
39
41
  sizeExceedMessage: string;
@@ -49,6 +51,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
49
51
  sizeHeight: number;
50
52
  action: string;
51
53
  accept: string;
54
+ fileList: import("./types").UploadUserFile[];
52
55
  showFileList: boolean;
53
56
  autoUpload: boolean;
54
57
  listType: import("./types").ListType;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue");require("../form/index.cjs");require("@vueuse/core");const S=require("@vft/utils"),D=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const z=require("lodash-es"),L=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const M=require("./ajax.cjs"),F=require("./constants.cjs"),K=require("./upload-dragger.vue2.cjs"),R=require("./utils.cjs"),T=require("../form/hooks/use-form-common-props.cjs"),V=require("../form/hooks/use-form-item.cjs"),H=["onKeydown"],W=["name","multiple","accept"],$=t.defineComponent({name:"VftUploadContent",inheritAttrs:!1}),A=t.defineComponent({...$,props:{fileList:{},replaceOnLimit:{type:Boolean,default:!1},action:{default:"#"},headers:{},method:{default:"post"},data:{},multiple:{type:Boolean,default:!1},name:{default:"file"},drag:{type:Boolean,default:!1},withCredentials:{type:Boolean},showFileList:{type:Boolean,default:!0},accept:{default:""},type:{default:"select"},autoUpload:{type:Boolean,default:!1},listType:{default:"text"},httpRequest:{type:Function,default:M.ajaxUpload},disabled:{type:Boolean},limit:{},maxSize:{default:void 0},sizeExceedMessage:{default:"文件大小超出限制"},sizeWidth:{default:void 0},sizeHeight:{default:void 0},onSizeInvalid:{},beforeUpload:{},onRemove:{},onStart:{},onSuccess:{},onProgress:{},onError:{},onExceed:{},onSizeExceed:{}},setup(U,{expose:w}){const r=U,g=L.useNamespace("upload"),E=T.useFormDisabled(),{formItem:x}=V.useFormItem(),c=t.shallowRef({}),y=t.shallowRef(),C=async e=>{if(e.length===0)return;const{autoUpload:o,limit:a,fileList:s,multiple:f,onStart:p,onExceed:q,replaceOnLimit:b,maxSize:u,onSizeExceed:v,sizeWidth:m,sizeHeight:h,onSizeInvalid:d}=r;if(u){const i=e.filter(n=>n.size>u);if(i.length>0&&(i.forEach(n=>{v&&v(n,u)}),e=e.filter(n=>n.size<=u),e.length===0))return}if(m&&h){const i=[];for(const n of e)if(R.isImageOrVideo(n))try{const{isValid:l,width:P,height:j}=await R.validateFileSize(n,m,h);l?i.push(n):d&&d(n,P,j,m,h)}catch(l){console.error("尺寸校验失败:",l)}else i.push(n);if(e=i,e.length===0)return}if(a&&s&&s.length+e.length>a&&!(a===1&&b)){q?.(e,s);return}f||(e=e.slice(0,1));for(const i of e){const n=i;n.uid=F.genFileId(),p?.(n),o&&k(n)}},k=async e=>{if(y.value.value="",!r.beforeUpload)return _(e);let o,a={};try{const f=r.data,p=r.beforeUpload(e);a=S.isObject(r.data)?z.cloneDeep(r.data):r.data,o=await p,S.isObject(r.data)&&z.isEqual(f,a)&&(a=z.cloneDeep(r.data))}catch{o=!1}if(o===!1){r.onRemove?.(e);return}let s=e;o instanceof Blob&&(o instanceof File?s=o:s=new File([o],e.name,{type:e.type})),_(Object.assign(s,{uid:e.uid}),a)},_=(e,o)=>{const{headers:a,data:s,method:f,withCredentials:p,name:q,action:b,onProgress:u,onSuccess:v,onError:m,httpRequest:h}=r,{uid:d}=e,i={headers:a||{},withCredentials:p,file:e,data:o??(s||{}),method:f,filename:q,action:b,onProgress:l=>{u?.(l,e)},onSuccess:l=>{v?.(l,e),delete c.value[d]},onError:l=>{m?.(l,e),delete c.value[d]}},n=h(i);c.value[d]=n,n instanceof Promise&&n.then(i.onSuccess,i.onError)},O=async e=>{const o=e.target.files;o&&(await C(Array.from(o)),t.nextTick(()=>{x?.validate("change").catch(a=>D.debugWarn(a))}))},B=()=>{E.value||(y.value.value="",y.value.click())},I=()=>{B()};return w({abort:e=>{S.entriesOf(c.value).filter(e?([a])=>String(e.uid)===a:()=>!0).forEach(([a,s])=>{s instanceof XMLHttpRequest&&s.abort(),delete c.value[a]})},upload:k}),(e,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass([t.unref(g).b(),t.unref(g).m(e.listType),t.unref(g).is("drag",e.drag)]),tabindex:"0",onClick:B,onKeydown:t.withKeys(t.withModifiers(I,["self"]),["enter","space"])},[e.drag?(t.openBlock(),t.createBlock(K.default,{key:0,disabled:t.unref(E),onFile:o[0]||(o[0]=a=>C(a.file))},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["disabled"])):t.renderSlot(e.$slots,"default",{key:1}),t.createElementVNode("input",{ref_key:"inputRef",ref:y,class:t.normalizeClass(t.unref(g).e("input")),name:e.name,multiple:e.multiple,accept:e.accept,type:"file",onChange:O,onClick:o[1]||(o[1]=t.withModifiers(()=>{},["stop"]))},null,42,W)],42,H))}});exports.default=A;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue");require("../form/index.cjs");require("@vueuse/core");const S=require("@vft/utils"),D=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const z=require("lodash-es"),L=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const M=require("./ajax.cjs"),F=require("./constants.cjs"),K=require("./upload-dragger.vue2.cjs"),R=require("./utils.cjs"),T=require("../form/hooks/use-form-common-props.cjs"),V=require("../form/hooks/use-form-item.cjs"),H=["onKeydown"],W=["name","multiple","accept"],$=t.defineComponent({name:"VftUploadContent",inheritAttrs:!1}),A=t.defineComponent({...$,props:{fileList:{default:[]},replaceOnLimit:{type:Boolean,default:!1},action:{default:"#"},headers:{},method:{default:"post"},data:{},multiple:{type:Boolean,default:!1},name:{default:"file"},drag:{type:Boolean,default:!1},withCredentials:{type:Boolean},showFileList:{type:Boolean,default:!0},accept:{default:""},type:{default:"select"},autoUpload:{type:Boolean,default:!1},listType:{default:"text"},httpRequest:{type:Function,default:M.ajaxUpload},disabled:{type:Boolean},limit:{},maxSize:{default:void 0},sizeExceedMessage:{default:"文件大小超出限制"},sizeWidth:{default:void 0},sizeHeight:{default:void 0},onSizeInvalid:{},beforeUpload:{},onRemove:{},onStart:{},onSuccess:{},onProgress:{},onError:{},onExceed:{},onSizeExceed:{}},setup(U,{expose:w}){const r=U,g=L.useNamespace("upload"),E=T.useFormDisabled(),{formItem:x}=V.useFormItem(),c=t.shallowRef({}),y=t.shallowRef(),C=async e=>{if(e.length===0)return;const{autoUpload:o,limit:a,fileList:s,multiple:f,onStart:p,onExceed:q,replaceOnLimit:b,maxSize:u,onSizeExceed:v,sizeWidth:m,sizeHeight:h,onSizeInvalid:d}=r;if(u){const i=e.filter(n=>n.size>u);if(i.length>0&&(i.forEach(n=>{v&&v(n,u)}),e=e.filter(n=>n.size<=u),e.length===0))return}if(m&&h){const i=[];for(const n of e)if(R.isImageOrVideo(n))try{const{isValid:l,width:P,height:j}=await R.validateFileSize(n,m,h);l?i.push(n):d&&d(n,P,j,m,h)}catch(l){console.error("尺寸校验失败:",l)}else i.push(n);if(e=i,e.length===0)return}if(a&&s&&s.length+e.length>a&&!(a===1&&b)){q?.(e,s);return}f||(e=e.slice(0,1));for(const i of e){const n=i;n.uid=F.genFileId(),p?.(n),o&&k(n)}},k=async e=>{if(y.value.value="",!r.beforeUpload)return _(e);let o,a={};try{const f=r.data,p=r.beforeUpload(e);a=S.isObject(r.data)?z.cloneDeep(r.data):r.data,o=await p,S.isObject(r.data)&&z.isEqual(f,a)&&(a=z.cloneDeep(r.data))}catch{o=!1}if(o===!1){r.onRemove?.(e);return}let s=e;o instanceof Blob&&(o instanceof File?s=o:s=new File([o],e.name,{type:e.type})),_(Object.assign(s,{uid:e.uid}),a)},_=(e,o)=>{const{headers:a,data:s,method:f,withCredentials:p,name:q,action:b,onProgress:u,onSuccess:v,onError:m,httpRequest:h}=r,{uid:d}=e,i={headers:a||{},withCredentials:p,file:e,data:o??(s||{}),method:f,filename:q,action:b,onProgress:l=>{u?.(l,e)},onSuccess:l=>{v?.(l,e),delete c.value[d]},onError:l=>{m?.(l,e),delete c.value[d]}},n=h(i);c.value[d]=n,n instanceof Promise&&n.then(i.onSuccess,i.onError)},O=async e=>{const o=e.target.files;o&&(await C(Array.from(o)),t.nextTick(()=>{x?.validate("change").catch(a=>D.debugWarn(a))}))},B=()=>{E.value||(y.value.value="",y.value.click())},I=()=>{B()};return w({abort:e=>{S.entriesOf(c.value).filter(e?([a])=>String(e.uid)===a:()=>!0).forEach(([a,s])=>{s instanceof XMLHttpRequest&&s.abort(),delete c.value[a]})},upload:k}),(e,o)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass([t.unref(g).b(),t.unref(g).m(e.listType),t.unref(g).is("drag",e.drag)]),tabindex:"0",onClick:B,onKeydown:t.withKeys(t.withModifiers(I,["self"]),["enter","space"])},[e.drag?(t.openBlock(),t.createBlock(K.default,{key:0,disabled:t.unref(E),onFile:o[0]||(o[0]=a=>C(a.file))},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["disabled"])):t.renderSlot(e.$slots,"default",{key:1}),t.createElementVNode("input",{ref_key:"inputRef",ref:y,class:t.normalizeClass(t.unref(g).e("input")),name:e.name,multiple:e.multiple,accept:e.accept,type:"file",onChange:O,onClick:o[1]||(o[1]=t.withModifiers(()=>{},["stop"]))},null,42,W)],42,H))}});exports.default=A;
@@ -19,6 +19,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
19
19
  autoUpload: boolean;
20
20
  listType: string;
21
21
  httpRequest: import("./types").UploadRequestHandler;
22
+ fileList: never[];
22
23
  replaceOnLimit: boolean;
23
24
  maxSize: undefined;
24
25
  sizeExceedMessage: string;
@@ -86,6 +87,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
86
87
  autoUpload: boolean;
87
88
  listType: string;
88
89
  httpRequest: import("./types").UploadRequestHandler;
90
+ fileList: never[];
89
91
  replaceOnLimit: boolean;
90
92
  maxSize: undefined;
91
93
  sizeExceedMessage: string;
@@ -102,6 +104,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
102
104
  sizeHeight: number;
103
105
  action: string;
104
106
  accept: string;
107
+ fileList: import("./types").UploadUserFile[];
105
108
  showFileList: boolean;
106
109
  autoUpload: boolean;
107
110
  listType: import("./types").ListType;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const h=require("../message/index.cjs"),P=require("./ajax.cjs"),_=require("./constants.cjs"),C=require("./upload-content.vue2.cjs"),w=require("./upload-list.vue2.cjs"),E=require("./use-handlers.cjs"),F=require("../form/hooks/use-form-common-props.cjs"),L=e.defineComponent({name:"vft-upload"}),V=e.defineComponent({...L,props:{action:{default:"#"},headers:{},method:{default:"post"},data:{},multiple:{type:Boolean,default:!1},name:{default:"file"},drag:{type:Boolean,default:!1},withCredentials:{type:Boolean},showFileList:{type:Boolean,default:!0},accept:{default:""},type:{default:"select"},fileList:{},autoUpload:{type:Boolean,default:!1},listType:{default:"text"},httpRequest:{type:Function,default:P.ajaxUpload},disabled:{type:Boolean},limit:{},replaceOnLimit:{type:Boolean,default:!1},maxSize:{default:void 0},sizeExceedMessage:{default:"文件大小超出限制"},sizeWidth:{default:void 0},sizeHeight:{default:void 0},onSizeInvalid:{},beforeUpload:{},beforeRemove:{},onRemove:{},onChange:{},onPreview:{},onSuccess:{},onProgress:{},onError:{},onExceed:{type:Function,default:()=>{}},onSizeExceed:{}},setup(k,{expose:B}){const o=k,r=e.useSlots(),f=F.useFormDisabled(),i=e.shallowRef(),{abort:p,submit:c,clearFiles:m,uploadFiles:n,handleStart:v,handleError:b,handleRemove:d,handleSuccess:R,handleProgress:$}=E.useHandlers(o,i),u=e.computed(()=>o.listType==="picture-card"),z={abort:p,submit:c,clearFiles:m,uploadFiles:n,uploadRef:i},y=e.computed(()=>({...o,fileList:n.value,onStart:v,onProgress:$,onSuccess:R,onError:b,onRemove:d,onChange:(t,l)=>{o.onChange?.(t,l,z)},onSizeExceed:(t,l)=>{if(o.onSizeExceed)o.onSizeExceed?.(t,l);else{const s=`文件大小不能超过 ${(l/1048576).toFixed(2)}MB`;console.warn("默认文件大小超出提示:",s),h.VftMessage.warning(s)}},onSizeInvalid:(t,l,a,s,g)=>{if(o.onSizeInvalid)o.onSizeInvalid(t,l,a,s,g);else{const S=`文件尺寸不符合要求,当前尺寸:${l}x${a},期望尺寸:${s}x${g}`;console.warn("默认尺寸校验提示:",S),h.VftMessage.warning(S)}}}));return e.onBeforeUnmount(()=>{n.value.forEach(({url:t})=>{t?.startsWith("blob:")&&URL.revokeObjectURL(t)})}),e.provide(_.uploadContextKey,{accept:toRef(o,"accept")}),B({abort:p,submit:c,clearFiles:m,handleStart:v,handleRemove:d,fileList:n}),(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vft-upload-wrapper",{disabled:e.unref(f)}])},[u.value&&t.showFileList?(e.openBlock(),e.createBlock(w.default,{key:0,disabled:e.unref(f),"list-type":t.listType,files:e.unref(n),"handle-preview":t.onPreview,onRemove:e.unref(d)},e.createSlots({append:e.withCtx(()=>[e.createVNode(C.default,e.mergeProps({ref_key:"uploadRef",ref:i},y.value),{default:e.withCtx(()=>[e.unref(r).trigger?e.renderSlot(t.$slots,"trigger",{key:0}):e.createCommentVNode("",!0),!e.unref(r).trigger&&e.unref(r).default?e.renderSlot(t.$slots,"default",{key:1}):e.createCommentVNode("",!0)]),_:3},16)]),_:2},[t.$slots.file?{name:"default",fn:e.withCtx(({file:a})=>[e.renderSlot(t.$slots,"file",{file:a})]),key:"0"}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):e.createCommentVNode("",!0),!u.value||u.value&&!t.showFileList?(e.openBlock(),e.createBlock(C.default,e.mergeProps({key:1,ref_key:"uploadRef",ref:i},y.value),{default:e.withCtx(()=>[e.unref(r).trigger?e.renderSlot(t.$slots,"trigger",{key:0}):e.createCommentVNode("",!0),!e.unref(r).trigger&&e.unref(r).default?e.renderSlot(t.$slots,"default",{key:1}):e.createCommentVNode("",!0)]),_:3},16)):e.createCommentVNode("",!0),t.$slots.trigger?e.renderSlot(t.$slots,"default",{key:2}):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"tip"),!u.value&&t.showFileList?(e.openBlock(),e.createBlock(w.default,{key:3,disabled:e.unref(f),"list-type":t.listType,files:e.unref(n),"handle-preview":t.onPreview,onRemove:e.unref(d)},e.createSlots({_:2},[t.$slots.file?{name:"default",fn:e.withCtx(({file:a})=>[e.renderSlot(t.$slots,"file",{file:a})]),key:"0"}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):e.createCommentVNode("",!0)],2))}});exports.default=V;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const h=require("../message/index.cjs"),P=require("./ajax.cjs"),_=require("./constants.cjs"),C=require("./upload-content.vue2.cjs"),w=require("./upload-list.vue2.cjs"),E=require("./use-handlers.cjs"),F=require("../form/hooks/use-form-common-props.cjs"),L=e.defineComponent({name:"vft-upload"}),V=e.defineComponent({...L,props:{action:{default:"#"},headers:{},method:{default:"post"},data:{},multiple:{type:Boolean,default:!1},name:{default:"file"},drag:{type:Boolean,default:!1},withCredentials:{type:Boolean},showFileList:{type:Boolean,default:!0},accept:{default:""},type:{default:"select"},fileList:{default:[]},autoUpload:{type:Boolean,default:!1},listType:{default:"text"},httpRequest:{type:Function,default:P.ajaxUpload},disabled:{type:Boolean},limit:{},replaceOnLimit:{type:Boolean,default:!1},maxSize:{default:void 0},sizeExceedMessage:{default:"文件大小超出限制"},sizeWidth:{default:void 0},sizeHeight:{default:void 0},onSizeInvalid:{},beforeUpload:{},beforeRemove:{},onRemove:{},onChange:{},onPreview:{},onSuccess:{},onProgress:{},onError:{},onExceed:{type:Function,default:()=>{}},onSizeExceed:{}},setup(k,{expose:B}){const o=k,r=e.useSlots(),f=F.useFormDisabled(),i=e.shallowRef(),{abort:p,submit:c,clearFiles:m,uploadFiles:n,handleStart:v,handleError:b,handleRemove:d,handleSuccess:R,handleProgress:$}=E.useHandlers(o,i),u=e.computed(()=>o.listType==="picture-card"),z={abort:p,submit:c,clearFiles:m,uploadFiles:n,uploadRef:i},y=e.computed(()=>({...o,fileList:n.value,onStart:v,onProgress:$,onSuccess:R,onError:b,onRemove:d,onChange:(t,l)=>{o.onChange?.(t,l,z)},onSizeExceed:(t,l)=>{if(o.onSizeExceed)o.onSizeExceed?.(t,l);else{const s=`文件大小不能超过 ${(l/1048576).toFixed(2)}MB`;console.warn("默认文件大小超出提示:",s),h.VftMessage.warning(s)}},onSizeInvalid:(t,l,a,s,g)=>{if(o.onSizeInvalid)o.onSizeInvalid(t,l,a,s,g);else{const S=`文件尺寸不符合要求,当前尺寸:${l}x${a},期望尺寸:${s}x${g}`;console.warn("默认尺寸校验提示:",S),h.VftMessage.warning(S)}}}));return e.onBeforeUnmount(()=>{n.value.forEach(({url:t})=>{t?.startsWith("blob:")&&URL.revokeObjectURL(t)})}),e.provide(_.uploadContextKey,{accept:e.toRef(o,"accept")}),B({abort:p,submit:c,clearFiles:m,handleStart:v,handleRemove:d,fileList:n}),(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vft-upload-wrapper",{disabled:e.unref(f)}])},[u.value&&t.showFileList?(e.openBlock(),e.createBlock(w.default,{key:0,disabled:e.unref(f),"list-type":t.listType,files:e.unref(n),"handle-preview":t.onPreview,onRemove:e.unref(d)},e.createSlots({append:e.withCtx(()=>[e.createVNode(C.default,e.mergeProps({ref_key:"uploadRef",ref:i},y.value),{default:e.withCtx(()=>[e.unref(r).trigger?e.renderSlot(t.$slots,"trigger",{key:0}):e.createCommentVNode("",!0),!e.unref(r).trigger&&e.unref(r).default?e.renderSlot(t.$slots,"default",{key:1}):e.createCommentVNode("",!0)]),_:3},16)]),_:2},[t.$slots.file?{name:"default",fn:e.withCtx(({file:a})=>[e.renderSlot(t.$slots,"file",{file:a})]),key:"0"}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):e.createCommentVNode("",!0),!u.value||u.value&&!t.showFileList?(e.openBlock(),e.createBlock(C.default,e.mergeProps({key:1,ref_key:"uploadRef",ref:i},y.value),{default:e.withCtx(()=>[e.unref(r).trigger?e.renderSlot(t.$slots,"trigger",{key:0}):e.createCommentVNode("",!0),!e.unref(r).trigger&&e.unref(r).default?e.renderSlot(t.$slots,"default",{key:1}):e.createCommentVNode("",!0)]),_:3},16)):e.createCommentVNode("",!0),t.$slots.trigger?e.renderSlot(t.$slots,"default",{key:2}):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"tip"),!u.value&&t.showFileList?(e.openBlock(),e.createBlock(w.default,{key:3,disabled:e.unref(f),"list-type":t.listType,files:e.unref(n),"handle-preview":t.onPreview,onRemove:e.unref(d)},e.createSlots({_:2},[t.$slots.file?{name:"default",fn:e.withCtx(({file:a})=>[e.renderSlot(t.$slots,"file",{file:a})]),key:"0"}:void 0]),1032,["disabled","list-type","files","handle-preview","onRemove"])):e.createCommentVNode("",!0)],2))}});exports.default=V;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.383";exports.version=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.384";exports.version=e;
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.383",
3
+ "version": "0.0.384",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vft",
3
- "version": "0.0.383",
3
+ "version": "0.0.384",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -55,11 +55,11 @@
55
55
  "resize-detector": "0.3.0",
56
56
  "sortablejs": "1.15.0",
57
57
  "photoswipe": "5.4.4",
58
- "@vft/constants": "0.0.72",
58
+ "@vft/store": "0.0.54",
59
59
  "@vft/router": "0.0.67",
60
+ "@vft/constants": "0.0.72",
60
61
  "@vft/use": "0.0.77",
61
62
  "@vft/directives": "0.0.34",
62
- "@vft/store": "0.0.54",
63
63
  "@vft/utils": "0.0.136"
64
64
  },
65
65
  "vetur": {
package/web-types.json CHANGED
@@ -1 +1 @@
1
- {"$schema":"http://json.schemastore.org/web-types","framework":"vue","name":"vft","version":"0.0.383","js-types-syntax":"typescript","description-markup":"markdown","contributions":{"html":{}}}
1
+ {"$schema":"http://json.schemastore.org/web-types","framework":"vue","name":"vft","version":"0.0.384","js-types-syntax":"typescript","description-markup":"markdown","contributions":{"html":{}}}