NeXTSTEP Programming Mastermind

    gtin
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    gtin

    npm version javascript standard style travis build coveralls coverage david dependencies david dev dependencies

    GTIN (UPC, EAN, ITF, etc.) utilities.

    npm install gtin



    gtin.isGTIN(barcode)

    Returns true or false, depending on if the string given is a GTIN barcode. Throws an error if an empty string or anything other than a string is provided.

    NOTE: This does not validate the code by check digit. Validation is done with gtin.isValid.

    import { isGTIN } from 'gtin'
    
    isGTIN('1234')      // false
    isGTIN('12341238')  // true
    isGTIN('')          // Error thrown
    isGTIN(123)         // Error thrown

    gtin.isValid(barcode)

    Validates a GTIN (14, 13, 12, or 8-digit) barcode by check digit. Barcode must be a string.

    To validate a UPC-E barcode, expand it first: isValid(upcE.expand('01278906'))

    import { isValid } from 'gtin'
    
    isValid('12341238')       // true
    isValid('1234123412344')  // true
    isValid('12341234123413') // true
    isValid('012000007897')   // true
    isValid('012000007896')   // false
    isValid('abc')            // Error thrown
    isValid(123)              // Error thrown
    isValid('123')            // Error thrown

    gtin.minify(barcode)

    Minifies GTIN to smallest possible representation, by stripping as many leading zeroes as possible. Does not compress to UPC-E.

    import { minify } from 'gtin'
    
    minify('00000012341238')  // '12341238'
    minify('0000012341238')   // '12341238'
    minify('01234123412344')  // '1234123412344
    minify('001234123412344') // Error thrown
    minify('abc')             // Error thrown
    minify(123)               // Error thrown
    minify('123')             // Error thrown

    gtin.getFormat(barcode)

    Gets the format of the given barcode. Does not validate checksum.

    import { getFormat } from 'gtin'
    
    getFormat('12341238')       // 'GTIN-8'
    getFormat('123412341234')   // 'GTIN-12'
    getFormat('1234123412344')  // 'GTIN-13'
    getFormat('01234123412344') // 'GTIN-14'
    getFormat('123412381')      // Error thrown
    getFormat('abc')            // Error thrown
    getFormat(123)              // Error thrown
    getFormat('123')            // Error thrown

    gtin.getRealFormat(barcode)

    Gets the real format of the given barcode, by minifying it first.

    import { getRealFormat } from 'gtin'
    
    getRealFormat('1234123412344')  // 'GTIN-13'
    getRealFormat('01234123412344') // 'GTIN-13'
    getRealFormat('123412381')      // Error thrown
    getRealFormat('abc')            // Error thrown
    getRealFormat(123)              // Error thrown
    getRealFormat('123')            // Error thrown

    gtin.upcE.compress(barcode)

    Compress a UPC-A barcode to an 8-digit UPC-E barcode. Does not validate code by check digit. Barcode must be a string.

    • 12-digit UPC-A: Number system and check digits are taken into account.
    • 11-digit UPC-A: Number system 0 is assumed. Check digit is taken into account.
    • 10-digit UPC-A: Number system 0 is assumed. Check digit is generated.
    import { upcE } from 'gtin'
    
    upcE.compress('1200000789')   // '01278907'
    upcE.compress('12000007897')  // '01278907'
    upcE.compress('012000007897') // '01278907'
    upcE.compress('012000007896') // '01278906'
    upcE.compress('012345678905') // null
    upcE.compress(123)            // Error thrown
    upcE.compress('123')          // Error thrown
    upcE.compress('abc')          // Error thrown

    gtin.upcE.expand(barcode)

    Expands a UPC-E barcode to a 12-digit UPC-A barcode. Does not validate code by check digit. Barcode must be a string.

    • 8-digit UPC-E: Number system and check digits are taken into account.
    • 7-digit UPC-E: Number system 0 is assumed. Check digit is taken into account.
    • 6-digit UPC-E: Number system 0 is assumed. Check digit is generated.
    import { upcE } from 'gtin'
    
    upcE.expand('127890')    // '012000007897'
    upcE.expand('1278907')   // '012000007897'
    upcE.expand('01278907')  // '012000007897'
    upcE.expand('01278906')  // '012000007896'
    upcE.expand('123412341') // Error thrown
    upcE.expand(123)         // Error thrown
    upcE.expand('123')       // Error thrown
    upcE.expand('abc')       // Error thrown

    Install

    npm i gtin

    DownloadsWeekly Downloads

    7,337

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    15.7 kB

    Total Files

    10

    Last publish

    Collaborators

    • str_t