Gathering detailed insights and metrics for ngx-dropzone
Gathering detailed insights and metrics for ngx-dropzone
Gathering detailed insights and metrics for ngx-dropzone
Gathering detailed insights and metrics for ngx-dropzone
npm install ngx-dropzone
Typescript
Module System
Node Version
NPM Version
99.1
Supply Chain
100
Quality
75.9
Maintenance
100
Vulnerability
100
License
TypeScript (77.66%)
HTML (8.67%)
SCSS (6.73%)
JavaScript (6.5%)
CSS (0.43%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
133 Stars
84 Commits
58 Forks
7 Watchers
15 Branches
11 Contributors
Updated on Jul 15, 2024
Latest Version
3.1.0
Package Id
ngx-dropzone@3.1.0
Unpacked Size
244.91 kB
Size
62.59 kB
File Count
28
NPM Version
8.3.0
Node Version
17.3.0
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
1
A lightweight and highly customizable Angular dropzone component for file uploads.
For a demo see DEMO. And the CODE for the demo.
$ npm install --save ngx-dropzone
1// in app.module.ts 2import { NgxDropzoneModule } from 'ngx-dropzone'; 3 4@NgModule({ 5 ... 6 imports: [ 7 NgxDropzoneModule 8 ], 9 ... 10}) 11export class AppModule { }
1<!-- in app.component.html --> 2<ngx-dropzone (change)="onSelect($event)"> 3 <ngx-dropzone-label>Drop it, baby!</ngx-dropzone-label> 4 <ngx-dropzone-preview *ngFor="let f of files" [removable]="true" (removed)="onRemove(f)"> 5 <ngx-dropzone-label>{{ f.name }} ({{ f.type }})</ngx-dropzone-label> 6 </ngx-dropzone-preview> 7</ngx-dropzone>
1// in app.component.ts 2files: File[] = []; 3 4onSelect(event) { 5 console.log(event); 6 this.files.push(...event.addedFiles); 7} 8 9onRemove(event) { 10 console.log(event); 11 this.files.splice(this.files.indexOf(event), 1); 12}
You can also use special preview components to preview images or videos:
1<ngx-dropzone-image-preview ngProjectAs="ngx-dropzone-preview" *ngFor="let f of files" [file]="f"> 2 <ngx-dropzone-label>{{ f.name }} ({{ f.type }})</ngx-dropzone-label> 3</ngx-dropzone-image-preview>
1<ngx-dropzone-video-preview ngProjectAs="ngx-dropzone-preview" *ngFor="let f of files" [file]="f"> 2 <ngx-dropzone-label>{{ f.name }} ({{ f.type }})</ngx-dropzone-label> 3</ngx-dropzone-video-preview>
This component is the actual dropzone container. It contains the label and any file previews. It has an event listener for file drops and you can also click it to open the native file explorer for selection.
Use it as a stand-alone component <ngx-dropzone></ngx-dropzone>
or by adding it as an attribute to a custom div
(<div class="custom-dropzone" ngx-dropzone></div>
).
It will add the classes ngx-dz-hovered
and ngx-dz-disabled
to its host element if necessary. You could override the styling of these effects if you like to.
This component has the following Input properties:
[multiple]
: Allow the selection of multiple files at once. Defaults to true
.accept
: Set the accepted file types (as for a native file element). Defaults to '*'
. Example: accept="image/jpeg,image/jpg,image/png,image/gif"
[maxFileSize]
: Set the maximum size a single file may have, in bytes. Defaults to undefined
.[disabled]
: Disable any user interaction with the component. Defaults to false
.[expandable]
: Allow the dropzone container to expand vertically as the number of previewed files increases. Defaults to false
which means that it will allow for horizontal scrolling.[disableClick]
: Prevent the file selector from opening when clicking the dropzone.[id], [aria-label], [aria-labelledby]
, [aria-describedby]
: Forward the accessibility properties to the file input element.[processDirectoryDrop]
: Enable extracting files from dropped directories. Defaults to false
.It has the following Output event:
(change)
: Emitted when any files were added or rejected. It returns a NgxDropzoneChangeEvent
with the properties source: NgxDropzoneComponent
, addedFiles: File[]
and rejectedFiles: RejectedFile[]
.The RejectedFile
extends the native File and adds an optional reason property to tell you why the file was rejected. Its value will be either 'type'
for the wrong acceptance type, size
if it exceeds the maximum file size or no_multiple
if multiple is set to false and more than one file is provided.
If you'd like to show the native file selector programmatically then do it as follows:
1<ngx-dropzone #drop></ngx-dropzone> 2<button (click)="drop.showFileSelector()">Open</button>
This component has no attributes or methods and acts as a container for the label text using content projection. You can place anything inside of it and the text will always be centered.
This component shows a basic file preview when added inside the dropzone container. The previews can be focused using the tab key and be deleted using the backspace or delete keys.
This component has the following Input properties:
[file]
: The dropped file to preview.[removable]
: Allow the user to remove files. Required to allow keyboard interaction and show the remove badge on hover.It has the following Output event:
(removed)
: Emitted when the element should be removed (either by clicking the remove badge or by pressing backspace/delete keys). Returns the file from the Input property.The ngx-dropzone-image-preview
and ngx-dropzone-video-preview
components inherit from this component but expand the preview functionality to display either images or videos directly in the component. See the wiki on how to implement your own custom preview components.
This component is used within the previews to remove selected files. You can use it within your own preview component implementation if you like (see the wiki).
How to upload a file to a Web API?
MIT © Peter Freeman
No vulnerabilities found.
Reason
no binaries found in the repo
Reason
Found 6/12 approved changesets -- score normalized to 5
Reason
project is archived
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
license file not detected
Details
Reason
project is not fuzzed
Details
Reason
branch protection not enabled on development/release branches
Details
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
Reason
61 existing vulnerabilities detected
Details
Score
Last Scanned on 2025-07-14
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More