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 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<"L" | "M" | "Q" | "H">;
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, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
37
- renderAs?: unknown;
38
- value?: unknown;
39
- size?: unknown;
40
- level?: unknown;
41
- background?: unknown;
42
- foreground?: unknown;
43
- margin?: unknown;
44
- } & {
45
- value: string;
46
- size: number;
47
- level: "L" | "M" | "Q" | "H";
48
- background: string;
49
- foreground: string;
50
- margin: number;
51
- renderAs: "canvas" | "svg";
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: "L" | "M" | "Q" | "H";
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
2
+ * qrcode.vue v3.3.4
3
3
  * A Vue.js component to generate QRCode.
4
- * © 2017-2021 @scopewu(https://github.com/scopewu)
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$1 = {
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$1;
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$2(typeNumber, errorCorrectLevel) {
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$2.prototype;
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$2.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
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$2.PAD0 = 0xEC;
1124
- QRCode$2.PAD1 = 0x11;
1123
+ QRCode$1.PAD0 = 0xEC;
1124
+ QRCode$1.PAD1 = 0x11;
1125
1125
 
1126
- QRCode$2.createData = function(typeNumber, errorCorrectLevel, dataList) {
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$2.PAD0, 8);
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$2.PAD1, 8);
1174
+ buffer.put(QRCode$1.PAD1, 8);
1175
1175
  }
1176
1176
 
1177
- return QRCode$2.createBytes(buffer, rsBlocks);
1177
+ return QRCode$1.createBytes(buffer, rsBlocks);
1178
1178
  };
1179
1179
 
1180
- QRCode$2.createBytes = function(buffer, rsBlocks) {
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$2;
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, errorCorrectLevel) {
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
- return qr_js(toUTF8String(data), { typeNumber: -1, errorCorrectLevel: errorCorrectLevel });
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 qr_js.ErrorCorrectLevel;
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" + (start + margin) + " " + (y + margin) + "h" + (x - start) + "v1H" + (start + margin) + "z");
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" + (x + margin) + "," + (y + margin) + " h1v1H" + (x + margin) + "z");
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" + (start + margin) + "," + (y + margin) + " h" + (x + 1 - start) + "v1H" + (start + margin) + "z");
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, qr_js.ErrorCorrectLevel[level]).modules;
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 " + numCells.value + " " + numCells.value,
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" + numCells.value + "v" + numCells.value + "H0z",
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, qr_js.ErrorCorrectLevel[level]).modules;
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 + "px", height: props.size + "px" },
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
2
+ * qrcode.vue v3.3.4
3
3
  * A Vue.js component to generate QRCode.
4
- * © 2017-2021 @scopewu(https://github.com/scopewu)
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})}));
@@ -1,14 +1,14 @@
1
1
  /*!
2
- * qrcode.vue v3.3.2
2
+ * qrcode.vue v3.3.4
3
3
  * A Vue.js component to generate QRCode.
4
- * © 2017-2021 @scopewu(https://github.com/scopewu)
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$1 = {
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$1;
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$2(typeNumber, errorCorrectLevel) {
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$2.prototype;
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$2.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
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$2.PAD0 = 0xEC;
1122
- QRCode$2.PAD1 = 0x11;
1121
+ QRCode$1.PAD0 = 0xEC;
1122
+ QRCode$1.PAD1 = 0x11;
1123
1123
 
1124
- QRCode$2.createData = function(typeNumber, errorCorrectLevel, dataList) {
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$2.PAD0, 8);
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$2.PAD1, 8);
1172
+ buffer.put(QRCode$1.PAD1, 8);
1173
1173
  }
1174
1174
 
1175
- return QRCode$2.createBytes(buffer, rsBlocks);
1175
+ return QRCode$1.createBytes(buffer, rsBlocks);
1176
1176
  };
1177
1177
 
1178
- QRCode$2.createBytes = function(buffer, rsBlocks) {
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$2;
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, errorCorrectLevel) {
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
- return qr_js(toUTF8String(data), { typeNumber: -1, errorCorrectLevel: errorCorrectLevel });
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 qr_js.ErrorCorrectLevel;
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" + (start + margin) + " " + (y + margin) + "h" + (x - start) + "v1H" + (start + margin) + "z");
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" + (x + margin) + "," + (y + margin) + " h1v1H" + (x + margin) + "z");
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" + (start + margin) + "," + (y + margin) + " h" + (x + 1 - start) + "v1H" + (start + margin) + "z");
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, qr_js.ErrorCorrectLevel[level]).modules;
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 " + numCells.value + " " + numCells.value,
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" + numCells.value + "v" + numCells.value + "H0z",
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, qr_js.ErrorCorrectLevel[level]).modules;
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 + "px", height: props.size + "px" },
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;
@@ -1,12 +1,12 @@
1
1
  /*!
2
- * qrcode.vue v3.3.2
2
+ * qrcode.vue v3.3.4
3
3
  * A Vue.js component to generate QRCode.
4
- * © 2017-2021 @scopewu(https://github.com/scopewu)
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$1 = {
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$1;
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$2(typeNumber, errorCorrectLevel) {
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$2.prototype;
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$2.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
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$2.PAD0 = 0xEC;
1120
- QRCode$2.PAD1 = 0x11;
1119
+ QRCode$1.PAD0 = 0xEC;
1120
+ QRCode$1.PAD1 = 0x11;
1121
1121
 
1122
- QRCode$2.createData = function(typeNumber, errorCorrectLevel, dataList) {
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$2.PAD0, 8);
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$2.PAD1, 8);
1170
+ buffer.put(QRCode$1.PAD1, 8);
1171
1171
  }
1172
1172
 
1173
- return QRCode$2.createBytes(buffer, rsBlocks);
1173
+ return QRCode$1.createBytes(buffer, rsBlocks);
1174
1174
  };
1175
1175
 
1176
- QRCode$2.createBytes = function(buffer, rsBlocks) {
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$2;
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, errorCorrectLevel) {
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
- return qr_js(toUTF8String(data), { typeNumber: -1, errorCorrectLevel: errorCorrectLevel });
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 qr_js.ErrorCorrectLevel;
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" + (start + margin) + " " + (y + margin) + "h" + (x - start) + "v1H" + (start + margin) + "z");
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" + (x + margin) + "," + (y + margin) + " h1v1H" + (x + margin) + "z");
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" + (start + margin) + "," + (y + margin) + " h" + (x + 1 - start) + "v1H" + (start + margin) + "z");
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, qr_js.ErrorCorrectLevel[level]).modules;
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 " + numCells.value + " " + numCells.value,
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" + numCells.value + "v" + numCells.value + "H0z",
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, qr_js.ErrorCorrectLevel[level]).modules;
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 + "px", height: props.size + "px" },
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.2",
3
+ "version": "3.3.4",
4
4
  "description": "A Vue.js component to generate QRCode.",
5
- "main": "dist/qrcode.vue.cjs.js",
6
- "module": "dist/qrcode.vue.esm.js",
7
- "browser": "dist/qrcode.vue.browser.js",
8
- "unpkg": "dist/qrcode.vue.browser.min.js",
9
- "jsdelivr": "dist/qrcode.vue.browser.min.js",
10
- "typings": "dist/index.d.ts",
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 --open",
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://scopewu.github.io/qrcode.vue/",
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": "^20.0.0",
46
- "@vue/compiler-sfc": "^3.2.11",
47
- "@vue/server-renderer": "^3.2.11",
48
- "html-webpack-plugin": "^5.3.2",
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": "^3.0.2",
51
- "rollup": "^2.56.3",
52
- "rollup-plugin-terser": "^7.0.2",
53
- "rollup-plugin-typescript2": "^0.30.0",
54
- "ts-loader": "^9.2.5",
55
- "typescript": "^4.4.3",
56
- "vue": "3.2.11",
57
- "vue-loader": "^16.5.0",
58
- "webpack": "^5.51.1",
59
- "webpack-cli": "^4.8.0",
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
  }