diff --git a/types/dropzone/dropzone-tests.ts b/types/dropzone/dropzone-tests.ts index f52cbc303e..cad22badb7 100644 --- a/types/dropzone/dropzone-tests.ts +++ b/types/dropzone/dropzone-tests.ts @@ -4,6 +4,10 @@ const dropzoneRenameFunction = function (name:string):string { return name + 'new'; }; +Dropzone.createElement('
'); +Dropzone.isBrowserSupported(); +console.log(Dropzone.instances.length); + const dropzoneWithOptions = new Dropzone(".test", { url: "/some/url", method: "post", @@ -14,8 +18,14 @@ const dropzoneWithOptions = new Dropzone(".test", { paramName: "file", createImageThumbnails: true, maxThumbnailFilesize: 1024, - thumbnailWidth: 50, - thumbnailHeight: 50, + thumbnailWidth: 120, + thumbnailHeight: 120, + thumbnailMethod: 'crop', + resizeWidth: 1024, + resizeHeight: 1024, + resizeMimeType: 'image.jpeg', + resizeQuality: .8, + resizeMethod: 'contain', filesizeBase: 1000, maxFiles: 100, params: { @@ -61,7 +71,7 @@ const dropzoneWithOptions = new Dropzone(".test", { init: () => console.log("Initialized"), forceFallback: false, fallback: () => console.log("Fallback"), - resize: (file:Dropzone.DropzoneFile) => ({ + resize: (file:Dropzone.DropzoneFile, width:120, height:120, resizeMethod:'contain') => ({ srcX: 0, srcY: 0, trgX: 10, @@ -70,8 +80,6 @@ const dropzoneWithOptions = new Dropzone(".test", { srcHeight: 100, trgWidth: 50, trgHeight: 50, - optWidth: 50, - optHeight: 50 }), drop: (e:DragEvent) => console.log("Drop"), @@ -146,6 +154,8 @@ const dropzone = new Dropzone(".test"); dropzone.enable(); dropzone.disable(); + + dropzone.files.forEach(f => { if (f.xhr) { console.log(f.xhr.readyState) @@ -167,10 +177,22 @@ dropzone.enqueueFile(firstFile); dropzone.processFile(firstFile); dropzone.uploadFile(firstFile); dropzone.cancelUpload(firstFile); -dropzone.createThumbnail(firstFile, () => { + +dropzone.createThumbnail(firstFile); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true, () => { console.log("createThumbnail") }); -dropzone.createThumbnailFromUrl(firstFile, "/some/url", () => { + +dropzone.createThumbnailFromUrl(firstFile); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true, () => { console.log("createThumbnailFromUrl") }); dropzone.accept(firstFile, (e:string|Error) => { @@ -180,6 +202,9 @@ dropzone.accept(firstFile, (e:string|Error) => { const acceptedFiles = dropzone.getAcceptedFiles(); dropzone.processFiles(acceptedFiles); +const addedFiles = dropzone.getAddedFiles(); +dropzone.processFiles(addedFiles); + const rejectedFiles = dropzone.getRejectedFiles(); dropzone.enqueueFiles(rejectedFiles); @@ -192,12 +217,18 @@ dropzone.processFiles(uploadingFiles); const activeFiles = dropzone.getActiveFiles(); dropzone.processFiles(activeFiles); -const addedFiles = dropzone.getFilesWithStatus(Dropzone.ADDED); -dropzone.processFiles(addedFiles); +const getFileWithStatusAdded = dropzone.getFilesWithStatus(Dropzone.ADDED); +dropzone.processFiles(getFileWithStatusAdded); dropzone.processQueue(); dropzone.removeAllFiles(true); +dropzone.resizeImage(firstFile); +dropzone.resizeImage(firstFile, 120); +dropzone.resizeImage(firstFile, 120, 120); +dropzone.resizeImage(firstFile, 120, 120, 'contain'); +dropzone.resizeImage(firstFile, 120, 120, 'contain', function(){}); + dropzone .on("drop", () => { console.count('drop'); diff --git a/types/dropzone/index.d.ts b/types/dropzone/index.d.ts index 703172072f..e410833e68 100644 --- a/types/dropzone/index.d.ts +++ b/types/dropzone/index.d.ts @@ -1,6 +1,6 @@ -// Type definitions for Dropzone 4.3.0 +// Type definitions for Dropzone 5.0.0 // Project: http://www.dropzonejs.com/ -// Definitions by: Natan Vivo , Andy Hawkins , Vasya Aksyonov , Simon Huber , Sebastiaan de Rooij +// Definitions by: Natan Vivo , Andy Hawkins , Vasya Aksyonov , Simon Huber , Sebastiaan de Rooij , Ted Bicknell // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -16,8 +16,6 @@ declare namespace Dropzone { srcHeight?:number; trgWidth?:number; trgHeight?:number; - optWidth?:number; - optHeight?:number; } export interface DropzoneFile extends File { @@ -41,6 +39,12 @@ declare namespace Dropzone { maxThumbnailFilesize?: number; thumbnailWidth?: number; thumbnailHeight?: number; + thumbnailMethod?: string; + resizeWidth?: number; + resizeHeight?: number; + resizeMimeType?: string; + resizeQuality?: number; + resizeMethod?: string; filesizeBase?: number; maxFiles?: number; params?: {}; @@ -72,7 +76,7 @@ declare namespace Dropzone { init?():void; forceFallback?: boolean; fallback?():void; - resize?(file:DropzoneFile):DropzoneResizeInfo; + resize?(file:DropzoneFile, width?: number, height?: number, resizeMethod?:string):DropzoneResizeInfo; drop?(e:DragEvent):void; dragstart?(e:DragEvent):void; @@ -124,6 +128,9 @@ declare class Dropzone { static autoDiscover:boolean; static options:any; static confirm:(question:string, accepted:() => void, rejected?:() => void) => void; + static createElement(string: string): HTMLElement; + static isBrowserSupported():boolean; + static instances: Dropzone[]; static ADDED:string; static QUEUED:string; @@ -135,6 +142,7 @@ declare class Dropzone { static SUCCESS:string; files:Dropzone.DropzoneFile[]; + defaultOptions:Dropzone.DropzoneOptions; enable():void; @@ -148,18 +156,30 @@ declare class Dropzone { removeAllFiles(cancelIfNecessary?:boolean):void; + resizeImage(file:Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?: string, callback?:(...args:any[]) => void):void; + processQueue():void; cancelUpload(file:Dropzone.DropzoneFile):void; + createThumbnail(file:Dropzone.DropzoneFile, width?:number, height?:number, resizeMethod?:string, fixOrientation?: boolean, callback?:(...args:any[]) => void):any; + + createThumbnailFromUrl(file:Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?:string, fixOrientation?: boolean, callback?:(...args:any[]) => void, crossOrigin?:string):any; + processFiles(files:Dropzone.DropzoneFile[]):void; processFile(file:Dropzone.DropzoneFile):void; uploadFile(file:Dropzone.DropzoneFile):void; + uploadFiles(files:Dropzone.DropzoneFile[]):void; + getAcceptedFiles():Dropzone.DropzoneFile[]; + getActiveFiles(): Dropzone.DropzoneFile[] + + getAddedFiles() : Dropzone.DropzoneFile[]; + getRejectedFiles():Dropzone.DropzoneFile[]; getQueuedFiles():Dropzone.DropzoneFile[];