11/**
2+ * @flow
23 * @file Base class for the Content Uploader ES6 wrapper
34 * @author Box
45 */
@@ -10,14 +11,17 @@ import { render } from 'react-dom';
1011import ES6Wrapper from './ES6Wrapper' ;
1112import ContentUploaderPopup from '../content-uploader/ContentUploaderPopup' ;
1213import WrappedContentUploaderComponent from '../content-uploader/ContentUploader' ;
14+ import type { UploadFileWithAPIOptions } from '../../common/types/upload' ;
15+ import type { BoxItem } from '../../common/types/core' ;
16+ import type { ModalOptions } from '../common/flowTypes' ;
1317
1418class ContentUploader extends ES6Wrapper {
1519 /**
1620 * Callback on closing uploader. Emits 'close' event.
1721 *
1822 * @return {void }
1923 */
20- onClose = ( ) => {
24+ onClose = ( ) : void => {
2125 this. emit ( 'close' ) ;
2226 } ;
2327
@@ -27,7 +31,7 @@ class ContentUploader extends ES6Wrapper {
2731 * @param {Array } data - Completed upload items
2832 * @return {void }
2933 */
30- onComplete = data => {
34+ onComplete = ( data : BoxItem [ ] ) : void => {
3135 this . emit ( 'complete' , data ) ;
3236 } ;
3337
@@ -37,7 +41,7 @@ class ContentUploader extends ES6Wrapper {
3741 * @param {Object } data - File and error info about failed upload
3842 * @return {void }
3943 */
40- onError = data => {
44+ onError = ( data : any ) : void => {
4145 this . emit ( 'error' , data ) ;
4246 } ;
4347
@@ -47,7 +51,7 @@ class ContentUploader extends ES6Wrapper {
4751 * @param {Object } data - Upload item
4852 * @return {void }
4953 */
50- onBeforeUpload = data => {
54+ onBeforeUpload = ( data : UploadFileWithAPIOptions | File ) : void => {
5155 this . emit ( 'beforeupload' , data ) ;
5256 } ;
5357
@@ -57,13 +61,13 @@ class ContentUploader extends ES6Wrapper {
5761 * @param {BoxItem } data - Successfully uploaded item
5862 * @return {void }
5963 */
60- onUpload = data => {
64+ onUpload = ( data : BoxItem ) : void => {
6165 this . emit ( 'upload' , data ) ;
6266 } ;
6367
6468 /** @inheritdoc */
6569 render ( ) {
66- const { modal, ...rest } = this . options ;
70+ const { modal, ...rest } : { modal ?: ModalOptions } = this . options ;
6771 const UploaderComponent = modal ? ContentUploaderPopup : WrappedContentUploaderComponent ;
6872
6973 render (
@@ -78,7 +82,7 @@ class ContentUploader extends ES6Wrapper {
7882 onError = { this . onError }
7983 onBeforeUpload = { this . onBeforeUpload }
8084 onUpload = { this . onUpload }
81- modal = { modal }
85+ modal = { ( ( modal : any ) : ModalOptions ) }
8286 { ...rest }
8387 /> ,
8488 this . container ,
0 commit comments