File tree Expand file tree Collapse file tree 1 file changed +25
-3
lines changed Expand file tree Collapse file tree 1 file changed +25
-3
lines changed Original file line number Diff line number Diff line change @@ -67,9 +67,31 @@ export function useFileUpload(options: UseFileUploadOptions) {
67
67
}
68
68
69
69
onMounted ( ( ) => {
70
- const { isOverDropZone } = dropzone
71
- ? useDropZone ( dropzoneRef , { dataTypes : dataTypes . value , onDrop } )
72
- : { isOverDropZone : ref ( false ) }
70
+ const { isOverDropZone } = useDropZone ( dropzoneRef , {
71
+ dataTypes : ( types ) => {
72
+ if ( dataTypes . value === undefined || accept === '*' ) {
73
+ return true
74
+ }
75
+
76
+ return types . some ( ( type ) => {
77
+ return dataTypes . value ?. some ( ( acceptedType ) => {
78
+ if ( acceptedType . endsWith ( '/*' ) ) {
79
+ const base = acceptedType . slice ( 0 , acceptedType . indexOf ( '/' ) )
80
+ return type . startsWith ( base + '/' )
81
+ } else {
82
+ return type === acceptedType
83
+ }
84
+ } )
85
+ } )
86
+ } , onDrop : ( files , event ) => {
87
+ if ( ! dropzone ) {
88
+ event . preventDefault ( )
89
+ return
90
+ }
91
+
92
+ onDrop ( files )
93
+ }
94
+ } )
73
95
74
96
watch ( isOverDropZone , ( value ) => {
75
97
isDragging . value = value
You can’t perform that action at this time.
0 commit comments