New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@nuintun/qrcode

Package Overview
Dependencies
Maintainers
1
Versions
89
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@nuintun/qrcode - npm Package Compare versions

Comparing version 0.11.0 to 0.12.0

55

es5/qrcode/decoder/decoder/decode/index.js

@@ -80,42 +80,45 @@ "use strict";

/**
* @function stringFromUTF8Bytes
* @param {number[]} bytes
* @see https://github.com/google/closure-library/blob/master/closure/goog/crypt/crypt.js
*/
function decodeByte(stream, size) {
var data = '';
var bytes = [];
var characterCountSize = [8, 16, 16][size];
var length = stream.readBits(characterCountSize);
for (var i = 0; i < length; i++) {
var c1 = stream.readBits(8);
bytes.push(c1);
function stringFromUTF8Bytes(bytes) {
// TODO(user): Use native implementations if/when available
var pos = 0;
var output = '';
while (pos < bytes.length) {
var c1 = bytes[pos++];
if (c1 < 128) {
data += String.fromCharCode(c1);
output += String.fromCharCode(c1);
}
else if (c1 > 191 && c1 < 224) {
var c2 = stream.readBits(8);
bytes.push(c2);
data += String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
i++;
var c2 = bytes[pos++];
output += String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
}
else if (c1 > 239 && c1 < 365) {
// Surrogate Pair
var c2 = stream.readBits(8);
var c3 = stream.readBits(8);
var c4 = stream.readBits(8);
var c2 = bytes[pos++];
var c3 = bytes[pos++];
var c4 = bytes[pos++];
var u = (((c1 & 7) << 18) | ((c2 & 63) << 12) | ((c3 & 63) << 6) | (c4 & 63)) - 0x10000;
bytes.push(c2, c3, c4);
data += String.fromCharCode(0xd800 + (u >> 10));
data += String.fromCharCode(0xdc00 + (u & 1023));
i += 3;
output += String.fromCharCode(0xd800 + (u >> 10));
output += String.fromCharCode(0xdc00 + (u & 1023));
}
else {
var c2 = stream.readBits(8);
var c3 = stream.readBits(8);
bytes.push(c2, c3);
data += String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
i += 2;
var c2 = bytes[pos++];
var c3 = bytes[pos++];
output += String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
}
}
return { bytes: bytes, data: data };
return output;
}
function decodeByte(stream, size) {
var bytes = [];
var characterCountSize = [8, 16, 16][size];
var length = stream.readBits(characterCountSize);
for (var i = 0; i < length; i++) {
bytes.push(stream.readBits(8));
}
return { bytes: bytes, data: stringFromUTF8Bytes(bytes) };
}
function decodeKanji(stream, size) {

@@ -122,0 +125,0 @@ var data = '';

@@ -78,42 +78,45 @@ /**

/**
* @function stringFromUTF8Bytes
* @param {number[]} bytes
* @see https://github.com/google/closure-library/blob/master/closure/goog/crypt/crypt.js
*/
function decodeByte(stream, size) {
var data = '';
var bytes = [];
var characterCountSize = [8, 16, 16][size];
var length = stream.readBits(characterCountSize);
for (var i = 0; i < length; i++) {
var c1 = stream.readBits(8);
bytes.push(c1);
function stringFromUTF8Bytes(bytes) {
// TODO(user): Use native implementations if/when available
var pos = 0;
var output = '';
while (pos < bytes.length) {
var c1 = bytes[pos++];
if (c1 < 128) {
data += String.fromCharCode(c1);
output += String.fromCharCode(c1);
}
else if (c1 > 191 && c1 < 224) {
var c2 = stream.readBits(8);
bytes.push(c2);
data += String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
i++;
var c2 = bytes[pos++];
output += String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
}
else if (c1 > 239 && c1 < 365) {
// Surrogate Pair
var c2 = stream.readBits(8);
var c3 = stream.readBits(8);
var c4 = stream.readBits(8);
var c2 = bytes[pos++];
var c3 = bytes[pos++];
var c4 = bytes[pos++];
var u = (((c1 & 7) << 18) | ((c2 & 63) << 12) | ((c3 & 63) << 6) | (c4 & 63)) - 0x10000;
bytes.push(c2, c3, c4);
data += String.fromCharCode(0xd800 + (u >> 10));
data += String.fromCharCode(0xdc00 + (u & 1023));
i += 3;
output += String.fromCharCode(0xd800 + (u >> 10));
output += String.fromCharCode(0xdc00 + (u & 1023));
}
else {
var c2 = stream.readBits(8);
var c3 = stream.readBits(8);
bytes.push(c2, c3);
data += String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
i += 2;
var c2 = bytes[pos++];
var c3 = bytes[pos++];
output += String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
}
}
return { bytes: bytes, data: data };
return output;
}
function decodeByte(stream, size) {
var bytes = [];
var characterCountSize = [8, 16, 16][size];
var length = stream.readBits(characterCountSize);
for (var i = 0; i < length; i++) {
bytes.push(stream.readBits(8));
}
return { bytes: bytes, data: stringFromUTF8Bytes(bytes) };
}
function decodeKanji(stream, size) {

@@ -120,0 +123,0 @@ var data = '';

{
"name": "@nuintun/qrcode",
"version": "0.11.0",
"version": "0.12.0",
"description": "QRCode encode and decode library.",

@@ -5,0 +5,0 @@ "main": "es5/index.js",

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc