1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670 |
- /******/ (function(modules) { // webpackBootstrap
- /******/ // The module cache
- /******/ var installedModules = {};
- /******/
- /******/ // The require function
- /******/ function __webpack_require__(moduleId) {
- /******/
- /******/ // Check if module is in cache
- /******/ if(installedModules[moduleId]) {
- /******/ return installedModules[moduleId].exports;
- /******/ }
- /******/ // Create a new module (and put it into the cache)
- /******/ var module = installedModules[moduleId] = {
- /******/ i: moduleId,
- /******/ l: false,
- /******/ exports: {}
- /******/ };
- /******/
- /******/ // Execute the module function
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
- /******/
- /******/ // Flag the module as loaded
- /******/ module.l = true;
- /******/
- /******/ // Return the exports of the module
- /******/ return module.exports;
- /******/ }
- /******/
- /******/
- /******/ // expose the modules object (__webpack_modules__)
- /******/ __webpack_require__.m = modules;
- /******/
- /******/ // expose the module cache
- /******/ __webpack_require__.c = installedModules;
- /******/
- /******/ // define getter function for harmony exports
- /******/ __webpack_require__.d = function(exports, name, getter) {
- /******/ if(!__webpack_require__.o(exports, name)) {
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
- /******/ }
- /******/ };
- /******/
- /******/ // define __esModule on exports
- /******/ __webpack_require__.r = function(exports) {
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
- /******/ }
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
- /******/ };
- /******/
- /******/ // create a fake namespace object
- /******/ // mode & 1: value is a module id, require it
- /******/ // mode & 2: merge all properties of value into the ns
- /******/ // mode & 4: return value when already ns object
- /******/ // mode & 8|1: behave like require
- /******/ __webpack_require__.t = function(value, mode) {
- /******/ if(mode & 1) value = __webpack_require__(value);
- /******/ if(mode & 8) return value;
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
- /******/ var ns = Object.create(null);
- /******/ __webpack_require__.r(ns);
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
- /******/ return ns;
- /******/ };
- /******/
- /******/ // getDefaultExport function for compatibility with non-harmony modules
- /******/ __webpack_require__.n = function(module) {
- /******/ var getter = module && module.__esModule ?
- /******/ function getDefault() { return module['default']; } :
- /******/ function getModuleExports() { return module; };
- /******/ __webpack_require__.d(getter, 'a', getter);
- /******/ return getter;
- /******/ };
- /******/
- /******/ // Object.prototype.hasOwnProperty.call
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
- /******/
- /******/ // __webpack_public_path__
- /******/ __webpack_require__.p = "";
- /******/
- /******/
- /******/ // Load entry module and return exports
- /******/ return __webpack_require__(__webpack_require__.s = 0);
- /******/ })
- /************************************************************************/
- /******/ ([
- /* 0 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- var _barcodes = __webpack_require__(1);
- var _barcodes2 = _interopRequireDefault(_barcodes);
- var _merge = __webpack_require__(36);
- var _merge2 = _interopRequireDefault(_merge);
- var _linearizeEncodings = __webpack_require__(37);
- var _linearizeEncodings2 = _interopRequireDefault(_linearizeEncodings);
- var _fixOptions = __webpack_require__(38);
- var _fixOptions2 = _interopRequireDefault(_fixOptions);
- var _getRenderProperties = __webpack_require__(39);
- var _getRenderProperties2 = _interopRequireDefault(_getRenderProperties);
- var _optionsFromStrings = __webpack_require__(41);
- var _optionsFromStrings2 = _interopRequireDefault(_optionsFromStrings);
- var _ErrorHandler = __webpack_require__(49);
- var _ErrorHandler2 = _interopRequireDefault(_ErrorHandler);
- var _exceptions = __webpack_require__(48);
- var _defaults = __webpack_require__(42);
- var _defaults2 = _interopRequireDefault(_defaults);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- // The protype of the object returned from the JsBarcode() call
- // Help functions
- var API = function API() {};
- // The first call of the library API
- // Will return an object with all barcodes calls and the data that is used
- // by the renderers
- // Default values
- // Exceptions
- // Import all the barcodes
- var JsBarcode = function JsBarcode(element, text, options) {
- var api = new API();
- if (typeof element === "undefined") {
- throw Error("No element to render on was provided.");
- }
- // Variables that will be pased through the API calls
- api._renderProperties = (0, _getRenderProperties2.default)(element);
- api._encodings = [];
- api._options = _defaults2.default;
- api._errorHandler = new _ErrorHandler2.default(api);
- // If text is set, use the simple syntax (render the barcode directly)
- if (typeof text !== "undefined") {
- options = options || {};
- if (!options.format) {
- options.format = autoSelectBarcode();
- }
- api.options(options)[options.format](text, options).render();
- }
- return api;
- };
- // To make tests work TODO: remove
- JsBarcode.getModule = function (name) {
- return _barcodes2.default[name];
- };
- // Register all barcodes
- for (var name in _barcodes2.default) {
- if (_barcodes2.default.hasOwnProperty(name)) {
- // Security check if the propery is a prototype property
- registerBarcode(_barcodes2.default, name);
- }
- }
- function registerBarcode(barcodes, name) {
- API.prototype[name] = API.prototype[name.toUpperCase()] = API.prototype[name.toLowerCase()] = function (text, options) {
- var api = this;
- return api._errorHandler.wrapBarcodeCall(function () {
- // Ensure text is options.text
- options.text = typeof options.text === 'undefined' ? undefined : '' + options.text;
- var newOptions = (0, _merge2.default)(api._options, options);
- newOptions = (0, _optionsFromStrings2.default)(newOptions);
- var Encoder = barcodes[name];
- var encoded = encode(text, Encoder, newOptions);
- api._encodings.push(encoded);
- return api;
- });
- };
- }
- // encode() handles the Encoder call and builds the binary string to be rendered
- function encode(text, Encoder, options) {
- // Ensure that text is a string
- text = "" + text;
- var encoder = new Encoder(text, options);
- // If the input is not valid for the encoder, throw error.
- // If the valid callback option is set, call it instead of throwing error
- if (!encoder.valid()) {
- throw new _exceptions.InvalidInputException(encoder.constructor.name, text);
- }
- // Make a request for the binary data (and other infromation) that should be rendered
- var encoded = encoder.encode();
- // Encodings can be nestled like [[1-1, 1-2], 2, [3-1, 3-2]
- // Convert to [1-1, 1-2, 2, 3-1, 3-2]
- encoded = (0, _linearizeEncodings2.default)(encoded);
- // Merge
- for (var i = 0; i < encoded.length; i++) {
- encoded[i].options = (0, _merge2.default)(options, encoded[i].options);
- }
- return encoded;
- }
- function autoSelectBarcode() {
- // If CODE128 exists. Use it
- if (_barcodes2.default["CODE128"]) {
- return "CODE128";
- }
- // Else, take the first (probably only) barcode
- return Object.keys(_barcodes2.default)[0];
- }
- // Sets global encoder options
- // Added to the api by the JsBarcode function
- API.prototype.options = function (options) {
- this._options = (0, _merge2.default)(this._options, options);
- return this;
- };
- // Will create a blank space (usually in between barcodes)
- API.prototype.blank = function (size) {
- var zeroes = new Array(size + 1).join("0");
- this._encodings.push({ data: zeroes });
- return this;
- };
- // Initialize JsBarcode on all HTML elements defined.
- API.prototype.init = function () {
- // Should do nothing if no elements where found
- if (!this._renderProperties) {
- return;
- }
- // Make sure renderProperies is an array
- if (!Array.isArray(this._renderProperties)) {
- this._renderProperties = [this._renderProperties];
- }
- var renderProperty;
- for (var i in this._renderProperties) {
- renderProperty = this._renderProperties[i];
- var options = (0, _merge2.default)(this._options, renderProperty.options);
- if (options.format == "auto") {
- options.format = autoSelectBarcode();
- }
- this._errorHandler.wrapBarcodeCall(function () {
- var text = options.value;
- var Encoder = _barcodes2.default[options.format.toUpperCase()];
- var encoded = encode(text, Encoder, options);
- render(renderProperty, encoded, options);
- });
- }
- };
- // The render API call. Calls the real render function.
- API.prototype.render = function () {
- if (!this._renderProperties) {
- throw new _exceptions.NoElementException();
- }
- if (Array.isArray(this._renderProperties)) {
- for (var i = 0; i < this._renderProperties.length; i++) {
- render(this._renderProperties[i], this._encodings, this._options);
- }
- } else {
- render(this._renderProperties, this._encodings, this._options);
- }
- return this;
- };
- API.prototype._defaults = _defaults2.default;
- // Prepares the encodings and calls the renderer
- function render(renderProperties, encodings, options) {
- encodings = (0, _linearizeEncodings2.default)(encodings);
- for (var i = 0; i < encodings.length; i++) {
- encodings[i].options = (0, _merge2.default)(options, encodings[i].options);
- (0, _fixOptions2.default)(encodings[i].options);
- }
- (0, _fixOptions2.default)(options);
- var Renderer = renderProperties.renderer;
- var renderer = new Renderer(renderProperties.element, encodings, options);
- renderer.render();
- if (renderProperties.afterRender) {
- renderProperties.afterRender();
- }
- }
- // Export to browser
- if (typeof window !== "undefined") {
- window.JsBarcode = JsBarcode;
- }
- // Export to jQuery
- /*global jQuery */
- if (typeof jQuery !== 'undefined') {
- jQuery.fn.JsBarcode = function (content, options) {
- var elementArray = [];
- jQuery(this).each(function () {
- elementArray.push(this);
- });
- return JsBarcode(elementArray, content, options);
- };
- }
- // Export to commonJS
- module.exports = JsBarcode;
- /***/ }),
- /* 1 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _CODE = __webpack_require__(2);
- var _CODE2 = __webpack_require__(4);
- var _EAN_UPC = __webpack_require__(12);
- var _ITF = __webpack_require__(22);
- var _MSI = __webpack_require__(26);
- var _pharmacode = __webpack_require__(33);
- var _codabar = __webpack_require__(34);
- var _GenericBarcode = __webpack_require__(35);
- exports.default = {
- CODE39: _CODE.CODE39,
- CODE128: _CODE2.CODE128, CODE128A: _CODE2.CODE128A, CODE128B: _CODE2.CODE128B, CODE128C: _CODE2.CODE128C,
- EAN13: _EAN_UPC.EAN13, EAN8: _EAN_UPC.EAN8, EAN5: _EAN_UPC.EAN5, EAN2: _EAN_UPC.EAN2, UPC: _EAN_UPC.UPC, UPCE: _EAN_UPC.UPCE,
- ITF14: _ITF.ITF14,
- ITF: _ITF.ITF,
- MSI: _MSI.MSI, MSI10: _MSI.MSI10, MSI11: _MSI.MSI11, MSI1010: _MSI.MSI1010, MSI1110: _MSI.MSI1110,
- pharmacode: _pharmacode.pharmacode,
- codabar: _codabar.codabar,
- GenericBarcode: _GenericBarcode.GenericBarcode
- };
- /***/ }),
- /* 2 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.CODE39 = undefined;
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/Code_39#Encoding
- var CODE39 = function (_Barcode) {
- _inherits(CODE39, _Barcode);
- function CODE39(data, options) {
- _classCallCheck(this, CODE39);
- data = data.toUpperCase();
- // Calculate mod43 checksum if enabled
- if (options.mod43) {
- data += getCharacter(mod43checksum(data));
- }
- return _possibleConstructorReturn(this, (CODE39.__proto__ || Object.getPrototypeOf(CODE39)).call(this, data, options));
- }
- _createClass(CODE39, [{
- key: "encode",
- value: function encode() {
- // First character is always a *
- var result = getEncoding("*");
- // Take every character and add the binary representation to the result
- for (var i = 0; i < this.data.length; i++) {
- result += getEncoding(this.data[i]) + "0";
- }
- // Last character is always a *
- result += getEncoding("*");
- return {
- data: result,
- text: this.text
- };
- }
- }, {
- key: "valid",
- value: function valid() {
- return this.data.search(/^[0-9A-Z\-\.\ \$\/\+\%]+$/) !== -1;
- }
- }]);
- return CODE39;
- }(_Barcode3.default);
- // All characters. The position in the array is the (checksum) value
- var characters = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "-", ".", " ", "$", "/", "+", "%", "*"];
- // The decimal representation of the characters, is converted to the
- // corresponding binary with the getEncoding function
- var encodings = [20957, 29783, 23639, 30485, 20951, 29813, 23669, 20855, 29789, 23645, 29975, 23831, 30533, 22295, 30149, 24005, 21623, 29981, 23837, 22301, 30023, 23879, 30545, 22343, 30161, 24017, 21959, 30065, 23921, 22385, 29015, 18263, 29141, 17879, 29045, 18293, 17783, 29021, 18269, 17477, 17489, 17681, 20753, 35770];
- // Get the binary representation of a character by converting the encodings
- // from decimal to binary
- function getEncoding(character) {
- return getBinary(characterValue(character));
- }
- function getBinary(characterValue) {
- return encodings[characterValue].toString(2);
- }
- function getCharacter(characterValue) {
- return characters[characterValue];
- }
- function characterValue(character) {
- return characters.indexOf(character);
- }
- function mod43checksum(data) {
- var checksum = 0;
- for (var i = 0; i < data.length; i++) {
- checksum += characterValue(data[i]);
- }
- checksum = checksum % 43;
- return checksum;
- }
- exports.CODE39 = CODE39;
- /***/ }),
- /* 3 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var Barcode = function Barcode(data, options) {
- _classCallCheck(this, Barcode);
- this.data = data;
- this.text = options.text || data;
- this.options = options;
- };
- exports.default = Barcode;
- /***/ }),
- /* 4 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.CODE128C = exports.CODE128B = exports.CODE128A = exports.CODE128 = undefined;
- var _CODE128_AUTO = __webpack_require__(5);
- var _CODE128_AUTO2 = _interopRequireDefault(_CODE128_AUTO);
- var _CODE128A = __webpack_require__(9);
- var _CODE128A2 = _interopRequireDefault(_CODE128A);
- var _CODE128B = __webpack_require__(10);
- var _CODE128B2 = _interopRequireDefault(_CODE128B);
- var _CODE128C = __webpack_require__(11);
- var _CODE128C2 = _interopRequireDefault(_CODE128C);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.CODE128 = _CODE128_AUTO2.default;
- exports.CODE128A = _CODE128A2.default;
- exports.CODE128B = _CODE128B2.default;
- exports.CODE128C = _CODE128C2.default;
- /***/ }),
- /* 5 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _CODE2 = __webpack_require__(6);
- var _CODE3 = _interopRequireDefault(_CODE2);
- var _auto = __webpack_require__(8);
- var _auto2 = _interopRequireDefault(_auto);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var CODE128AUTO = function (_CODE) {
- _inherits(CODE128AUTO, _CODE);
- function CODE128AUTO(data, options) {
- _classCallCheck(this, CODE128AUTO);
- // ASCII value ranges 0-127, 200-211
- if (/^[\x00-\x7F\xC8-\xD3]+$/.test(data)) {
- var _this = _possibleConstructorReturn(this, (CODE128AUTO.__proto__ || Object.getPrototypeOf(CODE128AUTO)).call(this, (0, _auto2.default)(data), options));
- } else {
- var _this = _possibleConstructorReturn(this, (CODE128AUTO.__proto__ || Object.getPrototypeOf(CODE128AUTO)).call(this, data, options));
- }
- return _possibleConstructorReturn(_this);
- }
- return CODE128AUTO;
- }(_CODE3.default);
- exports.default = CODE128AUTO;
- /***/ }),
- /* 6 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- var _constants = __webpack_require__(7);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- // This is the master class,
- // it does require the start code to be included in the string
- var CODE128 = function (_Barcode) {
- _inherits(CODE128, _Barcode);
- function CODE128(data, options) {
- _classCallCheck(this, CODE128);
- // Get array of ascii codes from data
- var _this = _possibleConstructorReturn(this, (CODE128.__proto__ || Object.getPrototypeOf(CODE128)).call(this, data.substring(1), options));
- _this.bytes = data.split('').map(function (char) {
- return char.charCodeAt(0);
- });
- return _this;
- }
- _createClass(CODE128, [{
- key: 'valid',
- value: function valid() {
- // ASCII value ranges 0-127, 200-211
- return (/^[\x00-\x7F\xC8-\xD3]+$/.test(this.data)
- );
- }
- // The public encoding function
- }, {
- key: 'encode',
- value: function encode() {
- var bytes = this.bytes;
- // Remove the start code from the bytes and set its index
- var startIndex = bytes.shift() - 105;
- // Get start set by index
- var startSet = _constants.SET_BY_CODE[startIndex];
- if (startSet === undefined) {
- throw new RangeError('The encoding does not start with a start character.');
- }
- if (this.shouldEncodeAsEan128() === true) {
- bytes.unshift(_constants.FNC1);
- }
- // Start encode with the right type
- var encodingResult = CODE128.next(bytes, 1, startSet);
- return {
- text: this.text === this.data ? this.text.replace(/[^\x20-\x7E]/g, '') : this.text,
- data:
- // Add the start bits
- CODE128.getBar(startIndex) +
- // Add the encoded bits
- encodingResult.result +
- // Add the checksum
- CODE128.getBar((encodingResult.checksum + startIndex) % _constants.MODULO) +
- // Add the end bits
- CODE128.getBar(_constants.STOP)
- };
- }
- // GS1-128/EAN-128
- }, {
- key: 'shouldEncodeAsEan128',
- value: function shouldEncodeAsEan128() {
- var isEAN128 = this.options.ean128 || false;
- if (typeof isEAN128 === 'string') {
- isEAN128 = isEAN128.toLowerCase() === 'true';
- }
- return isEAN128;
- }
- // Get a bar symbol by index
- }], [{
- key: 'getBar',
- value: function getBar(index) {
- return _constants.BARS[index] ? _constants.BARS[index].toString() : '';
- }
- // Correct an index by a set and shift it from the bytes array
- }, {
- key: 'correctIndex',
- value: function correctIndex(bytes, set) {
- if (set === _constants.SET_A) {
- var charCode = bytes.shift();
- return charCode < 32 ? charCode + 64 : charCode - 32;
- } else if (set === _constants.SET_B) {
- return bytes.shift() - 32;
- } else {
- return (bytes.shift() - 48) * 10 + bytes.shift() - 48;
- }
- }
- }, {
- key: 'next',
- value: function next(bytes, pos, set) {
- if (!bytes.length) {
- return { result: '', checksum: 0 };
- }
- var nextCode = void 0,
- index = void 0;
- // Special characters
- if (bytes[0] >= 200) {
- index = bytes.shift() - 105;
- var nextSet = _constants.SWAP[index];
- // Swap to other set
- if (nextSet !== undefined) {
- nextCode = CODE128.next(bytes, pos + 1, nextSet);
- }
- // Continue on current set but encode a special character
- else {
- // Shift
- if ((set === _constants.SET_A || set === _constants.SET_B) && index === _constants.SHIFT) {
- // Convert the next character so that is encoded correctly
- bytes[0] = set === _constants.SET_A ? bytes[0] > 95 ? bytes[0] - 96 : bytes[0] : bytes[0] < 32 ? bytes[0] + 96 : bytes[0];
- }
- nextCode = CODE128.next(bytes, pos + 1, set);
- }
- }
- // Continue encoding
- else {
- index = CODE128.correctIndex(bytes, set);
- nextCode = CODE128.next(bytes, pos + 1, set);
- }
- // Get the correct binary encoding and calculate the weight
- var enc = CODE128.getBar(index);
- var weight = index * pos;
- return {
- result: enc + nextCode.result,
- checksum: weight + nextCode.checksum
- };
- }
- }]);
- return CODE128;
- }(_Barcode3.default);
- exports.default = CODE128;
- /***/ }),
- /* 7 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _SET_BY_CODE;
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
- // constants for internal usage
- var SET_A = exports.SET_A = 0;
- var SET_B = exports.SET_B = 1;
- var SET_C = exports.SET_C = 2;
- // Special characters
- var SHIFT = exports.SHIFT = 98;
- var START_A = exports.START_A = 103;
- var START_B = exports.START_B = 104;
- var START_C = exports.START_C = 105;
- var MODULO = exports.MODULO = 103;
- var STOP = exports.STOP = 106;
- var FNC1 = exports.FNC1 = 207;
- // Get set by start code
- var SET_BY_CODE = exports.SET_BY_CODE = (_SET_BY_CODE = {}, _defineProperty(_SET_BY_CODE, START_A, SET_A), _defineProperty(_SET_BY_CODE, START_B, SET_B), _defineProperty(_SET_BY_CODE, START_C, SET_C), _SET_BY_CODE);
- // Get next set by code
- var SWAP = exports.SWAP = {
- 101: SET_A,
- 100: SET_B,
- 99: SET_C
- };
- var A_START_CHAR = exports.A_START_CHAR = String.fromCharCode(208); // START_A + 105
- var B_START_CHAR = exports.B_START_CHAR = String.fromCharCode(209); // START_B + 105
- var C_START_CHAR = exports.C_START_CHAR = String.fromCharCode(210); // START_C + 105
- // 128A (Code Set A)
- // ASCII characters 00 to 95 (0–9, A–Z and control codes), special characters, and FNC 1–4
- var A_CHARS = exports.A_CHARS = "[\x00-\x5F\xC8-\xCF]";
- // 128B (Code Set B)
- // ASCII characters 32 to 127 (0–9, A–Z, a–z), special characters, and FNC 1–4
- var B_CHARS = exports.B_CHARS = "[\x20-\x7F\xC8-\xCF]";
- // 128C (Code Set C)
- // 00–99 (encodes two digits with a single code point) and FNC1
- var C_CHARS = exports.C_CHARS = "(\xCF*[0-9]{2}\xCF*)";
- // CODE128 includes 107 symbols:
- // 103 data symbols, 3 start symbols (A, B and C), and 1 stop symbol (the last one)
- // Each symbol consist of three black bars (1) and three white spaces (0).
- var BARS = exports.BARS = [11011001100, 11001101100, 11001100110, 10010011000, 10010001100, 10001001100, 10011001000, 10011000100, 10001100100, 11001001000, 11001000100, 11000100100, 10110011100, 10011011100, 10011001110, 10111001100, 10011101100, 10011100110, 11001110010, 11001011100, 11001001110, 11011100100, 11001110100, 11101101110, 11101001100, 11100101100, 11100100110, 11101100100, 11100110100, 11100110010, 11011011000, 11011000110, 11000110110, 10100011000, 10001011000, 10001000110, 10110001000, 10001101000, 10001100010, 11010001000, 11000101000, 11000100010, 10110111000, 10110001110, 10001101110, 10111011000, 10111000110, 10001110110, 11101110110, 11010001110, 11000101110, 11011101000, 11011100010, 11011101110, 11101011000, 11101000110, 11100010110, 11101101000, 11101100010, 11100011010, 11101111010, 11001000010, 11110001010, 10100110000, 10100001100, 10010110000, 10010000110, 10000101100, 10000100110, 10110010000, 10110000100, 10011010000, 10011000010, 10000110100, 10000110010, 11000010010, 11001010000, 11110111010, 11000010100, 10001111010, 10100111100, 10010111100, 10010011110, 10111100100, 10011110100, 10011110010, 11110100100, 11110010100, 11110010010, 11011011110, 11011110110, 11110110110, 10101111000, 10100011110, 10001011110, 10111101000, 10111100010, 11110101000, 11110100010, 10111011110, 10111101110, 11101011110, 11110101110, 11010000100, 11010010000, 11010011100, 1100011101011];
- /***/ }),
- /* 8 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _constants = __webpack_require__(7);
- // Match Set functions
- var matchSetALength = function matchSetALength(string) {
- return string.match(new RegExp('^' + _constants.A_CHARS + '*'))[0].length;
- };
- var matchSetBLength = function matchSetBLength(string) {
- return string.match(new RegExp('^' + _constants.B_CHARS + '*'))[0].length;
- };
- var matchSetC = function matchSetC(string) {
- return string.match(new RegExp('^' + _constants.C_CHARS + '*'))[0];
- };
- // CODE128A or CODE128B
- function autoSelectFromAB(string, isA) {
- var ranges = isA ? _constants.A_CHARS : _constants.B_CHARS;
- var untilC = string.match(new RegExp('^(' + ranges + '+?)(([0-9]{2}){2,})([^0-9]|$)'));
- if (untilC) {
- return untilC[1] + String.fromCharCode(204) + autoSelectFromC(string.substring(untilC[1].length));
- }
- var chars = string.match(new RegExp('^' + ranges + '+'))[0];
- if (chars.length === string.length) {
- return string;
- }
- return chars + String.fromCharCode(isA ? 205 : 206) + autoSelectFromAB(string.substring(chars.length), !isA);
- }
- // CODE128C
- function autoSelectFromC(string) {
- var cMatch = matchSetC(string);
- var length = cMatch.length;
- if (length === string.length) {
- return string;
- }
- string = string.substring(length);
- // Select A/B depending on the longest match
- var isA = matchSetALength(string) >= matchSetBLength(string);
- return cMatch + String.fromCharCode(isA ? 206 : 205) + autoSelectFromAB(string, isA);
- }
- // Detect Code Set (A, B or C) and format the string
- exports.default = function (string) {
- var newString = void 0;
- var cLength = matchSetC(string).length;
- // Select 128C if the string start with enough digits
- if (cLength >= 2) {
- newString = _constants.C_START_CHAR + autoSelectFromC(string);
- } else {
- // Select A/B depending on the longest match
- var isA = matchSetALength(string) > matchSetBLength(string);
- newString = (isA ? _constants.A_START_CHAR : _constants.B_START_CHAR) + autoSelectFromAB(string, isA);
- }
- return newString.replace(/[\xCD\xCE]([^])[\xCD\xCE]/, // Any sequence between 205 and 206 characters
- function (match, char) {
- return String.fromCharCode(203) + char;
- });
- };
- /***/ }),
- /* 9 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _CODE2 = __webpack_require__(6);
- var _CODE3 = _interopRequireDefault(_CODE2);
- var _constants = __webpack_require__(7);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var CODE128A = function (_CODE) {
- _inherits(CODE128A, _CODE);
- function CODE128A(string, options) {
- _classCallCheck(this, CODE128A);
- return _possibleConstructorReturn(this, (CODE128A.__proto__ || Object.getPrototypeOf(CODE128A)).call(this, _constants.A_START_CHAR + string, options));
- }
- _createClass(CODE128A, [{
- key: 'valid',
- value: function valid() {
- return new RegExp('^' + _constants.A_CHARS + '+$').test(this.data);
- }
- }]);
- return CODE128A;
- }(_CODE3.default);
- exports.default = CODE128A;
- /***/ }),
- /* 10 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _CODE2 = __webpack_require__(6);
- var _CODE3 = _interopRequireDefault(_CODE2);
- var _constants = __webpack_require__(7);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var CODE128B = function (_CODE) {
- _inherits(CODE128B, _CODE);
- function CODE128B(string, options) {
- _classCallCheck(this, CODE128B);
- return _possibleConstructorReturn(this, (CODE128B.__proto__ || Object.getPrototypeOf(CODE128B)).call(this, _constants.B_START_CHAR + string, options));
- }
- _createClass(CODE128B, [{
- key: 'valid',
- value: function valid() {
- return new RegExp('^' + _constants.B_CHARS + '+$').test(this.data);
- }
- }]);
- return CODE128B;
- }(_CODE3.default);
- exports.default = CODE128B;
- /***/ }),
- /* 11 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _CODE2 = __webpack_require__(6);
- var _CODE3 = _interopRequireDefault(_CODE2);
- var _constants = __webpack_require__(7);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var CODE128C = function (_CODE) {
- _inherits(CODE128C, _CODE);
- function CODE128C(string, options) {
- _classCallCheck(this, CODE128C);
- return _possibleConstructorReturn(this, (CODE128C.__proto__ || Object.getPrototypeOf(CODE128C)).call(this, _constants.C_START_CHAR + string, options));
- }
- _createClass(CODE128C, [{
- key: 'valid',
- value: function valid() {
- return new RegExp('^' + _constants.C_CHARS + '+$').test(this.data);
- }
- }]);
- return CODE128C;
- }(_CODE3.default);
- exports.default = CODE128C;
- /***/ }),
- /* 12 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.UPCE = exports.UPC = exports.EAN2 = exports.EAN5 = exports.EAN8 = exports.EAN13 = undefined;
- var _EAN = __webpack_require__(13);
- var _EAN2 = _interopRequireDefault(_EAN);
- var _EAN3 = __webpack_require__(17);
- var _EAN4 = _interopRequireDefault(_EAN3);
- var _EAN5 = __webpack_require__(18);
- var _EAN6 = _interopRequireDefault(_EAN5);
- var _EAN7 = __webpack_require__(19);
- var _EAN8 = _interopRequireDefault(_EAN7);
- var _UPC = __webpack_require__(20);
- var _UPC2 = _interopRequireDefault(_UPC);
- var _UPCE = __webpack_require__(21);
- var _UPCE2 = _interopRequireDefault(_UPCE);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.EAN13 = _EAN2.default;
- exports.EAN8 = _EAN4.default;
- exports.EAN5 = _EAN6.default;
- exports.EAN2 = _EAN8.default;
- exports.UPC = _UPC2.default;
- exports.UPCE = _UPCE2.default;
- /***/ }),
- /* 13 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
- var _constants = __webpack_require__(14);
- var _EAN2 = __webpack_require__(15);
- var _EAN3 = _interopRequireDefault(_EAN2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Binary_encoding_of_data_digits_into_EAN-13_barcode
- // Calculate the checksum digit
- // https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Calculation_of_checksum_digit
- var checksum = function checksum(number) {
- var res = number.substr(0, 12).split('').map(function (n) {
- return +n;
- }).reduce(function (sum, a, idx) {
- return idx % 2 ? sum + a * 3 : sum + a;
- }, 0);
- return (10 - res % 10) % 10;
- };
- var EAN13 = function (_EAN) {
- _inherits(EAN13, _EAN);
- function EAN13(data, options) {
- _classCallCheck(this, EAN13);
- // Add checksum if it does not exist
- if (data.search(/^[0-9]{12}$/) !== -1) {
- data += checksum(data);
- }
- // Adds a last character to the end of the barcode
- var _this = _possibleConstructorReturn(this, (EAN13.__proto__ || Object.getPrototypeOf(EAN13)).call(this, data, options));
- _this.lastChar = options.lastChar;
- return _this;
- }
- _createClass(EAN13, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^[0-9]{13}$/) !== -1 && +this.data[12] === checksum(this.data);
- }
- }, {
- key: 'leftText',
- value: function leftText() {
- return _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'leftText', this).call(this, 1, 6);
- }
- }, {
- key: 'leftEncode',
- value: function leftEncode() {
- var data = this.data.substr(1, 6);
- var structure = _constants.EAN13_STRUCTURE[this.data[0]];
- return _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'leftEncode', this).call(this, data, structure);
- }
- }, {
- key: 'rightText',
- value: function rightText() {
- return _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'rightText', this).call(this, 7, 6);
- }
- }, {
- key: 'rightEncode',
- value: function rightEncode() {
- var data = this.data.substr(7, 6);
- return _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'rightEncode', this).call(this, data, 'RRRRRR');
- }
- // The "standard" way of printing EAN13 barcodes with guard bars
- }, {
- key: 'encodeGuarded',
- value: function encodeGuarded() {
- var data = _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'encodeGuarded', this).call(this);
- // Extend data with left digit & last character
- if (this.options.displayValue) {
- data.unshift({
- data: '000000000000',
- text: this.text.substr(0, 1),
- options: { textAlign: 'left', fontSize: this.fontSize }
- });
- if (this.options.lastChar) {
- data.push({
- data: '00'
- });
- data.push({
- data: '00000',
- text: this.options.lastChar,
- options: { fontSize: this.fontSize }
- });
- }
- }
- return data;
- }
- }]);
- return EAN13;
- }(_EAN3.default);
- exports.default = EAN13;
- /***/ }),
- /* 14 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- // Standard start end and middle bits
- var SIDE_BIN = exports.SIDE_BIN = '101';
- var MIDDLE_BIN = exports.MIDDLE_BIN = '01010';
- var BINARIES = exports.BINARIES = {
- 'L': [// The L (left) type of encoding
- '0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111', '0001011'],
- 'G': [// The G type of encoding
- '0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001', '0010111'],
- 'R': [// The R (right) type of encoding
- '1110010', '1100110', '1101100', '1000010', '1011100', '1001110', '1010000', '1000100', '1001000', '1110100'],
- 'O': [// The O (odd) encoding for UPC-E
- '0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111', '0001011'],
- 'E': [// The E (even) encoding for UPC-E
- '0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001', '0010111']
- };
- // Define the EAN-2 structure
- var EAN2_STRUCTURE = exports.EAN2_STRUCTURE = ['LL', 'LG', 'GL', 'GG'];
- // Define the EAN-5 structure
- var EAN5_STRUCTURE = exports.EAN5_STRUCTURE = ['GGLLL', 'GLGLL', 'GLLGL', 'GLLLG', 'LGGLL', 'LLGGL', 'LLLGG', 'LGLGL', 'LGLLG', 'LLGLG'];
- // Define the EAN-13 structure
- var EAN13_STRUCTURE = exports.EAN13_STRUCTURE = ['LLLLLL', 'LLGLGG', 'LLGGLG', 'LLGGGL', 'LGLLGG', 'LGGLLG', 'LGGGLL', 'LGLGLG', 'LGLGGL', 'LGGLGL'];
- /***/ }),
- /* 15 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _constants = __webpack_require__(14);
- var _encoder = __webpack_require__(16);
- var _encoder2 = _interopRequireDefault(_encoder);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- // Base class for EAN8 & EAN13
- var EAN = function (_Barcode) {
- _inherits(EAN, _Barcode);
- function EAN(data, options) {
- _classCallCheck(this, EAN);
- // Make sure the font is not bigger than the space between the guard bars
- var _this = _possibleConstructorReturn(this, (EAN.__proto__ || Object.getPrototypeOf(EAN)).call(this, data, options));
- _this.fontSize = !options.flat && options.fontSize > options.width * 10 ? options.width * 10 : options.fontSize;
- // Make the guard bars go down half the way of the text
- _this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;
- return _this;
- }
- _createClass(EAN, [{
- key: 'encode',
- value: function encode() {
- return this.options.flat ? this.encodeFlat() : this.encodeGuarded();
- }
- }, {
- key: 'leftText',
- value: function leftText(from, to) {
- return this.text.substr(from, to);
- }
- }, {
- key: 'leftEncode',
- value: function leftEncode(data, structure) {
- return (0, _encoder2.default)(data, structure);
- }
- }, {
- key: 'rightText',
- value: function rightText(from, to) {
- return this.text.substr(from, to);
- }
- }, {
- key: 'rightEncode',
- value: function rightEncode(data, structure) {
- return (0, _encoder2.default)(data, structure);
- }
- }, {
- key: 'encodeGuarded',
- value: function encodeGuarded() {
- var textOptions = { fontSize: this.fontSize };
- var guardOptions = { height: this.guardHeight };
- return [{ data: _constants.SIDE_BIN, options: guardOptions }, { data: this.leftEncode(), text: this.leftText(), options: textOptions }, { data: _constants.MIDDLE_BIN, options: guardOptions }, { data: this.rightEncode(), text: this.rightText(), options: textOptions }, { data: _constants.SIDE_BIN, options: guardOptions }];
- }
- }, {
- key: 'encodeFlat',
- value: function encodeFlat() {
- var data = [_constants.SIDE_BIN, this.leftEncode(), _constants.MIDDLE_BIN, this.rightEncode(), _constants.SIDE_BIN];
- return {
- data: data.join(''),
- text: this.text
- };
- }
- }]);
- return EAN;
- }(_Barcode3.default);
- exports.default = EAN;
- /***/ }),
- /* 16 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _constants = __webpack_require__(14);
- // Encode data string
- var encode = function encode(data, structure, separator) {
- var encoded = data.split('').map(function (val, idx) {
- return _constants.BINARIES[structure[idx]];
- }).map(function (val, idx) {
- return val ? val[data[idx]] : '';
- });
- if (separator) {
- var last = data.length - 1;
- encoded = encoded.map(function (val, idx) {
- return idx < last ? val + separator : val;
- });
- }
- return encoded.join('');
- };
- exports.default = encode;
- /***/ }),
- /* 17 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };
- var _EAN2 = __webpack_require__(15);
- var _EAN3 = _interopRequireDefault(_EAN2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // http://www.barcodeisland.com/ean8.phtml
- // Calculate the checksum digit
- var checksum = function checksum(number) {
- var res = number.substr(0, 7).split('').map(function (n) {
- return +n;
- }).reduce(function (sum, a, idx) {
- return idx % 2 ? sum + a : sum + a * 3;
- }, 0);
- return (10 - res % 10) % 10;
- };
- var EAN8 = function (_EAN) {
- _inherits(EAN8, _EAN);
- function EAN8(data, options) {
- _classCallCheck(this, EAN8);
- // Add checksum if it does not exist
- if (data.search(/^[0-9]{7}$/) !== -1) {
- data += checksum(data);
- }
- return _possibleConstructorReturn(this, (EAN8.__proto__ || Object.getPrototypeOf(EAN8)).call(this, data, options));
- }
- _createClass(EAN8, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^[0-9]{8}$/) !== -1 && +this.data[7] === checksum(this.data);
- }
- }, {
- key: 'leftText',
- value: function leftText() {
- return _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'leftText', this).call(this, 0, 4);
- }
- }, {
- key: 'leftEncode',
- value: function leftEncode() {
- var data = this.data.substr(0, 4);
- return _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'leftEncode', this).call(this, data, 'LLLL');
- }
- }, {
- key: 'rightText',
- value: function rightText() {
- return _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'rightText', this).call(this, 4, 4);
- }
- }, {
- key: 'rightEncode',
- value: function rightEncode() {
- var data = this.data.substr(4, 4);
- return _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'rightEncode', this).call(this, data, 'RRRR');
- }
- }]);
- return EAN8;
- }(_EAN3.default);
- exports.default = EAN8;
- /***/ }),
- /* 18 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _constants = __webpack_require__(14);
- var _encoder = __webpack_require__(16);
- var _encoder2 = _interopRequireDefault(_encoder);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/EAN_5#Encoding
- var checksum = function checksum(data) {
- var result = data.split('').map(function (n) {
- return +n;
- }).reduce(function (sum, a, idx) {
- return idx % 2 ? sum + a * 9 : sum + a * 3;
- }, 0);
- return result % 10;
- };
- var EAN5 = function (_Barcode) {
- _inherits(EAN5, _Barcode);
- function EAN5(data, options) {
- _classCallCheck(this, EAN5);
- return _possibleConstructorReturn(this, (EAN5.__proto__ || Object.getPrototypeOf(EAN5)).call(this, data, options));
- }
- _createClass(EAN5, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^[0-9]{5}$/) !== -1;
- }
- }, {
- key: 'encode',
- value: function encode() {
- var structure = _constants.EAN5_STRUCTURE[checksum(this.data)];
- return {
- data: '1011' + (0, _encoder2.default)(this.data, structure, '01'),
- text: this.text
- };
- }
- }]);
- return EAN5;
- }(_Barcode3.default);
- exports.default = EAN5;
- /***/ }),
- /* 19 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _constants = __webpack_require__(14);
- var _encoder = __webpack_require__(16);
- var _encoder2 = _interopRequireDefault(_encoder);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/EAN_2#Encoding
- var EAN2 = function (_Barcode) {
- _inherits(EAN2, _Barcode);
- function EAN2(data, options) {
- _classCallCheck(this, EAN2);
- return _possibleConstructorReturn(this, (EAN2.__proto__ || Object.getPrototypeOf(EAN2)).call(this, data, options));
- }
- _createClass(EAN2, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^[0-9]{2}$/) !== -1;
- }
- }, {
- key: 'encode',
- value: function encode() {
- // Choose the structure based on the number mod 4
- var structure = _constants.EAN2_STRUCTURE[parseInt(this.data) % 4];
- return {
- // Start bits + Encode the two digits with 01 in between
- data: '1011' + (0, _encoder2.default)(this.data, structure, '01'),
- text: this.text
- };
- }
- }]);
- return EAN2;
- }(_Barcode3.default);
- exports.default = EAN2;
- /***/ }),
- /* 20 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- exports.checksum = checksum;
- var _encoder = __webpack_require__(16);
- var _encoder2 = _interopRequireDefault(_encoder);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/Universal_Product_Code#Encoding
- var UPC = function (_Barcode) {
- _inherits(UPC, _Barcode);
- function UPC(data, options) {
- _classCallCheck(this, UPC);
- // Add checksum if it does not exist
- if (data.search(/^[0-9]{11}$/) !== -1) {
- data += checksum(data);
- }
- var _this = _possibleConstructorReturn(this, (UPC.__proto__ || Object.getPrototypeOf(UPC)).call(this, data, options));
- _this.displayValue = options.displayValue;
- // Make sure the font is not bigger than the space between the guard bars
- if (options.fontSize > options.width * 10) {
- _this.fontSize = options.width * 10;
- } else {
- _this.fontSize = options.fontSize;
- }
- // Make the guard bars go down half the way of the text
- _this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;
- return _this;
- }
- _createClass(UPC, [{
- key: "valid",
- value: function valid() {
- return this.data.search(/^[0-9]{12}$/) !== -1 && this.data[11] == checksum(this.data);
- }
- }, {
- key: "encode",
- value: function encode() {
- if (this.options.flat) {
- return this.flatEncoding();
- } else {
- return this.guardedEncoding();
- }
- }
- }, {
- key: "flatEncoding",
- value: function flatEncoding() {
- var result = "";
- result += "101";
- result += (0, _encoder2.default)(this.data.substr(0, 6), "LLLLLL");
- result += "01010";
- result += (0, _encoder2.default)(this.data.substr(6, 6), "RRRRRR");
- result += "101";
- return {
- data: result,
- text: this.text
- };
- }
- }, {
- key: "guardedEncoding",
- value: function guardedEncoding() {
- var result = [];
- // Add the first digit
- if (this.displayValue) {
- result.push({
- data: "00000000",
- text: this.text.substr(0, 1),
- options: { textAlign: "left", fontSize: this.fontSize }
- });
- }
- // Add the guard bars
- result.push({
- data: "101" + (0, _encoder2.default)(this.data[0], "L"),
- options: { height: this.guardHeight }
- });
- // Add the left side
- result.push({
- data: (0, _encoder2.default)(this.data.substr(1, 5), "LLLLL"),
- text: this.text.substr(1, 5),
- options: { fontSize: this.fontSize }
- });
- // Add the middle bits
- result.push({
- data: "01010",
- options: { height: this.guardHeight }
- });
- // Add the right side
- result.push({
- data: (0, _encoder2.default)(this.data.substr(6, 5), "RRRRR"),
- text: this.text.substr(6, 5),
- options: { fontSize: this.fontSize }
- });
- // Add the end bits
- result.push({
- data: (0, _encoder2.default)(this.data[11], "R") + "101",
- options: { height: this.guardHeight }
- });
- // Add the last digit
- if (this.displayValue) {
- result.push({
- data: "00000000",
- text: this.text.substr(11, 1),
- options: { textAlign: "right", fontSize: this.fontSize }
- });
- }
- return result;
- }
- }]);
- return UPC;
- }(_Barcode3.default);
- // Calulate the checksum digit
- // https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Calculation_of_checksum_digit
- function checksum(number) {
- var result = 0;
- var i;
- for (i = 1; i < 11; i += 2) {
- result += parseInt(number[i]);
- }
- for (i = 0; i < 11; i += 2) {
- result += parseInt(number[i]) * 3;
- }
- return (10 - result % 10) % 10;
- }
- exports.default = UPC;
- /***/ }),
- /* 21 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _encoder = __webpack_require__(16);
- var _encoder2 = _interopRequireDefault(_encoder);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- var _UPC = __webpack_require__(20);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:
- // https://en.wikipedia.org/wiki/Universal_Product_Code#Encoding
- //
- // UPC-E documentation:
- // https://en.wikipedia.org/wiki/Universal_Product_Code#UPC-E
- var EXPANSIONS = ["XX00000XXX", "XX10000XXX", "XX20000XXX", "XXX00000XX", "XXXX00000X", "XXXXX00005", "XXXXX00006", "XXXXX00007", "XXXXX00008", "XXXXX00009"];
- var PARITIES = [["EEEOOO", "OOOEEE"], ["EEOEOO", "OOEOEE"], ["EEOOEO", "OOEEOE"], ["EEOOOE", "OOEEEO"], ["EOEEOO", "OEOOEE"], ["EOOEEO", "OEEOOE"], ["EOOOEE", "OEEEOO"], ["EOEOEO", "OEOEOE"], ["EOEOOE", "OEOEEO"], ["EOOEOE", "OEEOEO"]];
- var UPCE = function (_Barcode) {
- _inherits(UPCE, _Barcode);
- function UPCE(data, options) {
- _classCallCheck(this, UPCE);
- var _this = _possibleConstructorReturn(this, (UPCE.__proto__ || Object.getPrototypeOf(UPCE)).call(this, data, options));
- // Code may be 6 or 8 digits;
- // A 7 digit code is ambiguous as to whether the extra digit
- // is a UPC-A check or number system digit.
- _this.isValid = false;
- if (data.search(/^[0-9]{6}$/) !== -1) {
- _this.middleDigits = data;
- _this.upcA = expandToUPCA(data, "0");
- _this.text = options.text || '' + _this.upcA[0] + data + _this.upcA[_this.upcA.length - 1];
- _this.isValid = true;
- } else if (data.search(/^[01][0-9]{7}$/) !== -1) {
- _this.middleDigits = data.substring(1, data.length - 1);
- _this.upcA = expandToUPCA(_this.middleDigits, data[0]);
- if (_this.upcA[_this.upcA.length - 1] === data[data.length - 1]) {
- _this.isValid = true;
- } else {
- // checksum mismatch
- return _possibleConstructorReturn(_this);
- }
- } else {
- return _possibleConstructorReturn(_this);
- }
- _this.displayValue = options.displayValue;
- // Make sure the font is not bigger than the space between the guard bars
- if (options.fontSize > options.width * 10) {
- _this.fontSize = options.width * 10;
- } else {
- _this.fontSize = options.fontSize;
- }
- // Make the guard bars go down half the way of the text
- _this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;
- return _this;
- }
- _createClass(UPCE, [{
- key: 'valid',
- value: function valid() {
- return this.isValid;
- }
- }, {
- key: 'encode',
- value: function encode() {
- if (this.options.flat) {
- return this.flatEncoding();
- } else {
- return this.guardedEncoding();
- }
- }
- }, {
- key: 'flatEncoding',
- value: function flatEncoding() {
- var result = "";
- result += "101";
- result += this.encodeMiddleDigits();
- result += "010101";
- return {
- data: result,
- text: this.text
- };
- }
- }, {
- key: 'guardedEncoding',
- value: function guardedEncoding() {
- var result = [];
- // Add the UPC-A number system digit beneath the quiet zone
- if (this.displayValue) {
- result.push({
- data: "00000000",
- text: this.text[0],
- options: { textAlign: "left", fontSize: this.fontSize }
- });
- }
- // Add the guard bars
- result.push({
- data: "101",
- options: { height: this.guardHeight }
- });
- // Add the 6 UPC-E digits
- result.push({
- data: this.encodeMiddleDigits(),
- text: this.text.substring(1, 7),
- options: { fontSize: this.fontSize }
- });
- // Add the end bits
- result.push({
- data: "010101",
- options: { height: this.guardHeight }
- });
- // Add the UPC-A check digit beneath the quiet zone
- if (this.displayValue) {
- result.push({
- data: "00000000",
- text: this.text[7],
- options: { textAlign: "right", fontSize: this.fontSize }
- });
- }
- return result;
- }
- }, {
- key: 'encodeMiddleDigits',
- value: function encodeMiddleDigits() {
- var numberSystem = this.upcA[0];
- var checkDigit = this.upcA[this.upcA.length - 1];
- var parity = PARITIES[parseInt(checkDigit)][parseInt(numberSystem)];
- return (0, _encoder2.default)(this.middleDigits, parity);
- }
- }]);
- return UPCE;
- }(_Barcode3.default);
- function expandToUPCA(middleDigits, numberSystem) {
- var lastUpcE = parseInt(middleDigits[middleDigits.length - 1]);
- var expansion = EXPANSIONS[lastUpcE];
- var result = "";
- var digitIndex = 0;
- for (var i = 0; i < expansion.length; i++) {
- var c = expansion[i];
- if (c === 'X') {
- result += middleDigits[digitIndex++];
- } else {
- result += c;
- }
- }
- result = '' + numberSystem + result;
- return '' + result + (0, _UPC.checksum)(result);
- }
- exports.default = UPCE;
- /***/ }),
- /* 22 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.ITF14 = exports.ITF = undefined;
- var _ITF = __webpack_require__(23);
- var _ITF2 = _interopRequireDefault(_ITF);
- var _ITF3 = __webpack_require__(25);
- var _ITF4 = _interopRequireDefault(_ITF3);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.ITF = _ITF2.default;
- exports.ITF14 = _ITF4.default;
- /***/ }),
- /* 23 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _constants = __webpack_require__(24);
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var ITF = function (_Barcode) {
- _inherits(ITF, _Barcode);
- function ITF() {
- _classCallCheck(this, ITF);
- return _possibleConstructorReturn(this, (ITF.__proto__ || Object.getPrototypeOf(ITF)).apply(this, arguments));
- }
- _createClass(ITF, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^([0-9]{2})+$/) !== -1;
- }
- }, {
- key: 'encode',
- value: function encode() {
- var _this2 = this;
- // Calculate all the digit pairs
- var encoded = this.data.match(/.{2}/g).map(function (pair) {
- return _this2.encodePair(pair);
- }).join('');
- return {
- data: _constants.START_BIN + encoded + _constants.END_BIN,
- text: this.text
- };
- }
- // Calculate the data of a number pair
- }, {
- key: 'encodePair',
- value: function encodePair(pair) {
- var second = _constants.BINARIES[pair[1]];
- return _constants.BINARIES[pair[0]].split('').map(function (first, idx) {
- return (first === '1' ? '111' : '1') + (second[idx] === '1' ? '000' : '0');
- }).join('');
- }
- }]);
- return ITF;
- }(_Barcode3.default);
- exports.default = ITF;
- /***/ }),
- /* 24 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var START_BIN = exports.START_BIN = '1010';
- var END_BIN = exports.END_BIN = '11101';
- var BINARIES = exports.BINARIES = ['00110', '10001', '01001', '11000', '00101', '10100', '01100', '00011', '10010', '01010'];
- /***/ }),
- /* 25 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _ITF2 = __webpack_require__(23);
- var _ITF3 = _interopRequireDefault(_ITF2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- // Calculate the checksum digit
- var checksum = function checksum(data) {
- var res = data.substr(0, 13).split('').map(function (num) {
- return parseInt(num, 10);
- }).reduce(function (sum, n, idx) {
- return sum + n * (3 - idx % 2 * 2);
- }, 0);
- return Math.ceil(res / 10) * 10 - res;
- };
- var ITF14 = function (_ITF) {
- _inherits(ITF14, _ITF);
- function ITF14(data, options) {
- _classCallCheck(this, ITF14);
- // Add checksum if it does not exist
- if (data.search(/^[0-9]{13}$/) !== -1) {
- data += checksum(data);
- }
- return _possibleConstructorReturn(this, (ITF14.__proto__ || Object.getPrototypeOf(ITF14)).call(this, data, options));
- }
- _createClass(ITF14, [{
- key: 'valid',
- value: function valid() {
- return this.data.search(/^[0-9]{14}$/) !== -1 && +this.data[13] === checksum(this.data);
- }
- }]);
- return ITF14;
- }(_ITF3.default);
- exports.default = ITF14;
- /***/ }),
- /* 26 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.MSI1110 = exports.MSI1010 = exports.MSI11 = exports.MSI10 = exports.MSI = undefined;
- var _MSI = __webpack_require__(27);
- var _MSI2 = _interopRequireDefault(_MSI);
- var _MSI3 = __webpack_require__(28);
- var _MSI4 = _interopRequireDefault(_MSI3);
- var _MSI5 = __webpack_require__(30);
- var _MSI6 = _interopRequireDefault(_MSI5);
- var _MSI7 = __webpack_require__(31);
- var _MSI8 = _interopRequireDefault(_MSI7);
- var _MSI9 = __webpack_require__(32);
- var _MSI10 = _interopRequireDefault(_MSI9);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.MSI = _MSI2.default;
- exports.MSI10 = _MSI4.default;
- exports.MSI11 = _MSI6.default;
- exports.MSI1010 = _MSI8.default;
- exports.MSI1110 = _MSI10.default;
- /***/ }),
- /* 27 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation
- // https://en.wikipedia.org/wiki/MSI_Barcode#Character_set_and_binary_lookup
- var MSI = function (_Barcode) {
- _inherits(MSI, _Barcode);
- function MSI(data, options) {
- _classCallCheck(this, MSI);
- return _possibleConstructorReturn(this, (MSI.__proto__ || Object.getPrototypeOf(MSI)).call(this, data, options));
- }
- _createClass(MSI, [{
- key: "encode",
- value: function encode() {
- // Start bits
- var ret = "110";
- for (var i = 0; i < this.data.length; i++) {
- // Convert the character to binary (always 4 binary digits)
- var digit = parseInt(this.data[i]);
- var bin = digit.toString(2);
- bin = addZeroes(bin, 4 - bin.length);
- // Add 100 for every zero and 110 for every 1
- for (var b = 0; b < bin.length; b++) {
- ret += bin[b] == "0" ? "100" : "110";
- }
- }
- // End bits
- ret += "1001";
- return {
- data: ret,
- text: this.text
- };
- }
- }, {
- key: "valid",
- value: function valid() {
- return this.data.search(/^[0-9]+$/) !== -1;
- }
- }]);
- return MSI;
- }(_Barcode3.default);
- function addZeroes(number, n) {
- for (var i = 0; i < n; i++) {
- number = "0" + number;
- }
- return number;
- }
- exports.default = MSI;
- /***/ }),
- /* 28 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _MSI2 = __webpack_require__(27);
- var _MSI3 = _interopRequireDefault(_MSI2);
- var _checksums = __webpack_require__(29);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var MSI10 = function (_MSI) {
- _inherits(MSI10, _MSI);
- function MSI10(data, options) {
- _classCallCheck(this, MSI10);
- return _possibleConstructorReturn(this, (MSI10.__proto__ || Object.getPrototypeOf(MSI10)).call(this, data + (0, _checksums.mod10)(data), options));
- }
- return MSI10;
- }(_MSI3.default);
- exports.default = MSI10;
- /***/ }),
- /* 29 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.mod10 = mod10;
- exports.mod11 = mod11;
- function mod10(number) {
- var sum = 0;
- for (var i = 0; i < number.length; i++) {
- var n = parseInt(number[i]);
- if ((i + number.length) % 2 === 0) {
- sum += n;
- } else {
- sum += n * 2 % 10 + Math.floor(n * 2 / 10);
- }
- }
- return (10 - sum % 10) % 10;
- }
- function mod11(number) {
- var sum = 0;
- var weights = [2, 3, 4, 5, 6, 7];
- for (var i = 0; i < number.length; i++) {
- var n = parseInt(number[number.length - 1 - i]);
- sum += weights[i % weights.length] * n;
- }
- return (11 - sum % 11) % 11;
- }
- /***/ }),
- /* 30 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _MSI2 = __webpack_require__(27);
- var _MSI3 = _interopRequireDefault(_MSI2);
- var _checksums = __webpack_require__(29);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var MSI11 = function (_MSI) {
- _inherits(MSI11, _MSI);
- function MSI11(data, options) {
- _classCallCheck(this, MSI11);
- return _possibleConstructorReturn(this, (MSI11.__proto__ || Object.getPrototypeOf(MSI11)).call(this, data + (0, _checksums.mod11)(data), options));
- }
- return MSI11;
- }(_MSI3.default);
- exports.default = MSI11;
- /***/ }),
- /* 31 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _MSI2 = __webpack_require__(27);
- var _MSI3 = _interopRequireDefault(_MSI2);
- var _checksums = __webpack_require__(29);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var MSI1010 = function (_MSI) {
- _inherits(MSI1010, _MSI);
- function MSI1010(data, options) {
- _classCallCheck(this, MSI1010);
- data += (0, _checksums.mod10)(data);
- data += (0, _checksums.mod10)(data);
- return _possibleConstructorReturn(this, (MSI1010.__proto__ || Object.getPrototypeOf(MSI1010)).call(this, data, options));
- }
- return MSI1010;
- }(_MSI3.default);
- exports.default = MSI1010;
- /***/ }),
- /* 32 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _MSI2 = __webpack_require__(27);
- var _MSI3 = _interopRequireDefault(_MSI2);
- var _checksums = __webpack_require__(29);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var MSI1110 = function (_MSI) {
- _inherits(MSI1110, _MSI);
- function MSI1110(data, options) {
- _classCallCheck(this, MSI1110);
- data += (0, _checksums.mod11)(data);
- data += (0, _checksums.mod10)(data);
- return _possibleConstructorReturn(this, (MSI1110.__proto__ || Object.getPrototypeOf(MSI1110)).call(this, data, options));
- }
- return MSI1110;
- }(_MSI3.default);
- exports.default = MSI1110;
- /***/ }),
- /* 33 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.pharmacode = undefined;
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation
- // http://www.gomaro.ch/ftproot/Laetus_PHARMA-CODE.pdf
- var pharmacode = function (_Barcode) {
- _inherits(pharmacode, _Barcode);
- function pharmacode(data, options) {
- _classCallCheck(this, pharmacode);
- var _this = _possibleConstructorReturn(this, (pharmacode.__proto__ || Object.getPrototypeOf(pharmacode)).call(this, data, options));
- _this.number = parseInt(data, 10);
- return _this;
- }
- _createClass(pharmacode, [{
- key: "encode",
- value: function encode() {
- var z = this.number;
- var result = "";
- // http://i.imgur.com/RMm4UDJ.png
- // (source: http://www.gomaro.ch/ftproot/Laetus_PHARMA-CODE.pdf, page: 34)
- while (!isNaN(z) && z != 0) {
- if (z % 2 === 0) {
- // Even
- result = "11100" + result;
- z = (z - 2) / 2;
- } else {
- // Odd
- result = "100" + result;
- z = (z - 1) / 2;
- }
- }
- // Remove the two last zeroes
- result = result.slice(0, -2);
- return {
- data: result,
- text: this.text
- };
- }
- }, {
- key: "valid",
- value: function valid() {
- return this.number >= 3 && this.number <= 131070;
- }
- }]);
- return pharmacode;
- }(_Barcode3.default);
- exports.pharmacode = pharmacode;
- /***/ }),
- /* 34 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.codabar = undefined;
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding specification:
- // http://www.barcodeisland.com/codabar.phtml
- var codabar = function (_Barcode) {
- _inherits(codabar, _Barcode);
- function codabar(data, options) {
- _classCallCheck(this, codabar);
- if (data.search(/^[0-9\-\$\:\.\+\/]+$/) === 0) {
- data = "A" + data + "A";
- }
- var _this = _possibleConstructorReturn(this, (codabar.__proto__ || Object.getPrototypeOf(codabar)).call(this, data.toUpperCase(), options));
- _this.text = _this.options.text || _this.text.replace(/[A-D]/g, '');
- return _this;
- }
- _createClass(codabar, [{
- key: "valid",
- value: function valid() {
- return this.data.search(/^[A-D][0-9\-\$\:\.\+\/]+[A-D]$/) !== -1;
- }
- }, {
- key: "encode",
- value: function encode() {
- var result = [];
- var encodings = this.getEncodings();
- for (var i = 0; i < this.data.length; i++) {
- result.push(encodings[this.data.charAt(i)]);
- // for all characters except the last, append a narrow-space ("0")
- if (i !== this.data.length - 1) {
- result.push("0");
- }
- }
- return {
- text: this.text,
- data: result.join('')
- };
- }
- }, {
- key: "getEncodings",
- value: function getEncodings() {
- return {
- "0": "101010011",
- "1": "101011001",
- "2": "101001011",
- "3": "110010101",
- "4": "101101001",
- "5": "110101001",
- "6": "100101011",
- "7": "100101101",
- "8": "100110101",
- "9": "110100101",
- "-": "101001101",
- "$": "101100101",
- ":": "1101011011",
- "/": "1101101011",
- ".": "1101101101",
- "+": "1011011011",
- "A": "1011001001",
- "B": "1001001011",
- "C": "1010010011",
- "D": "1010011001"
- };
- }
- }]);
- return codabar;
- }(_Barcode3.default);
- exports.codabar = codabar;
- /***/ }),
- /* 35 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.GenericBarcode = undefined;
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _Barcode2 = __webpack_require__(3);
- var _Barcode3 = _interopRequireDefault(_Barcode2);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var GenericBarcode = function (_Barcode) {
- _inherits(GenericBarcode, _Barcode);
- function GenericBarcode(data, options) {
- _classCallCheck(this, GenericBarcode);
- return _possibleConstructorReturn(this, (GenericBarcode.__proto__ || Object.getPrototypeOf(GenericBarcode)).call(this, data, options)); // Sets this.data and this.text
- }
- // Return the corresponding binary numbers for the data provided
- _createClass(GenericBarcode, [{
- key: "encode",
- value: function encode() {
- return {
- data: "10101010101010101010101010101010101010101",
- text: this.text
- };
- }
- // Resturn true/false if the string provided is valid for this encoder
- }, {
- key: "valid",
- value: function valid() {
- return true;
- }
- }]);
- return GenericBarcode;
- }(_Barcode3.default);
- exports.GenericBarcode = GenericBarcode;
- /***/ }),
- /* 36 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
- exports.default = function (old, replaceObj) {
- return _extends({}, old, replaceObj);
- };
- /***/ }),
- /* 37 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = linearizeEncodings;
- // Encodings can be nestled like [[1-1, 1-2], 2, [3-1, 3-2]
- // Convert to [1-1, 1-2, 2, 3-1, 3-2]
- function linearizeEncodings(encodings) {
- var linearEncodings = [];
- function nextLevel(encoded) {
- if (Array.isArray(encoded)) {
- for (var i = 0; i < encoded.length; i++) {
- nextLevel(encoded[i]);
- }
- } else {
- encoded.text = encoded.text || "";
- encoded.data = encoded.data || "";
- linearEncodings.push(encoded);
- }
- }
- nextLevel(encodings);
- return linearEncodings;
- }
- /***/ }),
- /* 38 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = fixOptions;
- function fixOptions(options) {
- // Fix the margins
- options.marginTop = options.marginTop || options.margin;
- options.marginBottom = options.marginBottom || options.margin;
- options.marginRight = options.marginRight || options.margin;
- options.marginLeft = options.marginLeft || options.margin;
- return options;
- }
- /***/ }),
- /* 39 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; /* global HTMLImageElement */
- /* global HTMLCanvasElement */
- /* global SVGElement */
- var _getOptionsFromElement = __webpack_require__(40);
- var _getOptionsFromElement2 = _interopRequireDefault(_getOptionsFromElement);
- var _renderers = __webpack_require__(43);
- var _renderers2 = _interopRequireDefault(_renderers);
- var _exceptions = __webpack_require__(48);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- // Takes an element and returns an object with information about how
- // it should be rendered
- // This could also return an array with these objects
- // {
- // element: The element that the renderer should draw on
- // renderer: The name of the renderer
- // afterRender (optional): If something has to done after the renderer
- // completed, calls afterRender (function)
- // options (optional): Options that can be defined in the element
- // }
- function getRenderProperties(element) {
- // If the element is a string, query select call again
- if (typeof element === "string") {
- return querySelectedRenderProperties(element);
- }
- // If element is array. Recursivly call with every object in the array
- else if (Array.isArray(element)) {
- var returnArray = [];
- for (var i = 0; i < element.length; i++) {
- returnArray.push(getRenderProperties(element[i]));
- }
- return returnArray;
- }
- // If element, render on canvas and set the uri as src
- else if (typeof HTMLCanvasElement !== 'undefined' && element instanceof HTMLImageElement) {
- return newCanvasRenderProperties(element);
- }
- // If SVG
- else if (element && element.nodeName && element.nodeName.toLowerCase() === 'svg' || typeof SVGElement !== 'undefined' && element instanceof SVGElement) {
- return {
- element: element,
- options: (0, _getOptionsFromElement2.default)(element),
- renderer: _renderers2.default.SVGRenderer
- };
- }
- // If canvas (in browser)
- else if (typeof HTMLCanvasElement !== 'undefined' && element instanceof HTMLCanvasElement) {
- return {
- element: element,
- options: (0, _getOptionsFromElement2.default)(element),
- renderer: _renderers2.default.CanvasRenderer
- };
- }
- // If canvas (in node)
- else if (element && element.getContext) {
- return {
- element: element,
- renderer: _renderers2.default.CanvasRenderer
- };
- } else if (element && (typeof element === "undefined" ? "undefined" : _typeof(element)) === 'object' && !element.nodeName) {
- return {
- element: element,
- renderer: _renderers2.default.ObjectRenderer
- };
- } else {
- throw new _exceptions.InvalidElementException();
- }
- }
- function querySelectedRenderProperties(string) {
- var selector = document.querySelectorAll(string);
- if (selector.length === 0) {
- return undefined;
- } else {
- var returnArray = [];
- for (var i = 0; i < selector.length; i++) {
- returnArray.push(getRenderProperties(selector[i]));
- }
- return returnArray;
- }
- }
- function newCanvasRenderProperties(imgElement) {
- var canvas = document.createElement('canvas');
- return {
- element: canvas,
- options: (0, _getOptionsFromElement2.default)(imgElement),
- renderer: _renderers2.default.CanvasRenderer,
- afterRender: function afterRender() {
- imgElement.setAttribute("src", canvas.toDataURL());
- }
- };
- }
- exports.default = getRenderProperties;
- /***/ }),
- /* 40 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _optionsFromStrings = __webpack_require__(41);
- var _optionsFromStrings2 = _interopRequireDefault(_optionsFromStrings);
- var _defaults = __webpack_require__(42);
- var _defaults2 = _interopRequireDefault(_defaults);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function getOptionsFromElement(element) {
- var options = {};
- for (var property in _defaults2.default) {
- if (_defaults2.default.hasOwnProperty(property)) {
- // jsbarcode-*
- if (element.hasAttribute("jsbarcode-" + property.toLowerCase())) {
- options[property] = element.getAttribute("jsbarcode-" + property.toLowerCase());
- }
- // data-*
- if (element.hasAttribute("data-" + property.toLowerCase())) {
- options[property] = element.getAttribute("data-" + property.toLowerCase());
- }
- }
- }
- options["value"] = element.getAttribute("jsbarcode-value") || element.getAttribute("data-value");
- // Since all atributes are string they need to be converted to integers
- options = (0, _optionsFromStrings2.default)(options);
- return options;
- }
- exports.default = getOptionsFromElement;
- /***/ }),
- /* 41 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = optionsFromStrings;
- // Convert string to integers/booleans where it should be
- function optionsFromStrings(options) {
- var intOptions = ["width", "height", "textMargin", "fontSize", "margin", "marginTop", "marginBottom", "marginLeft", "marginRight"];
- for (var intOption in intOptions) {
- if (intOptions.hasOwnProperty(intOption)) {
- intOption = intOptions[intOption];
- if (typeof options[intOption] === "string") {
- options[intOption] = parseInt(options[intOption], 10);
- }
- }
- }
- if (typeof options["displayValue"] === "string") {
- options["displayValue"] = options["displayValue"] != "false";
- }
- return options;
- }
- /***/ }),
- /* 42 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var defaults = {
- width: 2,
- height: 100,
- format: "auto",
- displayValue: true,
- fontOptions: "",
- font: "monospace",
- text: undefined,
- textAlign: "center",
- textPosition: "bottom",
- textMargin: 2,
- fontSize: 20,
- background: "#ffffff",
- lineColor: "#000000",
- margin: 10,
- marginTop: undefined,
- marginBottom: undefined,
- marginLeft: undefined,
- marginRight: undefined,
- valid: function valid() {}
- };
- exports.default = defaults;
- /***/ }),
- /* 43 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _canvas = __webpack_require__(44);
- var _canvas2 = _interopRequireDefault(_canvas);
- var _svg = __webpack_require__(46);
- var _svg2 = _interopRequireDefault(_svg);
- var _object = __webpack_require__(47);
- var _object2 = _interopRequireDefault(_object);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- exports.default = { CanvasRenderer: _canvas2.default, SVGRenderer: _svg2.default, ObjectRenderer: _object2.default };
- /***/ }),
- /* 44 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _merge = __webpack_require__(36);
- var _merge2 = _interopRequireDefault(_merge);
- var _shared = __webpack_require__(45);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var CanvasRenderer = function () {
- function CanvasRenderer(canvas, encodings, options) {
- _classCallCheck(this, CanvasRenderer);
- this.canvas = canvas;
- this.encodings = encodings;
- this.options = options;
- }
- _createClass(CanvasRenderer, [{
- key: "render",
- value: function render() {
- // Abort if the browser does not support HTML5 canvas
- if (!this.canvas.getContext) {
- throw new Error('The browser does not support canvas.');
- }
- this.prepareCanvas();
- for (var i = 0; i < this.encodings.length; i++) {
- var encodingOptions = (0, _merge2.default)(this.options, this.encodings[i].options);
- this.drawCanvasBarcode(encodingOptions, this.encodings[i]);
- this.drawCanvasText(encodingOptions, this.encodings[i]);
- this.moveCanvasDrawing(this.encodings[i]);
- }
- this.restoreCanvas();
- }
- }, {
- key: "prepareCanvas",
- value: function prepareCanvas() {
- // Get the canvas context
- var ctx = this.canvas.getContext("2d");
- ctx.save();
- (0, _shared.calculateEncodingAttributes)(this.encodings, this.options, ctx);
- var totalWidth = (0, _shared.getTotalWidthOfEncodings)(this.encodings);
- var maxHeight = (0, _shared.getMaximumHeightOfEncodings)(this.encodings);
- this.canvas.width = totalWidth + this.options.marginLeft + this.options.marginRight;
- this.canvas.height = maxHeight;
- // Paint the canvas
- ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
- if (this.options.background) {
- ctx.fillStyle = this.options.background;
- ctx.fillRect(0, 0, this.canvas.width, this.canvas.height);
- }
- ctx.translate(this.options.marginLeft, 0);
- }
- }, {
- key: "drawCanvasBarcode",
- value: function drawCanvasBarcode(options, encoding) {
- // Get the canvas context
- var ctx = this.canvas.getContext("2d");
- var binary = encoding.data;
- // Creates the barcode out of the encoded binary
- var yFrom;
- if (options.textPosition == "top") {
- yFrom = options.marginTop + options.fontSize + options.textMargin;
- } else {
- yFrom = options.marginTop;
- }
- ctx.fillStyle = options.lineColor;
- for (var b = 0; b < binary.length; b++) {
- var x = b * options.width + encoding.barcodePadding;
- if (binary[b] === "1") {
- ctx.fillRect(x, yFrom, options.width, options.height);
- } else if (binary[b]) {
- ctx.fillRect(x, yFrom, options.width, options.height * binary[b]);
- }
- }
- }
- }, {
- key: "drawCanvasText",
- value: function drawCanvasText(options, encoding) {
- // Get the canvas context
- var ctx = this.canvas.getContext("2d");
- var font = options.fontOptions + " " + options.fontSize + "px " + options.font;
- // Draw the text if displayValue is set
- if (options.displayValue) {
- var x, y;
- if (options.textPosition == "top") {
- y = options.marginTop + options.fontSize - options.textMargin;
- } else {
- y = options.height + options.textMargin + options.marginTop + options.fontSize;
- }
- ctx.font = font;
- // Draw the text in the correct X depending on the textAlign option
- if (options.textAlign == "left" || encoding.barcodePadding > 0) {
- x = 0;
- ctx.textAlign = 'left';
- } else if (options.textAlign == "right") {
- x = encoding.width - 1;
- ctx.textAlign = 'right';
- }
- // In all other cases, center the text
- else {
- x = encoding.width / 2;
- ctx.textAlign = 'center';
- }
- ctx.fillText(encoding.text, x, y);
- }
- }
- }, {
- key: "moveCanvasDrawing",
- value: function moveCanvasDrawing(encoding) {
- var ctx = this.canvas.getContext("2d");
- ctx.translate(encoding.width, 0);
- }
- }, {
- key: "restoreCanvas",
- value: function restoreCanvas() {
- // Get the canvas context
- var ctx = this.canvas.getContext("2d");
- ctx.restore();
- }
- }]);
- return CanvasRenderer;
- }();
- exports.default = CanvasRenderer;
- /***/ }),
- /* 45 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.getTotalWidthOfEncodings = exports.calculateEncodingAttributes = exports.getBarcodePadding = exports.getEncodingHeight = exports.getMaximumHeightOfEncodings = undefined;
- var _merge = __webpack_require__(36);
- var _merge2 = _interopRequireDefault(_merge);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function getEncodingHeight(encoding, options) {
- return options.height + (options.displayValue && encoding.text.length > 0 ? options.fontSize + options.textMargin : 0) + options.marginTop + options.marginBottom;
- }
- function getBarcodePadding(textWidth, barcodeWidth, options) {
- if (options.displayValue && barcodeWidth < textWidth) {
- if (options.textAlign == "center") {
- return Math.floor((textWidth - barcodeWidth) / 2);
- } else if (options.textAlign == "left") {
- return 0;
- } else if (options.textAlign == "right") {
- return Math.floor(textWidth - barcodeWidth);
- }
- }
- return 0;
- }
- function calculateEncodingAttributes(encodings, barcodeOptions, context) {
- for (var i = 0; i < encodings.length; i++) {
- var encoding = encodings[i];
- var options = (0, _merge2.default)(barcodeOptions, encoding.options);
- // Calculate the width of the encoding
- var textWidth;
- if (options.displayValue) {
- textWidth = messureText(encoding.text, options, context);
- } else {
- textWidth = 0;
- }
- var barcodeWidth = encoding.data.length * options.width;
- encoding.width = Math.ceil(Math.max(textWidth, barcodeWidth));
- encoding.height = getEncodingHeight(encoding, options);
- encoding.barcodePadding = getBarcodePadding(textWidth, barcodeWidth, options);
- }
- }
- function getTotalWidthOfEncodings(encodings) {
- var totalWidth = 0;
- for (var i = 0; i < encodings.length; i++) {
- totalWidth += encodings[i].width;
- }
- return totalWidth;
- }
- function getMaximumHeightOfEncodings(encodings) {
- var maxHeight = 0;
- for (var i = 0; i < encodings.length; i++) {
- if (encodings[i].height > maxHeight) {
- maxHeight = encodings[i].height;
- }
- }
- return maxHeight;
- }
- function messureText(string, options, context) {
- var ctx;
- if (context) {
- ctx = context;
- } else if (typeof document !== "undefined") {
- ctx = document.createElement("canvas").getContext("2d");
- } else {
- // If the text cannot be messured we will return 0.
- // This will make some barcode with big text render incorrectly
- return 0;
- }
- ctx.font = options.fontOptions + " " + options.fontSize + "px " + options.font;
- // Calculate the width of the encoding
- var measureTextResult = ctx.measureText(string);
- if (!measureTextResult) {
- // Some implementations don't implement measureText and return undefined.
- // If the text cannot be measured we will return 0.
- // This will make some barcode with big text render incorrectly
- return 0;
- }
- var size = measureTextResult.width;
- return size;
- }
- exports.getMaximumHeightOfEncodings = getMaximumHeightOfEncodings;
- exports.getEncodingHeight = getEncodingHeight;
- exports.getBarcodePadding = getBarcodePadding;
- exports.calculateEncodingAttributes = calculateEncodingAttributes;
- exports.getTotalWidthOfEncodings = getTotalWidthOfEncodings;
- /***/ }),
- /* 46 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- var _merge = __webpack_require__(36);
- var _merge2 = _interopRequireDefault(_merge);
- var _shared = __webpack_require__(45);
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var svgns = "http://www.w3.org/2000/svg";
- var SVGRenderer = function () {
- function SVGRenderer(svg, encodings, options) {
- _classCallCheck(this, SVGRenderer);
- this.svg = svg;
- this.encodings = encodings;
- this.options = options;
- this.document = options.xmlDocument || document;
- }
- _createClass(SVGRenderer, [{
- key: "render",
- value: function render() {
- var currentX = this.options.marginLeft;
- this.prepareSVG();
- for (var i = 0; i < this.encodings.length; i++) {
- var encoding = this.encodings[i];
- var encodingOptions = (0, _merge2.default)(this.options, encoding.options);
- var group = this.createGroup(currentX, encodingOptions.marginTop, this.svg);
- this.setGroupOptions(group, encodingOptions);
- this.drawSvgBarcode(group, encodingOptions, encoding);
- this.drawSVGText(group, encodingOptions, encoding);
- currentX += encoding.width;
- }
- }
- }, {
- key: "prepareSVG",
- value: function prepareSVG() {
- // Clear the SVG
- while (this.svg.firstChild) {
- this.svg.removeChild(this.svg.firstChild);
- }
- (0, _shared.calculateEncodingAttributes)(this.encodings, this.options);
- var totalWidth = (0, _shared.getTotalWidthOfEncodings)(this.encodings);
- var maxHeight = (0, _shared.getMaximumHeightOfEncodings)(this.encodings);
- var width = totalWidth + this.options.marginLeft + this.options.marginRight;
- this.setSvgAttributes(width, maxHeight);
- if (this.options.background) {
- this.drawRect(0, 0, width, maxHeight, this.svg).setAttribute("style", "fill:" + this.options.background + ";");
- }
- }
- }, {
- key: "drawSvgBarcode",
- value: function drawSvgBarcode(parent, options, encoding) {
- var binary = encoding.data;
- // Creates the barcode out of the encoded binary
- var yFrom;
- if (options.textPosition == "top") {
- yFrom = options.fontSize + options.textMargin;
- } else {
- yFrom = 0;
- }
- var barWidth = 0;
- var x = 0;
- for (var b = 0; b < binary.length; b++) {
- x = b * options.width + encoding.barcodePadding;
- if (binary[b] === "1") {
- barWidth++;
- } else if (barWidth > 0) {
- this.drawRect(x - options.width * barWidth, yFrom, options.width * barWidth, options.height, parent);
- barWidth = 0;
- }
- }
- // Last draw is needed since the barcode ends with 1
- if (barWidth > 0) {
- this.drawRect(x - options.width * (barWidth - 1), yFrom, options.width * barWidth, options.height, parent);
- }
- }
- }, {
- key: "drawSVGText",
- value: function drawSVGText(parent, options, encoding) {
- var textElem = this.document.createElementNS(svgns, 'text');
- // Draw the text if displayValue is set
- if (options.displayValue) {
- var x, y;
- textElem.setAttribute("style", "font:" + options.fontOptions + " " + options.fontSize + "px " + options.font);
- if (options.textPosition == "top") {
- y = options.fontSize - options.textMargin;
- } else {
- y = options.height + options.textMargin + options.fontSize;
- }
- // Draw the text in the correct X depending on the textAlign option
- if (options.textAlign == "left" || encoding.barcodePadding > 0) {
- x = 0;
- textElem.setAttribute("text-anchor", "start");
- } else if (options.textAlign == "right") {
- x = encoding.width - 1;
- textElem.setAttribute("text-anchor", "end");
- }
- // In all other cases, center the text
- else {
- x = encoding.width / 2;
- textElem.setAttribute("text-anchor", "middle");
- }
- textElem.setAttribute("x", x);
- textElem.setAttribute("y", y);
- textElem.appendChild(this.document.createTextNode(encoding.text));
- parent.appendChild(textElem);
- }
- }
- }, {
- key: "setSvgAttributes",
- value: function setSvgAttributes(width, height) {
- var svg = this.svg;
- svg.setAttribute("width", width + "px");
- svg.setAttribute("height", height + "px");
- svg.setAttribute("x", "0px");
- svg.setAttribute("y", "0px");
- svg.setAttribute("viewBox", "0 0 " + width + " " + height);
- svg.setAttribute("xmlns", svgns);
- svg.setAttribute("version", "1.1");
- svg.setAttribute("style", "transform: translate(0,0)");
- }
- }, {
- key: "createGroup",
- value: function createGroup(x, y, parent) {
- var group = this.document.createElementNS(svgns, 'g');
- group.setAttribute("transform", "translate(" + x + ", " + y + ")");
- parent.appendChild(group);
- return group;
- }
- }, {
- key: "setGroupOptions",
- value: function setGroupOptions(group, options) {
- group.setAttribute("style", "fill:" + options.lineColor + ";");
- }
- }, {
- key: "drawRect",
- value: function drawRect(x, y, width, height, parent) {
- var rect = this.document.createElementNS(svgns, 'rect');
- rect.setAttribute("x", x);
- rect.setAttribute("y", y);
- rect.setAttribute("width", width);
- rect.setAttribute("height", height);
- parent.appendChild(rect);
- return rect;
- }
- }]);
- return SVGRenderer;
- }();
- exports.default = SVGRenderer;
- /***/ }),
- /* 47 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var ObjectRenderer = function () {
- function ObjectRenderer(object, encodings, options) {
- _classCallCheck(this, ObjectRenderer);
- this.object = object;
- this.encodings = encodings;
- this.options = options;
- }
- _createClass(ObjectRenderer, [{
- key: "render",
- value: function render() {
- this.object.encodings = this.encodings;
- }
- }]);
- return ObjectRenderer;
- }();
- exports.default = ObjectRenderer;
- /***/ }),
- /* 48 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
- var InvalidInputException = function (_Error) {
- _inherits(InvalidInputException, _Error);
- function InvalidInputException(symbology, input) {
- _classCallCheck(this, InvalidInputException);
- var _this = _possibleConstructorReturn(this, (InvalidInputException.__proto__ || Object.getPrototypeOf(InvalidInputException)).call(this));
- _this.name = "InvalidInputException";
- _this.symbology = symbology;
- _this.input = input;
- _this.message = '"' + _this.input + '" is not a valid input for ' + _this.symbology;
- return _this;
- }
- return InvalidInputException;
- }(Error);
- var InvalidElementException = function (_Error2) {
- _inherits(InvalidElementException, _Error2);
- function InvalidElementException() {
- _classCallCheck(this, InvalidElementException);
- var _this2 = _possibleConstructorReturn(this, (InvalidElementException.__proto__ || Object.getPrototypeOf(InvalidElementException)).call(this));
- _this2.name = "InvalidElementException";
- _this2.message = "Not supported type to render on";
- return _this2;
- }
- return InvalidElementException;
- }(Error);
- var NoElementException = function (_Error3) {
- _inherits(NoElementException, _Error3);
- function NoElementException() {
- _classCallCheck(this, NoElementException);
- var _this3 = _possibleConstructorReturn(this, (NoElementException.__proto__ || Object.getPrototypeOf(NoElementException)).call(this));
- _this3.name = "NoElementException";
- _this3.message = "No element to render on.";
- return _this3;
- }
- return NoElementException;
- }(Error);
- exports.InvalidInputException = InvalidInputException;
- exports.InvalidElementException = InvalidElementException;
- exports.NoElementException = NoElementException;
- /***/ }),
- /* 49 */
- /***/ (function(module, exports, __webpack_require__) {
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- /*eslint no-console: 0 */
- var ErrorHandler = function () {
- function ErrorHandler(api) {
- _classCallCheck(this, ErrorHandler);
- this.api = api;
- }
- _createClass(ErrorHandler, [{
- key: "handleCatch",
- value: function handleCatch(e) {
- // If babel supported extending of Error in a correct way instanceof would be used here
- if (e.name === "InvalidInputException") {
- if (this.api._options.valid !== this.api._defaults.valid) {
- this.api._options.valid(false);
- } else {
- throw e.message;
- }
- } else {
- throw e;
- }
- this.api.render = function () {};
- }
- }, {
- key: "wrapBarcodeCall",
- value: function wrapBarcodeCall(func) {
- try {
- var result = func.apply(undefined, arguments);
- this.api._options.valid(true);
- return result;
- } catch (e) {
- this.handleCatch(e);
- return this.api;
- }
- }
- }]);
- return ErrorHandler;
- }();
- exports.default = ErrorHandler;
- /***/ })
- /******/ ]);
|