JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1737
  • Score
    100M100P100Q134036F
  • License MIT

Node.js module for visualCaptcha. Still requires you to have the front-end companion.

Package Exports

  • visualcaptcha

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (visualcaptcha) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Build Status Coverage Status Codacy Code Climate

visualCaptcha-npm

Node.js NPM package for visualCaptcha's backend service

Installation with NPM

You need Node.js installed with npm.

npm install visualcaptcha

Run tests

Run next command to start mocha unit tests:

npm test

Usage

Initialization

On initialization visualCaptcha function requires req.session session object as first argument:

visualCaptcha = require( 'visualcaptcha' )( req.session, defaultImages, defaultAudios );

Where:

  • defaultImages is optional parameter. Defaults to the array inside ./images.json. The path is relative to ./images/
  • defaultAudios is optional parameter. Defaults to the array inside ./audios.json. The path is relative to ./audios/

visualCaptcha properties

  • session, JSON object — Object that will have a reference for the session object. It will have .visualCaptcha.images, .visualCaptcha.audios, .visualCaptcha.validImageOption, and .visualCaptcha.validAudioOption.

  • imageOptions, array — All the image options. These can be easily overwritten or extended using addImageOptions( ), or replaceImageOptions( ). By default, they're populated using the ./images.json file.

  • audioOptions, array — All the audio options. These can be easily overwritten or extended using addImageOptions( ), or replaceImageOptions( ). By default, they're populated using the ./audios.json file.

visualCaptcha methods

  • generate: function( numberOfOptions ) — Generate a new valid visualCaptcha front-end data. numberOfOptions — is optional parameter for number of generated images, defaults to 5.
  • getFrontendData: function() — Get data to be used by the frontend.
  • getValidImageOption: function() — Get the current validImageOption.
  • getValidAudioOption: function() — Get the current validAudioOption.
  • validateImage: function( sentOption ) — Validate the sent image value with the validImageOption.
  • validateAudio: function( sentOption ) — Validate the sent audio value with the validAudioOption.
  • getImageOptions: function() — Return generated image options.
  • getImageOptionAtIndex: function(index) — Return generated image option at index.
  • getAudioOption: function() — Alias for getValidAudioOption.
  • getAllImageOptions: function() — Return all the image options.
  • getAllAudioOptions: function() — Return all the audio options.
  • streamAudio: function( response, fileType ) — Stream audio file. Parameters:
    • response is a response object;
    • fileType is audio filetype, defaults to 'mp3', can also be 'ogg'.
  • streamImage: function( index, response, isRetina ) — Stream image file given an index in the session visualCaptcha images array. Parameters:
    • index is index of the image in the session images array to send;
    • response is a response object;
    • isRetina, boolean, defaults to false.

response object

The response object used in .streamAudio(), and .streamImage() was thought of for Express' response object, so it needs:

  • .set()
  • .write()
  • .status()
  • .send()
  • .end()
  • .headerSent (boolean)

License

View the LICENSE file.