nc-image-picker
Is a simple and straight-forward JQuery image picker library for retrieving, uploading, and deleting images from an image gallery. The library uses axios for making http request, JQuery to do DOM manipulation, and bootstrap for UI framework. The view can
Last updated 8 months ago by dennyharijanto .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install nc-image-picker 
SYNC missed versions from official npm registry.

Nusantara-Cloud's Image Picker

Is a simple and straight-forward JQuery image picker library for retrieving, uploading, and deleting images from an image gallery. The library uses axios for making http request, JQuery to do DOM manipulation, and bootstrap for UI framework. The view can be easily swapped by creating new view file implementing the typescript interface defined at index.d.ts

image

Usage

Frontend

Through browser

The file dist/nc-image-picker.js is a browserify bundle ready to be used by HTML immediately. It, however, depends on JQuery and Bootstrap. See documentation/example-usage.html for example. In that example, mockModel is used instead of the real network-based model.

  $('#imagePicker').NCImagePicker({
    // Callback called when an image is selected
    callbackFn: imageSelected,
    // URL for adding, retrieving, and deleting images
    // postURL: 'http://www.example.com/image',
    // getURL: 'http://www.example.com/images',
    // deleteURL: 'http://www.example.com/images/delete',

    // For demo purposes, we use simulation
    useMockModel: true,
    // Number of image to be loaded in the beginning and when 'Load More' is pressed
    numImagesPerLoad: 2
  })

Through browserify

Files under gen-js/ are javascripts generated by typescript compiler that are compatible with browserify. The only caveat is the library expects JQuery to be SHIM-ed, which means the browser that would load the script is expected to have JQuery loaded as a <script>. This is because bundling JQuery through browserify enlarges the output substantially, and most of the time JQuery is already used in <script> anyway.

Backend

From the backend side, there are 3 REST API endpoints the need to be implemented. See index.d.ts for the type definitions.

End-point for Retrieveing All Images

This is a GET an point that returns JSON data in the following format:

NCResponse<ImageObject[]>

When the optional thumbanailURL is provided, the gallery will use it for the thumbanil. This is useful to save on bandwidth and improve load time.

End-point for Uploading an Image

This is a POST endpoint that expects the image in terms of multipart/form-data with the image identified by key file

For NodeJS-based server, it can be easily implemented using multer library. (see: https://www.npmjs.com/package/multer)

End-point for Deleting an Image

This is a POST endpoint that expects a JSON data with the following format:

{ filename: 'image to be deleted' }

Where filename is the one returned when retrieving all the images.

Current Tags

  • 1.3.4                                ...           latest (8 months ago)

9 Versions

  • 1.3.4                                ...           8 months ago
  • 1.3.3                                ...           8 months ago
  • 1.3.2                                ...           8 months ago
  • 1.3.1                                ...           8 months ago
  • 1.3.0                                ...           8 months ago
  • 1.2.1                                ...           2 years ago
  • 1.1.1                                ...           2 years ago
  • 1.1.0                                ...           2 years ago
  • 1.0.0                                ...           2 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 1
Last Month 3
Dependencies (2)
Dev Dependencies (14)
Dependents (0)
None

Copyright 2014 - 2016 © taobao.org |