@pelcro/react-pelcro-js 3.6.0-beta.1 → 3.6.0-beta.12

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.cjs.js CHANGED
@@ -2574,7 +2574,7 @@ var voidElements = {
2574
2574
  "wbr": true
2575
2575
  };
2576
2576
 
2577
- var t$1=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function n$1(n){var r={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},i=n.match(/<\/?([^\s]+?)[/\s>]/);if(i&&(r.name=i[1],(voidElements[i[1]]||"/"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith("!--"))){var s=n.indexOf("--\x3e");return {type:"comment",comment:-1!==s?n.slice(4,s):""}}for(var a=new RegExp(t$1),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,""];o.indexOf("=")>-1&&(l=o.split("=")),r.attrs[l[0]]=l[1],a.lastIndex--;}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,i$1=/^\s*$/,s$1=Object.create(null);function a$1(e,t){switch(t.type){case"text":return e+t.content;case"tag":return e+="<"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'="'+e[n]+'"');return t.length?" "+t.join(" "):""}(t.attrs):"")+(t.voidElement?"/>":">"),t.voidElement?e:e+t.children.reduce(a$1,"")+"</"+t.name+">";case"comment":return e+"\x3c!--"+t.comment+"--\x3e"}}var c$2={parse:function(e,t){t||(t={}),t.components||(t.components=s$1);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf("<")){var u=e.indexOf("<");c.push({type:"text",content:-1===u?e:e.substring(0,u)});}return e.replace(r,function(r,s){if(m){if(r!=="</"+a.name+">")return;m=!1;}var u,f="/"!==r.charAt(1),h=r.startsWith("\x3c!--"),p=s+r.length,d=e.charAt(p);if(h){var v=n$1(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,"tag"===(a=n$1(r)).type&&t.components[a.name]&&(a.type="component",m=!0),a.voidElement||m||!d||"<"===d||a.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&"<"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf("<",p),g=e.slice(p,-1===x?void 0:x);i$1.test(g)&&(g=" "),(x>-1&&l+u.length>=0||" "!==g)&&u.push({type:"text",content:g});}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a$1("",t)},"")}};
2577
+ var t$1=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function n$1(n){var r={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},i=n.match(/<\/?([^\s]+?)[/\s>]/);if(i&&(r.name=i[1],(voidElements[i[1]]||"/"===n.charAt(n.length-2))&&(r.voidElement=!0),r.name.startsWith("!--"))){var s=n.indexOf("--\x3e");return {type:"comment",comment:-1!==s?n.slice(4,s):""}}for(var a=new RegExp(t$1),c=null;null!==(c=a.exec(n));)if(c[0].trim())if(c[1]){var o=c[1].trim(),l=[o,""];o.indexOf("=")>-1&&(l=o.split("=")),r.attrs[l[0]]=l[1],a.lastIndex--;}else c[2]&&(r.attrs[c[2]]=c[3].trim().substring(1,c[3].length-1));return r}var r=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,i$2=/^\s*$/,s$1=Object.create(null);function a$1(e,t){switch(t.type){case"text":return e+t.content;case"tag":return e+="<"+t.name+(t.attrs?function(e){var t=[];for(var n in e)t.push(n+'="'+e[n]+'"');return t.length?" "+t.join(" "):""}(t.attrs):"")+(t.voidElement?"/>":">"),t.voidElement?e:e+t.children.reduce(a$1,"")+"</"+t.name+">";case"comment":return e+"\x3c!--"+t.comment+"--\x3e"}}var c$2={parse:function(e,t){t||(t={}),t.components||(t.components=s$1);var a,c=[],o=[],l=-1,m=!1;if(0!==e.indexOf("<")){var u=e.indexOf("<");c.push({type:"text",content:-1===u?e:e.substring(0,u)});}return e.replace(r,function(r,s){if(m){if(r!=="</"+a.name+">")return;m=!1;}var u,f="/"!==r.charAt(1),h=r.startsWith("\x3c!--"),p=s+r.length,d=e.charAt(p);if(h){var v=n$1(r);return l<0?(c.push(v),c):((u=o[l]).children.push(v),c)}if(f&&(l++,"tag"===(a=n$1(r)).type&&t.components[a.name]&&(a.type="component",m=!0),a.voidElement||m||!d||"<"===d||a.children.push({type:"text",content:e.slice(p,e.indexOf("<",p))}),0===l&&c.push(a),(u=o[l-1])&&u.children.push(a),o[l]=a),(!f||a.voidElement)&&(l>-1&&(a.voidElement||a.name===r.slice(2,-1))&&(l--,a=-1===l?c:o[l]),!m&&"<"!==d&&d)){u=-1===l?c:o[l].children;var x=e.indexOf("<",p),g=e.slice(p,-1===x?void 0:x);i$2.test(g)&&(g=" "),(x>-1&&l+u.length>=0||" "!==g)&&u.push({type:"text",content:g});}}),c},stringify:function(e){return e.reduce(function(e,t){return e+a$1("",t)},"")}};
2578
2578
 
2579
2579
  var classCallCheck = createCommonjsModule(function (module) {
2580
2580
  function _classCallCheck(instance, Constructor) {
@@ -8248,7 +8248,7 @@ class SaveToMetadataButtonClass {
8248
8248
 
8249
8249
  const saveToMetadataButton = new SaveToMetadataButtonClass();
8250
8250
 
8251
- let e={data:""},t=t=>"undefined"!=typeof window?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||e,l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(})/g,a=/\/\*[^]*?\*\/|\s\s+|\n/g,n=(e,t)=>{let r,l="",a="",o="";for(let c in e){let s=e[c];"object"==typeof s?(r=t?t.replace(/([^,])+/g,e=>c.replace(/([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):c,a+="@"==c[0]?"f"==c[1]?n(s,c):c+"{"+n(s,"k"==c[1]?"":t)+"}":n(s,r)):"@"==c[0]&&"i"==c[1]?l=c+" "+s+";":(c=c.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=n.p?n.p(c,s):c+":"+s+";");}return o[0]?(r=t?t+"{"+o+"}":o,l+r+a):l+a},o={},c=e=>{let t="";for(let r in e)t+=r+("object"==typeof e[r]?c(e[r]):e[r]);return t},s=(e,t,r,s,i)=>{let p="object"==typeof e?c(e):e,u=o[p]||(o[p]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return "go"+r})(p));if(!o[u]){let t="object"==typeof e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,""));)t[4]&&r.shift(),t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):t[4]||(r[0][t[1]]=t[2]);return r[0]})(e);o[u]=n(i?{["@keyframes "+u]:t}:t,r?"":"."+u);}return ((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e);})(o[u],t,s),u},i=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?"."+t:e&&"object"==typeof e?e.props?"":n(e,""):e;}return e+l+(null==o?"":o)},"");function p(e){let r=this||{},l=e.call?e(r.p):e;return s(l.unshift?l.raw?i(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>t?Object.assign(e,t.call?t(r.p):t):e,{}):l,t(r.target),r.g,r.o,r.k)}let u,f,d;p.bind({g:1});let b=p.bind({k:1});function h(e,t,r,l){n.p=t,u=e,f=r,d=l;}function y(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let c=Object.assign({},n),s=c.className||a.className;r.p=Object.assign({theme:f&&f()},c),r.o=/ *go\d+/.test(s),c.className=p.apply(r,l)+(s?" "+s:""),t&&(c.ref=o);let i=c.as||e;return d&&i[0]&&d(c),u(i,c)}return t?t(a):a}}
8251
+ let e={data:""},t=t=>"undefined"!=typeof window?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||e,l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(})/g,a=/\/\*[^]*?\*\/|\s\s+|\n/g,n=(e,t)=>{let r,l="",a="",o="";for(let c in e){let s=e[c];"object"==typeof s?(r=t?t.replace(/([^,])+/g,e=>c.replace(/([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):c,a+="@"==c[0]?"f"==c[1]?n(s,c):c+"{"+n(s,"k"==c[1]?"":t)+"}":n(s,r)):"@"==c[0]&&"i"==c[1]?l=c+" "+s+";":(c=c.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=n.p?n.p(c,s):c+":"+s+";");}return o[0]?(r=t?t+"{"+o+"}":o,l+r+a):l+a},o={},c=e=>{let t="";for(let r in e)t+=r+("object"==typeof e[r]?c(e[r]):e[r]);return t},s=(e,t,r,s,i)=>{let p="object"==typeof e?c(e):e,u=o[p]||(o[p]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return "go"+r})(p));if(!o[u]){let t="object"==typeof e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,""));)t[4]&&r.shift(),t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):t[4]||(r[0][t[1]]=t[2]);return r[0]})(e);o[u]=n(i?{["@keyframes "+u]:t}:t,r?"":"."+u);}return ((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e);})(o[u],t,s),u},i$1=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?"."+t:e&&"object"==typeof e?e.props?"":n(e,""):e;}return e+l+(null==o?"":o)},"");function p(e){let r=this||{},l=e.call?e(r.p):e;return s(l.unshift?l.raw?i$1(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>t?Object.assign(e,t.call?t(r.p):t):e,{}):l,t(r.target),r.g,r.o,r.k)}let u,f,d;p.bind({g:1});let b=p.bind({k:1});function h(e,t,r,l){n.p=t,u=e,f=r,d=l;}function y(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let c=Object.assign({},n),s=c.className||a.className;r.p=Object.assign({theme:f&&f()},c),r.o=/ *go\d+/.test(s),c.className=p.apply(r,l)+(s?" "+s:""),t&&(c.ref=o);let i=c.as||e;return d&&i[0]&&d(c),u(i,c)}return t?t(a):a}}
8252
8252
 
8253
8253
  function _extends$A() {
8254
8254
  _extends$A = Object.assign || function (target) {
@@ -10462,7 +10462,7 @@ const PelcroModalController = ({
10462
10462
  }) => (type === null || type === void 0 ? void 0 : type.viewId) === view));
10463
10463
  };
10464
10464
 
10465
- var lib = createCommonjsModule(function (module, exports) {
10465
+ var lib$1 = createCommonjsModule(function (module, exports) {
10466
10466
 
10467
10467
  Object.defineProperty(exports, "__esModule", {
10468
10468
  value: true
@@ -10652,15 +10652,15 @@ function composeReducers(reducers) {
10652
10652
  }
10653
10653
  });
10654
10654
 
10655
- var useReducerWithSideEffects = unwrapExports(lib);
10656
- lib.executeSideEffects;
10657
- lib.mergeState;
10658
- lib.composeReducers;
10659
- var lib_4 = lib.SideEffect;
10660
- var lib_5 = lib.UpdateWithSideEffect;
10661
- lib.NoUpdate;
10662
- var lib_7 = lib.Update;
10663
- lib.NO_UPDATE_SYMBOL;
10655
+ var useReducerWithSideEffects = unwrapExports(lib$1);
10656
+ lib$1.executeSideEffects;
10657
+ lib$1.mergeState;
10658
+ lib$1.composeReducers;
10659
+ var lib_4 = lib$1.SideEffect;
10660
+ var lib_5 = lib$1.UpdateWithSideEffect;
10661
+ lib$1.NoUpdate;
10662
+ var lib_7 = lib$1.Update;
10663
+ lib$1.NO_UPDATE_SYMBOL;
10664
10664
 
10665
10665
  const SET_EMAIL = "SET_EMAIL";
10666
10666
  const SET_PASSWORD = "SET_PASSWORD";
@@ -14837,9 +14837,17 @@ const PaymentMethodContainerWithoutStripe = ({
14837
14837
  const SUCCESS_STATUS = "870";
14838
14838
 
14839
14839
  if (paymentRequest.response !== SUCCESS_STATUS) {
14840
- return handlePaymentError({
14841
- error: new Error(paymentRequest.message)
14842
- });
14840
+ switch (paymentRequest.response) {
14841
+ case "871":
14842
+ return handlePaymentError({
14843
+ error: new Error("Invalid account number")
14844
+ });
14845
+
14846
+ default:
14847
+ return handlePaymentError({
14848
+ error: new Error(paymentRequest.message)
14849
+ });
14850
+ }
14843
14851
  }
14844
14852
  }
14845
14853
 
@@ -14988,7 +14996,7 @@ const PaymentMethodContainerWithoutStripe = ({
14988
14996
  vantivInstanceRef.current = new window.EprotectIframeClient({
14989
14997
  paypageId: payPageId,
14990
14998
  reportGroup: reportGroup,
14991
- style: "pelcro",
14999
+ style: "enhancedStyle3",
14992
15000
  height: "245",
14993
15001
  timeout: 50000,
14994
15002
  div: "eProtectiframe",
@@ -16832,10 +16840,13 @@ function PaymentMethodView({
16832
16840
  showCoupon,
16833
16841
  showExternalPaymentMethods
16834
16842
  }) {
16843
+ var _window$Pelcro$site$r;
16844
+
16835
16845
  const {
16836
16846
  t
16837
16847
  } = useTranslation("checkoutForm");
16838
16848
  const cardProcessor = getSiteCardProcessor();
16849
+ const supportsVantiv = Boolean((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.vantiv_gateway_settings);
16839
16850
  return /*#__PURE__*/React__default['default'].createElement("div", {
16840
16851
  className: "plc-flex plc-flex-col plc-items-center plc-mt-4 sm:plc-px-8 pelcro-payment-block"
16841
16852
  }, cardProcessor === "stripe" && /*#__PURE__*/React__default['default'].createElement("div", {
@@ -16861,7 +16872,7 @@ function PaymentMethodView({
16861
16872
  className: "plc-mb-2"
16862
16873
  }, /*#__PURE__*/React__default['default'].createElement(CouponCode, null), /*#__PURE__*/React__default['default'].createElement(DiscountedPrice, null)), /*#__PURE__*/React__default['default'].createElement(TaxAmount, null), /*#__PURE__*/React__default['default'].createElement("div", {
16863
16874
  className: "plc-grid plc-mt-4 plc-gap-y-2"
16864
- }, /*#__PURE__*/React__default['default'].createElement(SubmitPaymentMethod, null), showExternalPaymentMethods && /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(PelcroPaymentRequestButton, null), /*#__PURE__*/React__default['default'].createElement(PaypalSubscribeButton, null)))))));
16875
+ }, /*#__PURE__*/React__default['default'].createElement(SubmitPaymentMethod, null), showExternalPaymentMethods && !supportsVantiv ? /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(PelcroPaymentRequestButton, null), /*#__PURE__*/React__default['default'].createElement(PaypalSubscribeButton, null)) : showExternalPaymentMethods && supportsVantiv ? /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(PaypalSubscribeButton, null)) : null)))));
16865
16876
  }
16866
16877
 
16867
16878
  const SubscriptionRenewView = ({
@@ -24974,7 +24985,7 @@ const MembershipsItems = () => {
24974
24985
  var _window$Pelcro$addres;
24975
24986
 
24976
24987
  (_window$Pelcro$addres = window.Pelcro.address.list()) === null || _window$Pelcro$addres === void 0 ? void 0 : _window$Pelcro$addres.find(address => address.id === membership.address_id);
24977
- return /*#__PURE__*/React__default['default'].createElement("tr", {
24988
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, membership.subscription.ended_at === null && /*#__PURE__*/React__default['default'].createElement("tr", {
24978
24989
  key: membership.id,
24979
24990
  className: `plc-w-full plc-align-top pelcro-membership-row`
24980
24991
  }, /*#__PURE__*/React__default['default'].createElement("td", {
@@ -24990,7 +25001,7 @@ const MembershipsItems = () => {
24990
25001
  }),
24991
25002
  className: "plc-text-blue-400 focus:plc-ring-blue-500 pelcro-dashboard-membership-address-button",
24992
25003
  onClick: () => onChangeAddressClick(membership.id)
24993
- }, `${t("labels.edit")} ${t("labels.address")}`)));
25004
+ }, `${t("labels.edit")} ${t("labels.address")}`))));
24994
25005
  });
24995
25006
  };
24996
25007
 
@@ -25627,7 +25638,7 @@ function hasDonationSubs() {
25627
25638
  function hasActiveMemberships() {
25628
25639
  var _window$Pelcro$user$r6, _window$Pelcro$user$r7;
25629
25640
 
25630
- return (_window$Pelcro$user$r6 = (_window$Pelcro$user$r7 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r7 === void 0 ? void 0 : _window$Pelcro$user$r7.some(membership => membership.status === "active")) !== null && _window$Pelcro$user$r6 !== void 0 ? _window$Pelcro$user$r6 : false;
25641
+ return (_window$Pelcro$user$r6 = (_window$Pelcro$user$r7 = window.Pelcro.user.read().memberships) === null || _window$Pelcro$user$r7 === void 0 ? void 0 : _window$Pelcro$user$r7.some(membership => membership.status === "active" && membership.subscription.ended_at === null)) !== null && _window$Pelcro$user$r6 !== void 0 ? _window$Pelcro$user$r6 : false;
25631
25642
  }
25632
25643
 
25633
25644
  const DashboardWithTrans = withTranslation("dashboard")(Dashboard);
@@ -28028,6 +28039,1424 @@ const InvoiceDetailsModal = ({
28028
28039
  };
28029
28040
  InvoiceDetailsModal.viewId = "invoice-details";
28030
28041
 
28042
+ var mode = {
28043
+ MODE_NUMBER : 1 << 0,
28044
+ MODE_ALPHA_NUM : 1 << 1,
28045
+ MODE_8BIT_BYTE : 1 << 2,
28046
+ MODE_KANJI : 1 << 3
28047
+ };
28048
+
28049
+ function QR8bitByte(data) {
28050
+ this.mode = mode.MODE_8BIT_BYTE;
28051
+ this.data = data;
28052
+ }
28053
+
28054
+ QR8bitByte.prototype = {
28055
+
28056
+ getLength : function(buffer) {
28057
+ return this.data.length;
28058
+ },
28059
+
28060
+ write : function(buffer) {
28061
+ for (var i = 0; i < this.data.length; i++) {
28062
+ // not JIS ...
28063
+ buffer.put(this.data.charCodeAt(i), 8);
28064
+ }
28065
+ }
28066
+ };
28067
+
28068
+ var _8BitByte = QR8bitByte;
28069
+
28070
+ var ErrorCorrectLevel = {
28071
+ L : 1,
28072
+ M : 0,
28073
+ Q : 3,
28074
+ H : 2
28075
+ };
28076
+ ErrorCorrectLevel.L;
28077
+ ErrorCorrectLevel.M;
28078
+ ErrorCorrectLevel.Q;
28079
+ ErrorCorrectLevel.H;
28080
+
28081
+ // ErrorCorrectLevel
28082
+
28083
+
28084
+ function QRRSBlock(totalCount, dataCount) {
28085
+ this.totalCount = totalCount;
28086
+ this.dataCount = dataCount;
28087
+ }
28088
+
28089
+ QRRSBlock.RS_BLOCK_TABLE = [
28090
+
28091
+ // L
28092
+ // M
28093
+ // Q
28094
+ // H
28095
+
28096
+ // 1
28097
+ [1, 26, 19],
28098
+ [1, 26, 16],
28099
+ [1, 26, 13],
28100
+ [1, 26, 9],
28101
+
28102
+ // 2
28103
+ [1, 44, 34],
28104
+ [1, 44, 28],
28105
+ [1, 44, 22],
28106
+ [1, 44, 16],
28107
+
28108
+ // 3
28109
+ [1, 70, 55],
28110
+ [1, 70, 44],
28111
+ [2, 35, 17],
28112
+ [2, 35, 13],
28113
+
28114
+ // 4
28115
+ [1, 100, 80],
28116
+ [2, 50, 32],
28117
+ [2, 50, 24],
28118
+ [4, 25, 9],
28119
+
28120
+ // 5
28121
+ [1, 134, 108],
28122
+ [2, 67, 43],
28123
+ [2, 33, 15, 2, 34, 16],
28124
+ [2, 33, 11, 2, 34, 12],
28125
+
28126
+ // 6
28127
+ [2, 86, 68],
28128
+ [4, 43, 27],
28129
+ [4, 43, 19],
28130
+ [4, 43, 15],
28131
+
28132
+ // 7
28133
+ [2, 98, 78],
28134
+ [4, 49, 31],
28135
+ [2, 32, 14, 4, 33, 15],
28136
+ [4, 39, 13, 1, 40, 14],
28137
+
28138
+ // 8
28139
+ [2, 121, 97],
28140
+ [2, 60, 38, 2, 61, 39],
28141
+ [4, 40, 18, 2, 41, 19],
28142
+ [4, 40, 14, 2, 41, 15],
28143
+
28144
+ // 9
28145
+ [2, 146, 116],
28146
+ [3, 58, 36, 2, 59, 37],
28147
+ [4, 36, 16, 4, 37, 17],
28148
+ [4, 36, 12, 4, 37, 13],
28149
+
28150
+ // 10
28151
+ [2, 86, 68, 2, 87, 69],
28152
+ [4, 69, 43, 1, 70, 44],
28153
+ [6, 43, 19, 2, 44, 20],
28154
+ [6, 43, 15, 2, 44, 16],
28155
+
28156
+ // 11
28157
+ [4, 101, 81],
28158
+ [1, 80, 50, 4, 81, 51],
28159
+ [4, 50, 22, 4, 51, 23],
28160
+ [3, 36, 12, 8, 37, 13],
28161
+
28162
+ // 12
28163
+ [2, 116, 92, 2, 117, 93],
28164
+ [6, 58, 36, 2, 59, 37],
28165
+ [4, 46, 20, 6, 47, 21],
28166
+ [7, 42, 14, 4, 43, 15],
28167
+
28168
+ // 13
28169
+ [4, 133, 107],
28170
+ [8, 59, 37, 1, 60, 38],
28171
+ [8, 44, 20, 4, 45, 21],
28172
+ [12, 33, 11, 4, 34, 12],
28173
+
28174
+ // 14
28175
+ [3, 145, 115, 1, 146, 116],
28176
+ [4, 64, 40, 5, 65, 41],
28177
+ [11, 36, 16, 5, 37, 17],
28178
+ [11, 36, 12, 5, 37, 13],
28179
+
28180
+ // 15
28181
+ [5, 109, 87, 1, 110, 88],
28182
+ [5, 65, 41, 5, 66, 42],
28183
+ [5, 54, 24, 7, 55, 25],
28184
+ [11, 36, 12],
28185
+
28186
+ // 16
28187
+ [5, 122, 98, 1, 123, 99],
28188
+ [7, 73, 45, 3, 74, 46],
28189
+ [15, 43, 19, 2, 44, 20],
28190
+ [3, 45, 15, 13, 46, 16],
28191
+
28192
+ // 17
28193
+ [1, 135, 107, 5, 136, 108],
28194
+ [10, 74, 46, 1, 75, 47],
28195
+ [1, 50, 22, 15, 51, 23],
28196
+ [2, 42, 14, 17, 43, 15],
28197
+
28198
+ // 18
28199
+ [5, 150, 120, 1, 151, 121],
28200
+ [9, 69, 43, 4, 70, 44],
28201
+ [17, 50, 22, 1, 51, 23],
28202
+ [2, 42, 14, 19, 43, 15],
28203
+
28204
+ // 19
28205
+ [3, 141, 113, 4, 142, 114],
28206
+ [3, 70, 44, 11, 71, 45],
28207
+ [17, 47, 21, 4, 48, 22],
28208
+ [9, 39, 13, 16, 40, 14],
28209
+
28210
+ // 20
28211
+ [3, 135, 107, 5, 136, 108],
28212
+ [3, 67, 41, 13, 68, 42],
28213
+ [15, 54, 24, 5, 55, 25],
28214
+ [15, 43, 15, 10, 44, 16],
28215
+
28216
+ // 21
28217
+ [4, 144, 116, 4, 145, 117],
28218
+ [17, 68, 42],
28219
+ [17, 50, 22, 6, 51, 23],
28220
+ [19, 46, 16, 6, 47, 17],
28221
+
28222
+ // 22
28223
+ [2, 139, 111, 7, 140, 112],
28224
+ [17, 74, 46],
28225
+ [7, 54, 24, 16, 55, 25],
28226
+ [34, 37, 13],
28227
+
28228
+ // 23
28229
+ [4, 151, 121, 5, 152, 122],
28230
+ [4, 75, 47, 14, 76, 48],
28231
+ [11, 54, 24, 14, 55, 25],
28232
+ [16, 45, 15, 14, 46, 16],
28233
+
28234
+ // 24
28235
+ [6, 147, 117, 4, 148, 118],
28236
+ [6, 73, 45, 14, 74, 46],
28237
+ [11, 54, 24, 16, 55, 25],
28238
+ [30, 46, 16, 2, 47, 17],
28239
+
28240
+ // 25
28241
+ [8, 132, 106, 4, 133, 107],
28242
+ [8, 75, 47, 13, 76, 48],
28243
+ [7, 54, 24, 22, 55, 25],
28244
+ [22, 45, 15, 13, 46, 16],
28245
+
28246
+ // 26
28247
+ [10, 142, 114, 2, 143, 115],
28248
+ [19, 74, 46, 4, 75, 47],
28249
+ [28, 50, 22, 6, 51, 23],
28250
+ [33, 46, 16, 4, 47, 17],
28251
+
28252
+ // 27
28253
+ [8, 152, 122, 4, 153, 123],
28254
+ [22, 73, 45, 3, 74, 46],
28255
+ [8, 53, 23, 26, 54, 24],
28256
+ [12, 45, 15, 28, 46, 16],
28257
+
28258
+ // 28
28259
+ [3, 147, 117, 10, 148, 118],
28260
+ [3, 73, 45, 23, 74, 46],
28261
+ [4, 54, 24, 31, 55, 25],
28262
+ [11, 45, 15, 31, 46, 16],
28263
+
28264
+ // 29
28265
+ [7, 146, 116, 7, 147, 117],
28266
+ [21, 73, 45, 7, 74, 46],
28267
+ [1, 53, 23, 37, 54, 24],
28268
+ [19, 45, 15, 26, 46, 16],
28269
+
28270
+ // 30
28271
+ [5, 145, 115, 10, 146, 116],
28272
+ [19, 75, 47, 10, 76, 48],
28273
+ [15, 54, 24, 25, 55, 25],
28274
+ [23, 45, 15, 25, 46, 16],
28275
+
28276
+ // 31
28277
+ [13, 145, 115, 3, 146, 116],
28278
+ [2, 74, 46, 29, 75, 47],
28279
+ [42, 54, 24, 1, 55, 25],
28280
+ [23, 45, 15, 28, 46, 16],
28281
+
28282
+ // 32
28283
+ [17, 145, 115],
28284
+ [10, 74, 46, 23, 75, 47],
28285
+ [10, 54, 24, 35, 55, 25],
28286
+ [19, 45, 15, 35, 46, 16],
28287
+
28288
+ // 33
28289
+ [17, 145, 115, 1, 146, 116],
28290
+ [14, 74, 46, 21, 75, 47],
28291
+ [29, 54, 24, 19, 55, 25],
28292
+ [11, 45, 15, 46, 46, 16],
28293
+
28294
+ // 34
28295
+ [13, 145, 115, 6, 146, 116],
28296
+ [14, 74, 46, 23, 75, 47],
28297
+ [44, 54, 24, 7, 55, 25],
28298
+ [59, 46, 16, 1, 47, 17],
28299
+
28300
+ // 35
28301
+ [12, 151, 121, 7, 152, 122],
28302
+ [12, 75, 47, 26, 76, 48],
28303
+ [39, 54, 24, 14, 55, 25],
28304
+ [22, 45, 15, 41, 46, 16],
28305
+
28306
+ // 36
28307
+ [6, 151, 121, 14, 152, 122],
28308
+ [6, 75, 47, 34, 76, 48],
28309
+ [46, 54, 24, 10, 55, 25],
28310
+ [2, 45, 15, 64, 46, 16],
28311
+
28312
+ // 37
28313
+ [17, 152, 122, 4, 153, 123],
28314
+ [29, 74, 46, 14, 75, 47],
28315
+ [49, 54, 24, 10, 55, 25],
28316
+ [24, 45, 15, 46, 46, 16],
28317
+
28318
+ // 38
28319
+ [4, 152, 122, 18, 153, 123],
28320
+ [13, 74, 46, 32, 75, 47],
28321
+ [48, 54, 24, 14, 55, 25],
28322
+ [42, 45, 15, 32, 46, 16],
28323
+
28324
+ // 39
28325
+ [20, 147, 117, 4, 148, 118],
28326
+ [40, 75, 47, 7, 76, 48],
28327
+ [43, 54, 24, 22, 55, 25],
28328
+ [10, 45, 15, 67, 46, 16],
28329
+
28330
+ // 40
28331
+ [19, 148, 118, 6, 149, 119],
28332
+ [18, 75, 47, 31, 76, 48],
28333
+ [34, 54, 24, 34, 55, 25],
28334
+ [20, 45, 15, 61, 46, 16]
28335
+ ];
28336
+
28337
+ QRRSBlock.getRSBlocks = function(typeNumber, errorCorrectLevel) {
28338
+
28339
+ var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);
28340
+
28341
+ if (rsBlock == undefined) {
28342
+ throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + errorCorrectLevel);
28343
+ }
28344
+
28345
+ var length = rsBlock.length / 3;
28346
+
28347
+ var list = new Array();
28348
+
28349
+ for (var i = 0; i < length; i++) {
28350
+
28351
+ var count = rsBlock[i * 3 + 0];
28352
+ var totalCount = rsBlock[i * 3 + 1];
28353
+ var dataCount = rsBlock[i * 3 + 2];
28354
+
28355
+ for (var j = 0; j < count; j++) {
28356
+ list.push(new QRRSBlock(totalCount, dataCount) );
28357
+ }
28358
+ }
28359
+
28360
+ return list;
28361
+ };
28362
+
28363
+ QRRSBlock.getRsBlockTable = function(typeNumber, errorCorrectLevel) {
28364
+
28365
+ switch(errorCorrectLevel) {
28366
+ case ErrorCorrectLevel.L :
28367
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];
28368
+ case ErrorCorrectLevel.M :
28369
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];
28370
+ case ErrorCorrectLevel.Q :
28371
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];
28372
+ case ErrorCorrectLevel.H :
28373
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];
28374
+ default :
28375
+ return undefined;
28376
+ }
28377
+ };
28378
+
28379
+ var RSBlock = QRRSBlock;
28380
+
28381
+ function QRBitBuffer() {
28382
+ this.buffer = new Array();
28383
+ this.length = 0;
28384
+ }
28385
+
28386
+ QRBitBuffer.prototype = {
28387
+
28388
+ get : function(index) {
28389
+ var bufIndex = Math.floor(index / 8);
28390
+ return ( (this.buffer[bufIndex] >>> (7 - index % 8) ) & 1) == 1;
28391
+ },
28392
+
28393
+ put : function(num, length) {
28394
+ for (var i = 0; i < length; i++) {
28395
+ this.putBit( ( (num >>> (length - i - 1) ) & 1) == 1);
28396
+ }
28397
+ },
28398
+
28399
+ getLengthInBits : function() {
28400
+ return this.length;
28401
+ },
28402
+
28403
+ putBit : function(bit) {
28404
+
28405
+ var bufIndex = Math.floor(this.length / 8);
28406
+ if (this.buffer.length <= bufIndex) {
28407
+ this.buffer.push(0);
28408
+ }
28409
+
28410
+ if (bit) {
28411
+ this.buffer[bufIndex] |= (0x80 >>> (this.length % 8) );
28412
+ }
28413
+
28414
+ this.length++;
28415
+ }
28416
+ };
28417
+
28418
+ var BitBuffer = QRBitBuffer;
28419
+
28420
+ var QRMath = {
28421
+
28422
+ glog : function(n) {
28423
+
28424
+ if (n < 1) {
28425
+ throw new Error("glog(" + n + ")");
28426
+ }
28427
+
28428
+ return QRMath.LOG_TABLE[n];
28429
+ },
28430
+
28431
+ gexp : function(n) {
28432
+
28433
+ while (n < 0) {
28434
+ n += 255;
28435
+ }
28436
+
28437
+ while (n >= 256) {
28438
+ n -= 255;
28439
+ }
28440
+
28441
+ return QRMath.EXP_TABLE[n];
28442
+ },
28443
+
28444
+ EXP_TABLE : new Array(256),
28445
+
28446
+ LOG_TABLE : new Array(256)
28447
+
28448
+ };
28449
+
28450
+ for (var i = 0; i < 8; i++) {
28451
+ QRMath.EXP_TABLE[i] = 1 << i;
28452
+ }
28453
+ for (var i = 8; i < 256; i++) {
28454
+ QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4]
28455
+ ^ QRMath.EXP_TABLE[i - 5]
28456
+ ^ QRMath.EXP_TABLE[i - 6]
28457
+ ^ QRMath.EXP_TABLE[i - 8];
28458
+ }
28459
+ for (var i = 0; i < 255; i++) {
28460
+ QRMath.LOG_TABLE[QRMath.EXP_TABLE[i] ] = i;
28461
+ }
28462
+
28463
+ var math = QRMath;
28464
+
28465
+ function QRPolynomial(num, shift) {
28466
+
28467
+ if (num.length == undefined) {
28468
+ throw new Error(num.length + "/" + shift);
28469
+ }
28470
+
28471
+ var offset = 0;
28472
+
28473
+ while (offset < num.length && num[offset] == 0) {
28474
+ offset++;
28475
+ }
28476
+
28477
+ this.num = new Array(num.length - offset + shift);
28478
+ for (var i = 0; i < num.length - offset; i++) {
28479
+ this.num[i] = num[i + offset];
28480
+ }
28481
+ }
28482
+
28483
+ QRPolynomial.prototype = {
28484
+
28485
+ get : function(index) {
28486
+ return this.num[index];
28487
+ },
28488
+
28489
+ getLength : function() {
28490
+ return this.num.length;
28491
+ },
28492
+
28493
+ multiply : function(e) {
28494
+
28495
+ var num = new Array(this.getLength() + e.getLength() - 1);
28496
+
28497
+ for (var i = 0; i < this.getLength(); i++) {
28498
+ for (var j = 0; j < e.getLength(); j++) {
28499
+ num[i + j] ^= math.gexp(math.glog(this.get(i) ) + math.glog(e.get(j) ) );
28500
+ }
28501
+ }
28502
+
28503
+ return new QRPolynomial(num, 0);
28504
+ },
28505
+
28506
+ mod : function(e) {
28507
+
28508
+ if (this.getLength() - e.getLength() < 0) {
28509
+ return this;
28510
+ }
28511
+
28512
+ var ratio = math.glog(this.get(0) ) - math.glog(e.get(0) );
28513
+
28514
+ var num = new Array(this.getLength() );
28515
+
28516
+ for (var i = 0; i < this.getLength(); i++) {
28517
+ num[i] = this.get(i);
28518
+ }
28519
+
28520
+ for (var i = 0; i < e.getLength(); i++) {
28521
+ num[i] ^= math.gexp(math.glog(e.get(i) ) + ratio);
28522
+ }
28523
+
28524
+ // recursive call
28525
+ return new QRPolynomial(num, 0).mod(e);
28526
+ }
28527
+ };
28528
+
28529
+ var Polynomial = QRPolynomial;
28530
+
28531
+ var QRMaskPattern = {
28532
+ PATTERN000 : 0,
28533
+ PATTERN001 : 1,
28534
+ PATTERN010 : 2,
28535
+ PATTERN011 : 3,
28536
+ PATTERN100 : 4,
28537
+ PATTERN101 : 5,
28538
+ PATTERN110 : 6,
28539
+ PATTERN111 : 7
28540
+ };
28541
+
28542
+ var QRUtil = {
28543
+
28544
+ PATTERN_POSITION_TABLE : [
28545
+ [],
28546
+ [6, 18],
28547
+ [6, 22],
28548
+ [6, 26],
28549
+ [6, 30],
28550
+ [6, 34],
28551
+ [6, 22, 38],
28552
+ [6, 24, 42],
28553
+ [6, 26, 46],
28554
+ [6, 28, 50],
28555
+ [6, 30, 54],
28556
+ [6, 32, 58],
28557
+ [6, 34, 62],
28558
+ [6, 26, 46, 66],
28559
+ [6, 26, 48, 70],
28560
+ [6, 26, 50, 74],
28561
+ [6, 30, 54, 78],
28562
+ [6, 30, 56, 82],
28563
+ [6, 30, 58, 86],
28564
+ [6, 34, 62, 90],
28565
+ [6, 28, 50, 72, 94],
28566
+ [6, 26, 50, 74, 98],
28567
+ [6, 30, 54, 78, 102],
28568
+ [6, 28, 54, 80, 106],
28569
+ [6, 32, 58, 84, 110],
28570
+ [6, 30, 58, 86, 114],
28571
+ [6, 34, 62, 90, 118],
28572
+ [6, 26, 50, 74, 98, 122],
28573
+ [6, 30, 54, 78, 102, 126],
28574
+ [6, 26, 52, 78, 104, 130],
28575
+ [6, 30, 56, 82, 108, 134],
28576
+ [6, 34, 60, 86, 112, 138],
28577
+ [6, 30, 58, 86, 114, 142],
28578
+ [6, 34, 62, 90, 118, 146],
28579
+ [6, 30, 54, 78, 102, 126, 150],
28580
+ [6, 24, 50, 76, 102, 128, 154],
28581
+ [6, 28, 54, 80, 106, 132, 158],
28582
+ [6, 32, 58, 84, 110, 136, 162],
28583
+ [6, 26, 54, 82, 110, 138, 166],
28584
+ [6, 30, 58, 86, 114, 142, 170]
28585
+ ],
28586
+
28587
+ G15 : (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0),
28588
+ G18 : (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0),
28589
+ G15_MASK : (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1),
28590
+
28591
+ getBCHTypeInfo : function(data) {
28592
+ var d = data << 10;
28593
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
28594
+ d ^= (QRUtil.G15 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) ) );
28595
+ }
28596
+ return ( (data << 10) | d) ^ QRUtil.G15_MASK;
28597
+ },
28598
+
28599
+ getBCHTypeNumber : function(data) {
28600
+ var d = data << 12;
28601
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
28602
+ d ^= (QRUtil.G18 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) ) );
28603
+ }
28604
+ return (data << 12) | d;
28605
+ },
28606
+
28607
+ getBCHDigit : function(data) {
28608
+
28609
+ var digit = 0;
28610
+
28611
+ while (data != 0) {
28612
+ digit++;
28613
+ data >>>= 1;
28614
+ }
28615
+
28616
+ return digit;
28617
+ },
28618
+
28619
+ getPatternPosition : function(typeNumber) {
28620
+ return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];
28621
+ },
28622
+
28623
+ getMask : function(maskPattern, i, j) {
28624
+
28625
+ switch (maskPattern) {
28626
+
28627
+ case QRMaskPattern.PATTERN000 : return (i + j) % 2 == 0;
28628
+ case QRMaskPattern.PATTERN001 : return i % 2 == 0;
28629
+ case QRMaskPattern.PATTERN010 : return j % 3 == 0;
28630
+ case QRMaskPattern.PATTERN011 : return (i + j) % 3 == 0;
28631
+ case QRMaskPattern.PATTERN100 : return (Math.floor(i / 2) + Math.floor(j / 3) ) % 2 == 0;
28632
+ case QRMaskPattern.PATTERN101 : return (i * j) % 2 + (i * j) % 3 == 0;
28633
+ case QRMaskPattern.PATTERN110 : return ( (i * j) % 2 + (i * j) % 3) % 2 == 0;
28634
+ case QRMaskPattern.PATTERN111 : return ( (i * j) % 3 + (i + j) % 2) % 2 == 0;
28635
+
28636
+ default :
28637
+ throw new Error("bad maskPattern:" + maskPattern);
28638
+ }
28639
+ },
28640
+
28641
+ getErrorCorrectPolynomial : function(errorCorrectLength) {
28642
+
28643
+ var a = new Polynomial([1], 0);
28644
+
28645
+ for (var i = 0; i < errorCorrectLength; i++) {
28646
+ a = a.multiply(new Polynomial([1, math.gexp(i)], 0) );
28647
+ }
28648
+
28649
+ return a;
28650
+ },
28651
+
28652
+ getLengthInBits : function(mode$1, type) {
28653
+
28654
+ if (1 <= type && type < 10) {
28655
+
28656
+ // 1 - 9
28657
+
28658
+ switch(mode$1) {
28659
+ case mode.MODE_NUMBER : return 10;
28660
+ case mode.MODE_ALPHA_NUM : return 9;
28661
+ case mode.MODE_8BIT_BYTE : return 8;
28662
+ case mode.MODE_KANJI : return 8;
28663
+ default :
28664
+ throw new Error("mode:" + mode$1);
28665
+ }
28666
+
28667
+ } else if (type < 27) {
28668
+
28669
+ // 10 - 26
28670
+
28671
+ switch(mode$1) {
28672
+ case mode.MODE_NUMBER : return 12;
28673
+ case mode.MODE_ALPHA_NUM : return 11;
28674
+ case mode.MODE_8BIT_BYTE : return 16;
28675
+ case mode.MODE_KANJI : return 10;
28676
+ default :
28677
+ throw new Error("mode:" + mode$1);
28678
+ }
28679
+
28680
+ } else if (type < 41) {
28681
+
28682
+ // 27 - 40
28683
+
28684
+ switch(mode$1) {
28685
+ case mode.MODE_NUMBER : return 14;
28686
+ case mode.MODE_ALPHA_NUM : return 13;
28687
+ case mode.MODE_8BIT_BYTE : return 16;
28688
+ case mode.MODE_KANJI : return 12;
28689
+ default :
28690
+ throw new Error("mode:" + mode$1);
28691
+ }
28692
+
28693
+ } else {
28694
+ throw new Error("type:" + type);
28695
+ }
28696
+ },
28697
+
28698
+ getLostPoint : function(qrCode) {
28699
+
28700
+ var moduleCount = qrCode.getModuleCount();
28701
+
28702
+ var lostPoint = 0;
28703
+
28704
+ // LEVEL1
28705
+
28706
+ for (var row = 0; row < moduleCount; row++) {
28707
+
28708
+ for (var col = 0; col < moduleCount; col++) {
28709
+
28710
+ var sameCount = 0;
28711
+ var dark = qrCode.isDark(row, col);
28712
+
28713
+ for (var r = -1; r <= 1; r++) {
28714
+
28715
+ if (row + r < 0 || moduleCount <= row + r) {
28716
+ continue;
28717
+ }
28718
+
28719
+ for (var c = -1; c <= 1; c++) {
28720
+
28721
+ if (col + c < 0 || moduleCount <= col + c) {
28722
+ continue;
28723
+ }
28724
+
28725
+ if (r == 0 && c == 0) {
28726
+ continue;
28727
+ }
28728
+
28729
+ if (dark == qrCode.isDark(row + r, col + c) ) {
28730
+ sameCount++;
28731
+ }
28732
+ }
28733
+ }
28734
+
28735
+ if (sameCount > 5) {
28736
+ lostPoint += (3 + sameCount - 5);
28737
+ }
28738
+ }
28739
+ }
28740
+
28741
+ // LEVEL2
28742
+
28743
+ for (var row = 0; row < moduleCount - 1; row++) {
28744
+ for (var col = 0; col < moduleCount - 1; col++) {
28745
+ var count = 0;
28746
+ if (qrCode.isDark(row, col ) ) count++;
28747
+ if (qrCode.isDark(row + 1, col ) ) count++;
28748
+ if (qrCode.isDark(row, col + 1) ) count++;
28749
+ if (qrCode.isDark(row + 1, col + 1) ) count++;
28750
+ if (count == 0 || count == 4) {
28751
+ lostPoint += 3;
28752
+ }
28753
+ }
28754
+ }
28755
+
28756
+ // LEVEL3
28757
+
28758
+ for (var row = 0; row < moduleCount; row++) {
28759
+ for (var col = 0; col < moduleCount - 6; col++) {
28760
+ if (qrCode.isDark(row, col)
28761
+ && !qrCode.isDark(row, col + 1)
28762
+ && qrCode.isDark(row, col + 2)
28763
+ && qrCode.isDark(row, col + 3)
28764
+ && qrCode.isDark(row, col + 4)
28765
+ && !qrCode.isDark(row, col + 5)
28766
+ && qrCode.isDark(row, col + 6) ) {
28767
+ lostPoint += 40;
28768
+ }
28769
+ }
28770
+ }
28771
+
28772
+ for (var col = 0; col < moduleCount; col++) {
28773
+ for (var row = 0; row < moduleCount - 6; row++) {
28774
+ if (qrCode.isDark(row, col)
28775
+ && !qrCode.isDark(row + 1, col)
28776
+ && qrCode.isDark(row + 2, col)
28777
+ && qrCode.isDark(row + 3, col)
28778
+ && qrCode.isDark(row + 4, col)
28779
+ && !qrCode.isDark(row + 5, col)
28780
+ && qrCode.isDark(row + 6, col) ) {
28781
+ lostPoint += 40;
28782
+ }
28783
+ }
28784
+ }
28785
+
28786
+ // LEVEL4
28787
+
28788
+ var darkCount = 0;
28789
+
28790
+ for (var col = 0; col < moduleCount; col++) {
28791
+ for (var row = 0; row < moduleCount; row++) {
28792
+ if (qrCode.isDark(row, col) ) {
28793
+ darkCount++;
28794
+ }
28795
+ }
28796
+ }
28797
+
28798
+ var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;
28799
+ lostPoint += ratio * 10;
28800
+
28801
+ return lostPoint;
28802
+ }
28803
+ };
28804
+
28805
+ var util = QRUtil;
28806
+
28807
+ function QRCode$1(typeNumber, errorCorrectLevel) {
28808
+ this.typeNumber = typeNumber;
28809
+ this.errorCorrectLevel = errorCorrectLevel;
28810
+ this.modules = null;
28811
+ this.moduleCount = 0;
28812
+ this.dataCache = null;
28813
+ this.dataList = [];
28814
+ }
28815
+
28816
+ // for client side minification
28817
+ var proto = QRCode$1.prototype;
28818
+
28819
+ proto.addData = function(data) {
28820
+ var newData = new _8BitByte(data);
28821
+ this.dataList.push(newData);
28822
+ this.dataCache = null;
28823
+ };
28824
+
28825
+ proto.isDark = function(row, col) {
28826
+ if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {
28827
+ throw new Error(row + "," + col);
28828
+ }
28829
+ return this.modules[row][col];
28830
+ };
28831
+
28832
+ proto.getModuleCount = function() {
28833
+ return this.moduleCount;
28834
+ };
28835
+
28836
+ proto.make = function() {
28837
+ // Calculate automatically typeNumber if provided is < 1
28838
+ if (this.typeNumber < 1 ){
28839
+ var typeNumber = 1;
28840
+ for (typeNumber = 1; typeNumber < 40; typeNumber++) {
28841
+ var rsBlocks = RSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel);
28842
+
28843
+ var buffer = new BitBuffer();
28844
+ var totalDataCount = 0;
28845
+ for (var i = 0; i < rsBlocks.length; i++) {
28846
+ totalDataCount += rsBlocks[i].dataCount;
28847
+ }
28848
+
28849
+ for (var i = 0; i < this.dataList.length; i++) {
28850
+ var data = this.dataList[i];
28851
+ buffer.put(data.mode, 4);
28852
+ buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );
28853
+ data.write(buffer);
28854
+ }
28855
+ if (buffer.getLengthInBits() <= totalDataCount * 8)
28856
+ break;
28857
+ }
28858
+ this.typeNumber = typeNumber;
28859
+ }
28860
+ this.makeImpl(false, this.getBestMaskPattern() );
28861
+ };
28862
+
28863
+ proto.makeImpl = function(test, maskPattern) {
28864
+
28865
+ this.moduleCount = this.typeNumber * 4 + 17;
28866
+ this.modules = new Array(this.moduleCount);
28867
+
28868
+ for (var row = 0; row < this.moduleCount; row++) {
28869
+
28870
+ this.modules[row] = new Array(this.moduleCount);
28871
+
28872
+ for (var col = 0; col < this.moduleCount; col++) {
28873
+ this.modules[row][col] = null;//(col + row) % 3;
28874
+ }
28875
+ }
28876
+
28877
+ this.setupPositionProbePattern(0, 0);
28878
+ this.setupPositionProbePattern(this.moduleCount - 7, 0);
28879
+ this.setupPositionProbePattern(0, this.moduleCount - 7);
28880
+ this.setupPositionAdjustPattern();
28881
+ this.setupTimingPattern();
28882
+ this.setupTypeInfo(test, maskPattern);
28883
+
28884
+ if (this.typeNumber >= 7) {
28885
+ this.setupTypeNumber(test);
28886
+ }
28887
+
28888
+ if (this.dataCache == null) {
28889
+ this.dataCache = QRCode$1.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
28890
+ }
28891
+
28892
+ this.mapData(this.dataCache, maskPattern);
28893
+ };
28894
+
28895
+ proto.setupPositionProbePattern = function(row, col) {
28896
+
28897
+ for (var r = -1; r <= 7; r++) {
28898
+
28899
+ if (row + r <= -1 || this.moduleCount <= row + r) continue;
28900
+
28901
+ for (var c = -1; c <= 7; c++) {
28902
+
28903
+ if (col + c <= -1 || this.moduleCount <= col + c) continue;
28904
+
28905
+ if ( (0 <= r && r <= 6 && (c == 0 || c == 6) )
28906
+ || (0 <= c && c <= 6 && (r == 0 || r == 6) )
28907
+ || (2 <= r && r <= 4 && 2 <= c && c <= 4) ) {
28908
+ this.modules[row + r][col + c] = true;
28909
+ } else {
28910
+ this.modules[row + r][col + c] = false;
28911
+ }
28912
+ }
28913
+ }
28914
+ };
28915
+
28916
+ proto.getBestMaskPattern = function() {
28917
+
28918
+ var minLostPoint = 0;
28919
+ var pattern = 0;
28920
+
28921
+ for (var i = 0; i < 8; i++) {
28922
+
28923
+ this.makeImpl(true, i);
28924
+
28925
+ var lostPoint = util.getLostPoint(this);
28926
+
28927
+ if (i == 0 || minLostPoint > lostPoint) {
28928
+ minLostPoint = lostPoint;
28929
+ pattern = i;
28930
+ }
28931
+ }
28932
+
28933
+ return pattern;
28934
+ };
28935
+
28936
+ proto.createMovieClip = function(target_mc, instance_name, depth) {
28937
+
28938
+ var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);
28939
+ var cs = 1;
28940
+
28941
+ this.make();
28942
+
28943
+ for (var row = 0; row < this.modules.length; row++) {
28944
+
28945
+ var y = row * cs;
28946
+
28947
+ for (var col = 0; col < this.modules[row].length; col++) {
28948
+
28949
+ var x = col * cs;
28950
+ var dark = this.modules[row][col];
28951
+
28952
+ if (dark) {
28953
+ qr_mc.beginFill(0, 100);
28954
+ qr_mc.moveTo(x, y);
28955
+ qr_mc.lineTo(x + cs, y);
28956
+ qr_mc.lineTo(x + cs, y + cs);
28957
+ qr_mc.lineTo(x, y + cs);
28958
+ qr_mc.endFill();
28959
+ }
28960
+ }
28961
+ }
28962
+
28963
+ return qr_mc;
28964
+ };
28965
+
28966
+ proto.setupTimingPattern = function() {
28967
+
28968
+ for (var r = 8; r < this.moduleCount - 8; r++) {
28969
+ if (this.modules[r][6] != null) {
28970
+ continue;
28971
+ }
28972
+ this.modules[r][6] = (r % 2 == 0);
28973
+ }
28974
+
28975
+ for (var c = 8; c < this.moduleCount - 8; c++) {
28976
+ if (this.modules[6][c] != null) {
28977
+ continue;
28978
+ }
28979
+ this.modules[6][c] = (c % 2 == 0);
28980
+ }
28981
+ };
28982
+
28983
+ proto.setupPositionAdjustPattern = function() {
28984
+
28985
+ var pos = util.getPatternPosition(this.typeNumber);
28986
+
28987
+ for (var i = 0; i < pos.length; i++) {
28988
+
28989
+ for (var j = 0; j < pos.length; j++) {
28990
+
28991
+ var row = pos[i];
28992
+ var col = pos[j];
28993
+
28994
+ if (this.modules[row][col] != null) {
28995
+ continue;
28996
+ }
28997
+
28998
+ for (var r = -2; r <= 2; r++) {
28999
+
29000
+ for (var c = -2; c <= 2; c++) {
29001
+
29002
+ if (r == -2 || r == 2 || c == -2 || c == 2
29003
+ || (r == 0 && c == 0) ) {
29004
+ this.modules[row + r][col + c] = true;
29005
+ } else {
29006
+ this.modules[row + r][col + c] = false;
29007
+ }
29008
+ }
29009
+ }
29010
+ }
29011
+ }
29012
+ };
29013
+
29014
+ proto.setupTypeNumber = function(test) {
29015
+
29016
+ var bits = util.getBCHTypeNumber(this.typeNumber);
29017
+
29018
+ for (var i = 0; i < 18; i++) {
29019
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29020
+ this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;
29021
+ }
29022
+
29023
+ for (var i = 0; i < 18; i++) {
29024
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29025
+ this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;
29026
+ }
29027
+ };
29028
+
29029
+ proto.setupTypeInfo = function(test, maskPattern) {
29030
+
29031
+ var data = (this.errorCorrectLevel << 3) | maskPattern;
29032
+ var bits = util.getBCHTypeInfo(data);
29033
+
29034
+ // vertical
29035
+ for (var i = 0; i < 15; i++) {
29036
+
29037
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29038
+
29039
+ if (i < 6) {
29040
+ this.modules[i][8] = mod;
29041
+ } else if (i < 8) {
29042
+ this.modules[i + 1][8] = mod;
29043
+ } else {
29044
+ this.modules[this.moduleCount - 15 + i][8] = mod;
29045
+ }
29046
+ }
29047
+
29048
+ // horizontal
29049
+ for (var i = 0; i < 15; i++) {
29050
+
29051
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29052
+
29053
+ if (i < 8) {
29054
+ this.modules[8][this.moduleCount - i - 1] = mod;
29055
+ } else if (i < 9) {
29056
+ this.modules[8][15 - i - 1 + 1] = mod;
29057
+ } else {
29058
+ this.modules[8][15 - i - 1] = mod;
29059
+ }
29060
+ }
29061
+
29062
+ // fixed module
29063
+ this.modules[this.moduleCount - 8][8] = (!test);
29064
+ };
29065
+
29066
+ proto.mapData = function(data, maskPattern) {
29067
+
29068
+ var inc = -1;
29069
+ var row = this.moduleCount - 1;
29070
+ var bitIndex = 7;
29071
+ var byteIndex = 0;
29072
+
29073
+ for (var col = this.moduleCount - 1; col > 0; col -= 2) {
29074
+
29075
+ if (col == 6) col--;
29076
+
29077
+ while (true) {
29078
+
29079
+ for (var c = 0; c < 2; c++) {
29080
+
29081
+ if (this.modules[row][col - c] == null) {
29082
+
29083
+ var dark = false;
29084
+
29085
+ if (byteIndex < data.length) {
29086
+ dark = ( ( (data[byteIndex] >>> bitIndex) & 1) == 1);
29087
+ }
29088
+
29089
+ var mask = util.getMask(maskPattern, row, col - c);
29090
+
29091
+ if (mask) {
29092
+ dark = !dark;
29093
+ }
29094
+
29095
+ this.modules[row][col - c] = dark;
29096
+ bitIndex--;
29097
+
29098
+ if (bitIndex == -1) {
29099
+ byteIndex++;
29100
+ bitIndex = 7;
29101
+ }
29102
+ }
29103
+ }
29104
+
29105
+ row += inc;
29106
+
29107
+ if (row < 0 || this.moduleCount <= row) {
29108
+ row -= inc;
29109
+ inc = -inc;
29110
+ break;
29111
+ }
29112
+ }
29113
+ }
29114
+ };
29115
+
29116
+ QRCode$1.PAD0 = 0xEC;
29117
+ QRCode$1.PAD1 = 0x11;
29118
+
29119
+ QRCode$1.createData = function(typeNumber, errorCorrectLevel, dataList) {
29120
+
29121
+ var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
29122
+
29123
+ var buffer = new BitBuffer();
29124
+
29125
+ for (var i = 0; i < dataList.length; i++) {
29126
+ var data = dataList[i];
29127
+ buffer.put(data.mode, 4);
29128
+ buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );
29129
+ data.write(buffer);
29130
+ }
29131
+
29132
+ // calc num max data.
29133
+ var totalDataCount = 0;
29134
+ for (var i = 0; i < rsBlocks.length; i++) {
29135
+ totalDataCount += rsBlocks[i].dataCount;
29136
+ }
29137
+
29138
+ if (buffer.getLengthInBits() > totalDataCount * 8) {
29139
+ throw new Error("code length overflow. ("
29140
+ + buffer.getLengthInBits()
29141
+ + ">"
29142
+ + totalDataCount * 8
29143
+ + ")");
29144
+ }
29145
+
29146
+ // end code
29147
+ if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) {
29148
+ buffer.put(0, 4);
29149
+ }
29150
+
29151
+ // padding
29152
+ while (buffer.getLengthInBits() % 8 != 0) {
29153
+ buffer.putBit(false);
29154
+ }
29155
+
29156
+ // padding
29157
+ while (true) {
29158
+
29159
+ if (buffer.getLengthInBits() >= totalDataCount * 8) {
29160
+ break;
29161
+ }
29162
+ buffer.put(QRCode$1.PAD0, 8);
29163
+
29164
+ if (buffer.getLengthInBits() >= totalDataCount * 8) {
29165
+ break;
29166
+ }
29167
+ buffer.put(QRCode$1.PAD1, 8);
29168
+ }
29169
+
29170
+ return QRCode$1.createBytes(buffer, rsBlocks);
29171
+ };
29172
+
29173
+ QRCode$1.createBytes = function(buffer, rsBlocks) {
29174
+
29175
+ var offset = 0;
29176
+
29177
+ var maxDcCount = 0;
29178
+ var maxEcCount = 0;
29179
+
29180
+ var dcdata = new Array(rsBlocks.length);
29181
+ var ecdata = new Array(rsBlocks.length);
29182
+
29183
+ for (var r = 0; r < rsBlocks.length; r++) {
29184
+
29185
+ var dcCount = rsBlocks[r].dataCount;
29186
+ var ecCount = rsBlocks[r].totalCount - dcCount;
29187
+
29188
+ maxDcCount = Math.max(maxDcCount, dcCount);
29189
+ maxEcCount = Math.max(maxEcCount, ecCount);
29190
+
29191
+ dcdata[r] = new Array(dcCount);
29192
+
29193
+ for (var i = 0; i < dcdata[r].length; i++) {
29194
+ dcdata[r][i] = 0xff & buffer.buffer[i + offset];
29195
+ }
29196
+ offset += dcCount;
29197
+
29198
+ var rsPoly = util.getErrorCorrectPolynomial(ecCount);
29199
+ var rawPoly = new Polynomial(dcdata[r], rsPoly.getLength() - 1);
29200
+
29201
+ var modPoly = rawPoly.mod(rsPoly);
29202
+ ecdata[r] = new Array(rsPoly.getLength() - 1);
29203
+ for (var i = 0; i < ecdata[r].length; i++) {
29204
+ var modIndex = i + modPoly.getLength() - ecdata[r].length;
29205
+ ecdata[r][i] = (modIndex >= 0)? modPoly.get(modIndex) : 0;
29206
+ }
29207
+
29208
+ }
29209
+
29210
+ var totalCodeCount = 0;
29211
+ for (var i = 0; i < rsBlocks.length; i++) {
29212
+ totalCodeCount += rsBlocks[i].totalCount;
29213
+ }
29214
+
29215
+ var data = new Array(totalCodeCount);
29216
+ var index = 0;
29217
+
29218
+ for (var i = 0; i < maxDcCount; i++) {
29219
+ for (var r = 0; r < rsBlocks.length; r++) {
29220
+ if (i < dcdata[r].length) {
29221
+ data[index++] = dcdata[r][i];
29222
+ }
29223
+ }
29224
+ }
29225
+
29226
+ for (var i = 0; i < maxEcCount; i++) {
29227
+ for (var r = 0; r < rsBlocks.length; r++) {
29228
+ if (i < ecdata[r].length) {
29229
+ data[index++] = ecdata[r][i];
29230
+ }
29231
+ }
29232
+ }
29233
+
29234
+ return data;
29235
+ };
29236
+
29237
+ var QRCode_1 = QRCode$1;
29238
+
29239
+ var QRCodeCell_1 = createCommonjsModule(function (module, exports) {
29240
+
29241
+ Object.defineProperty(exports, "__esModule", {
29242
+ value: true
29243
+ });
29244
+
29245
+
29246
+
29247
+ var _propTypes2 = _interopRequireDefault(PropTypes__default['default']);
29248
+
29249
+
29250
+
29251
+ var _react2 = _interopRequireDefault(React__default['default']);
29252
+
29253
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29254
+
29255
+ var propTypes = {
29256
+ d: _propTypes2.default.string.isRequired,
29257
+ fill: _propTypes2.default.string.isRequired,
29258
+ transformX: _propTypes2.default.number.isRequired,
29259
+ transformY: _propTypes2.default.number.isRequired
29260
+ };
29261
+
29262
+ var defaultProps = {};
29263
+
29264
+ var QRCodeCell = function QRCodeCell(_ref) {
29265
+ var d = _ref.d,
29266
+ fill = _ref.fill,
29267
+ transformX = _ref.transformX,
29268
+ transformY = _ref.transformY;
29269
+ return _react2.default.createElement("path", { d: d, fill: fill, transform: "matrix(" + [1, 0, 0, 1, transformX, transformY] + ")" });
29270
+ };
29271
+
29272
+ QRCodeCell.propTypes = propTypes;
29273
+ QRCodeCell.defaultProps = defaultProps;
29274
+
29275
+ exports.default = QRCodeCell;
29276
+ });
29277
+
29278
+ unwrapExports(QRCodeCell_1);
29279
+
29280
+ var QRCodeSurface_1 = createCommonjsModule(function (module, exports) {
29281
+
29282
+ Object.defineProperty(exports, "__esModule", {
29283
+ value: true
29284
+ });
29285
+
29286
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
29287
+
29288
+
29289
+
29290
+ var _propTypes2 = _interopRequireDefault(PropTypes__default['default']);
29291
+
29292
+
29293
+
29294
+ var _react2 = _interopRequireDefault(React__default['default']);
29295
+
29296
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29297
+
29298
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
29299
+
29300
+ var propTypes = {
29301
+ children: _propTypes2.default.array.isRequired,
29302
+ size: _propTypes2.default.number.isRequired,
29303
+ title: _propTypes2.default.string,
29304
+ xmlns: _propTypes2.default.string
29305
+ };
29306
+
29307
+ var defaultProps = {
29308
+ title: undefined,
29309
+ xmlns: "http://www.w3.org/2000/svg"
29310
+ };
29311
+
29312
+ var QRCodeSurface = function QRCodeSurface(_ref) {
29313
+ var children = _ref.children,
29314
+ size = _ref.size,
29315
+ title = _ref.title,
29316
+ xmlns = _ref.xmlns,
29317
+ props = _objectWithoutProperties(_ref, ["children", "size", "title", "xmlns"]);
29318
+
29319
+ return _react2.default.createElement(
29320
+ "svg",
29321
+ _extends({}, props, { height: size, width: size, xmlns: xmlns }),
29322
+ title ? _react2.default.createElement(
29323
+ "title",
29324
+ null,
29325
+ title
29326
+ ) : null,
29327
+ children
29328
+ );
29329
+ };
29330
+
29331
+ QRCodeSurface.propTypes = propTypes;
29332
+ QRCodeSurface.defaultProps = defaultProps;
29333
+
29334
+ exports.default = QRCodeSurface;
29335
+ });
29336
+
29337
+ unwrapExports(QRCodeSurface_1);
29338
+
29339
+ var lib = createCommonjsModule(function (module, exports) {
29340
+
29341
+ Object.defineProperty(exports, "__esModule", {
29342
+ value: true
29343
+ });
29344
+
29345
+ var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
29346
+
29347
+
29348
+
29349
+ var _QRCode2 = _interopRequireDefault(QRCode_1);
29350
+
29351
+
29352
+
29353
+ var _ErrorCorrectLevel2 = _interopRequireDefault(ErrorCorrectLevel);
29354
+
29355
+
29356
+
29357
+ var _propTypes2 = _interopRequireDefault(PropTypes__default['default']);
29358
+
29359
+
29360
+
29361
+ var _react2 = _interopRequireDefault(React__default['default']);
29362
+
29363
+
29364
+
29365
+ var _QRCodeCell2 = _interopRequireDefault(QRCodeCell_1);
29366
+
29367
+
29368
+
29369
+ var _QRCodeSurface2 = _interopRequireDefault(QRCodeSurface_1);
29370
+
29371
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29372
+
29373
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } // A `qr.js` doesn't handle error level of zero (M) so we need to do it right, thus the deep require.
29374
+
29375
+
29376
+ var propTypes = {
29377
+ bgColor: _propTypes2.default.oneOfType([_propTypes2.default.object, _propTypes2.default.string]),
29378
+ fgColor: _propTypes2.default.oneOfType([_propTypes2.default.object, _propTypes2.default.string]),
29379
+ level: _propTypes2.default.oneOf(["L", "M", "Q", "H"]),
29380
+ size: _propTypes2.default.number,
29381
+ value: _propTypes2.default.string.isRequired
29382
+ };
29383
+
29384
+ var defaultProps = {
29385
+ bgColor: "#FFFFFF",
29386
+ fgColor: "#000000",
29387
+ level: "L",
29388
+ size: 256
29389
+ };
29390
+
29391
+ var QRCode = function QRCode(_ref) {
29392
+ var bgColor = _ref.bgColor,
29393
+ fgColor = _ref.fgColor,
29394
+ level = _ref.level,
29395
+ size = _ref.size,
29396
+ value = _ref.value,
29397
+ props = _objectWithoutProperties(_ref, ["bgColor", "fgColor", "level", "size", "value"]);
29398
+
29399
+ // We'll use type === -1 to force QRCode to automatically pick the best type.
29400
+ var qrcode = new _QRCode2.default(-1, _ErrorCorrectLevel2.default[level]);
29401
+ qrcode.addData(value);
29402
+ qrcode.make();
29403
+ var cells = qrcode.modules;
29404
+ var tileSize = size / cells.length;
29405
+ return _react2.default.createElement(
29406
+ _QRCodeSurface2.default,
29407
+ _extends({}, props, { size: size }),
29408
+ cells.map(function (row, rowIndex) {
29409
+ return row.map(function (cell, cellIndex) {
29410
+ var transformX = Math.round(cellIndex * tileSize);
29411
+ var transformY = Math.round(rowIndex * tileSize);
29412
+ var qrItemWidth = Math.round((cellIndex + 1) * tileSize) - transformX;
29413
+ var qrItemHeight = Math.round((rowIndex + 1) * tileSize) - transformY;
29414
+ return _react2.default.createElement(_QRCodeCell2.default
29415
+ /* eslint-disable react/no-array-index-key */
29416
+ , { key: "rectangle-" + rowIndex + "-" + cellIndex
29417
+ /* eslint-enable react/no-array-index-key */
29418
+ , d: "M 0 0 L " + qrItemWidth + " 0 L " + qrItemWidth + " " + qrItemHeight + " L 0 " + qrItemHeight + " Z",
29419
+ fill: cell ? fgColor : bgColor,
29420
+ transformX: transformX,
29421
+ transformY: transformY
29422
+ });
29423
+ });
29424
+ })
29425
+ );
29426
+ };
29427
+
29428
+ QRCode.propTypes = propTypes;
29429
+ QRCode.defaultProps = defaultProps;
29430
+
29431
+ exports.default = (0, React__default['default'].memo)(QRCode);
29432
+ });
29433
+
29434
+ var QRCode = unwrapExports(lib);
29435
+
29436
+ function QrCodeView() {
29437
+ const value = window.Pelcro.user.read().id ? `${window.Pelcro.environment.domain}/admin/${window.Pelcro.siteid}/customers/${window.Pelcro.user.read().id}` : `${window.Pelcro.environment.domain}/admin/${window.Pelcro.siteid}/customers`;
29438
+ return /*#__PURE__*/React__default['default'].createElement("div", {
29439
+ id: "pelcro-qrcode-view"
29440
+ }, /*#__PURE__*/React__default['default'].createElement(QRCode, {
29441
+ style: {
29442
+ margin: "auto"
29443
+ },
29444
+ value: value
29445
+ }));
29446
+ }
29447
+
29448
+ const QrCodeModal = ({
29449
+ onDisplay,
29450
+ onClose
29451
+ }) => {
29452
+ return /*#__PURE__*/React__default['default'].createElement(Modal, {
29453
+ id: "pelcro-qrcode-create-modal",
29454
+ onDisplay: onDisplay,
29455
+ onClose: onClose
29456
+ }, /*#__PURE__*/React__default['default'].createElement(ModalBody, null, /*#__PURE__*/React__default['default'].createElement(QrCodeView, null)), /*#__PURE__*/React__default['default'].createElement(ModalFooter, null, /*#__PURE__*/React__default['default'].createElement(Authorship, null)));
29457
+ };
29458
+ QrCodeModal.viewId = "qrcode";
29459
+
28031
29460
  exports.AddressCreateCity = AddressCreateCity;
28032
29461
  exports.AddressCreateContainer = AddressCreateContainer;
28033
29462
  exports.AddressCreateCountrySelect = AddressCreateCountrySelect;
@@ -28192,6 +29621,8 @@ exports.ProfilePicChangeRemoveButton = ProfilePicChangeRemoveButton;
28192
29621
  exports.ProfilePicChangeSelectButton = ProfilePicChangeSelectButton;
28193
29622
  exports.ProfilePicChangeView = ProfilePicChangeView;
28194
29623
  exports.ProfilePicChangeZoom = ProfilePicChangeZoom;
29624
+ exports.QrCodeModal = QrCodeModal;
29625
+ exports.QrCodeView = QrCodeView;
28195
29626
  exports.Radio = Radio;
28196
29627
  exports.RegisterButton = RegisterButton;
28197
29628
  exports.RegisterCompany = RegisterCompany;