@drop-africa/drop-js 0.1.1
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/CHANGELOG.md +87 -0
- package/README.md +386 -0
- package/dist/drop.js +1557 -0
- package/dist/drop.js.map +1 -0
- package/dist/drop.umd.cjs +6 -0
- package/dist/drop.umd.cjs.map +1 -0
- package/dist/index.d.ts +49 -0
- package/package.json +56 -0
package/dist/drop.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drop.js","sources":["../src/status-map.ts","../src/errors.ts","../src/poller.ts","../node_modules/qr-code-styling/lib/qr-code-styling.js","../src/assets/logo-icon.ts","../src/qr.ts","../src/validator.ts","../src/index.ts"],"sourcesContent":["import type { DropPaymentStatus } from \"./types\";\r\n\r\nconst STATUS_MAP: Record<string, DropPaymentStatus> = {\r\n PaymentInitiated: \"initiated\",\r\n PaymentPending: \"pending\",\r\n PaymentSucceeded: \"succeeded\",\r\n PaymentFailed: \"failed\",\r\n PaymentCancelled: \"cancelled\",\r\n PaymentExpired: \"expired\",\r\n};\r\n\r\nconst TERMINAL_STATUSES: Set<DropPaymentStatus> = new Set([\r\n \"succeeded\",\r\n \"failed\",\r\n \"cancelled\",\r\n \"expired\",\r\n]);\r\n\r\nexport function mapStatus(backendStatus: string): DropPaymentStatus | null {\r\n return STATUS_MAP[backendStatus] ?? null;\r\n}\r\n\r\nexport function isTerminal(status: DropPaymentStatus): boolean {\r\n return TERMINAL_STATUSES.has(status);\r\n}\r\n","import type { DropError, DropErrorCode } from \"./types\";\r\n\r\nexport function createError(\r\n code: DropErrorCode,\r\n message: string,\r\n retryable: boolean,\r\n): DropError {\r\n return { code, message, retryable };\r\n}\r\n\r\nexport function fromHttpStatus(status: number, message?: string): DropError {\r\n switch (status) {\r\n case 401:\r\n return createError(\"AUTH_ERROR\", message ?? \"Invalid client secret.\", false);\r\n case 404:\r\n return createError(\"NOT_FOUND\", message ?? \"Payment intent not found.\", false);\r\n case 429:\r\n return createError(\"RATE_LIMITED\", message ?? \"Rate limited. Retrying.\", true);\r\n default:\r\n return createError(\"UNKNOWN\", message ?? `Unexpected status: ${status}`, true);\r\n }\r\n}\r\n\r\nexport function networkError(message: string): DropError {\r\n return createError(\"NETWORK_ERROR\", message, true);\r\n}\r\n","import type { DropError, DropPaymentStatus, StatusResponse } from \"./types\";\r\nimport { mapStatus, isTerminal } from \"./status-map\";\r\nimport { fromHttpStatus, networkError } from \"./errors\";\r\n\r\nconst DEFAULT_INTERVAL = 3000;\r\nconst BACKOFF_MULTIPLIER = 1.5;\r\nconst MAX_INTERVAL = 30000;\r\nconst MAX_CONSECUTIVE_FAILURES = 5;\r\nconst EXPIRY_GRACE_MS = 30000;\r\n\r\nexport interface PollerConfig {\r\n apiBaseUrl: string;\r\n paymentAccountId: string;\r\n paymentIntentId: string;\r\n clientSecret: string;\r\n queryString?: string;\r\n pollingInterval?: number;\r\n onStatusChange: (status: DropPaymentStatus) => void;\r\n onError: (error: DropError) => void;\r\n onPoll?: () => void;\r\n}\r\n\r\nexport class Poller {\r\n private interval = DEFAULT_INTERVAL;\r\n private timer: ReturnType<typeof setTimeout> | null = null;\r\n private destroyed = false;\r\n private consecutiveFailures = 0;\r\n private currentStatus: DropPaymentStatus = \"initiated\";\r\n private expiresAt: Date | null = null;\r\n private readonly config: PollerConfig;\r\n\r\n constructor(config: PollerConfig) {\r\n this.config = config;\r\n if (config.pollingInterval) {\r\n this.interval = config.pollingInterval;\r\n }\r\n }\r\n\r\n start(): void {\r\n this.poll();\r\n }\r\n\r\n stop(): void {\r\n this.destroyed = true;\r\n if (this.timer !== null) {\r\n clearTimeout(this.timer);\r\n this.timer = null;\r\n }\r\n }\r\n\r\n getStatus(): DropPaymentStatus {\r\n return this.currentStatus;\r\n }\r\n\r\n private async poll(): Promise<void> {\r\n if (this.destroyed) return;\r\n\r\n this.config.onPoll?.();\r\n\r\n if (this.isExpired()) {\r\n this.emitStatus(\"expired\");\r\n return;\r\n }\r\n\r\n try {\r\n const response = await this.fetchStatus();\r\n\r\n if (response.ok) {\r\n this.consecutiveFailures = 0;\r\n this.interval = DEFAULT_INTERVAL;\r\n\r\n const data: StatusResponse = await response.json();\r\n this.expiresAt = new Date(data.expiresAt);\r\n\r\n const mapped = mapStatus(data.status);\r\n if (mapped && mapped !== this.currentStatus) {\r\n this.emitStatus(mapped);\r\n if (isTerminal(mapped)) return;\r\n }\r\n } else if (response.status === 429) {\r\n const retryAfter = response.headers.get(\"Retry-After\");\r\n if (retryAfter) {\r\n const seconds = parseInt(retryAfter, 10);\r\n if (!isNaN(seconds)) {\r\n this.interval = seconds * 1000;\r\n }\r\n } else {\r\n this.applyBackoff();\r\n }\r\n this.config.onError(fromHttpStatus(429));\r\n } else if (response.status === 401 || response.status === 404) {\r\n this.config.onError(fromHttpStatus(response.status));\r\n return;\r\n } else {\r\n this.consecutiveFailures++;\r\n this.applyBackoff();\r\n this.config.onError(fromHttpStatus(response.status));\r\n\r\n if (this.consecutiveFailures >= MAX_CONSECUTIVE_FAILURES) {\r\n this.config.onError(\r\n fromHttpStatus(response.status, \"Max consecutive failures reached. Stopping.\"),\r\n );\r\n return;\r\n }\r\n }\r\n } catch {\r\n this.consecutiveFailures++;\r\n this.applyBackoff();\r\n this.config.onError(networkError(\"Network request failed.\"));\r\n\r\n if (this.consecutiveFailures >= MAX_CONSECUTIVE_FAILURES) {\r\n this.config.onError(\r\n networkError(\"Max consecutive failures reached. Stopping.\"),\r\n );\r\n return;\r\n }\r\n }\r\n\r\n this.scheduleNext();\r\n }\r\n\r\n private async fetchStatus(): Promise<Response> {\r\n const queryString = this.config.queryString || '';\r\n const url = `${this.config.apiBaseUrl}/payment-accounts/${this.config.paymentAccountId}/payment-intents/${this.config.paymentIntentId}/status${queryString}`;\r\n return fetch(url, {\r\n method: \"GET\",\r\n headers: {\r\n \"client-secret\": this.config.clientSecret,\r\n },\r\n });\r\n }\r\n\r\n private emitStatus(status: DropPaymentStatus): void {\r\n this.currentStatus = status;\r\n this.config.onStatusChange(status);\r\n }\r\n\r\n private applyBackoff(): void {\r\n this.interval = Math.min(this.interval * BACKOFF_MULTIPLIER, MAX_INTERVAL);\r\n }\r\n\r\n private isExpired(): boolean {\r\n if (!this.expiresAt) return false;\r\n return Date.now() > this.expiresAt.getTime() + EXPIRY_GRACE_MS;\r\n }\r\n\r\n private scheduleNext(): void {\r\n if (this.destroyed) return;\r\n this.timer = setTimeout(() => this.poll(), this.interval);\r\n }\r\n}\r\n","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.QRCodeStyling=e():t.QRCodeStyling=e()}(this,(()=>(()=>{var t={873:(t,e)=>{var i,r,n=function(){var t=function(t,e){var i=t,r=s[e],n=null,o=0,h=null,p=[],v={},m=function(t,e){n=function(t){for(var e=new Array(t),i=0;i<t;i+=1){e[i]=new Array(t);for(var r=0;r<t;r+=1)e[i][r]=null}return e}(o=4*i+17),b(0,0),b(o-7,0),b(0,o-7),x(),y(),C(t,e),i>=7&&S(t),null==h&&(h=M(i,r,p)),A(h,e)},b=function(t,e){for(var i=-1;i<=7;i+=1)if(!(t+i<=-1||o<=t+i))for(var r=-1;r<=7;r+=1)e+r<=-1||o<=e+r||(n[t+i][e+r]=0<=i&&i<=6&&(0==r||6==r)||0<=r&&r<=6&&(0==i||6==i)||2<=i&&i<=4&&2<=r&&r<=4)},y=function(){for(var t=8;t<o-8;t+=1)null==n[t][6]&&(n[t][6]=t%2==0);for(var e=8;e<o-8;e+=1)null==n[6][e]&&(n[6][e]=e%2==0)},x=function(){for(var t=a.getPatternPosition(i),e=0;e<t.length;e+=1)for(var r=0;r<t.length;r+=1){var o=t[e],s=t[r];if(null==n[o][s])for(var h=-2;h<=2;h+=1)for(var d=-2;d<=2;d+=1)n[o+h][s+d]=-2==h||2==h||-2==d||2==d||0==h&&0==d}},S=function(t){for(var e=a.getBCHTypeNumber(i),r=0;r<18;r+=1){var s=!t&&1==(e>>r&1);n[Math.floor(r/3)][r%3+o-8-3]=s}for(r=0;r<18;r+=1)s=!t&&1==(e>>r&1),n[r%3+o-8-3][Math.floor(r/3)]=s},C=function(t,e){for(var i=r<<3|e,s=a.getBCHTypeInfo(i),h=0;h<15;h+=1){var d=!t&&1==(s>>h&1);h<6?n[h][8]=d:h<8?n[h+1][8]=d:n[o-15+h][8]=d}for(h=0;h<15;h+=1)d=!t&&1==(s>>h&1),h<8?n[8][o-h-1]=d:h<9?n[8][15-h-1+1]=d:n[8][15-h-1]=d;n[o-8][8]=!t},A=function(t,e){for(var i=-1,r=o-1,s=7,h=0,d=a.getMaskFunction(e),u=o-1;u>0;u-=2)for(6==u&&(u-=1);;){for(var c=0;c<2;c+=1)if(null==n[r][u-c]){var l=!1;h<t.length&&(l=1==(t[h]>>>s&1)),d(r,u-c)&&(l=!l),n[r][u-c]=l,-1==(s-=1)&&(h+=1,s=7)}if((r+=i)<0||o<=r){r-=i,i=-i;break}}},M=function(t,e,i){for(var r=u.getRSBlocks(t,e),n=c(),o=0;o<i.length;o+=1){var s=i[o];n.put(s.getMode(),4),n.put(s.getLength(),a.getLengthInBits(s.getMode(),t)),s.write(n)}var h=0;for(o=0;o<r.length;o+=1)h+=r[o].dataCount;if(n.getLengthInBits()>8*h)throw\"code length overflow. (\"+n.getLengthInBits()+\">\"+8*h+\")\";for(n.getLengthInBits()+4<=8*h&&n.put(0,4);n.getLengthInBits()%8!=0;)n.putBit(!1);for(;!(n.getLengthInBits()>=8*h||(n.put(236,8),n.getLengthInBits()>=8*h));)n.put(17,8);return function(t,e){for(var i=0,r=0,n=0,o=new Array(e.length),s=new Array(e.length),h=0;h<e.length;h+=1){var u=e[h].dataCount,c=e[h].totalCount-u;r=Math.max(r,u),n=Math.max(n,c),o[h]=new Array(u);for(var l=0;l<o[h].length;l+=1)o[h][l]=255&t.getBuffer()[l+i];i+=u;var g=a.getErrorCorrectPolynomial(c),f=d(o[h],g.getLength()-1).mod(g);for(s[h]=new Array(g.getLength()-1),l=0;l<s[h].length;l+=1){var w=l+f.getLength()-s[h].length;s[h][l]=w>=0?f.getAt(w):0}}var p=0;for(l=0;l<e.length;l+=1)p+=e[l].totalCount;var v=new Array(p),_=0;for(l=0;l<r;l+=1)for(h=0;h<e.length;h+=1)l<o[h].length&&(v[_]=o[h][l],_+=1);for(l=0;l<n;l+=1)for(h=0;h<e.length;h+=1)l<s[h].length&&(v[_]=s[h][l],_+=1);return v}(n,r)};v.addData=function(t,e){var i=null;switch(e=e||\"Byte\"){case\"Numeric\":i=l(t);break;case\"Alphanumeric\":i=g(t);break;case\"Byte\":i=f(t);break;case\"Kanji\":i=w(t);break;default:throw\"mode:\"+e}p.push(i),h=null},v.isDark=function(t,e){if(t<0||o<=t||e<0||o<=e)throw t+\",\"+e;return n[t][e]},v.getModuleCount=function(){return o},v.make=function(){if(i<1){for(var t=1;t<40;t++){for(var e=u.getRSBlocks(t,r),n=c(),o=0;o<p.length;o++){var s=p[o];n.put(s.getMode(),4),n.put(s.getLength(),a.getLengthInBits(s.getMode(),t)),s.write(n)}var h=0;for(o=0;o<e.length;o++)h+=e[o].dataCount;if(n.getLengthInBits()<=8*h)break}i=t}m(!1,function(){for(var t=0,e=0,i=0;i<8;i+=1){m(!0,i);var r=a.getLostPoint(v);(0==i||t>r)&&(t=r,e=i)}return e}())},v.createTableTag=function(t,e){t=t||2;var i=\"\";i+='<table style=\"',i+=\" border-width: 0px; border-style: none;\",i+=\" border-collapse: collapse;\",i+=\" padding: 0px; margin: \"+(e=void 0===e?4*t:e)+\"px;\",i+='\">',i+=\"<tbody>\";for(var r=0;r<v.getModuleCount();r+=1){i+=\"<tr>\";for(var n=0;n<v.getModuleCount();n+=1)i+='<td style=\"',i+=\" border-width: 0px; border-style: none;\",i+=\" border-collapse: collapse;\",i+=\" padding: 0px; margin: 0px;\",i+=\" width: \"+t+\"px;\",i+=\" height: \"+t+\"px;\",i+=\" background-color: \",i+=v.isDark(r,n)?\"#000000\":\"#ffffff\",i+=\";\",i+='\"/>';i+=\"</tr>\"}return(i+=\"</tbody>\")+\"</table>\"},v.createSvgTag=function(t,e,i,r){var n={};\"object\"==typeof arguments[0]&&(t=(n=arguments[0]).cellSize,e=n.margin,i=n.alt,r=n.title),t=t||2,e=void 0===e?4*t:e,(i=\"string\"==typeof i?{text:i}:i||{}).text=i.text||null,i.id=i.text?i.id||\"qrcode-description\":null,(r=\"string\"==typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||\"qrcode-title\":null;var o,s,a,h,d=v.getModuleCount()*t+2*e,u=\"\";for(h=\"l\"+t+\",0 0,\"+t+\" -\"+t+\",0 0,-\"+t+\"z \",u+='<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"',u+=n.scalable?\"\":' width=\"'+d+'px\" height=\"'+d+'px\"',u+=' viewBox=\"0 0 '+d+\" \"+d+'\" ',u+=' preserveAspectRatio=\"xMinYMin meet\"',u+=r.text||i.text?' role=\"img\" aria-labelledby=\"'+$([r.id,i.id].join(\" \").trim())+'\"':\"\",u+=\">\",u+=r.text?'<title id=\"'+$(r.id)+'\">'+$(r.text)+\"</title>\":\"\",u+=i.text?'<description id=\"'+$(i.id)+'\">'+$(i.text)+\"</description>\":\"\",u+='<rect width=\"100%\" height=\"100%\" fill=\"white\" cx=\"0\" cy=\"0\"/>',u+='<path d=\"',s=0;s<v.getModuleCount();s+=1)for(a=s*t+e,o=0;o<v.getModuleCount();o+=1)v.isDark(s,o)&&(u+=\"M\"+(o*t+e)+\",\"+a+h);return(u+='\" stroke=\"transparent\" fill=\"black\"/>')+\"</svg>\"},v.createDataURL=function(t,e){t=t||2,e=void 0===e?4*t:e;var i=v.getModuleCount()*t+2*e,r=e,n=i-e;return _(i,i,(function(e,i){if(r<=e&&e<n&&r<=i&&i<n){var o=Math.floor((e-r)/t),s=Math.floor((i-r)/t);return v.isDark(s,o)?0:1}return 1}))},v.createImgTag=function(t,e,i){t=t||2,e=void 0===e?4*t:e;var r=v.getModuleCount()*t+2*e,n=\"\";return n+=\"<img\",n+=' src=\"',n+=v.createDataURL(t,e),n+='\"',n+=' width=\"',n+=r,n+='\"',n+=' height=\"',n+=r,n+='\"',i&&(n+=' alt=\"',n+=$(i),n+='\"'),n+\"/>\"};var $=function(t){for(var e=\"\",i=0;i<t.length;i+=1){var r=t.charAt(i);switch(r){case\"<\":e+=\"<\";break;case\">\":e+=\">\";break;case\"&\":e+=\"&\";break;case'\"':e+=\""\";break;default:e+=r}}return e};return v.createASCII=function(t,e){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var e,i,r,n,o,s=1*v.getModuleCount()+2*t,a=t,h=s-t,d={\"██\":\"█\",\"█ \":\"▀\",\" █\":\"▄\",\" \":\" \"},u={\"██\":\"▀\",\"█ \":\"▀\",\" █\":\" \",\" \":\" \"},c=\"\";for(e=0;e<s;e+=2){for(r=Math.floor((e-a)/1),n=Math.floor((e+1-a)/1),i=0;i<s;i+=1)o=\"█\",a<=i&&i<h&&a<=e&&e<h&&v.isDark(r,Math.floor((i-a)/1))&&(o=\" \"),a<=i&&i<h&&a<=e+1&&e+1<h&&v.isDark(n,Math.floor((i-a)/1))?o+=\" \":o+=\"█\",c+=t<1&&e+1>=h?u[o]:d[o];c+=\"\\n\"}return s%2&&t>0?c.substring(0,c.length-s-1)+Array(s+1).join(\"▀\"):c.substring(0,c.length-1)}(e);t-=1,e=void 0===e?2*t:e;var i,r,n,o,s=v.getModuleCount()*t+2*e,a=e,h=s-e,d=Array(t+1).join(\"██\"),u=Array(t+1).join(\" \"),c=\"\",l=\"\";for(i=0;i<s;i+=1){for(n=Math.floor((i-a)/t),l=\"\",r=0;r<s;r+=1)o=1,a<=r&&r<h&&a<=i&&i<h&&v.isDark(n,Math.floor((r-a)/t))&&(o=0),l+=o?d:u;for(n=0;n<t;n+=1)c+=l+\"\\n\"}return c.substring(0,c.length-1)},v.renderTo2dContext=function(t,e){e=e||2;for(var i=v.getModuleCount(),r=0;r<i;r++)for(var n=0;n<i;n++)t.fillStyle=v.isDark(r,n)?\"black\":\"white\",t.fillRect(r*e,n*e,e,e)},v};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var e=[],i=0;i<t.length;i+=1){var r=t.charCodeAt(i);e.push(255&r)}return e}}).default,t.createStringToBytes=function(t,e){var i=function(){for(var i=v(t),r=function(){var t=i.read();if(-1==t)throw\"eof\";return t},n=0,o={};;){var s=i.read();if(-1==s)break;var a=r(),h=r()<<8|r();o[String.fromCharCode(s<<8|a)]=h,n+=1}if(n!=e)throw n+\" != \"+e;return o}(),r=\"?\".charCodeAt(0);return function(t){for(var e=[],n=0;n<t.length;n+=1){var o=t.charCodeAt(n);if(o<128)e.push(o);else{var s=i[t.charAt(n)];\"number\"==typeof s?(255&s)==s?e.push(s):(e.push(s>>>8),e.push(255&s)):e.push(r)}}return e}};var e,i,r,n,o,s={L:1,M:0,Q:3,H:2},a=(e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],i=1335,r=7973,o=function(t){for(var e=0;0!=t;)e+=1,t>>>=1;return e},(n={}).getBCHTypeInfo=function(t){for(var e=t<<10;o(e)-o(i)>=0;)e^=i<<o(e)-o(i);return 21522^(t<<10|e)},n.getBCHTypeNumber=function(t){for(var e=t<<12;o(e)-o(r)>=0;)e^=r<<o(e)-o(r);return t<<12|e},n.getPatternPosition=function(t){return e[t-1]},n.getMaskFunction=function(t){switch(t){case 0:return function(t,e){return(t+e)%2==0};case 1:return function(t,e){return t%2==0};case 2:return function(t,e){return e%3==0};case 3:return function(t,e){return(t+e)%3==0};case 4:return function(t,e){return(Math.floor(t/2)+Math.floor(e/3))%2==0};case 5:return function(t,e){return t*e%2+t*e%3==0};case 6:return function(t,e){return(t*e%2+t*e%3)%2==0};case 7:return function(t,e){return(t*e%3+(t+e)%2)%2==0};default:throw\"bad maskPattern:\"+t}},n.getErrorCorrectPolynomial=function(t){for(var e=d([1],0),i=0;i<t;i+=1)e=e.multiply(d([1,h.gexp(i)],0));return e},n.getLengthInBits=function(t,e){if(1<=e&&e<10)switch(t){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw\"mode:\"+t}else if(e<27)switch(t){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw\"mode:\"+t}else{if(!(e<41))throw\"type:\"+e;switch(t){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw\"mode:\"+t}}},n.getLostPoint=function(t){for(var e=t.getModuleCount(),i=0,r=0;r<e;r+=1)for(var n=0;n<e;n+=1){for(var o=0,s=t.isDark(r,n),a=-1;a<=1;a+=1)if(!(r+a<0||e<=r+a))for(var h=-1;h<=1;h+=1)n+h<0||e<=n+h||0==a&&0==h||s==t.isDark(r+a,n+h)&&(o+=1);o>5&&(i+=3+o-5)}for(r=0;r<e-1;r+=1)for(n=0;n<e-1;n+=1){var d=0;t.isDark(r,n)&&(d+=1),t.isDark(r+1,n)&&(d+=1),t.isDark(r,n+1)&&(d+=1),t.isDark(r+1,n+1)&&(d+=1),0!=d&&4!=d||(i+=3)}for(r=0;r<e;r+=1)for(n=0;n<e-6;n+=1)t.isDark(r,n)&&!t.isDark(r,n+1)&&t.isDark(r,n+2)&&t.isDark(r,n+3)&&t.isDark(r,n+4)&&!t.isDark(r,n+5)&&t.isDark(r,n+6)&&(i+=40);for(n=0;n<e;n+=1)for(r=0;r<e-6;r+=1)t.isDark(r,n)&&!t.isDark(r+1,n)&&t.isDark(r+2,n)&&t.isDark(r+3,n)&&t.isDark(r+4,n)&&!t.isDark(r+5,n)&&t.isDark(r+6,n)&&(i+=40);var u=0;for(n=0;n<e;n+=1)for(r=0;r<e;r+=1)t.isDark(r,n)&&(u+=1);return i+Math.abs(100*u/e/e-50)/5*10},n),h=function(){for(var t=new Array(256),e=new Array(256),i=0;i<8;i+=1)t[i]=1<<i;for(i=8;i<256;i+=1)t[i]=t[i-4]^t[i-5]^t[i-6]^t[i-8];for(i=0;i<255;i+=1)e[t[i]]=i;return{glog:function(t){if(t<1)throw\"glog(\"+t+\")\";return e[t]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return t[e]}}}();function d(t,e){if(void 0===t.length)throw t.length+\"/\"+e;var i=function(){for(var i=0;i<t.length&&0==t[i];)i+=1;for(var r=new Array(t.length-i+e),n=0;n<t.length-i;n+=1)r[n]=t[n+i];return r}(),r={getAt:function(t){return i[t]},getLength:function(){return i.length},multiply:function(t){for(var e=new Array(r.getLength()+t.getLength()-1),i=0;i<r.getLength();i+=1)for(var n=0;n<t.getLength();n+=1)e[i+n]^=h.gexp(h.glog(r.getAt(i))+h.glog(t.getAt(n)));return d(e,0)},mod:function(t){if(r.getLength()-t.getLength()<0)return r;for(var e=h.glog(r.getAt(0))-h.glog(t.getAt(0)),i=new Array(r.getLength()),n=0;n<r.getLength();n+=1)i[n]=r.getAt(n);for(n=0;n<t.getLength();n+=1)i[n]^=h.gexp(h.glog(t.getAt(n))+e);return d(i,0).mod(t)}};return r}var u=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],e=function(t,e){var i={};return i.totalCount=t,i.dataCount=e,i},i={getRSBlocks:function(i,r){var n=function(e,i){switch(i){case s.L:return t[4*(e-1)+0];case s.M:return t[4*(e-1)+1];case s.Q:return t[4*(e-1)+2];case s.H:return t[4*(e-1)+3];default:return}}(i,r);if(void 0===n)throw\"bad rs block @ typeNumber:\"+i+\"/errorCorrectionLevel:\"+r;for(var o=n.length/3,a=[],h=0;h<o;h+=1)for(var d=n[3*h+0],u=n[3*h+1],c=n[3*h+2],l=0;l<d;l+=1)a.push(e(u,c));return a}};return i}(),c=function(){var t=[],e=0,i={getBuffer:function(){return t},getAt:function(e){var i=Math.floor(e/8);return 1==(t[i]>>>7-e%8&1)},put:function(t,e){for(var r=0;r<e;r+=1)i.putBit(1==(t>>>e-r-1&1))},getLengthInBits:function(){return e},putBit:function(i){var r=Math.floor(e/8);t.length<=r&&t.push(0),i&&(t[r]|=128>>>e%8),e+=1}};return i},l=function(t){var e=t,i={getMode:function(){return 1},getLength:function(t){return e.length},write:function(t){for(var i=e,n=0;n+2<i.length;)t.put(r(i.substring(n,n+3)),10),n+=3;n<i.length&&(i.length-n==1?t.put(r(i.substring(n,n+1)),4):i.length-n==2&&t.put(r(i.substring(n,n+2)),7))}},r=function(t){for(var e=0,i=0;i<t.length;i+=1)e=10*e+n(t.charAt(i));return e},n=function(t){if(\"0\"<=t&&t<=\"9\")return t.charCodeAt(0)-\"0\".charCodeAt(0);throw\"illegal char :\"+t};return i},g=function(t){var e=t,i={getMode:function(){return 2},getLength:function(t){return e.length},write:function(t){for(var i=e,n=0;n+1<i.length;)t.put(45*r(i.charAt(n))+r(i.charAt(n+1)),11),n+=2;n<i.length&&t.put(r(i.charAt(n)),6)}},r=function(t){if(\"0\"<=t&&t<=\"9\")return t.charCodeAt(0)-\"0\".charCodeAt(0);if(\"A\"<=t&&t<=\"Z\")return t.charCodeAt(0)-\"A\".charCodeAt(0)+10;switch(t){case\" \":return 36;case\"$\":return 37;case\"%\":return 38;case\"*\":return 39;case\"+\":return 40;case\"-\":return 41;case\".\":return 42;case\"/\":return 43;case\":\":return 44;default:throw\"illegal char :\"+t}};return i},f=function(e){var i=t.stringToBytes(e);return{getMode:function(){return 4},getLength:function(t){return i.length},write:function(t){for(var e=0;e<i.length;e+=1)t.put(i[e],8)}}},w=function(e){var i=t.stringToBytesFuncs.SJIS;if(!i)throw\"sjis not supported.\";!function(){var t=i(\"友\");if(2!=t.length||38726!=(t[0]<<8|t[1]))throw\"sjis not supported.\"}();var r=i(e),n={getMode:function(){return 8},getLength:function(t){return~~(r.length/2)},write:function(t){for(var e=r,i=0;i+1<e.length;){var n=(255&e[i])<<8|255&e[i+1];if(33088<=n&&n<=40956)n-=33088;else{if(!(57408<=n&&n<=60351))throw\"illegal char at \"+(i+1)+\"/\"+n;n-=49472}n=192*(n>>>8&255)+(255&n),t.put(n,13),i+=2}if(i<e.length)throw\"illegal char at \"+(i+1)}};return n},p=function(){var t=[],e={writeByte:function(e){t.push(255&e)},writeShort:function(t){e.writeByte(t),e.writeByte(t>>>8)},writeBytes:function(t,i,r){i=i||0,r=r||t.length;for(var n=0;n<r;n+=1)e.writeByte(t[n+i])},writeString:function(t){for(var i=0;i<t.length;i+=1)e.writeByte(t.charCodeAt(i))},toByteArray:function(){return t},toString:function(){var e=\"\";e+=\"[\";for(var i=0;i<t.length;i+=1)i>0&&(e+=\",\"),e+=t[i];return e+\"]\"}};return e},v=function(t){var e=t,i=0,r=0,n=0,o={read:function(){for(;n<8;){if(i>=e.length){if(0==n)return-1;throw\"unexpected end of file./\"+n}var t=e.charAt(i);if(i+=1,\"=\"==t)return n=0,-1;t.match(/^\\s$/)||(r=r<<6|s(t.charCodeAt(0)),n+=6)}var o=r>>>n-8&255;return n-=8,o}},s=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw\"c:\"+t};return o},_=function(t,e,i){for(var r=function(t,e){var i=t,r=e,n=new Array(t*e),o={setPixel:function(t,e,r){n[e*i+t]=r},write:function(t){t.writeString(\"GIF87a\"),t.writeShort(i),t.writeShort(r),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(\",\"),t.writeShort(0),t.writeShort(0),t.writeShort(i),t.writeShort(r),t.writeByte(0);var e=s(2);t.writeByte(2);for(var n=0;e.length-n>255;)t.writeByte(255),t.writeBytes(e,n,255),n+=255;t.writeByte(e.length-n),t.writeBytes(e,n,e.length-n),t.writeByte(0),t.writeString(\";\")}},s=function(t){for(var e=1<<t,i=1+(1<<t),r=t+1,o=a(),s=0;s<e;s+=1)o.add(String.fromCharCode(s));o.add(String.fromCharCode(e)),o.add(String.fromCharCode(i));var h,d,u,c=p(),l=(h=c,d=0,u=0,{write:function(t,e){if(t>>>e!=0)throw\"length over\";for(;d+e>=8;)h.writeByte(255&(t<<d|u)),e-=8-d,t>>>=8-d,u=0,d=0;u|=t<<d,d+=e},flush:function(){d>0&&h.writeByte(u)}});l.write(e,r);var g=0,f=String.fromCharCode(n[g]);for(g+=1;g<n.length;){var w=String.fromCharCode(n[g]);g+=1,o.contains(f+w)?f+=w:(l.write(o.indexOf(f),r),o.size()<4095&&(o.size()==1<<r&&(r+=1),o.add(f+w)),f=w)}return l.write(o.indexOf(f),r),l.write(i,r),l.flush(),c.toByteArray()},a=function(){var t={},e=0,i={add:function(r){if(i.contains(r))throw\"dup key:\"+r;t[r]=e,e+=1},size:function(){return e},indexOf:function(e){return t[e]},contains:function(e){return void 0!==t[e]}};return i};return o}(t,e),n=0;n<e;n+=1)for(var o=0;o<t;o+=1)r.setPixel(o,n,i(o,n));var s=p();r.write(s);for(var a=function(){var t=0,e=0,i=0,r=\"\",n={},o=function(t){r+=String.fromCharCode(s(63&t))},s=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw\"n:\"+t};return n.writeByte=function(r){for(t=t<<8|255&r,e+=8,i+=1;e>=6;)o(t>>>e-6),e-=6},n.flush=function(){if(e>0&&(o(t<<6-e),t=0,e=0),i%3!=0)for(var n=3-i%3,s=0;s<n;s+=1)r+=\"=\"},n.toString=function(){return r},n}(),h=s.toByteArray(),d=0;d<h.length;d+=1)a.writeByte(h[d]);return a.flush(),\"data:image/gif;base64,\"+a};return t}();n.stringToBytesFuncs[\"UTF-8\"]=function(t){return function(t){for(var e=[],i=0;i<t.length;i++){var r=t.charCodeAt(i);r<128?e.push(r):r<2048?e.push(192|r>>6,128|63&r):r<55296||r>=57344?e.push(224|r>>12,128|r>>6&63,128|63&r):(i++,r=65536+((1023&r)<<10|1023&t.charCodeAt(i)),e.push(240|r>>18,128|r>>12&63,128|r>>6&63,128|63&r))}return e}(t)},void 0===(r=\"function\"==typeof(i=function(){return n})?i.apply(e,[]):i)||(t.exports=r)}},e={};function i(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,i),o.exports}i.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{for(var r in e)i.o(e,r)&&!i.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var r={};return(()=>{\"use strict\";i.d(r,{default:()=>$});const t=t=>!!t&&\"object\"==typeof t&&!Array.isArray(t);function e(i,...r){if(!r.length)return i;const n=r.shift();return void 0!==n&&t(i)&&t(n)?(i=Object.assign({},i),Object.keys(n).forEach((r=>{const o=i[r],s=n[r];Array.isArray(o)&&Array.isArray(s)?i[r]=s:t(o)&&t(s)?i[r]=e(Object.assign({},o),s):i[r]=s})),e(i,...r)):i}function n(t,e){const i=document.createElement(\"a\");i.download=e,i.href=t,document.body.appendChild(i),i.click(),document.body.removeChild(i)}const o={L:.07,M:.15,Q:.25,H:.3};class s{constructor({svg:t,type:e,window:i}){this._svg=t,this._type=e,this._window=i}draw(t,e,i,r){let n;switch(this._type){case\"dots\":n=this._drawDot;break;case\"classy\":n=this._drawClassy;break;case\"classy-rounded\":n=this._drawClassyRounded;break;case\"rounded\":n=this._drawRounded;break;case\"extra-rounded\":n=this._drawExtraRounded;break;default:n=this._drawSquare}n.call(this,{x:t,y:e,size:i,getNeighbor:r})}_rotateFigure({x:t,y:e,size:i,rotation:r=0,draw:n}){var o;const s=t+i/2,a=e+i/2;n(),null===(o=this._element)||void 0===o||o.setAttribute(\"transform\",`rotate(${180*r/Math.PI},${s},${a})`)}_basicDot(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"circle\"),this._element.setAttribute(\"cx\",String(i+e/2)),this._element.setAttribute(\"cy\",String(r+e/2)),this._element.setAttribute(\"r\",String(e/2))}}))}_basicSquare(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"rect\"),this._element.setAttribute(\"x\",String(i)),this._element.setAttribute(\"y\",String(r)),this._element.setAttribute(\"width\",String(e)),this._element.setAttribute(\"height\",String(e))}}))}_basicSideRounded(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"d\",`M ${i} ${r}v ${e}h `+e/2+`a ${e/2} ${e/2}, 0, 0, 0, 0 ${-e}`)}}))}_basicCornerRounded(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"d\",`M ${i} ${r}v ${e}h ${e}v `+-e/2+`a ${e/2} ${e/2}, 0, 0, 0, ${-e/2} ${-e/2}`)}}))}_basicCornerExtraRounded(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"d\",`M ${i} ${r}v ${e}h ${e}a ${e} ${e}, 0, 0, 0, ${-e} ${-e}`)}}))}_basicCornersRounded(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"d\",`M ${i} ${r}v `+e/2+`a ${e/2} ${e/2}, 0, 0, 0, ${e/2} ${e/2}h `+e/2+\"v \"+-e/2+`a ${e/2} ${e/2}, 0, 0, 0, ${-e/2} ${-e/2}`)}}))}_drawDot({x:t,y:e,size:i}){this._basicDot({x:t,y:e,size:i,rotation:0})}_drawSquare({x:t,y:e,size:i}){this._basicSquare({x:t,y:e,size:i,rotation:0})}_drawRounded({x:t,y:e,size:i,getNeighbor:r}){const n=r?+r(-1,0):0,o=r?+r(1,0):0,s=r?+r(0,-1):0,a=r?+r(0,1):0,h=n+o+s+a;if(0!==h)if(h>2||n&&o||s&&a)this._basicSquare({x:t,y:e,size:i,rotation:0});else{if(2===h){let r=0;return n&&s?r=Math.PI/2:s&&o?r=Math.PI:o&&a&&(r=-Math.PI/2),void this._basicCornerRounded({x:t,y:e,size:i,rotation:r})}if(1===h){let r=0;return s?r=Math.PI/2:o?r=Math.PI:a&&(r=-Math.PI/2),void this._basicSideRounded({x:t,y:e,size:i,rotation:r})}}else this._basicDot({x:t,y:e,size:i,rotation:0})}_drawExtraRounded({x:t,y:e,size:i,getNeighbor:r}){const n=r?+r(-1,0):0,o=r?+r(1,0):0,s=r?+r(0,-1):0,a=r?+r(0,1):0,h=n+o+s+a;if(0!==h)if(h>2||n&&o||s&&a)this._basicSquare({x:t,y:e,size:i,rotation:0});else{if(2===h){let r=0;return n&&s?r=Math.PI/2:s&&o?r=Math.PI:o&&a&&(r=-Math.PI/2),void this._basicCornerExtraRounded({x:t,y:e,size:i,rotation:r})}if(1===h){let r=0;return s?r=Math.PI/2:o?r=Math.PI:a&&(r=-Math.PI/2),void this._basicSideRounded({x:t,y:e,size:i,rotation:r})}}else this._basicDot({x:t,y:e,size:i,rotation:0})}_drawClassy({x:t,y:e,size:i,getNeighbor:r}){const n=r?+r(-1,0):0,o=r?+r(1,0):0,s=r?+r(0,-1):0,a=r?+r(0,1):0;0!==n+o+s+a?n||s?o||a?this._basicSquare({x:t,y:e,size:i,rotation:0}):this._basicCornerRounded({x:t,y:e,size:i,rotation:Math.PI/2}):this._basicCornerRounded({x:t,y:e,size:i,rotation:-Math.PI/2}):this._basicCornersRounded({x:t,y:e,size:i,rotation:Math.PI/2})}_drawClassyRounded({x:t,y:e,size:i,getNeighbor:r}){const n=r?+r(-1,0):0,o=r?+r(1,0):0,s=r?+r(0,-1):0,a=r?+r(0,1):0;0!==n+o+s+a?n||s?o||a?this._basicSquare({x:t,y:e,size:i,rotation:0}):this._basicCornerExtraRounded({x:t,y:e,size:i,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:t,y:e,size:i,rotation:-Math.PI/2}):this._basicCornersRounded({x:t,y:e,size:i,rotation:Math.PI/2})}}const a={dot:\"dot\",square:\"square\",extraRounded:\"extra-rounded\"},h=Object.values(a);class d{constructor({svg:t,type:e,window:i}){this._svg=t,this._type=e,this._window=i}draw(t,e,i,r){let n;switch(this._type){case a.square:n=this._drawSquare;break;case a.extraRounded:n=this._drawExtraRounded;break;default:n=this._drawDot}n.call(this,{x:t,y:e,size:i,rotation:r})}_rotateFigure({x:t,y:e,size:i,rotation:r=0,draw:n}){var o;const s=t+i/2,a=e+i/2;n(),null===(o=this._element)||void 0===o||o.setAttribute(\"transform\",`rotate(${180*r/Math.PI},${s},${a})`)}_basicDot(t){const{size:e,x:i,y:r}=t,n=e/7;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"clip-rule\",\"evenodd\"),this._element.setAttribute(\"d\",`M ${i+e/2} ${r}a ${e/2} ${e/2} 0 1 0 0.1 0zm 0 ${n}a ${e/2-n} ${e/2-n} 0 1 1 -0.1 0Z`)}}))}_basicSquare(t){const{size:e,x:i,y:r}=t,n=e/7;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"clip-rule\",\"evenodd\"),this._element.setAttribute(\"d\",`M ${i} ${r}v ${e}h ${e}v `+-e+\"z\"+`M ${i+n} ${r+n}h `+(e-2*n)+\"v \"+(e-2*n)+\"h \"+(2*n-e)+\"z\")}}))}_basicExtraRounded(t){const{size:e,x:i,y:r}=t,n=e/7;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"path\"),this._element.setAttribute(\"clip-rule\",\"evenodd\"),this._element.setAttribute(\"d\",`M ${i} ${r+2.5*n}v `+2*n+`a ${2.5*n} ${2.5*n}, 0, 0, 0, ${2.5*n} ${2.5*n}h `+2*n+`a ${2.5*n} ${2.5*n}, 0, 0, 0, ${2.5*n} ${2.5*-n}v `+-2*n+`a ${2.5*n} ${2.5*n}, 0, 0, 0, ${2.5*-n} ${2.5*-n}h `+-2*n+`a ${2.5*n} ${2.5*n}, 0, 0, 0, ${2.5*-n} ${2.5*n}`+`M ${i+2.5*n} ${r+n}h `+2*n+`a ${1.5*n} ${1.5*n}, 0, 0, 1, ${1.5*n} ${1.5*n}v `+2*n+`a ${1.5*n} ${1.5*n}, 0, 0, 1, ${1.5*-n} ${1.5*n}h `+-2*n+`a ${1.5*n} ${1.5*n}, 0, 0, 1, ${1.5*-n} ${1.5*-n}v `+-2*n+`a ${1.5*n} ${1.5*n}, 0, 0, 1, ${1.5*n} ${1.5*-n}`)}}))}_drawDot({x:t,y:e,size:i,rotation:r}){this._basicDot({x:t,y:e,size:i,rotation:r})}_drawSquare({x:t,y:e,size:i,rotation:r}){this._basicSquare({x:t,y:e,size:i,rotation:r})}_drawExtraRounded({x:t,y:e,size:i,rotation:r}){this._basicExtraRounded({x:t,y:e,size:i,rotation:r})}}const u={dot:\"dot\",square:\"square\"},c=Object.values(u);class l{constructor({svg:t,type:e,window:i}){this._svg=t,this._type=e,this._window=i}draw(t,e,i,r){let n;n=this._type===u.square?this._drawSquare:this._drawDot,n.call(this,{x:t,y:e,size:i,rotation:r})}_rotateFigure({x:t,y:e,size:i,rotation:r=0,draw:n}){var o;const s=t+i/2,a=e+i/2;n(),null===(o=this._element)||void 0===o||o.setAttribute(\"transform\",`rotate(${180*r/Math.PI},${s},${a})`)}_basicDot(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"circle\"),this._element.setAttribute(\"cx\",String(i+e/2)),this._element.setAttribute(\"cy\",String(r+e/2)),this._element.setAttribute(\"r\",String(e/2))}}))}_basicSquare(t){const{size:e,x:i,y:r}=t;this._rotateFigure(Object.assign(Object.assign({},t),{draw:()=>{this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"rect\"),this._element.setAttribute(\"x\",String(i)),this._element.setAttribute(\"y\",String(r)),this._element.setAttribute(\"width\",String(e)),this._element.setAttribute(\"height\",String(e))}}))}_drawDot({x:t,y:e,size:i,rotation:r}){this._basicDot({x:t,y:e,size:i,rotation:r})}_drawSquare({x:t,y:e,size:i,rotation:r}){this._basicSquare({x:t,y:e,size:i,rotation:r})}}const g=\"circle\",f=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],w=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];class p{constructor(t,e){this._roundSize=t=>this._options.dotsOptions.roundSize?Math.floor(t):t,this._window=e,this._element=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this._element.setAttribute(\"width\",String(t.width)),this._element.setAttribute(\"height\",String(t.height)),this._element.setAttribute(\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),t.dotsOptions.roundSize||this._element.setAttribute(\"shape-rendering\",\"crispEdges\"),this._element.setAttribute(\"viewBox\",`0 0 ${t.width} ${t.height}`),this._defs=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this._element.appendChild(this._defs),this._imageUri=t.image,this._instanceId=p.instanceCount++,this._options=t}get width(){return this._options.width}get height(){return this._options.height}getElement(){return this._element}async drawQR(t){const e=t.getModuleCount(),i=Math.min(this._options.width,this._options.height)-2*this._options.margin,r=this._options.shape===g?i/Math.sqrt(2):i,n=this._roundSize(r/e);let s={hideXDots:0,hideYDots:0,width:0,height:0};if(this._qr=t,this._options.image){if(await this.loadImage(),!this._image)return;const{imageOptions:t,qrOptions:i}=this._options,r=t.imageSize*o[i.errorCorrectionLevel],a=Math.floor(r*e*e);s=function({originalHeight:t,originalWidth:e,maxHiddenDots:i,maxHiddenAxisDots:r,dotSize:n}){const o={x:0,y:0},s={x:0,y:0};if(t<=0||e<=0||i<=0||n<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};const a=t/e;return o.x=Math.floor(Math.sqrt(i/a)),o.x<=0&&(o.x=1),r&&r<o.x&&(o.x=r),o.x%2==0&&o.x--,s.x=o.x*n,o.y=1+2*Math.ceil((o.x*a-1)/2),s.y=Math.round(s.x*a),(o.y*o.x>i||r&&r<o.y)&&(r&&r<o.y?(o.y=r,o.y%2==0&&o.x--):o.y-=2,s.y=o.y*n,o.x=1+2*Math.ceil((o.y/a-1)/2),s.x=Math.round(s.y/a)),{height:s.y,width:s.x,hideYDots:o.y,hideXDots:o.x}}({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:a,maxHiddenAxisDots:e-14,dotSize:n})}this.drawBackground(),this.drawDots(((t,i)=>{var r,n,o,a,h,d;return!(this._options.imageOptions.hideBackgroundDots&&t>=(e-s.hideYDots)/2&&t<(e+s.hideYDots)/2&&i>=(e-s.hideXDots)/2&&i<(e+s.hideXDots)/2||(null===(r=f[t])||void 0===r?void 0:r[i])||(null===(n=f[t-e+7])||void 0===n?void 0:n[i])||(null===(o=f[t])||void 0===o?void 0:o[i-e+7])||(null===(a=w[t])||void 0===a?void 0:a[i])||(null===(h=w[t-e+7])||void 0===h?void 0:h[i])||(null===(d=w[t])||void 0===d?void 0:d[i-e+7]))})),this.drawCorners(),this._options.image&&await this.drawImage({width:s.width,height:s.height,count:e,dotSize:n})}drawBackground(){var t,e,i;const r=this._element,n=this._options;if(r){const r=null===(t=n.backgroundOptions)||void 0===t?void 0:t.gradient,o=null===(e=n.backgroundOptions)||void 0===e?void 0:e.color;let s=n.height,a=n.width;if(r||o){const t=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"rect\");this._backgroundClipPath=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"clipPath\"),this._backgroundClipPath.setAttribute(\"id\",`clip-path-background-color-${this._instanceId}`),this._defs.appendChild(this._backgroundClipPath),(null===(i=n.backgroundOptions)||void 0===i?void 0:i.round)&&(s=a=Math.min(n.width,n.height),t.setAttribute(\"rx\",String(s/2*n.backgroundOptions.round))),t.setAttribute(\"x\",String(this._roundSize((n.width-a)/2))),t.setAttribute(\"y\",String(this._roundSize((n.height-s)/2))),t.setAttribute(\"width\",String(a)),t.setAttribute(\"height\",String(s)),this._backgroundClipPath.appendChild(t),this._createColor({options:r,color:o,additionalRotation:0,x:0,y:0,height:n.height,width:n.width,name:`background-color-${this._instanceId}`})}}}drawDots(t){var e,i;if(!this._qr)throw\"QR code is not defined\";const r=this._options,n=this._qr.getModuleCount();if(n>r.width||n>r.height)throw\"The canvas is too small.\";const o=Math.min(r.width,r.height)-2*r.margin,a=r.shape===g?o/Math.sqrt(2):o,h=this._roundSize(a/n),d=this._roundSize((r.width-n*h)/2),u=this._roundSize((r.height-n*h)/2),c=new s({svg:this._element,type:r.dotsOptions.type,window:this._window});this._dotsClipPath=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"clipPath\"),this._dotsClipPath.setAttribute(\"id\",`clip-path-dot-color-${this._instanceId}`),this._defs.appendChild(this._dotsClipPath),this._createColor({options:null===(e=r.dotsOptions)||void 0===e?void 0:e.gradient,color:r.dotsOptions.color,additionalRotation:0,x:0,y:0,height:r.height,width:r.width,name:`dot-color-${this._instanceId}`});for(let e=0;e<n;e++)for(let r=0;r<n;r++)t&&!t(e,r)||(null===(i=this._qr)||void 0===i?void 0:i.isDark(e,r))&&(c.draw(d+r*h,u+e*h,h,((i,o)=>!(r+i<0||e+o<0||r+i>=n||e+o>=n)&&!(t&&!t(e+o,r+i))&&!!this._qr&&this._qr.isDark(e+o,r+i))),c._element&&this._dotsClipPath&&this._dotsClipPath.appendChild(c._element));if(r.shape===g){const t=this._roundSize((o/h-n)/2),e=n+2*t,i=d-t*h,r=u-t*h,s=[],a=this._roundSize(e/2);for(let i=0;i<e;i++){s[i]=[];for(let r=0;r<e;r++)i>=t-1&&i<=e-t&&r>=t-1&&r<=e-t||Math.sqrt((i-a)*(i-a)+(r-a)*(r-a))>a?s[i][r]=0:s[i][r]=this._qr.isDark(r-2*t<0?r:r>=n?r-2*t:r-t,i-2*t<0?i:i>=n?i-2*t:i-t)?1:0}for(let t=0;t<e;t++)for(let n=0;n<e;n++)s[t][n]&&(c.draw(i+n*h,r+t*h,h,((e,i)=>{var r;return!!(null===(r=s[t+i])||void 0===r?void 0:r[n+e])})),c._element&&this._dotsClipPath&&this._dotsClipPath.appendChild(c._element))}}drawCorners(){if(!this._qr)throw\"QR code is not defined\";const t=this._element,e=this._options;if(!t)throw\"Element code is not defined\";const i=this._qr.getModuleCount(),r=Math.min(e.width,e.height)-2*e.margin,n=e.shape===g?r/Math.sqrt(2):r,o=this._roundSize(n/i),a=7*o,u=3*o,p=this._roundSize((e.width-i*o)/2),v=this._roundSize((e.height-i*o)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach((([t,r,n])=>{var g,_,m,b,y,x,S,C,A,M,$,O,D,k;const z=p+t*o*(i-7),B=v+r*o*(i-7);let P=this._dotsClipPath,I=this._dotsClipPath;if(((null===(g=e.cornersSquareOptions)||void 0===g?void 0:g.gradient)||(null===(_=e.cornersSquareOptions)||void 0===_?void 0:_.color))&&(P=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"clipPath\"),P.setAttribute(\"id\",`clip-path-corners-square-color-${t}-${r}-${this._instanceId}`),this._defs.appendChild(P),this._cornersSquareClipPath=this._cornersDotClipPath=I=P,this._createColor({options:null===(m=e.cornersSquareOptions)||void 0===m?void 0:m.gradient,color:null===(b=e.cornersSquareOptions)||void 0===b?void 0:b.color,additionalRotation:n,x:z,y:B,height:a,width:a,name:`corners-square-color-${t}-${r}-${this._instanceId}`})),(null===(y=e.cornersSquareOptions)||void 0===y?void 0:y.type)&&h.includes(e.cornersSquareOptions.type)){const t=new d({svg:this._element,type:e.cornersSquareOptions.type,window:this._window});t.draw(z,B,a,n),t._element&&P&&P.appendChild(t._element)}else{const t=new s({svg:this._element,type:(null===(x=e.cornersSquareOptions)||void 0===x?void 0:x.type)||e.dotsOptions.type,window:this._window});for(let e=0;e<f.length;e++)for(let i=0;i<f[e].length;i++)(null===(S=f[e])||void 0===S?void 0:S[i])&&(t.draw(z+i*o,B+e*o,o,((t,r)=>{var n;return!!(null===(n=f[e+r])||void 0===n?void 0:n[i+t])})),t._element&&P&&P.appendChild(t._element))}if(((null===(C=e.cornersDotOptions)||void 0===C?void 0:C.gradient)||(null===(A=e.cornersDotOptions)||void 0===A?void 0:A.color))&&(I=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"clipPath\"),I.setAttribute(\"id\",`clip-path-corners-dot-color-${t}-${r}-${this._instanceId}`),this._defs.appendChild(I),this._cornersDotClipPath=I,this._createColor({options:null===(M=e.cornersDotOptions)||void 0===M?void 0:M.gradient,color:null===($=e.cornersDotOptions)||void 0===$?void 0:$.color,additionalRotation:n,x:z+2*o,y:B+2*o,height:u,width:u,name:`corners-dot-color-${t}-${r}-${this._instanceId}`})),(null===(O=e.cornersDotOptions)||void 0===O?void 0:O.type)&&c.includes(e.cornersDotOptions.type)){const t=new l({svg:this._element,type:e.cornersDotOptions.type,window:this._window});t.draw(z+2*o,B+2*o,u,n),t._element&&I&&I.appendChild(t._element)}else{const t=new s({svg:this._element,type:(null===(D=e.cornersDotOptions)||void 0===D?void 0:D.type)||e.dotsOptions.type,window:this._window});for(let e=0;e<w.length;e++)for(let i=0;i<w[e].length;i++)(null===(k=w[e])||void 0===k?void 0:k[i])&&(t.draw(z+i*o,B+e*o,o,((t,r)=>{var n;return!!(null===(n=w[e+r])||void 0===n?void 0:n[i+t])})),t._element&&I&&I.appendChild(t._element))}}))}loadImage(){return new Promise(((t,e)=>{var i;const r=this._options;if(!r.image)return e(\"Image is not defined\");if(null===(i=r.nodeCanvas)||void 0===i?void 0:i.loadImage)r.nodeCanvas.loadImage(r.image).then((e=>{var i,n;if(this._image=e,this._options.imageOptions.saveAsBlob){const t=null===(i=r.nodeCanvas)||void 0===i?void 0:i.createCanvas(this._image.width,this._image.height);null===(n=null==t?void 0:t.getContext(\"2d\"))||void 0===n||n.drawImage(e,0,0),this._imageUri=null==t?void 0:t.toDataURL()}t()})).catch(e);else{const e=new this._window.Image;\"string\"==typeof r.imageOptions.crossOrigin&&(e.crossOrigin=r.imageOptions.crossOrigin),this._image=e,e.onload=async()=>{this._options.imageOptions.saveAsBlob&&(this._imageUri=await async function(t,e){return new Promise((i=>{const r=new e.XMLHttpRequest;r.onload=function(){const t=new e.FileReader;t.onloadend=function(){i(t.result)},t.readAsDataURL(r.response)},r.open(\"GET\",t),r.responseType=\"blob\",r.send()}))}(r.image||\"\",this._window)),t()},e.src=r.image}}))}async drawImage({width:t,height:e,count:i,dotSize:r}){const n=this._options,o=this._roundSize((n.width-i*r)/2),s=this._roundSize((n.height-i*r)/2),a=o+this._roundSize(n.imageOptions.margin+(i*r-t)/2),h=s+this._roundSize(n.imageOptions.margin+(i*r-e)/2),d=t-2*n.imageOptions.margin,u=e-2*n.imageOptions.margin,c=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\");c.setAttribute(\"href\",this._imageUri||\"\"),c.setAttribute(\"xlink:href\",this._imageUri||\"\"),c.setAttribute(\"x\",String(a)),c.setAttribute(\"y\",String(h)),c.setAttribute(\"width\",`${d}px`),c.setAttribute(\"height\",`${u}px`),this._element.appendChild(c)}_createColor({options:t,color:e,additionalRotation:i,x:r,y:n,height:o,width:s,name:a}){const h=s>o?s:o,d=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"rect\");if(d.setAttribute(\"x\",String(r)),d.setAttribute(\"y\",String(n)),d.setAttribute(\"height\",String(o)),d.setAttribute(\"width\",String(s)),d.setAttribute(\"clip-path\",`url('#clip-path-${a}')`),t){let e;if(\"radial\"===t.type)e=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"radialGradient\"),e.setAttribute(\"id\",a),e.setAttribute(\"gradientUnits\",\"userSpaceOnUse\"),e.setAttribute(\"fx\",String(r+s/2)),e.setAttribute(\"fy\",String(n+o/2)),e.setAttribute(\"cx\",String(r+s/2)),e.setAttribute(\"cy\",String(n+o/2)),e.setAttribute(\"r\",String(h/2));else{const h=((t.rotation||0)+i)%(2*Math.PI),d=(h+2*Math.PI)%(2*Math.PI);let u=r+s/2,c=n+o/2,l=r+s/2,g=n+o/2;d>=0&&d<=.25*Math.PI||d>1.75*Math.PI&&d<=2*Math.PI?(u-=s/2,c-=o/2*Math.tan(h),l+=s/2,g+=o/2*Math.tan(h)):d>.25*Math.PI&&d<=.75*Math.PI?(c-=o/2,u-=s/2/Math.tan(h),g+=o/2,l+=s/2/Math.tan(h)):d>.75*Math.PI&&d<=1.25*Math.PI?(u+=s/2,c+=o/2*Math.tan(h),l-=s/2,g-=o/2*Math.tan(h)):d>1.25*Math.PI&&d<=1.75*Math.PI&&(c+=o/2,u+=s/2/Math.tan(h),g-=o/2,l-=s/2/Math.tan(h)),e=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"linearGradient\"),e.setAttribute(\"id\",a),e.setAttribute(\"gradientUnits\",\"userSpaceOnUse\"),e.setAttribute(\"x1\",String(Math.round(u))),e.setAttribute(\"y1\",String(Math.round(c))),e.setAttribute(\"x2\",String(Math.round(l))),e.setAttribute(\"y2\",String(Math.round(g)))}t.colorStops.forEach((({offset:t,color:i})=>{const r=this._window.document.createElementNS(\"http://www.w3.org/2000/svg\",\"stop\");r.setAttribute(\"offset\",100*t+\"%\"),r.setAttribute(\"stop-color\",i),e.appendChild(r)})),d.setAttribute(\"fill\",`url('#${a}')`),this._defs.appendChild(e)}else e&&d.setAttribute(\"fill\",e);this._element.appendChild(d)}}p.instanceCount=0;const v=p,_=\"canvas\",m={};for(let t=0;t<=40;t++)m[t]=t;const b={type:_,shape:\"square\",width:300,height:300,data:\"\",margin:0,qrOptions:{typeNumber:m[0],mode:void 0,errorCorrectionLevel:\"Q\"},imageOptions:{saveAsBlob:!0,hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:\"square\",color:\"#000\",roundSize:!0},backgroundOptions:{round:0,color:\"#fff\"}};function y(t){const e=Object.assign({},t);if(!e.colorStops||!e.colorStops.length)throw\"Field 'colorStops' is required in gradient\";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map((t=>Object.assign(Object.assign({},t),{offset:Number(t.offset)}))),e}function x(t){const e=Object.assign({},t);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=Object.assign(Object.assign({},e.imageOptions),{hideBackgroundDots:Boolean(e.imageOptions.hideBackgroundDots),imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=Object.assign({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=y(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=Object.assign({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=y(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=Object.assign({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=y(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=Object.assign({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=y(e.backgroundOptions.gradient))),e}var S=i(873),C=i.n(S);function A(t){if(!t)throw new Error(\"Extension must be defined\");\".\"===t[0]&&(t=t.substring(1));const e={bmp:\"image/bmp\",gif:\"image/gif\",ico:\"image/vnd.microsoft.icon\",jpeg:\"image/jpeg\",jpg:\"image/jpeg\",png:\"image/png\",svg:\"image/svg+xml\",tif:\"image/tiff\",tiff:\"image/tiff\",webp:\"image/webp\",pdf:\"application/pdf\"}[t.toLowerCase()];if(!e)throw new Error(`Extension \"${t}\" is not supported`);return e}class M{constructor(t){(null==t?void 0:t.jsdom)?this._window=new t.jsdom(\"\",{resources:\"usable\"}).window:this._window=window,this._options=t?x(e(b,t)):b,this.update()}static _clearContainer(t){t&&(t.innerHTML=\"\")}_setupSvg(){if(!this._qr)return;const t=new v(this._options,this._window);this._svg=t.getElement(),this._svgDrawingPromise=t.drawQR(this._qr).then((()=>{var e;this._svg&&(null===(e=this._extension)||void 0===e||e.call(this,t.getElement(),this._options))}))}_setupCanvas(){var t,e;this._qr&&((null===(t=this._options.nodeCanvas)||void 0===t?void 0:t.createCanvas)?(this._nodeCanvas=this._options.nodeCanvas.createCanvas(this._options.width,this._options.height),this._nodeCanvas.width=this._options.width,this._nodeCanvas.height=this._options.height):(this._domCanvas=document.createElement(\"canvas\"),this._domCanvas.width=this._options.width,this._domCanvas.height=this._options.height),this._setupSvg(),this._canvasDrawingPromise=null===(e=this._svgDrawingPromise)||void 0===e?void 0:e.then((()=>{var t;if(!this._svg)return;const e=this._svg,i=(new this._window.XMLSerializer).serializeToString(e),r=btoa(i),n=`data:${A(\"svg\")};base64,${r}`;if(null===(t=this._options.nodeCanvas)||void 0===t?void 0:t.loadImage)return this._options.nodeCanvas.loadImage(n).then((t=>{var e,i;t.width=this._options.width,t.height=this._options.height,null===(i=null===(e=this._nodeCanvas)||void 0===e?void 0:e.getContext(\"2d\"))||void 0===i||i.drawImage(t,0,0)}));{const t=new this._window.Image;return new Promise((e=>{t.onload=()=>{var i,r;null===(r=null===(i=this._domCanvas)||void 0===i?void 0:i.getContext(\"2d\"))||void 0===r||r.drawImage(t,0,0),e()},t.src=n}))}})))}async _getElement(t=\"png\"){if(!this._qr)throw\"QR code is empty\";return\"svg\"===t.toLowerCase()?(this._svg&&this._svgDrawingPromise||this._setupSvg(),await this._svgDrawingPromise,this._svg):((this._domCanvas||this._nodeCanvas)&&this._canvasDrawingPromise||this._setupCanvas(),await this._canvasDrawingPromise,this._domCanvas||this._nodeCanvas)}update(t){M._clearContainer(this._container),this._options=t?x(e(this._options,t)):this._options,this._options.data&&(this._qr=C()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(t){switch(!0){case/^[0-9]*$/.test(t):return\"Numeric\";case/^[0-9A-Z $%*+\\-./:]*$/.test(t):return\"Alphanumeric\";default:return\"Byte\"}}(this._options.data)),this._qr.make(),this._options.type===_?this._setupCanvas():this._setupSvg(),this.append(this._container))}append(t){if(t){if(\"function\"!=typeof t.appendChild)throw\"Container should be a single DOM node\";this._options.type===_?this._domCanvas&&t.appendChild(this._domCanvas):this._svg&&t.appendChild(this._svg),this._container=t}}applyExtension(t){if(!t)throw\"Extension function should be defined.\";this._extension=t,this.update()}deleteExtension(){this._extension=void 0,this.update()}async getRawData(t=\"png\"){if(!this._qr)throw\"QR code is empty\";const e=await this._getElement(t),i=A(t);if(!e)return null;if(\"svg\"===t.toLowerCase()){const t=`<?xml version=\"1.0\" standalone=\"no\"?>\\r\\n${(new this._window.XMLSerializer).serializeToString(e)}`;return\"undefined\"==typeof Blob||this._options.jsdom?Buffer.from(t):new Blob([t],{type:i})}return new Promise((t=>{const r=e;if(\"toBuffer\"in r)if(\"image/png\"===i)t(r.toBuffer(i));else if(\"image/jpeg\"===i)t(r.toBuffer(i));else{if(\"application/pdf\"!==i)throw Error(\"Unsupported extension\");t(r.toBuffer(i))}else\"toBlob\"in r&&r.toBlob(t,i,1)}))}async download(t){if(!this._qr)throw\"QR code is empty\";if(\"undefined\"==typeof Blob)throw\"Cannot download in Node.js, call getRawData instead.\";let e=\"png\",i=\"qr\";\"string\"==typeof t?(e=t,console.warn(\"Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument\")):\"object\"==typeof t&&null!==t&&(t.name&&(i=t.name),t.extension&&(e=t.extension));const r=await this._getElement(e);if(r)if(\"svg\"===e.toLowerCase()){let t=(new XMLSerializer).serializeToString(r);t='<?xml version=\"1.0\" standalone=\"no\"?>\\r\\n'+t,n(`data:${A(e)};charset=utf-8,${encodeURIComponent(t)}`,`${i}.svg`)}else n(r.toDataURL(A(e)),`${i}.${e}`)}}const $=M})(),r.default})()));\n//# sourceMappingURL=qr-code-styling.js.map","// Auto-generated from logo.png (optimized for QR codes)\n// Original: 1024x1024, Optimized: 56x56\nexport const DROP_LOGO_PNG = `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4BAMAAABaqCYtAAAAMFBMVEUKfmT+//8Bd1tSpJAginI7l4OgzcNxl0BjrZyQxbl6uas6ilTr9fOz18/R5+KbojH3wCiYAAAACXBIWXMAAAsTAAALEwEAmpwYAAABYklEQVR42mNgGKZACY+UggsTTqmIaWkZOGQjpmWZMHilKjCwBmHIuWWZKCkwKIVNUVJdhC7HNAMoBTLcdmnnBQydE0AyQAUKna2TFdB1TlVQUnBdZQQ0WSkSQzI2JGJazuJpDkA2pwO6sapps0yslJRTgEwtIwwXKSgpdSiAvak6CZtX3SBBoDQFm6TyVQVQSAU/VsAiyQQMAmAgZnVik+QusF0xbVaIkhY2Y+u3K3SFKClgDXrucu4CHFJAye8bCnBGNnt1QTVOye3/8Uiy19fjMXb79g04Jbm/45ZkUir/jlPONTTYBEg7YJNkEwSCJgaWd9g0JoIkLzHoCmKmTAYtkJxgEtNCLJIuNkCpM2eMlAVlMeRUzwDl5FwclHwEj2AEvTLITKAelouCRgxYJQXPvXsjKKmAQxIELjDglpRxwiMprIBHchEDbklZrMFubGxs0dHRYYC9RIAABYZRQAoAAMPFUF7XIspMAAAAAElFTkSuQmCC`;\n","import type { QROptions } from './types';\r\nimport QRCodeStyling from 'qr-code-styling';\r\nimport { DROP_LOGO_PNG } from './assets/logo-icon';\r\n\r\nfunction applyStyles(element: HTMLElement, styles: Record<string, string>): void {\r\n Object.entries(styles).forEach(([key, value]) => {\r\n (element.style as any)[key] = value;\r\n });\r\n}\r\n\r\nfunction convertColorToHex(color: string): string {\r\n if (color.startsWith('#')) {\r\n return color;\r\n }\r\n\r\n if (color.startsWith('rgb')) {\r\n const match = color.match(/rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+)/);\r\n if (match) {\r\n const r = parseInt(match[1]).toString(16).padStart(2, '0');\r\n const g = parseInt(match[2]).toString(16).padStart(2, '0');\r\n const b = parseInt(match[3]).toString(16).padStart(2, '0');\r\n return `#${r}${g}${b}`;\r\n }\r\n }\r\n\r\n if (color.startsWith('hsl')) {\r\n const match = color.match(/hsla?\\((\\d+),\\s*(\\d+)%,\\s*(\\d+)%/);\r\n if (match) {\r\n const h = parseInt(match[1]) / 360;\r\n const s = parseInt(match[2]) / 100;\r\n const l = parseInt(match[3]) / 100;\r\n\r\n let r, g, b;\r\n if (s === 0) {\r\n r = g = b = l;\r\n } else {\r\n const hue2rgb = (p: number, q: number, t: number) => {\r\n if (t < 0) t += 1;\r\n if (t > 1) t -= 1;\r\n if (t < 1/6) return p + (q - p) * 6 * t;\r\n if (t < 1/2) return q;\r\n if (t < 2/3) return p + (q - p) * (2/3 - t) * 6;\r\n return p;\r\n };\r\n\r\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n const p = 2 * l - q;\r\n r = hue2rgb(p, q, h + 1/3);\r\n g = hue2rgb(p, q, h);\r\n b = hue2rgb(p, q, h - 1/3);\r\n }\r\n\r\n const toHex = (x: number) => Math.round(x * 255).toString(16).padStart(2, '0');\r\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`;\r\n }\r\n }\r\n\r\n return color;\r\n}\r\n\r\n\r\nfunction createLinkElement(url: string, size: number, labelText: string): HTMLDivElement {\r\n const container = document.createElement(\"div\");\r\n container.className = \"drop-payment-link\";\r\n applyStyles(container, {\r\n marginTop: \"16px\",\r\n width: `${size}px`,\r\n });\r\n\r\n const label = document.createElement(\"label\");\r\n label.className = \"drop-link-label\";\r\n label.textContent = labelText;\r\n applyStyles(label, {\r\n display: \"block\",\r\n fontSize: \"14px\",\r\n fontWeight: \"500\",\r\n color: \"hsl(160, 65%, 25%)\",\r\n marginBottom: \"8px\",\r\n fontFamily: \"system-ui, -apple-system, sans-serif\",\r\n });\r\n\r\n const inputWrapper = document.createElement(\"div\");\r\n inputWrapper.className = \"drop-link-input-wrapper\";\r\n applyStyles(inputWrapper, {\r\n position: \"relative\",\r\n });\r\n\r\n const input = document.createElement(\"input\");\r\n input.type = \"text\";\r\n input.readOnly = true;\r\n input.value = url;\r\n input.className = \"drop-link-input\";\r\n input.setAttribute(\"aria-label\", \"Payment link\");\r\n\r\n const hint = document.createElement(\"p\");\r\n hint.className = \"drop-link-hint\";\r\n hint.textContent = \"Tap to copy\";\r\n applyStyles(hint, {\r\n fontSize: \"12px\",\r\n color: \"hsl(160, 30%, 40%)\",\r\n marginTop: \"6px\",\r\n marginBottom: \"0\",\r\n fontFamily: \"system-ui, -apple-system, sans-serif\",\r\n });\r\n\r\n const copyToClipboard = async () => {\r\n input.select();\r\n\r\n try {\r\n if (navigator.clipboard && navigator.clipboard.writeText) {\r\n await navigator.clipboard.writeText(url);\r\n showCopyFeedback();\r\n } else {\r\n const success = document.execCommand(\"copy\");\r\n if (success) {\r\n showCopyFeedback();\r\n }\r\n }\r\n } catch (err) {\r\n document.execCommand(\"copy\");\r\n showCopyFeedback();\r\n }\r\n };\r\n\r\n const showCopyFeedback = () => {\r\n const originalText = hint.textContent;\r\n hint.textContent = \"✓ Copied to clipboard!\";\r\n applyStyles(hint, {\r\n color: \"hsl(160, 65%, 35%)\",\r\n fontWeight: \"500\",\r\n });\r\n\r\n setTimeout(() => {\r\n hint.textContent = originalText;\r\n applyStyles(hint, {\r\n color: \"hsl(160, 30%, 40%)\",\r\n fontWeight: \"normal\",\r\n });\r\n }, 2000);\r\n };\r\n\r\n input.addEventListener(\"click\", copyToClipboard);\r\n\r\n input.addEventListener(\"keydown\", (e) => {\r\n if (e.key === \"Enter\" || e.key === \" \") {\r\n e.preventDefault();\r\n copyToClipboard();\r\n }\r\n });\r\n\r\n applyStyles(input, {\r\n width: \"100%\",\r\n padding: \"12px\",\r\n fontSize: \"14px\",\r\n fontFamily: \"monospace\",\r\n border: \"2px solid hsl(160, 65%, 25%)\",\r\n borderRadius: \"8px\",\r\n backgroundColor: \"hsl(0, 0%, 98%)\",\r\n color: \"hsl(160, 65%, 25%)\",\r\n boxSizing: \"border-box\",\r\n cursor: \"pointer\",\r\n outline: \"none\",\r\n });\r\n\r\n input.addEventListener(\"focus\", () => {\r\n applyStyles(input, {\r\n borderColor: \"hsl(160, 65%, 35%)\",\r\n backgroundColor: \"hsl(160, 80%, 98%)\",\r\n });\r\n });\r\n\r\n input.addEventListener(\"blur\", () => {\r\n applyStyles(input, {\r\n borderColor: \"hsl(160, 65%, 25%)\",\r\n backgroundColor: \"hsl(0, 0%, 98%)\",\r\n });\r\n });\r\n\r\n inputWrapper.appendChild(input);\r\n container.appendChild(label);\r\n container.appendChild(inputWrapper);\r\n container.appendChild(hint);\r\n\r\n return container;\r\n}\r\n\r\nexport async function renderQR(\r\n container: HTMLElement,\r\n data: string,\r\n size: number,\r\n options: QROptions = {}\r\n): Promise<void> {\r\n const {\r\n moduleColor = \"hsl(160, 65%, 25%)\",\r\n backgroundColor = \"hsl(0, 0%, 98%)\",\r\n cornerRadius = 0,\r\n showCopyableLink = true,\r\n linkText = \"Or paste this link:\",\r\n } = options;\r\n\r\n const hexModuleColor = convertColorToHex(moduleColor);\r\n const hexBackgroundColor = convertColorToHex(backgroundColor);\r\n\r\n const logoPercentage = Math.sqrt(0.18);\r\n const imageMargin = Math.round(size * 0.03);\r\n\r\n const qrCode = new QRCodeStyling({\r\n width: size,\r\n height: size,\r\n type: \"svg\",\r\n data: data,\r\n image: DROP_LOGO_PNG,\r\n qrOptions: {\r\n errorCorrectionLevel: 'H'\r\n },\r\n dotsOptions: {\r\n color: hexModuleColor,\r\n type: cornerRadius > 0 ? \"rounded\" : \"square\"\r\n },\r\n backgroundOptions: {\r\n color: hexBackgroundColor,\r\n },\r\n imageOptions: {\r\n hideBackgroundDots: true,\r\n imageSize: logoPercentage,\r\n margin: imageMargin\r\n }\r\n });\r\n\r\n const wrapper = document.createElement(\"div\");\r\n wrapper.className = \"drop-payment-widget\";\r\n\r\n qrCode.append(wrapper);\r\n\r\n const svg = wrapper.querySelector(\"svg\");\r\n if (svg) {\r\n svg.setAttribute('role', 'img');\r\n svg.setAttribute('aria-label', 'Payment QR Code');\r\n }\r\n\r\n if (showCopyableLink) {\r\n const linkElement = createLinkElement(data, size, linkText);\r\n wrapper.appendChild(linkElement);\r\n }\r\n\r\n container.innerHTML = \"\";\r\n container.appendChild(wrapper);\r\n}\r\n","import type { DropConfig } from './types';\r\n\r\nexport class ValidationError extends Error {\r\n constructor(message: string) {\r\n super(message);\r\n this.name = 'ValidationError';\r\n }\r\n}\r\n\r\nexport function validateDropConfig(config: DropConfig): void {\r\n validateClientSecret(config.clientSecret);\r\n if (config.qrSize !== undefined) validateQRSize(config.qrSize);\r\n if (config.pollingInterval !== undefined) validatePollingInterval(config.pollingInterval);\r\n if (config.qrOptions) validateQROptions(config.qrOptions);\r\n if (config.linkText !== undefined) validateLinkText(config.linkText);\r\n validateCallbacks(config);\r\n}\r\n\r\nfunction validateClientSecret(clientSecret: string): void {\r\n if (!clientSecret || clientSecret.trim() === '') {\r\n throw new ValidationError('clientSecret is required and cannot be empty');\r\n }\r\n\r\n if (clientSecret.length < 10) {\r\n throw new ValidationError(\r\n `clientSecret must be at least 10 characters long. Received length: ${clientSecret.length}`\r\n );\r\n }\r\n\r\n if (!clientSecret.startsWith('pi_secret_')) {\r\n throw new ValidationError(\r\n \"clientSecret must start with 'pi_secret_'. Received: \" + clientSecret.substring(0, 10) + '...'\r\n );\r\n }\r\n}\r\n\r\nfunction validateQRSize(qrSize: number): void {\r\n if (typeof qrSize !== 'number' || isNaN(qrSize) || !isFinite(qrSize)) {\r\n throw new ValidationError(`qrSize must be a valid number. Received: ${qrSize}`);\r\n }\r\n\r\n if (qrSize < 128 || qrSize > 1024) {\r\n throw new ValidationError(\r\n `QR size must be between 128 and 1024 pixels. Received: ${qrSize}`\r\n );\r\n }\r\n}\r\n\r\nfunction validatePollingInterval(pollingInterval: number): void {\r\n if (typeof pollingInterval !== 'number' || isNaN(pollingInterval) || !isFinite(pollingInterval)) {\r\n throw new ValidationError(`pollingInterval must be a valid number. Received: ${pollingInterval}`);\r\n }\r\n\r\n if (pollingInterval < 1000 || pollingInterval > 60000) {\r\n throw new ValidationError(\r\n `pollingInterval must be between 1000 and 60000 milliseconds. Received: ${pollingInterval}`\r\n );\r\n }\r\n}\r\n\r\nfunction validateQROptions(qrOptions: DropConfig['qrOptions']): void {\r\n if (!qrOptions) return;\r\n\r\n if (qrOptions.cornerRadius !== undefined) {\r\n validateCornerRadius(qrOptions.cornerRadius);\r\n }\r\n\r\n if (qrOptions.moduleColor !== undefined) {\r\n validateColor(qrOptions.moduleColor, 'moduleColor');\r\n }\r\n\r\n if (qrOptions.backgroundColor !== undefined) {\r\n validateColor(qrOptions.backgroundColor, 'backgroundColor');\r\n }\r\n}\r\n\r\nfunction validateCornerRadius(cornerRadius: number): void {\r\n if (typeof cornerRadius !== 'number' || isNaN(cornerRadius) || !isFinite(cornerRadius)) {\r\n throw new ValidationError(`cornerRadius must be a valid number. Received: ${cornerRadius}`);\r\n }\r\n\r\n if (cornerRadius < 0 || cornerRadius > 1) {\r\n throw new ValidationError(\r\n `cornerRadius must be between 0 and 1. Received: ${cornerRadius}`\r\n );\r\n }\r\n}\r\n\r\nfunction validateColor(color: string, paramName: string): void {\r\n if (typeof color !== 'string') {\r\n throw new ValidationError(`${paramName} must be a string. Received: ${typeof color}`);\r\n }\r\n\r\n const hexPattern = /^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/;\r\n const rgbPattern = /^rgb\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*\\)$/;\r\n const rgbaPattern = /^rgba\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*,\\s*(0|1|0?\\.\\d+)\\s*\\)$/;\r\n const hslPattern = /^hsl\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})%\\s*,\\s*(\\d{1,3})%\\s*\\)$/;\r\n const hslaPattern = /^hsla\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})%\\s*,\\s*(\\d{1,3})%\\s*,\\s*(0|1|0?\\.\\d+)\\s*\\)$/;\r\n\r\n let isValidColor = hexPattern.test(color);\r\n\r\n if (!isValidColor) {\r\n const rgbMatch = color.match(rgbPattern);\r\n if (rgbMatch) {\r\n const [, r, g, b] = rgbMatch;\r\n isValidColor = parseInt(r) <= 255 && parseInt(g) <= 255 && parseInt(b) <= 255;\r\n }\r\n }\r\n\r\n if (!isValidColor) {\r\n const rgbaMatch = color.match(rgbaPattern);\r\n if (rgbaMatch) {\r\n const [, r, g, b] = rgbaMatch;\r\n isValidColor = parseInt(r) <= 255 && parseInt(g) <= 255 && parseInt(b) <= 255;\r\n }\r\n }\r\n\r\n if (!isValidColor) {\r\n const hslMatch = color.match(hslPattern);\r\n if (hslMatch) {\r\n const [, h, s, l] = hslMatch;\r\n isValidColor = parseInt(h) <= 360 && parseInt(s) <= 100 && parseInt(l) <= 100;\r\n }\r\n }\r\n\r\n if (!isValidColor) {\r\n const hslaMatch = color.match(hslaPattern);\r\n if (hslaMatch) {\r\n const [, h, s, l] = hslaMatch;\r\n isValidColor = parseInt(h) <= 360 && parseInt(s) <= 100 && parseInt(l) <= 100;\r\n }\r\n }\r\n\r\n if (!isValidColor) {\r\n throw new ValidationError(\r\n `${paramName} must be a valid color format (hex, rgb, rgba, hsl, or hsla). Received: ${color}`\r\n );\r\n }\r\n}\r\n\r\nfunction validateLinkText(linkText: string): void {\r\n if (typeof linkText !== 'string') {\r\n throw new ValidationError(`linkText must be a string. Received: ${typeof linkText}`);\r\n }\r\n\r\n if (linkText.length > 100) {\r\n throw new ValidationError(\r\n `linkText must be 100 characters or less. Received length: ${linkText.length}`\r\n );\r\n }\r\n}\r\n\r\nfunction validateCallbacks(config: DropConfig): void {\r\n if (config.onStatusChange !== undefined && typeof config.onStatusChange !== 'function') {\r\n throw new ValidationError(\r\n `onStatusChange must be a function if provided. Received: ${typeof config.onStatusChange}`\r\n );\r\n }\r\n\r\n if (config.onError !== undefined && typeof config.onError !== 'function') {\r\n throw new ValidationError(\r\n `onError must be a function if provided. Received: ${typeof config.onError}`\r\n );\r\n }\r\n\r\n if (config.onPoll !== undefined && typeof config.onPoll !== 'function') {\r\n throw new ValidationError(\r\n `onPoll must be a function if provided. Received: ${typeof config.onPoll}`\r\n );\r\n }\r\n}\r\n","import type { DropConfig, DropInstance, DropPaymentStatus } from \"./types\";\r\nimport { Poller } from \"./poller\";\r\nimport { renderQR } from \"./qr\";\r\nimport { validateDropConfig } from \"./validator\";\r\n\r\nconst DEFAULT_QR_SIZE = 256;\r\n\r\nfunction parseInstanceUrl(instanceUrl: string): {\r\n paymentAccountId: string;\r\n paymentIntentId: string;\r\n apiBaseUrl: string;\r\n queryString: string;\r\n} {\r\n const urlWithoutQuery = instanceUrl.split('?')[0].split('#')[0];\r\n const queryString = instanceUrl.includes('?')\r\n ? instanceUrl.substring(instanceUrl.indexOf('?'))\r\n : '';\r\n\r\nconst pattern = \r\n /\\/payment-accounts\\/([^/]+)\\/payment-intents\\/([^/]+)/;\r\n const match = urlWithoutQuery.match(pattern);\r\n\r\n if (!match) {\r\n throw new Error(\r\n \"Invalid instanceUrl format. Expected: .../payment-accounts/{id}/payment-intents/{id}\",\r\n );\r\n }\r\n\r\n const paymentAccountId = match[1];\r\n const paymentIntentId = match[2];\r\n const apiBaseUrl = urlWithoutQuery.substring(\r\n 0,\r\n urlWithoutQuery.indexOf(\"/payment-accounts/\"),\r\n );\r\n\r\n return { paymentAccountId, paymentIntentId, apiBaseUrl, queryString };\r\n}\r\n\r\nexport const Drop = {\r\n async create(config: DropConfig): Promise<DropInstance> {\r\n validateDropConfig(config);\r\n\r\n const {\r\n clientSecret,\r\n instanceUrl,\r\n containerId,\r\n qrSize = DEFAULT_QR_SIZE,\r\n pollingInterval,\r\n onStatusChange,\r\n onError,\r\n onPoll,\r\n } = config;\r\n\r\n const container = document.getElementById(containerId);\r\n if (!container) {\r\n throw new Error(`Element with id \"${containerId}\" not found.`);\r\n }\r\n\r\n const { paymentAccountId, paymentIntentId, apiBaseUrl: parsedApiBaseUrl, queryString } =\r\n parseInstanceUrl(instanceUrl);\r\n const apiBaseUrl = config.apiBaseUrl || parsedApiBaseUrl;\r\n\r\n const { qrOptions, showCopyableLink, linkText } = config;\r\n await renderQR(container, instanceUrl, qrSize, {\r\n ...qrOptions,\r\n showCopyableLink,\r\n linkText,\r\n });\r\n\r\n const poller = new Poller({\r\n apiBaseUrl,\r\n paymentAccountId,\r\n paymentIntentId,\r\n clientSecret,\r\n queryString,\r\n pollingInterval,\r\n onStatusChange: (status: DropPaymentStatus) => {\r\n onStatusChange?.(status);\r\n },\r\n onError: (error) => {\r\n onError?.(error);\r\n },\r\n onPoll: () => {\r\n onPoll?.();\r\n },\r\n });\r\n\r\n poller.start();\r\n\r\n return {\r\n destroy() {\r\n poller.stop();\r\n container.innerHTML = \"\";\r\n },\r\n getStatus(): DropPaymentStatus {\r\n return poller.getStatus();\r\n },\r\n };\r\n },\r\n};\r\n\r\nexport { renderQR } from \"./qr\";\r\nexport { ValidationError } from \"./validator\";\r\n\r\nexport type {\r\n DropConfig,\r\n DropInstance,\r\n DropPaymentStatus,\r\n DropError,\r\n DropErrorCode,\r\n QROptions,\r\n} from \"./types\";\r\n"],"names":["STATUS_MAP","TERMINAL_STATUSES","mapStatus","backendStatus","isTerminal","status","createError","code","message","retryable","fromHttpStatus","networkError","DEFAULT_INTERVAL","BACKOFF_MULTIPLIER","MAX_INTERVAL","MAX_CONSECUTIVE_FAILURES","EXPIRY_GRACE_MS","Poller","config","_a","_b","response","data","mapped","retryAfter","seconds","queryString","url","t","e","module","this","i","r","n","s","o","h","p","v","m","b","x","y","C","S","M","A","a","d","u","c","l","g","f","w","_","$","O","D","k","z","B","P","I","DROP_LOGO_PNG","applyStyles","element","styles","key","value","convertColorToHex","color","match","hue2rgb","q","toHex","createLinkElement","size","labelText","container","label","inputWrapper","input","hint","copyToClipboard","showCopyFeedback","originalText","renderQR","options","moduleColor","backgroundColor","cornerRadius","showCopyableLink","linkText","hexModuleColor","hexBackgroundColor","logoPercentage","imageMargin","qrCode","QRCodeStyling","wrapper","svg","linkElement","ValidationError","validateDropConfig","validateClientSecret","validateQRSize","validatePollingInterval","validateQROptions","validateLinkText","validateCallbacks","clientSecret","qrSize","pollingInterval","qrOptions","validateCornerRadius","validateColor","paramName","hexPattern","rgbPattern","rgbaPattern","hslPattern","hslaPattern","isValidColor","rgbMatch","rgbaMatch","hslMatch","hslaMatch","DEFAULT_QR_SIZE","parseInstanceUrl","instanceUrl","urlWithoutQuery","pattern","paymentAccountId","paymentIntentId","apiBaseUrl","Drop","containerId","onStatusChange","onError","onPoll","parsedApiBaseUrl","poller","error"],"mappings":"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E,GAAE,CAAC,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,IAAG,GAAE,KAAI,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,IAAG,GAAE,KAAI,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,IAAG,GAAE,KAAI,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,IAAG,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,IAAG,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,GAAE,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,KAAI,KAAI,IAAG,KAAI,GAAG,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,GAAE,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,KAAI,KAAI,GAAE,KAAI,GAAG,GAAE,CAAC,IAAG,IAAG,IAAG,IAAG,IAAG,EAAE,GAAE,CAAC,IAAG,IAA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","x_google_ignoreList":[3]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
(function(ut,ft){typeof exports=="object"&&typeof module<"u"?ft(exports):typeof define=="function"&&define.amd?define(["exports"],ft):(ut=typeof globalThis<"u"?globalThis:ut||self,ft(ut.Drop={}))})(this,(function(ut){"use strict";const ft={PaymentInitiated:"initiated",PaymentPending:"pending",PaymentSucceeded:"succeeded",PaymentFailed:"failed",PaymentCancelled:"cancelled",PaymentExpired:"expired"},Bt=new Set(["succeeded","failed","cancelled","expired"]);function Pt(c){return ft[c]??null}function Rt(c){return Bt.has(c)}function pt(c,A,z){return{code:c,message:A,retryable:z}}function mt(c,A){switch(c){case 401:return pt("AUTH_ERROR",A??"Invalid client secret.",!1);case 404:return pt("NOT_FOUND",A??"Payment intent not found.",!1);case 429:return pt("RATE_LIMITED",A??"Rate limited. Retrying.",!0);default:return pt("UNKNOWN",A??`Unexpected status: ${c}`,!0)}}function Mt(c){return pt("NETWORK_ERROR",c,!0)}const $t=3e3,zt=1.5,qt=3e4,Ot=5,Lt=3e4;class Nt{constructor(A){this.interval=$t,this.timer=null,this.destroyed=!1,this.consecutiveFailures=0,this.currentStatus="initiated",this.expiresAt=null,this.config=A,A.pollingInterval&&(this.interval=A.pollingInterval)}start(){this.poll()}stop(){this.destroyed=!0,this.timer!==null&&(clearTimeout(this.timer),this.timer=null)}getStatus(){return this.currentStatus}async poll(){var A,z;if(!this.destroyed){if((z=(A=this.config).onPoll)==null||z.call(A),this.isExpired()){this.emitStatus("expired");return}try{const B=await this.fetchStatus();if(B.ok){this.consecutiveFailures=0,this.interval=$t;const E=await B.json();this.expiresAt=new Date(E.expiresAt);const Q=Pt(E.status);if(Q&&Q!==this.currentStatus&&(this.emitStatus(Q),Rt(Q)))return}else if(B.status===429){const E=B.headers.get("Retry-After");if(E){const Q=parseInt(E,10);isNaN(Q)||(this.interval=Q*1e3)}else this.applyBackoff();this.config.onError(mt(429))}else if(B.status===401||B.status===404){this.config.onError(mt(B.status));return}else if(this.consecutiveFailures++,this.applyBackoff(),this.config.onError(mt(B.status)),this.consecutiveFailures>=Ot){this.config.onError(mt(B.status,"Max consecutive failures reached. Stopping."));return}}catch{if(this.consecutiveFailures++,this.applyBackoff(),this.config.onError(Mt("Network request failed.")),this.consecutiveFailures>=Ot){this.config.onError(Mt("Max consecutive failures reached. Stopping."));return}}this.scheduleNext()}}async fetchStatus(){const A=this.config.queryString||"",z=`${this.config.apiBaseUrl}/payment-accounts/${this.config.paymentAccountId}/payment-intents/${this.config.paymentIntentId}/status${A}`;return fetch(z,{method:"GET",headers:{"client-secret":this.config.clientSecret}})}emitStatus(A){this.currentStatus=A,this.config.onStatusChange(A)}applyBackoff(){this.interval=Math.min(this.interval*zt,qt)}isExpired(){return this.expiresAt?Date.now()>this.expiresAt.getTime()+Lt:!1}scheduleNext(){this.destroyed||(this.timer=setTimeout(()=>this.poll(),this.interval))}}function Tt(c){return c&&c.__esModule&&Object.prototype.hasOwnProperty.call(c,"default")?c.default:c}var vt={exports:{}},jt=vt.exports,kt;function Ft(){return kt||(kt=1,(function(c,A){(function(z,B){c.exports=B()})(jt,(()=>(()=>{var z={873:(S,x)=>{var D,F,q=(function(){var U=function(f,l){var d=f,e=st[l],t=null,n=0,r=null,i=[],a={},w=function(o,h){t=(function(s){for(var u=new Array(s),g=0;g<s;g+=1){u[g]=new Array(s);for(var b=0;b<s;b+=1)u[g][b]=null}return u})(n=4*d+17),p(0,0),p(n-7,0),p(0,n-7),m(),_(),v(o,h),d>=7&&y(o),r==null&&(r=P(d,e,i)),C(r,h)},p=function(o,h){for(var s=-1;s<=7;s+=1)if(!(o+s<=-1||n<=o+s))for(var u=-1;u<=7;u+=1)h+u<=-1||n<=h+u||(t[o+s][h+u]=0<=s&&s<=6&&(u==0||u==6)||0<=u&&u<=6&&(s==0||s==6)||2<=s&&s<=4&&2<=u&&u<=4)},_=function(){for(var o=8;o<n-8;o+=1)t[o][6]==null&&(t[o][6]=o%2==0);for(var h=8;h<n-8;h+=1)t[6][h]==null&&(t[6][h]=h%2==0)},m=function(){for(var o=K.getPatternPosition(d),h=0;h<o.length;h+=1)for(var s=0;s<o.length;s+=1){var u=o[h],g=o[s];if(t[u][g]==null)for(var b=-2;b<=2;b+=1)for(var O=-2;O<=2;O+=1)t[u+b][g+O]=b==-2||b==2||O==-2||O==2||b==0&&O==0}},y=function(o){for(var h=K.getBCHTypeNumber(d),s=0;s<18;s+=1){var u=!o&&(h>>s&1)==1;t[Math.floor(s/3)][s%3+n-8-3]=u}for(s=0;s<18;s+=1)u=!o&&(h>>s&1)==1,t[s%3+n-8-3][Math.floor(s/3)]=u},v=function(o,h){for(var s=e<<3|h,u=K.getBCHTypeInfo(s),g=0;g<15;g+=1){var b=!o&&(u>>g&1)==1;g<6?t[g][8]=b:g<8?t[g+1][8]=b:t[n-15+g][8]=b}for(g=0;g<15;g+=1)b=!o&&(u>>g&1)==1,g<8?t[8][n-g-1]=b:g<9?t[8][15-g-1+1]=b:t[8][15-g-1]=b;t[n-8][8]=!o},C=function(o,h){for(var s=-1,u=n-1,g=7,b=0,O=K.getMaskFunction(h),I=n-1;I>0;I-=2)for(I==6&&(I-=1);;){for(var N=0;N<2;N+=1)if(t[u][I-N]==null){var T=!1;b<o.length&&(T=(o[b]>>>g&1)==1),O(u,I-N)&&(T=!T),t[u][I-N]=T,(g-=1)==-1&&(b+=1,g=7)}if((u+=s)<0||n<=u){u-=s,s=-s;break}}},P=function(o,h,s){for(var u=_t.getRSBlocks(o,h),g=ct(),b=0;b<s.length;b+=1){var O=s[b];g.put(O.getMode(),4),g.put(O.getLength(),K.getLengthInBits(O.getMode(),o)),O.write(g)}var I=0;for(b=0;b<u.length;b+=1)I+=u[b].dataCount;if(g.getLengthInBits()>8*I)throw"code length overflow. ("+g.getLengthInBits()+">"+8*I+")";for(g.getLengthInBits()+4<=8*I&&g.put(0,4);g.getLengthInBits()%8!=0;)g.putBit(!1);for(;!(g.getLengthInBits()>=8*I||(g.put(236,8),g.getLengthInBits()>=8*I));)g.put(17,8);return(function(N,T){for(var H=0,et=0,V=0,X=new Array(T.length),j=new Array(T.length),M=0;M<T.length;M+=1){var Y=T[M].dataCount,Z=T[M].totalCount-Y;et=Math.max(et,Y),V=Math.max(V,Z),X[M]=new Array(Y);for(var k=0;k<X[M].length;k+=1)X[M][k]=255&N.getBuffer()[k+H];H+=Y;var ot=K.getErrorCorrectPolynomial(Z),rt=dt(X[M],ot.getLength()-1).mod(ot);for(j[M]=new Array(ot.getLength()-1),k=0;k<j[M].length;k+=1){var it=k+rt.getLength()-j[M].length;j[M][k]=it>=0?rt.getAt(it):0}}var St=0;for(k=0;k<T.length;k+=1)St+=T[k].totalCount;var wt=new Array(St),at=0;for(k=0;k<et;k+=1)for(M=0;M<T.length;M+=1)k<X[M].length&&(wt[at]=X[M][k],at+=1);for(k=0;k<V;k+=1)for(M=0;M<T.length;M+=1)k<j[M].length&&(wt[at]=j[M][k],at+=1);return wt})(g,u)};a.addData=function(o,h){var s=null;switch(h=h||"Byte"){case"Numeric":s=yt(o);break;case"Alphanumeric":s=bt(o);break;case"Byte":s=lt(o);break;case"Kanji":s=xt(o);break;default:throw"mode:"+h}i.push(s),r=null},a.isDark=function(o,h){if(o<0||n<=o||h<0||n<=h)throw o+","+h;return t[o][h]},a.getModuleCount=function(){return n},a.make=function(){if(d<1){for(var o=1;o<40;o++){for(var h=_t.getRSBlocks(o,e),s=ct(),u=0;u<i.length;u++){var g=i[u];s.put(g.getMode(),4),s.put(g.getLength(),K.getLengthInBits(g.getMode(),o)),g.write(s)}var b=0;for(u=0;u<h.length;u++)b+=h[u].dataCount;if(s.getLengthInBits()<=8*b)break}d=o}w(!1,(function(){for(var O=0,I=0,N=0;N<8;N+=1){w(!0,N);var T=K.getLostPoint(a);(N==0||O>T)&&(O=T,I=N)}return I})())},a.createTableTag=function(o,h){o=o||2;var s="";s+='<table style="',s+=" border-width: 0px; border-style: none;",s+=" border-collapse: collapse;",s+=" padding: 0px; margin: "+(h=h===void 0?4*o:h)+"px;",s+='">',s+="<tbody>";for(var u=0;u<a.getModuleCount();u+=1){s+="<tr>";for(var g=0;g<a.getModuleCount();g+=1)s+='<td style="',s+=" border-width: 0px; border-style: none;",s+=" border-collapse: collapse;",s+=" padding: 0px; margin: 0px;",s+=" width: "+o+"px;",s+=" height: "+o+"px;",s+=" background-color: ",s+=a.isDark(u,g)?"#000000":"#ffffff",s+=";",s+='"/>';s+="</tr>"}return(s+="</tbody>")+"</table>"},a.createSvgTag=function(o,h,s,u){var g={};typeof arguments[0]=="object"&&(o=(g=arguments[0]).cellSize,h=g.margin,s=g.alt,u=g.title),o=o||2,h=h===void 0?4*o:h,(s=typeof s=="string"?{text:s}:s||{}).text=s.text||null,s.id=s.text?s.id||"qrcode-description":null,(u=typeof u=="string"?{text:u}:u||{}).text=u.text||null,u.id=u.text?u.id||"qrcode-title":null;var b,O,I,N,T=a.getModuleCount()*o+2*h,H="";for(N="l"+o+",0 0,"+o+" -"+o+",0 0,-"+o+"z ",H+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',H+=g.scalable?"":' width="'+T+'px" height="'+T+'px"',H+=' viewBox="0 0 '+T+" "+T+'" ',H+=' preserveAspectRatio="xMinYMin meet"',H+=u.text||s.text?' role="img" aria-labelledby="'+$([u.id,s.id].join(" ").trim())+'"':"",H+=">",H+=u.text?'<title id="'+$(u.id)+'">'+$(u.text)+"</title>":"",H+=s.text?'<description id="'+$(s.id)+'">'+$(s.text)+"</description>":"",H+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',H+='<path d="',O=0;O<a.getModuleCount();O+=1)for(I=O*o+h,b=0;b<a.getModuleCount();b+=1)a.isDark(O,b)&&(H+="M"+(b*o+h)+","+I+N);return(H+='" stroke="transparent" fill="black"/>')+"</svg>"},a.createDataURL=function(o,h){o=o||2,h=h===void 0?4*o:h;var s=a.getModuleCount()*o+2*h,u=h,g=s-h;return gt(s,s,(function(b,O){if(u<=b&&b<g&&u<=O&&O<g){var I=Math.floor((b-u)/o),N=Math.floor((O-u)/o);return a.isDark(N,I)?0:1}return 1}))},a.createImgTag=function(o,h,s){o=o||2,h=h===void 0?4*o:h;var u=a.getModuleCount()*o+2*h,g="";return g+="<img",g+=' src="',g+=a.createDataURL(o,h),g+='"',g+=' width="',g+=u,g+='"',g+=' height="',g+=u,g+='"',s&&(g+=' alt="',g+=$(s),g+='"'),g+"/>"};var $=function(o){for(var h="",s=0;s<o.length;s+=1){var u=o.charAt(s);switch(u){case"<":h+="<";break;case">":h+=">";break;case"&":h+="&";break;case'"':h+=""";break;default:h+=u}}return h};return a.createASCII=function(o,h){if((o=o||1)<2)return(function(X){X=X===void 0?2:X;var j,M,Y,Z,k,ot=1*a.getModuleCount()+2*X,rt=X,it=ot-X,St={"██":"█","█ ":"▀"," █":"▄"," ":" "},wt={"██":"▀","█ ":"▀"," █":" "," ":" "},at="";for(j=0;j<ot;j+=2){for(Y=Math.floor((j-rt)/1),Z=Math.floor((j+1-rt)/1),M=0;M<ot;M+=1)k="█",rt<=M&&M<it&&rt<=j&&j<it&&a.isDark(Y,Math.floor((M-rt)/1))&&(k=" "),rt<=M&&M<it&&rt<=j+1&&j+1<it&&a.isDark(Z,Math.floor((M-rt)/1))?k+=" ":k+="█",at+=X<1&&j+1>=it?wt[k]:St[k];at+=`
|
|
2
|
+
`}return ot%2&&X>0?at.substring(0,at.length-ot-1)+Array(ot+1).join("▀"):at.substring(0,at.length-1)})(h);o-=1,h=h===void 0?2*o:h;var s,u,g,b,O=a.getModuleCount()*o+2*h,I=h,N=O-h,T=Array(o+1).join("██"),H=Array(o+1).join(" "),et="",V="";for(s=0;s<O;s+=1){for(g=Math.floor((s-I)/o),V="",u=0;u<O;u+=1)b=1,I<=u&&u<N&&I<=s&&s<N&&a.isDark(g,Math.floor((u-I)/o))&&(b=0),V+=b?T:H;for(g=0;g<o;g+=1)et+=V+`
|
|
3
|
+
`}return et.substring(0,et.length-1)},a.renderTo2dContext=function(o,h){h=h||2;for(var s=a.getModuleCount(),u=0;u<s;u++)for(var g=0;g<s;g++)o.fillStyle=a.isDark(u,g)?"black":"white",o.fillRect(u*h,g*h,h,h)},a};U.stringToBytes=(U.stringToBytesFuncs={default:function(f){for(var l=[],d=0;d<f.length;d+=1){var e=f.charCodeAt(d);l.push(255&e)}return l}}).default,U.createStringToBytes=function(f,l){var d=(function(){for(var t=At(f),n=function(){var _=t.read();if(_==-1)throw"eof";return _},r=0,i={};;){var a=t.read();if(a==-1)break;var w=n(),p=n()<<8|n();i[String.fromCharCode(a<<8|w)]=p,r+=1}if(r!=l)throw r+" != "+l;return i})(),e=63;return function(t){for(var n=[],r=0;r<t.length;r+=1){var i=t.charCodeAt(r);if(i<128)n.push(i);else{var a=d[t.charAt(r)];typeof a=="number"?(255&a)==a?n.push(a):(n.push(a>>>8),n.push(255&a)):n.push(e)}}return n}};var G,W,L,R,nt,st={L:1,M:0,Q:3,H:2},K=(G=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],W=1335,L=7973,nt=function(f){for(var l=0;f!=0;)l+=1,f>>>=1;return l},(R={}).getBCHTypeInfo=function(f){for(var l=f<<10;nt(l)-nt(W)>=0;)l^=W<<nt(l)-nt(W);return 21522^(f<<10|l)},R.getBCHTypeNumber=function(f){for(var l=f<<12;nt(l)-nt(L)>=0;)l^=L<<nt(l)-nt(L);return f<<12|l},R.getPatternPosition=function(f){return G[f-1]},R.getMaskFunction=function(f){switch(f){case 0:return function(l,d){return(l+d)%2==0};case 1:return function(l,d){return l%2==0};case 2:return function(l,d){return d%3==0};case 3:return function(l,d){return(l+d)%3==0};case 4:return function(l,d){return(Math.floor(l/2)+Math.floor(d/3))%2==0};case 5:return function(l,d){return l*d%2+l*d%3==0};case 6:return function(l,d){return(l*d%2+l*d%3)%2==0};case 7:return function(l,d){return(l*d%3+(l+d)%2)%2==0};default:throw"bad maskPattern:"+f}},R.getErrorCorrectPolynomial=function(f){for(var l=dt([1],0),d=0;d<f;d+=1)l=l.multiply(dt([1,J.gexp(d)],0));return l},R.getLengthInBits=function(f,l){if(1<=l&&l<10)switch(f){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+f}else if(l<27)switch(f){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+f}else{if(!(l<41))throw"type:"+l;switch(f){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+f}}},R.getLostPoint=function(f){for(var l=f.getModuleCount(),d=0,e=0;e<l;e+=1)for(var t=0;t<l;t+=1){for(var n=0,r=f.isDark(e,t),i=-1;i<=1;i+=1)if(!(e+i<0||l<=e+i))for(var a=-1;a<=1;a+=1)t+a<0||l<=t+a||i==0&&a==0||r==f.isDark(e+i,t+a)&&(n+=1);n>5&&(d+=3+n-5)}for(e=0;e<l-1;e+=1)for(t=0;t<l-1;t+=1){var w=0;f.isDark(e,t)&&(w+=1),f.isDark(e+1,t)&&(w+=1),f.isDark(e,t+1)&&(w+=1),f.isDark(e+1,t+1)&&(w+=1),w!=0&&w!=4||(d+=3)}for(e=0;e<l;e+=1)for(t=0;t<l-6;t+=1)f.isDark(e,t)&&!f.isDark(e,t+1)&&f.isDark(e,t+2)&&f.isDark(e,t+3)&&f.isDark(e,t+4)&&!f.isDark(e,t+5)&&f.isDark(e,t+6)&&(d+=40);for(t=0;t<l;t+=1)for(e=0;e<l-6;e+=1)f.isDark(e,t)&&!f.isDark(e+1,t)&&f.isDark(e+2,t)&&f.isDark(e+3,t)&&f.isDark(e+4,t)&&!f.isDark(e+5,t)&&f.isDark(e+6,t)&&(d+=40);var p=0;for(t=0;t<l;t+=1)for(e=0;e<l;e+=1)f.isDark(e,t)&&(p+=1);return d+Math.abs(100*p/l/l-50)/5*10},R),J=(function(){for(var f=new Array(256),l=new Array(256),d=0;d<8;d+=1)f[d]=1<<d;for(d=8;d<256;d+=1)f[d]=f[d-4]^f[d-5]^f[d-6]^f[d-8];for(d=0;d<255;d+=1)l[f[d]]=d;return{glog:function(e){if(e<1)throw"glog("+e+")";return l[e]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return f[e]}}})();function dt(f,l){if(f.length===void 0)throw f.length+"/"+l;var d=(function(){for(var t=0;t<f.length&&f[t]==0;)t+=1;for(var n=new Array(f.length-t+l),r=0;r<f.length-t;r+=1)n[r]=f[r+t];return n})(),e={getAt:function(t){return d[t]},getLength:function(){return d.length},multiply:function(t){for(var n=new Array(e.getLength()+t.getLength()-1),r=0;r<e.getLength();r+=1)for(var i=0;i<t.getLength();i+=1)n[r+i]^=J.gexp(J.glog(e.getAt(r))+J.glog(t.getAt(i)));return dt(n,0)},mod:function(t){if(e.getLength()-t.getLength()<0)return e;for(var n=J.glog(e.getAt(0))-J.glog(t.getAt(0)),r=new Array(e.getLength()),i=0;i<e.getLength();i+=1)r[i]=e.getAt(i);for(i=0;i<t.getLength();i+=1)r[i]^=J.gexp(J.glog(t.getAt(i))+n);return dt(r,0).mod(t)}};return e}var _t=(function(){var f=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],l=function(e,t){var n={};return n.totalCount=e,n.dataCount=t,n},d={getRSBlocks:function(e,t){var n=(function(y,v){switch(v){case st.L:return f[4*(y-1)+0];case st.M:return f[4*(y-1)+1];case st.Q:return f[4*(y-1)+2];case st.H:return f[4*(y-1)+3];default:return}})(e,t);if(n===void 0)throw"bad rs block @ typeNumber:"+e+"/errorCorrectionLevel:"+t;for(var r=n.length/3,i=[],a=0;a<r;a+=1)for(var w=n[3*a+0],p=n[3*a+1],_=n[3*a+2],m=0;m<w;m+=1)i.push(l(p,_));return i}};return d})(),ct=function(){var f=[],l=0,d={getBuffer:function(){return f},getAt:function(e){var t=Math.floor(e/8);return(f[t]>>>7-e%8&1)==1},put:function(e,t){for(var n=0;n<t;n+=1)d.putBit((e>>>t-n-1&1)==1)},getLengthInBits:function(){return l},putBit:function(e){var t=Math.floor(l/8);f.length<=t&&f.push(0),e&&(f[t]|=128>>>l%8),l+=1}};return d},yt=function(f){var l=f,d={getMode:function(){return 1},getLength:function(n){return l.length},write:function(n){for(var r=l,i=0;i+2<r.length;)n.put(e(r.substring(i,i+3)),10),i+=3;i<r.length&&(r.length-i==1?n.put(e(r.substring(i,i+1)),4):r.length-i==2&&n.put(e(r.substring(i,i+2)),7))}},e=function(n){for(var r=0,i=0;i<n.length;i+=1)r=10*r+t(n.charAt(i));return r},t=function(n){if("0"<=n&&n<="9")return n.charCodeAt(0)-48;throw"illegal char :"+n};return d},bt=function(f){var l=f,d={getMode:function(){return 2},getLength:function(t){return l.length},write:function(t){for(var n=l,r=0;r+1<n.length;)t.put(45*e(n.charAt(r))+e(n.charAt(r+1)),11),r+=2;r<n.length&&t.put(e(n.charAt(r)),6)}},e=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-48;if("A"<=t&&t<="Z")return t.charCodeAt(0)-65+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return d},lt=function(f){var l=U.stringToBytes(f);return{getMode:function(){return 4},getLength:function(d){return l.length},write:function(d){for(var e=0;e<l.length;e+=1)d.put(l[e],8)}}},xt=function(f){var l=U.stringToBytesFuncs.SJIS;if(!l)throw"sjis not supported.";(function(){var t=l("友");if(t.length!=2||(t[0]<<8|t[1])!=38726)throw"sjis not supported."})();var d=l(f),e={getMode:function(){return 8},getLength:function(t){return~~(d.length/2)},write:function(t){for(var n=d,r=0;r+1<n.length;){var i=(255&n[r])<<8|255&n[r+1];if(33088<=i&&i<=40956)i-=33088;else{if(!(57408<=i&&i<=60351))throw"illegal char at "+(r+1)+"/"+i;i-=49472}i=192*(i>>>8&255)+(255&i),t.put(i,13),r+=2}if(r<n.length)throw"illegal char at "+(r+1)}};return e},Ct=function(){var f=[],l={writeByte:function(d){f.push(255&d)},writeShort:function(d){l.writeByte(d),l.writeByte(d>>>8)},writeBytes:function(d,e,t){e=e||0,t=t||d.length;for(var n=0;n<t;n+=1)l.writeByte(d[n+e])},writeString:function(d){for(var e=0;e<d.length;e+=1)l.writeByte(d.charCodeAt(e))},toByteArray:function(){return f},toString:function(){var d="";d+="[";for(var e=0;e<f.length;e+=1)e>0&&(d+=","),d+=f[e];return d+"]"}};return l},At=function(f){var l=f,d=0,e=0,t=0,n={read:function(){for(;t<8;){if(d>=l.length){if(t==0)return-1;throw"unexpected end of file./"+t}var i=l.charAt(d);if(d+=1,i=="=")return t=0,-1;i.match(/^\s$/)||(e=e<<6|r(i.charCodeAt(0)),t+=6)}var a=e>>>t-8&255;return t-=8,a}},r=function(i){if(65<=i&&i<=90)return i-65;if(97<=i&&i<=122)return i-97+26;if(48<=i&&i<=57)return i-48+52;if(i==43)return 62;if(i==47)return 63;throw"c:"+i};return n},gt=function(f,l,d){for(var e=(function(p,_){var m=p,y=_,v=new Array(p*_),C={setPixel:function(o,h,s){v[h*m+o]=s},write:function(o){o.writeString("GIF87a"),o.writeShort(m),o.writeShort(y),o.writeByte(128),o.writeByte(0),o.writeByte(0),o.writeByte(0),o.writeByte(0),o.writeByte(0),o.writeByte(255),o.writeByte(255),o.writeByte(255),o.writeString(","),o.writeShort(0),o.writeShort(0),o.writeShort(m),o.writeShort(y),o.writeByte(0);var h=P(2);o.writeByte(2);for(var s=0;h.length-s>255;)o.writeByte(255),o.writeBytes(h,s,255),s+=255;o.writeByte(h.length-s),o.writeBytes(h,s,h.length-s),o.writeByte(0),o.writeString(";")}},P=function(o){for(var h=1<<o,s=1+(1<<o),u=o+1,g=$(),b=0;b<h;b+=1)g.add(String.fromCharCode(b));g.add(String.fromCharCode(h)),g.add(String.fromCharCode(s));var O,I,N,T=Ct(),H=(O=T,I=0,N=0,{write:function(j,M){if(j>>>M)throw"length over";for(;I+M>=8;)O.writeByte(255&(j<<I|N)),M-=8-I,j>>>=8-I,N=0,I=0;N|=j<<I,I+=M},flush:function(){I>0&&O.writeByte(N)}});H.write(h,u);var et=0,V=String.fromCharCode(v[et]);for(et+=1;et<v.length;){var X=String.fromCharCode(v[et]);et+=1,g.contains(V+X)?V+=X:(H.write(g.indexOf(V),u),g.size()<4095&&(g.size()==1<<u&&(u+=1),g.add(V+X)),V=X)}return H.write(g.indexOf(V),u),H.write(s,u),H.flush(),T.toByteArray()},$=function(){var o={},h=0,s={add:function(u){if(s.contains(u))throw"dup key:"+u;o[u]=h,h+=1},size:function(){return h},indexOf:function(u){return o[u]},contains:function(u){return o[u]!==void 0}};return s};return C})(f,l),t=0;t<l;t+=1)for(var n=0;n<f;n+=1)e.setPixel(n,t,d(n,t));var r=Ct();e.write(r);for(var i=(function(){var p=0,_=0,m=0,y="",v={},C=function($){y+=String.fromCharCode(P(63&$))},P=function($){if(!($<0)){if($<26)return 65+$;if($<52)return $-26+97;if($<62)return $-52+48;if($==62)return 43;if($==63)return 47}throw"n:"+$};return v.writeByte=function($){for(p=p<<8|255&$,_+=8,m+=1;_>=6;)C(p>>>_-6),_-=6},v.flush=function(){if(_>0&&(C(p<<6-_),p=0,_=0),m%3!=0)for(var $=3-m%3,o=0;o<$;o+=1)y+="="},v.toString=function(){return y},v})(),a=r.toByteArray(),w=0;w<a.length;w+=1)i.writeByte(a[w]);return i.flush(),"data:image/gif;base64,"+i};return U})();q.stringToBytesFuncs["UTF-8"]=function(U){return(function(G){for(var W=[],L=0;L<G.length;L++){var R=G.charCodeAt(L);R<128?W.push(R):R<2048?W.push(192|R>>6,128|63&R):R<55296||R>=57344?W.push(224|R>>12,128|R>>6&63,128|63&R):(L++,R=65536+((1023&R)<<10|1023&G.charCodeAt(L)),W.push(240|R>>18,128|R>>12&63,128|R>>6&63,128|63&R))}return W})(U)},(F=typeof(D=function(){return q})=="function"?D.apply(x,[]):D)===void 0||(S.exports=F)}},B={};function E(S){var x=B[S];if(x!==void 0)return x.exports;var D=B[S]={exports:{}};return z[S](D,D.exports,E),D.exports}E.n=S=>{var x=S&&S.__esModule?()=>S.default:()=>S;return E.d(x,{a:x}),x},E.d=(S,x)=>{for(var D in x)E.o(x,D)&&!E.o(S,D)&&Object.defineProperty(S,D,{enumerable:!0,get:x[D]})},E.o=(S,x)=>Object.prototype.hasOwnProperty.call(S,x);var Q={};return(()=>{E.d(Q,{default:()=>l});const S=d=>!!d&&typeof d=="object"&&!Array.isArray(d);function x(d,...e){if(!e.length)return d;const t=e.shift();return t!==void 0&&S(d)&&S(t)?(d=Object.assign({},d),Object.keys(t).forEach((n=>{const r=d[n],i=t[n];Array.isArray(r)&&Array.isArray(i)?d[n]=i:S(r)&&S(i)?d[n]=x(Object.assign({},r),i):d[n]=i})),x(d,...e)):d}function D(d,e){const t=document.createElement("a");t.download=e,t.href=d,document.body.appendChild(t),t.click(),document.body.removeChild(t)}const F={L:.07,M:.15,Q:.25,H:.3};class q{constructor({svg:e,type:t,window:n}){this._svg=e,this._type=t,this._window=n}draw(e,t,n,r){let i;switch(this._type){case"dots":i=this._drawDot;break;case"classy":i=this._drawClassy;break;case"classy-rounded":i=this._drawClassyRounded;break;case"rounded":i=this._drawRounded;break;case"extra-rounded":i=this._drawExtraRounded;break;default:i=this._drawSquare}i.call(this,{x:e,y:t,size:n,getNeighbor:r})}_rotateFigure({x:e,y:t,size:n,rotation:r=0,draw:i}){var a;const w=e+n/2,p=t+n/2;i(),(a=this._element)===null||a===void 0||a.setAttribute("transform",`rotate(${180*r/Math.PI},${w},${p})`)}_basicDot(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","circle"),this._element.setAttribute("cx",String(n+t/2)),this._element.setAttribute("cy",String(r+t/2)),this._element.setAttribute("r",String(t/2))}}))}_basicSquare(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","rect"),this._element.setAttribute("x",String(n)),this._element.setAttribute("y",String(r)),this._element.setAttribute("width",String(t)),this._element.setAttribute("height",String(t))}}))}_basicSideRounded(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("d",`M ${n} ${r}v ${t}h `+t/2+`a ${t/2} ${t/2}, 0, 0, 0, 0 ${-t}`)}}))}_basicCornerRounded(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("d",`M ${n} ${r}v ${t}h ${t}v `+-t/2+`a ${t/2} ${t/2}, 0, 0, 0, ${-t/2} ${-t/2}`)}}))}_basicCornerExtraRounded(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("d",`M ${n} ${r}v ${t}h ${t}a ${t} ${t}, 0, 0, 0, ${-t} ${-t}`)}}))}_basicCornersRounded(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("d",`M ${n} ${r}v `+t/2+`a ${t/2} ${t/2}, 0, 0, 0, ${t/2} ${t/2}h `+t/2+"v "+-t/2+`a ${t/2} ${t/2}, 0, 0, 0, ${-t/2} ${-t/2}`)}}))}_drawDot({x:e,y:t,size:n}){this._basicDot({x:e,y:t,size:n,rotation:0})}_drawSquare({x:e,y:t,size:n}){this._basicSquare({x:e,y:t,size:n,rotation:0})}_drawRounded({x:e,y:t,size:n,getNeighbor:r}){const i=r?+r(-1,0):0,a=r?+r(1,0):0,w=r?+r(0,-1):0,p=r?+r(0,1):0,_=i+a+w+p;if(_!==0)if(_>2||i&&a||w&&p)this._basicSquare({x:e,y:t,size:n,rotation:0});else{if(_===2){let m=0;return i&&w?m=Math.PI/2:w&&a?m=Math.PI:a&&p&&(m=-Math.PI/2),void this._basicCornerRounded({x:e,y:t,size:n,rotation:m})}if(_===1){let m=0;return w?m=Math.PI/2:a?m=Math.PI:p&&(m=-Math.PI/2),void this._basicSideRounded({x:e,y:t,size:n,rotation:m})}}else this._basicDot({x:e,y:t,size:n,rotation:0})}_drawExtraRounded({x:e,y:t,size:n,getNeighbor:r}){const i=r?+r(-1,0):0,a=r?+r(1,0):0,w=r?+r(0,-1):0,p=r?+r(0,1):0,_=i+a+w+p;if(_!==0)if(_>2||i&&a||w&&p)this._basicSquare({x:e,y:t,size:n,rotation:0});else{if(_===2){let m=0;return i&&w?m=Math.PI/2:w&&a?m=Math.PI:a&&p&&(m=-Math.PI/2),void this._basicCornerExtraRounded({x:e,y:t,size:n,rotation:m})}if(_===1){let m=0;return w?m=Math.PI/2:a?m=Math.PI:p&&(m=-Math.PI/2),void this._basicSideRounded({x:e,y:t,size:n,rotation:m})}}else this._basicDot({x:e,y:t,size:n,rotation:0})}_drawClassy({x:e,y:t,size:n,getNeighbor:r}){const i=r?+r(-1,0):0,a=r?+r(1,0):0,w=r?+r(0,-1):0,p=r?+r(0,1):0;i+a+w+p!==0?i||w?a||p?this._basicSquare({x:e,y:t,size:n,rotation:0}):this._basicCornerRounded({x:e,y:t,size:n,rotation:Math.PI/2}):this._basicCornerRounded({x:e,y:t,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:t,size:n,rotation:Math.PI/2})}_drawClassyRounded({x:e,y:t,size:n,getNeighbor:r}){const i=r?+r(-1,0):0,a=r?+r(1,0):0,w=r?+r(0,-1):0,p=r?+r(0,1):0;i+a+w+p!==0?i||w?a||p?this._basicSquare({x:e,y:t,size:n,rotation:0}):this._basicCornerExtraRounded({x:e,y:t,size:n,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:e,y:t,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:t,size:n,rotation:Math.PI/2})}}const U={dot:"dot",square:"square",extraRounded:"extra-rounded"},G=Object.values(U);class W{constructor({svg:e,type:t,window:n}){this._svg=e,this._type=t,this._window=n}draw(e,t,n,r){let i;switch(this._type){case U.square:i=this._drawSquare;break;case U.extraRounded:i=this._drawExtraRounded;break;default:i=this._drawDot}i.call(this,{x:e,y:t,size:n,rotation:r})}_rotateFigure({x:e,y:t,size:n,rotation:r=0,draw:i}){var a;const w=e+n/2,p=t+n/2;i(),(a=this._element)===null||a===void 0||a.setAttribute("transform",`rotate(${180*r/Math.PI},${w},${p})`)}_basicDot(e){const{size:t,x:n,y:r}=e,i=t/7;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("clip-rule","evenodd"),this._element.setAttribute("d",`M ${n+t/2} ${r}a ${t/2} ${t/2} 0 1 0 0.1 0zm 0 ${i}a ${t/2-i} ${t/2-i} 0 1 1 -0.1 0Z`)}}))}_basicSquare(e){const{size:t,x:n,y:r}=e,i=t/7;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("clip-rule","evenodd"),this._element.setAttribute("d",`M ${n} ${r}v ${t}h ${t}v `+-t+`zM ${n+i} ${r+i}h `+(t-2*i)+"v "+(t-2*i)+"h "+(2*i-t)+"z")}}))}_basicExtraRounded(e){const{size:t,x:n,y:r}=e,i=t/7;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","path"),this._element.setAttribute("clip-rule","evenodd"),this._element.setAttribute("d",`M ${n} ${r+2.5*i}v `+2*i+`a ${2.5*i} ${2.5*i}, 0, 0, 0, ${2.5*i} ${2.5*i}h `+2*i+`a ${2.5*i} ${2.5*i}, 0, 0, 0, ${2.5*i} ${2.5*-i}v `+-2*i+`a ${2.5*i} ${2.5*i}, 0, 0, 0, ${2.5*-i} ${2.5*-i}h `+-2*i+`a ${2.5*i} ${2.5*i}, 0, 0, 0, ${2.5*-i} ${2.5*i}M ${n+2.5*i} ${r+i}h `+2*i+`a ${1.5*i} ${1.5*i}, 0, 0, 1, ${1.5*i} ${1.5*i}v `+2*i+`a ${1.5*i} ${1.5*i}, 0, 0, 1, ${1.5*-i} ${1.5*i}h `+-2*i+`a ${1.5*i} ${1.5*i}, 0, 0, 1, ${1.5*-i} ${1.5*-i}v `+-2*i+`a ${1.5*i} ${1.5*i}, 0, 0, 1, ${1.5*i} ${1.5*-i}`)}}))}_drawDot({x:e,y:t,size:n,rotation:r}){this._basicDot({x:e,y:t,size:n,rotation:r})}_drawSquare({x:e,y:t,size:n,rotation:r}){this._basicSquare({x:e,y:t,size:n,rotation:r})}_drawExtraRounded({x:e,y:t,size:n,rotation:r}){this._basicExtraRounded({x:e,y:t,size:n,rotation:r})}}const L={dot:"dot",square:"square"},R=Object.values(L);class nt{constructor({svg:e,type:t,window:n}){this._svg=e,this._type=t,this._window=n}draw(e,t,n,r){let i;i=this._type===L.square?this._drawSquare:this._drawDot,i.call(this,{x:e,y:t,size:n,rotation:r})}_rotateFigure({x:e,y:t,size:n,rotation:r=0,draw:i}){var a;const w=e+n/2,p=t+n/2;i(),(a=this._element)===null||a===void 0||a.setAttribute("transform",`rotate(${180*r/Math.PI},${w},${p})`)}_basicDot(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","circle"),this._element.setAttribute("cx",String(n+t/2)),this._element.setAttribute("cy",String(r+t/2)),this._element.setAttribute("r",String(t/2))}}))}_basicSquare(e){const{size:t,x:n,y:r}=e;this._rotateFigure(Object.assign(Object.assign({},e),{draw:()=>{this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","rect"),this._element.setAttribute("x",String(n)),this._element.setAttribute("y",String(r)),this._element.setAttribute("width",String(t)),this._element.setAttribute("height",String(t))}}))}_drawDot({x:e,y:t,size:n,rotation:r}){this._basicDot({x:e,y:t,size:n,rotation:r})}_drawSquare({x:e,y:t,size:n,rotation:r}){this._basicSquare({x:e,y:t,size:n,rotation:r})}}const st="circle",K=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],J=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];class dt{constructor(e,t){this._roundSize=n=>this._options.dotsOptions.roundSize?Math.floor(n):n,this._window=t,this._element=this._window.document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("width",String(e.width)),this._element.setAttribute("height",String(e.height)),this._element.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink"),e.dotsOptions.roundSize||this._element.setAttribute("shape-rendering","crispEdges"),this._element.setAttribute("viewBox",`0 0 ${e.width} ${e.height}`),this._defs=this._window.document.createElementNS("http://www.w3.org/2000/svg","defs"),this._element.appendChild(this._defs),this._imageUri=e.image,this._instanceId=dt.instanceCount++,this._options=e}get width(){return this._options.width}get height(){return this._options.height}getElement(){return this._element}async drawQR(e){const t=e.getModuleCount(),n=Math.min(this._options.width,this._options.height)-2*this._options.margin,r=this._options.shape===st?n/Math.sqrt(2):n,i=this._roundSize(r/t);let a={hideXDots:0,hideYDots:0,width:0,height:0};if(this._qr=e,this._options.image){if(await this.loadImage(),!this._image)return;const{imageOptions:w,qrOptions:p}=this._options,_=w.imageSize*F[p.errorCorrectionLevel],m=Math.floor(_*t*t);a=(function({originalHeight:y,originalWidth:v,maxHiddenDots:C,maxHiddenAxisDots:P,dotSize:$}){const o={x:0,y:0},h={x:0,y:0};if(y<=0||v<=0||C<=0||$<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};const s=y/v;return o.x=Math.floor(Math.sqrt(C/s)),o.x<=0&&(o.x=1),P&&P<o.x&&(o.x=P),o.x%2==0&&o.x--,h.x=o.x*$,o.y=1+2*Math.ceil((o.x*s-1)/2),h.y=Math.round(h.x*s),(o.y*o.x>C||P&&P<o.y)&&(P&&P<o.y?(o.y=P,o.y%2==0&&o.x--):o.y-=2,h.y=o.y*$,o.x=1+2*Math.ceil((o.y/s-1)/2),h.x=Math.round(h.y/s)),{height:h.y,width:h.x,hideYDots:o.y,hideXDots:o.x}})({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:m,maxHiddenAxisDots:t-14,dotSize:i})}this.drawBackground(),this.drawDots(((w,p)=>{var _,m,y,v,C,P;return!(this._options.imageOptions.hideBackgroundDots&&w>=(t-a.hideYDots)/2&&w<(t+a.hideYDots)/2&&p>=(t-a.hideXDots)/2&&p<(t+a.hideXDots)/2||!((_=K[w])===null||_===void 0)&&_[p]||!((m=K[w-t+7])===null||m===void 0)&&m[p]||!((y=K[w])===null||y===void 0)&&y[p-t+7]||!((v=J[w])===null||v===void 0)&&v[p]||!((C=J[w-t+7])===null||C===void 0)&&C[p]||!((P=J[w])===null||P===void 0)&&P[p-t+7])})),this.drawCorners(),this._options.image&&await this.drawImage({width:a.width,height:a.height,count:t,dotSize:i})}drawBackground(){var e,t,n;const r=this._element,i=this._options;if(r){const a=(e=i.backgroundOptions)===null||e===void 0?void 0:e.gradient,w=(t=i.backgroundOptions)===null||t===void 0?void 0:t.color;let p=i.height,_=i.width;if(a||w){const m=this._window.document.createElementNS("http://www.w3.org/2000/svg","rect");this._backgroundClipPath=this._window.document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._backgroundClipPath.setAttribute("id",`clip-path-background-color-${this._instanceId}`),this._defs.appendChild(this._backgroundClipPath),!((n=i.backgroundOptions)===null||n===void 0)&&n.round&&(p=_=Math.min(i.width,i.height),m.setAttribute("rx",String(p/2*i.backgroundOptions.round))),m.setAttribute("x",String(this._roundSize((i.width-_)/2))),m.setAttribute("y",String(this._roundSize((i.height-p)/2))),m.setAttribute("width",String(_)),m.setAttribute("height",String(p)),this._backgroundClipPath.appendChild(m),this._createColor({options:a,color:w,additionalRotation:0,x:0,y:0,height:i.height,width:i.width,name:`background-color-${this._instanceId}`})}}}drawDots(e){var t,n;if(!this._qr)throw"QR code is not defined";const r=this._options,i=this._qr.getModuleCount();if(i>r.width||i>r.height)throw"The canvas is too small.";const a=Math.min(r.width,r.height)-2*r.margin,w=r.shape===st?a/Math.sqrt(2):a,p=this._roundSize(w/i),_=this._roundSize((r.width-i*p)/2),m=this._roundSize((r.height-i*p)/2),y=new q({svg:this._element,type:r.dotsOptions.type,window:this._window});this._dotsClipPath=this._window.document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._dotsClipPath.setAttribute("id",`clip-path-dot-color-${this._instanceId}`),this._defs.appendChild(this._dotsClipPath),this._createColor({options:(t=r.dotsOptions)===null||t===void 0?void 0:t.gradient,color:r.dotsOptions.color,additionalRotation:0,x:0,y:0,height:r.height,width:r.width,name:`dot-color-${this._instanceId}`});for(let v=0;v<i;v++)for(let C=0;C<i;C++)e&&!e(v,C)||!((n=this._qr)===null||n===void 0)&&n.isDark(v,C)&&(y.draw(_+C*p,m+v*p,p,((P,$)=>!(C+P<0||v+$<0||C+P>=i||v+$>=i)&&!(e&&!e(v+$,C+P))&&!!this._qr&&this._qr.isDark(v+$,C+P))),y._element&&this._dotsClipPath&&this._dotsClipPath.appendChild(y._element));if(r.shape===st){const v=this._roundSize((a/p-i)/2),C=i+2*v,P=_-v*p,$=m-v*p,o=[],h=this._roundSize(C/2);for(let s=0;s<C;s++){o[s]=[];for(let u=0;u<C;u++)s>=v-1&&s<=C-v&&u>=v-1&&u<=C-v||Math.sqrt((s-h)*(s-h)+(u-h)*(u-h))>h?o[s][u]=0:o[s][u]=this._qr.isDark(u-2*v<0?u:u>=i?u-2*v:u-v,s-2*v<0?s:s>=i?s-2*v:s-v)?1:0}for(let s=0;s<C;s++)for(let u=0;u<C;u++)o[s][u]&&(y.draw(P+u*p,$+s*p,p,((g,b)=>{var O;return!!(!((O=o[s+b])===null||O===void 0)&&O[u+g])})),y._element&&this._dotsClipPath&&this._dotsClipPath.appendChild(y._element))}}drawCorners(){if(!this._qr)throw"QR code is not defined";const e=this._element,t=this._options;if(!e)throw"Element code is not defined";const n=this._qr.getModuleCount(),r=Math.min(t.width,t.height)-2*t.margin,i=t.shape===st?r/Math.sqrt(2):r,a=this._roundSize(i/n),w=7*a,p=3*a,_=this._roundSize((t.width-n*a)/2),m=this._roundSize((t.height-n*a)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach((([y,v,C])=>{var P,$,o,h,s,u,g,b,O,I,N,T,H,et;const V=_+y*a*(n-7),X=m+v*a*(n-7);let j=this._dotsClipPath,M=this._dotsClipPath;if((!((P=t.cornersSquareOptions)===null||P===void 0)&&P.gradient||!(($=t.cornersSquareOptions)===null||$===void 0)&&$.color)&&(j=this._window.document.createElementNS("http://www.w3.org/2000/svg","clipPath"),j.setAttribute("id",`clip-path-corners-square-color-${y}-${v}-${this._instanceId}`),this._defs.appendChild(j),this._cornersSquareClipPath=this._cornersDotClipPath=M=j,this._createColor({options:(o=t.cornersSquareOptions)===null||o===void 0?void 0:o.gradient,color:(h=t.cornersSquareOptions)===null||h===void 0?void 0:h.color,additionalRotation:C,x:V,y:X,height:w,width:w,name:`corners-square-color-${y}-${v}-${this._instanceId}`})),((s=t.cornersSquareOptions)===null||s===void 0?void 0:s.type)&&G.includes(t.cornersSquareOptions.type)){const Y=new W({svg:this._element,type:t.cornersSquareOptions.type,window:this._window});Y.draw(V,X,w,C),Y._element&&j&&j.appendChild(Y._element)}else{const Y=new q({svg:this._element,type:((u=t.cornersSquareOptions)===null||u===void 0?void 0:u.type)||t.dotsOptions.type,window:this._window});for(let Z=0;Z<K.length;Z++)for(let k=0;k<K[Z].length;k++)!((g=K[Z])===null||g===void 0)&&g[k]&&(Y.draw(V+k*a,X+Z*a,a,((ot,rt)=>{var it;return!!(!((it=K[Z+rt])===null||it===void 0)&&it[k+ot])})),Y._element&&j&&j.appendChild(Y._element))}if((!((b=t.cornersDotOptions)===null||b===void 0)&&b.gradient||!((O=t.cornersDotOptions)===null||O===void 0)&&O.color)&&(M=this._window.document.createElementNS("http://www.w3.org/2000/svg","clipPath"),M.setAttribute("id",`clip-path-corners-dot-color-${y}-${v}-${this._instanceId}`),this._defs.appendChild(M),this._cornersDotClipPath=M,this._createColor({options:(I=t.cornersDotOptions)===null||I===void 0?void 0:I.gradient,color:(N=t.cornersDotOptions)===null||N===void 0?void 0:N.color,additionalRotation:C,x:V+2*a,y:X+2*a,height:p,width:p,name:`corners-dot-color-${y}-${v}-${this._instanceId}`})),((T=t.cornersDotOptions)===null||T===void 0?void 0:T.type)&&R.includes(t.cornersDotOptions.type)){const Y=new nt({svg:this._element,type:t.cornersDotOptions.type,window:this._window});Y.draw(V+2*a,X+2*a,p,C),Y._element&&M&&M.appendChild(Y._element)}else{const Y=new q({svg:this._element,type:((H=t.cornersDotOptions)===null||H===void 0?void 0:H.type)||t.dotsOptions.type,window:this._window});for(let Z=0;Z<J.length;Z++)for(let k=0;k<J[Z].length;k++)!((et=J[Z])===null||et===void 0)&&et[k]&&(Y.draw(V+k*a,X+Z*a,a,((ot,rt)=>{var it;return!!(!((it=J[Z+rt])===null||it===void 0)&&it[k+ot])})),Y._element&&M&&M.appendChild(Y._element))}}))}loadImage(){return new Promise(((e,t)=>{var n;const r=this._options;if(!r.image)return t("Image is not defined");if(!((n=r.nodeCanvas)===null||n===void 0)&&n.loadImage)r.nodeCanvas.loadImage(r.image).then((i=>{var a,w;if(this._image=i,this._options.imageOptions.saveAsBlob){const p=(a=r.nodeCanvas)===null||a===void 0?void 0:a.createCanvas(this._image.width,this._image.height);(w=p==null?void 0:p.getContext("2d"))===null||w===void 0||w.drawImage(i,0,0),this._imageUri=p==null?void 0:p.toDataURL()}e()})).catch(t);else{const i=new this._window.Image;typeof r.imageOptions.crossOrigin=="string"&&(i.crossOrigin=r.imageOptions.crossOrigin),this._image=i,i.onload=async()=>{this._options.imageOptions.saveAsBlob&&(this._imageUri=await(async function(a,w){return new Promise((p=>{const _=new w.XMLHttpRequest;_.onload=function(){const m=new w.FileReader;m.onloadend=function(){p(m.result)},m.readAsDataURL(_.response)},_.open("GET",a),_.responseType="blob",_.send()}))})(r.image||"",this._window)),e()},i.src=r.image}}))}async drawImage({width:e,height:t,count:n,dotSize:r}){const i=this._options,a=this._roundSize((i.width-n*r)/2),w=this._roundSize((i.height-n*r)/2),p=a+this._roundSize(i.imageOptions.margin+(n*r-e)/2),_=w+this._roundSize(i.imageOptions.margin+(n*r-t)/2),m=e-2*i.imageOptions.margin,y=t-2*i.imageOptions.margin,v=this._window.document.createElementNS("http://www.w3.org/2000/svg","image");v.setAttribute("href",this._imageUri||""),v.setAttribute("xlink:href",this._imageUri||""),v.setAttribute("x",String(p)),v.setAttribute("y",String(_)),v.setAttribute("width",`${m}px`),v.setAttribute("height",`${y}px`),this._element.appendChild(v)}_createColor({options:e,color:t,additionalRotation:n,x:r,y:i,height:a,width:w,name:p}){const _=w>a?w:a,m=this._window.document.createElementNS("http://www.w3.org/2000/svg","rect");if(m.setAttribute("x",String(r)),m.setAttribute("y",String(i)),m.setAttribute("height",String(a)),m.setAttribute("width",String(w)),m.setAttribute("clip-path",`url('#clip-path-${p}')`),e){let y;if(e.type==="radial")y=this._window.document.createElementNS("http://www.w3.org/2000/svg","radialGradient"),y.setAttribute("id",p),y.setAttribute("gradientUnits","userSpaceOnUse"),y.setAttribute("fx",String(r+w/2)),y.setAttribute("fy",String(i+a/2)),y.setAttribute("cx",String(r+w/2)),y.setAttribute("cy",String(i+a/2)),y.setAttribute("r",String(_/2));else{const v=((e.rotation||0)+n)%(2*Math.PI),C=(v+2*Math.PI)%(2*Math.PI);let P=r+w/2,$=i+a/2,o=r+w/2,h=i+a/2;C>=0&&C<=.25*Math.PI||C>1.75*Math.PI&&C<=2*Math.PI?(P-=w/2,$-=a/2*Math.tan(v),o+=w/2,h+=a/2*Math.tan(v)):C>.25*Math.PI&&C<=.75*Math.PI?($-=a/2,P-=w/2/Math.tan(v),h+=a/2,o+=w/2/Math.tan(v)):C>.75*Math.PI&&C<=1.25*Math.PI?(P+=w/2,$+=a/2*Math.tan(v),o-=w/2,h-=a/2*Math.tan(v)):C>1.25*Math.PI&&C<=1.75*Math.PI&&($+=a/2,P+=w/2/Math.tan(v),h-=a/2,o-=w/2/Math.tan(v)),y=this._window.document.createElementNS("http://www.w3.org/2000/svg","linearGradient"),y.setAttribute("id",p),y.setAttribute("gradientUnits","userSpaceOnUse"),y.setAttribute("x1",String(Math.round(P))),y.setAttribute("y1",String(Math.round($))),y.setAttribute("x2",String(Math.round(o))),y.setAttribute("y2",String(Math.round(h)))}e.colorStops.forEach((({offset:v,color:C})=>{const P=this._window.document.createElementNS("http://www.w3.org/2000/svg","stop");P.setAttribute("offset",100*v+"%"),P.setAttribute("stop-color",C),y.appendChild(P)})),m.setAttribute("fill",`url('#${p}')`),this._defs.appendChild(y)}else t&&m.setAttribute("fill",t);this._element.appendChild(m)}}dt.instanceCount=0;const _t=dt,ct="canvas",yt={};for(let d=0;d<=40;d++)yt[d]=d;const bt={type:ct,shape:"square",width:300,height:300,data:"",margin:0,qrOptions:{typeNumber:yt[0],mode:void 0,errorCorrectionLevel:"Q"},imageOptions:{saveAsBlob:!0,hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:"square",color:"#000",roundSize:!0},backgroundOptions:{round:0,color:"#fff"}};function lt(d){const e=Object.assign({},d);if(!e.colorStops||!e.colorStops.length)throw"Field 'colorStops' is required in gradient";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map((t=>Object.assign(Object.assign({},t),{offset:Number(t.offset)}))),e}function xt(d){const e=Object.assign({},d);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=Object.assign(Object.assign({},e.imageOptions),{hideBackgroundDots:!!e.imageOptions.hideBackgroundDots,imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=Object.assign({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=lt(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=Object.assign({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=lt(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=Object.assign({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=lt(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=Object.assign({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=lt(e.backgroundOptions.gradient))),e}var Ct=E(873),At=E.n(Ct);function gt(d){if(!d)throw new Error("Extension must be defined");d[0]==="."&&(d=d.substring(1));const e={bmp:"image/bmp",gif:"image/gif",ico:"image/vnd.microsoft.icon",jpeg:"image/jpeg",jpg:"image/jpeg",png:"image/png",svg:"image/svg+xml",tif:"image/tiff",tiff:"image/tiff",webp:"image/webp",pdf:"application/pdf"}[d.toLowerCase()];if(!e)throw new Error(`Extension "${d}" is not supported`);return e}class f{constructor(e){e!=null&&e.jsdom?this._window=new e.jsdom("",{resources:"usable"}).window:this._window=window,this._options=e?xt(x(bt,e)):bt,this.update()}static _clearContainer(e){e&&(e.innerHTML="")}_setupSvg(){if(!this._qr)return;const e=new _t(this._options,this._window);this._svg=e.getElement(),this._svgDrawingPromise=e.drawQR(this._qr).then((()=>{var t;this._svg&&((t=this._extension)===null||t===void 0||t.call(this,e.getElement(),this._options))}))}_setupCanvas(){var e,t;this._qr&&(!((e=this._options.nodeCanvas)===null||e===void 0)&&e.createCanvas?(this._nodeCanvas=this._options.nodeCanvas.createCanvas(this._options.width,this._options.height),this._nodeCanvas.width=this._options.width,this._nodeCanvas.height=this._options.height):(this._domCanvas=document.createElement("canvas"),this._domCanvas.width=this._options.width,this._domCanvas.height=this._options.height),this._setupSvg(),this._canvasDrawingPromise=(t=this._svgDrawingPromise)===null||t===void 0?void 0:t.then((()=>{var n;if(!this._svg)return;const r=this._svg,i=new this._window.XMLSerializer().serializeToString(r),a=btoa(i),w=`data:${gt("svg")};base64,${a}`;if(!((n=this._options.nodeCanvas)===null||n===void 0)&&n.loadImage)return this._options.nodeCanvas.loadImage(w).then((p=>{var _,m;p.width=this._options.width,p.height=this._options.height,(m=(_=this._nodeCanvas)===null||_===void 0?void 0:_.getContext("2d"))===null||m===void 0||m.drawImage(p,0,0)}));{const p=new this._window.Image;return new Promise((_=>{p.onload=()=>{var m,y;(y=(m=this._domCanvas)===null||m===void 0?void 0:m.getContext("2d"))===null||y===void 0||y.drawImage(p,0,0),_()},p.src=w}))}})))}async _getElement(e="png"){if(!this._qr)throw"QR code is empty";return e.toLowerCase()==="svg"?(this._svg&&this._svgDrawingPromise||this._setupSvg(),await this._svgDrawingPromise,this._svg):((this._domCanvas||this._nodeCanvas)&&this._canvasDrawingPromise||this._setupCanvas(),await this._canvasDrawingPromise,this._domCanvas||this._nodeCanvas)}update(e){f._clearContainer(this._container),this._options=e?xt(x(this._options,e)):this._options,this._options.data&&(this._qr=At()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||(function(t){switch(!0){case/^[0-9]*$/.test(t):return"Numeric";case/^[0-9A-Z $%*+\-./:]*$/.test(t):return"Alphanumeric";default:return"Byte"}})(this._options.data)),this._qr.make(),this._options.type===ct?this._setupCanvas():this._setupSvg(),this.append(this._container))}append(e){if(e){if(typeof e.appendChild!="function")throw"Container should be a single DOM node";this._options.type===ct?this._domCanvas&&e.appendChild(this._domCanvas):this._svg&&e.appendChild(this._svg),this._container=e}}applyExtension(e){if(!e)throw"Extension function should be defined.";this._extension=e,this.update()}deleteExtension(){this._extension=void 0,this.update()}async getRawData(e="png"){if(!this._qr)throw"QR code is empty";const t=await this._getElement(e),n=gt(e);if(!t)return null;if(e.toLowerCase()==="svg"){const r=`<?xml version="1.0" standalone="no"?>\r
|
|
4
|
+
${new this._window.XMLSerializer().serializeToString(t)}`;return typeof Blob>"u"||this._options.jsdom?Buffer.from(r):new Blob([r],{type:n})}return new Promise((r=>{const i=t;if("toBuffer"in i)if(n==="image/png")r(i.toBuffer(n));else if(n==="image/jpeg")r(i.toBuffer(n));else{if(n!=="application/pdf")throw Error("Unsupported extension");r(i.toBuffer(n))}else"toBlob"in i&&i.toBlob(r,n,1)}))}async download(e){if(!this._qr)throw"QR code is empty";if(typeof Blob>"u")throw"Cannot download in Node.js, call getRawData instead.";let t="png",n="qr";typeof e=="string"?(t=e,console.warn("Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument")):typeof e=="object"&&e!==null&&(e.name&&(n=e.name),e.extension&&(t=e.extension));const r=await this._getElement(t);if(r)if(t.toLowerCase()==="svg"){let i=new XMLSerializer().serializeToString(r);i=`<?xml version="1.0" standalone="no"?>\r
|
|
5
|
+
`+i,D(`data:${gt(t)};charset=utf-8,${encodeURIComponent(i)}`,`${n}.svg`)}else D(r.toDataURL(gt(t)),`${n}.${t}`)}}const l=f})(),Q.default})()))})(vt)),vt.exports}var Ut=Ft();const Qt=Tt(Ut),Ht="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4BAMAAABaqCYtAAAAMFBMVEUKfmT+//8Bd1tSpJAginI7l4OgzcNxl0BjrZyQxbl6uas6ilTr9fOz18/R5+KbojH3wCiYAAAACXBIWXMAAAsTAAALEwEAmpwYAAABYklEQVR42mNgGKZACY+UggsTTqmIaWkZOGQjpmWZMHilKjCwBmHIuWWZKCkwKIVNUVJdhC7HNAMoBTLcdmnnBQydE0AyQAUKna2TFdB1TlVQUnBdZQQ0WSkSQzI2JGJazuJpDkA2pwO6sapps0yslJRTgEwtIwwXKSgpdSiAvak6CZtX3SBBoDQFm6TyVQVQSAU/VsAiyQQMAmAgZnVik+QusF0xbVaIkhY2Y+u3K3SFKClgDXrucu4CHFJAye8bCnBGNnt1QTVOye3/8Uiy19fjMXb79g04Jbm/45ZkUir/jlPONTTYBEg7YJNkEwSCJgaWd9g0JoIkLzHoCmKmTAYtkJxgEtNCLJIuNkCpM2eMlAVlMeRUzwDl5FwclHwEj2AEvTLITKAelouCRgxYJQXPvXsjKKmAQxIELjDglpRxwiMprIBHchEDbklZrMFubGxs0dHRYYC9RIAABYZRQAoAAMPFUF7XIspMAAAAAElFTkSuQmCC";function ht(c,A){Object.entries(A).forEach(([z,B])=>{c.style[z]=B})}function It(c){if(c.startsWith("#"))return c;if(c.startsWith("rgb")){const A=c.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(A){const z=parseInt(A[1]).toString(16).padStart(2,"0"),B=parseInt(A[2]).toString(16).padStart(2,"0"),E=parseInt(A[3]).toString(16).padStart(2,"0");return`#${z}${B}${E}`}}if(c.startsWith("hsl")){const A=c.match(/hsla?\((\d+),\s*(\d+)%,\s*(\d+)%/);if(A){const z=parseInt(A[1])/360,B=parseInt(A[2])/100,E=parseInt(A[3])/100;let Q,S,x;if(B===0)Q=S=x=E;else{const F=(G,W,L)=>(L<0&&(L+=1),L>1&&(L-=1),L<.16666666666666666?G+(W-G)*6*L:L<.5?W:L<.6666666666666666?G+(W-G)*(.6666666666666666-L)*6:G),q=E<.5?E*(1+B):E+B-E*B,U=2*E-q;Q=F(U,q,z+1/3),S=F(U,q,z),x=F(U,q,z-1/3)}const D=F=>Math.round(F*255).toString(16).padStart(2,"0");return`#${D(Q)}${D(S)}${D(x)}`}}return c}function Xt(c,A,z){const B=document.createElement("div");B.className="drop-payment-link",ht(B,{marginTop:"16px",width:`${A}px`});const E=document.createElement("label");E.className="drop-link-label",E.textContent=z,ht(E,{display:"block",fontSize:"14px",fontWeight:"500",color:"hsl(160, 65%, 25%)",marginBottom:"8px",fontFamily:"system-ui, -apple-system, sans-serif"});const Q=document.createElement("div");Q.className="drop-link-input-wrapper",ht(Q,{position:"relative"});const S=document.createElement("input");S.type="text",S.readOnly=!0,S.value=c,S.className="drop-link-input",S.setAttribute("aria-label","Payment link");const x=document.createElement("p");x.className="drop-link-hint",x.textContent="Tap to copy",ht(x,{fontSize:"12px",color:"hsl(160, 30%, 40%)",marginTop:"6px",marginBottom:"0",fontFamily:"system-ui, -apple-system, sans-serif"});const D=async()=>{S.select();try{navigator.clipboard&&navigator.clipboard.writeText?(await navigator.clipboard.writeText(c),F()):document.execCommand("copy")&&F()}catch{document.execCommand("copy"),F()}},F=()=>{const q=x.textContent;x.textContent="✓ Copied to clipboard!",ht(x,{color:"hsl(160, 65%, 35%)",fontWeight:"500"}),setTimeout(()=>{x.textContent=q,ht(x,{color:"hsl(160, 30%, 40%)",fontWeight:"normal"})},2e3)};return S.addEventListener("click",D),S.addEventListener("keydown",q=>{(q.key==="Enter"||q.key===" ")&&(q.preventDefault(),D())}),ht(S,{width:"100%",padding:"12px",fontSize:"14px",fontFamily:"monospace",border:"2px solid hsl(160, 65%, 25%)",borderRadius:"8px",backgroundColor:"hsl(0, 0%, 98%)",color:"hsl(160, 65%, 25%)",boxSizing:"border-box",cursor:"pointer",outline:"none"}),S.addEventListener("focus",()=>{ht(S,{borderColor:"hsl(160, 65%, 35%)",backgroundColor:"hsl(160, 80%, 98%)"})}),S.addEventListener("blur",()=>{ht(S,{borderColor:"hsl(160, 65%, 25%)",backgroundColor:"hsl(0, 0%, 98%)"})}),Q.appendChild(S),B.appendChild(E),B.appendChild(Q),B.appendChild(x),B}async function Et(c,A,z,B={}){const{moduleColor:E="hsl(160, 65%, 25%)",backgroundColor:Q="hsl(0, 0%, 98%)",cornerRadius:S=0,showCopyableLink:x=!0,linkText:D="Or paste this link:"}=B,F=It(E),q=It(Q),U=Math.sqrt(.18),G=Math.round(z*.03),W=new Qt({width:z,height:z,type:"svg",data:A,image:Ht,qrOptions:{errorCorrectionLevel:"H"},dotsOptions:{color:F,type:S>0?"rounded":"square"},backgroundOptions:{color:q},imageOptions:{hideBackgroundDots:!0,imageSize:U,margin:G}}),L=document.createElement("div");L.className="drop-payment-widget",W.append(L);const R=L.querySelector("svg");if(R&&(R.setAttribute("role","img"),R.setAttribute("aria-label","Payment QR Code")),x){const nt=Xt(A,z,D);L.appendChild(nt)}c.innerHTML="",c.appendChild(L)}class tt extends Error{constructor(A){super(A),this.name="ValidationError"}}function Yt(c){Vt(c.clientSecret),c.qrSize!==void 0&&Wt(c.qrSize),c.pollingInterval!==void 0&&Kt(c.pollingInterval),c.qrOptions&&Jt(c.qrOptions),c.linkText!==void 0&&Gt(c.linkText),te(c)}function Vt(c){if(!c||c.trim()==="")throw new tt("clientSecret is required and cannot be empty");if(c.length<10)throw new tt(`clientSecret must be at least 10 characters long. Received length: ${c.length}`);if(!c.startsWith("pi_secret_"))throw new tt("clientSecret must start with 'pi_secret_'. Received: "+c.substring(0,10)+"...")}function Wt(c){if(typeof c!="number"||isNaN(c)||!isFinite(c))throw new tt(`qrSize must be a valid number. Received: ${c}`);if(c<128||c>1024)throw new tt(`QR size must be between 128 and 1024 pixels. Received: ${c}`)}function Kt(c){if(typeof c!="number"||isNaN(c)||!isFinite(c))throw new tt(`pollingInterval must be a valid number. Received: ${c}`);if(c<1e3||c>6e4)throw new tt(`pollingInterval must be between 1000 and 60000 milliseconds. Received: ${c}`)}function Jt(c){c&&(c.cornerRadius!==void 0&&Zt(c.cornerRadius),c.moduleColor!==void 0&&Dt(c.moduleColor,"moduleColor"),c.backgroundColor!==void 0&&Dt(c.backgroundColor,"backgroundColor"))}function Zt(c){if(typeof c!="number"||isNaN(c)||!isFinite(c))throw new tt(`cornerRadius must be a valid number. Received: ${c}`);if(c<0||c>1)throw new tt(`cornerRadius must be between 0 and 1. Received: ${c}`)}function Dt(c,A){if(typeof c!="string")throw new tt(`${A} must be a string. Received: ${typeof c}`);const z=/^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/,B=/^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/,E=/^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(0|1|0?\.\d+)\s*\)$/,Q=/^hsl\(\s*(\d{1,3})\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*\)$/,S=/^hsla\(\s*(\d{1,3})\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*,\s*(0|1|0?\.\d+)\s*\)$/;let x=z.test(c);if(!x){const D=c.match(B);if(D){const[,F,q,U]=D;x=parseInt(F)<=255&&parseInt(q)<=255&&parseInt(U)<=255}}if(!x){const D=c.match(E);if(D){const[,F,q,U]=D;x=parseInt(F)<=255&&parseInt(q)<=255&&parseInt(U)<=255}}if(!x){const D=c.match(Q);if(D){const[,F,q,U]=D;x=parseInt(F)<=360&&parseInt(q)<=100&&parseInt(U)<=100}}if(!x){const D=c.match(S);if(D){const[,F,q,U]=D;x=parseInt(F)<=360&&parseInt(q)<=100&&parseInt(U)<=100}}if(!x)throw new tt(`${A} must be a valid color format (hex, rgb, rgba, hsl, or hsla). Received: ${c}`)}function Gt(c){if(typeof c!="string")throw new tt(`linkText must be a string. Received: ${typeof c}`);if(c.length>100)throw new tt(`linkText must be 100 characters or less. Received length: ${c.length}`)}function te(c){if(c.onStatusChange!==void 0&&typeof c.onStatusChange!="function")throw new tt(`onStatusChange must be a function if provided. Received: ${typeof c.onStatusChange}`);if(c.onError!==void 0&&typeof c.onError!="function")throw new tt(`onError must be a function if provided. Received: ${typeof c.onError}`);if(c.onPoll!==void 0&&typeof c.onPoll!="function")throw new tt(`onPoll must be a function if provided. Received: ${typeof c.onPoll}`)}const ee=256;function ie(c){const A=c.split("?")[0].split("#")[0],z=c.includes("?")?c.substring(c.indexOf("?")):"",B=/\/payment-accounts\/([^/]+)\/payment-intents\/([^/]+)/,E=A.match(B);if(!E)throw new Error("Invalid instanceUrl format. Expected: .../payment-accounts/{id}/payment-intents/{id}");const Q=E[1],S=E[2],x=A.substring(0,A.indexOf("/payment-accounts/"));return{paymentAccountId:Q,paymentIntentId:S,apiBaseUrl:x,queryString:z}}const ne={async create(c){Yt(c);const{clientSecret:A,instanceUrl:z,containerId:B,qrSize:E=ee,pollingInterval:Q,onStatusChange:S,onError:x,onPoll:D}=c,F=document.getElementById(B);if(!F)throw new Error(`Element with id "${B}" not found.`);const{paymentAccountId:q,paymentIntentId:U,apiBaseUrl:G,queryString:W}=ie(z),L=c.apiBaseUrl||G,{qrOptions:R,showCopyableLink:nt,linkText:st}=c;await Et(F,z,E,{...R,showCopyableLink:nt,linkText:st});const K=new Nt({apiBaseUrl:L,paymentAccountId:q,paymentIntentId:U,clientSecret:A,queryString:W,pollingInterval:Q,onStatusChange:J=>{S==null||S(J)},onError:J=>{x==null||x(J)},onPoll:()=>{D==null||D()}});return K.start(),{destroy(){K.stop(),F.innerHTML=""},getStatus(){return K.getStatus()}}}};ut.Drop=ne,ut.ValidationError=tt,ut.renderQR=Et,Object.defineProperty(ut,Symbol.toStringTag,{value:"Module"})}));
|
|
6
|
+
//# sourceMappingURL=drop.umd.cjs.map
|