qz-sift

1.0.1 • Public • Published

sift.js

Filter and parse locally attached hardware information.

Filters

Utilities

Printers

Sift offers the ability to filter a supplied printer list based on an internal database of printer information.

Printer Prerequisites

  • Printers must be supplied in an object array

  • Each object must contain a printer name and printer driver.

    [ { name: 'foo', driver: 'bar' }, { ... } ]

Virtual Printers

  • Sift can keep or toss all PDF, Virtual or File printers:

Before

data = [ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' },
          { name: 'CutePDFWriter', driver: 'PDFwriter.ppd' } ];

Keep/Toss

data = sift.toss(data, { physical: false });
// or
data = sift.keep(data, { physical: true }); 

Sifted

[ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' } ]

Raw Printers

  • Sift can keep or toss all raw capable printers.

Before

data = [ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' },
          { name: 'Zebra LP2844 Raw', driver: 'Generic / Text Only' } ];

Keep/Toss

data = sift.keep(data, { type: 'raw' });

Sifted

[ { name: 'Zebra LP2844 Raw', driver: 'Generic / Text Only' } ]

USB Data

USB Scale Parsing

  • Sift can parse USB Data into weight, units, status in plain English text.

Before

var data = ['\x03', '\x02', '\x0C', '\xFE', '\x00', '\x00', '\x00', '\x00'];

Parse Data

var weight = sift.parse.scale(data);

Parsed

"0.03lbs - Stable"

USB Devices - Unfinished

Sift can identify USB devices by type based on an internal database of USB devices. See also USB Scale Parsing

USB Prerequisites

  • USB device listing must be supplied in an object array

  • Each object must contain a USB vendor and USB product.

    [ { vendor: '0x0EB8', product: '0xF000' }, { ... } ]

USB Scales

  • Sift can return the listing of attached USB scales.

Before

 data = [ { vendor: '0x0EB8', product: '0xF000' },
           { vendor: '0x0B9E', product: '0xF0F0' } ];

Keep/Toss

data = sift.keep(data, { type: 'scale' });

Sifted

[ { vendor: '0x0EB8', product: '0xF000' } ]

Package Sidebar

Install

npm i qz-sift

Weekly Downloads

20

Version

1.0.1

License

LGPL-2.1

Last publish

Collaborators

  • qzind