npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ng-dropfile

v1.2.0

Published

An easy-to-use and customizable Angular component for handling files with style.

Downloads

11

Readme

ng-dropfile

An easy-to-use and customizable Angular component for handling files with style.

  • Advanced features
  • Customizable
  • Image preview
  • File deletion
  • Multiple event triggers

Installation

Install ng-dropfile package with npm

  npm install ng-dropfile

Setup

Import the ngDropfileModule in your application.

import { CommonModule } from '@angular/common';
import { NgDropfileModule } from 'ng-dropfile';

@NgModule({
  imports: [
    CommonModule,
    NgDropfileModule,
  ],
  bootstrap: [...],
  declarations: [...],
})
class MainModule {}

Usage/Examples

Create the directive where you need it:

<ng-dropfile></ng-dropfile>

You can customize your dropfile properties directly. In this example, we change the default maxFileSize from 1MB to 5MB.

<ng-dropfile [maxFileSize]="5"></ng-dropfile>

This is how you can change the default messages for the component:

<ng-dropfile [messages]=:'Drag and Drop your files'}"></ng-dropfile>

You also can capture the emmited events:

<ng-dropfile (onClear)="myFunction($event)"></ng-dropfile>

Options

Individual customizable options.

| Option | Description | Type | Default Value | | ------------------ | ------------------------------------------------- | --------------------- | --------------------- | | maxFileSize | Maximum file size in megabytes. | number | 1 | | multiple | Allow multiple file selection. | boolean | true | | showErrors | Show or hide error messages. | boolean | true | | showFileList | Show or hide the list of selected files. | boolean | true | | formatsAccepted | Accepted file formats. | string[] | ['png', 'jpg', 'jpeg', 'gif', 'pdf'] | | messages | Custom messages for the user interface. | object | | |      button | Default message to browse button. | string | Browse file | |      default | Default message to select file. | string | Choose a file or drag and drop it here | |      formats | Default message for accepted formats/extensions. | string | Only <formats> formats accepted. | |      default | Default message to replace file. | string | Click to replace | | errors | Possible error messages. | object | | |      default | Default error message | string | Ooops; something wrong happened. | |      filesize | Default error message for file size. | string | Some files are too big. Max file size: <maxFileSize> MB. | |      formats | Default message to replace file. | string | Some files don't match the valid formats. |

Events

| Event | Description | Response | |-------------------|----------------------------------------------------|-----------------------------------| | onDelete | Triggered when a file is deleted or removed. | File | | onSelect | Triggered when one or more files are selected. | File[] | | onError | Triggered when an error occurs. | string | | onClear | Triggered when the component is reset or cleared. | void |

Methods

| Event | Description | Event Type | |-------------------|----------------------------------------------------|-----------------------------------| | getFiles |Get the selected files. | File[] | | clear | Clear all selected files. | void |

You can call a dropfile child component method assigning a #id in your <ng-dropfile> tag in your html:

<ng-dropfile #dropfileChild ></ng-dropfile>

And access it in your parent component in this way:

export class MyComponent {

 constructor(){ }

@ViewChild(DropfileComponent) dropfileChild: DropfileComponent;

myClearFunction(){
    this.dropfileChild.clear();
  }
}

License

MIT

Authors