Socket
Socket
Sign inDemoInstall

cdigit

Package Overview
Dependencies
Maintainers
1
Versions
54
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cdigit - npm Package Compare versions

Comparing version 2.5.0-rc0 to 2.5.0-rc1

9

.eslintrc.json
{
"extends": ["eslint:recommended"],
"overrides": [
{
"files": ["src/**"],
"files": ["*.ts"],
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",

@@ -19,6 +19,3 @@ "plugin:@typescript-eslint/recommended",

"files": ["*.js"],
"extends": [
"eslint:recommended",
"plugin:prettier/recommended"
],
"extends": ["plugin:prettier/recommended"],
"parserOptions": {

@@ -25,0 +22,0 @@ "ecmaVersion": 2015

@@ -19,3 +19,3 @@ #!/usr/bin/env node

console.log(
" (--algo defaults to `luhn' or CDIGIT_CLI_DEFAULT_ALGO env var if set)"
" (--algo defaults to 'luhn' or CDIGIT_CLI_DEFAULT_ALGO env var if set)"
);

@@ -34,3 +34,3 @@ });

if (!cdigit.names.includes(algo)) {
throw Error(`unknown algorithm \`${algo}'`);
throw Error(`unknown algorithm '${algo}'`);
}

@@ -65,7 +65,2 @@

program.parse(process.argv);
if (program.args.length === 0) {
process.exitCode = 1;
program.help();
}
} catch (err) {

@@ -72,0 +67,0 @@ process.exitCode = 1;

@@ -1,73 +0,73 @@

const cdigit = require('cdigit');
const cdigit = require("cdigit");
// Luhn algorithm
console.log(cdigit.luhn.compute('1234')); // '4'
console.log(cdigit.luhn.generate('1234')); // '12344'
console.log(cdigit.luhn.validate('12344')); // true
console.log(cdigit.luhn.validate('12345')); // false
console.log(cdigit.luhn.compute("1234")); // "4"
console.log(cdigit.luhn.generate("1234")); // "12344"
console.log(cdigit.luhn.validate("12344")); // true
console.log(cdigit.luhn.validate("12345")); // false
// Verhoeff algorithm
console.log(cdigit.verhoeff.compute('1234')); // '0'
console.log(cdigit.verhoeff.generate('1234')); // '12340'
console.log(cdigit.verhoeff.validate('12340')); // true
console.log(cdigit.verhoeff.validate('12345')); // false
console.log(cdigit.verhoeff.compute("1234")); // "0"
console.log(cdigit.verhoeff.generate("1234")); // "12340"
console.log(cdigit.verhoeff.validate("12340")); // true
console.log(cdigit.verhoeff.validate("12345")); // false
// Damm algorithm
console.log(cdigit.damm.compute('1234')); // '0'
console.log(cdigit.damm.generate('1234')); // '12340'
console.log(cdigit.damm.validate('12340')); // true
console.log(cdigit.damm.validate('12345')); // false
console.log(cdigit.damm.compute("1234")); // "0"
console.log(cdigit.damm.generate("1234")); // "12340"
console.log(cdigit.damm.validate("12340")); // true
console.log(cdigit.damm.validate("12345")); // false
// ISO/IEC 7064, MOD 11-2 algorithm
console.log(cdigit.mod11_2.compute('1234')); // '4'
console.log(cdigit.mod11_2.generate('1234')); // '12344'
console.log(cdigit.mod11_2.validate('12344')); // true
console.log(cdigit.mod11_2.validate('12345')); // false
console.log(cdigit.mod11_2.compute("1234")); // "4"
console.log(cdigit.mod11_2.generate("1234")); // "12344"
console.log(cdigit.mod11_2.validate("12344")); // true
console.log(cdigit.mod11_2.validate("12345")); // false
// ISO/IEC 7064, MOD 37-2 algorithm
console.log(cdigit.mod37_2.compute('12CD')); // '6'
console.log(cdigit.mod37_2.generate('12CD')); // '12CD6'
console.log(cdigit.mod37_2.validate('12CD6')); // true
console.log(cdigit.mod37_2.validate('12CD5')); // false
console.log(cdigit.mod37_2.compute("12CD")); // "6"
console.log(cdigit.mod37_2.generate("12CD")); // "12CD6"
console.log(cdigit.mod37_2.validate("12CD6")); // true
console.log(cdigit.mod37_2.validate("12CD5")); // false
// ISO/IEC 7064, MOD 97-10 algorithm
console.log(cdigit.mod97_10.compute('1234')); // '82'
console.log(cdigit.mod97_10.generate('1234')); // '123482'
console.log(cdigit.mod97_10.validate('123482')); // true
console.log(cdigit.mod97_10.validate('123456')); // false
console.log(cdigit.mod97_10.compute("1234")); // "82"
console.log(cdigit.mod97_10.generate("1234")); // "123482"
console.log(cdigit.mod97_10.validate("123482")); // true
console.log(cdigit.mod97_10.validate("123456")); // false
// ISO/IEC 7064, MOD 661-26 algorithm
console.log(cdigit.mod661_26.compute('ABCD')); // 'KN'
console.log(cdigit.mod661_26.generate('ABCD')); // 'ABCDKN'
console.log(cdigit.mod661_26.validate('ABCDKN')); // true
console.log(cdigit.mod661_26.validate('ABCDEF')); // false
console.log(cdigit.mod661_26.compute("ABCD")); // "KN"
console.log(cdigit.mod661_26.generate("ABCD")); // "ABCDKN"
console.log(cdigit.mod661_26.validate("ABCDKN")); // true
console.log(cdigit.mod661_26.validate("ABCDEF")); // false
// ISO/IEC 7064, MOD 1271-36 algorithm
console.log(cdigit.mod1271_36.compute('12CD')); // 'JU'
console.log(cdigit.mod1271_36.generate('12CD')); // '12CDJU'
console.log(cdigit.mod1271_36.validate('12CDJU')); // true
console.log(cdigit.mod1271_36.validate('12CD56')); // false
console.log(cdigit.mod1271_36.compute("12CD")); // "JU"
console.log(cdigit.mod1271_36.generate("12CD")); // "12CDJU"
console.log(cdigit.mod1271_36.validate("12CDJU")); // true
console.log(cdigit.mod1271_36.validate("12CD56")); // false
// ISO/IEC 7064, MOD 11-10 algorithm
console.log(cdigit.mod11_10.compute('1234')); // '0'
console.log(cdigit.mod11_10.generate('1234')); // '12340'
console.log(cdigit.mod11_10.validate('12340')); // true
console.log(cdigit.mod11_10.validate('12345')); // false
console.log(cdigit.mod11_10.compute("1234")); // "0"
console.log(cdigit.mod11_10.generate("1234")); // "12340"
console.log(cdigit.mod11_10.validate("12340")); // true
console.log(cdigit.mod11_10.validate("12345")); // false
// ISO/IEC 7064, MOD 27-26 algorithm
console.log(cdigit.mod27_26.compute('ABCD')); // 'R'
console.log(cdigit.mod27_26.generate('ABCD')); // 'ABCDR'
console.log(cdigit.mod27_26.validate('ABCDR')); // true
console.log(cdigit.mod27_26.validate('ABCDE')); // false
console.log(cdigit.mod27_26.compute("ABCD")); // "R"
console.log(cdigit.mod27_26.generate("ABCD")); // "ABCDR"
console.log(cdigit.mod27_26.validate("ABCDR")); // true
console.log(cdigit.mod27_26.validate("ABCDE")); // false
// ISO/IEC 7064, MOD 37-36 algorithm
console.log(cdigit.mod37_36.compute('12CD')); // '5'
console.log(cdigit.mod37_36.generate('12CD')); // '12CD5'
console.log(cdigit.mod37_36.validate('12CD5')); // true
console.log(cdigit.mod37_36.validate('12CDE')); // false
console.log(cdigit.mod37_36.compute("12CD")); // "5"
console.log(cdigit.mod37_36.generate("12CD")); // "12CD5"
console.log(cdigit.mod37_36.validate("12CD5")); // true
console.log(cdigit.mod37_36.validate("12CDE")); // false
// GTINs (including UPC, EAN, ISBN-13, etc.)
console.log(cdigit.gtin.compute('01234567890')); // '5'
console.log(cdigit.gtin.generate('01234567890')); // '012345678905'
console.log(cdigit.gtin.validate('012345678905')); // true
console.log(cdigit.gtin.validate('012345678901')); // false
console.log(cdigit.gtin.compute("01234567890")); // "5"
console.log(cdigit.gtin.generate("01234567890")); // "012345678905"
console.log(cdigit.gtin.validate("012345678905")); // true
console.log(cdigit.gtin.validate("012345678901")); // false
{
"name": "cdigit",
"version": "2.5.0-rc0",
"version": "2.5.0-rc1",
"description": "Collection of check digit algorithms implemented in JavaScript",

@@ -12,3 +12,3 @@ "main": "lib/index.js",

"build": "rm -rf lib && tsc",
"lint": "eslint --ext .ts src && eslint --ext .js bin test",
"lint": "eslint --ext .js,.ts example.js bin src test",
"prepare": "npm run lint && npm run build && npm test",

@@ -15,0 +15,0 @@ "test": "mocha",

@@ -5,3 +5,2 @@ # cdigit: Check Digit Algorithms in JS

## Synopsis

@@ -12,8 +11,8 @@

```javascript
const cdigit = require('cdigit');
const cdigit = require("cdigit");
// Luhn (a.k.a. Mod 10) algorithm
console.log(cdigit.luhn.compute('1234')); // '4'
console.log(cdigit.luhn.generate('1234')); // '12344'
console.log(cdigit.luhn.validate('12344')); // true
console.log(cdigit.luhn.compute("1234")); // "4"
console.log(cdigit.luhn.generate("1234")); // "12344"
console.log(cdigit.luhn.validate("12344")); // true
```

@@ -30,3 +29,2 @@

## Supported Algorithms

@@ -37,3 +35,3 @@

| Algorithm | cdigit name | Input string | Check character(s) |
|------------|-------------|---------------|--------------------|
| ---------- | ----------- | ------------- | ------------------ |
| [Luhn] | luhn | Numeric (0-9) | 1 digit (0-9) |

@@ -56,3 +54,3 @@ | [Verhoeff] | verhoeff | Numeric (0-9) | 1 digit (0-9) |

| Algorithm | cdigit name | Input string | Check character(s) |
|---------------------------|-------------|-----------------------|-------------------------------------|
| ------------------------- | ----------- | --------------------- | ----------------------------------- |
| ISO/IEC 7064, MOD 11-2 | mod11_2 | Numeric (0-9) | 1 digit or 'X' (0-9X) |

@@ -79,3 +77,3 @@ | ISO/IEC 7064, MOD 37-2 | mod37_2 | Alphanumeric (0-9A-Z) | 1 digit, letter, or '\*' (0-9A-Z\*) |

| Algorithm | cdigit name | Input string | Check character(s) | Also known as |
|-----------|-------------|---------------|--------------------|---------------------------|
| --------- | ----------- | ------------- | ------------------ | ------------------------- |
| GTIN-8 | gtin | Numeric (0-9) | 1 digit (0-9) | EAN-8 |

@@ -86,3 +84,2 @@ | GTIN-12 | gtin | Numeric (0-9) | 1 digit (0-9) | UPC, UPC-A |

[GTIN]: https://www.gs1.org/standards/id-keys/gtin

@@ -95,10 +92,9 @@ [UPC]: https://en.wikipedia.org/wiki/Universal_Product_Code

## Usage - Node.js
Load `cdigit` and access to algorithm objects by cdigit.*name* listed in
Load `cdigit` and access to algorithm objects by cdigit._name_ listed in
[Supported Algorithms section](#supported-algorithms).
```javascript
const cdigit = require('cdigit');
const cdigit = require("cdigit");
const algo = cdigit.mod97_10;

@@ -115,3 +111,3 @@ ```

```javascript
console.log(cdigit.mod97_10.validate('123482')); // true
console.log(cdigit.mod97_10.validate("123482")); // true
```

@@ -126,3 +122,3 @@

```javascript
console.log(cdigit.mod97_10.generate('1234')); // '123482'
console.log(cdigit.mod97_10.generate("1234")); // "123482"
```

@@ -136,3 +132,3 @@

```javascript
console.log(cdigit.mod97_10.compute('1234')); // '82'
console.log(cdigit.mod97_10.compute("1234")); // "82"
```

@@ -142,3 +138,2 @@

## Usage - Command-line

@@ -163,3 +158,2 @@

## License

@@ -171,4 +165,4 @@

* [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
* [MIT license](http://opensource.org/licenses/MIT)
- [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
- [MIT license](http://opensource.org/licenses/MIT)

@@ -183,7 +177,6 @@ at your option.

## See Also
* [GitHub repository](https://github.com/LiosK/cdigit)
* [npm package](https://www.npmjs.com/package/cdigit)
* [typedoc-generated documentation (experimental)](https://liosk.github.io/cdigit/)
- [GitHub repository](https://github.com/LiosK/cdigit)
- [npm package](https://www.npmjs.com/package/cdigit)
- [typedoc-generated documentation (experimental)](https://liosk.github.io/cdigit/)
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc