quasar
Version:
Build high-performance VueJS user interfaces (SPA, PWA, SSR, Mobile and Desktop) in record time
281 lines (268 loc) • 9.75 kB
JSON
{
"props": {
"factory": {
"type": "Function",
"tsType": "QUploaderFactoryFn",
"desc": "Function which should return an Object or a Promise resolving with an Object; For best performance, reference it from your scope and do not define it inline",
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": [ "Object", "Promise<any>" ],
"desc": "Optional configuration for the upload process; You can override QUploader props in this Object (url, method, headers, formFields, fieldName, withCredentials, sendRaw); Props of these Object can also be Functions with the form of (file[s]) => value"
},
"category": "upload"
},
"url": {
"type": [ "String", "Function" ],
"desc": "URL or path to the server which handles the upload. Takes String or factory function, which returns String. Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"examples": [ "'https://example.com/path'", "files => `https://example.com?count=${ files.length }`" ],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "String",
"desc": "URL or path to the server which handles the upload"
},
"category": "upload"
},
"method": {
"type": [ "String", "Function" ],
"default": "'POST'",
"desc": "HTTP method to use for upload; Takes String or factory function which returns a String; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"values": [ "'POST'", "'PUT'" ],
"examples": [ "'POST'", "files => (files.length > 10 ? 'POST' : 'PUT')" ],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "String",
"desc": "HTTP method to use for upload"
},
"category": "upload"
},
"field-name": {
"type": [ "String", "Function" ],
"desc": "Field name for each file upload; This goes into the following header: 'Content-Disposition: form-data; name=\"__HERE__\"; filename=\"somefile.png\"; If using a function then for best performance, reference it from your scope and do not define it inline",
"default": "file => file.name",
"examples": [
"'backgroundFile'",
"file => ('background' + file.name)"
],
"params": {
"files": {
"type": "File",
"desc": "The current file being processed"
}
},
"returns": {
"type": "String",
"desc": "Field name for the current file upload"
},
"category": "upload"
},
"headers": {
"type": [ "Array", "Function" ],
"desc": "Array or a factory function which returns an array; Array consists of objects with header definitions; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"definition": {
"name": {
"type": "String",
"required": true,
"desc": "Header name",
"examples": [ "'Content-Type'", "'Accept'", "'Cache-Control'" ]
},
"value": {
"type": "String",
"required": true,
"desc": "Header value",
"examples": [ "'application/json'", "'no-cache'" ]
}
},
"examples": [
"[ { name: 'Content-Type', value: 'application/json' }, { name: 'Accept', value: 'application/json' } ]",
"() => [ { name: 'X-Custom-Timestamp', value: Date.now() } ]",
"files => [ { name: 'X-Custom-Count', value: files.length } ]"
],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "String",
"desc": "An array consisting of objects with header definitions"
},
"category": "upload"
},
"form-fields": {
"type": [ "Array", "Function" ],
"desc": "Array or a factory function which returns an array; Array consists of objects with additional fields definitions (used by Form to be uploaded); Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"definition": {
"name": {
"type": "String",
"required": true,
"desc": "Field name",
"examples": [ "'Some field'" ]
},
"value": {
"type": "String",
"required": true,
"desc": "Field value",
"examples": [ "'some-value'" ]
}
},
"examples": [
"[ { name: 'my-field', value: 'my-value' } ]",
"() => [ { name: 'my-field', value: 'my-value' } ]",
"files => [ { name: 'my-field', value: 'my-value' + files.length } ]"
],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "String",
"desc": "An array consists of objects with additional fields definitions (used by Form to be uploaded)"
},
"category": "upload"
},
"with-credentials": {
"type": [ "Boolean", "Function" ],
"desc": "Sets withCredentials to true on the XHR that manages the upload; Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"examples": [ "true", "files => (files.length === 2)" ],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "Boolean",
"desc": "If true, withCredentials will be set to true on the XHR that manages the upload"
},
"category": "upload"
},
"send-raw": {
"type": [ "Boolean", "Function" ],
"desc": "Send raw files without wrapping into a Form(); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"examples": [ "true", "files => (files.length > 2)" ],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "Boolean",
"desc": "If true, raw files will get sent without wrapping into a Form()"
},
"category": "upload"
},
"batch": {
"type": [ "Boolean", "Function" ],
"desc": "Upload files in batch (in one XHR request); Takes boolean or factory function for Boolean; Function is called right before upload; If using a function then for best performance, reference it from your scope and do not define it inline",
"examples": [ "files => files.length > 10" ],
"params": {
"files": {
"type": "Array",
"desc": "Uploaded files"
}
},
"returns": {
"type": "Boolean",
"desc": "If true, files will be uploaded in a batch (in one XHR request)"
},
"category": "upload"
}
},
"events": {
"uploaded": {
"desc": "Emitted when file or batch of files is uploaded",
"params": {
"info": {
"type": "Object",
"desc": "Object containing information about the event",
"definition": {
"files": {
"type": "Array",
"required": true,
"desc": "Uploaded files"
},
"xhr": {
"type": "Object",
"required": true,
"desc": "XMLHttpRequest that has been used to upload this batch of files"
}
}
}
}
},
"failed": {
"desc": "Emitted when file or batch of files has encountered error while uploading",
"params": {
"info": {
"type": "Object",
"desc": "Object containing information about the event",
"definition": {
"files": {
"type": "Array",
"required": true,
"desc": "Files which encountered error"
},
"xhr": {
"type": "Object",
"required": true,
"desc": "XMLHttpRequest that has been used to upload this batch of files"
}
}
}
}
},
"uploading": {
"desc": "Emitted when file or batch of files started uploading",
"params": {
"info": {
"type": "Object",
"desc": "Object containing information about the event",
"definition": {
"files": {
"type": "Array",
"required": true,
"desc": "Files which are now uploading"
},
"xhr": {
"type": "Object",
"required": true,
"desc": "XMLHttpRequest used for uploading"
}
}
}
}
},
"factory-failed": {
"desc": "Emitted when factory function is supplied with a Promise which is rejected",
"params": {
"err": {
"type": "Error",
"desc": "Error object which is the Promise rejection reason"
},
"files": {
"type": "Array",
"desc": "Files which were to get uploaded"
}
}
}
}
}