qrcode.vue 3.3.2 → 3.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +38 -19
- package/dist/qrcode.vue.browser.js +44 -57
- package/dist/qrcode.vue.browser.min.js +3 -17
- package/dist/qrcode.vue.cjs.js +42 -55
- package/dist/qrcode.vue.esm.js +42 -55
- package/package.json +35 -26
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PropType } from 'vue';
|
|
2
|
+
type Level = 'L' | 'M' | 'Q' | 'H';
|
|
2
3
|
declare const QrcodeVue: import("vue").DefineComponent<{
|
|
3
4
|
renderAs: {
|
|
4
5
|
type: PropType<"canvas" | "svg">;
|
|
@@ -16,7 +17,7 @@ declare const QrcodeVue: import("vue").DefineComponent<{
|
|
|
16
17
|
default: number;
|
|
17
18
|
};
|
|
18
19
|
level: {
|
|
19
|
-
type: PropType<
|
|
20
|
+
type: PropType<Level>;
|
|
20
21
|
default: string;
|
|
21
22
|
validator: (l: any) => boolean;
|
|
22
23
|
};
|
|
@@ -33,26 +34,44 @@ declare const QrcodeVue: import("vue").DefineComponent<{
|
|
|
33
34
|
required: boolean;
|
|
34
35
|
default: number;
|
|
35
36
|
};
|
|
36
|
-
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin,
|
|
37
|
-
renderAs
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
37
|
+
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
38
|
+
renderAs: {
|
|
39
|
+
type: PropType<"canvas" | "svg">;
|
|
40
|
+
required: boolean;
|
|
41
|
+
default: string;
|
|
42
|
+
validator: (as: any) => boolean;
|
|
43
|
+
};
|
|
44
|
+
value: {
|
|
45
|
+
type: StringConstructor;
|
|
46
|
+
required: boolean;
|
|
47
|
+
default: string;
|
|
48
|
+
};
|
|
49
|
+
size: {
|
|
50
|
+
type: NumberConstructor;
|
|
51
|
+
default: number;
|
|
52
|
+
};
|
|
53
|
+
level: {
|
|
54
|
+
type: PropType<Level>;
|
|
55
|
+
default: string;
|
|
56
|
+
validator: (l: any) => boolean;
|
|
57
|
+
};
|
|
58
|
+
background: {
|
|
59
|
+
type: StringConstructor;
|
|
60
|
+
default: string;
|
|
61
|
+
};
|
|
62
|
+
foreground: {
|
|
63
|
+
type: StringConstructor;
|
|
64
|
+
default: string;
|
|
65
|
+
};
|
|
66
|
+
margin: {
|
|
67
|
+
type: NumberConstructor;
|
|
68
|
+
required: boolean;
|
|
69
|
+
default: number;
|
|
70
|
+
};
|
|
71
|
+
}>>, {
|
|
53
72
|
value: string;
|
|
54
73
|
size: number;
|
|
55
|
-
level:
|
|
74
|
+
level: Level;
|
|
56
75
|
background: string;
|
|
57
76
|
foreground: string;
|
|
58
77
|
margin: number;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* qrcode.vue v3.3.
|
|
2
|
+
* qrcode.vue v3.3.4
|
|
3
3
|
* A Vue.js component to generate QRCode.
|
|
4
|
-
* © 2017-
|
|
4
|
+
* © 2017-2023 @scopewu(https://github.com/scopewu)
|
|
5
5
|
* MIT License.
|
|
6
6
|
*/
|
|
7
7
|
(function (global, factory) {
|
|
8
8
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('vue')) :
|
|
9
9
|
typeof define === 'function' && define.amd ? define(['vue'], factory) :
|
|
10
10
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.QrcodeVue = factory(global.Vue));
|
|
11
|
-
}(this, (function (vue) { 'use strict';
|
|
11
|
+
})(this, (function (vue) { 'use strict';
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
/******************************************************************************
|
|
14
14
|
Copyright (c) Microsoft Corporation.
|
|
15
15
|
|
|
16
16
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
|
|
67
67
|
var _8BitByte = QR8bitByte;
|
|
68
68
|
|
|
69
|
-
var ErrorCorrectLevel
|
|
69
|
+
var ErrorCorrectLevel = {
|
|
70
70
|
L : 1,
|
|
71
71
|
M : 0,
|
|
72
72
|
Q : 3,
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
};
|
|
75
75
|
|
|
76
76
|
// ErrorCorrectLevel
|
|
77
|
-
var ECL = ErrorCorrectLevel
|
|
77
|
+
var ECL = ErrorCorrectLevel;
|
|
78
78
|
|
|
79
79
|
function QRRSBlock(totalCount, dataCount) {
|
|
80
80
|
this.totalCount = totalCount;
|
|
@@ -811,7 +811,7 @@
|
|
|
811
811
|
var util = util$1;
|
|
812
812
|
var Polynomial = Polynomial$2;
|
|
813
813
|
|
|
814
|
-
function QRCode$
|
|
814
|
+
function QRCode$1(typeNumber, errorCorrectLevel) {
|
|
815
815
|
this.typeNumber = typeNumber;
|
|
816
816
|
this.errorCorrectLevel = errorCorrectLevel;
|
|
817
817
|
this.modules = null;
|
|
@@ -821,7 +821,7 @@
|
|
|
821
821
|
}
|
|
822
822
|
|
|
823
823
|
// for client side minification
|
|
824
|
-
var proto = QRCode$
|
|
824
|
+
var proto = QRCode$1.prototype;
|
|
825
825
|
|
|
826
826
|
proto.addData = function(data) {
|
|
827
827
|
var newData = new BitByte(data);
|
|
@@ -893,7 +893,7 @@
|
|
|
893
893
|
}
|
|
894
894
|
|
|
895
895
|
if (this.dataCache == null) {
|
|
896
|
-
this.dataCache = QRCode$
|
|
896
|
+
this.dataCache = QRCode$1.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
|
|
897
897
|
}
|
|
898
898
|
|
|
899
899
|
this.mapData(this.dataCache, maskPattern);
|
|
@@ -1120,10 +1120,10 @@
|
|
|
1120
1120
|
}
|
|
1121
1121
|
};
|
|
1122
1122
|
|
|
1123
|
-
QRCode$
|
|
1124
|
-
QRCode$
|
|
1123
|
+
QRCode$1.PAD0 = 0xEC;
|
|
1124
|
+
QRCode$1.PAD1 = 0x11;
|
|
1125
1125
|
|
|
1126
|
-
QRCode$
|
|
1126
|
+
QRCode$1.createData = function(typeNumber, errorCorrectLevel, dataList) {
|
|
1127
1127
|
|
|
1128
1128
|
var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
|
|
1129
1129
|
|
|
@@ -1166,18 +1166,18 @@
|
|
|
1166
1166
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1167
1167
|
break;
|
|
1168
1168
|
}
|
|
1169
|
-
buffer.put(QRCode$
|
|
1169
|
+
buffer.put(QRCode$1.PAD0, 8);
|
|
1170
1170
|
|
|
1171
1171
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1172
1172
|
break;
|
|
1173
1173
|
}
|
|
1174
|
-
buffer.put(QRCode$
|
|
1174
|
+
buffer.put(QRCode$1.PAD1, 8);
|
|
1175
1175
|
}
|
|
1176
1176
|
|
|
1177
|
-
return QRCode$
|
|
1177
|
+
return QRCode$1.createBytes(buffer, rsBlocks);
|
|
1178
1178
|
};
|
|
1179
1179
|
|
|
1180
|
-
QRCode$
|
|
1180
|
+
QRCode$1.createBytes = function(buffer, rsBlocks) {
|
|
1181
1181
|
|
|
1182
1182
|
var offset = 0;
|
|
1183
1183
|
|
|
@@ -1241,24 +1241,7 @@
|
|
|
1241
1241
|
return data;
|
|
1242
1242
|
};
|
|
1243
1243
|
|
|
1244
|
-
var QRCode_1 = QRCode$
|
|
1245
|
-
|
|
1246
|
-
var QRCode$1 = QRCode_1;
|
|
1247
|
-
var ErrorCorrectLevel = ErrorCorrectLevel$1;
|
|
1248
|
-
|
|
1249
|
-
var qrcode = function(data, opt) {
|
|
1250
|
-
opt = opt || {};
|
|
1251
|
-
var qr = new QRCode$1(opt.typeNumber || -1,
|
|
1252
|
-
opt.errorCorrectLevel || ErrorCorrectLevel.H);
|
|
1253
|
-
qr.addData(data);
|
|
1254
|
-
qr.make();
|
|
1255
|
-
|
|
1256
|
-
return qr;
|
|
1257
|
-
};
|
|
1258
|
-
|
|
1259
|
-
qrcode.ErrorCorrectLevel = ErrorCorrectLevel;
|
|
1260
|
-
|
|
1261
|
-
var qr_js = qrcode;
|
|
1244
|
+
var QRCode_1 = QRCode$1;
|
|
1262
1245
|
|
|
1263
1246
|
var defaultErrorCorrectLevel = 'H';
|
|
1264
1247
|
// Thanks the `qrcode.react`
|
|
@@ -1271,12 +1254,16 @@
|
|
|
1271
1254
|
}
|
|
1272
1255
|
return true;
|
|
1273
1256
|
})();
|
|
1274
|
-
function QRCode(data,
|
|
1257
|
+
function QRCode(data, level) {
|
|
1258
|
+
var errorCorrectLevel = ErrorCorrectLevel[level];
|
|
1275
1259
|
// We'll use type===-1 to force QRCode to automatically pick the best type
|
|
1276
|
-
|
|
1260
|
+
var qrcode = new QRCode_1(-1, errorCorrectLevel);
|
|
1261
|
+
qrcode.addData(toUTF8String(data));
|
|
1262
|
+
qrcode.make();
|
|
1263
|
+
return qrcode;
|
|
1277
1264
|
}
|
|
1278
1265
|
function validErrorCorrectLevel(level) {
|
|
1279
|
-
return level in
|
|
1266
|
+
return level in ErrorCorrectLevel;
|
|
1280
1267
|
}
|
|
1281
1268
|
/**
|
|
1282
1269
|
* Encode UTF16 to UTF8.
|
|
@@ -1325,7 +1312,7 @@
|
|
|
1325
1312
|
if (!cell && start !== null) {
|
|
1326
1313
|
// M0 0h7v1H0z injects the space with the move and drops the comma,
|
|
1327
1314
|
// saving a char per operation
|
|
1328
|
-
ops.push("M"
|
|
1315
|
+
ops.push("M".concat(start + margin, " ").concat(y + margin, "h").concat(x - start, "v1H").concat(start + margin, "z"));
|
|
1329
1316
|
start = null;
|
|
1330
1317
|
return;
|
|
1331
1318
|
}
|
|
@@ -1338,11 +1325,11 @@
|
|
|
1338
1325
|
}
|
|
1339
1326
|
if (start === null) {
|
|
1340
1327
|
// Just a single dark module.
|
|
1341
|
-
ops.push("M"
|
|
1328
|
+
ops.push("M".concat(x + margin, ",").concat(y + margin, " h1v1H").concat(x + margin, "z"));
|
|
1342
1329
|
}
|
|
1343
1330
|
else {
|
|
1344
1331
|
// Otherwise finish the current line.
|
|
1345
|
-
ops.push("M"
|
|
1332
|
+
ops.push("M".concat(start + margin, ",").concat(y + margin, " h").concat(x + 1 - start, "v1H").concat(start + margin, "z"));
|
|
1346
1333
|
}
|
|
1347
1334
|
return;
|
|
1348
1335
|
}
|
|
@@ -1357,36 +1344,36 @@
|
|
|
1357
1344
|
value: {
|
|
1358
1345
|
type: String,
|
|
1359
1346
|
required: true,
|
|
1360
|
-
"default": ''
|
|
1347
|
+
"default": ''
|
|
1361
1348
|
},
|
|
1362
1349
|
size: {
|
|
1363
1350
|
type: Number,
|
|
1364
|
-
"default": 100
|
|
1351
|
+
"default": 100
|
|
1365
1352
|
},
|
|
1366
1353
|
level: {
|
|
1367
1354
|
type: String,
|
|
1368
1355
|
"default": defaultErrorCorrectLevel,
|
|
1369
|
-
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1356
|
+
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1370
1357
|
},
|
|
1371
1358
|
background: {
|
|
1372
1359
|
type: String,
|
|
1373
|
-
"default": '#fff'
|
|
1360
|
+
"default": '#fff'
|
|
1374
1361
|
},
|
|
1375
1362
|
foreground: {
|
|
1376
1363
|
type: String,
|
|
1377
|
-
"default": '#000'
|
|
1364
|
+
"default": '#000'
|
|
1378
1365
|
},
|
|
1379
1366
|
margin: {
|
|
1380
1367
|
type: Number,
|
|
1381
1368
|
required: false,
|
|
1382
|
-
"default": 0
|
|
1383
|
-
}
|
|
1369
|
+
"default": 0
|
|
1370
|
+
}
|
|
1384
1371
|
};
|
|
1385
1372
|
var QRCodeVueProps = __assign(__assign({}, QRCodeProps), { renderAs: {
|
|
1386
1373
|
type: String,
|
|
1387
1374
|
required: false,
|
|
1388
1375
|
"default": 'canvas',
|
|
1389
|
-
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1376
|
+
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1390
1377
|
} });
|
|
1391
1378
|
var QRCodeSvg = vue.defineComponent({
|
|
1392
1379
|
name: 'QRCodeSvg',
|
|
@@ -1396,7 +1383,7 @@
|
|
|
1396
1383
|
var fgPath = vue.ref('');
|
|
1397
1384
|
var generate = function () {
|
|
1398
1385
|
var value = props.value, level = props.level, margin = props.margin;
|
|
1399
|
-
var cells = QRCode(value,
|
|
1386
|
+
var cells = QRCode(value, level).modules;
|
|
1400
1387
|
numCells.value = cells.length + margin * 2;
|
|
1401
1388
|
// Drawing strategy: instead of a rect per module, we're going to create a
|
|
1402
1389
|
// single path for the dark modules and layer that on top of a light rect,
|
|
@@ -1413,15 +1400,15 @@
|
|
|
1413
1400
|
height: props.size,
|
|
1414
1401
|
'shape-rendering': "crispEdges",
|
|
1415
1402
|
xmlns: 'http://www.w3.org/2000/svg',
|
|
1416
|
-
viewBox: "0 0 "
|
|
1403
|
+
viewBox: "0 0 ".concat(numCells.value, " ").concat(numCells.value)
|
|
1417
1404
|
}, [
|
|
1418
1405
|
vue.h('path', {
|
|
1419
1406
|
fill: props.background,
|
|
1420
|
-
d: "M0,0 h"
|
|
1407
|
+
d: "M0,0 h".concat(numCells.value, "v").concat(numCells.value, "H0z")
|
|
1421
1408
|
}),
|
|
1422
1409
|
vue.h('path', { fill: props.foreground, d: fgPath.value }),
|
|
1423
1410
|
]); };
|
|
1424
|
-
}
|
|
1411
|
+
}
|
|
1425
1412
|
});
|
|
1426
1413
|
var QRCodeCanvas = vue.defineComponent({
|
|
1427
1414
|
name: 'QRCodeCanvas',
|
|
@@ -1430,7 +1417,7 @@
|
|
|
1430
1417
|
var canvasEl = vue.ref(null);
|
|
1431
1418
|
var generate = function () {
|
|
1432
1419
|
var value = props.value, level = props.level, size = props.size, margin = props.margin, background = props.background, foreground = props.foreground;
|
|
1433
|
-
var cells = QRCode(value,
|
|
1420
|
+
var cells = QRCode(value, level).modules;
|
|
1434
1421
|
var numCells = cells.length + margin * 2;
|
|
1435
1422
|
var canvas = canvasEl.value;
|
|
1436
1423
|
if (!canvas) {
|
|
@@ -1464,9 +1451,9 @@
|
|
|
1464
1451
|
vue.onUpdated(generate);
|
|
1465
1452
|
return function () { return vue.h('canvas', {
|
|
1466
1453
|
ref: canvasEl,
|
|
1467
|
-
style: { width: props.size
|
|
1454
|
+
style: { width: "".concat(props.size, "px"), height: "".concat(props.size, "px") }
|
|
1468
1455
|
}); };
|
|
1469
|
-
}
|
|
1456
|
+
}
|
|
1470
1457
|
});
|
|
1471
1458
|
var QrcodeVue = vue.defineComponent({
|
|
1472
1459
|
name: 'Qrcode',
|
|
@@ -1477,9 +1464,9 @@
|
|
|
1477
1464
|
var level = validErrorCorrectLevel(_level) ? _level : defaultErrorCorrectLevel;
|
|
1478
1465
|
return vue.h(renderAs === 'svg' ? QRCodeSvg : QRCodeCanvas, { value: value, size: size, margin: margin, level: level, background: background, foreground: foreground });
|
|
1479
1466
|
},
|
|
1480
|
-
props: QRCodeVueProps
|
|
1467
|
+
props: QRCodeVueProps
|
|
1481
1468
|
});
|
|
1482
1469
|
|
|
1483
1470
|
return QrcodeVue;
|
|
1484
1471
|
|
|
1485
|
-
}))
|
|
1472
|
+
}));
|
|
@@ -1,21 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* qrcode.vue v3.3.
|
|
2
|
+
* qrcode.vue v3.3.4
|
|
3
3
|
* A Vue.js component to generate QRCode.
|
|
4
|
-
* © 2017-
|
|
4
|
+
* © 2017-2023 @scopewu(https://github.com/scopewu)
|
|
5
5
|
* MIT License.
|
|
6
6
|
*/
|
|
7
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define(["vue"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).QrcodeVue=e(t.Vue)}(this,(function(t){"use strict";
|
|
8
|
-
/*! *****************************************************************************
|
|
9
|
-
Copyright (c) Microsoft Corporation.
|
|
10
|
-
|
|
11
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
12
|
-
purpose with or without fee is hereby granted.
|
|
13
|
-
|
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
15
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
16
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
17
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
18
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
19
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
20
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
21
|
-
***************************************************************************** */var e=function(){return(e=Object.assign||function(t){for(var e,r=1,n=arguments.length;n>r;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)},r={MODE_NUMBER:1,MODE_ALPHA_NUM:2,MODE_8BIT_BYTE:4,MODE_KANJI:8},n=r;function o(t){this.mode=n.MODE_8BIT_BYTE,this.data=t}o.prototype={getLength:function(t){return this.data.length},write:function(t){for(var e=0;this.data.length>e;e++)t.put(this.data.charCodeAt(e),8)}};var i=o,u={L:1,M:0,Q:3,H:2},a=u;function s(t,e){this.totalCount=t,this.dataCount=e}s.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],s.getRSBlocks=function(t,e){var r=s.getRsBlockTable(t,e);if(null==r)throw Error("bad rs block @ typeNumber:"+t+"/errorCorrectLevel:"+e);for(var n=r.length/3,o=[],i=0;n>i;i++)for(var u=r[3*i+0],a=r[3*i+1],h=r[3*i+2],l=0;u>l;l++)o.push(new s(a,h));return o},s.getRsBlockTable=function(t,e){switch(e){case a.L:return s.RS_BLOCK_TABLE[4*(t-1)+0];case a.M:return s.RS_BLOCK_TABLE[4*(t-1)+1];case a.Q:return s.RS_BLOCK_TABLE[4*(t-1)+2];case a.H:return s.RS_BLOCK_TABLE[4*(t-1)+3];default:return}};var h=s;function l(){this.buffer=[],this.length=0}l.prototype={get:function(t){return 1==(this.buffer[Math.floor(t/8)]>>>7-t%8&1)},put:function(t,e){for(var r=0;e>r;r++)this.putBit(1==(t>>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length>e||this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};for(var f=l,g={glog:function(t){if(1>t)throw Error("glog("+t+")");return g.LOG_TABLE[t]},gexp:function(t){for(;0>t;)t+=255;for(;t>=256;)t-=255;return g.EXP_TABLE[t]},EXP_TABLE:Array(256),LOG_TABLE:Array(256)},d=0;8>d;d++)g.EXP_TABLE[d]=1<<d;for(d=8;256>d;d++)g.EXP_TABLE[d]=g.EXP_TABLE[d-4]^g.EXP_TABLE[d-5]^g.EXP_TABLE[d-6]^g.EXP_TABLE[d-8];for(d=0;255>d;d++)g.LOG_TABLE[g.EXP_TABLE[d]]=d;var c=g,v=c;function m(t,e){if(null==t.length)throw Error(t.length+"/"+e);for(var r=0;t.length>r&&0==t[r];)r++;this.num=Array(t.length-r+e);for(var n=0;t.length-r>n;n++)this.num[n]=t[n+r]}m.prototype={get:function(t){return this.num[t]},getLength:function(){return this.num.length},multiply:function(t){for(var e=Array(this.getLength()+t.getLength()-1),r=0;r<this.getLength();r++)for(var n=0;n<t.getLength();n++)e[r+n]^=v.gexp(v.glog(this.get(r))+v.glog(t.get(n)));return new m(e,0)},mod:function(t){if(0>this.getLength()-t.getLength())return this;for(var e=v.glog(this.get(0))-v.glog(t.get(0)),r=Array(this.getLength()),n=0;n<this.getLength();n++)r[n]=this.get(n);for(n=0;n<t.getLength();n++)r[n]^=v.gexp(v.glog(t.get(n))+e);return new m(r,0).mod(t)}};var p=r,C=m,E=c,L=0,B=1,y=2,D=3,A=4,P=5,_=6,T=7,M={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]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(t){for(var e=t<<10;M.getBCHDigit(e)-M.getBCHDigit(M.G15)>=0;)e^=M.G15<<M.getBCHDigit(e)-M.getBCHDigit(M.G15);return(t<<10|e)^M.G15_MASK},getBCHTypeNumber:function(t){for(var e=t<<12;M.getBCHDigit(e)-M.getBCHDigit(M.G18)>=0;)e^=M.G18<<M.getBCHDigit(e)-M.getBCHDigit(M.G18);return t<<12|e},getBCHDigit:function(t){for(var e=0;0!=t;)e++,t>>>=1;return e},getPatternPosition:function(t){return M.PATTERN_POSITION_TABLE[t-1]},getMask:function(t,e,r){switch(t){case L:return(e+r)%2==0;case B:return e%2==0;case y:return r%3==0;case D:return(e+r)%3==0;case A:return(Math.floor(e/2)+Math.floor(r/3))%2==0;case P:return e*r%2+e*r%3==0;case _:return(e*r%2+e*r%3)%2==0;case T:return(e*r%3+(e+r)%2)%2==0;default:throw Error("bad maskPattern:"+t)}},getErrorCorrectPolynomial:function(t){for(var e=new C([1],0),r=0;t>r;r++)e=e.multiply(new C([1,E.gexp(r)],0));return e},getLengthInBits:function(t,e){if(e>=1&&10>e)switch(t){case p.MODE_NUMBER:return 10;case p.MODE_ALPHA_NUM:return 9;case p.MODE_8BIT_BYTE:case p.MODE_KANJI:return 8;default:throw Error("mode:"+t)}else if(27>e)switch(t){case p.MODE_NUMBER:return 12;case p.MODE_ALPHA_NUM:return 11;case p.MODE_8BIT_BYTE:return 16;case p.MODE_KANJI:return 10;default:throw Error("mode:"+t)}else{if(e>=41)throw Error("type:"+e);switch(t){case p.MODE_NUMBER:return 14;case p.MODE_ALPHA_NUM:return 13;case p.MODE_8BIT_BYTE:return 16;case p.MODE_KANJI:return 12;default:throw Error("mode:"+t)}}},getLostPoint:function(t){for(var e=t.getModuleCount(),r=0,n=0;e>n;n++)for(var o=0;e>o;o++){for(var i=0,u=t.isDark(n,o),a=-1;1>=a;a++)if(n+a>=0&&e>n+a)for(var s=-1;1>=s;s++)o+s>=0&&e>o+s&&(0==a&&0==s||u==t.isDark(n+a,o+s)&&i++);i>5&&(r+=3+i-5)}for(n=0;e-1>n;n++)for(o=0;e-1>o;o++){var h=0;t.isDark(n,o)&&h++,t.isDark(n+1,o)&&h++,t.isDark(n,o+1)&&h++,t.isDark(n+1,o+1)&&h++,0!=h&&4!=h||(r+=3)}for(n=0;e>n;n++)for(o=0;e-6>o;o++)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(r+=40);for(o=0;e>o;o++)for(n=0;e-6>n;n++)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(r+=40);var l=0;for(o=0;e>o;o++)for(n=0;e>n;n++)t.isDark(n,o)&&l++;return r+=10*(Math.abs(100*l/e/e-50)/5)}},b=i,k=h,w=f,N=M,O=m;function I(t,e){this.typeNumber=t,this.errorCorrectLevel=e,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}var S=I.prototype;S.addData=function(t){var e=new b(t);this.dataList.push(e),this.dataCache=null},S.isDark=function(t,e){if(0>t||t>=this.moduleCount||0>e||e>=this.moduleCount)throw Error(t+","+e);return this.modules[t][e]},S.getModuleCount=function(){return this.moduleCount},S.make=function(){if(1>this.typeNumber){var t=1;for(t=1;40>t;t++){for(var e=k.getRSBlocks(t,this.errorCorrectLevel),r=new w,n=0,o=0;e.length>o;o++)n+=e[o].dataCount;for(o=0;this.dataList.length>o;o++){var i=this.dataList[o];r.put(i.mode,4),r.put(i.getLength(),N.getLengthInBits(i.mode,t)),i.write(r)}if(r.getLengthInBits()<=8*n)break}this.typeNumber=t}this.makeImpl(!1,this.getBestMaskPattern())},S.makeImpl=function(t,e){this.moduleCount=4*this.typeNumber+17,this.modules=Array(this.moduleCount);for(var r=0;this.moduleCount>r;r++){this.modules[r]=Array(this.moduleCount);for(var n=0;this.moduleCount>n;n++)this.modules[r][n]=null}this.setupPositionProbePattern(0,0),this.setupPositionProbePattern(this.moduleCount-7,0),this.setupPositionProbePattern(0,this.moduleCount-7),this.setupPositionAdjustPattern(),this.setupTimingPattern(),this.setupTypeInfo(t,e),7>this.typeNumber||this.setupTypeNumber(t),null==this.dataCache&&(this.dataCache=I.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,e)},S.setupPositionProbePattern=function(t,e){for(var r=-1;7>=r;r++)if(t+r>-1&&this.moduleCount>t+r)for(var n=-1;7>=n;n++)e+n>-1&&this.moduleCount>e+n&&(this.modules[t+r][e+n]=!((0>r||r>6||0!=n&&6!=n)&&(0>n||n>6||0!=r&&6!=r)&&(2>r||r>4||2>n||n>4)))},S.getBestMaskPattern=function(){for(var t=0,e=0,r=0;8>r;r++){this.makeImpl(!0,r);var n=N.getLostPoint(this);(0==r||t>n)&&(t=n,e=r)}return e},S.createMovieClip=function(t,e,r){var n=t.createEmptyMovieClip(e,r);this.make();for(var o=0;this.modules.length>o;o++)for(var i=1*o,u=0;this.modules[o].length>u;u++){var a=1*u;this.modules[o][u]&&(n.beginFill(0,100),n.moveTo(a,i),n.lineTo(a+1,i),n.lineTo(a+1,i+1),n.lineTo(a,i+1),n.endFill())}return n},S.setupTimingPattern=function(){for(var t=8;this.moduleCount-8>t;t++)null==this.modules[t][6]&&(this.modules[t][6]=t%2==0);for(var e=8;this.moduleCount-8>e;e++)null==this.modules[6][e]&&(this.modules[6][e]=e%2==0)},S.setupPositionAdjustPattern=function(){for(var t=N.getPatternPosition(this.typeNumber),e=0;t.length>e;e++)for(var r=0;t.length>r;r++){var n=t[e],o=t[r];if(null==this.modules[n][o])for(var i=-2;2>=i;i++)for(var u=-2;2>=u;u++)this.modules[n+i][o+u]=-2==i||2==i||-2==u||2==u||0==i&&0==u}},S.setupTypeNumber=function(t){for(var e=N.getBCHTypeNumber(this.typeNumber),r=0;18>r;r++){var n=!t&&1==(e>>r&1);this.modules[Math.floor(r/3)][r%3+this.moduleCount-8-3]=n}for(r=0;18>r;r++){n=!t&&1==(e>>r&1);this.modules[r%3+this.moduleCount-8-3][Math.floor(r/3)]=n}},S.setupTypeInfo=function(t,e){for(var r=N.getBCHTypeInfo(this.errorCorrectLevel<<3|e),n=0;15>n;n++){var o=!t&&1==(r>>n&1);6>n?this.modules[n][8]=o:8>n?this.modules[n+1][8]=o:this.modules[this.moduleCount-15+n][8]=o}for(n=0;15>n;n++){o=!t&&1==(r>>n&1);8>n?this.modules[8][this.moduleCount-n-1]=o:9>n?this.modules[8][15-n-1+1]=o:this.modules[8][15-n-1]=o}this.modules[this.moduleCount-8][8]=!t},S.mapData=function(t,e){for(var r=-1,n=this.moduleCount-1,o=7,i=0,u=this.moduleCount-1;u>0;u-=2)for(6==u&&u--;;){for(var a=0;2>a;a++)if(null==this.modules[n][u-a]){var s=!1;t.length>i&&(s=1==(t[i]>>>o&1)),N.getMask(e,n,u-a)&&(s=!s),this.modules[n][u-a]=s,-1==--o&&(i++,o=7)}if(0>(n+=r)||n>=this.moduleCount){n-=r,r=-r;break}}},I.PAD0=236,I.PAD1=17,I.createData=function(t,e,r){for(var n=k.getRSBlocks(t,e),o=new w,i=0;r.length>i;i++){var u=r[i];o.put(u.mode,4),o.put(u.getLength(),N.getLengthInBits(u.mode,t)),u.write(o)}var a=0;for(i=0;n.length>i;i++)a+=n[i].dataCount;if(o.getLengthInBits()>8*a)throw Error("code length overflow. ("+o.getLengthInBits()+">"+8*a+")");for(o.getLengthInBits()+4>8*a||o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;o.getLengthInBits()<8*a&&(o.put(I.PAD0,8),o.getLengthInBits()<8*a);)o.put(I.PAD1,8);return I.createBytes(o,n)},I.createBytes=function(t,e){for(var r=0,n=0,o=0,i=Array(e.length),u=Array(e.length),a=0;e.length>a;a++){var s=e[a].dataCount,h=e[a].totalCount-s;n=Math.max(n,s),o=Math.max(o,h),i[a]=Array(s);for(var l=0;i[a].length>l;l++)i[a][l]=255&t.buffer[l+r];r+=s;var f=N.getErrorCorrectPolynomial(h),g=new O(i[a],f.getLength()-1).mod(f);u[a]=Array(f.getLength()-1);for(l=0;u[a].length>l;l++){var d=l+g.getLength()-u[a].length;u[a][l]=0>d?0:g.get(d)}}var c=0;for(l=0;e.length>l;l++)c+=e[l].totalCount;var v=Array(c),m=0;for(l=0;n>l;l++)for(a=0;e.length>a;a++)i[a].length>l&&(v[m++]=i[a][l]);for(l=0;o>l;l++)for(a=0;e.length>a;a++)u[a].length>l&&(v[m++]=u[a][l]);return v};var H=I,R=u,x=function(t,e){var r=new H((e=e||{}).typeNumber||-1,e.errorCorrectLevel||R.H);return r.addData(t),r.make(),r};x.ErrorCorrectLevel=R;var G=x,z=function(){try{(new Path2D).addPath(new Path2D)}catch(t){return!1}return!0}();function K(t,e){return G(function(t){for(var e="",r=0;t.length>r;r++){var n=t.charCodeAt(r);128>n?e+=String.fromCharCode(n):2048>n?(e+=String.fromCharCode(192|n>>6),e+=String.fromCharCode(128|63&n)):55296>n||n>=57344?(e+=String.fromCharCode(224|n>>12),e+=String.fromCharCode(128|n>>6&63),e+=String.fromCharCode(128|63&n)):(r++,n=65536+((1023&n)<<10|1023&t.charCodeAt(r)),e+=String.fromCharCode(240|n>>18),e+=String.fromCharCode(128|n>>12&63),e+=String.fromCharCode(128|n>>6&63),e+=String.fromCharCode(128|63&n))}return e}(t),{typeNumber:-1,errorCorrectLevel:e})}function U(t){return t in G.ErrorCorrectLevel}function X(t,e){void 0===e&&(e=0);var r=[];return t.forEach((function(t,n){var o=null;t.forEach((function(i,u){if(!i&&null!==o)return r.push("M"+(o+e)+" "+(n+e)+"h"+(u-o)+"v1H"+(o+e)+"z"),void(o=null);if(u!==t.length-1)i&&null===o&&(o=u);else{if(!i)return;r.push(null===o?"M"+(u+e)+","+(n+e)+" h1v1H"+(u+e)+"z":"M"+(o+e)+","+(n+e)+" h"+(u+1-o)+"v1H"+(o+e)+"z")}}))})),r.join("")}var j={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:"H",validator:function(t){return U(t)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0}},Q=e(e({},j),{renderAs:{type:String,required:!1,default:"canvas",validator:function(t){return["canvas","svg"].indexOf(t)>-1}}}),Y=t.defineComponent({name:"QRCodeSvg",props:j,setup:function(e){var r=t.ref(0),n=t.ref(""),o=function(){var t=e.margin,o=K(e.value,G.ErrorCorrectLevel[e.level]).modules;r.value=o.length+2*t,n.value=X(o,t)};return o(),t.onUpdated(o),function(){return t.h("svg",{width:e.size,height:e.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 "+r.value+" "+r.value},[t.h("path",{fill:e.background,d:"M0,0 h"+r.value+"v"+r.value+"H0z"}),t.h("path",{fill:e.foreground,d:n.value})])}}}),q=t.defineComponent({name:"QRCodeCanvas",props:j,setup:function(e){var r=t.ref(null),n=function(){var t=e.size,n=e.margin,o=e.background,i=e.foreground,u=K(e.value,G.ErrorCorrectLevel[e.level]).modules,a=u.length+2*n,s=r.value;if(s){var h=s.getContext("2d");if(h){var l=window.devicePixelRatio||1,f=t/a*l;s.height=s.width=t*l,h.scale(f,f),h.fillStyle=o,h.fillRect(0,0,a,a),h.fillStyle=i,z?h.fill(new Path2D(X(u,n))):u.forEach((function(t,e){t.forEach((function(t,r){t&&h.fillRect(r+n,e+n,1,1)}))}))}}};return t.onMounted(n),t.onUpdated(n),function(){return t.h("canvas",{ref:r,style:{width:e.size+"px",height:e.size+"px"}})}}});return t.defineComponent({name:"Qrcode",render:function(){var e=this.$props,r=e.renderAs,n=e.value,o=e.level,i=e.background,u=e.foreground,a=e.size>>>0,s=e.margin>>>0,h=U(o)?o:"H";return t.h("svg"===r?Y:q,{value:n,size:a,margin:s,level:h,background:i,foreground:u})},props:Q})}));
|
|
7
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("vue")):"function"==typeof define&&define.amd?define(["vue"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).QrcodeVue=e(t.Vue)}(this,(function(t){"use strict";var e=function(){return e=Object.assign||function(t){for(var e,r=1,n=arguments.length;n>r;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},e.apply(this,arguments)},r={MODE_NUMBER:1,MODE_ALPHA_NUM:2,MODE_8BIT_BYTE:4,MODE_KANJI:8},n=r;function o(t){this.mode=n.MODE_8BIT_BYTE,this.data=t}o.prototype={getLength:function(t){return this.data.length},write:function(t){for(var e=0;this.data.length>e;e++)t.put(this.data.charCodeAt(e),8)}};var i=o,a={L:1,M:0,Q:3,H:2},u=a;function s(t,e){this.totalCount=t,this.dataCount=e}s.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],s.getRSBlocks=function(t,e){var r=s.getRsBlockTable(t,e);if(null==r)throw Error("bad rs block @ typeNumber:"+t+"/errorCorrectLevel:"+e);for(var n=r.length/3,o=[],i=0;n>i;i++)for(var a=r[3*i+0],u=r[3*i+1],h=r[3*i+2],l=0;a>l;l++)o.push(new s(u,h));return o},s.getRsBlockTable=function(t,e){switch(e){case u.L:return s.RS_BLOCK_TABLE[4*(t-1)+0];case u.M:return s.RS_BLOCK_TABLE[4*(t-1)+1];case u.Q:return s.RS_BLOCK_TABLE[4*(t-1)+2];case u.H:return s.RS_BLOCK_TABLE[4*(t-1)+3];default:return}};var h=s;function l(){this.buffer=[],this.length=0}l.prototype={get:function(t){return 1==(this.buffer[Math.floor(t/8)]>>>7-t%8&1)},put:function(t,e){for(var r=0;e>r;r++)this.putBit(1==(t>>>e-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length>e||this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};for(var f=l,g={glog:function(t){if(1>t)throw Error("glog("+t+")");return g.LOG_TABLE[t]},gexp:function(t){for(;0>t;)t+=255;for(;t>=256;)t-=255;return g.EXP_TABLE[t]},EXP_TABLE:Array(256),LOG_TABLE:Array(256)},c=0;8>c;c++)g.EXP_TABLE[c]=1<<c;for(c=8;256>c;c++)g.EXP_TABLE[c]=g.EXP_TABLE[c-4]^g.EXP_TABLE[c-5]^g.EXP_TABLE[c-6]^g.EXP_TABLE[c-8];for(c=0;255>c;c++)g.LOG_TABLE[g.EXP_TABLE[c]]=c;var d=g,v=d;function m(t,e){if(null==t.length)throw Error(t.length+"/"+e);for(var r=0;t.length>r&&0==t[r];)r++;this.num=Array(t.length-r+e);for(var n=0;t.length-r>n;n++)this.num[n]=t[n+r]}m.prototype={get:function(t){return this.num[t]},getLength:function(){return this.num.length},multiply:function(t){for(var e=Array(this.getLength()+t.getLength()-1),r=0;r<this.getLength();r++)for(var n=0;n<t.getLength();n++)e[r+n]^=v.gexp(v.glog(this.get(r))+v.glog(t.get(n)));return new m(e,0)},mod:function(t){if(0>this.getLength()-t.getLength())return this;for(var e=v.glog(this.get(0))-v.glog(t.get(0)),r=Array(this.getLength()),n=0;n<this.getLength();n++)r[n]=this.get(n);for(n=0;n<t.getLength();n++)r[n]^=v.gexp(v.glog(t.get(n))+e);return new m(r,0).mod(t)}};var p=r,C=m,B=d,E=0,L=1,D=2,y=3,A=4,P=5,_=6,T=7,M={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]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(t){for(var e=t<<10;M.getBCHDigit(e)-M.getBCHDigit(M.G15)>=0;)e^=M.G15<<M.getBCHDigit(e)-M.getBCHDigit(M.G15);return(t<<10|e)^M.G15_MASK},getBCHTypeNumber:function(t){for(var e=t<<12;M.getBCHDigit(e)-M.getBCHDigit(M.G18)>=0;)e^=M.G18<<M.getBCHDigit(e)-M.getBCHDigit(M.G18);return t<<12|e},getBCHDigit:function(t){for(var e=0;0!=t;)e++,t>>>=1;return e},getPatternPosition:function(t){return M.PATTERN_POSITION_TABLE[t-1]},getMask:function(t,e,r){switch(t){case E:return(e+r)%2==0;case L:return e%2==0;case D:return r%3==0;case y:return(e+r)%3==0;case A:return(Math.floor(e/2)+Math.floor(r/3))%2==0;case P:return e*r%2+e*r%3==0;case _:return(e*r%2+e*r%3)%2==0;case T:return(e*r%3+(e+r)%2)%2==0;default:throw Error("bad maskPattern:"+t)}},getErrorCorrectPolynomial:function(t){for(var e=new C([1],0),r=0;t>r;r++)e=e.multiply(new C([1,B.gexp(r)],0));return e},getLengthInBits:function(t,e){if(e>=1&&10>e)switch(t){case p.MODE_NUMBER:return 10;case p.MODE_ALPHA_NUM:return 9;case p.MODE_8BIT_BYTE:case p.MODE_KANJI:return 8;default:throw Error("mode:"+t)}else if(27>e)switch(t){case p.MODE_NUMBER:return 12;case p.MODE_ALPHA_NUM:return 11;case p.MODE_8BIT_BYTE:return 16;case p.MODE_KANJI:return 10;default:throw Error("mode:"+t)}else{if(e>=41)throw Error("type:"+e);switch(t){case p.MODE_NUMBER:return 14;case p.MODE_ALPHA_NUM:return 13;case p.MODE_8BIT_BYTE:return 16;case p.MODE_KANJI:return 12;default:throw Error("mode:"+t)}}},getLostPoint:function(t){for(var e=t.getModuleCount(),r=0,n=0;e>n;n++)for(var o=0;e>o;o++){for(var i=0,a=t.isDark(n,o),u=-1;1>=u;u++)if(n+u>=0&&e>n+u)for(var s=-1;1>=s;s++)o+s>=0&&e>o+s&&(0==u&&0==s||a==t.isDark(n+u,o+s)&&i++);i>5&&(r+=3+i-5)}for(n=0;e-1>n;n++)for(o=0;e-1>o;o++){var h=0;t.isDark(n,o)&&h++,t.isDark(n+1,o)&&h++,t.isDark(n,o+1)&&h++,t.isDark(n+1,o+1)&&h++,0!=h&&4!=h||(r+=3)}for(n=0;e>n;n++)for(o=0;e-6>o;o++)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(r+=40);for(o=0;e>o;o++)for(n=0;e-6>n;n++)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(r+=40);var l=0;for(o=0;e>o;o++)for(n=0;e>n;n++)t.isDark(n,o)&&l++;return r+=10*(Math.abs(100*l/e/e-50)/5)}},k=i,b=h,w=f,O=M,I=m;function N(t,e){this.typeNumber=t,this.errorCorrectLevel=e,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}var S=N.prototype;S.addData=function(t){var e=new k(t);this.dataList.push(e),this.dataCache=null},S.isDark=function(t,e){if(0>t||t>=this.moduleCount||0>e||e>=this.moduleCount)throw Error(t+","+e);return this.modules[t][e]},S.getModuleCount=function(){return this.moduleCount},S.make=function(){if(1>this.typeNumber){var t=1;for(t=1;40>t;t++){for(var e=b.getRSBlocks(t,this.errorCorrectLevel),r=new w,n=0,o=0;e.length>o;o++)n+=e[o].dataCount;for(o=0;this.dataList.length>o;o++){var i=this.dataList[o];r.put(i.mode,4),r.put(i.getLength(),O.getLengthInBits(i.mode,t)),i.write(r)}if(r.getLengthInBits()<=8*n)break}this.typeNumber=t}this.makeImpl(!1,this.getBestMaskPattern())},S.makeImpl=function(t,e){this.moduleCount=4*this.typeNumber+17,this.modules=Array(this.moduleCount);for(var r=0;this.moduleCount>r;r++){this.modules[r]=Array(this.moduleCount);for(var n=0;this.moduleCount>n;n++)this.modules[r][n]=null}this.setupPositionProbePattern(0,0),this.setupPositionProbePattern(this.moduleCount-7,0),this.setupPositionProbePattern(0,this.moduleCount-7),this.setupPositionAdjustPattern(),this.setupTimingPattern(),this.setupTypeInfo(t,e),7>this.typeNumber||this.setupTypeNumber(t),null==this.dataCache&&(this.dataCache=N.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,e)},S.setupPositionProbePattern=function(t,e){for(var r=-1;7>=r;r++)if(t+r>-1&&this.moduleCount>t+r)for(var n=-1;7>=n;n++)e+n>-1&&this.moduleCount>e+n&&(this.modules[t+r][e+n]=!((0>r||r>6||0!=n&&6!=n)&&(0>n||n>6||0!=r&&6!=r)&&(2>r||r>4||2>n||n>4)))},S.getBestMaskPattern=function(){for(var t=0,e=0,r=0;8>r;r++){this.makeImpl(!0,r);var n=O.getLostPoint(this);(0==r||t>n)&&(t=n,e=r)}return e},S.createMovieClip=function(t,e,r){var n=t.createEmptyMovieClip(e,r);this.make();for(var o=0;this.modules.length>o;o++)for(var i=1*o,a=0;this.modules[o].length>a;a++){var u=1*a;this.modules[o][a]&&(n.beginFill(0,100),n.moveTo(u,i),n.lineTo(u+1,i),n.lineTo(u+1,i+1),n.lineTo(u,i+1),n.endFill())}return n},S.setupTimingPattern=function(){for(var t=8;this.moduleCount-8>t;t++)null==this.modules[t][6]&&(this.modules[t][6]=t%2==0);for(var e=8;this.moduleCount-8>e;e++)null==this.modules[6][e]&&(this.modules[6][e]=e%2==0)},S.setupPositionAdjustPattern=function(){for(var t=O.getPatternPosition(this.typeNumber),e=0;t.length>e;e++)for(var r=0;t.length>r;r++){var n=t[e],o=t[r];if(null==this.modules[n][o])for(var i=-2;2>=i;i++)for(var a=-2;2>=a;a++)this.modules[n+i][o+a]=-2==i||2==i||-2==a||2==a||0==i&&0==a}},S.setupTypeNumber=function(t){for(var e=O.getBCHTypeNumber(this.typeNumber),r=0;18>r;r++){var n=!t&&1==(e>>r&1);this.modules[Math.floor(r/3)][r%3+this.moduleCount-8-3]=n}for(r=0;18>r;r++){n=!t&&1==(e>>r&1);this.modules[r%3+this.moduleCount-8-3][Math.floor(r/3)]=n}},S.setupTypeInfo=function(t,e){for(var r=O.getBCHTypeInfo(this.errorCorrectLevel<<3|e),n=0;15>n;n++){var o=!t&&1==(r>>n&1);6>n?this.modules[n][8]=o:8>n?this.modules[n+1][8]=o:this.modules[this.moduleCount-15+n][8]=o}for(n=0;15>n;n++){o=!t&&1==(r>>n&1);8>n?this.modules[8][this.moduleCount-n-1]=o:9>n?this.modules[8][15-n-1+1]=o:this.modules[8][15-n-1]=o}this.modules[this.moduleCount-8][8]=!t},S.mapData=function(t,e){for(var r=-1,n=this.moduleCount-1,o=7,i=0,a=this.moduleCount-1;a>0;a-=2)for(6==a&&a--;;){for(var u=0;2>u;u++)if(null==this.modules[n][a-u]){var s=!1;t.length>i&&(s=1==(t[i]>>>o&1)),O.getMask(e,n,a-u)&&(s=!s),this.modules[n][a-u]=s,-1==--o&&(i++,o=7)}if(0>(n+=r)||n>=this.moduleCount){n-=r,r=-r;break}}},N.PAD0=236,N.PAD1=17,N.createData=function(t,e,r){for(var n=b.getRSBlocks(t,e),o=new w,i=0;r.length>i;i++){var a=r[i];o.put(a.mode,4),o.put(a.getLength(),O.getLengthInBits(a.mode,t)),a.write(o)}var u=0;for(i=0;n.length>i;i++)u+=n[i].dataCount;if(o.getLengthInBits()>8*u)throw Error("code length overflow. ("+o.getLengthInBits()+">"+8*u+")");for(o.getLengthInBits()+4>8*u||o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;o.getLengthInBits()<8*u&&(o.put(N.PAD0,8),o.getLengthInBits()<8*u);)o.put(N.PAD1,8);return N.createBytes(o,n)},N.createBytes=function(t,e){for(var r=0,n=0,o=0,i=Array(e.length),a=Array(e.length),u=0;e.length>u;u++){var s=e[u].dataCount,h=e[u].totalCount-s;n=Math.max(n,s),o=Math.max(o,h),i[u]=Array(s);for(var l=0;i[u].length>l;l++)i[u][l]=255&t.buffer[l+r];r+=s;var f=O.getErrorCorrectPolynomial(h),g=new I(i[u],f.getLength()-1).mod(f);a[u]=Array(f.getLength()-1);for(l=0;a[u].length>l;l++){var c=l+g.getLength()-a[u].length;a[u][l]=0>c?0:g.get(c)}}var d=0;for(l=0;e.length>l;l++)d+=e[l].totalCount;var v=Array(d),m=0;for(l=0;n>l;l++)for(u=0;e.length>u;u++)i[u].length>l&&(v[m++]=i[u][l]);for(l=0;o>l;l++)for(u=0;e.length>u;u++)a[u].length>l&&(v[m++]=a[u][l]);return v};var H=N,R=function(){try{(new Path2D).addPath(new Path2D)}catch(t){return!1}return!0}();function x(t,e){var r=new H(-1,a[e]);return r.addData(function(t){for(var e="",r=0;t.length>r;r++){var n=t.charCodeAt(r);128>n?e+=String.fromCharCode(n):2048>n?(e+=String.fromCharCode(192|n>>6),e+=String.fromCharCode(128|63&n)):55296>n||n>=57344?(e+=String.fromCharCode(224|n>>12),e+=String.fromCharCode(128|n>>6&63),e+=String.fromCharCode(128|63&n)):(r++,n=65536+((1023&n)<<10|1023&t.charCodeAt(r)),e+=String.fromCharCode(240|n>>18),e+=String.fromCharCode(128|n>>12&63),e+=String.fromCharCode(128|n>>6&63),e+=String.fromCharCode(128|63&n))}return e}(t)),r.make(),r}function G(t){return t in a}function z(t,e){void 0===e&&(e=0);var r=[];return t.forEach((function(t,n){var o=null;t.forEach((function(i,a){if(!i&&null!==o)return r.push("M".concat(o+e," ").concat(n+e,"h").concat(a-o,"v1H").concat(o+e,"z")),void(o=null);if(a!==t.length-1)i&&null===o&&(o=a);else{if(!i)return;r.push(null===o?"M".concat(a+e,",").concat(n+e," h1v1H").concat(a+e,"z"):"M".concat(o+e,",").concat(n+e," h").concat(a+1-o,"v1H").concat(o+e,"z"))}}))})),r.join("")}var K={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:"H",validator:function(t){return G(t)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0}},U=e(e({},K),{renderAs:{type:String,required:!1,default:"canvas",validator:function(t){return["canvas","svg"].indexOf(t)>-1}}}),X=t.defineComponent({name:"QRCodeSvg",props:K,setup:function(e){var r=t.ref(0),n=t.ref(""),o=function(){var t=e.margin,o=x(e.value,e.level).modules;r.value=o.length+2*t,n.value=z(o,t)};return o(),t.onUpdated(o),function(){return t.h("svg",{width:e.size,height:e.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(r.value," ").concat(r.value)},[t.h("path",{fill:e.background,d:"M0,0 h".concat(r.value,"v").concat(r.value,"H0z")}),t.h("path",{fill:e.foreground,d:n.value})])}}}),j=t.defineComponent({name:"QRCodeCanvas",props:K,setup:function(e){var r=t.ref(null),n=function(){var t=e.size,n=e.margin,o=e.background,i=e.foreground,a=x(e.value,e.level).modules,u=a.length+2*n,s=r.value;if(s){var h=s.getContext("2d");if(h){var l=window.devicePixelRatio||1,f=t/u*l;s.height=s.width=t*l,h.scale(f,f),h.fillStyle=o,h.fillRect(0,0,u,u),h.fillStyle=i,R?h.fill(new Path2D(z(a,n))):a.forEach((function(t,e){t.forEach((function(t,r){t&&h.fillRect(r+n,e+n,1,1)}))}))}}};return t.onMounted(n),t.onUpdated(n),function(){return t.h("canvas",{ref:r,style:{width:"".concat(e.size,"px"),height:"".concat(e.size,"px")}})}}});return t.defineComponent({name:"Qrcode",render:function(){var e=this.$props,r=e.renderAs,n=e.value,o=e.level,i=e.background,a=e.foreground,u=e.size>>>0,s=e.margin>>>0,h=G(o)?o:"H";return t.h("svg"===r?X:j,{value:n,size:u,margin:s,level:h,background:i,foreground:a})},props:U})}));
|
package/dist/qrcode.vue.cjs.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* qrcode.vue v3.3.
|
|
2
|
+
* qrcode.vue v3.3.4
|
|
3
3
|
* A Vue.js component to generate QRCode.
|
|
4
|
-
* © 2017-
|
|
4
|
+
* © 2017-2023 @scopewu(https://github.com/scopewu)
|
|
5
5
|
* MIT License.
|
|
6
6
|
*/
|
|
7
7
|
'use strict';
|
|
8
8
|
|
|
9
9
|
var vue = require('vue');
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/******************************************************************************
|
|
12
12
|
Copyright (c) Microsoft Corporation.
|
|
13
13
|
|
|
14
14
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -64,7 +64,7 @@ QR8bitByte.prototype = {
|
|
|
64
64
|
|
|
65
65
|
var _8BitByte = QR8bitByte;
|
|
66
66
|
|
|
67
|
-
var ErrorCorrectLevel
|
|
67
|
+
var ErrorCorrectLevel = {
|
|
68
68
|
L : 1,
|
|
69
69
|
M : 0,
|
|
70
70
|
Q : 3,
|
|
@@ -72,7 +72,7 @@ var ErrorCorrectLevel$1 = {
|
|
|
72
72
|
};
|
|
73
73
|
|
|
74
74
|
// ErrorCorrectLevel
|
|
75
|
-
var ECL = ErrorCorrectLevel
|
|
75
|
+
var ECL = ErrorCorrectLevel;
|
|
76
76
|
|
|
77
77
|
function QRRSBlock(totalCount, dataCount) {
|
|
78
78
|
this.totalCount = totalCount;
|
|
@@ -809,7 +809,7 @@ var BitBuffer = BitBuffer$1;
|
|
|
809
809
|
var util = util$1;
|
|
810
810
|
var Polynomial = Polynomial$2;
|
|
811
811
|
|
|
812
|
-
function QRCode$
|
|
812
|
+
function QRCode$1(typeNumber, errorCorrectLevel) {
|
|
813
813
|
this.typeNumber = typeNumber;
|
|
814
814
|
this.errorCorrectLevel = errorCorrectLevel;
|
|
815
815
|
this.modules = null;
|
|
@@ -819,7 +819,7 @@ function QRCode$2(typeNumber, errorCorrectLevel) {
|
|
|
819
819
|
}
|
|
820
820
|
|
|
821
821
|
// for client side minification
|
|
822
|
-
var proto = QRCode$
|
|
822
|
+
var proto = QRCode$1.prototype;
|
|
823
823
|
|
|
824
824
|
proto.addData = function(data) {
|
|
825
825
|
var newData = new BitByte(data);
|
|
@@ -891,7 +891,7 @@ proto.makeImpl = function(test, maskPattern) {
|
|
|
891
891
|
}
|
|
892
892
|
|
|
893
893
|
if (this.dataCache == null) {
|
|
894
|
-
this.dataCache = QRCode$
|
|
894
|
+
this.dataCache = QRCode$1.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
|
|
895
895
|
}
|
|
896
896
|
|
|
897
897
|
this.mapData(this.dataCache, maskPattern);
|
|
@@ -1118,10 +1118,10 @@ proto.mapData = function(data, maskPattern) {
|
|
|
1118
1118
|
}
|
|
1119
1119
|
};
|
|
1120
1120
|
|
|
1121
|
-
QRCode$
|
|
1122
|
-
QRCode$
|
|
1121
|
+
QRCode$1.PAD0 = 0xEC;
|
|
1122
|
+
QRCode$1.PAD1 = 0x11;
|
|
1123
1123
|
|
|
1124
|
-
QRCode$
|
|
1124
|
+
QRCode$1.createData = function(typeNumber, errorCorrectLevel, dataList) {
|
|
1125
1125
|
|
|
1126
1126
|
var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
|
|
1127
1127
|
|
|
@@ -1164,18 +1164,18 @@ QRCode$2.createData = function(typeNumber, errorCorrectLevel, dataList) {
|
|
|
1164
1164
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1165
1165
|
break;
|
|
1166
1166
|
}
|
|
1167
|
-
buffer.put(QRCode$
|
|
1167
|
+
buffer.put(QRCode$1.PAD0, 8);
|
|
1168
1168
|
|
|
1169
1169
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1170
1170
|
break;
|
|
1171
1171
|
}
|
|
1172
|
-
buffer.put(QRCode$
|
|
1172
|
+
buffer.put(QRCode$1.PAD1, 8);
|
|
1173
1173
|
}
|
|
1174
1174
|
|
|
1175
|
-
return QRCode$
|
|
1175
|
+
return QRCode$1.createBytes(buffer, rsBlocks);
|
|
1176
1176
|
};
|
|
1177
1177
|
|
|
1178
|
-
QRCode$
|
|
1178
|
+
QRCode$1.createBytes = function(buffer, rsBlocks) {
|
|
1179
1179
|
|
|
1180
1180
|
var offset = 0;
|
|
1181
1181
|
|
|
@@ -1239,24 +1239,7 @@ QRCode$2.createBytes = function(buffer, rsBlocks) {
|
|
|
1239
1239
|
return data;
|
|
1240
1240
|
};
|
|
1241
1241
|
|
|
1242
|
-
var QRCode_1 = QRCode$
|
|
1243
|
-
|
|
1244
|
-
var QRCode$1 = QRCode_1;
|
|
1245
|
-
var ErrorCorrectLevel = ErrorCorrectLevel$1;
|
|
1246
|
-
|
|
1247
|
-
var qrcode = function(data, opt) {
|
|
1248
|
-
opt = opt || {};
|
|
1249
|
-
var qr = new QRCode$1(opt.typeNumber || -1,
|
|
1250
|
-
opt.errorCorrectLevel || ErrorCorrectLevel.H);
|
|
1251
|
-
qr.addData(data);
|
|
1252
|
-
qr.make();
|
|
1253
|
-
|
|
1254
|
-
return qr;
|
|
1255
|
-
};
|
|
1256
|
-
|
|
1257
|
-
qrcode.ErrorCorrectLevel = ErrorCorrectLevel;
|
|
1258
|
-
|
|
1259
|
-
var qr_js = qrcode;
|
|
1242
|
+
var QRCode_1 = QRCode$1;
|
|
1260
1243
|
|
|
1261
1244
|
var defaultErrorCorrectLevel = 'H';
|
|
1262
1245
|
// Thanks the `qrcode.react`
|
|
@@ -1269,12 +1252,16 @@ var SUPPORTS_PATH2D = (function () {
|
|
|
1269
1252
|
}
|
|
1270
1253
|
return true;
|
|
1271
1254
|
})();
|
|
1272
|
-
function QRCode(data,
|
|
1255
|
+
function QRCode(data, level) {
|
|
1256
|
+
var errorCorrectLevel = ErrorCorrectLevel[level];
|
|
1273
1257
|
// We'll use type===-1 to force QRCode to automatically pick the best type
|
|
1274
|
-
|
|
1258
|
+
var qrcode = new QRCode_1(-1, errorCorrectLevel);
|
|
1259
|
+
qrcode.addData(toUTF8String(data));
|
|
1260
|
+
qrcode.make();
|
|
1261
|
+
return qrcode;
|
|
1275
1262
|
}
|
|
1276
1263
|
function validErrorCorrectLevel(level) {
|
|
1277
|
-
return level in
|
|
1264
|
+
return level in ErrorCorrectLevel;
|
|
1278
1265
|
}
|
|
1279
1266
|
/**
|
|
1280
1267
|
* Encode UTF16 to UTF8.
|
|
@@ -1323,7 +1310,7 @@ function generatePath(modules, margin) {
|
|
|
1323
1310
|
if (!cell && start !== null) {
|
|
1324
1311
|
// M0 0h7v1H0z injects the space with the move and drops the comma,
|
|
1325
1312
|
// saving a char per operation
|
|
1326
|
-
ops.push("M"
|
|
1313
|
+
ops.push("M".concat(start + margin, " ").concat(y + margin, "h").concat(x - start, "v1H").concat(start + margin, "z"));
|
|
1327
1314
|
start = null;
|
|
1328
1315
|
return;
|
|
1329
1316
|
}
|
|
@@ -1336,11 +1323,11 @@ function generatePath(modules, margin) {
|
|
|
1336
1323
|
}
|
|
1337
1324
|
if (start === null) {
|
|
1338
1325
|
// Just a single dark module.
|
|
1339
|
-
ops.push("M"
|
|
1326
|
+
ops.push("M".concat(x + margin, ",").concat(y + margin, " h1v1H").concat(x + margin, "z"));
|
|
1340
1327
|
}
|
|
1341
1328
|
else {
|
|
1342
1329
|
// Otherwise finish the current line.
|
|
1343
|
-
ops.push("M"
|
|
1330
|
+
ops.push("M".concat(start + margin, ",").concat(y + margin, " h").concat(x + 1 - start, "v1H").concat(start + margin, "z"));
|
|
1344
1331
|
}
|
|
1345
1332
|
return;
|
|
1346
1333
|
}
|
|
@@ -1355,36 +1342,36 @@ var QRCodeProps = {
|
|
|
1355
1342
|
value: {
|
|
1356
1343
|
type: String,
|
|
1357
1344
|
required: true,
|
|
1358
|
-
"default": ''
|
|
1345
|
+
"default": ''
|
|
1359
1346
|
},
|
|
1360
1347
|
size: {
|
|
1361
1348
|
type: Number,
|
|
1362
|
-
"default": 100
|
|
1349
|
+
"default": 100
|
|
1363
1350
|
},
|
|
1364
1351
|
level: {
|
|
1365
1352
|
type: String,
|
|
1366
1353
|
"default": defaultErrorCorrectLevel,
|
|
1367
|
-
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1354
|
+
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1368
1355
|
},
|
|
1369
1356
|
background: {
|
|
1370
1357
|
type: String,
|
|
1371
|
-
"default": '#fff'
|
|
1358
|
+
"default": '#fff'
|
|
1372
1359
|
},
|
|
1373
1360
|
foreground: {
|
|
1374
1361
|
type: String,
|
|
1375
|
-
"default": '#000'
|
|
1362
|
+
"default": '#000'
|
|
1376
1363
|
},
|
|
1377
1364
|
margin: {
|
|
1378
1365
|
type: Number,
|
|
1379
1366
|
required: false,
|
|
1380
|
-
"default": 0
|
|
1381
|
-
}
|
|
1367
|
+
"default": 0
|
|
1368
|
+
}
|
|
1382
1369
|
};
|
|
1383
1370
|
var QRCodeVueProps = __assign(__assign({}, QRCodeProps), { renderAs: {
|
|
1384
1371
|
type: String,
|
|
1385
1372
|
required: false,
|
|
1386
1373
|
"default": 'canvas',
|
|
1387
|
-
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1374
|
+
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1388
1375
|
} });
|
|
1389
1376
|
var QRCodeSvg = vue.defineComponent({
|
|
1390
1377
|
name: 'QRCodeSvg',
|
|
@@ -1394,7 +1381,7 @@ var QRCodeSvg = vue.defineComponent({
|
|
|
1394
1381
|
var fgPath = vue.ref('');
|
|
1395
1382
|
var generate = function () {
|
|
1396
1383
|
var value = props.value, level = props.level, margin = props.margin;
|
|
1397
|
-
var cells = QRCode(value,
|
|
1384
|
+
var cells = QRCode(value, level).modules;
|
|
1398
1385
|
numCells.value = cells.length + margin * 2;
|
|
1399
1386
|
// Drawing strategy: instead of a rect per module, we're going to create a
|
|
1400
1387
|
// single path for the dark modules and layer that on top of a light rect,
|
|
@@ -1411,15 +1398,15 @@ var QRCodeSvg = vue.defineComponent({
|
|
|
1411
1398
|
height: props.size,
|
|
1412
1399
|
'shape-rendering': "crispEdges",
|
|
1413
1400
|
xmlns: 'http://www.w3.org/2000/svg',
|
|
1414
|
-
viewBox: "0 0 "
|
|
1401
|
+
viewBox: "0 0 ".concat(numCells.value, " ").concat(numCells.value)
|
|
1415
1402
|
}, [
|
|
1416
1403
|
vue.h('path', {
|
|
1417
1404
|
fill: props.background,
|
|
1418
|
-
d: "M0,0 h"
|
|
1405
|
+
d: "M0,0 h".concat(numCells.value, "v").concat(numCells.value, "H0z")
|
|
1419
1406
|
}),
|
|
1420
1407
|
vue.h('path', { fill: props.foreground, d: fgPath.value }),
|
|
1421
1408
|
]); };
|
|
1422
|
-
}
|
|
1409
|
+
}
|
|
1423
1410
|
});
|
|
1424
1411
|
var QRCodeCanvas = vue.defineComponent({
|
|
1425
1412
|
name: 'QRCodeCanvas',
|
|
@@ -1428,7 +1415,7 @@ var QRCodeCanvas = vue.defineComponent({
|
|
|
1428
1415
|
var canvasEl = vue.ref(null);
|
|
1429
1416
|
var generate = function () {
|
|
1430
1417
|
var value = props.value, level = props.level, size = props.size, margin = props.margin, background = props.background, foreground = props.foreground;
|
|
1431
|
-
var cells = QRCode(value,
|
|
1418
|
+
var cells = QRCode(value, level).modules;
|
|
1432
1419
|
var numCells = cells.length + margin * 2;
|
|
1433
1420
|
var canvas = canvasEl.value;
|
|
1434
1421
|
if (!canvas) {
|
|
@@ -1462,9 +1449,9 @@ var QRCodeCanvas = vue.defineComponent({
|
|
|
1462
1449
|
vue.onUpdated(generate);
|
|
1463
1450
|
return function () { return vue.h('canvas', {
|
|
1464
1451
|
ref: canvasEl,
|
|
1465
|
-
style: { width: props.size
|
|
1452
|
+
style: { width: "".concat(props.size, "px"), height: "".concat(props.size, "px") }
|
|
1466
1453
|
}); };
|
|
1467
|
-
}
|
|
1454
|
+
}
|
|
1468
1455
|
});
|
|
1469
1456
|
var QrcodeVue = vue.defineComponent({
|
|
1470
1457
|
name: 'Qrcode',
|
|
@@ -1475,7 +1462,7 @@ var QrcodeVue = vue.defineComponent({
|
|
|
1475
1462
|
var level = validErrorCorrectLevel(_level) ? _level : defaultErrorCorrectLevel;
|
|
1476
1463
|
return vue.h(renderAs === 'svg' ? QRCodeSvg : QRCodeCanvas, { value: value, size: size, margin: margin, level: level, background: background, foreground: foreground });
|
|
1477
1464
|
},
|
|
1478
|
-
props: QRCodeVueProps
|
|
1465
|
+
props: QRCodeVueProps
|
|
1479
1466
|
});
|
|
1480
1467
|
|
|
1481
1468
|
module.exports = QrcodeVue;
|
package/dist/qrcode.vue.esm.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* qrcode.vue v3.3.
|
|
2
|
+
* qrcode.vue v3.3.4
|
|
3
3
|
* A Vue.js component to generate QRCode.
|
|
4
|
-
* © 2017-
|
|
4
|
+
* © 2017-2023 @scopewu(https://github.com/scopewu)
|
|
5
5
|
* MIT License.
|
|
6
6
|
*/
|
|
7
7
|
import { defineComponent, ref, onUpdated, h, onMounted } from 'vue';
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
/******************************************************************************
|
|
10
10
|
Copyright (c) Microsoft Corporation.
|
|
11
11
|
|
|
12
12
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -62,7 +62,7 @@ QR8bitByte.prototype = {
|
|
|
62
62
|
|
|
63
63
|
var _8BitByte = QR8bitByte;
|
|
64
64
|
|
|
65
|
-
var ErrorCorrectLevel
|
|
65
|
+
var ErrorCorrectLevel = {
|
|
66
66
|
L : 1,
|
|
67
67
|
M : 0,
|
|
68
68
|
Q : 3,
|
|
@@ -70,7 +70,7 @@ var ErrorCorrectLevel$1 = {
|
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
// ErrorCorrectLevel
|
|
73
|
-
var ECL = ErrorCorrectLevel
|
|
73
|
+
var ECL = ErrorCorrectLevel;
|
|
74
74
|
|
|
75
75
|
function QRRSBlock(totalCount, dataCount) {
|
|
76
76
|
this.totalCount = totalCount;
|
|
@@ -807,7 +807,7 @@ var BitBuffer = BitBuffer$1;
|
|
|
807
807
|
var util = util$1;
|
|
808
808
|
var Polynomial = Polynomial$2;
|
|
809
809
|
|
|
810
|
-
function QRCode$
|
|
810
|
+
function QRCode$1(typeNumber, errorCorrectLevel) {
|
|
811
811
|
this.typeNumber = typeNumber;
|
|
812
812
|
this.errorCorrectLevel = errorCorrectLevel;
|
|
813
813
|
this.modules = null;
|
|
@@ -817,7 +817,7 @@ function QRCode$2(typeNumber, errorCorrectLevel) {
|
|
|
817
817
|
}
|
|
818
818
|
|
|
819
819
|
// for client side minification
|
|
820
|
-
var proto = QRCode$
|
|
820
|
+
var proto = QRCode$1.prototype;
|
|
821
821
|
|
|
822
822
|
proto.addData = function(data) {
|
|
823
823
|
var newData = new BitByte(data);
|
|
@@ -889,7 +889,7 @@ proto.makeImpl = function(test, maskPattern) {
|
|
|
889
889
|
}
|
|
890
890
|
|
|
891
891
|
if (this.dataCache == null) {
|
|
892
|
-
this.dataCache = QRCode$
|
|
892
|
+
this.dataCache = QRCode$1.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
|
|
893
893
|
}
|
|
894
894
|
|
|
895
895
|
this.mapData(this.dataCache, maskPattern);
|
|
@@ -1116,10 +1116,10 @@ proto.mapData = function(data, maskPattern) {
|
|
|
1116
1116
|
}
|
|
1117
1117
|
};
|
|
1118
1118
|
|
|
1119
|
-
QRCode$
|
|
1120
|
-
QRCode$
|
|
1119
|
+
QRCode$1.PAD0 = 0xEC;
|
|
1120
|
+
QRCode$1.PAD1 = 0x11;
|
|
1121
1121
|
|
|
1122
|
-
QRCode$
|
|
1122
|
+
QRCode$1.createData = function(typeNumber, errorCorrectLevel, dataList) {
|
|
1123
1123
|
|
|
1124
1124
|
var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
|
|
1125
1125
|
|
|
@@ -1162,18 +1162,18 @@ QRCode$2.createData = function(typeNumber, errorCorrectLevel, dataList) {
|
|
|
1162
1162
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1163
1163
|
break;
|
|
1164
1164
|
}
|
|
1165
|
-
buffer.put(QRCode$
|
|
1165
|
+
buffer.put(QRCode$1.PAD0, 8);
|
|
1166
1166
|
|
|
1167
1167
|
if (buffer.getLengthInBits() >= totalDataCount * 8) {
|
|
1168
1168
|
break;
|
|
1169
1169
|
}
|
|
1170
|
-
buffer.put(QRCode$
|
|
1170
|
+
buffer.put(QRCode$1.PAD1, 8);
|
|
1171
1171
|
}
|
|
1172
1172
|
|
|
1173
|
-
return QRCode$
|
|
1173
|
+
return QRCode$1.createBytes(buffer, rsBlocks);
|
|
1174
1174
|
};
|
|
1175
1175
|
|
|
1176
|
-
QRCode$
|
|
1176
|
+
QRCode$1.createBytes = function(buffer, rsBlocks) {
|
|
1177
1177
|
|
|
1178
1178
|
var offset = 0;
|
|
1179
1179
|
|
|
@@ -1237,24 +1237,7 @@ QRCode$2.createBytes = function(buffer, rsBlocks) {
|
|
|
1237
1237
|
return data;
|
|
1238
1238
|
};
|
|
1239
1239
|
|
|
1240
|
-
var QRCode_1 = QRCode$
|
|
1241
|
-
|
|
1242
|
-
var QRCode$1 = QRCode_1;
|
|
1243
|
-
var ErrorCorrectLevel = ErrorCorrectLevel$1;
|
|
1244
|
-
|
|
1245
|
-
var qrcode = function(data, opt) {
|
|
1246
|
-
opt = opt || {};
|
|
1247
|
-
var qr = new QRCode$1(opt.typeNumber || -1,
|
|
1248
|
-
opt.errorCorrectLevel || ErrorCorrectLevel.H);
|
|
1249
|
-
qr.addData(data);
|
|
1250
|
-
qr.make();
|
|
1251
|
-
|
|
1252
|
-
return qr;
|
|
1253
|
-
};
|
|
1254
|
-
|
|
1255
|
-
qrcode.ErrorCorrectLevel = ErrorCorrectLevel;
|
|
1256
|
-
|
|
1257
|
-
var qr_js = qrcode;
|
|
1240
|
+
var QRCode_1 = QRCode$1;
|
|
1258
1241
|
|
|
1259
1242
|
var defaultErrorCorrectLevel = 'H';
|
|
1260
1243
|
// Thanks the `qrcode.react`
|
|
@@ -1267,12 +1250,16 @@ var SUPPORTS_PATH2D = (function () {
|
|
|
1267
1250
|
}
|
|
1268
1251
|
return true;
|
|
1269
1252
|
})();
|
|
1270
|
-
function QRCode(data,
|
|
1253
|
+
function QRCode(data, level) {
|
|
1254
|
+
var errorCorrectLevel = ErrorCorrectLevel[level];
|
|
1271
1255
|
// We'll use type===-1 to force QRCode to automatically pick the best type
|
|
1272
|
-
|
|
1256
|
+
var qrcode = new QRCode_1(-1, errorCorrectLevel);
|
|
1257
|
+
qrcode.addData(toUTF8String(data));
|
|
1258
|
+
qrcode.make();
|
|
1259
|
+
return qrcode;
|
|
1273
1260
|
}
|
|
1274
1261
|
function validErrorCorrectLevel(level) {
|
|
1275
|
-
return level in
|
|
1262
|
+
return level in ErrorCorrectLevel;
|
|
1276
1263
|
}
|
|
1277
1264
|
/**
|
|
1278
1265
|
* Encode UTF16 to UTF8.
|
|
@@ -1321,7 +1308,7 @@ function generatePath(modules, margin) {
|
|
|
1321
1308
|
if (!cell && start !== null) {
|
|
1322
1309
|
// M0 0h7v1H0z injects the space with the move and drops the comma,
|
|
1323
1310
|
// saving a char per operation
|
|
1324
|
-
ops.push("M"
|
|
1311
|
+
ops.push("M".concat(start + margin, " ").concat(y + margin, "h").concat(x - start, "v1H").concat(start + margin, "z"));
|
|
1325
1312
|
start = null;
|
|
1326
1313
|
return;
|
|
1327
1314
|
}
|
|
@@ -1334,11 +1321,11 @@ function generatePath(modules, margin) {
|
|
|
1334
1321
|
}
|
|
1335
1322
|
if (start === null) {
|
|
1336
1323
|
// Just a single dark module.
|
|
1337
|
-
ops.push("M"
|
|
1324
|
+
ops.push("M".concat(x + margin, ",").concat(y + margin, " h1v1H").concat(x + margin, "z"));
|
|
1338
1325
|
}
|
|
1339
1326
|
else {
|
|
1340
1327
|
// Otherwise finish the current line.
|
|
1341
|
-
ops.push("M"
|
|
1328
|
+
ops.push("M".concat(start + margin, ",").concat(y + margin, " h").concat(x + 1 - start, "v1H").concat(start + margin, "z"));
|
|
1342
1329
|
}
|
|
1343
1330
|
return;
|
|
1344
1331
|
}
|
|
@@ -1353,36 +1340,36 @@ var QRCodeProps = {
|
|
|
1353
1340
|
value: {
|
|
1354
1341
|
type: String,
|
|
1355
1342
|
required: true,
|
|
1356
|
-
"default": ''
|
|
1343
|
+
"default": ''
|
|
1357
1344
|
},
|
|
1358
1345
|
size: {
|
|
1359
1346
|
type: Number,
|
|
1360
|
-
"default": 100
|
|
1347
|
+
"default": 100
|
|
1361
1348
|
},
|
|
1362
1349
|
level: {
|
|
1363
1350
|
type: String,
|
|
1364
1351
|
"default": defaultErrorCorrectLevel,
|
|
1365
|
-
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1352
|
+
validator: function (l) { return validErrorCorrectLevel(l); }
|
|
1366
1353
|
},
|
|
1367
1354
|
background: {
|
|
1368
1355
|
type: String,
|
|
1369
|
-
"default": '#fff'
|
|
1356
|
+
"default": '#fff'
|
|
1370
1357
|
},
|
|
1371
1358
|
foreground: {
|
|
1372
1359
|
type: String,
|
|
1373
|
-
"default": '#000'
|
|
1360
|
+
"default": '#000'
|
|
1374
1361
|
},
|
|
1375
1362
|
margin: {
|
|
1376
1363
|
type: Number,
|
|
1377
1364
|
required: false,
|
|
1378
|
-
"default": 0
|
|
1379
|
-
}
|
|
1365
|
+
"default": 0
|
|
1366
|
+
}
|
|
1380
1367
|
};
|
|
1381
1368
|
var QRCodeVueProps = __assign(__assign({}, QRCodeProps), { renderAs: {
|
|
1382
1369
|
type: String,
|
|
1383
1370
|
required: false,
|
|
1384
1371
|
"default": 'canvas',
|
|
1385
|
-
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1372
|
+
validator: function (as) { return ['canvas', 'svg'].indexOf(as) > -1; }
|
|
1386
1373
|
} });
|
|
1387
1374
|
var QRCodeSvg = defineComponent({
|
|
1388
1375
|
name: 'QRCodeSvg',
|
|
@@ -1392,7 +1379,7 @@ var QRCodeSvg = defineComponent({
|
|
|
1392
1379
|
var fgPath = ref('');
|
|
1393
1380
|
var generate = function () {
|
|
1394
1381
|
var value = props.value, level = props.level, margin = props.margin;
|
|
1395
|
-
var cells = QRCode(value,
|
|
1382
|
+
var cells = QRCode(value, level).modules;
|
|
1396
1383
|
numCells.value = cells.length + margin * 2;
|
|
1397
1384
|
// Drawing strategy: instead of a rect per module, we're going to create a
|
|
1398
1385
|
// single path for the dark modules and layer that on top of a light rect,
|
|
@@ -1409,15 +1396,15 @@ var QRCodeSvg = defineComponent({
|
|
|
1409
1396
|
height: props.size,
|
|
1410
1397
|
'shape-rendering': "crispEdges",
|
|
1411
1398
|
xmlns: 'http://www.w3.org/2000/svg',
|
|
1412
|
-
viewBox: "0 0 "
|
|
1399
|
+
viewBox: "0 0 ".concat(numCells.value, " ").concat(numCells.value)
|
|
1413
1400
|
}, [
|
|
1414
1401
|
h('path', {
|
|
1415
1402
|
fill: props.background,
|
|
1416
|
-
d: "M0,0 h"
|
|
1403
|
+
d: "M0,0 h".concat(numCells.value, "v").concat(numCells.value, "H0z")
|
|
1417
1404
|
}),
|
|
1418
1405
|
h('path', { fill: props.foreground, d: fgPath.value }),
|
|
1419
1406
|
]); };
|
|
1420
|
-
}
|
|
1407
|
+
}
|
|
1421
1408
|
});
|
|
1422
1409
|
var QRCodeCanvas = defineComponent({
|
|
1423
1410
|
name: 'QRCodeCanvas',
|
|
@@ -1426,7 +1413,7 @@ var QRCodeCanvas = defineComponent({
|
|
|
1426
1413
|
var canvasEl = ref(null);
|
|
1427
1414
|
var generate = function () {
|
|
1428
1415
|
var value = props.value, level = props.level, size = props.size, margin = props.margin, background = props.background, foreground = props.foreground;
|
|
1429
|
-
var cells = QRCode(value,
|
|
1416
|
+
var cells = QRCode(value, level).modules;
|
|
1430
1417
|
var numCells = cells.length + margin * 2;
|
|
1431
1418
|
var canvas = canvasEl.value;
|
|
1432
1419
|
if (!canvas) {
|
|
@@ -1460,9 +1447,9 @@ var QRCodeCanvas = defineComponent({
|
|
|
1460
1447
|
onUpdated(generate);
|
|
1461
1448
|
return function () { return h('canvas', {
|
|
1462
1449
|
ref: canvasEl,
|
|
1463
|
-
style: { width: props.size
|
|
1450
|
+
style: { width: "".concat(props.size, "px"), height: "".concat(props.size, "px") }
|
|
1464
1451
|
}); };
|
|
1465
|
-
}
|
|
1452
|
+
}
|
|
1466
1453
|
});
|
|
1467
1454
|
var QrcodeVue = defineComponent({
|
|
1468
1455
|
name: 'Qrcode',
|
|
@@ -1473,7 +1460,7 @@ var QrcodeVue = defineComponent({
|
|
|
1473
1460
|
var level = validErrorCorrectLevel(_level) ? _level : defaultErrorCorrectLevel;
|
|
1474
1461
|
return h(renderAs === 'svg' ? QRCodeSvg : QRCodeCanvas, { value: value, size: size, margin: margin, level: level, background: background, foreground: foreground });
|
|
1475
1462
|
},
|
|
1476
|
-
props: QRCodeVueProps
|
|
1463
|
+
props: QRCodeVueProps
|
|
1477
1464
|
});
|
|
1478
1465
|
|
|
1479
1466
|
export { QrcodeVue as default };
|
package/package.json
CHANGED
|
@@ -1,17 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "qrcode.vue",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.4",
|
|
4
4
|
"description": "A Vue.js component to generate QRCode.",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
"
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/qrcode.vue.cjs.js",
|
|
7
|
+
"module": "./dist/qrcode.vue.esm.js",
|
|
8
|
+
"browser": "./dist/qrcode.vue.browser.js",
|
|
9
|
+
"unpkg": "./dist/qrcode.vue.browser.min.js",
|
|
10
|
+
"jsdelivr": "./dist/qrcode.vue.browser.min.js",
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/qrcode.vue.esm.js",
|
|
16
|
+
"require": "./dist/qrcode.vue.cjs.js"
|
|
17
|
+
},
|
|
18
|
+
"./package": "./package.json"
|
|
19
|
+
},
|
|
11
20
|
"scripts": {
|
|
12
|
-
"start": "webpack serve --config webpack.config.js --mode=development
|
|
13
|
-
"build": "rimraf dist && rollup -c"
|
|
14
|
-
"prepublishOnly": "npm run build"
|
|
21
|
+
"start": "webpack serve --config webpack.config.js --mode=development",
|
|
22
|
+
"build": "rimraf dist && rollup -c"
|
|
15
23
|
},
|
|
16
24
|
"repository": {
|
|
17
25
|
"type": "git",
|
|
@@ -36,27 +44,28 @@
|
|
|
36
44
|
"bugs": {
|
|
37
45
|
"url": "https://github.com/scopewu/qrcode.vue/issues"
|
|
38
46
|
},
|
|
39
|
-
"homepage": "https://
|
|
47
|
+
"homepage": "https://qr-vue.tie.pub",
|
|
40
48
|
"peerDependencies": {
|
|
41
49
|
"vue": "^3.0.0"
|
|
42
50
|
},
|
|
43
51
|
"dependencies": {},
|
|
44
52
|
"devDependencies": {
|
|
45
|
-
"@rollup/plugin-commonjs": "^
|
|
46
|
-
"@
|
|
47
|
-
"@
|
|
48
|
-
"
|
|
53
|
+
"@rollup/plugin-commonjs": "^24.0.1",
|
|
54
|
+
"@rollup/plugin-node-resolve": "^15.0.1",
|
|
55
|
+
"@rollup/plugin-terser": "^0.4.0",
|
|
56
|
+
"@vue/compiler-sfc": "^3.2.47",
|
|
57
|
+
"@vue/server-renderer": "^3.2.47",
|
|
58
|
+
"html-webpack-plugin": "^5.5.0",
|
|
49
59
|
"qr.js": "^0.0.0",
|
|
50
|
-
"rimraf": "^
|
|
51
|
-
"rollup": "^
|
|
52
|
-
"rollup-plugin-
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"vue": "
|
|
57
|
-
"
|
|
58
|
-
"webpack": "^5.
|
|
59
|
-
"webpack-
|
|
60
|
-
"webpack-dev-server": "^4.2.0"
|
|
60
|
+
"rimraf": "^4.4.0",
|
|
61
|
+
"rollup": "^3.19.1",
|
|
62
|
+
"rollup-plugin-typescript2": "^0.34.1",
|
|
63
|
+
"ts-loader": "^9.4.2",
|
|
64
|
+
"typescript": "^4.9.5",
|
|
65
|
+
"vue": "^3.2.47",
|
|
66
|
+
"vue-loader": "^17.0.1",
|
|
67
|
+
"webpack": "^5.76.1",
|
|
68
|
+
"webpack-cli": "^5.0.1",
|
|
69
|
+
"webpack-dev-server": "^4.11.1"
|
|
61
70
|
}
|
|
62
71
|
}
|