generated from VitorLuizC/typescript-library-boilerplate
/
index.esm.js
41 lines (37 loc) · 1.17 KB
/
index.esm.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/**
* Creates a virtual file input element (`<input type="file" />`) with options.
* @param options
*/
var createInputFile = function (ref) {
if ( ref === void 0 ) ref = {};
var accept = ref.accept; if ( accept === void 0 ) accept = '';
var capture = ref.capture; if ( capture === void 0 ) capture = false;
var multiple = ref.multiple; if ( multiple === void 0 ) multiple = false;
var input = document.createElement('input');
input.type = 'file';
input.accept = accept;
input.capture = capture;
input.multiple = multiple;
return input;
};
/**
* Virtually creates a file input element (`<input type="file" />`), triggers it
* and returns selected files.
*
* @example
* selectFiles({ accept: 'image/*', multiple: true }).then(files => {
* // ...
* });
*
* @param options
*/
var selectFiles = function (options) { return new Promise(function (resolve) {
var input = createInputFile(options);
input.addEventListener('change', function () { return resolve(input.files || null); });
setTimeout(function () {
var event = new MouseEvent('click');
input.dispatchEvent(event);
}, 0);
}); };
export default selectFiles;
//# sourceMappingURL=index.esm.js.map