diff --git a/addon/components/file-field.js b/addon/components/file-field.js index 2dd76a3..a8f0714 100644 --- a/addon/components/file-field.js +++ b/addon/components/file-field.js @@ -9,6 +9,7 @@ export default Ember.Component.extend(Ember.Evented, { 'form', 'type', 'accept', + 'capture', 'autofocus', 'required', 'multiple' diff --git a/addon/uploaders/base.js b/addon/uploaders/base.js index b2185e5..9e51b39 100644 --- a/addon/uploaders/base.js +++ b/addon/uploaders/base.js @@ -86,7 +86,8 @@ export default Ember.Object.extend(Ember.Evented, { } } - if (files.constructor === FileList) { + // if is a array of files ... + if (files.constructor === FileList || files.constructor === Array) { const paramKey = `${this.toNamespacedParam(this.paramName)}[]`; for (let i = 0; i < files.length; i++) { diff --git a/addon/uploaders/s3.js b/addon/uploaders/s3.js index 785d34f..c3d5f4e 100644 --- a/addon/uploaders/s3.js +++ b/addon/uploaders/s3.js @@ -33,7 +33,7 @@ export default Uploader.extend({ /** * Request signed upload policy and upload file(s) and any extra data * - * @param {object|array} files One file object or one array of files object + * @param {object} file A file object * @param {object} extra Extra data to be sent with the upload * @return {object} Returns a Ember.RSVP.Promise wrapping the signing * request object @@ -61,7 +61,7 @@ export default Uploader.extend({ /** * Request signed upload policy * - * @param {object|array} files One file object or one array of files object + * @param {object} file A file object * @param {object} extra Extra data to be sent with the upload * @return {object} Returns a Ember.RSVP.Promise wrapping the signing * request object diff --git a/package.json b/package.json index 201c078..50717c8 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "title": "Ember Uploader", "name": "ember-uploader", - "version": "1.2.2", + "version": "1.2.3", "description": "Ember.js addon to facilitate uploading", "homepage": "https://github.com/benefitcloud/ember-uploader", "license": "MIT", diff --git a/tests/unit/file-field-test.js b/tests/unit/file-field-test.js index e1acb4e..e6212f0 100644 --- a/tests/unit/file-field-test.js +++ b/tests/unit/file-field-test.js @@ -15,3 +15,20 @@ test('it triggers `filesDidChange` on change', () => { deepEqual(result, [ 'foo' ], 'it returns the files that changed'); }); + +test('attribute bindings are correct', () => { + const fileField = FileField.extend({}).create(); + + deepEqual(fileField.get('attributeBindings'), [ + 'ariaRole:role', + 'name', + 'disabled', + 'form', + 'type', + 'accept', + 'capture', + 'autofocus', + 'required', + 'multiple' + ]); +});