{"version":3,"sources":["../node_modules/qrcode.react/lib/index.js","../node_modules/qr.js/lib/mode.js","../node_modules/qr.js/lib/ErrorCorrectLevel.js","../node_modules/qr.js/lib/Polynomial.js","../node_modules/qr.js/lib/math.js","../node_modules/qr.js/lib/QRCode.js","../node_modules/qr.js/lib/8BitByte.js","../node_modules/qr.js/lib/RSBlock.js","../node_modules/qr.js/lib/BitBuffer.js","../node_modules/qr.js/lib/util.js"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","_extends","Object","assign","target","i","arguments","length","source","key","hasOwnProperty","call","apply","this","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","configurable","writable","_createClass","protoProps","staticProps","_possibleConstructorReturn","self","_assertThisInitialized","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","ReferenceError","_inherits","subClass","superClass","create","value","_setPrototypeOf","p","React","__webpack_require__","QRCodeImpl","ErrorCorrectLevel","convertStr","str","out","charcode","charCodeAt","String","fromCharCode","DEFAULT_PROPS","size","level","bgColor","fgColor","includeMargin","MARGIN_SIZE","DEFAULT_IMG_SCALE","generatePath","modules","margin","undefined","ops","row","y","start","cell","x","concat","join","excavateModules","excavation","slice","map","h","w","getImageSettings","cells","imageSettings","numCells","defaultSize","Math","floor","scale","width","height","excavate","floorX","floorY","ceil","SUPPORTS_PATH2D","Path2D","addPath","e","QRCodeCanvas","_React$PureComponent","_getPrototypeOf2","_this","_len","args","Array","_key","imgLoaded","setState","PureComponent","_image","complete","handleImageLoad","update","nextProps","_this$props$imageSett","_nextProps$imageSetti","src","_this$props","qrcode","addData","make","_canvas","canvas","ctx","getContext","calculatedImageSettings","pixelRatio","window","devicePixelRatio","fillStyle","fillRect","fill","rdx","cdx","state","drawImage","_this2","_this$props2","style","otherProps","canvasStyle","img","imgSrc","createElement","display","onLoad","ref","_ref","Fragment","_ref2","QRCodeSVG","_React$PureComponent2","_this$props3","image","xlinkHref","preserveAspectRatio","fgPath","shapeRendering","viewBox","d","QRCode","renderAs","Component","defaultProps","module","exports","MODE_NUMBER","MODE_ALPHA_NUM","MODE_8BIT_BYTE","MODE_KANJI","L","M","Q","H","math","QRPolynomial","num","shift","Error","offset","get","index","getLength","multiply","j","gexp","glog","mod","ratio","QRMath","n","LOG_TABLE","EXP_TABLE","BitByte","RSBlock","BitBuffer","util","Polynomial","typeNumber","errorCorrectLevel","moduleCount","dataCache","dataList","proto","data","newData","isDark","col","getModuleCount","rsBlocks","getRSBlocks","buffer","totalDataCount","dataCount","put","mode","getLengthInBits","write","makeImpl","getBestMaskPattern","test","maskPattern","setupPositionProbePattern","setupPositionAdjustPattern","setupTimingPattern","setupTypeInfo","setupTypeNumber","createData","mapData","r","c","minLostPoint","pattern","lostPoint","getLostPoint","createMovieClip","target_mc","instance_name","depth","qr_mc","createEmptyMovieClip","beginFill","moveTo","lineTo","endFill","pos","getPatternPosition","bits","getBCHTypeNumber","getBCHTypeInfo","inc","bitIndex","byteIndex","dark","getMask","PAD0","PAD1","putBit","createBytes","maxDcCount","maxEcCount","dcdata","ecdata","dcCount","ecCount","totalCount","max","rsPoly","getErrorCorrectPolynomial","modPoly","modIndex","totalCodeCount","QR8bitByte","ECL","QRRSBlock","RS_BLOCK_TABLE","rsBlock","getRsBlockTable","list","count","QRBitBuffer","bufIndex","bit","Mode","QRMaskPattern","QRUtil","PATTERN_POSITION_TABLE","G15","G18","G15_MASK","getBCHDigit","digit","errorCorrectLength","a","type","qrCode","sameCount","darkCount","abs"],"mappings":"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","file":"static/js/0.49f8f615.chunk.js","sourcesContent":["'use strict';\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n return _typeof(obj);\n}\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n return target;\n}\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n return _assertThisInitialized(self);\n}\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar React = require('react');\nvar PropTypes = require('prop-types'); // qr.js doesn't handle error level of zero (M) so we need to do it right,\n// thus the deep require.\n\nvar QRCodeImpl = require('qr.js/lib/QRCode');\nvar ErrorCorrectLevel = require('qr.js/lib/ErrorCorrectLevel'); // TODO: pull this off of the QRCode class type so it matches.\n\n// Convert from UTF-16, forcing the use of byte-mode encoding in our QR Code.\n// This allows us to encode Hanji, Kanji, emoji, etc. Ideally we'd do more\n// detection and not resort to byte-mode if possible, but we're trading off\n// a smaller library for a smaller amount of data we can potentially encode.\n// Based on http://jonisalonen.com/2012/from-utf-16-to-utf-8-in-javascript/\nfunction convertStr(str) {\n var out = '';\n for (var i = 0; i < str.length; i++) {\n var charcode = str.charCodeAt(i);\n if (charcode < 0x0080) {\n out += String.fromCharCode(charcode);\n } else if (charcode < 0x0800) {\n out += String.fromCharCode(0xc0 | charcode >> 6);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n } else if (charcode < 0xd800 || charcode >= 0xe000) {\n out += String.fromCharCode(0xe0 | charcode >> 12);\n out += String.fromCharCode(0x80 | charcode >> 6 & 0x3f);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n } else {\n // This is a surrogate pair, so we'll reconsitute the pieces and work\n // from that\n i++;\n charcode = 0x10000 + ((charcode & 0x3ff) << 10 | str.charCodeAt(i) & 0x3ff);\n out += String.fromCharCode(0xf0 | charcode >> 18);\n out += String.fromCharCode(0x80 | charcode >> 12 & 0x3f);\n out += String.fromCharCode(0x80 | charcode >> 6 & 0x3f);\n out += String.fromCharCode(0x80 | charcode & 0x3f);\n }\n }\n return out;\n}\nvar DEFAULT_PROPS = {\n size: 128,\n level: 'L',\n bgColor: '#FFFFFF',\n fgColor: '#000000',\n includeMargin: false\n};\nvar PROP_TYPES = process.env.NODE_ENV !== 'production' ? {\n value: PropTypes.string.isRequired,\n size: PropTypes.number,\n level: PropTypes.oneOf(['L', 'M', 'Q', 'H']),\n bgColor: PropTypes.string,\n fgColor: PropTypes.string,\n includeMargin: PropTypes.bool,\n imageSettings: PropTypes.shape({\n src: PropTypes.string.isRequired,\n height: PropTypes.number.isRequired,\n width: PropTypes.number.isRequired,\n excavate: PropTypes.bool,\n x: PropTypes.number,\n y: PropTypes.number\n })\n} : {};\nvar MARGIN_SIZE = 4; // This is *very* rough estimate of max amount of QRCode allowed to be covered.\n// It is \"wrong\" in a lot of ways (area is a terrible way to estimate, it\n// really should be number of modules covered), but if for some reason we don't\n// get an explicit height or width, I'd rather default to something than throw.\n\nvar DEFAULT_IMG_SCALE = 0.1;\nfunction generatePath(modules) {\n var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var ops = [];\n modules.forEach(function (row, y) {\n var start = null;\n row.forEach(function (cell, x) {\n if (!cell && start !== null) {\n // M0 0h7v1H0z injects the space with the move and drops the comma,\n // saving a char per operation\n ops.push(\"M\".concat(start + margin, \" \").concat(y + margin, \"h\").concat(x - start, \"v1H\").concat(start + margin, \"z\"));\n start = null;\n return;\n } // end of row, clean up or skip\n\n if (x === row.length - 1) {\n if (!cell) {\n // We would have closed the op above already so this can only mean\n // 2+ light modules in a row.\n return;\n }\n if (start === null) {\n // Just a single dark module.\n ops.push(\"M\".concat(x + margin, \",\").concat(y + margin, \" h1v1H\").concat(x + margin, \"z\"));\n } else {\n // Otherwise finish the current line.\n ops.push(\"M\".concat(start + margin, \",\").concat(y + margin, \" h\").concat(x + 1 - start, \"v1H\").concat(start + margin, \"z\"));\n }\n return;\n }\n if (cell && start === null) {\n start = x;\n }\n });\n });\n return ops.join('');\n} // We could just do this in generatePath, except that we want to support\n// non-Path2D canvas, so we need to keep it an explicit step.\n\nfunction excavateModules(modules, excavation) {\n return modules.slice().map(function (row, y) {\n if (y < excavation.y || y >= excavation.y + excavation.h) {\n return row;\n }\n return row.map(function (cell, x) {\n if (x < excavation.x || x >= excavation.x + excavation.w) {\n return cell;\n }\n return false;\n });\n });\n}\nfunction getImageSettings(props, cells) {\n var imageSettings = props.imageSettings,\n size = props.size,\n includeMargin = props.includeMargin;\n if (imageSettings == null) {\n return null;\n }\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var defaultSize = Math.floor(size * DEFAULT_IMG_SCALE);\n var scale = numCells / size;\n var w = (imageSettings.width || defaultSize) * scale;\n var h = (imageSettings.height || defaultSize) * scale;\n var x = imageSettings.x == null ? cells.length / 2 - w / 2 : imageSettings.x * scale;\n var y = imageSettings.y == null ? cells.length / 2 - h / 2 : imageSettings.y * scale;\n var excavation = null;\n if (imageSettings.excavate) {\n var floorX = Math.floor(x);\n var floorY = Math.floor(y);\n var ceilW = Math.ceil(w + x - floorX);\n var ceilH = Math.ceil(h + y - floorY);\n excavation = {\n x: floorX,\n y: floorY,\n w: ceilW,\n h: ceilH\n };\n }\n return {\n x: x,\n y: y,\n h: h,\n w: w,\n excavation: excavation\n };\n} // For canvas we're going to switch our drawing mode based on whether or not\n// the environment supports Path2D. We only need the constructor to be\n// supported, but Edge doesn't actually support the path (string) type\n// argument. Luckily it also doesn't support the addPath() method. We can\n// treat that as the same thing.\n\nvar SUPPORTS_PATH2D = function () {\n try {\n new Path2D().addPath(new Path2D());\n } catch (e) {\n return false;\n }\n return true;\n}();\nvar QRCodeCanvas = /*#__PURE__*/\nfunction (_React$PureComponent) {\n _inherits(QRCodeCanvas, _React$PureComponent);\n function QRCodeCanvas() {\n var _getPrototypeOf2;\n var _this;\n _classCallCheck(this, QRCodeCanvas);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(QRCodeCanvas)).call.apply(_getPrototypeOf2, [this].concat(args)));\n _defineProperty(_assertThisInitialized(_this), \"_canvas\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"_image\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n imgLoaded: false\n });\n _defineProperty(_assertThisInitialized(_this), \"handleImageLoad\", function () {\n _this.setState({\n imgLoaded: true\n });\n });\n return _this;\n }\n _createClass(QRCodeCanvas, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this._image && this._image.complete) {\n this.handleImageLoad();\n }\n this.update();\n }\n }, {\n key: \"componentWillReceiveProps\",\n value: function componentWillReceiveProps(nextProps) {\n var _this$props$imageSett, _nextProps$imageSetti;\n var currentSrc = (_this$props$imageSett = this.props.imageSettings) === null || _this$props$imageSett === void 0 ? void 0 : _this$props$imageSett.src;\n var nextSrc = (_nextProps$imageSetti = nextProps.imageSettings) === null || _nextProps$imageSetti === void 0 ? void 0 : _nextProps$imageSetti.src;\n if (currentSrc !== nextSrc) {\n this.setState({\n imgLoaded: false\n });\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.update();\n }\n }, {\n key: \"update\",\n value: function update() {\n var _this$props = this.props,\n value = _this$props.value,\n size = _this$props.size,\n level = _this$props.level,\n bgColor = _this$props.bgColor,\n fgColor = _this$props.fgColor,\n includeMargin = _this$props.includeMargin,\n imageSettings = _this$props.imageSettings; // We'll use type===-1 to force QRCode to automatically pick the best type\n\n var qrcode = new QRCodeImpl(-1, ErrorCorrectLevel[level]);\n qrcode.addData(convertStr(value));\n qrcode.make();\n if (this._canvas != null) {\n var canvas = this._canvas;\n var ctx = canvas.getContext('2d');\n if (!ctx) {\n return;\n }\n var cells = qrcode.modules;\n if (cells === null) {\n return;\n }\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var calculatedImageSettings = getImageSettings(this.props, cells);\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n } // We're going to scale this so that the number of drawable units\n // matches the number of cells. This avoids rounding issues, but does\n // result in some potentially unwanted single pixel issues between\n // blocks, only in environments that don't support Path2D.\n\n var pixelRatio = window.devicePixelRatio || 1;\n canvas.height = canvas.width = size * pixelRatio;\n var scale = size / numCells * pixelRatio;\n ctx.scale(scale, scale); // Draw solid background, only paint dark modules.\n\n ctx.fillStyle = bgColor;\n ctx.fillRect(0, 0, numCells, numCells);\n ctx.fillStyle = fgColor;\n if (SUPPORTS_PATH2D) {\n // $FlowFixMe: Path2D c'tor doesn't support args yet.\n ctx.fill(new Path2D(generatePath(cells, margin)));\n } else {\n cells.forEach(function (row, rdx) {\n row.forEach(function (cell, cdx) {\n if (cell) {\n ctx.fillRect(cdx + margin, rdx + margin, 1, 1);\n }\n });\n });\n }\n if (this.state.imgLoaded && this._image && calculatedImageSettings != null) {\n ctx.drawImage(this._image, calculatedImageSettings.x + margin, calculatedImageSettings.y + margin, calculatedImageSettings.w, calculatedImageSettings.h);\n }\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n var _this$props2 = this.props,\n value = _this$props2.value,\n size = _this$props2.size,\n level = _this$props2.level,\n bgColor = _this$props2.bgColor,\n fgColor = _this$props2.fgColor,\n style = _this$props2.style,\n includeMargin = _this$props2.includeMargin,\n imageSettings = _this$props2.imageSettings,\n otherProps = _objectWithoutProperties(_this$props2, [\"value\", \"size\", \"level\", \"bgColor\", \"fgColor\", \"style\", \"includeMargin\", \"imageSettings\"]);\n var canvasStyle = _objectSpread({\n height: size,\n width: size\n }, style);\n var img = null;\n var imgSrc = imageSettings && imageSettings.src;\n if (imageSettings != null && imgSrc != null) {\n img = React.createElement(\"img\", {\n src: imgSrc,\n style: {\n display: 'none'\n },\n onLoad: this.handleImageLoad,\n ref: function ref(_ref) {\n return _this2._image = _ref;\n }\n });\n }\n return React.createElement(React.Fragment, null, React.createElement(\"canvas\", _extends({\n style: canvasStyle,\n height: size,\n width: size,\n ref: function ref(_ref2) {\n return _this2._canvas = _ref2;\n }\n }, otherProps)), img);\n }\n }]);\n return QRCodeCanvas;\n}(React.PureComponent);\n_defineProperty(QRCodeCanvas, \"defaultProps\", DEFAULT_PROPS);\nif (process.env.NODE_ENV !== 'production') {\n QRCodeCanvas.propTypes = PROP_TYPES;\n}\nvar QRCodeSVG = /*#__PURE__*/\nfunction (_React$PureComponent2) {\n _inherits(QRCodeSVG, _React$PureComponent2);\n function QRCodeSVG() {\n _classCallCheck(this, QRCodeSVG);\n return _possibleConstructorReturn(this, _getPrototypeOf(QRCodeSVG).apply(this, arguments));\n }\n _createClass(QRCodeSVG, [{\n key: \"render\",\n value: function render() {\n var _this$props3 = this.props,\n value = _this$props3.value,\n size = _this$props3.size,\n level = _this$props3.level,\n bgColor = _this$props3.bgColor,\n fgColor = _this$props3.fgColor,\n includeMargin = _this$props3.includeMargin,\n imageSettings = _this$props3.imageSettings,\n otherProps = _objectWithoutProperties(_this$props3, [\"value\", \"size\", \"level\", \"bgColor\", \"fgColor\", \"includeMargin\", \"imageSettings\"]); // We'll use type===-1 to force QRCode to automatically pick the best type\n\n var qrcode = new QRCodeImpl(-1, ErrorCorrectLevel[level]);\n qrcode.addData(convertStr(value));\n qrcode.make();\n var cells = qrcode.modules;\n if (cells === null) {\n return null;\n }\n var margin = includeMargin ? MARGIN_SIZE : 0;\n var numCells = cells.length + margin * 2;\n var calculatedImageSettings = getImageSettings(this.props, cells);\n var image = null;\n if (imageSettings != null && calculatedImageSettings != null) {\n if (calculatedImageSettings.excavation != null) {\n cells = excavateModules(cells, calculatedImageSettings.excavation);\n }\n image = React.createElement(\"image\", {\n xlinkHref: imageSettings.src,\n height: calculatedImageSettings.h,\n width: calculatedImageSettings.w,\n x: calculatedImageSettings.x + margin,\n y: calculatedImageSettings.y + margin,\n preserveAspectRatio: \"none\"\n });\n } // Drawing strategy: instead of a rect per module, we're going to create a\n // single path for the dark modules and layer that on top of a light rect,\n // for a total of 2 DOM nodes. We pay a bit more in string concat but that's\n // way faster than DOM ops.\n // For level 1, 441 nodes -> 2\n // For level 40, 31329 -> 2\n\n var fgPath = generatePath(cells, margin);\n return React.createElement(\"svg\", _extends({\n shapeRendering: \"crispEdges\",\n height: size,\n width: size,\n viewBox: \"0 0 \".concat(numCells, \" \").concat(numCells)\n }, otherProps), React.createElement(\"path\", {\n fill: bgColor,\n d: \"M0,0 h\".concat(numCells, \"v\").concat(numCells, \"H0z\")\n }), React.createElement(\"path\", {\n fill: fgColor,\n d: fgPath\n }), image);\n }\n }]);\n return QRCodeSVG;\n}(React.PureComponent);\n_defineProperty(QRCodeSVG, \"defaultProps\", DEFAULT_PROPS);\nif (process.env.NODE_ENV !== 'production') {\n QRCodeSVG.propTypes = PROP_TYPES;\n}\nvar QRCode = function QRCode(props) {\n var renderAs = props.renderAs,\n otherProps = _objectWithoutProperties(props, [\"renderAs\"]);\n var Component = renderAs === 'svg' ? QRCodeSVG : QRCodeCanvas;\n return React.createElement(Component, otherProps);\n};\nQRCode.defaultProps = _objectSpread({\n renderAs: 'canvas'\n}, DEFAULT_PROPS);\nmodule.exports = QRCode;","module.exports = {\n MODE_NUMBER: 1 << 0,\n MODE_ALPHA_NUM: 1 << 1,\n MODE_8BIT_BYTE: 1 << 2,\n MODE_KANJI: 1 << 3\n};","module.exports = {\n L: 1,\n M: 0,\n Q: 3,\n H: 2\n};","var math = require('./math');\nfunction QRPolynomial(num, shift) {\n if (num.length == undefined) {\n throw new Error(num.length + \"/\" + shift);\n }\n var offset = 0;\n while (offset < num.length && num[offset] == 0) {\n offset++;\n }\n this.num = new Array(num.length - offset + shift);\n for (var i = 0; i < num.length - offset; i++) {\n this.num[i] = num[i + offset];\n }\n}\nQRPolynomial.prototype = {\n get: function get(index) {\n return this.num[index];\n },\n getLength: function getLength() {\n return this.num.length;\n },\n multiply: function multiply(e) {\n var num = new Array(this.getLength() + e.getLength() - 1);\n for (var i = 0; i < this.getLength(); i++) {\n for (var j = 0; j < e.getLength(); j++) {\n num[i + j] ^= math.gexp(math.glog(this.get(i)) + math.glog(e.get(j)));\n }\n }\n return new QRPolynomial(num, 0);\n },\n mod: function mod(e) {\n if (this.getLength() - e.getLength() < 0) {\n return this;\n }\n var ratio = math.glog(this.get(0)) - math.glog(e.get(0));\n var num = new Array(this.getLength());\n for (var i = 0; i < this.getLength(); i++) {\n num[i] = this.get(i);\n }\n for (var i = 0; i < e.getLength(); i++) {\n num[i] ^= math.gexp(math.glog(e.get(i)) + ratio);\n }\n\n // recursive call\n return new QRPolynomial(num, 0).mod(e);\n }\n};\nmodule.exports = QRPolynomial;","var QRMath = {\n glog: function glog(n) {\n if (n < 1) {\n throw new Error(\"glog(\" + n + \")\");\n }\n return QRMath.LOG_TABLE[n];\n },\n gexp: function gexp(n) {\n while (n < 0) {\n n += 255;\n }\n while (n >= 256) {\n n -= 255;\n }\n return QRMath.EXP_TABLE[n];\n },\n EXP_TABLE: new Array(256),\n LOG_TABLE: new Array(256)\n};\nfor (var i = 0; i < 8; i++) {\n QRMath.EXP_TABLE[i] = 1 << i;\n}\nfor (var i = 8; i < 256; i++) {\n QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4] ^ QRMath.EXP_TABLE[i - 5] ^ QRMath.EXP_TABLE[i - 6] ^ QRMath.EXP_TABLE[i - 8];\n}\nfor (var i = 0; i < 255; i++) {\n QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]] = i;\n}\nmodule.exports = QRMath;","var BitByte = require('./8BitByte');\nvar RSBlock = require('./RSBlock');\nvar BitBuffer = require('./BitBuffer');\nvar util = require('./util');\nvar Polynomial = require('./Polynomial');\nfunction QRCode(typeNumber, errorCorrectLevel) {\n this.typeNumber = typeNumber;\n this.errorCorrectLevel = errorCorrectLevel;\n this.modules = null;\n this.moduleCount = 0;\n this.dataCache = null;\n this.dataList = [];\n}\n\n// for client side minification\nvar proto = QRCode.prototype;\nproto.addData = function (data) {\n var newData = new BitByte(data);\n this.dataList.push(newData);\n this.dataCache = null;\n};\nproto.isDark = function (row, col) {\n if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {\n throw new Error(row + \",\" + col);\n }\n return this.modules[row][col];\n};\nproto.getModuleCount = function () {\n return this.moduleCount;\n};\nproto.make = function () {\n // Calculate automatically typeNumber if provided is < 1\n if (this.typeNumber < 1) {\n var typeNumber = 1;\n for (typeNumber = 1; typeNumber < 40; typeNumber++) {\n var rsBlocks = RSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel);\n var buffer = new BitBuffer();\n var totalDataCount = 0;\n for (var i = 0; i < rsBlocks.length; i++) {\n totalDataCount += rsBlocks[i].dataCount;\n }\n for (var i = 0; i < this.dataList.length; i++) {\n var data = this.dataList[i];\n buffer.put(data.mode, 4);\n buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber));\n data.write(buffer);\n }\n if (buffer.getLengthInBits() <= totalDataCount * 8) break;\n }\n this.typeNumber = typeNumber;\n }\n this.makeImpl(false, this.getBestMaskPattern());\n};\nproto.makeImpl = function (test, maskPattern) {\n this.moduleCount = this.typeNumber * 4 + 17;\n this.modules = new Array(this.moduleCount);\n for (var row = 0; row < this.moduleCount; row++) {\n this.modules[row] = new Array(this.moduleCount);\n for (var col = 0; col < this.moduleCount; col++) {\n this.modules[row][col] = null; //(col + row) % 3;\n }\n }\n\n this.setupPositionProbePattern(0, 0);\n this.setupPositionProbePattern(this.moduleCount - 7, 0);\n this.setupPositionProbePattern(0, this.moduleCount - 7);\n this.setupPositionAdjustPattern();\n this.setupTimingPattern();\n this.setupTypeInfo(test, maskPattern);\n if (this.typeNumber >= 7) {\n this.setupTypeNumber(test);\n }\n if (this.dataCache == null) {\n this.dataCache = QRCode.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);\n }\n this.mapData(this.dataCache, maskPattern);\n};\nproto.setupPositionProbePattern = function (row, col) {\n for (var r = -1; r <= 7; r++) {\n if (row + r <= -1 || this.moduleCount <= row + r) continue;\n for (var c = -1; c <= 7; c++) {\n if (col + c <= -1 || this.moduleCount <= col + c) continue;\n if (0 <= r && r <= 6 && (c == 0 || c == 6) || 0 <= c && c <= 6 && (r == 0 || r == 6) || 2 <= r && r <= 4 && 2 <= c && c <= 4) {\n this.modules[row + r][col + c] = true;\n } else {\n this.modules[row + r][col + c] = false;\n }\n }\n }\n};\nproto.getBestMaskPattern = function () {\n var minLostPoint = 0;\n var pattern = 0;\n for (var i = 0; i < 8; i++) {\n this.makeImpl(true, i);\n var lostPoint = util.getLostPoint(this);\n if (i == 0 || minLostPoint > lostPoint) {\n minLostPoint = lostPoint;\n pattern = i;\n }\n }\n return pattern;\n};\nproto.createMovieClip = function (target_mc, instance_name, depth) {\n var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);\n var cs = 1;\n this.make();\n for (var row = 0; row < this.modules.length; row++) {\n var y = row * cs;\n for (var col = 0; col < this.modules[row].length; col++) {\n var x = col * cs;\n var dark = this.modules[row][col];\n if (dark) {\n qr_mc.beginFill(0, 100);\n qr_mc.moveTo(x, y);\n qr_mc.lineTo(x + cs, y);\n qr_mc.lineTo(x + cs, y + cs);\n qr_mc.lineTo(x, y + cs);\n qr_mc.endFill();\n }\n }\n }\n return qr_mc;\n};\nproto.setupTimingPattern = function () {\n for (var r = 8; r < this.moduleCount - 8; r++) {\n if (this.modules[r][6] != null) {\n continue;\n }\n this.modules[r][6] = r % 2 == 0;\n }\n for (var c = 8; c < this.moduleCount - 8; c++) {\n if (this.modules[6][c] != null) {\n continue;\n }\n this.modules[6][c] = c % 2 == 0;\n }\n};\nproto.setupPositionAdjustPattern = function () {\n var pos = util.getPatternPosition(this.typeNumber);\n for (var i = 0; i < pos.length; i++) {\n for (var j = 0; j < pos.length; j++) {\n var row = pos[i];\n var col = pos[j];\n if (this.modules[row][col] != null) {\n continue;\n }\n for (var r = -2; r <= 2; r++) {\n for (var c = -2; c <= 2; c++) {\n if (r == -2 || r == 2 || c == -2 || c == 2 || r == 0 && c == 0) {\n this.modules[row + r][col + c] = true;\n } else {\n this.modules[row + r][col + c] = false;\n }\n }\n }\n }\n }\n};\nproto.setupTypeNumber = function (test) {\n var bits = util.getBCHTypeNumber(this.typeNumber);\n for (var i = 0; i < 18; i++) {\n var mod = !test && (bits >> i & 1) == 1;\n this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;\n }\n for (var i = 0; i < 18; i++) {\n var mod = !test && (bits >> i & 1) == 1;\n this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;\n }\n};\nproto.setupTypeInfo = function (test, maskPattern) {\n var data = this.errorCorrectLevel << 3 | maskPattern;\n var bits = util.getBCHTypeInfo(data);\n\n // vertical\t\t\n for (var i = 0; i < 15; i++) {\n var mod = !test && (bits >> i & 1) == 1;\n if (i < 6) {\n this.modules[i][8] = mod;\n } else if (i < 8) {\n this.modules[i + 1][8] = mod;\n } else {\n this.modules[this.moduleCount - 15 + i][8] = mod;\n }\n }\n\n // horizontal\n for (var i = 0; i < 15; i++) {\n var mod = !test && (bits >> i & 1) == 1;\n if (i < 8) {\n this.modules[8][this.moduleCount - i - 1] = mod;\n } else if (i < 9) {\n this.modules[8][15 - i - 1 + 1] = mod;\n } else {\n this.modules[8][15 - i - 1] = mod;\n }\n }\n\n // fixed module\n this.modules[this.moduleCount - 8][8] = !test;\n};\nproto.mapData = function (data, maskPattern) {\n var inc = -1;\n var row = this.moduleCount - 1;\n var bitIndex = 7;\n var byteIndex = 0;\n for (var col = this.moduleCount - 1; col > 0; col -= 2) {\n if (col == 6) col--;\n while (true) {\n for (var c = 0; c < 2; c++) {\n if (this.modules[row][col - c] == null) {\n var dark = false;\n if (byteIndex < data.length) {\n dark = (data[byteIndex] >>> bitIndex & 1) == 1;\n }\n var mask = util.getMask(maskPattern, row, col - c);\n if (mask) {\n dark = !dark;\n }\n this.modules[row][col - c] = dark;\n bitIndex--;\n if (bitIndex == -1) {\n byteIndex++;\n bitIndex = 7;\n }\n }\n }\n row += inc;\n if (row < 0 || this.moduleCount <= row) {\n row -= inc;\n inc = -inc;\n break;\n }\n }\n }\n};\nQRCode.PAD0 = 0xEC;\nQRCode.PAD1 = 0x11;\nQRCode.createData = function (typeNumber, errorCorrectLevel, dataList) {\n var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);\n var buffer = new BitBuffer();\n for (var i = 0; i < dataList.length; i++) {\n var data = dataList[i];\n buffer.put(data.mode, 4);\n buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber));\n data.write(buffer);\n }\n\n // calc num max data.\n var totalDataCount = 0;\n for (var i = 0; i < rsBlocks.length; i++) {\n totalDataCount += rsBlocks[i].dataCount;\n }\n if (buffer.getLengthInBits() > totalDataCount * 8) {\n throw new Error(\"code length overflow. (\" + buffer.getLengthInBits() + \">\" + totalDataCount * 8 + \")\");\n }\n\n // end code\n if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) {\n buffer.put(0, 4);\n }\n\n // padding\n while (buffer.getLengthInBits() % 8 != 0) {\n buffer.putBit(false);\n }\n\n // padding\n while (true) {\n if (buffer.getLengthInBits() >= totalDataCount * 8) {\n break;\n }\n buffer.put(QRCode.PAD0, 8);\n if (buffer.getLengthInBits() >= totalDataCount * 8) {\n break;\n }\n buffer.put(QRCode.PAD1, 8);\n }\n return QRCode.createBytes(buffer, rsBlocks);\n};\nQRCode.createBytes = function (buffer, rsBlocks) {\n var offset = 0;\n var maxDcCount = 0;\n var maxEcCount = 0;\n var dcdata = new Array(rsBlocks.length);\n var ecdata = new Array(rsBlocks.length);\n for (var r = 0; r < rsBlocks.length; r++) {\n var dcCount = rsBlocks[r].dataCount;\n var ecCount = rsBlocks[r].totalCount - dcCount;\n maxDcCount = Math.max(maxDcCount, dcCount);\n maxEcCount = Math.max(maxEcCount, ecCount);\n dcdata[r] = new Array(dcCount);\n for (var i = 0; i < dcdata[r].length; i++) {\n dcdata[r][i] = 0xff & buffer.buffer[i + offset];\n }\n offset += dcCount;\n var rsPoly = util.getErrorCorrectPolynomial(ecCount);\n var rawPoly = new Polynomial(dcdata[r], rsPoly.getLength() - 1);\n var modPoly = rawPoly.mod(rsPoly);\n ecdata[r] = new Array(rsPoly.getLength() - 1);\n for (var i = 0; i < ecdata[r].length; i++) {\n var modIndex = i + modPoly.getLength() - ecdata[r].length;\n ecdata[r][i] = modIndex >= 0 ? modPoly.get(modIndex) : 0;\n }\n }\n var totalCodeCount = 0;\n for (var i = 0; i < rsBlocks.length; i++) {\n totalCodeCount += rsBlocks[i].totalCount;\n }\n var data = new Array(totalCodeCount);\n var index = 0;\n for (var i = 0; i < maxDcCount; i++) {\n for (var r = 0; r < rsBlocks.length; r++) {\n if (i < dcdata[r].length) {\n data[index++] = dcdata[r][i];\n }\n }\n }\n for (var i = 0; i < maxEcCount; i++) {\n for (var r = 0; r < rsBlocks.length; r++) {\n if (i < ecdata[r].length) {\n data[index++] = ecdata[r][i];\n }\n }\n }\n return data;\n};\nmodule.exports = QRCode;","var mode = require('./mode');\nfunction QR8bitByte(data) {\n this.mode = mode.MODE_8BIT_BYTE;\n this.data = data;\n}\nQR8bitByte.prototype = {\n getLength: function getLength(buffer) {\n return this.data.length;\n },\n write: function write(buffer) {\n for (var i = 0; i < this.data.length; i++) {\n // not JIS ...\n buffer.put(this.data.charCodeAt(i), 8);\n }\n }\n};\nmodule.exports = QR8bitByte;","// ErrorCorrectLevel\nvar ECL = require('./ErrorCorrectLevel');\nfunction QRRSBlock(totalCount, dataCount) {\n this.totalCount = totalCount;\n this.dataCount = dataCount;\n}\nQRRSBlock.RS_BLOCK_TABLE = [\n// L\n// M\n// Q\n// H\n\n// 1\n[1, 26, 19], [1, 26, 16], [1, 26, 13], [1, 26, 9],\n// 2\n[1, 44, 34], [1, 44, 28], [1, 44, 22], [1, 44, 16],\n// 3\n[1, 70, 55], [1, 70, 44], [2, 35, 17], [2, 35, 13],\n// 4\t\t\n[1, 100, 80], [2, 50, 32], [2, 50, 24], [4, 25, 9],\n// 5\n[1, 134, 108], [2, 67, 43], [2, 33, 15, 2, 34, 16], [2, 33, 11, 2, 34, 12],\n// 6\n[2, 86, 68], [4, 43, 27], [4, 43, 19], [4, 43, 15],\n// 7\t\t\n[2, 98, 78], [4, 49, 31], [2, 32, 14, 4, 33, 15], [4, 39, 13, 1, 40, 14],\n// 8\n[2, 121, 97], [2, 60, 38, 2, 61, 39], [4, 40, 18, 2, 41, 19], [4, 40, 14, 2, 41, 15],\n// 9\n[2, 146, 116], [3, 58, 36, 2, 59, 37], [4, 36, 16, 4, 37, 17], [4, 36, 12, 4, 37, 13],\n// 10\t\t\n[2, 86, 68, 2, 87, 69], [4, 69, 43, 1, 70, 44], [6, 43, 19, 2, 44, 20], [6, 43, 15, 2, 44, 16],\n// 11\n[4, 101, 81], [1, 80, 50, 4, 81, 51], [4, 50, 22, 4, 51, 23], [3, 36, 12, 8, 37, 13],\n// 12\n[2, 116, 92, 2, 117, 93], [6, 58, 36, 2, 59, 37], [4, 46, 20, 6, 47, 21], [7, 42, 14, 4, 43, 15],\n// 13\n[4, 133, 107], [8, 59, 37, 1, 60, 38], [8, 44, 20, 4, 45, 21], [12, 33, 11, 4, 34, 12],\n// 14\n[3, 145, 115, 1, 146, 116], [4, 64, 40, 5, 65, 41], [11, 36, 16, 5, 37, 17], [11, 36, 12, 5, 37, 13],\n// 15\n[5, 109, 87, 1, 110, 88], [5, 65, 41, 5, 66, 42], [5, 54, 24, 7, 55, 25], [11, 36, 12],\n// 16\n[5, 122, 98, 1, 123, 99], [7, 73, 45, 3, 74, 46], [15, 43, 19, 2, 44, 20], [3, 45, 15, 13, 46, 16],\n// 17\n[1, 135, 107, 5, 136, 108], [10, 74, 46, 1, 75, 47], [1, 50, 22, 15, 51, 23], [2, 42, 14, 17, 43, 15],\n// 18\n[5, 150, 120, 1, 151, 121], [9, 69, 43, 4, 70, 44], [17, 50, 22, 1, 51, 23], [2, 42, 14, 19, 43, 15],\n// 19\n[3, 141, 113, 4, 142, 114], [3, 70, 44, 11, 71, 45], [17, 47, 21, 4, 48, 22], [9, 39, 13, 16, 40, 14],\n// 20\n[3, 135, 107, 5, 136, 108], [3, 67, 41, 13, 68, 42], [15, 54, 24, 5, 55, 25], [15, 43, 15, 10, 44, 16],\n// 21\n[4, 144, 116, 4, 145, 117], [17, 68, 42], [17, 50, 22, 6, 51, 23], [19, 46, 16, 6, 47, 17],\n// 22\n[2, 139, 111, 7, 140, 112], [17, 74, 46], [7, 54, 24, 16, 55, 25], [34, 37, 13],\n// 23\n[4, 151, 121, 5, 152, 122], [4, 75, 47, 14, 76, 48], [11, 54, 24, 14, 55, 25], [16, 45, 15, 14, 46, 16],\n// 24\n[6, 147, 117, 4, 148, 118], [6, 73, 45, 14, 74, 46], [11, 54, 24, 16, 55, 25], [30, 46, 16, 2, 47, 17],\n// 25\n[8, 132, 106, 4, 133, 107], [8, 75, 47, 13, 76, 48], [7, 54, 24, 22, 55, 25], [22, 45, 15, 13, 46, 16],\n// 26\n[10, 142, 114, 2, 143, 115], [19, 74, 46, 4, 75, 47], [28, 50, 22, 6, 51, 23], [33, 46, 16, 4, 47, 17],\n// 27\n[8, 152, 122, 4, 153, 123], [22, 73, 45, 3, 74, 46], [8, 53, 23, 26, 54, 24], [12, 45, 15, 28, 46, 16],\n// 28\n[3, 147, 117, 10, 148, 118], [3, 73, 45, 23, 74, 46], [4, 54, 24, 31, 55, 25], [11, 45, 15, 31, 46, 16],\n// 29\n[7, 146, 116, 7, 147, 117], [21, 73, 45, 7, 74, 46], [1, 53, 23, 37, 54, 24], [19, 45, 15, 26, 46, 16],\n// 30\n[5, 145, 115, 10, 146, 116], [19, 75, 47, 10, 76, 48], [15, 54, 24, 25, 55, 25], [23, 45, 15, 25, 46, 16],\n// 31\n[13, 145, 115, 3, 146, 116], [2, 74, 46, 29, 75, 47], [42, 54, 24, 1, 55, 25], [23, 45, 15, 28, 46, 16],\n// 32\n[17, 145, 115], [10, 74, 46, 23, 75, 47], [10, 54, 24, 35, 55, 25], [19, 45, 15, 35, 46, 16],\n// 33\n[17, 145, 115, 1, 146, 116], [14, 74, 46, 21, 75, 47], [29, 54, 24, 19, 55, 25], [11, 45, 15, 46, 46, 16],\n// 34\n[13, 145, 115, 6, 146, 116], [14, 74, 46, 23, 75, 47], [44, 54, 24, 7, 55, 25], [59, 46, 16, 1, 47, 17],\n// 35\n[12, 151, 121, 7, 152, 122], [12, 75, 47, 26, 76, 48], [39, 54, 24, 14, 55, 25], [22, 45, 15, 41, 46, 16],\n// 36\n[6, 151, 121, 14, 152, 122], [6, 75, 47, 34, 76, 48], [46, 54, 24, 10, 55, 25], [2, 45, 15, 64, 46, 16],\n// 37\n[17, 152, 122, 4, 153, 123], [29, 74, 46, 14, 75, 47], [49, 54, 24, 10, 55, 25], [24, 45, 15, 46, 46, 16],\n// 38\n[4, 152, 122, 18, 153, 123], [13, 74, 46, 32, 75, 47], [48, 54, 24, 14, 55, 25], [42, 45, 15, 32, 46, 16],\n// 39\n[20, 147, 117, 4, 148, 118], [40, 75, 47, 7, 76, 48], [43, 54, 24, 22, 55, 25], [10, 45, 15, 67, 46, 16],\n// 40\n[19, 148, 118, 6, 149, 119], [18, 75, 47, 31, 76, 48], [34, 54, 24, 34, 55, 25], [20, 45, 15, 61, 46, 16]];\nQRRSBlock.getRSBlocks = function (typeNumber, errorCorrectLevel) {\n var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);\n if (rsBlock == undefined) {\n throw new Error(\"bad rs block @ typeNumber:\" + typeNumber + \"/errorCorrectLevel:\" + errorCorrectLevel);\n }\n var length = rsBlock.length / 3;\n var list = new Array();\n for (var i = 0; i < length; i++) {\n var count = rsBlock[i * 3 + 0];\n var totalCount = rsBlock[i * 3 + 1];\n var dataCount = rsBlock[i * 3 + 2];\n for (var j = 0; j < count; j++) {\n list.push(new QRRSBlock(totalCount, dataCount));\n }\n }\n return list;\n};\nQRRSBlock.getRsBlockTable = function (typeNumber, errorCorrectLevel) {\n switch (errorCorrectLevel) {\n case ECL.L:\n return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];\n case ECL.M:\n return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];\n case ECL.Q:\n return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];\n case ECL.H:\n return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];\n default:\n return undefined;\n }\n};\nmodule.exports = QRRSBlock;","function QRBitBuffer() {\n this.buffer = new Array();\n this.length = 0;\n}\nQRBitBuffer.prototype = {\n get: function get(index) {\n var bufIndex = Math.floor(index / 8);\n return (this.buffer[bufIndex] >>> 7 - index % 8 & 1) == 1;\n },\n put: function put(num, length) {\n for (var i = 0; i < length; i++) {\n this.putBit((num >>> length - i - 1 & 1) == 1);\n }\n },\n getLengthInBits: function getLengthInBits() {\n return this.length;\n },\n putBit: function putBit(bit) {\n var bufIndex = Math.floor(this.length / 8);\n if (this.buffer.length <= bufIndex) {\n this.buffer.push(0);\n }\n if (bit) {\n this.buffer[bufIndex] |= 0x80 >>> this.length % 8;\n }\n this.length++;\n }\n};\nmodule.exports = QRBitBuffer;","var Mode = require('./mode');\nvar Polynomial = require('./Polynomial');\nvar math = require('./math');\nvar QRMaskPattern = {\n PATTERN000: 0,\n PATTERN001: 1,\n PATTERN010: 2,\n PATTERN011: 3,\n PATTERN100: 4,\n PATTERN101: 5,\n PATTERN110: 6,\n PATTERN111: 7\n};\nvar QRUtil = {\n PATTERN_POSITION_TABLE: [[], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34], [6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50], [6, 30, 54], [6, 32, 58], [6, 34, 62], [6, 26, 46, 66], [6, 26, 48, 70], [6, 26, 50, 74], [6, 30, 54, 78], [6, 30, 56, 82], [6, 30, 58, 86], [6, 34, 62, 90], [6, 28, 50, 72, 94], [6, 26, 50, 74, 98], [6, 30, 54, 78, 102], [6, 28, 54, 80, 106], [6, 32, 58, 84, 110], [6, 30, 58, 86, 114], [6, 34, 62, 90, 118], [6, 26, 50, 74, 98, 122], [6, 30, 54, 78, 102, 126], [6, 26, 52, 78, 104, 130], [6, 30, 56, 82, 108, 134], [6, 34, 60, 86, 112, 138], [6, 30, 58, 86, 114, 142], [6, 34, 62, 90, 118, 146], [6, 30, 54, 78, 102, 126, 150], [6, 24, 50, 76, 102, 128, 154], [6, 28, 54, 80, 106, 132, 158], [6, 32, 58, 84, 110, 136, 162], [6, 26, 54, 82, 110, 138, 166], [6, 30, 58, 86, 114, 142, 170]],\n G15: 1 << 10 | 1 << 8 | 1 << 5 | 1 << 4 | 1 << 2 | 1 << 1 | 1 << 0,\n G18: 1 << 12 | 1 << 11 | 1 << 10 | 1 << 9 | 1 << 8 | 1 << 5 | 1 << 2 | 1 << 0,\n G15_MASK: 1 << 14 | 1 << 12 | 1 << 10 | 1 << 4 | 1 << 1,\n getBCHTypeInfo: function getBCHTypeInfo(data) {\n var d = data << 10;\n while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {\n d ^= QRUtil.G15 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15);\n }\n return (data << 10 | d) ^ QRUtil.G15_MASK;\n },\n getBCHTypeNumber: function getBCHTypeNumber(data) {\n var d = data << 12;\n while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {\n d ^= QRUtil.G18 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18);\n }\n return data << 12 | d;\n },\n getBCHDigit: function getBCHDigit(data) {\n var digit = 0;\n while (data != 0) {\n digit++;\n data >>>= 1;\n }\n return digit;\n },\n getPatternPosition: function getPatternPosition(typeNumber) {\n return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];\n },\n getMask: function getMask(maskPattern, i, j) {\n switch (maskPattern) {\n case QRMaskPattern.PATTERN000:\n return (i + j) % 2 == 0;\n case QRMaskPattern.PATTERN001:\n return i % 2 == 0;\n case QRMaskPattern.PATTERN010:\n return j % 3 == 0;\n case QRMaskPattern.PATTERN011:\n return (i + j) % 3 == 0;\n case QRMaskPattern.PATTERN100:\n return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 == 0;\n case QRMaskPattern.PATTERN101:\n return i * j % 2 + i * j % 3 == 0;\n case QRMaskPattern.PATTERN110:\n return (i * j % 2 + i * j % 3) % 2 == 0;\n case QRMaskPattern.PATTERN111:\n return (i * j % 3 + (i + j) % 2) % 2 == 0;\n default:\n throw new Error(\"bad maskPattern:\" + maskPattern);\n }\n },\n getErrorCorrectPolynomial: function getErrorCorrectPolynomial(errorCorrectLength) {\n var a = new Polynomial([1], 0);\n for (var i = 0; i < errorCorrectLength; i++) {\n a = a.multiply(new Polynomial([1, math.gexp(i)], 0));\n }\n return a;\n },\n getLengthInBits: function getLengthInBits(mode, type) {\n if (1 <= type && type < 10) {\n // 1 - 9\n\n switch (mode) {\n case Mode.MODE_NUMBER:\n return 10;\n case Mode.MODE_ALPHA_NUM:\n return 9;\n case Mode.MODE_8BIT_BYTE:\n return 8;\n case Mode.MODE_KANJI:\n return 8;\n default:\n throw new Error(\"mode:\" + mode);\n }\n } else if (type < 27) {\n // 10 - 26\n\n switch (mode) {\n case Mode.MODE_NUMBER:\n return 12;\n case Mode.MODE_ALPHA_NUM:\n return 11;\n case Mode.MODE_8BIT_BYTE:\n return 16;\n case Mode.MODE_KANJI:\n return 10;\n default:\n throw new Error(\"mode:\" + mode);\n }\n } else if (type < 41) {\n // 27 - 40\n\n switch (mode) {\n case Mode.MODE_NUMBER:\n return 14;\n case Mode.MODE_ALPHA_NUM:\n return 13;\n case Mode.MODE_8BIT_BYTE:\n return 16;\n case Mode.MODE_KANJI:\n return 12;\n default:\n throw new Error(\"mode:\" + mode);\n }\n } else {\n throw new Error(\"type:\" + type);\n }\n },\n getLostPoint: function getLostPoint(qrCode) {\n var moduleCount = qrCode.getModuleCount();\n var lostPoint = 0;\n\n // LEVEL1\n\n for (var row = 0; row < moduleCount; row++) {\n for (var col = 0; col < moduleCount; col++) {\n var sameCount = 0;\n var dark = qrCode.isDark(row, col);\n for (var r = -1; r <= 1; r++) {\n if (row + r < 0 || moduleCount <= row + r) {\n continue;\n }\n for (var c = -1; c <= 1; c++) {\n if (col + c < 0 || moduleCount <= col + c) {\n continue;\n }\n if (r == 0 && c == 0) {\n continue;\n }\n if (dark == qrCode.isDark(row + r, col + c)) {\n sameCount++;\n }\n }\n }\n if (sameCount > 5) {\n lostPoint += 3 + sameCount - 5;\n }\n }\n }\n\n // LEVEL2\n\n for (var row = 0; row < moduleCount - 1; row++) {\n for (var col = 0; col < moduleCount - 1; col++) {\n var count = 0;\n if (qrCode.isDark(row, col)) count++;\n if (qrCode.isDark(row + 1, col)) count++;\n if (qrCode.isDark(row, col + 1)) count++;\n if (qrCode.isDark(row + 1, col + 1)) count++;\n if (count == 0 || count == 4) {\n lostPoint += 3;\n }\n }\n }\n\n // LEVEL3\n\n for (var row = 0; row < moduleCount; row++) {\n for (var col = 0; col < moduleCount - 6; col++) {\n if (qrCode.isDark(row, col) && !qrCode.isDark(row, col + 1) && qrCode.isDark(row, col + 2) && qrCode.isDark(row, col + 3) && qrCode.isDark(row, col + 4) && !qrCode.isDark(row, col + 5) && qrCode.isDark(row, col + 6)) {\n lostPoint += 40;\n }\n }\n }\n for (var col = 0; col < moduleCount; col++) {\n for (var row = 0; row < moduleCount - 6; row++) {\n if (qrCode.isDark(row, col) && !qrCode.isDark(row + 1, col) && qrCode.isDark(row + 2, col) && qrCode.isDark(row + 3, col) && qrCode.isDark(row + 4, col) && !qrCode.isDark(row + 5, col) && qrCode.isDark(row + 6, col)) {\n lostPoint += 40;\n }\n }\n }\n\n // LEVEL4\n\n var darkCount = 0;\n for (var col = 0; col < moduleCount; col++) {\n for (var row = 0; row < moduleCount; row++) {\n if (qrCode.isDark(row, col)) {\n darkCount++;\n }\n }\n }\n var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;\n lostPoint += ratio * 10;\n return lostPoint;\n }\n};\nmodule.exports = QRUtil;"],"sourceRoot":""}