@pelcro/react-pelcro-js 3.6.0-beta.2 → 3.6.0-beta.5

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.esm.js CHANGED
@@ -2544,7 +2544,7 @@ var voidElements = {
2544
2544
  "wbr": true
2545
2545
  };
2546
2546
 
2547
- 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)},"")}};
2547
+ 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)},"")}};
2548
2548
 
2549
2549
  var classCallCheck = createCommonjsModule(function (module) {
2550
2550
  function _classCallCheck(instance, Constructor) {
@@ -8218,7 +8218,7 @@ class SaveToMetadataButtonClass {
8218
8218
 
8219
8219
  const saveToMetadataButton = new SaveToMetadataButtonClass();
8220
8220
 
8221
- 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}}
8221
+ 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}}
8222
8222
 
8223
8223
  function _extends$A() {
8224
8224
  _extends$A = Object.assign || function (target) {
@@ -10432,7 +10432,7 @@ const PelcroModalController = ({
10432
10432
  }) => (type === null || type === void 0 ? void 0 : type.viewId) === view));
10433
10433
  };
10434
10434
 
10435
- var lib = createCommonjsModule(function (module, exports) {
10435
+ var lib$1 = createCommonjsModule(function (module, exports) {
10436
10436
 
10437
10437
  Object.defineProperty(exports, "__esModule", {
10438
10438
  value: true
@@ -10622,15 +10622,15 @@ function composeReducers(reducers) {
10622
10622
  }
10623
10623
  });
10624
10624
 
10625
- var useReducerWithSideEffects = unwrapExports(lib);
10626
- lib.executeSideEffects;
10627
- lib.mergeState;
10628
- lib.composeReducers;
10629
- var lib_4 = lib.SideEffect;
10630
- var lib_5 = lib.UpdateWithSideEffect;
10631
- lib.NoUpdate;
10632
- var lib_7 = lib.Update;
10633
- lib.NO_UPDATE_SYMBOL;
10625
+ var useReducerWithSideEffects = unwrapExports(lib$1);
10626
+ lib$1.executeSideEffects;
10627
+ lib$1.mergeState;
10628
+ lib$1.composeReducers;
10629
+ var lib_4 = lib$1.SideEffect;
10630
+ var lib_5 = lib$1.UpdateWithSideEffect;
10631
+ lib$1.NoUpdate;
10632
+ var lib_7 = lib$1.Update;
10633
+ lib$1.NO_UPDATE_SYMBOL;
10634
10634
 
10635
10635
  const SET_EMAIL = "SET_EMAIL";
10636
10636
  const SET_PASSWORD = "SET_PASSWORD";
@@ -16808,6 +16808,7 @@ function PaymentMethodView({
16808
16808
  t
16809
16809
  } = useTranslation("checkoutForm");
16810
16810
  const cardProcessor = getSiteCardProcessor();
16811
+ 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);
16811
16812
  return /*#__PURE__*/React__default.createElement("div", {
16812
16813
  className: "plc-flex plc-flex-col plc-items-center plc-mt-4 sm:plc-px-8 pelcro-payment-block"
16813
16814
  }, cardProcessor === "stripe" && /*#__PURE__*/React__default.createElement("div", {
@@ -16833,7 +16834,7 @@ function PaymentMethodView({
16833
16834
  className: "plc-mb-2"
16834
16835
  }, /*#__PURE__*/React__default.createElement(CouponCode, null), /*#__PURE__*/React__default.createElement(DiscountedPrice, null)), /*#__PURE__*/React__default.createElement(TaxAmount, null), /*#__PURE__*/React__default.createElement("div", {
16835
16836
  className: "plc-grid plc-mt-4 plc-gap-y-2"
16836
- }, /*#__PURE__*/React__default.createElement(SubmitPaymentMethod, null), showExternalPaymentMethods && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, ((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.vantiv_gateway_settings) || /*#__PURE__*/React__default.createElement(PelcroPaymentRequestButton, null), /*#__PURE__*/React__default.createElement(PaypalSubscribeButton, null)))))));
16837
+ }, /*#__PURE__*/React__default.createElement(SubmitPaymentMethod, null), showExternalPaymentMethods && !supportsVantiv ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(PelcroPaymentRequestButton, null), /*#__PURE__*/React__default.createElement(PaypalSubscribeButton, null)) : showExternalPaymentMethods && supportsVantiv ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(PaypalSubscribeButton, null)) : null)))));
16837
16838
  }
16838
16839
 
16839
16840
  const SubscriptionRenewView = ({
@@ -28000,4 +28001,1422 @@ const InvoiceDetailsModal = ({
28000
28001
  };
28001
28002
  InvoiceDetailsModal.viewId = "invoice-details";
28002
28003
 
28003
- export { AddressCreateCity, AddressCreateContainer, AddressCreateCountrySelect, AddressCreateFirstName, AddressCreateLastName, AddressCreateLine1, AddressCreateLine2, AddressCreateModal, AddressCreatePostalCode, AddressCreateSetDefault, AddressCreateStateSelect, AddressCreateSubmit, AddressCreateTextInput, AddressCreateView, AddressSelectContainer, AddressSelectList, AddressSelectModal, AddressSelectSubmit, AddressSelectView, AddressUpdateCity, AddressUpdateContainer, AddressUpdateCountrySelect, AddressUpdateFirstName, AddressUpdateLastName, AddressUpdateLine1, AddressUpdateLine2, AddressUpdateModal, AddressUpdatePostalCode, AddressUpdateSetDefault, AddressUpdateStateSelect, AddressUpdateSubmit, AddressUpdateTextInput, AddressUpdateView, AlertWithContext as Alert, Alert as AlertElement, ApplyCouponButton, Auth0LoginButton, Badge, BankRedirection, Button, CartContainer, CartModal, CartRemoveItemButton, CartSubmit, CartTotalPrice, CartView, Checkbox, CheckoutForm, ConfirmPassword, CouponCode, CouponCodeField, DashboardWithHook as Dashboard, DashboardOpenButton, DatePicker, DiscountedPrice, Email, EmailVerifyContainer, EmailVerifyModal, EmailVerifyResendButton, EmailVerifyView, FacebookLoginButton, GiftCreateContainer, GiftCreateEmail, GiftCreateFirstName, GiftCreateLastName, GiftCreateMessage, GiftCreateModal, GiftCreateStartDate, GiftCreateSubmitButton, GiftCreateView, GiftRedeemCode, GiftRedeemContainer, GiftRedeemModal, GiftRedeemSubmitButton, GiftRedeemView, GoogleLoginButton, Input, InvoiceDetailsContainer, InvoiceDetailsDownloadButton, InvoiceDetailsModal, InvoiceDetailsPayButton, InvoiceDetailsView, InvoicePaymentContainer, InvoicePaymentModal, InvoicePaymentView, Link, LoginButton, LoginContainer, LoginEmail, LoginModal, LoginPassword, LoginRequestLoginToken, LoginView, Logout, MeterModal, MeterView, Modal, ModalBody, ModalFooter, NewsletterWithHook as NewsLetter, NewsletterUpdateButton, NewsletterUpdateContainer, NewsletterUpdateList, NewsletterUpdateModal, NewsletterUpdateView, Notification, OrderConfirmModal, OrderCreateContainer, OrderCreateModal, OrderCreateSubmitButton, OrderCreateView, Password, PasswordChangeButton, PasswordChangeConfirmNewPassword, PasswordChangeContainer, PasswordChangeCurrentPassword, PasswordChangeModal, PasswordChangeNewPassword, PasswordChangeView, PasswordForgotButton, PasswordForgotContainer, PasswordForgotEmail, PasswordForgotModal, PasswordForgotView, PasswordResetButton, PasswordResetConfirmPassword, PasswordResetContainer, PasswordResetEmail, PasswordResetModal, PasswordResetPassword, PasswordResetView, PasswordlessRequestContainer, PasswordlessRequestEmail, PasswordlessRequestModal, PasswordlessRequestView, PasswordlessRequestViewButton, PaymentCreateContainer, PaymentCreateView, PaymentMethodContainer, PaymentMethodSelectContainer, PaymentMethodSelectList, PaymentMethodSelectModal, PaymentMethodSelectSubmit, PaymentMethodSelectView, PaymentMethodUpdateContainer, PaymentMethodUpdateModal, PaymentMethodUpdateView, PaymentMethodView, PaymentSuccessModal, PaymentSuccessView, PaypalSubscribeButton, PelcroCardCVC, PelcroCardExpiry, PelcroCardNumber, PelcroModalController, PelcroPaymentRequestButton, ProfilePicChangeButton, ProfilePicChangeContainer, ProfilePicChangeCropper, ProfilePicChangeModal, ProfilePicChangeRemoveButton, ProfilePicChangeSelectButton, ProfilePicChangeView, ProfilePicChangeZoom, Radio, RegisterButton, RegisterCompany, RegisterContainer, RegisterEmail, RegisterFirstName, RegisterJobTitle, RegisterLastName, RegisterModal, RegisterPassword, RegisterView, Select, SelectModalWithHook as SelectModal, SelectedPaymentMethod, ShopPurchaseButton, ShopSelectProductButton, ShopView, SubmitPaymentMethod, SubscriptionCancelModal, SubscriptionCreateContainer, SubscriptionCreateModal, SubscriptionCreateView, SubscriptionRenewContainer, SubscriptionRenewModal, SubscriptionRenewView, TaxAmount, TextArea, Tooltip, UserUpdateButton, UserUpdateContainer, UserUpdateDisplayName, UserUpdateEmail, UserUpdateFirstName, UserUpdateLastName, UserUpdateModal, UserUpdatePhone, UserUpdateProfilePic, UserUpdateTextInput, UserUpdateView, VerifyLinkTokenContainer, VerifyLinkTokenLoader, VerifyLinkTokenModal, VerifyLinkTokenView, authenticatedButtons, i18next as i18n, init$1 as initButtons, init as initContentEntitlement, invoicePaymentSubmitButton, notify, unauthenticatedButtons, usePelcro };
28004
+ var mode = {
28005
+ MODE_NUMBER : 1 << 0,
28006
+ MODE_ALPHA_NUM : 1 << 1,
28007
+ MODE_8BIT_BYTE : 1 << 2,
28008
+ MODE_KANJI : 1 << 3
28009
+ };
28010
+
28011
+ function QR8bitByte(data) {
28012
+ this.mode = mode.MODE_8BIT_BYTE;
28013
+ this.data = data;
28014
+ }
28015
+
28016
+ QR8bitByte.prototype = {
28017
+
28018
+ getLength : function(buffer) {
28019
+ return this.data.length;
28020
+ },
28021
+
28022
+ write : function(buffer) {
28023
+ for (var i = 0; i < this.data.length; i++) {
28024
+ // not JIS ...
28025
+ buffer.put(this.data.charCodeAt(i), 8);
28026
+ }
28027
+ }
28028
+ };
28029
+
28030
+ var _8BitByte = QR8bitByte;
28031
+
28032
+ var ErrorCorrectLevel = {
28033
+ L : 1,
28034
+ M : 0,
28035
+ Q : 3,
28036
+ H : 2
28037
+ };
28038
+ ErrorCorrectLevel.L;
28039
+ ErrorCorrectLevel.M;
28040
+ ErrorCorrectLevel.Q;
28041
+ ErrorCorrectLevel.H;
28042
+
28043
+ // ErrorCorrectLevel
28044
+
28045
+
28046
+ function QRRSBlock(totalCount, dataCount) {
28047
+ this.totalCount = totalCount;
28048
+ this.dataCount = dataCount;
28049
+ }
28050
+
28051
+ QRRSBlock.RS_BLOCK_TABLE = [
28052
+
28053
+ // L
28054
+ // M
28055
+ // Q
28056
+ // H
28057
+
28058
+ // 1
28059
+ [1, 26, 19],
28060
+ [1, 26, 16],
28061
+ [1, 26, 13],
28062
+ [1, 26, 9],
28063
+
28064
+ // 2
28065
+ [1, 44, 34],
28066
+ [1, 44, 28],
28067
+ [1, 44, 22],
28068
+ [1, 44, 16],
28069
+
28070
+ // 3
28071
+ [1, 70, 55],
28072
+ [1, 70, 44],
28073
+ [2, 35, 17],
28074
+ [2, 35, 13],
28075
+
28076
+ // 4
28077
+ [1, 100, 80],
28078
+ [2, 50, 32],
28079
+ [2, 50, 24],
28080
+ [4, 25, 9],
28081
+
28082
+ // 5
28083
+ [1, 134, 108],
28084
+ [2, 67, 43],
28085
+ [2, 33, 15, 2, 34, 16],
28086
+ [2, 33, 11, 2, 34, 12],
28087
+
28088
+ // 6
28089
+ [2, 86, 68],
28090
+ [4, 43, 27],
28091
+ [4, 43, 19],
28092
+ [4, 43, 15],
28093
+
28094
+ // 7
28095
+ [2, 98, 78],
28096
+ [4, 49, 31],
28097
+ [2, 32, 14, 4, 33, 15],
28098
+ [4, 39, 13, 1, 40, 14],
28099
+
28100
+ // 8
28101
+ [2, 121, 97],
28102
+ [2, 60, 38, 2, 61, 39],
28103
+ [4, 40, 18, 2, 41, 19],
28104
+ [4, 40, 14, 2, 41, 15],
28105
+
28106
+ // 9
28107
+ [2, 146, 116],
28108
+ [3, 58, 36, 2, 59, 37],
28109
+ [4, 36, 16, 4, 37, 17],
28110
+ [4, 36, 12, 4, 37, 13],
28111
+
28112
+ // 10
28113
+ [2, 86, 68, 2, 87, 69],
28114
+ [4, 69, 43, 1, 70, 44],
28115
+ [6, 43, 19, 2, 44, 20],
28116
+ [6, 43, 15, 2, 44, 16],
28117
+
28118
+ // 11
28119
+ [4, 101, 81],
28120
+ [1, 80, 50, 4, 81, 51],
28121
+ [4, 50, 22, 4, 51, 23],
28122
+ [3, 36, 12, 8, 37, 13],
28123
+
28124
+ // 12
28125
+ [2, 116, 92, 2, 117, 93],
28126
+ [6, 58, 36, 2, 59, 37],
28127
+ [4, 46, 20, 6, 47, 21],
28128
+ [7, 42, 14, 4, 43, 15],
28129
+
28130
+ // 13
28131
+ [4, 133, 107],
28132
+ [8, 59, 37, 1, 60, 38],
28133
+ [8, 44, 20, 4, 45, 21],
28134
+ [12, 33, 11, 4, 34, 12],
28135
+
28136
+ // 14
28137
+ [3, 145, 115, 1, 146, 116],
28138
+ [4, 64, 40, 5, 65, 41],
28139
+ [11, 36, 16, 5, 37, 17],
28140
+ [11, 36, 12, 5, 37, 13],
28141
+
28142
+ // 15
28143
+ [5, 109, 87, 1, 110, 88],
28144
+ [5, 65, 41, 5, 66, 42],
28145
+ [5, 54, 24, 7, 55, 25],
28146
+ [11, 36, 12],
28147
+
28148
+ // 16
28149
+ [5, 122, 98, 1, 123, 99],
28150
+ [7, 73, 45, 3, 74, 46],
28151
+ [15, 43, 19, 2, 44, 20],
28152
+ [3, 45, 15, 13, 46, 16],
28153
+
28154
+ // 17
28155
+ [1, 135, 107, 5, 136, 108],
28156
+ [10, 74, 46, 1, 75, 47],
28157
+ [1, 50, 22, 15, 51, 23],
28158
+ [2, 42, 14, 17, 43, 15],
28159
+
28160
+ // 18
28161
+ [5, 150, 120, 1, 151, 121],
28162
+ [9, 69, 43, 4, 70, 44],
28163
+ [17, 50, 22, 1, 51, 23],
28164
+ [2, 42, 14, 19, 43, 15],
28165
+
28166
+ // 19
28167
+ [3, 141, 113, 4, 142, 114],
28168
+ [3, 70, 44, 11, 71, 45],
28169
+ [17, 47, 21, 4, 48, 22],
28170
+ [9, 39, 13, 16, 40, 14],
28171
+
28172
+ // 20
28173
+ [3, 135, 107, 5, 136, 108],
28174
+ [3, 67, 41, 13, 68, 42],
28175
+ [15, 54, 24, 5, 55, 25],
28176
+ [15, 43, 15, 10, 44, 16],
28177
+
28178
+ // 21
28179
+ [4, 144, 116, 4, 145, 117],
28180
+ [17, 68, 42],
28181
+ [17, 50, 22, 6, 51, 23],
28182
+ [19, 46, 16, 6, 47, 17],
28183
+
28184
+ // 22
28185
+ [2, 139, 111, 7, 140, 112],
28186
+ [17, 74, 46],
28187
+ [7, 54, 24, 16, 55, 25],
28188
+ [34, 37, 13],
28189
+
28190
+ // 23
28191
+ [4, 151, 121, 5, 152, 122],
28192
+ [4, 75, 47, 14, 76, 48],
28193
+ [11, 54, 24, 14, 55, 25],
28194
+ [16, 45, 15, 14, 46, 16],
28195
+
28196
+ // 24
28197
+ [6, 147, 117, 4, 148, 118],
28198
+ [6, 73, 45, 14, 74, 46],
28199
+ [11, 54, 24, 16, 55, 25],
28200
+ [30, 46, 16, 2, 47, 17],
28201
+
28202
+ // 25
28203
+ [8, 132, 106, 4, 133, 107],
28204
+ [8, 75, 47, 13, 76, 48],
28205
+ [7, 54, 24, 22, 55, 25],
28206
+ [22, 45, 15, 13, 46, 16],
28207
+
28208
+ // 26
28209
+ [10, 142, 114, 2, 143, 115],
28210
+ [19, 74, 46, 4, 75, 47],
28211
+ [28, 50, 22, 6, 51, 23],
28212
+ [33, 46, 16, 4, 47, 17],
28213
+
28214
+ // 27
28215
+ [8, 152, 122, 4, 153, 123],
28216
+ [22, 73, 45, 3, 74, 46],
28217
+ [8, 53, 23, 26, 54, 24],
28218
+ [12, 45, 15, 28, 46, 16],
28219
+
28220
+ // 28
28221
+ [3, 147, 117, 10, 148, 118],
28222
+ [3, 73, 45, 23, 74, 46],
28223
+ [4, 54, 24, 31, 55, 25],
28224
+ [11, 45, 15, 31, 46, 16],
28225
+
28226
+ // 29
28227
+ [7, 146, 116, 7, 147, 117],
28228
+ [21, 73, 45, 7, 74, 46],
28229
+ [1, 53, 23, 37, 54, 24],
28230
+ [19, 45, 15, 26, 46, 16],
28231
+
28232
+ // 30
28233
+ [5, 145, 115, 10, 146, 116],
28234
+ [19, 75, 47, 10, 76, 48],
28235
+ [15, 54, 24, 25, 55, 25],
28236
+ [23, 45, 15, 25, 46, 16],
28237
+
28238
+ // 31
28239
+ [13, 145, 115, 3, 146, 116],
28240
+ [2, 74, 46, 29, 75, 47],
28241
+ [42, 54, 24, 1, 55, 25],
28242
+ [23, 45, 15, 28, 46, 16],
28243
+
28244
+ // 32
28245
+ [17, 145, 115],
28246
+ [10, 74, 46, 23, 75, 47],
28247
+ [10, 54, 24, 35, 55, 25],
28248
+ [19, 45, 15, 35, 46, 16],
28249
+
28250
+ // 33
28251
+ [17, 145, 115, 1, 146, 116],
28252
+ [14, 74, 46, 21, 75, 47],
28253
+ [29, 54, 24, 19, 55, 25],
28254
+ [11, 45, 15, 46, 46, 16],
28255
+
28256
+ // 34
28257
+ [13, 145, 115, 6, 146, 116],
28258
+ [14, 74, 46, 23, 75, 47],
28259
+ [44, 54, 24, 7, 55, 25],
28260
+ [59, 46, 16, 1, 47, 17],
28261
+
28262
+ // 35
28263
+ [12, 151, 121, 7, 152, 122],
28264
+ [12, 75, 47, 26, 76, 48],
28265
+ [39, 54, 24, 14, 55, 25],
28266
+ [22, 45, 15, 41, 46, 16],
28267
+
28268
+ // 36
28269
+ [6, 151, 121, 14, 152, 122],
28270
+ [6, 75, 47, 34, 76, 48],
28271
+ [46, 54, 24, 10, 55, 25],
28272
+ [2, 45, 15, 64, 46, 16],
28273
+
28274
+ // 37
28275
+ [17, 152, 122, 4, 153, 123],
28276
+ [29, 74, 46, 14, 75, 47],
28277
+ [49, 54, 24, 10, 55, 25],
28278
+ [24, 45, 15, 46, 46, 16],
28279
+
28280
+ // 38
28281
+ [4, 152, 122, 18, 153, 123],
28282
+ [13, 74, 46, 32, 75, 47],
28283
+ [48, 54, 24, 14, 55, 25],
28284
+ [42, 45, 15, 32, 46, 16],
28285
+
28286
+ // 39
28287
+ [20, 147, 117, 4, 148, 118],
28288
+ [40, 75, 47, 7, 76, 48],
28289
+ [43, 54, 24, 22, 55, 25],
28290
+ [10, 45, 15, 67, 46, 16],
28291
+
28292
+ // 40
28293
+ [19, 148, 118, 6, 149, 119],
28294
+ [18, 75, 47, 31, 76, 48],
28295
+ [34, 54, 24, 34, 55, 25],
28296
+ [20, 45, 15, 61, 46, 16]
28297
+ ];
28298
+
28299
+ QRRSBlock.getRSBlocks = function(typeNumber, errorCorrectLevel) {
28300
+
28301
+ var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);
28302
+
28303
+ if (rsBlock == undefined) {
28304
+ throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + errorCorrectLevel);
28305
+ }
28306
+
28307
+ var length = rsBlock.length / 3;
28308
+
28309
+ var list = new Array();
28310
+
28311
+ for (var i = 0; i < length; i++) {
28312
+
28313
+ var count = rsBlock[i * 3 + 0];
28314
+ var totalCount = rsBlock[i * 3 + 1];
28315
+ var dataCount = rsBlock[i * 3 + 2];
28316
+
28317
+ for (var j = 0; j < count; j++) {
28318
+ list.push(new QRRSBlock(totalCount, dataCount) );
28319
+ }
28320
+ }
28321
+
28322
+ return list;
28323
+ };
28324
+
28325
+ QRRSBlock.getRsBlockTable = function(typeNumber, errorCorrectLevel) {
28326
+
28327
+ switch(errorCorrectLevel) {
28328
+ case ErrorCorrectLevel.L :
28329
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];
28330
+ case ErrorCorrectLevel.M :
28331
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];
28332
+ case ErrorCorrectLevel.Q :
28333
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];
28334
+ case ErrorCorrectLevel.H :
28335
+ return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];
28336
+ default :
28337
+ return undefined;
28338
+ }
28339
+ };
28340
+
28341
+ var RSBlock = QRRSBlock;
28342
+
28343
+ function QRBitBuffer() {
28344
+ this.buffer = new Array();
28345
+ this.length = 0;
28346
+ }
28347
+
28348
+ QRBitBuffer.prototype = {
28349
+
28350
+ get : function(index) {
28351
+ var bufIndex = Math.floor(index / 8);
28352
+ return ( (this.buffer[bufIndex] >>> (7 - index % 8) ) & 1) == 1;
28353
+ },
28354
+
28355
+ put : function(num, length) {
28356
+ for (var i = 0; i < length; i++) {
28357
+ this.putBit( ( (num >>> (length - i - 1) ) & 1) == 1);
28358
+ }
28359
+ },
28360
+
28361
+ getLengthInBits : function() {
28362
+ return this.length;
28363
+ },
28364
+
28365
+ putBit : function(bit) {
28366
+
28367
+ var bufIndex = Math.floor(this.length / 8);
28368
+ if (this.buffer.length <= bufIndex) {
28369
+ this.buffer.push(0);
28370
+ }
28371
+
28372
+ if (bit) {
28373
+ this.buffer[bufIndex] |= (0x80 >>> (this.length % 8) );
28374
+ }
28375
+
28376
+ this.length++;
28377
+ }
28378
+ };
28379
+
28380
+ var BitBuffer = QRBitBuffer;
28381
+
28382
+ var QRMath = {
28383
+
28384
+ glog : function(n) {
28385
+
28386
+ if (n < 1) {
28387
+ throw new Error("glog(" + n + ")");
28388
+ }
28389
+
28390
+ return QRMath.LOG_TABLE[n];
28391
+ },
28392
+
28393
+ gexp : function(n) {
28394
+
28395
+ while (n < 0) {
28396
+ n += 255;
28397
+ }
28398
+
28399
+ while (n >= 256) {
28400
+ n -= 255;
28401
+ }
28402
+
28403
+ return QRMath.EXP_TABLE[n];
28404
+ },
28405
+
28406
+ EXP_TABLE : new Array(256),
28407
+
28408
+ LOG_TABLE : new Array(256)
28409
+
28410
+ };
28411
+
28412
+ for (var i = 0; i < 8; i++) {
28413
+ QRMath.EXP_TABLE[i] = 1 << i;
28414
+ }
28415
+ for (var i = 8; i < 256; i++) {
28416
+ QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4]
28417
+ ^ QRMath.EXP_TABLE[i - 5]
28418
+ ^ QRMath.EXP_TABLE[i - 6]
28419
+ ^ QRMath.EXP_TABLE[i - 8];
28420
+ }
28421
+ for (var i = 0; i < 255; i++) {
28422
+ QRMath.LOG_TABLE[QRMath.EXP_TABLE[i] ] = i;
28423
+ }
28424
+
28425
+ var math = QRMath;
28426
+
28427
+ function QRPolynomial(num, shift) {
28428
+
28429
+ if (num.length == undefined) {
28430
+ throw new Error(num.length + "/" + shift);
28431
+ }
28432
+
28433
+ var offset = 0;
28434
+
28435
+ while (offset < num.length && num[offset] == 0) {
28436
+ offset++;
28437
+ }
28438
+
28439
+ this.num = new Array(num.length - offset + shift);
28440
+ for (var i = 0; i < num.length - offset; i++) {
28441
+ this.num[i] = num[i + offset];
28442
+ }
28443
+ }
28444
+
28445
+ QRPolynomial.prototype = {
28446
+
28447
+ get : function(index) {
28448
+ return this.num[index];
28449
+ },
28450
+
28451
+ getLength : function() {
28452
+ return this.num.length;
28453
+ },
28454
+
28455
+ multiply : function(e) {
28456
+
28457
+ var num = new Array(this.getLength() + e.getLength() - 1);
28458
+
28459
+ for (var i = 0; i < this.getLength(); i++) {
28460
+ for (var j = 0; j < e.getLength(); j++) {
28461
+ num[i + j] ^= math.gexp(math.glog(this.get(i) ) + math.glog(e.get(j) ) );
28462
+ }
28463
+ }
28464
+
28465
+ return new QRPolynomial(num, 0);
28466
+ },
28467
+
28468
+ mod : function(e) {
28469
+
28470
+ if (this.getLength() - e.getLength() < 0) {
28471
+ return this;
28472
+ }
28473
+
28474
+ var ratio = math.glog(this.get(0) ) - math.glog(e.get(0) );
28475
+
28476
+ var num = new Array(this.getLength() );
28477
+
28478
+ for (var i = 0; i < this.getLength(); i++) {
28479
+ num[i] = this.get(i);
28480
+ }
28481
+
28482
+ for (var i = 0; i < e.getLength(); i++) {
28483
+ num[i] ^= math.gexp(math.glog(e.get(i) ) + ratio);
28484
+ }
28485
+
28486
+ // recursive call
28487
+ return new QRPolynomial(num, 0).mod(e);
28488
+ }
28489
+ };
28490
+
28491
+ var Polynomial = QRPolynomial;
28492
+
28493
+ var QRMaskPattern = {
28494
+ PATTERN000 : 0,
28495
+ PATTERN001 : 1,
28496
+ PATTERN010 : 2,
28497
+ PATTERN011 : 3,
28498
+ PATTERN100 : 4,
28499
+ PATTERN101 : 5,
28500
+ PATTERN110 : 6,
28501
+ PATTERN111 : 7
28502
+ };
28503
+
28504
+ var QRUtil = {
28505
+
28506
+ PATTERN_POSITION_TABLE : [
28507
+ [],
28508
+ [6, 18],
28509
+ [6, 22],
28510
+ [6, 26],
28511
+ [6, 30],
28512
+ [6, 34],
28513
+ [6, 22, 38],
28514
+ [6, 24, 42],
28515
+ [6, 26, 46],
28516
+ [6, 28, 50],
28517
+ [6, 30, 54],
28518
+ [6, 32, 58],
28519
+ [6, 34, 62],
28520
+ [6, 26, 46, 66],
28521
+ [6, 26, 48, 70],
28522
+ [6, 26, 50, 74],
28523
+ [6, 30, 54, 78],
28524
+ [6, 30, 56, 82],
28525
+ [6, 30, 58, 86],
28526
+ [6, 34, 62, 90],
28527
+ [6, 28, 50, 72, 94],
28528
+ [6, 26, 50, 74, 98],
28529
+ [6, 30, 54, 78, 102],
28530
+ [6, 28, 54, 80, 106],
28531
+ [6, 32, 58, 84, 110],
28532
+ [6, 30, 58, 86, 114],
28533
+ [6, 34, 62, 90, 118],
28534
+ [6, 26, 50, 74, 98, 122],
28535
+ [6, 30, 54, 78, 102, 126],
28536
+ [6, 26, 52, 78, 104, 130],
28537
+ [6, 30, 56, 82, 108, 134],
28538
+ [6, 34, 60, 86, 112, 138],
28539
+ [6, 30, 58, 86, 114, 142],
28540
+ [6, 34, 62, 90, 118, 146],
28541
+ [6, 30, 54, 78, 102, 126, 150],
28542
+ [6, 24, 50, 76, 102, 128, 154],
28543
+ [6, 28, 54, 80, 106, 132, 158],
28544
+ [6, 32, 58, 84, 110, 136, 162],
28545
+ [6, 26, 54, 82, 110, 138, 166],
28546
+ [6, 30, 58, 86, 114, 142, 170]
28547
+ ],
28548
+
28549
+ G15 : (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0),
28550
+ G18 : (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0),
28551
+ G15_MASK : (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1),
28552
+
28553
+ getBCHTypeInfo : function(data) {
28554
+ var d = data << 10;
28555
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
28556
+ d ^= (QRUtil.G15 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) ) );
28557
+ }
28558
+ return ( (data << 10) | d) ^ QRUtil.G15_MASK;
28559
+ },
28560
+
28561
+ getBCHTypeNumber : function(data) {
28562
+ var d = data << 12;
28563
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
28564
+ d ^= (QRUtil.G18 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) ) );
28565
+ }
28566
+ return (data << 12) | d;
28567
+ },
28568
+
28569
+ getBCHDigit : function(data) {
28570
+
28571
+ var digit = 0;
28572
+
28573
+ while (data != 0) {
28574
+ digit++;
28575
+ data >>>= 1;
28576
+ }
28577
+
28578
+ return digit;
28579
+ },
28580
+
28581
+ getPatternPosition : function(typeNumber) {
28582
+ return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];
28583
+ },
28584
+
28585
+ getMask : function(maskPattern, i, j) {
28586
+
28587
+ switch (maskPattern) {
28588
+
28589
+ case QRMaskPattern.PATTERN000 : return (i + j) % 2 == 0;
28590
+ case QRMaskPattern.PATTERN001 : return i % 2 == 0;
28591
+ case QRMaskPattern.PATTERN010 : return j % 3 == 0;
28592
+ case QRMaskPattern.PATTERN011 : return (i + j) % 3 == 0;
28593
+ case QRMaskPattern.PATTERN100 : return (Math.floor(i / 2) + Math.floor(j / 3) ) % 2 == 0;
28594
+ case QRMaskPattern.PATTERN101 : return (i * j) % 2 + (i * j) % 3 == 0;
28595
+ case QRMaskPattern.PATTERN110 : return ( (i * j) % 2 + (i * j) % 3) % 2 == 0;
28596
+ case QRMaskPattern.PATTERN111 : return ( (i * j) % 3 + (i + j) % 2) % 2 == 0;
28597
+
28598
+ default :
28599
+ throw new Error("bad maskPattern:" + maskPattern);
28600
+ }
28601
+ },
28602
+
28603
+ getErrorCorrectPolynomial : function(errorCorrectLength) {
28604
+
28605
+ var a = new Polynomial([1], 0);
28606
+
28607
+ for (var i = 0; i < errorCorrectLength; i++) {
28608
+ a = a.multiply(new Polynomial([1, math.gexp(i)], 0) );
28609
+ }
28610
+
28611
+ return a;
28612
+ },
28613
+
28614
+ getLengthInBits : function(mode$1, type) {
28615
+
28616
+ if (1 <= type && type < 10) {
28617
+
28618
+ // 1 - 9
28619
+
28620
+ switch(mode$1) {
28621
+ case mode.MODE_NUMBER : return 10;
28622
+ case mode.MODE_ALPHA_NUM : return 9;
28623
+ case mode.MODE_8BIT_BYTE : return 8;
28624
+ case mode.MODE_KANJI : return 8;
28625
+ default :
28626
+ throw new Error("mode:" + mode$1);
28627
+ }
28628
+
28629
+ } else if (type < 27) {
28630
+
28631
+ // 10 - 26
28632
+
28633
+ switch(mode$1) {
28634
+ case mode.MODE_NUMBER : return 12;
28635
+ case mode.MODE_ALPHA_NUM : return 11;
28636
+ case mode.MODE_8BIT_BYTE : return 16;
28637
+ case mode.MODE_KANJI : return 10;
28638
+ default :
28639
+ throw new Error("mode:" + mode$1);
28640
+ }
28641
+
28642
+ } else if (type < 41) {
28643
+
28644
+ // 27 - 40
28645
+
28646
+ switch(mode$1) {
28647
+ case mode.MODE_NUMBER : return 14;
28648
+ case mode.MODE_ALPHA_NUM : return 13;
28649
+ case mode.MODE_8BIT_BYTE : return 16;
28650
+ case mode.MODE_KANJI : return 12;
28651
+ default :
28652
+ throw new Error("mode:" + mode$1);
28653
+ }
28654
+
28655
+ } else {
28656
+ throw new Error("type:" + type);
28657
+ }
28658
+ },
28659
+
28660
+ getLostPoint : function(qrCode) {
28661
+
28662
+ var moduleCount = qrCode.getModuleCount();
28663
+
28664
+ var lostPoint = 0;
28665
+
28666
+ // LEVEL1
28667
+
28668
+ for (var row = 0; row < moduleCount; row++) {
28669
+
28670
+ for (var col = 0; col < moduleCount; col++) {
28671
+
28672
+ var sameCount = 0;
28673
+ var dark = qrCode.isDark(row, col);
28674
+
28675
+ for (var r = -1; r <= 1; r++) {
28676
+
28677
+ if (row + r < 0 || moduleCount <= row + r) {
28678
+ continue;
28679
+ }
28680
+
28681
+ for (var c = -1; c <= 1; c++) {
28682
+
28683
+ if (col + c < 0 || moduleCount <= col + c) {
28684
+ continue;
28685
+ }
28686
+
28687
+ if (r == 0 && c == 0) {
28688
+ continue;
28689
+ }
28690
+
28691
+ if (dark == qrCode.isDark(row + r, col + c) ) {
28692
+ sameCount++;
28693
+ }
28694
+ }
28695
+ }
28696
+
28697
+ if (sameCount > 5) {
28698
+ lostPoint += (3 + sameCount - 5);
28699
+ }
28700
+ }
28701
+ }
28702
+
28703
+ // LEVEL2
28704
+
28705
+ for (var row = 0; row < moduleCount - 1; row++) {
28706
+ for (var col = 0; col < moduleCount - 1; col++) {
28707
+ var count = 0;
28708
+ if (qrCode.isDark(row, col ) ) count++;
28709
+ if (qrCode.isDark(row + 1, col ) ) count++;
28710
+ if (qrCode.isDark(row, col + 1) ) count++;
28711
+ if (qrCode.isDark(row + 1, col + 1) ) count++;
28712
+ if (count == 0 || count == 4) {
28713
+ lostPoint += 3;
28714
+ }
28715
+ }
28716
+ }
28717
+
28718
+ // LEVEL3
28719
+
28720
+ for (var row = 0; row < moduleCount; row++) {
28721
+ for (var col = 0; col < moduleCount - 6; col++) {
28722
+ if (qrCode.isDark(row, col)
28723
+ && !qrCode.isDark(row, col + 1)
28724
+ && qrCode.isDark(row, col + 2)
28725
+ && qrCode.isDark(row, col + 3)
28726
+ && qrCode.isDark(row, col + 4)
28727
+ && !qrCode.isDark(row, col + 5)
28728
+ && qrCode.isDark(row, col + 6) ) {
28729
+ lostPoint += 40;
28730
+ }
28731
+ }
28732
+ }
28733
+
28734
+ for (var col = 0; col < moduleCount; col++) {
28735
+ for (var row = 0; row < moduleCount - 6; row++) {
28736
+ if (qrCode.isDark(row, col)
28737
+ && !qrCode.isDark(row + 1, col)
28738
+ && qrCode.isDark(row + 2, col)
28739
+ && qrCode.isDark(row + 3, col)
28740
+ && qrCode.isDark(row + 4, col)
28741
+ && !qrCode.isDark(row + 5, col)
28742
+ && qrCode.isDark(row + 6, col) ) {
28743
+ lostPoint += 40;
28744
+ }
28745
+ }
28746
+ }
28747
+
28748
+ // LEVEL4
28749
+
28750
+ var darkCount = 0;
28751
+
28752
+ for (var col = 0; col < moduleCount; col++) {
28753
+ for (var row = 0; row < moduleCount; row++) {
28754
+ if (qrCode.isDark(row, col) ) {
28755
+ darkCount++;
28756
+ }
28757
+ }
28758
+ }
28759
+
28760
+ var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;
28761
+ lostPoint += ratio * 10;
28762
+
28763
+ return lostPoint;
28764
+ }
28765
+ };
28766
+
28767
+ var util = QRUtil;
28768
+
28769
+ function QRCode$1(typeNumber, errorCorrectLevel) {
28770
+ this.typeNumber = typeNumber;
28771
+ this.errorCorrectLevel = errorCorrectLevel;
28772
+ this.modules = null;
28773
+ this.moduleCount = 0;
28774
+ this.dataCache = null;
28775
+ this.dataList = [];
28776
+ }
28777
+
28778
+ // for client side minification
28779
+ var proto = QRCode$1.prototype;
28780
+
28781
+ proto.addData = function(data) {
28782
+ var newData = new _8BitByte(data);
28783
+ this.dataList.push(newData);
28784
+ this.dataCache = null;
28785
+ };
28786
+
28787
+ proto.isDark = function(row, col) {
28788
+ if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {
28789
+ throw new Error(row + "," + col);
28790
+ }
28791
+ return this.modules[row][col];
28792
+ };
28793
+
28794
+ proto.getModuleCount = function() {
28795
+ return this.moduleCount;
28796
+ };
28797
+
28798
+ proto.make = function() {
28799
+ // Calculate automatically typeNumber if provided is < 1
28800
+ if (this.typeNumber < 1 ){
28801
+ var typeNumber = 1;
28802
+ for (typeNumber = 1; typeNumber < 40; typeNumber++) {
28803
+ var rsBlocks = RSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel);
28804
+
28805
+ var buffer = new BitBuffer();
28806
+ var totalDataCount = 0;
28807
+ for (var i = 0; i < rsBlocks.length; i++) {
28808
+ totalDataCount += rsBlocks[i].dataCount;
28809
+ }
28810
+
28811
+ for (var i = 0; i < this.dataList.length; i++) {
28812
+ var data = this.dataList[i];
28813
+ buffer.put(data.mode, 4);
28814
+ buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );
28815
+ data.write(buffer);
28816
+ }
28817
+ if (buffer.getLengthInBits() <= totalDataCount * 8)
28818
+ break;
28819
+ }
28820
+ this.typeNumber = typeNumber;
28821
+ }
28822
+ this.makeImpl(false, this.getBestMaskPattern() );
28823
+ };
28824
+
28825
+ proto.makeImpl = function(test, maskPattern) {
28826
+
28827
+ this.moduleCount = this.typeNumber * 4 + 17;
28828
+ this.modules = new Array(this.moduleCount);
28829
+
28830
+ for (var row = 0; row < this.moduleCount; row++) {
28831
+
28832
+ this.modules[row] = new Array(this.moduleCount);
28833
+
28834
+ for (var col = 0; col < this.moduleCount; col++) {
28835
+ this.modules[row][col] = null;//(col + row) % 3;
28836
+ }
28837
+ }
28838
+
28839
+ this.setupPositionProbePattern(0, 0);
28840
+ this.setupPositionProbePattern(this.moduleCount - 7, 0);
28841
+ this.setupPositionProbePattern(0, this.moduleCount - 7);
28842
+ this.setupPositionAdjustPattern();
28843
+ this.setupTimingPattern();
28844
+ this.setupTypeInfo(test, maskPattern);
28845
+
28846
+ if (this.typeNumber >= 7) {
28847
+ this.setupTypeNumber(test);
28848
+ }
28849
+
28850
+ if (this.dataCache == null) {
28851
+ this.dataCache = QRCode$1.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
28852
+ }
28853
+
28854
+ this.mapData(this.dataCache, maskPattern);
28855
+ };
28856
+
28857
+ proto.setupPositionProbePattern = function(row, col) {
28858
+
28859
+ for (var r = -1; r <= 7; r++) {
28860
+
28861
+ if (row + r <= -1 || this.moduleCount <= row + r) continue;
28862
+
28863
+ for (var c = -1; c <= 7; c++) {
28864
+
28865
+ if (col + c <= -1 || this.moduleCount <= col + c) continue;
28866
+
28867
+ if ( (0 <= r && r <= 6 && (c == 0 || c == 6) )
28868
+ || (0 <= c && c <= 6 && (r == 0 || r == 6) )
28869
+ || (2 <= r && r <= 4 && 2 <= c && c <= 4) ) {
28870
+ this.modules[row + r][col + c] = true;
28871
+ } else {
28872
+ this.modules[row + r][col + c] = false;
28873
+ }
28874
+ }
28875
+ }
28876
+ };
28877
+
28878
+ proto.getBestMaskPattern = function() {
28879
+
28880
+ var minLostPoint = 0;
28881
+ var pattern = 0;
28882
+
28883
+ for (var i = 0; i < 8; i++) {
28884
+
28885
+ this.makeImpl(true, i);
28886
+
28887
+ var lostPoint = util.getLostPoint(this);
28888
+
28889
+ if (i == 0 || minLostPoint > lostPoint) {
28890
+ minLostPoint = lostPoint;
28891
+ pattern = i;
28892
+ }
28893
+ }
28894
+
28895
+ return pattern;
28896
+ };
28897
+
28898
+ proto.createMovieClip = function(target_mc, instance_name, depth) {
28899
+
28900
+ var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);
28901
+ var cs = 1;
28902
+
28903
+ this.make();
28904
+
28905
+ for (var row = 0; row < this.modules.length; row++) {
28906
+
28907
+ var y = row * cs;
28908
+
28909
+ for (var col = 0; col < this.modules[row].length; col++) {
28910
+
28911
+ var x = col * cs;
28912
+ var dark = this.modules[row][col];
28913
+
28914
+ if (dark) {
28915
+ qr_mc.beginFill(0, 100);
28916
+ qr_mc.moveTo(x, y);
28917
+ qr_mc.lineTo(x + cs, y);
28918
+ qr_mc.lineTo(x + cs, y + cs);
28919
+ qr_mc.lineTo(x, y + cs);
28920
+ qr_mc.endFill();
28921
+ }
28922
+ }
28923
+ }
28924
+
28925
+ return qr_mc;
28926
+ };
28927
+
28928
+ proto.setupTimingPattern = function() {
28929
+
28930
+ for (var r = 8; r < this.moduleCount - 8; r++) {
28931
+ if (this.modules[r][6] != null) {
28932
+ continue;
28933
+ }
28934
+ this.modules[r][6] = (r % 2 == 0);
28935
+ }
28936
+
28937
+ for (var c = 8; c < this.moduleCount - 8; c++) {
28938
+ if (this.modules[6][c] != null) {
28939
+ continue;
28940
+ }
28941
+ this.modules[6][c] = (c % 2 == 0);
28942
+ }
28943
+ };
28944
+
28945
+ proto.setupPositionAdjustPattern = function() {
28946
+
28947
+ var pos = util.getPatternPosition(this.typeNumber);
28948
+
28949
+ for (var i = 0; i < pos.length; i++) {
28950
+
28951
+ for (var j = 0; j < pos.length; j++) {
28952
+
28953
+ var row = pos[i];
28954
+ var col = pos[j];
28955
+
28956
+ if (this.modules[row][col] != null) {
28957
+ continue;
28958
+ }
28959
+
28960
+ for (var r = -2; r <= 2; r++) {
28961
+
28962
+ for (var c = -2; c <= 2; c++) {
28963
+
28964
+ if (r == -2 || r == 2 || c == -2 || c == 2
28965
+ || (r == 0 && c == 0) ) {
28966
+ this.modules[row + r][col + c] = true;
28967
+ } else {
28968
+ this.modules[row + r][col + c] = false;
28969
+ }
28970
+ }
28971
+ }
28972
+ }
28973
+ }
28974
+ };
28975
+
28976
+ proto.setupTypeNumber = function(test) {
28977
+
28978
+ var bits = util.getBCHTypeNumber(this.typeNumber);
28979
+
28980
+ for (var i = 0; i < 18; i++) {
28981
+ var mod = (!test && ( (bits >> i) & 1) == 1);
28982
+ this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;
28983
+ }
28984
+
28985
+ for (var i = 0; i < 18; i++) {
28986
+ var mod = (!test && ( (bits >> i) & 1) == 1);
28987
+ this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;
28988
+ }
28989
+ };
28990
+
28991
+ proto.setupTypeInfo = function(test, maskPattern) {
28992
+
28993
+ var data = (this.errorCorrectLevel << 3) | maskPattern;
28994
+ var bits = util.getBCHTypeInfo(data);
28995
+
28996
+ // vertical
28997
+ for (var i = 0; i < 15; i++) {
28998
+
28999
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29000
+
29001
+ if (i < 6) {
29002
+ this.modules[i][8] = mod;
29003
+ } else if (i < 8) {
29004
+ this.modules[i + 1][8] = mod;
29005
+ } else {
29006
+ this.modules[this.moduleCount - 15 + i][8] = mod;
29007
+ }
29008
+ }
29009
+
29010
+ // horizontal
29011
+ for (var i = 0; i < 15; i++) {
29012
+
29013
+ var mod = (!test && ( (bits >> i) & 1) == 1);
29014
+
29015
+ if (i < 8) {
29016
+ this.modules[8][this.moduleCount - i - 1] = mod;
29017
+ } else if (i < 9) {
29018
+ this.modules[8][15 - i - 1 + 1] = mod;
29019
+ } else {
29020
+ this.modules[8][15 - i - 1] = mod;
29021
+ }
29022
+ }
29023
+
29024
+ // fixed module
29025
+ this.modules[this.moduleCount - 8][8] = (!test);
29026
+ };
29027
+
29028
+ proto.mapData = function(data, maskPattern) {
29029
+
29030
+ var inc = -1;
29031
+ var row = this.moduleCount - 1;
29032
+ var bitIndex = 7;
29033
+ var byteIndex = 0;
29034
+
29035
+ for (var col = this.moduleCount - 1; col > 0; col -= 2) {
29036
+
29037
+ if (col == 6) col--;
29038
+
29039
+ while (true) {
29040
+
29041
+ for (var c = 0; c < 2; c++) {
29042
+
29043
+ if (this.modules[row][col - c] == null) {
29044
+
29045
+ var dark = false;
29046
+
29047
+ if (byteIndex < data.length) {
29048
+ dark = ( ( (data[byteIndex] >>> bitIndex) & 1) == 1);
29049
+ }
29050
+
29051
+ var mask = util.getMask(maskPattern, row, col - c);
29052
+
29053
+ if (mask) {
29054
+ dark = !dark;
29055
+ }
29056
+
29057
+ this.modules[row][col - c] = dark;
29058
+ bitIndex--;
29059
+
29060
+ if (bitIndex == -1) {
29061
+ byteIndex++;
29062
+ bitIndex = 7;
29063
+ }
29064
+ }
29065
+ }
29066
+
29067
+ row += inc;
29068
+
29069
+ if (row < 0 || this.moduleCount <= row) {
29070
+ row -= inc;
29071
+ inc = -inc;
29072
+ break;
29073
+ }
29074
+ }
29075
+ }
29076
+ };
29077
+
29078
+ QRCode$1.PAD0 = 0xEC;
29079
+ QRCode$1.PAD1 = 0x11;
29080
+
29081
+ QRCode$1.createData = function(typeNumber, errorCorrectLevel, dataList) {
29082
+
29083
+ var rsBlocks = RSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
29084
+
29085
+ var buffer = new BitBuffer();
29086
+
29087
+ for (var i = 0; i < dataList.length; i++) {
29088
+ var data = dataList[i];
29089
+ buffer.put(data.mode, 4);
29090
+ buffer.put(data.getLength(), util.getLengthInBits(data.mode, typeNumber) );
29091
+ data.write(buffer);
29092
+ }
29093
+
29094
+ // calc num max data.
29095
+ var totalDataCount = 0;
29096
+ for (var i = 0; i < rsBlocks.length; i++) {
29097
+ totalDataCount += rsBlocks[i].dataCount;
29098
+ }
29099
+
29100
+ if (buffer.getLengthInBits() > totalDataCount * 8) {
29101
+ throw new Error("code length overflow. ("
29102
+ + buffer.getLengthInBits()
29103
+ + ">"
29104
+ + totalDataCount * 8
29105
+ + ")");
29106
+ }
29107
+
29108
+ // end code
29109
+ if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) {
29110
+ buffer.put(0, 4);
29111
+ }
29112
+
29113
+ // padding
29114
+ while (buffer.getLengthInBits() % 8 != 0) {
29115
+ buffer.putBit(false);
29116
+ }
29117
+
29118
+ // padding
29119
+ while (true) {
29120
+
29121
+ if (buffer.getLengthInBits() >= totalDataCount * 8) {
29122
+ break;
29123
+ }
29124
+ buffer.put(QRCode$1.PAD0, 8);
29125
+
29126
+ if (buffer.getLengthInBits() >= totalDataCount * 8) {
29127
+ break;
29128
+ }
29129
+ buffer.put(QRCode$1.PAD1, 8);
29130
+ }
29131
+
29132
+ return QRCode$1.createBytes(buffer, rsBlocks);
29133
+ };
29134
+
29135
+ QRCode$1.createBytes = function(buffer, rsBlocks) {
29136
+
29137
+ var offset = 0;
29138
+
29139
+ var maxDcCount = 0;
29140
+ var maxEcCount = 0;
29141
+
29142
+ var dcdata = new Array(rsBlocks.length);
29143
+ var ecdata = new Array(rsBlocks.length);
29144
+
29145
+ for (var r = 0; r < rsBlocks.length; r++) {
29146
+
29147
+ var dcCount = rsBlocks[r].dataCount;
29148
+ var ecCount = rsBlocks[r].totalCount - dcCount;
29149
+
29150
+ maxDcCount = Math.max(maxDcCount, dcCount);
29151
+ maxEcCount = Math.max(maxEcCount, ecCount);
29152
+
29153
+ dcdata[r] = new Array(dcCount);
29154
+
29155
+ for (var i = 0; i < dcdata[r].length; i++) {
29156
+ dcdata[r][i] = 0xff & buffer.buffer[i + offset];
29157
+ }
29158
+ offset += dcCount;
29159
+
29160
+ var rsPoly = util.getErrorCorrectPolynomial(ecCount);
29161
+ var rawPoly = new Polynomial(dcdata[r], rsPoly.getLength() - 1);
29162
+
29163
+ var modPoly = rawPoly.mod(rsPoly);
29164
+ ecdata[r] = new Array(rsPoly.getLength() - 1);
29165
+ for (var i = 0; i < ecdata[r].length; i++) {
29166
+ var modIndex = i + modPoly.getLength() - ecdata[r].length;
29167
+ ecdata[r][i] = (modIndex >= 0)? modPoly.get(modIndex) : 0;
29168
+ }
29169
+
29170
+ }
29171
+
29172
+ var totalCodeCount = 0;
29173
+ for (var i = 0; i < rsBlocks.length; i++) {
29174
+ totalCodeCount += rsBlocks[i].totalCount;
29175
+ }
29176
+
29177
+ var data = new Array(totalCodeCount);
29178
+ var index = 0;
29179
+
29180
+ for (var i = 0; i < maxDcCount; i++) {
29181
+ for (var r = 0; r < rsBlocks.length; r++) {
29182
+ if (i < dcdata[r].length) {
29183
+ data[index++] = dcdata[r][i];
29184
+ }
29185
+ }
29186
+ }
29187
+
29188
+ for (var i = 0; i < maxEcCount; i++) {
29189
+ for (var r = 0; r < rsBlocks.length; r++) {
29190
+ if (i < ecdata[r].length) {
29191
+ data[index++] = ecdata[r][i];
29192
+ }
29193
+ }
29194
+ }
29195
+
29196
+ return data;
29197
+ };
29198
+
29199
+ var QRCode_1 = QRCode$1;
29200
+
29201
+ var QRCodeCell_1 = createCommonjsModule(function (module, exports) {
29202
+
29203
+ Object.defineProperty(exports, "__esModule", {
29204
+ value: true
29205
+ });
29206
+
29207
+
29208
+
29209
+ var _propTypes2 = _interopRequireDefault(PropTypes);
29210
+
29211
+
29212
+
29213
+ var _react2 = _interopRequireDefault(React__default);
29214
+
29215
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29216
+
29217
+ var propTypes = {
29218
+ d: _propTypes2.default.string.isRequired,
29219
+ fill: _propTypes2.default.string.isRequired,
29220
+ transformX: _propTypes2.default.number.isRequired,
29221
+ transformY: _propTypes2.default.number.isRequired
29222
+ };
29223
+
29224
+ var defaultProps = {};
29225
+
29226
+ var QRCodeCell = function QRCodeCell(_ref) {
29227
+ var d = _ref.d,
29228
+ fill = _ref.fill,
29229
+ transformX = _ref.transformX,
29230
+ transformY = _ref.transformY;
29231
+ return _react2.default.createElement("path", { d: d, fill: fill, transform: "matrix(" + [1, 0, 0, 1, transformX, transformY] + ")" });
29232
+ };
29233
+
29234
+ QRCodeCell.propTypes = propTypes;
29235
+ QRCodeCell.defaultProps = defaultProps;
29236
+
29237
+ exports.default = QRCodeCell;
29238
+ });
29239
+
29240
+ unwrapExports(QRCodeCell_1);
29241
+
29242
+ var QRCodeSurface_1 = createCommonjsModule(function (module, exports) {
29243
+
29244
+ Object.defineProperty(exports, "__esModule", {
29245
+ value: true
29246
+ });
29247
+
29248
+ 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; };
29249
+
29250
+
29251
+
29252
+ var _propTypes2 = _interopRequireDefault(PropTypes);
29253
+
29254
+
29255
+
29256
+ var _react2 = _interopRequireDefault(React__default);
29257
+
29258
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29259
+
29260
+ 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; }
29261
+
29262
+ var propTypes = {
29263
+ children: _propTypes2.default.array.isRequired,
29264
+ size: _propTypes2.default.number.isRequired,
29265
+ title: _propTypes2.default.string,
29266
+ xmlns: _propTypes2.default.string
29267
+ };
29268
+
29269
+ var defaultProps = {
29270
+ title: undefined,
29271
+ xmlns: "http://www.w3.org/2000/svg"
29272
+ };
29273
+
29274
+ var QRCodeSurface = function QRCodeSurface(_ref) {
29275
+ var children = _ref.children,
29276
+ size = _ref.size,
29277
+ title = _ref.title,
29278
+ xmlns = _ref.xmlns,
29279
+ props = _objectWithoutProperties(_ref, ["children", "size", "title", "xmlns"]);
29280
+
29281
+ return _react2.default.createElement(
29282
+ "svg",
29283
+ _extends({}, props, { height: size, width: size, xmlns: xmlns }),
29284
+ title ? _react2.default.createElement(
29285
+ "title",
29286
+ null,
29287
+ title
29288
+ ) : null,
29289
+ children
29290
+ );
29291
+ };
29292
+
29293
+ QRCodeSurface.propTypes = propTypes;
29294
+ QRCodeSurface.defaultProps = defaultProps;
29295
+
29296
+ exports.default = QRCodeSurface;
29297
+ });
29298
+
29299
+ unwrapExports(QRCodeSurface_1);
29300
+
29301
+ var lib = createCommonjsModule(function (module, exports) {
29302
+
29303
+ Object.defineProperty(exports, "__esModule", {
29304
+ value: true
29305
+ });
29306
+
29307
+ 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; };
29308
+
29309
+
29310
+
29311
+ var _QRCode2 = _interopRequireDefault(QRCode_1);
29312
+
29313
+
29314
+
29315
+ var _ErrorCorrectLevel2 = _interopRequireDefault(ErrorCorrectLevel);
29316
+
29317
+
29318
+
29319
+ var _propTypes2 = _interopRequireDefault(PropTypes);
29320
+
29321
+
29322
+
29323
+ var _react2 = _interopRequireDefault(React__default);
29324
+
29325
+
29326
+
29327
+ var _QRCodeCell2 = _interopRequireDefault(QRCodeCell_1);
29328
+
29329
+
29330
+
29331
+ var _QRCodeSurface2 = _interopRequireDefault(QRCodeSurface_1);
29332
+
29333
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29334
+
29335
+ 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.
29336
+
29337
+
29338
+ var propTypes = {
29339
+ bgColor: _propTypes2.default.oneOfType([_propTypes2.default.object, _propTypes2.default.string]),
29340
+ fgColor: _propTypes2.default.oneOfType([_propTypes2.default.object, _propTypes2.default.string]),
29341
+ level: _propTypes2.default.oneOf(["L", "M", "Q", "H"]),
29342
+ size: _propTypes2.default.number,
29343
+ value: _propTypes2.default.string.isRequired
29344
+ };
29345
+
29346
+ var defaultProps = {
29347
+ bgColor: "#FFFFFF",
29348
+ fgColor: "#000000",
29349
+ level: "L",
29350
+ size: 256
29351
+ };
29352
+
29353
+ var QRCode = function QRCode(_ref) {
29354
+ var bgColor = _ref.bgColor,
29355
+ fgColor = _ref.fgColor,
29356
+ level = _ref.level,
29357
+ size = _ref.size,
29358
+ value = _ref.value,
29359
+ props = _objectWithoutProperties(_ref, ["bgColor", "fgColor", "level", "size", "value"]);
29360
+
29361
+ // We'll use type === -1 to force QRCode to automatically pick the best type.
29362
+ var qrcode = new _QRCode2.default(-1, _ErrorCorrectLevel2.default[level]);
29363
+ qrcode.addData(value);
29364
+ qrcode.make();
29365
+ var cells = qrcode.modules;
29366
+ var tileSize = size / cells.length;
29367
+ return _react2.default.createElement(
29368
+ _QRCodeSurface2.default,
29369
+ _extends({}, props, { size: size }),
29370
+ cells.map(function (row, rowIndex) {
29371
+ return row.map(function (cell, cellIndex) {
29372
+ var transformX = Math.round(cellIndex * tileSize);
29373
+ var transformY = Math.round(rowIndex * tileSize);
29374
+ var qrItemWidth = Math.round((cellIndex + 1) * tileSize) - transformX;
29375
+ var qrItemHeight = Math.round((rowIndex + 1) * tileSize) - transformY;
29376
+ return _react2.default.createElement(_QRCodeCell2.default
29377
+ /* eslint-disable react/no-array-index-key */
29378
+ , { key: "rectangle-" + rowIndex + "-" + cellIndex
29379
+ /* eslint-enable react/no-array-index-key */
29380
+ , d: "M 0 0 L " + qrItemWidth + " 0 L " + qrItemWidth + " " + qrItemHeight + " L 0 " + qrItemHeight + " Z",
29381
+ fill: cell ? fgColor : bgColor,
29382
+ transformX: transformX,
29383
+ transformY: transformY
29384
+ });
29385
+ });
29386
+ })
29387
+ );
29388
+ };
29389
+
29390
+ QRCode.propTypes = propTypes;
29391
+ QRCode.defaultProps = defaultProps;
29392
+
29393
+ exports.default = (0, React__default.memo)(QRCode);
29394
+ });
29395
+
29396
+ var QRCode = unwrapExports(lib);
29397
+
29398
+ function QrCodeView() {
29399
+ 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`;
29400
+ return /*#__PURE__*/React__default.createElement("div", {
29401
+ id: "pelcro-qrcode-view"
29402
+ }, /*#__PURE__*/React__default.createElement(QRCode, {
29403
+ style: {
29404
+ margin: "auto"
29405
+ },
29406
+ value: value
29407
+ }));
29408
+ }
29409
+
29410
+ const QrCodeModal = ({
29411
+ onDisplay,
29412
+ onClose
29413
+ }) => {
29414
+ return /*#__PURE__*/React__default.createElement(Modal, {
29415
+ id: "pelcro-qrcode-create-modal",
29416
+ onDisplay: onDisplay,
29417
+ onClose: onClose
29418
+ }, /*#__PURE__*/React__default.createElement(ModalBody, null, /*#__PURE__*/React__default.createElement(QrCodeView, null)), /*#__PURE__*/React__default.createElement(ModalFooter, null, /*#__PURE__*/React__default.createElement(Authorship, null)));
29419
+ };
29420
+ QrCodeModal.viewId = "qrcode";
29421
+
29422
+ export { AddressCreateCity, AddressCreateContainer, AddressCreateCountrySelect, AddressCreateFirstName, AddressCreateLastName, AddressCreateLine1, AddressCreateLine2, AddressCreateModal, AddressCreatePostalCode, AddressCreateSetDefault, AddressCreateStateSelect, AddressCreateSubmit, AddressCreateTextInput, AddressCreateView, AddressSelectContainer, AddressSelectList, AddressSelectModal, AddressSelectSubmit, AddressSelectView, AddressUpdateCity, AddressUpdateContainer, AddressUpdateCountrySelect, AddressUpdateFirstName, AddressUpdateLastName, AddressUpdateLine1, AddressUpdateLine2, AddressUpdateModal, AddressUpdatePostalCode, AddressUpdateSetDefault, AddressUpdateStateSelect, AddressUpdateSubmit, AddressUpdateTextInput, AddressUpdateView, AlertWithContext as Alert, Alert as AlertElement, ApplyCouponButton, Auth0LoginButton, Badge, BankRedirection, Button, CartContainer, CartModal, CartRemoveItemButton, CartSubmit, CartTotalPrice, CartView, Checkbox, CheckoutForm, ConfirmPassword, CouponCode, CouponCodeField, DashboardWithHook as Dashboard, DashboardOpenButton, DatePicker, DiscountedPrice, Email, EmailVerifyContainer, EmailVerifyModal, EmailVerifyResendButton, EmailVerifyView, FacebookLoginButton, GiftCreateContainer, GiftCreateEmail, GiftCreateFirstName, GiftCreateLastName, GiftCreateMessage, GiftCreateModal, GiftCreateStartDate, GiftCreateSubmitButton, GiftCreateView, GiftRedeemCode, GiftRedeemContainer, GiftRedeemModal, GiftRedeemSubmitButton, GiftRedeemView, GoogleLoginButton, Input, InvoiceDetailsContainer, InvoiceDetailsDownloadButton, InvoiceDetailsModal, InvoiceDetailsPayButton, InvoiceDetailsView, InvoicePaymentContainer, InvoicePaymentModal, InvoicePaymentView, Link, LoginButton, LoginContainer, LoginEmail, LoginModal, LoginPassword, LoginRequestLoginToken, LoginView, Logout, MeterModal, MeterView, Modal, ModalBody, ModalFooter, NewsletterWithHook as NewsLetter, NewsletterUpdateButton, NewsletterUpdateContainer, NewsletterUpdateList, NewsletterUpdateModal, NewsletterUpdateView, Notification, OrderConfirmModal, OrderCreateContainer, OrderCreateModal, OrderCreateSubmitButton, OrderCreateView, Password, PasswordChangeButton, PasswordChangeConfirmNewPassword, PasswordChangeContainer, PasswordChangeCurrentPassword, PasswordChangeModal, PasswordChangeNewPassword, PasswordChangeView, PasswordForgotButton, PasswordForgotContainer, PasswordForgotEmail, PasswordForgotModal, PasswordForgotView, PasswordResetButton, PasswordResetConfirmPassword, PasswordResetContainer, PasswordResetEmail, PasswordResetModal, PasswordResetPassword, PasswordResetView, PasswordlessRequestContainer, PasswordlessRequestEmail, PasswordlessRequestModal, PasswordlessRequestView, PasswordlessRequestViewButton, PaymentCreateContainer, PaymentCreateView, PaymentMethodContainer, PaymentMethodSelectContainer, PaymentMethodSelectList, PaymentMethodSelectModal, PaymentMethodSelectSubmit, PaymentMethodSelectView, PaymentMethodUpdateContainer, PaymentMethodUpdateModal, PaymentMethodUpdateView, PaymentMethodView, PaymentSuccessModal, PaymentSuccessView, PaypalSubscribeButton, PelcroCardCVC, PelcroCardExpiry, PelcroCardNumber, PelcroModalController, PelcroPaymentRequestButton, ProfilePicChangeButton, ProfilePicChangeContainer, ProfilePicChangeCropper, ProfilePicChangeModal, ProfilePicChangeRemoveButton, ProfilePicChangeSelectButton, ProfilePicChangeView, ProfilePicChangeZoom, QrCodeModal, Radio, RegisterButton, RegisterCompany, RegisterContainer, RegisterEmail, RegisterFirstName, RegisterJobTitle, RegisterLastName, RegisterModal, RegisterPassword, RegisterView, Select, SelectModalWithHook as SelectModal, SelectedPaymentMethod, ShopPurchaseButton, ShopSelectProductButton, ShopView, SubmitPaymentMethod, SubscriptionCancelModal, SubscriptionCreateContainer, SubscriptionCreateModal, SubscriptionCreateView, SubscriptionRenewContainer, SubscriptionRenewModal, SubscriptionRenewView, TaxAmount, TextArea, Tooltip, UserUpdateButton, UserUpdateContainer, UserUpdateDisplayName, UserUpdateEmail, UserUpdateFirstName, UserUpdateLastName, UserUpdateModal, UserUpdatePhone, UserUpdateProfilePic, UserUpdateTextInput, UserUpdateView, VerifyLinkTokenContainer, VerifyLinkTokenLoader, VerifyLinkTokenModal, VerifyLinkTokenView, authenticatedButtons, i18next as i18n, init$1 as initButtons, init as initContentEntitlement, invoicePaymentSubmitButton, notify, unauthenticatedButtons, usePelcro };