New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

angular-pallet-bundle

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-pallet-bundle

This library is a directive that wraps the following:

latest
npmnpm
Version
2.1.0
Version published
Maintainers
1
Created
Source

Angular Pallet Bundle

This library is a directive that wraps the following:

  • Angular-Pallet: it's an angular directive to perform asynchronous file uploads. It's built on top of Ng-File-Upload and it was created to play with Paperclip Upload gem.

  • Angular-Progress: directive that allows you to show progress status as a bar or percentage badge.

  • Angular-Doc-Preview: directive that allows you to show a file preview from a given url.

This directive is not intended to be a replacement for Ng-File-Upload. Rather, it uses its potential and prevents you to deal with annoying details like:

The visual representation of the upload progress.

The visual representation of errors in the upload process.

The file preview. Not only images, files of any kind.

The visual representation of the multiple files to upload.

As "the icing on the cake", it handles the upload process asynchronously using the angular-pallet directive.

Installation

bower install ng-file-upload --save
bower install https://github.com/platanus/angular-pallet-bundle --save

Include the JS files in your project and the library as an Angular Dependency

angular.module('yourapp', ['platanus.palletBundle']);

The library comes with a proposed stylesheet under /dist/angular-pallet-bundle.css. You can use it or create your own.

Usage

To make it simple, I'm going to show you a use case example... Suppose you have a User model. This model has two attributes: avatar (user photo) and file (a document or spreadsheet). So, from your application, you want to let the user:

  • Upload the avatar. See a preview (a thumbnail maybe), be sure the upload was successful.
  • Upload the file. See a preview (a link), be sure the upload was successful.
  • Submit the form and link all the user data on the server.
<form method="post" action="/users">

  <pallet-upload-handler
    render-image-as="thumb"
    no-document-text="No avatar..."
    upload-url="uploads"
    ng-model="user.avatarIdentifier">
  </pallet-upload-handler>

  <pallet-upload-handler
    no-document-text="No file..."
    upload-url="uploads"
    ng-model="user.fileUrl">
  </pallet-upload-handler>

  <input type="hidden" ng-value="user.avatarIdentifier" name="user[avatar_identifier]" />
  <input type="hidden" ng-value="user.fileIdentifier" name="user[file_identifier]" />

  <input type="submit" value="Send" />

</form>

In order to make this directive work, the POST /uploads response must be a json with the following format:

{
  "upload": {
    "identifier": "RmQwYe5j",
    "file_extension": "png",
    "file_name": "pikachu",
    "download_url": "http://server.platan.us/uploads/RmQwYe5j/download"
  }
}

Paperclip Upload solves the server side for you.

Directive Options:

Mandatory
  • ng-model: to keep the identifier(s) of the uploaded file. If multiple attribute is "true", the model will have a value like this: ["EJ6pOl5Y", "ZN5BaK3j"] otherwise "EJ6pOl5Y".
  • upload-url: must contain the url to perform the POST to save files.
Optional
  • no-document-text: custom message to show when the url is empty. By default, will show nothing.
  • render-image-as: this option is only for images. You can choose, to show images: as link or thumb. If this attribute is not present will show thumbnail and link.
  • progress-type: with "bar" value, will show a progress bar. With indicator value will show a progress badge with this format {progress}% (for example 35%). Default is indicator.
  • multiple: if present, multiple upload functionality will be enabled.

Contributing

  • Fork it
  • Create your feature branch (git checkout -b my-new-feature)
  • Commit your changes (git commit -am 'Add some feature')
  • Push to the branch (git push origin my-new-feature)
  • Create new Pull Request

Credits

Thank you contributors!

Platanus

angular-pallet-bundle is maintained by platanus.

License

angular-pallet-bundle is © 2015 platanus, spa. It is free software and may be redistributed under the terms specified in the LICENSE file.

FAQs

Package last updated on 01 Feb 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts