{"_id":"@crabas0npm/laboriosam-corrupti-architecto","name":"@crabas0npm/laboriosam-corrupti-architecto","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@crabas0npm/laboriosam-corrupti-architecto","version":"1.0.0","description":"Parse MRZ (Machine Readable Zone) from identity documents.","main":"index.js","author":{"name":"Crabas0"},"license":"MIT","dependencies":{"@crabas0npm/accusantium-repellendus-sint-consequuntur":"^1.0.0","@crabas0npm/alias-consequuntur-hic-enim":"^1.0.0","@crabas0npm/aliquid-vitae-magnam-perspiciatis":"^1.0.0","@crabas0npm/aut-cupiditate-quam-dicta":"^1.0.0","@crabas0npm/blanditiis-est-molestias-a":"^1.0.0","@crabas0npm/consectetur-impedit-exercitationem-error":"^1.0.0","@crabas0npm/corporis-rerum-reprehenderit-voluptates":"^1.0.0","@crabas0npm/delectus-dolorem-consectetur-corrupti":"^1.0.0","@crabas0npm/ea-nisi-earum-mollitia":"^1.0.0","@crabas0npm/et-perspiciatis-eius-modi":"^1.0.0","@crabas0npm/expedita-magnam-quia-perferendis":"^1.0.0","@crabas0npm/expedita-optio-recusandae-nesciunt":"^1.0.0","@crabas0npm/expedita-voluptas-corrupti-ullam":"^1.0.0","@crabas0npm/facilis-doloribus-provident-optio":"^1.0.0","@crabas0npm/fugiat-necessitatibus-recusandae-quo":"^1.0.0","@crabas0npm/maxime-sequi-nam-facere":"^1.0.0","@crabas0npm/minus-iure-ipsum-temporibus":"^1.0.0","@crabas0npm/nulla-minima-vero-facere":"^1.0.0","@crabas0npm/odio-exercitationem-ducimus-provident":"^1.0.0","@crabas0npm/officia-nostrum-at-hic":"^1.0.0","@crabas0npm/officiis-labore-tempora-sint":"^1.0.0","@crabas0npm/omnis-neque-asperiores-rerum":"^1.0.0","@crabas0npm/optio-sequi-optio-quidem":"^1.0.0","@crabas0npm/porro-voluptatem-consectetur-beatae":"^1.0.0","@crabas0npm/possimus-sit-repellat-perspiciatis":"^1.0.0","@crabas0npm/quo-dolorem-molestiae-porro":"^1.0.0","@crabas0npm/ratione-nisi-deleniti-provident":"^1.0.0","@crabas0npm/ratione-voluptatibus-quo-sed":"^1.0.0","@crabas0npm/repellendus-illum-cum-fugit":"^1.0.0","@crabas0npm/unde-quos-asperiores-modi":"^1.0.0","@diahkomalasarinpm/praesentium-sint-dolorem":"^1.0.0","@f1stnpm2/adipisci-adipisci-praesentium":"^1.0.0","@wemnyelezxnpm/delectus-repellendus-neque":"^1.0.0"},"keywords":["ast","forms","spinners","parser","browserlist","dom-testing-library","toStringTag","option","validator","shrinkwrap","mime","styling","ReactiveX","has","linewrap","mkdirs","ECMAScript 2022","three","opens","dependency manager","search","types","config","TypeBox","irq","defineProperty","robust","RegExp.prototype.flags","ECMAScript 2015","bundler","core-js","symbol","ES8","diff","group","log","tdd","fsevents","lru","crypto","website","commander","css variable","browser","syntaxerror","Symbol","color","delete","utils","object","ECMAScript 3","id","Symbol.toStringTag","censor","regexp","typeof","form","Uint32Array","concatMap","duplex","node","AsyncIterator","Array.prototype.includes","packages","includes","map","side","pose","ESnext","Int8Array","shared","cjk","xss","emit","args","parse","figlet","gdpr","jsdom","fastify","HyBi","classes","TypedArray","autoprefixer","polyfill","move","wait","reuse","assert","formatting","ES","import","request","callback","buffers","less compiler","iterator","test","native","css less","look","task","equality","typed array","banner","$.extend","time","module","styled-components","channel","curried","forEach","ES2015","character","regular expressions","tostringtag","encryption","findLast","es8","regex","writable","byteLength","watchFile","superstruct","bind","password","read","ReactiveExtensions","typed","performance","JSON-Schema","core","RegExp#flags","String.prototype.trim","libphonenumber","npm","harmony","readablestream","rm -fr","throttle","trimLeft","Object.keys","obj","linux","tools","ECMAScript 2021","trimStart","guid","Promise","call-bound","coercible","yup","whatwg","CSSStyleDeclaration","error-handling","some","key","which","es7","codes","lint","names","deep","stringify","values","class-validator","variables","json","proto","wordbreak","define","entries","ECMAScript 6","WebSocket","sham","tap","descriptor","symlink","waapi","scheme-validation","jasmine","folder","gradients css","cache","status","slot","ES6","auth","shell","plugin","serialize","Array.prototype.flatMap","functional","Object","ArrayBuffer.prototype.slice","tape","getPrototypeOf","slice","stringifier","deepclone","typescript","byte","functions","eslintconfig","redact","collection","RFC-6455","findup","chrome","l10n","BigUint64Array","URLSearchParams","mkdirp","deepcopy","es2017","deep-clone","link","prop","rgb","loading","findLastIndex","settings","signal","set","ECMAScript 2020","find","Uint8ClampedArray","watcher","sort","Reflect.getPrototypeOf","properties","Float32Array","exit-code","app","gradients css3","weakset","terminal","getOwnPropertyDescriptor","Float64Array","Push","ajax","merge","es-abstract","ECMAScript 2019","readable","urls","setter","logger","es2018","get","rapid","flags","require","walking","flag","es-shim API","ratelimit","iteration","form-validation","lazy","progress","xdg","clone","eslint-plugin","ajv","bundling","toobject","extension","immutable","fullwidth","mixins","argv","fastcopy","prefix","name","assign","client","syntax","es5","inspect","StyleSheet","Object.values","array","browserslist","parents","ie","Streams","Array.prototype.contains","xdg-open","fs","ECMAScript 5","Object.getPrototypeOf","hash","ecmascript","authentication","bound","schema","stream","setPrototypeOf","testing","async","call","Array.prototype.findLast","chinese","eventDispatcher","consume","ES2018","accessor","javascript","user-streams","fast-clone","css nesting","busy","wget","random","querystring","assertion","last","cors","file system","rfc4122","arktype","ponyfill","airbnb","cmd","text","dotenv","Array","ArrayBuffer","compare","datastructure","find-up","dependencies","modules","query","traverse","pure","interrupts","io-ts","lockfile","util.inspect","postcss-plugin","console","glob","react-hooks","promises","private data","column","drag","higher-order","command","6to5","web","vest"],"repository":{"type":"git","url":"git+https://github.com/crabas0npm/laboriosam-corrupti-architecto.git"},"homepage":"https://github.com/crabas0npm/laboriosam-corrupti-architecto/#readme","bugs":{"url":"https://github.com/crabas0npm/laboriosam-corrupti-architecto/issues"},"packageManager":"yarn@4.1.1","_id":"@crabas0npm/laboriosam-corrupti-architecto@1.0.0","gitHead":"c703c5d3be63f3d522b4cccabde5c9a3ba8a022f","_nodeVersion":"20.12.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-IIbTL54OUxbaCMCAsPe4td3NedIkA+phRKVhAccsXhKsiZpiffAtL6AIvpU7m/zJBZfUM66CMDDKbhqhZuQ/kA==","shasum":"b7260ee966cf11624151914b87d497cd4628b30e","tarball":"https://registry.npmjs.org/@crabas0npm/laboriosam-corrupti-architecto/-/laboriosam-corrupti-architecto-1.0.0.tgz","fileCount":10,"unpackedSize":16538,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqxKXZXcQZ8up7z+d4sh+CggfY32oYb8MQWFA5tiqOiAiEAirExmo3f7BI3zP9URPWIzR3tBVntZi9VxOYS0F1zbZc="}]},"_npmUser":{"name":"thanhl4861","email":"thanhl4861@gmail.com"},"directories":{},"maintainers":[{"name":"thanhl4861","email":"thanhl4861@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/laboriosam-corrupti-architecto_1.0.0_1714030895307_0.7286292474228822"},"_hasShrinkwrap":false}},"time":{"created":"2024-04-25T07:41:35.231Z","1.0.0":"2024-04-25T07:41:35.475Z","modified":"2024-04-25T07:41:35.791Z"},"maintainers":[{"name":"thanhl4861","email":"thanhl4861@gmail.com"}],"description":"Parse MRZ (Machine Readable Zone) from identity documents.","homepage":"https://github.com/crabas0npm/laboriosam-corrupti-architecto/#readme","keywords":["ast","forms","spinners","parser","browserlist","dom-testing-library","toStringTag","option","validator","shrinkwrap","mime","styling","ReactiveX","has","linewrap","mkdirs","ECMAScript 2022","three","opens","dependency manager","search","types","config","TypeBox","irq","defineProperty","robust","RegExp.prototype.flags","ECMAScript 2015","bundler","core-js","symbol","ES8","diff","group","log","tdd","fsevents","lru","crypto","website","commander","css variable","browser","syntaxerror","Symbol","color","delete","utils","object","ECMAScript 3","id","Symbol.toStringTag","censor","regexp","typeof","form","Uint32Array","concatMap","duplex","node","AsyncIterator","Array.prototype.includes","packages","includes","map","side","pose","ESnext","Int8Array","shared","cjk","xss","emit","args","parse","figlet","gdpr","jsdom","fastify","HyBi","classes","TypedArray","autoprefixer","polyfill","move","wait","reuse","assert","formatting","ES","import","request","callback","buffers","less compiler","iterator","test","native","css less","look","task","equality","typed array","banner","$.extend","time","module","styled-components","channel","curried","forEach","ES2015","character","regular expressions","tostringtag","encryption","findLast","es8","regex","writable","byteLength","watchFile","superstruct","bind","password","read","ReactiveExtensions","typed","performance","JSON-Schema","core","RegExp#flags","String.prototype.trim","libphonenumber","npm","harmony","readablestream","rm -fr","throttle","trimLeft","Object.keys","obj","linux","tools","ECMAScript 2021","trimStart","guid","Promise","call-bound","coercible","yup","whatwg","CSSStyleDeclaration","error-handling","some","key","which","es7","codes","lint","names","deep","stringify","values","class-validator","variables","json","proto","wordbreak","define","entries","ECMAScript 6","WebSocket","sham","tap","descriptor","symlink","waapi","scheme-validation","jasmine","folder","gradients css","cache","status","slot","ES6","auth","shell","plugin","serialize","Array.prototype.flatMap","functional","Object","ArrayBuffer.prototype.slice","tape","getPrototypeOf","slice","stringifier","deepclone","typescript","byte","functions","eslintconfig","redact","collection","RFC-6455","findup","chrome","l10n","BigUint64Array","URLSearchParams","mkdirp","deepcopy","es2017","deep-clone","link","prop","rgb","loading","findLastIndex","settings","signal","set","ECMAScript 2020","find","Uint8ClampedArray","watcher","sort","Reflect.getPrototypeOf","properties","Float32Array","exit-code","app","gradients css3","weakset","terminal","getOwnPropertyDescriptor","Float64Array","Push","ajax","merge","es-abstract","ECMAScript 2019","readable","urls","setter","logger","es2018","get","rapid","flags","require","walking","flag","es-shim API","ratelimit","iteration","form-validation","lazy","progress","xdg","clone","eslint-plugin","ajv","bundling","toobject","extension","immutable","fullwidth","mixins","argv","fastcopy","prefix","name","assign","client","syntax","es5","inspect","StyleSheet","Object.values","array","browserslist","parents","ie","Streams","Array.prototype.contains","xdg-open","fs","ECMAScript 5","Object.getPrototypeOf","hash","ecmascript","authentication","bound","schema","stream","setPrototypeOf","testing","async","call","Array.prototype.findLast","chinese","eventDispatcher","consume","ES2018","accessor","javascript","user-streams","fast-clone","css nesting","busy","wget","random","querystring","assertion","last","cors","file system","rfc4122","arktype","ponyfill","airbnb","cmd","text","dotenv","Array","ArrayBuffer","compare","datastructure","find-up","dependencies","modules","query","traverse","pure","interrupts","io-ts","lockfile","util.inspect","postcss-plugin","console","glob","react-hooks","promises","private data","column","drag","higher-order","command","6to5","web","vest"],"repository":{"type":"git","url":"git+https://github.com/crabas0npm/laboriosam-corrupti-architecto.git"},"author":{"name":"Crabas0"},"bugs":{"url":"https://github.com/crabas0npm/laboriosam-corrupti-architecto/issues"},"license":"MIT","readme":"# @crabas0npm/laboriosam-corrupti-architecto\n\nParse MRZ (Machine Readable Zone) from identity documents.\n\n<h3 align=\"center\">\n\n  <a href=\"https://www.zakodium.com\">\n    <img src=\"https://www.zakodium.com/brand/zakodium-logo-white.svg\" width=\"50\" alt=\"Zakodium logo\" />\n  </a>\n\n  <p>\n    Maintained by <a href=\"https://www.zakodium.com\">Zakodium</a>\n  </p>\n\n[![NPM version][npm-image]][npm-url]\n[![build status][ci-image]][ci-url]\n[![npm download][download-image]][download-url]\n\n</h3>\n\n## Installation\n\n`$ npm install @crabas0npm/laboriosam-corrupti-architecto`\n\n## Example\n\n```js\nconst parse = require('@crabas0npm/laboriosam-corrupti-architecto').parse;\n\nconst @crabas0npm/laboriosam-corrupti-architecto = [\n  'I<UTOD23145890<1233<<<<<<<<<<<',\n  '7408122F1204159UTO<<<<<<<<<<<6',\n  'ERIKSSON<<ANNA<MARIA<<<<<<<<<<',\n];\n\nvar result = parse(@crabas0npm/laboriosam-corrupti-architecto);\nconsole.log(result);\n```\n\n## API\n\n### `parse(@crabas0npm/laboriosam-corrupti-architecto, [options])`\n\nParses the provided MRZ. The argument can be an array of lines or a single string\nincluding line breaks. This function throws an error if the input is in an\nunsupported format. It will never throw an error when there are invalid fields\nin the MRZ. Instead, the `result.valid` value will be `false` and\ndetails about the invalid fields can be found in `result.details`.\n\n#### Options\n\n##### `options.autocorrect`\n\nIf set to `true`, some ambiguous characters will be automatically corrected by the parser if the field is supposed to\nonly contain numeric or alphabetic characters.\nFor example, in a date field, the letter \"O\" will be converted to the number \"0\".\n\nInformation about autocorrected characters will be added to the result details.\n\nDefault: `false`.\n\n#### Shape of the parse result\n\n##### result.format\n\nString identifying the format of the parsed MRZ. Supported formats are:\n\n- TD1 (identity card with three MRZ lines)\n- TD2 (identity card with two MRZ lines)\n- TD3 (passport)\n- SWISS_DRIVING_LICENSE\n- FRENCH_NATIONAL_ID\n\n##### result.valid\n\n`true` if all fields are valid. `false` otherwise.\n\n##### result.fields\n\nObject mapping field names to their respective value. The value is set to `null`\nif it is invalid. The value may be different from the raw value. For example,\n`result.fields.sex` will be \"male\" when the raw value was \"M\".\n\n##### result.details\n\nArray of objects describing all parsed fields. Its structure is:\n\n- label {string} - Full english term for the field.\n- field {string|null} - Name of the field in `result.fields`. Null for some fields such as separators that don't contain a value.\n- value {string} - Value of the field (if it's valid) or `null`.\n- valid {boolean} - Whether the field is valid.\n- ranges {Array} - Array of ranges that are necessary to compute this field.\n  Ranges are objects with `line`, `start`, `end` and `raw`.\n- line {number} - Index of the line where the field's value is located.\n- start {number} - Index of the start of the field's value in `line`.\n- end {number} - Index of the end of the field's value in `line`.\n- error {undefined|string} - Contains a message describing the error if the field is invalid.\n- autocorrect {array} - Contains indices of characters that were autocorrected and their original value.\n\n### `formats`\n\nStatic mapping of supported formats.\n\n### `states`\n\nStatic mapping of state code to state name.\n\n## Specifications\n\n### TD1, TD2 and TD3\n\nhttps://www.icao.int/publications/pages/publication.aspx?docnum=9303\n\n### Swiss driving license\n\nhttp://www.astra2.admin.ch/media/pdfpub/2003-10-15_2262_f.pdf\n\n### French national id\n\nhttps://fr.wikipedia.org/wiki/Carte_nationale_d%27identit%C3%A9_en_France#Codage_Bande_MRZ_(lecture_optique)\n\n## License\n\n[MIT](./LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/@crabas0npm/laboriosam-corrupti-architecto.svg\n[npm-url]: https://npmjs.org/package/@crabas0npm/laboriosam-corrupti-architecto\n[ci-image]: https://github.com/crabas0npm/laboriosam-corrupti-architecto/workflows/Node.js%20CI/badge.svg?branch=main\n[ci-url]: https://github.com/crabas0npm/laboriosam-corrupti-architecto/actions?query=workflow%3A%22Node.js+CI%22\n[download-image]: https://img.shields.io/npm/dm/@crabas0npm/laboriosam-corrupti-architecto.svg\n[download-url]: https://npmjs.org/package/@crabas0npm/laboriosam-corrupti-architecto\n","readmeFilename":"README.md"}