d1684f616fa0a340d7e53ede9a8030e759b5f0aadbaa897dc392f9c47ffa7ca5.json raw
1 {"ast":null,"code":"const Utils = require('./utils');\nfunction clearCanvas(ctx, canvas, size) {\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n if (!canvas.style) canvas.style = {};\n canvas.height = size;\n canvas.width = size;\n canvas.style.height = size + 'px';\n canvas.style.width = size + 'px';\n}\nfunction getCanvasElement() {\n try {\n return document.createElement('canvas');\n } catch (e) {\n throw new Error('You need to specify a canvas element');\n }\n}\nexports.render = function render(qrData, canvas, options) {\n let opts = options;\n let canvasEl = canvas;\n if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n opts = canvas;\n canvas = undefined;\n }\n if (!canvas) {\n canvasEl = getCanvasElement();\n }\n opts = Utils.getOptions(opts);\n const size = Utils.getImageWidth(qrData.modules.size, opts);\n const ctx = canvasEl.getContext('2d');\n const image = ctx.createImageData(size, size);\n Utils.qrToImageData(image.data, qrData, opts);\n clearCanvas(ctx, canvasEl, size);\n ctx.putImageData(image, 0, 0);\n return canvasEl;\n};\nexports.renderToDataURL = function renderToDataURL(qrData, canvas, options) {\n let opts = options;\n if (typeof opts === 'undefined' && (!canvas || !canvas.getContext)) {\n opts = canvas;\n canvas = undefined;\n }\n if (!opts) opts = {};\n const canvasEl = exports.render(qrData, canvas, opts);\n const type = opts.type || 'image/png';\n const rendererOpts = opts.rendererOpts || {};\n return canvasEl.toDataURL(type, rendererOpts.quality);\n};","map":null,"metadata":{},"sourceType":"script","externalDependencies":[]}