!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):e.Dropbox=r()}(this,function(){"use strict";function e(e){return"\\u"+("000"+e.charCodeAt(0).toString(16)).slice(-4)}function r(){return"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope||"undefined"==typeof module}function t(e){return"https://"+e+".dropboxapi.com/2/"}function s(r){return JSON.stringify(r).replace(/[\u007f-\uffff]/g,e)}function i(e,i,n,u,o,a){if("user"!==n)throw Error("Unexpected auth type: "+n);var c={method:"POST",headers:{Authorization:"Bearer "+o,"Dropbox-API-Arg":s(i)}};return a&&(c.headers["Dropbox-API-Select-User"]=a),fetch(t(u)+e,c).then(function(e){return function(e){return e.ok?r()?e.blob():e.buffer():e.text()}(e).then(function(r){return[e,r]})}).then(function(e){var t=f(e,2);return function(e,t){if(!e.ok)throw{error:t,response:e,status:e.status};var s=JSON.parse(e.headers.get("dropbox-api-result"));return r()?s.fileBlob=t:s.fileBinary=""+t,s}(t[0],t[1])})}function n(e,r,i,n,u,o){if("user"!==i)throw Error("Unexpected auth type: "+i);var a=r.contents;delete r.contents;var c={body:a,method:"POST",headers:{Authorization:"Bearer "+u,"Content-Type":"application/octet-stream","Dropbox-API-Arg":s(r)}};return o&&(c.headers["Dropbox-API-Select-User"]=o),fetch(t(n)+e,c).then(function(e){return function(e){var r=e.clone();return new Promise(function(t){e.json().then(function(e){return t(e)}).catch(function(){return r.text().then(function(e){return t(e)})})}).then(function(r){return[e,r]})}(e)}).then(function(e){var r=f(e,2),t=r[0],s=r[1];if(!t.ok)throw{error:s,response:t,status:t.status};return s})}function u(e,r,s,i,n,u){var o={method:"POST",body:r?JSON.stringify(r):null},a={"Content-Type":"application/json"};switch(s){case"team":case"user":a.Authorization="Bearer "+n;break;case"noauth":break;default:throw Error("Unhandled auth type: "+s)}return u&&(a["Dropbox-API-Select-User"]=u),o.headers=a,fetch(t(i)+e,o).then(function(e){return function(e){var r=e.clone();return new Promise(function(t){e.json().then(function(e){return t(e)}).catch(function(){return r.text().then(function(e){return t(e)})})}).then(function(r){return[e,r]})}(e)}).then(function(e){var r=f(e,2),t=r[0],s=r[1];if(!t.ok)throw{error:s,response:t,status:t.status};return s})}var o={};o.authTokenFromOauth1=function(e){return this.request("auth/token/from_oauth1",e,"app","api","rpc")},o.authTokenRevoke=function(e){return this.request("auth/token/revoke",e,"user","api","rpc")},o.filePropertiesPropertiesAdd=function(e){return this.request("file_properties/properties/add",e,"user","api","rpc")},o.filePropertiesPropertiesOverwrite=function(e){return this.request("file_properties/properties/overwrite",e,"user","api","rpc")},o.filePropertiesPropertiesRemove=function(e){return this.request("file_properties/properties/remove",e,"user","api","rpc")},o.filePropertiesPropertiesSearch=function(e){return this.request("file_properties/properties/search",e,"user","api","rpc")},o.filePropertiesPropertiesUpdate=function(e){return this.request("file_properties/properties/update",e,"user","api","rpc")},o.filePropertiesTemplatesAddForTeam=function(e){return this.request("file_properties/templates/add_for_team",e,"team","api","rpc")},o.filePropertiesTemplatesAddForUser=function(e){return this.request("file_properties/templates/add_for_user",e,"user","api","rpc")},o.filePropertiesTemplatesGetForTeam=function(e){return this.request("file_properties/templates/get_for_team",e,"team","api","rpc")},o.filePropertiesTemplatesGetForUser=function(e){return this.request("file_properties/templates/get_for_user",e,"user","api","rpc")},o.filePropertiesTemplatesListForTeam=function(e){return this.request("file_properties/templates/list_for_team",e,"team","api","rpc")},o.filePropertiesTemplatesListForUser=function(e){return this.request("file_properties/templates/list_for_user",e,"user","api","rpc")},o.filePropertiesTemplatesUpdateForTeam=function(e){return this.request("file_properties/templates/update_for_team",e,"team","api","rpc")},o.filePropertiesTemplatesUpdateForUser=function(e){return this.request("file_properties/templates/update_for_user",e,"user","api","rpc")},o.fileRequestsCreate=function(e){return this.request("file_requests/create",e,"user","api","rpc")},o.fileRequestsGet=function(e){return this.request("file_requests/get",e,"user","api","rpc")},o.fileRequestsList=function(e){return this.request("file_requests/list",e,"user","api","rpc")},o.fileRequestsUpdate=function(e){return this.request("file_requests/update",e,"user","api","rpc")},o.filesAlphaGetMetadata=function(e){return this.request("files/alpha/get_metadata",e,"user","api","rpc")},o.filesAlphaUpload=function(e){return this.request("files/alpha/upload",e,"user","content","upload")},o.filesCopy=function(e){return this.request("files/copy",e,"user","api","rpc")},o.filesCopyBatch=function(e){return this.request("files/copy_batch",e,"user","api","rpc")},o.filesCopyBatchCheck=function(e){return this.request("files/copy_batch/check",e,"user","api","rpc")},o.filesCopyReferenceGet=function(e){return this.request("files/copy_reference/get",e,"user","api","rpc")},o.filesCopyReferenceSave=function(e){return this.request("files/copy_reference/save",e,"user","api","rpc")},o.filesCopyV2=function(e){return this.request("files/copy_v2",e,"user","api","rpc")},o.filesCreateFolder=function(e){return this.request("files/create_folder",e,"user","api","rpc")},o.filesCreateFolderV2=function(e){return this.request("files/create_folder_v2",e,"user","api","rpc")},o.filesDelete=function(e){return this.request("files/delete",e,"user","api","rpc")},o.filesDeleteBatch=function(e){return this.request("files/delete_batch",e,"user","api","rpc")},o.filesDeleteBatchCheck=function(e){return this.request("files/delete_batch/check",e,"user","api","rpc")},o.filesDeleteV2=function(e){return this.request("files/delete_v2",e,"user","api","rpc")},o.filesDownload=function(e){return this.request("files/download",e,"user","content","download")},o.filesGetMetadata=function(e){return this.request("files/get_metadata",e,"user","api","rpc")},o.filesGetPreview=function(e){return this.request("files/get_preview",e,"user","content","download")},o.filesGetTemporaryLink=function(e){return this.request("files/get_temporary_link",e,"user","api","rpc")},o.filesGetThumbnail=function(e){return this.request("files/get_thumbnail",e,"user","content","download")},o.filesGetThumbnailBatch=function(e){return this.request("files/get_thumbnail_batch",e,"user","content","rpc")},o.filesListFolder=function(e){return this.request("files/list_folder",e,"user","api","rpc")},o.filesListFolderContinue=function(e){return this.request("files/list_folder/continue",e,"user","api","rpc")},o.filesListFolderGetLatestCursor=function(e){return this.request("files/list_folder/get_latest_cursor",e,"user","api","rpc")},o.filesListFolderLongpoll=function(e){return this.request("files/list_folder/longpoll",e,"noauth","notify","rpc")},o.filesListRevisions=function(e){return this.request("files/list_revisions",e,"user","api","rpc")},o.filesMove=function(e){return this.request("files/move",e,"user","api","rpc")},o.filesMoveBatch=function(e){return this.request("files/move_batch",e,"user","api","rpc")},o.filesMoveBatchCheck=function(e){return this.request("files/move_batch/check",e,"user","api","rpc")},o.filesMoveV2=function(e){return this.request("files/move_v2",e,"user","api","rpc")},o.filesPermanentlyDelete=function(e){return this.request("files/permanently_delete",e,"user","api","rpc")},o.filesPropertiesAdd=function(e){return this.request("files/properties/add",e,"user","api","rpc")},o.filesPropertiesOverwrite=function(e){return this.request("files/properties/overwrite",e,"user","api","rpc")},o.filesPropertiesRemove=function(e){return this.request("files/properties/remove",e,"user","api","rpc")},o.filesPropertiesTemplateGet=function(e){return this.request("files/properties/template/get",e,"user","api","rpc")},o.filesPropertiesTemplateList=function(e){return this.request("files/properties/template/list",e,"user","api","rpc")},o.filesPropertiesUpdate=function(e){return this.request("files/properties/update",e,"user","api","rpc")},o.filesRestore=function(e){return this.request("files/restore",e,"user","api","rpc")},o.filesSaveUrl=function(e){return this.request("files/save_url",e,"user","api","rpc")},o.filesSaveUrlCheckJobStatus=function(e){return this.request("files/save_url/check_job_status",e,"user","api","rpc")},o.filesSearch=function(e){return this.request("files/search",e,"user","api","rpc")},o.filesUpload=function(e){return this.request("files/upload",e,"user","content","upload")},o.filesUploadSessionAppend=function(e){return this.request("files/upload_session/append",e,"user","content","upload")},o.filesUploadSessionAppendV2=function(e){return this.request("files/upload_session/append_v2",e,"user","content","upload")},o.filesUploadSessionFinish=function(e){return this.request("files/upload_session/finish",e,"user","content","upload")},o.filesUploadSessionFinishBatch=function(e){return this.request("files/upload_session/finish_batch",e,"user","api","rpc")},o.filesUploadSessionFinishBatchCheck=function(e){return this.request("files/upload_session/finish_batch/check",e,"user","api","rpc")},o.filesUploadSessionStart=function(e){return this.request("files/upload_session/start",e,"user","content","upload")},o.paperDocsArchive=function(e){return this.request("paper/docs/archive",e,"user","api","rpc")},o.paperDocsCreate=function(e){return this.request("paper/docs/create",e,"user","api","upload")},o.paperDocsDownload=function(e){return this.request("paper/docs/download",e,"user","api","download")},o.paperDocsFolderUsersList=function(e){return this.request("paper/docs/folder_users/list",e,"user","api","rpc")},o.paperDocsFolderUsersListContinue=function(e){return this.request("paper/docs/folder_users/list/continue",e,"user","api","rpc")},o.paperDocsGetFolderInfo=function(e){return this.request("paper/docs/get_folder_info",e,"user","api","rpc")},o.paperDocsList=function(e){return this.request("paper/docs/list",e,"user","api","rpc")},o.paperDocsListContinue=function(e){return this.request("paper/docs/list/continue",e,"user","api","rpc")},o.paperDocsPermanentlyDelete=function(e){return this.request("paper/docs/permanently_delete",e,"user","api","rpc")},o.paperDocsSharingPolicyGet=function(e){return this.request("paper/docs/sharing_policy/get",e,"user","api","rpc")},o.paperDocsSharingPolicySet=function(e){return this.request("paper/docs/sharing_policy/set",e,"user","api","rpc")},o.paperDocsUpdate=function(e){return this.request("paper/docs/update",e,"user","api","upload")},o.paperDocsUsersAdd=function(e){return this.request("paper/docs/users/add",e,"user","api","rpc")},o.paperDocsUsersList=function(e){return this.request("paper/docs/users/list",e,"user","api","rpc")},o.paperDocsUsersListContinue=function(e){return this.request("paper/docs/users/list/continue",e,"user","api","rpc")},o.paperDocsUsersRemove=function(e){return this.request("paper/docs/users/remove",e,"user","api","rpc")},o.sharingAddFileMember=function(e){return this.request("sharing/add_file_member",e,"user","api","rpc")},o.sharingAddFolderMember=function(e){return this.request("sharing/add_folder_member",e,"user","api","rpc")},o.sharingChangeFileMemberAccess=function(e){return this.request("sharing/change_file_member_access",e,"user","api","rpc")},o.sharingCheckJobStatus=function(e){return this.request("sharing/check_job_status",e,"user","api","rpc")},o.sharingCheckRemoveMemberJobStatus=function(e){return this.request("sharing/check_remove_member_job_status",e,"user","api","rpc")},o.sharingCheckShareJobStatus=function(e){return this.request("sharing/check_share_job_status",e,"user","api","rpc")},o.sharingCreateSharedLink=function(e){return this.request("sharing/create_shared_link",e,"user","api","rpc")},o.sharingCreateSharedLinkWithSettings=function(e){return this.request("sharing/create_shared_link_with_settings",e,"user","api","rpc")},o.sharingGetFileMetadata=function(e){return this.request("sharing/get_file_metadata",e,"user","api","rpc")},o.sharingGetFileMetadataBatch=function(e){return this.request("sharing/get_file_metadata/batch",e,"user","api","rpc")},o.sharingGetFolderMetadata=function(e){return this.request("sharing/get_folder_metadata",e,"user","api","rpc")},o.sharingGetSharedLinkFile=function(e){return this.request("sharing/get_shared_link_file",e,"user","content","download")},o.sharingGetSharedLinkMetadata=function(e){return this.request("sharing/get_shared_link_metadata",e,"user","api","rpc")},o.sharingGetSharedLinks=function(e){return this.request("sharing/get_shared_links",e,"user","api","rpc")},o.sharingListFileMembers=function(e){return this.request("sharing/list_file_members",e,"user","api","rpc")},o.sharingListFileMembersBatch=function(e){return this.request("sharing/list_file_members/batch",e,"user","api","rpc")},o.sharingListFileMembersContinue=function(e){return this.request("sharing/list_file_members/continue",e,"user","api","rpc")},o.sharingListFolderMembers=function(e){return this.request("sharing/list_folder_members",e,"user","api","rpc")},o.sharingListFolderMembersContinue=function(e){return this.request("sharing/list_folder_members/continue",e,"user","api","rpc")},o.sharingListFolders=function(e){return this.request("sharing/list_folders",e,"user","api","rpc")},o.sharingListFoldersContinue=function(e){return this.request("sharing/list_folders/continue",e,"user","api","rpc")},o.sharingListMountableFolders=function(e){return this.request("sharing/list_mountable_folders",e,"user","api","rpc")},o.sharingListMountableFoldersContinue=function(e){return this.request("sharing/list_mountable_folders/continue",e,"user","api","rpc")},o.sharingListReceivedFiles=function(e){return this.request("sharing/list_received_files",e,"user","api","rpc")},o.sharingListReceivedFilesContinue=function(e){return this.request("sharing/list_received_files/continue",e,"user","api","rpc")},o.sharingListSharedLinks=function(e){return this.request("sharing/list_shared_links",e,"user","api","rpc")},o.sharingModifySharedLinkSettings=function(e){return this.request("sharing/modify_shared_link_settings",e,"user","api","rpc")},o.sharingMountFolder=function(e){return this.request("sharing/mount_folder",e,"user","api","rpc")},o.sharingRelinquishFileMembership=function(e){return this.request("sharing/relinquish_file_membership",e,"user","api","rpc")},o.sharingRelinquishFolderMembership=function(e){return this.request("sharing/relinquish_folder_membership",e,"user","api","rpc")},o.sharingRemoveFileMember=function(e){return this.request("sharing/remove_file_member",e,"user","api","rpc")},o.sharingRemoveFileMember2=function(e){return this.request("sharing/remove_file_member_2",e,"user","api","rpc")},o.sharingRemoveFolderMember=function(e){return this.request("sharing/remove_folder_member",e,"user","api","rpc")},o.sharingRevokeSharedLink=function(e){return this.request("sharing/revoke_shared_link",e,"user","api","rpc")},o.sharingShareFolder=function(e){return this.request("sharing/share_folder",e,"user","api","rpc")},o.sharingTransferFolder=function(e){return this.request("sharing/transfer_folder",e,"user","api","rpc")},o.sharingUnmountFolder=function(e){return this.request("sharing/unmount_folder",e,"user","api","rpc")},o.sharingUnshareFile=function(e){return this.request("sharing/unshare_file",e,"user","api","rpc")},o.sharingUnshareFolder=function(e){return this.request("sharing/unshare_folder",e,"user","api","rpc")},o.sharingUpdateFileMember=function(e){return this.request("sharing/update_file_member",e,"user","api","rpc")},o.sharingUpdateFolderMember=function(e){return this.request("sharing/update_folder_member",e,"user","api","rpc")},o.sharingUpdateFolderPolicy=function(e){return this.request("sharing/update_folder_policy",e,"user","api","rpc")},o.teamLogGetEvents=function(e){return this.request("team_log/get_events",e,"team","api","rpc")},o.teamLogGetEventsContinue=function(e){return this.request("team_log/get_events/continue",e,"team","api","rpc")},o.usersGetAccount=function(e){return this.request("users/get_account",e,"user","api","rpc")},o.usersGetAccountBatch=function(e){return this.request("users/get_account_batch",e,"user","api","rpc")},o.usersGetCurrentAccount=function(e){return this.request("users/get_current_account",e,"user","api","rpc")},o.usersGetSpaceUsage=function(e){return this.request("users/get_space_usage",e,"user","api","rpc")};var a=o,c=(function(){function e(e){this.value=e}function r(r){function t(i,n){try{var u=r[i](n),o=u.value;o instanceof e?Promise.resolve(o.value).then(function(e){t("next",e)},function(e){t("throw",e)}):s(u.done?"return":"normal",u.value)}catch(e){s("throw",e)}}function s(e,r){switch(e){case"return":i.resolve({value:r,done:!0});break;case"throw":i.reject(r);break;default:i.resolve({value:r,done:!1})}(i=i.next)?t(i.key,i.arg):n=null}var i,n;this._invoke=function(e,r){return new Promise(function(s,u){var o={key:e,arg:r,resolve:s,reject:u,next:null};n?n=n.next=o:(i=n=o,t(e,r))})},"function"!=typeof r.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(r.prototype[Symbol.asyncIterator]=function(){return this}),r.prototype.next=function(e){return this._invoke("next",e)},r.prototype.throw=function(e){return this._invoke("throw",e)},r.prototype.return=function(e){return this._invoke("return",e)}}(),function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}),p=function(){function e(e,r){for(var t=0;r.length>t;t++){var s=r[t];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(e,s.key,s)}}return function(r,t,s){return t&&e(r.prototype,t),s&&e(r,s),r}}(),l=function(e,r){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?e:r},f=function(){return function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,r){var t=[],s=!0,i=!1,n=void 0;try{for(var u,o=e[Symbol.iterator]();!(s=(u=o.next()).done)&&(t.push(u.value),!r||t.length!==r);s=!0);}catch(e){i=!0,n=e}finally{try{!s&&o.return&&o.return()}finally{if(i)throw n}}return t}(e,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=function(){function e(r){c(this,e),this.accessToken=(r=r||{}).accessToken,this.clientId=r.clientId,this.selectUser=r.selectUser}return p(e,[{key:"setAccessToken",value:function(e){this.accessToken=e}},{key:"getAccessToken",value:function(){return this.accessToken}},{key:"setClientId",value:function(e){this.clientId=e}},{key:"getClientId",value:function(){return this.clientId}},{key:"getAuthenticationUrl",value:function(e,r){var t=this.getClientId();if(!t)throw Error("A client id is required. You can set the client id using .setClientId().");if(!e)throw Error("A redirect uri is required.");var s="https://www.dropbox.com/oauth2/authorize?response_type=token&client_id="+t;return e&&(s+="&redirect_uri="+e),r&&(s+="&state="+r),s}},{key:"authenticateWithCordova",value:function(e,r){function t(){window.setTimeout(function(){o.close()},10),r()}function s(t){if(t.url.indexOf("&error=")>-1)window.setTimeout(function(){o.close()},10),r();else{var s=t.url.indexOf("#access_token="),i=t.url.indexOf("&token_type=");if(s>-1){s+=14,window.setTimeout(function(){o.close()},10);var n=t.url.substring(s,i);e(n)}}}function i(){u||(o.removeEventListener("loaderror",t),o.removeEventListener("loadstop",s),o.removeEventListener("exit",i),u=!0)}var n=this.getAuthenticationUrl("https://www.dropbox.com/1/oauth2/redirect_receiver"),u=!1,o=window.open(n,"_blank");o.addEventListener("loaderror",t),o.addEventListener("loadstop",s),o.addEventListener("exit",i)}},{key:"request",value:function(e,r,t,s,i){var n=null;switch(i){case"rpc":n=this.getRpcRequest();break;case"download":n=this.getDownloadRequest();break;case"upload":n=this.getUploadRequest();break;default:throw Error("Invalid request style: "+i)}return n(e,r,t,s,this.getAccessToken(),this.selectUser)}},{key:"setRpcRequest",value:function(e){this.rpcRequest=e}},{key:"getRpcRequest",value:function(){return void 0===this.rpcRequest&&(this.rpcRequest=u),this.rpcRequest}},{key:"setDownloadRequest",value:function(e){this.downloadRequest=e}},{key:"getDownloadRequest",value:function(){return void 0===this.downloadRequest&&(this.downloadRequest=i),this.downloadRequest}},{key:"setUploadRequest",value:function(e){this.uploadRequest=e}},{key:"getUploadRequest",value:function(){return void 0===this.uploadRequest&&(this.uploadRequest=n),this.uploadRequest}}]),e}(),d=function(e){function r(e){c(this,r);var t=l(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e));return Object.assign(t,a),t}return function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r)}(r,h),p(r,[{key:"filesGetSharedLinkFile",value:function(e){return this.request("sharing/get_shared_link_file",e,"api","download")}}]),r}();return Object.freeze({Dropbox:d}).Dropbox});