1function _arrayLikeToArray(t, e) { 2 (null == e || e > t.length) && (e = t.length); 3 for (var o = 0, r = Array(e); o < e; o++) r[o] = t[o]; 4 return r; 5} 6function _arrayWithHoles(t) { 7 if (Array.isArray(t)) return t; 8} 9function _arrayWithoutHoles(t) { 10 if (Array.isArray(t)) return _arrayLikeToArray(t); 11} 12function _defineProperty(t, e, o) { 13 return ( 14 (e = _toPropertyKey(e)) in t 15 ? Object.defineProperty(t, e, { value: o, enumerable: !0, configurable: !0, writable: !0 }) 16 : (t[e] = o), 17 t 18 ); 19} 20function _iterableToArray(t) { 21 if (("undefined" != typeof Symbol && null != t[Symbol.iterator]) || null != t["@@iterator"]) return Array.from(t); 22} 23function _iterableToArrayLimit(t, e) { 24 var o = null == t ? null : ("undefined" != typeof Symbol && t[Symbol.iterator]) || t["@@iterator"]; 25 if (null != o) { 26 var r, 27 i, 28 n, 29 a, 30 s = [], 31 l = !0, 32 u = !1; 33 try { 34 if (((n = (o = o.call(t)).next), 0 !== e)) 35 for (; !(l = (r = n.call(o)).done) && (s.push(r.value), s.length !== e); l = !0); 36 } catch (t) { 37 (u = !0), (i = t); 38 } finally { 39 try { 40 if (!l && null != o.return && ((a = o.return()), Object(a) !== a)) return; 41 } finally { 42 if (u) throw i; 43 } 44 } 45 return s; 46 } 47} 48function _nonIterableRest() { 49 throw new TypeError( 50 "Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.", 51 ); 52} 53function _nonIterableSpread() { 54 throw new TypeError( 55 "Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.", 56 ); 57} 58function ownKeys(e, t) { 59 var o, 60 r = Object.keys(e); 61 return ( 62 Object.getOwnPropertySymbols && 63 ((o = Object.getOwnPropertySymbols(e)), 64 t && 65 (o = o.filter(function (t) { 66 return Object.getOwnPropertyDescriptor(e, t).enumerable; 67 })), 68 r.push.apply(r, o)), 69 r 70 ); 71} 72function _objectSpread2(e) { 73 for (var t = 1; t < arguments.length; t++) { 74 var o = null != arguments[t] ? arguments[t] : {}; 75 t % 2 76 ? ownKeys(Object(o), !0).forEach(function (t) { 77 _defineProperty(e, t, o[t]); 78 }) 79 : Object.getOwnPropertyDescriptors 80 ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(o)) 81 : ownKeys(Object(o)).forEach(function (t) { 82 Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(o, t)); 83 }); 84 } 85 return e; 86} 87function _slicedToArray(t, e) { 88 return _arrayWithHoles(t) || _iterableToArrayLimit(t, e) || _unsupportedIterableToArray(t, e) || _nonIterableRest(); 89} 90function _toConsumableArray(t) { 91 return _arrayWithoutHoles(t) || _iterableToArray(t) || _unsupportedIterableToArray(t) || _nonIterableSpread(); 92} 93function _toPrimitive(t, e) { 94 if ("object" != typeof t || !t) return t; 95 var o = t[Symbol.toPrimitive]; 96 if (void 0 === o) return ("string" === e ? String : Number)(t); 97 o = o.call(t, e || "default"); 98 if ("object" != typeof o) return o; 99 throw new TypeError("@@toPrimitive must return a primitive value."); 100} 101function _toPropertyKey(t) { 102 t = _toPrimitive(t, "string"); 103 return "symbol" == typeof t ? t : t + ""; 104} 105function _typeof(t) { 106 return (_typeof = 107 "function" == typeof Symbol && "symbol" == typeof Symbol.iterator 108 ? function (t) { 109 return typeof t; 110 } 111 : function (t) { 112 return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype 113 ? "symbol" 114 : typeof t; 115 })(t); 116} 117function _unsupportedIterableToArray(t, e) { 118 var o; 119 if (t) 120 return "string" == typeof t 121 ? _arrayLikeToArray(t, e) 122 : "Map" === (o = "Object" === (o = {}.toString.call(t).slice(8, -1)) && t.constructor ? t.constructor.name : o) || 123 "Set" === o 124 ? Array.from(t) 125 : "Arguments" === o || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o) 126 ? _arrayLikeToArray(t, e) 127 : void 0; 128} 129var AF_URL_SCHEME = "(https:\\/\\/)(([^\\.]+).)(.*\\/)(.*)", 130 VALID_AF_URL_PARTS_LENGTH = 5, 131 GOOGLE_CLICK_ID = "gclid", 132 FACEBOOK_CLICK_ID = "fbclid", 133 GBRAID = "gbraid", 134 WBRAID = "wbraid", 135 ASSOCIATED_AD_KEYWORD = "keyword", 136 AF_KEYWORDS = "af_keywords", 137 AF_CUSTOM_EXCLUDE_PARAMS_KEYS = [ 138 "pid", 139 "c", 140 "af_channel", 141 "af_ad", 142 "af_adset", 143 "deep_link_value", 144 "af_sub1", 145 "af_sub2", 146 "af_sub3", 147 "af_sub4", 148 "af_sub5", 149 ], 150 GCLID_EXCLUDE_PARAMS_KEYS = ["pid", "c", "af_channel", "af_ad", "af_adset", "deep_link_value"], 151 LOCAL_STORAGE_VALUES = { SS_WEB_REFERRER: "ss_webReferrer" }, 152 isSkippedURL = function (t) { 153 var e = t.url, 154 o = t.skipKeys, 155 t = t.errorMsg; 156 if (e) { 157 var r = e.toLowerCase(); 158 if (r) 159 return ( 160 (e = o.find(function (t) { 161 return r.includes(t.toLowerCase()); 162 })) && console.debug(t, e), 163 !!e 164 ); 165 } 166 return !1; 167 }, 168 getGoogleClickIdParameters = function (t, e) { 169 var o = e[GOOGLE_CLICK_ID], 170 r = {}; 171 return ( 172 o 173 ? (console.debug("This user comes from Google AdWords"), 174 (r[t] = o), 175 (t = e[ASSOCIATED_AD_KEYWORD]) && 176 (console.debug("There is a keyword associated with the ad"), (r[AF_KEYWORDS] = t))) 177 : console.debug("This user comes from SRN or custom network"), 178 r 179 ); 180 }, 181 stringifyParameters = function () { 182 var o = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}, 183 t = Object.keys(o).reduce(function (t, e) { 184 return o[e] && (t += "&".concat(e, "=").concat(o[e])), t; 185 }, ""); 186 return console.debug("Generated OneLink parameters", t), t; 187 }, 188 getParameterValue = function (e) { 189 var t, 190 o, 191 r, 192 i = 193 1 < arguments.length && void 0 !== arguments[1] 194 ? arguments[1]
195 : { keys: [], overrideValues: {}, defaultValue: "" }; 196 return (null != i && i.keys && Array.isArray(i.keys)) || (null != i && i.defaultValue) 197 ? ((o = i.keys), 198 (r = void 0 === (r = i.overrideValues) ? {} : r), 199 (t = void 0 === (t = i.defaultValue) ? "" : t), 200 ((o = (void 0 === o ? [] : o).find(function (t) { 201 return !!e[t]; 202 })) && 203 (r[(r = e[o])] || r)) || 204 t) 205 : (console.error("Parameter config structure is wrong", i), null); 206 }, 207 isIOS = function (t) { 208 return /iphone|ipad|ipod/i.test(t && t.toLowerCase()); 209 }, 210 isUACHSupported = function () { 211 return ( 212 "object" === ("undefined" == typeof navigator ? "undefined" : _typeof(navigator)) && 213 "userAgentData" in navigator && 214 "getHighEntropyValues" in navigator.userAgentData && 215 !isIOS(navigator && navigator.userAgent) 216 ); 217 }, 218 getQueryParamsAndSaveToLocalStorage = function (t) { 219 t || console.debug("website doesnt exist + ".concat(t)); 220 try { 221 var e = new URL(t), 222 o = new URLSearchParams(e.search), 223 r = Array.from(o).reduce(function (t, e) { 224 var e = _slicedToArray(e, 2), 225 o = e[0], 226 e = e[1]; 227 return _objectSpread2(_objectSpread2({}, t), {}, _defineProperty({}, o, encodeURIComponent(e))); 228 }, {}), 229 i = JSON.parse(localStorage.getItem("ss_incoming_params") || "[]"), 230 n = new Date().getTime() + 72e5, 231 a = _objectSpread2(_objectSpread2({}, r), {}, { af_ss_exp_at: n }); 232 i.unshift(a), localStorage.setItem("ss_incoming_params", JSON.stringify(i)); 233 } catch (t) { 234 console.debug("url isnt valid + ".concat(t)); 235 } 236 }, 237 isValidUrl = function (t) { 238 try { 239 return Boolean(new URL(t)); 240 } catch (t) { 241 return !1; 242 } 243 }, 244 getCurrentUrl = function () { 245 return new URL(window.location.href); 246 }, 247 getReferrerUrl = function () { 248 var t = document.referrer; 249 return t ? new URL(t) : null; 250 }, 251 isSameOrigin = function (t, e) { 252 return t.origin === e.origin; 253 }, 254 saveWebReferrer = function () { 255 var t = getCurrentUrl(), 256 e = getReferrerUrl(); 257 e && isSameOrigin(t, e) 258 ? console.warn("You navigate from the same website") 259 : localStorage.setItem(LOCAL_STORAGE_VALUES.SS_WEB_REFERRER, JSON.stringify(document.referrer)); 260 }, 261 removeExpiredLocalStorageItems = function () { 262 var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : Date.now(), 263 t = JSON.parse(localStorage.getItem("ss_incoming_params") || "[]"); 264 localStorage.setItem( 265 "ss_incoming_params", 266 JSON.stringify( 267 t.filter(function (t) { 268 t = t.af_ss_exp_at; 269 return e < t; 270 }), 271 ), 272 ); 273 }; 274function aggregateValuesFromParameters() { 275 var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}, 276 e = []; 277 return ( 278 Object.values(t).forEach(function (t) { 279 t && 280 t.keys && 281 Array.isArray(t.keys) && 282 t.keys.forEach(function (t) { 283 return e.push(t); 284 }), 285 Array.isArray(t) && 286 t.forEach(function (t) { 287 Array.isArray(null == t ? void 0 : t.keys) && e.push.apply(e, _toConsumableArray(t.keys)); 288 }); 289 }), 290 t.hasOwnProperty("googleClickIdKey") && "string" == typeof t.googleClickIdKey && e.push(GOOGLE_CLICK_ID), 291 e 292 ); 293} 294function getCurrentURLParams(t) { 295 var e = {}; 296 return ( 297 Object.keys(localStorage).includes("ss_incoming_params") 298 ? (e = 299 JSON.parse(localStorage.ss_incoming_params).find(function (e) { 300 return t.some(function (t) { 301 return t in e; 302 }); 303 }) || {}) 304 : console.log("Key 'ss_incoming_params' not found in localStorage."), 305 e 306 ); 307} 308var isOneLinkURLValid = function (t) { 309 var e = null == (e = t || "") ? void 0 : e.toString().match(AF_URL_SCHEME); 310 return ( 311 !(!e || (null == e ? void 0 : e.length) < VALID_AF_URL_PARTS_LENGTH) || 312 (console.error("oneLinkURL is missing or not in the correct format, can't generate URL", t), !1) 313 ); 314 }, 315 isMSValid = function () { 316 var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}; 317 return ( 318 !(null == t || !t.defaultValue) || 319 (console.error("mediaSource is missing (default value was not supplied), can't generate URL", t), !1) 320 ); 321 }, 322 isSkipListsValid = function (t) {
323 var e = t.referrerSkipList, 324 t = t.urlSkipList, 325 t = void 0 === t ? [] : t; 326 return ( 327 !isSkippedURL({ 328 url: document.referrer, 329 skipKeys: void 0 === e ? [] : e, 330 errorMsg: "Generate url is skipped. HTTP referrer contains key:", 331 }) && !isSkippedURL({ url: document.URL, skipKeys: t, errorMsg: "Generate url is skipped. URL contains string:" }) 332 ); 333 }, 334 extractCustomParams = function (t) { 335 var e = t.afCustom, 336 e = void 0 === e ? [] : e, 337 o = t.currentURLParams, 338 r = void 0 === o ? {} : o, 339 i = t.googleClickIdKey, 340 n = {}; 341 return ( 342 Array.isArray(e) && 343 e.forEach(function (e) { 344 var t; 345 null != e && 346 e.paramKey && 347 ((t = AF_CUSTOM_EXCLUDE_PARAMS_KEYS.find(function (t) { 348 return t === (null == e ? void 0 : e.paramKey); 349 })), 350 (null == e ? void 0 : e.paramKey) === i || t 351 ? console.debug("Custom parameter ParamKey can't override Google-Click-Id or AF Parameters keys", e) 352 : (n[e.paramKey] = getParameterValue(r, e))); 353 }), 354 n 355 ); 356 }, 357 validateAndMappedParams = function () { 358 var t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : {}, 359 o = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}, 360 e = 2 < arguments.length && void 0 !== arguments[2] && arguments[2], 361 r = t.mediaSource, 362 i = t.campaign, 363 n = t.channel, 364 a = t.ad, 365 s = t.adSet, 366 l = t.deepLinkValue, 367 u = t.afSub1, 368 h = t.afSub2, 369 d = t.afSub3, 370 c = t.afSub4, 371 g = t.afSub5, 372 p = t.afCustom, 373 f = t.googleClickIdKey, 374 m = {}; 375 if (r) { 376 t = getParameterValue(o, r); 377 if (!t) 378 return ( 379 console.error( 380 "mediaSource was not found in the URL and default value was not supplied, can't generate URL", 381 r, 382 ), 383 null 384 ); 385 m[e ? "af_media_source" : "pid"] = t; 386 } 387 if (i) { 388 r = getParameterValue(o, i); 389 if (!r && e) 390 return ( 391 console.error("campaign was not found in the URL and default value was not supplied, can't generate URL", i), 392 null 393 ); 394 e ? ((m.af_campaign = r), (m.af_campaign_id = r)) : (m.c = r); 395 } 396 n && (m.af_channel = getParameterValue(o, n)), 397 a && (m.af_ad = getParameterValue(o, a)), 398 s && (m.af_adset = getParameterValue(o, s)), 399 l && (m.deep_link_value = getParameterValue(o, l)); 400 [u, h, d, c, g].forEach(function (t, e) { 401 t && (m["af_sub".concat(e + 1)] = getParameterValue(o, t)); 402 }), 403 f && 404 (GCLID_EXCLUDE_PARAMS_KEYS.find(function (t) { 405 return t === f; 406 }) 407 ? console.debug("Google Click Id ParamKey can't override AF Parameters keys", f) 408 : ((_ = getGoogleClickIdParameters(f, o)), 409 Object.keys(_).forEach(function (t) { 410 m[t] = _[t]; 411 }))); 412 var _, 413 t = extractCustomParams({ afCustom: p, currentURLParams: o, googleClickIdKey: f }); 414 return _objectSpread2(_objectSpread2({}, m), t); 415 }, 416 isPlatformValid = function (t) { 417 return t 418 ? !![ 419 "smartcast", 420 "tizen", 421 "roku", 422 "webos", 423 "vidaa", 424 "playstation", 425 "android", 426 "ios", 427 "steam", 428 "quest", 429 "battlenet", 430 "epic", 431 "switch", 432 "xbox", 433 "nativepc", 434 ].includes(t.toLowerCase()) || (console.error("platform need to be part of the known platforms supoorted"), !1) 435 : (console.error("platform is missing , can't generate URL", t), !1); 436 }; 437function getUserAgentData() { 438 return new Promise(function (e) { 439 isUACHSupported() 440 ? navigator.userAgentData 441 .getHighEntropyValues(["model", "platformVersion"]) 442 .then(function (t) { 443 e({ model: t.model, platformVersion: t.platformVersion }); 444 }) 445 .catch(function () { 446 e(); 447 }) 448 : e(); 449 }); 450} 451var createImpressionsLink = function (r) { 452 return r 453 ? new Promise(function (o) { 454 getUserAgentData() 455 .then(function (t) { 456 var e = new URL(r); 457 (e.hostname = "impressions.onelink.me"), 458 t && 459 (e.searchParams.append("af_ch_model", encodeURIComponent(t.model)), 460 e.searchParams.append("af_ch_os_version", encodeURIComponent(t.platformVersion))), 461 o(e.href); 462 }) 463 .catch(function () { 464 o(); 465 }); 466 })
467 : (console.debug("ClickURL is not valid"), null); 468}; 469function getHexColorAfterValidation(t) { 470 return /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(t) ? t : "#000"; 471} 472function getParameterValueFromURL(t, e) { 473 return new URLSearchParams(t).get(e); 474} 475function updateFinalUrlWithForwardParameters(t, e, r) { 476 return e.reduce(function (t, e) { 477 var o = getParameterValueFromURL(r, e); 478 return o 479 ? (console.debug("The URL contains forwarding parameter ".concat(e, ".")), 480 "".concat(t, "&").concat(e, "=").concat(encodeURIComponent(o))) 481 : t; 482 }, t); 483} 484var processTrackingParameters = function (t) { 485 t = updateFinalUrlWithForwardParameters( 486 t, 487 [GOOGLE_CLICK_ID, FACEBOOK_CLICK_ID, GBRAID, WBRAID], 488 window.location.search, 489 ); 490 var e = getParameterValueFromURL(window.location.search, GOOGLE_CLICK_ID), 491 o = getParameterValueFromURL(window.location.search, GBRAID), 492 r = getParameterValueFromURL(window.location.search, WBRAID); 493 return (t = 494 (e || o || r) && 495 ((e = getParameterValueFromURL(window.location.search, ASSOCIATED_AD_KEYWORD)), 496 (o = getParameterValueFromURL(t, AF_KEYWORDS)), 497 e) && 498 !o 499 ? "".concat(t, "&").concat(AF_KEYWORDS, "=").concat(e) 500 : t); 501}; 502function QRCode() { 503 var h, 504 t, 505 e = 506 "object" == ("undefined" == typeof global ? "undefined" : _typeof(global)) && 507 global && 508 global.Object === Object && 509 global, 510 o = 511 "object" == ("undefined" == typeof self ? "undefined" : _typeof(self)) && self && self.Object === Object && self, 512 r = e || o || Function("return this")(), 513 e = 514 "object" == ("undefined" == typeof exports ? "undefined" : _typeof(exports)) && 515 exports && 516 !exports.nodeType && 517 exports, 518 o = 519 e && 520 "object" == ("undefined" == typeof module ? "undefined" : _typeof(module)) && 521 module && 522 !module.nodeType && 523 module, 524 i = r.QRCode; 525 function n(t, e, o) { 526 (this.mode = s.MODE_8BIT_BYTE), (this.data = t), (this.parsedData = []); 527 for (var r = 0, i = this.data.length; r < i; r++) { 528 var n = [], 529 a = this.data.charCodeAt(r); 530 e 531 ? (n[0] = a) 532 : 65536 < a 533 ? ((n[0] = 240 | ((1835008 & a) >>> 18)), 534 (n[1] = 128 | ((258048 & a) >>> 12)), 535 (n[2] = 128 | ((4032 & a) >>> 6)), 536 (n[3] = 128 | (63 & a))) 537 : 2048 < a 538 ? ((n[0] = 224 | ((61440 & a) >>> 12)), (n[1] = 128 | ((4032 & a) >>> 6)), (n[2] = 128 | (63 & a))) 539 : 128 < a 540 ? ((n[0] = 192 | ((1984 & a) >>> 6)), (n[1] = 128 | (63 & a))) 541 : (n[0] = a), 542 this.parsedData.push(n); 543 } 544 (this.parsedData = Array.prototype.concat.apply([], this.parsedData)), 545 o || 546 this.parsedData.length == this.data.length || 547 (this.parsedData.unshift(191), this.parsedData.unshift(187), this.parsedData.unshift(239)); 548 } 549 function l(t, e) { 550 (this.typeNumber = t), 551 (this.errorCorrectLevel = e), 552 (this.modules = null), 553 (this.moduleCount = 0), 554 (this.dataCache = null), 555 (this.dataList = []); 556 } 557 (n.prototype = { 558 getLength: function (t) { 559 return this.parsedData.length; 560 }, 561 write: function (t) { 562 for (var e = 0, o = this.parsedData.length; e < o; e++) t.put(this.parsedData[e], 8); 563 }, 564 }), 565 (l.prototype = { 566 addData: function (t, e, o) { 567 t = new n(t, e, o); 568 this.dataList.push(t), (this.dataCache = null); 569 }, 570 isDark: function (t, e) { 571 if (t < 0 || this.moduleCount <= t || e < 0 || this.moduleCount <= e) throw new Error(t + "," + e); 572 return this.modules[t][e][0]; 573 }, 574 getEye: function (t, e) { 575 if (t < 0 || this.moduleCount <= t || e < 0 || this.moduleCount <= e) throw new Error(t + "," + e); 576 t = this.modules[t][e]; 577 return t[1] 578 ? ((e = "P" + t[1] + "_" + t[2]), "A" == t[2] && (e = "A" + t[1]), { isDark: t[0], type: e }) 579 : null; 580 }, 581 getModuleCount: function () { 582 return this.moduleCount; 583 }, 584 make: function () { 585 this.makeImpl(!1, this.getBestMaskPattern()); 586 }, 587 makeImpl: function (t, e) { 588 (this.moduleCount = 4 * this.typeNumber + 17), (this.modules = new Array(this.moduleCount)); 589 for (var o = 0; o < this.moduleCount; o++) { 590 this.modules[o] = new Array(this.moduleCount); 591 for (var r = 0; r < this.moduleCount; r++) this.modules[o][r] = []; 592 } 593 this.setupPositionProbePattern(0, 0, "TL"), 594 this.setupPositionProbePattern(this.moduleCount - 7, 0, "BL"), 595 this.setupPositionProbePattern(0, this.moduleCount - 7, "TR"), 596 this.setupPositionAdjustPattern("A"), 597 this.setupTimingPattern(), 598 this.setupTypeInfo(t, e), 599 7 <= this.typeNumber && this.setupTypeNumber(t), 600 null == this.dataCache && 601 (this.dataCache = l.createData(this.typeNumber, this.errorCorrectLevel, this.dataList)), 602 this.mapData(this.dataCache, e); 603 }, 604 setupPositionProbePattern: function (t, e, o) { 605 for (var r = -1; r <= 7; r++) 606 if (!(t + r <= -1 || this.moduleCount <= t + r))
607 for (var i = -1; i <= 7; i++) 608 e + i <= -1 || 609 this.moduleCount <= e + i || 610 ((0 <= r && r <= 6 && (0 == i || 6 == i)) || 611 (0 <= i && i <= 6 && (0 == r || 6 == r)) || 612 (2 <= r && r <= 4 && 2 <= i && i <= 4) 613 ? ((this.modules[t + r][e + i][0] = !0), 614 (this.modules[t + r][e + i][2] = o), 615 (this.modules[t + r][e + i][1] = -0 == r || -0 == i || 6 == r || 6 == i ? "O" : "I")) 616 : (this.modules[t + r][e + i][0] = !1)); 617 }, 618 getBestMaskPattern: function () { 619 for (var t = 0, e = 0, o = 0; o < 8; o++) { 620 this.makeImpl(!0, o); 621 var r = v.getLostPoint(this); 622 (0 == o || r < t) && ((t = r), (e = o)); 623 } 624 return e; 625 }, 626 createMovieClip: function (t, e, o) { 627 var r = t.createEmptyMovieClip(e, o); 628 this.make(); 629 for (var i = 0; i < this.modules.length; i++) 630 for (var n = +i, a = 0; a < this.modules[i].length; a++) { 631 var s = +a; 632 this.modules[i][a][0] && 633 (r.beginFill(0, 100), 634 r.moveTo(s, n), 635 r.lineTo(1 + s, n), 636 r.lineTo(1 + s, 1 + n), 637 r.lineTo(s, 1 + n), 638 r.endFill()); 639 } 640 return r; 641 }, 642 setupTimingPattern: function () { 643 for (var t = 8; t < this.moduleCount - 8; t++) 644 null == this.modules[t][6][0] && (this.modules[t][6][0] = t % 2 == 0); 645 for (var e = 8; e < this.moduleCount - 8; e++) 646 null == this.modules[6][e][0] && (this.modules[6][e][0] = e % 2 == 0); 647 }, 648 setupPositionAdjustPattern: function (t) { 649 for (var e = v.getPatternPosition(this.typeNumber), o = 0; o < e.length; o++) 650 for (var r = 0; r < e.length; r++) { 651 var i = e[o], 652 n = e[r]; 653 if (null == this.modules[i][n][0]) 654 for (var a = -2; a <= 2; a++) 655 for (var s = -2; s <= 2; s++) 656 -2 == a || 2 == a || -2 == s || 2 == s || (0 == a && 0 == s) 657 ? ((this.modules[i + a][n + s][0] = !0), 658 (this.modules[i + a][n + s][2] = t), 659 (this.modules[i + a][n + s][1] = -2 == a || -2 == s || 2 == a || 2 == s ? "O" : "I")) 660 : (this.modules[i + a][n + s][0] = !1); 661 } 662 }, 663 setupTypeNumber: function (t) { 664 for (var e = v.getBCHTypeNumber(this.typeNumber), o = 0; o < 18; o++) { 665 var r = !t && 1 == ((e >> o) & 1); 666 this.modules[Math.floor(o / 3)][(o % 3) + this.moduleCount - 8 - 3][0] = r; 667 } 668 for (o = 0; o < 18; o++) { 669 r = !t && 1 == ((e >> o) & 1); 670 this.modules[(o % 3) + this.moduleCount - 8 - 3][Math.floor(o / 3)][0] = r; 671 } 672 }, 673 setupTypeInfo: function (t, e) { 674 for (var e = (this.errorCorrectLevel << 3) | e, o = v.getBCHTypeInfo(e), r = 0; r < 15; r++) { 675 var i = !t && 1 == ((o >> r) & 1); 676 r < 6 677 ? (this.modules[r][8][0] = i) 678 : r < 8 679 ? (this.modules[r + 1][8][0] = i) 680 : (this.modules[this.moduleCount - 15 + r][8][0] = i); 681 } 682 for (r = 0; r < 15; r++) { 683 i = !t && 1 == ((o >> r) & 1); 684 r < 8 685 ? (this.modules[8][this.moduleCount - r - 1][0] = i) 686 : r < 9 687 ? (this.modules[8][15 - r - 1 + 1][0] = i) 688 : (this.modules[8][15 - r - 1][0] = i); 689 } 690 this.modules[this.moduleCount - 8][8][0] = !t; 691 }, 692 mapData: function (t, e) { 693 for (var o = -1, r = this.moduleCount - 1, i = 7, n = 0, a = this.moduleCount - 1; 0 < a; a -= 2) 694 for (6 == a && a--; ; ) { 695 for (var s, l, u = 0; u < 2; u++) 696 null == this.modules[r][a - u][0] && 697 ((s = !1), 698 n < t.length && (s = 1 == ((t[n] >>> i) & 1)), 699 (l = v.getMask(e, r, a - u)), 700 (this.modules[r][a - u][0] = s = l ? !s : s), 701 -1 == --i) && 702 (n++, (i = 7)); 703 if ((r += o) < 0 || this.moduleCount <= r) { 704 (r -= o), (o = -o); 705 break; 706 } 707 } 708 }, 709 }), 710 (l.PAD0 = 236), 711 (l.PAD1 = 17), 712 (l.createData = function (t, e, o) { 713 for (var r = C.getRSBlocks(t, e), i = new A(), n = 0; n < o.length; n++) { 714 var a = o[n]; 715 i.put(a.mode, 4), i.put(a.getLength(), v.getLengthInBits(a.mode, t)), a.write(i); 716 } 717 for (var s = 0, n = 0; n < r.length; n++) s += r[n].dataCount; 718 if (i.getLengthInBits() > 8 * s) 719 throw new Error("code length overflow. (" + i.getLengthInBits() + ">" + 8 * s + ")");
720 for (i.getLengthInBits() + 4 <= 8 * s && i.put(0, 4); i.getLengthInBits() % 8 != 0; ) i.putBit(!1); 721 for (;;) { 722 if (i.getLengthInBits() >= 8 * s) break; 723 if ((i.put(l.PAD0, 8), i.getLengthInBits() >= 8 * s)) break; 724 i.put(l.PAD1, 8); 725 } 726 return l.createBytes(i, r); 727 }), 728 (l.createBytes = function (t, e) { 729 for (var o = 0, r = 0, i = 0, n = new Array(e.length), a = new Array(e.length), s = 0; s < e.length; s++) { 730 var l = e[s].dataCount, 731 u = e[s].totalCount - l, 732 r = Math.max(r, l), 733 i = Math.max(i, u); 734 n[s] = new Array(l); 735 for (var h = 0; h < n[s].length; h++) n[s][h] = 255 & t.buffer[h + o]; 736 o += l; 737 var l = v.getErrorCorrectPolynomial(u), 738 d = new b(n[s], l.getLength() - 1).mod(l); 739 a[s] = new Array(l.getLength() - 1); 740 for (h = 0; h < a[s].length; h++) { 741 var c = h + d.getLength() - a[s].length; 742 a[s][h] = 0 <= c ? d.get(c) : 0; 743 } 744 } 745 for (var g = 0, h = 0; h < e.length; h++) g += e[h].totalCount; 746 for (var p = new Array(g), f = 0, h = 0; h < r; h++) 747 for (s = 0; s < e.length; s++) h < n[s].length && (p[f++] = n[s][h]); 748 for (h = 0; h < i; h++) for (s = 0; s < e.length; s++) h < a[s].length && (p[f++] = a[s][h]); 749 return p; 750 }); 751 for ( 752 var s = { MODE_NUMBER: 1, MODE_ALPHA_NUM: 2, MODE_8BIT_BYTE: 4, MODE_KANJI: 8 }, 753 u = { L: 1, M: 0, Q: 3, H: 2 }, 754 a = 0, 755 d = 1, 756 c = 2, 757 g = 3, 758 p = 4, 759 f = 5, 760 m = 6, 761 _ = 7, 762 v = { 763 PATTERN_POSITION_TABLE: [ 764 [], 765 [6, 18], 766 [6, 22], 767 [6, 26], 768 [6, 30], 769 [6, 34], 770 [6, 22, 38], 771 [6, 24, 42], 772 [6, 26, 46], 773 [6, 28, 50], 774 [6, 30, 54], 775 [6, 32, 58], 776 [6, 34, 62], 777 [6, 26, 46, 66], 778 [6, 26, 48, 70], 779 [6, 26, 50, 74], 780 [6, 30, 54, 78], 781 [6, 30, 56, 82], 782 [6, 30, 58, 86], 783 [6, 34, 62, 90], 784 [6, 28, 50, 72, 94], 785 [6, 26, 50, 74, 98], 786 [6, 30, 54, 78, 102], 787 [6, 28, 54, 80, 106], 788 [6, 32, 58, 84, 110], 789 [6, 30, 58, 86, 114], 790 [6, 34, 62, 90, 118], 791 [6, 26, 50, 74, 98, 122], 792 [6, 30, 54, 78, 102, 126], 793 [6, 26, 52, 78, 104, 130], 794 [6, 30, 56, 82, 108, 134], 795 [6, 34, 60, 86, 112, 138], 796 [6, 30, 58, 86, 114, 142], 797 [6, 34, 62, 90, 118, 146], 798 [6, 30, 54, 78, 102, 126, 150], 799 [6, 24, 50, 76, 102, 128, 154], 800 [6, 28, 54, 80, 106, 132, 158], 801 [6, 32, 58, 84, 110, 136, 162], 802 [6, 26, 54, 82, 110, 138, 166], 803 [6, 30, 58, 86, 114, 142, 170], 804 ], 805 G15: 1335, 806 G18: 7973, 807 G15_MASK: 21522, 808 getBCHTypeInfo: function (t) { 809 for (var e = t << 10; 0 <= v.getBCHDigit(e) - v.getBCHDigit(v.G15); ) 810 e ^= v.G15 << (v.getBCHDigit(e) - v.getBCHDigit(v.G15)); 811 return ((t << 10) | e) ^ v.G15_MASK; 812 }, 813 getBCHTypeNumber: function (t) { 814 for (var e = t << 12; 0 <= v.getBCHDigit(e) - v.getBCHDigit(v.G18); ) 815 e ^= v.G18 << (v.getBCHDigit(e) - v.getBCHDigit(v.G18)); 816 return (t << 12) | e; 817 }, 818 getBCHDigit: function (t) { 819 for (var e = 0; 0 != t; ) e++, (t >>>= 1); 820 return e; 821 }, 822 getPatternPosition: function (t) { 823 return v.PATTERN_POSITION_TABLE[t - 1]; 824 }, 825 getMask: function (t, e, o) { 826 switch (t) { 827 case a: 828 return (e + o) % 2 == 0; 829 case d: 830 return e % 2 == 0; 831 case c: 832 return o % 3 == 0; 833 case g: 834 return (e + o) % 3 == 0; 835 case p: 836 return (Math.floor(e / 2) + Math.floor(o / 3)) % 2 == 0; 837 case f: 838 return ((e * o) % 2) + ((e * o) % 3) == 0; 839 case m: 840 return (((e * o) % 2) + ((e * o) % 3)) % 2 == 0; 841 case _: 842 return (((e * o) % 3) + ((e + o) % 2)) % 2 == 0; 843 default: 844 throw new Error("bad maskPattern:" + t); 845 } 846 }, 847 getErrorCorrectPolynomial: function (t) { 848 for (var e = new b([1], 0), o = 0; o < t; o++) e = e.multiply(new b([1, y.gexp(o)], 0)); 849 return e; 850 }, 851 getLengthInBits: function (t, e) { 852 if (1 <= e && e < 10) 853 switch (t) { 854 case s.MODE_NUMBER: 855 return 10; 856 case s.MODE_ALPHA_NUM: 857 return 9; 858 case s.MODE_8BIT_BYTE: 859 case s.MODE_KANJI: 860 return 8; 861 default: 862 throw new Error("mode:" + t); 863 } 864 else if (e < 27) 865 switch (t) { 866 case s.MODE_NUMBER: 867 return 12; 868 case s.MODE_ALPHA_NUM: 869 return 11; 870 case s.MODE_8BIT_BYTE: 871 return 16; 872 case s.MODE_KANJI: 873 return 10; 874 default: 875 throw new Error("mode:" + t); 876 } 877 else { 878 if (!(e < 41)) throw new Error("type:" + e); 879 switch (t) { 880 case s.MODE_NUMBER: 881 return 14; 882 case s.MODE_ALPHA_NUM: 883 return 13; 884 case s.MODE_8BIT_BYTE: 885 return 16; 886 case s.MODE_KANJI: 887 return 12; 888 default: 889 throw new Error("mode:" + t); 890 } 891 } 892 }, 893 getLostPoint: function (t) { 894 for (var e = t.getModuleCount(), o = 0, r = 0; r < e; r++) 895 for (var i = 0; i < e; i++) {
896 for (var n = 0, a = t.isDark(r, i), s = -1; s <= 1; s++) 897 if (!(r + s < 0 || e <= r + s)) 898 for (var l = -1; l <= 1; l++) 899 i + l < 0 || e <= i + l || (0 == s && 0 == l) || (a == t.isDark(r + s, i + l) && n++); 900 5 < n && (o += 3 + n - 5); 901 } 902 for (r = 0; r < e - 1; r++) 903 for (i = 0; i < e - 1; i++) { 904 var u = 0; 905 t.isDark(r, i) && u++, 906 t.isDark(r + 1, i) && u++, 907 t.isDark(r, i + 1) && u++, 908 t.isDark(r + 1, i + 1) && u++, 909 (0 != u && 4 != u) || (o += 3); 910 } 911 for (r = 0; r < e; r++) 912 for (i = 0; i < e - 6; i++) 913 t.isDark(r, i) && 914 !t.isDark(r, i + 1) && 915 t.isDark(r, i + 2) && 916 t.isDark(r, i + 3) && 917 t.isDark(r, i + 4) && 918 !t.isDark(r, i + 5) && 919 t.isDark(r, i + 6) && 920 (o += 40); 921 for (i = 0; i < e; i++) 922 for (r = 0; r < e - 6; r++) 923 t.isDark(r, i) && 924 !t.isDark(r + 1, i) && 925 t.isDark(r + 2, i) && 926 t.isDark(r + 3, i) && 927 t.isDark(r + 4, i) && 928 !t.isDark(r + 5, i) && 929 t.isDark(r + 6, i) && 930 (o += 40); 931 for (var h = 0, i = 0; i < e; i++) for (r = 0; r < e; r++) t.isDark(r, i) && h++; 932 return (o += 10 * (Math.abs((100 * h) / e / e - 50) / 5)); 933 }, 934 }, 935 y = { 936 glog: function (t) { 937 if (t < 1) throw new Error("glog(" + t + ")"); 938 return y.LOG_TABLE[t]; 939 }, 940 gexp: function (t) { 941 for (; t < 0; ) t += 255; 942 for (; 256 <= t; ) t -= 255; 943 return y.EXP_TABLE[t]; 944 }, 945 EXP_TABLE: new Array(256), 946 LOG_TABLE: new Array(256), 947 }, 948 S = 0; 949 S < 8; 950 S++ 951 ) 952 y.EXP_TABLE[S] = 1 << S; 953 for (S = 8; S < 256; S++) 954 y.EXP_TABLE[S] = y.EXP_TABLE[S - 4] ^ y.EXP_TABLE[S - 5] ^ y.EXP_TABLE[S - 6] ^ y.EXP_TABLE[S - 8]; 955 for (S = 0; S < 255; S++) y.LOG_TABLE[y.EXP_TABLE[S]] = S; 956 function b(t, e) { 957 if (t.length == h) throw new Error(t.length + "/" + e); 958 for (var o = 0; o < t.length && 0 == t[o]; ) o++; 959 this.num = new Array(t.length - o + e); 960 for (var r = 0; r < t.length - o; r++) this.num[r] = t[r + o]; 961 } 962 function C(t, e) { 963 (this.totalCount = t), (this.dataCount = e); 964 } 965 function A() { 966 (this.buffer = []), (this.length = 0); 967 } 968 (b.prototype = { 969 get: function (t) { 970 return this.num[t]; 971 }, 972 getLength: function () { 973 return this.num.length; 974 }, 975 multiply: function (t) { 976 for (var e = new Array(this.getLength() + t.getLength() - 1), o = 0; o < this.getLength(); o++) 977 for (var r = 0; r < t.getLength(); r++) e[o + r] ^= y.gexp(y.glog(this.get(o)) + y.glog(t.get(r))); 978 return new b(e, 0); 979 }, 980 mod: function (t) { 981 if (this.getLength() - t.getLength() < 0) return this; 982 for ( 983 var e = y.glog(this.get(0)) - y.glog(t.get(0)), o = new Array(this.getLength()), r = 0; 984 r < this.getLength(); 985 r++ 986 ) 987 o[r] = this.get(r); 988 for (r = 0; r < t.getLength(); r++) o[r] ^= y.gexp(y.glog(t.get(r)) + e); 989 return new b(o, 0).mod(t); 990 }, 991 }), 992 (C.RS_BLOCK_TABLE = [ 993 [1, 26, 19], 994 [1, 26, 16], 995 [1, 26, 13], 996 [1, 26, 9], 997 [1, 44, 34], 998 [1, 44, 28], 999 [1, 44, 22], 1000 [1, 44, 16], 1001 [1, 70, 55], 1002 [1, 70, 44], 1003 [2, 35, 17], 1004 [2, 35, 13], 1005 [1, 100, 80], 1006 [2, 50, 32], 1007 [2, 50, 24], 1008 [4, 25, 9], 1009 [1, 134, 108], 1010 [2, 67, 43], 1011 [2, 33, 15, 2, 34, 16], 1012 [2, 33, 11, 2, 34, 12], 1013 [2, 86, 68], 1014 [4, 43, 27], 1015 [4, 43, 19], 1016 [4, 43, 15], 1017 [2, 98, 78], 1018 [4, 49, 31], 1019 [2, 32, 14, 4, 33, 15], 1020 [4, 39, 13, 1, 40, 14], 1021 [2, 121, 97], 1022 [2, 60, 38, 2, 61, 39], 1023 [4, 40, 18, 2, 41, 19], 1024 [4, 40, 14, 2, 41, 15], 1025 [2, 146, 116], 1026 [3, 58, 36, 2, 59, 37], 1027 [4, 36, 16, 4, 37, 17], 1028 [4, 36, 12, 4, 37, 13], 1029 [2, 86, 68, 2, 87, 69], 1030 [4, 69, 43, 1, 70, 44], 1031 [6, 43, 19, 2, 44, 20], 1032 [6, 43, 15, 2, 44, 16], 1033 [4, 101, 81], 1034 [1, 80, 50, 4, 81, 51], 1035 [4, 50, 22, 4, 51, 23], 1036 [3, 36, 12, 8, 37, 13], 1037 [2, 116, 92, 2, 117, 93], 1038 [6, 58, 36, 2, 59, 37], 1039 [4, 46, 20, 6, 47, 21], 1040 [7, 42, 14, 4, 43, 15], 1041 [4, 133, 107], 1042 [8, 59, 37, 1, 60, 38], 1043 [8, 44, 20, 4, 45, 21], 1044 [12, 33, 11, 4, 34, 12], 1045 [3, 145, 115, 1, 146, 116], 1046 [4, 64, 40, 5, 65, 41], 1047 [11, 36, 16, 5, 37, 17], 1048 [11, 36, 12, 5, 37, 13], 1049 [5, 109, 87, 1, 110, 88], 1050 [5, 65, 41, 5, 66, 42], 1051 [5, 54, 24, 7, 55, 25], 1052 [11, 36, 12, 7, 37, 13], 1053 [5, 122, 98, 1, 123, 99], 1054 [7, 73, 45, 3, 74, 46], 1055 [15, 43, 19, 2, 44, 20], 1056 [3, 45, 15, 13, 46, 16], 1057 [1, 135, 107, 5, 136, 108], 1058 [10, 74, 46, 1, 75, 47], 1059 [1, 50, 22, 15, 51, 23], 1060 [2, 42, 14, 17, 43, 15], 1061 [5, 150, 120, 1, 151, 121], 1062 [9, 69, 43, 4, 70, 44], 1063 [17, 50, 22, 1, 51, 23], 1064 [2, 42, 14, 19, 43, 15], 1065 [3, 141, 113, 4, 142, 114], 1066 [3, 70, 44, 11, 71, 45], 1067 [17, 47, 21, 4, 48, 22], 1068 [9, 39, 13, 16, 40, 14], 1069 [3, 135, 107, 5, 136, 108], 1070 [3, 67, 41, 13, 68, 42], 1071 [15, 54, 24, 5, 55, 25], 1072 [15, 43, 15, 10, 44, 16], 1073 [4, 144, 116, 4, 145, 117], 1074 [17, 68, 42], 1075 [17, 50, 22, 6, 51, 23], 1076 [19, 46, 16, 6, 47, 17], 1077 [2, 139, 111, 7, 140, 112], 1078 [17, 74, 46], 1079 [7, 54, 24, 16, 55, 25], 1080 [34, 37, 13], 1081 [4, 151, 121, 5, 152, 122], 1082 [4, 75, 47, 14, 76, 48], 1083 [11, 54, 24, 14, 55, 25], 1084 [16, 45, 15, 14, 46, 16], 1085 [6, 147, 117, 4, 148, 118], 1086 [6, 73, 45, 14, 74, 46], 1087 [11, 54, 24, 16, 55, 25], 1088 [30, 46, 16, 2, 47, 17], 1089 [8, 132, 106, 4, 133, 107], 1090 [8, 75, 47, 13, 76, 48], 1091 [7, 54, 24, 22, 55, 25], 1092 [22, 45, 15, 13, 46, 16], 1093 [10, 142, 114, 2, 143, 115], 1094 [19, 74, 46, 4, 75, 47], 1095 [28, 50, 22, 6, 51, 23], 1096 [33, 46, 16, 4, 47, 17], 1097 [8, 152, 122, 4, 153, 123], 1098 [22, 73, 45, 3, 74, 46], 1099 [8, 53, 23, 26, 54, 24],
1100 [12, 45, 15, 28, 46, 16], 1101 [3, 147, 117, 10, 148, 118], 1102 [3, 73, 45, 23, 74, 46], 1103 [4, 54, 24, 31, 55, 25], 1104 [11, 45, 15, 31, 46, 16], 1105 [7, 146, 116, 7, 147, 117], 1106 [21, 73, 45, 7, 74, 46], 1107 [1, 53, 23, 37, 54, 24], 1108 [19, 45, 15, 26, 46, 16], 1109 [5, 145, 115, 10, 146, 116], 1110 [19, 75, 47, 10, 76, 48], 1111 [15, 54, 24, 25, 55, 25], 1112 [23, 45, 15, 25, 46, 16], 1113 [13, 145, 115, 3, 146, 116], 1114 [2, 74, 46, 29, 75, 47], 1115 [42, 54, 24, 1, 55, 25], 1116 [23, 45, 15, 28, 46, 16], 1117 [17, 145, 115], 1118 [10, 74, 46, 23, 75, 47], 1119 [10, 54, 24, 35, 55, 25], 1120 [19, 45, 15, 35, 46, 16], 1121 [17, 145, 115, 1, 146, 116], 1122 [14, 74, 46, 21, 75, 47], 1123 [29, 54, 24, 19, 55, 25], 1124 [11, 45, 15, 46, 46, 16], 1125 [13, 145, 115, 6, 146, 116], 1126 [14, 74, 46, 23, 75, 47], 1127 [44, 54, 24, 7, 55, 25], 1128 [59, 46, 16, 1, 47, 17], 1129 [12, 151, 121, 7, 152, 122], 1130 [12, 75, 47, 26, 76, 48], 1131 [39, 54, 24, 14, 55, 25], 1132 [22, 45, 15, 41, 46, 16], 1133 [6, 151, 121, 14, 152, 122], 1134 [6, 75, 47, 34, 76, 48], 1135 [46, 54, 24, 10, 55, 25], 1136 [2, 45, 15, 64, 46, 16], 1137 [17, 152, 122, 4, 153, 123], 1138 [29, 74, 46, 14, 75, 47], 1139 [49, 54, 24, 10, 55, 25], 1140 [24, 45, 15, 46, 46, 16], 1141 [4, 152, 122, 18, 153, 123], 1142 [13, 74, 46, 32, 75, 47], 1143 [48, 54, 24, 14, 55, 25], 1144 [42, 45, 15, 32, 46, 16], 1145 [20, 147, 117, 4, 148, 118], 1146 [40, 75, 47, 7, 76, 48], 1147 [43, 54, 24, 22, 55, 25], 1148 [10, 45, 15, 67, 46, 16], 1149 [19, 148, 118, 6, 149, 119], 1150 [18, 75, 47, 31, 76, 48], 1151 [34, 54, 24, 34, 55, 25], 1152 [20, 45, 15, 61, 46, 16], 1153 ]), 1154 (C.getRSBlocks = function (t, e) { 1155 var o = C.getRsBlockTable(t, e); 1156 if (o == h) throw new Error("bad rs block @ typeNumber:" + t + "/errorCorrectLevel:" + e); 1157 for (var r = o.length / 3, i = [], n = 0; n < r; n++) 1158 for (var a = o[3 * n + 0], s = o[3 * n + 1], l = o[3 * n + 2], u = 0; u < a; u++) i.push(new C(s, l)); 1159 return i; 1160 }), 1161 (C.getRsBlockTable = function (t, e) { 1162 switch (e) { 1163 case u.L: 1164 return C.RS_BLOCK_TABLE[4 * (t - 1) + 0]; 1165 case u.M: 1166 return C.RS_BLOCK_TABLE[4 * (t - 1) + 1]; 1167 case u.Q: 1168 return C.RS_BLOCK_TABLE[4 * (t - 1) + 2]; 1169 case u.H: 1170 return C.RS_BLOCK_TABLE[4 * (t - 1) + 3]; 1171 default: 1172 return h; 1173 } 1174 }), 1175 (A.prototype = { 1176 get: function (t) { 1177 var e = Math.floor(t / 8); 1178 return 1 == ((this.buffer[e] >>> (7 - (t % 8))) & 1); 1179 }, 1180 put: function (t, e) { 1181 for (var o = 0; o < e; o++) this.putBit(1 == ((t >>> (e - o - 1)) & 1)); 1182 }, 1183 getLengthInBits: function () { 1184 return this.length; 1185 }, 1186 putBit: function (t) { 1187 var e = Math.floor(this.length / 8); 1188 this.buffer.length <= e && this.buffer.push(0), t && (this.buffer[e] |= 128 >>> this.length % 8), this.length++; 1189 }, 1190 }); 1191 var w = [ 1192 [17, 14, 11, 7], 1193 [32, 26, 20, 14], 1194 [53, 42, 32, 24], 1195 [78, 62, 46, 34], 1196 [106, 84, 60, 44], 1197 [134, 106, 74, 58], 1198 [154, 122, 86, 64], 1199 [192, 152, 108, 84], 1200 [230, 180, 130, 98], 1201 [271, 213, 151, 119], 1202 [321, 251, 177, 137], 1203 [367, 287, 203, 155], 1204 [425, 331, 241, 177], 1205 [458, 362, 258, 194], 1206 [520, 412, 292, 220], 1207 [586, 450, 322, 250], 1208 [644, 504, 364, 280], 1209 [718, 560, 394, 310], 1210 [792, 624, 442, 338], 1211 [858, 666, 482, 382], 1212 [929, 711, 509, 403], 1213 [1003, 779, 565, 439], 1214 [1091, 857, 611, 461], 1215 [1171, 911, 661, 511], 1216 [1273, 997, 715, 535], 1217 [1367, 1059, 751, 593], 1218 [1465, 1125, 805, 625], 1219 [1528, 1190, 868, 658], 1220 [1628, 1264, 908, 698], 1221 [1732, 1370, 982, 742], 1222 [1840, 1452, 1030, 790], 1223 [1952, 1538, 1112, 842], 1224 [2068, 1628, 1168, 898], 1225 [2188, 1722, 1228, 958], 1226 [2303, 1809, 1283, 983], 1227 [2431, 1911, 1351, 1051], 1228 [2563, 1989, 1423, 1093], 1229 [2699, 2099, 1499, 1139], 1230 [2809, 2213, 1579, 1219], 1231 [2953, 2331, 1663, 1273], 1232 ]; 1233 function L() { 1234 var t = !1, 1235 e = navigator.userAgent; 1236 return (t = 1237 /android/i.test(e) && ((t = !0), (e = e.toString().match(/android ([0-9]\.[0-9])/i))) && e[1] 1238 ? parseFloat(e[1]) 1239 : t); 1240 } 1241 var O = 1242 "undefined" == typeof CanvasRenderingContext2D 1243 ? ((k.prototype.draw = function (t) { 1244 var e = this._htOption, 1245 o = this._el, 1246 r = t.getModuleCount(), 1247 i = Math.round(e.width / r), 1248 n = Math.round((e.height - e.titleHeight) / r), 1249 a = 1250 (n <= 1 && (n = 1), 1251 (this._htOption.width = (i = i <= 1 ? 1 : i) * r), 1252 (this._htOption.height = n * r + e.titleHeight), 1253 (this._htOption.quietZone = Math.round(this._htOption.quietZone)), 1254 []), 1255 s = "", 1256 l = Math.round(i * e.dotScale), 1257 u = Math.round(n * e.dotScale), 1258 h = (l < 4 && (u = l = 4), e.colorDark), 1259 d = e.colorLight; 1260 e.backgroundImage && 1261 (e.autoColor 1262 ? ((e.colorDark = 1263 "rgba(0, 0, 0, .6);filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#99000000', EndColorStr='#99000000');"), 1264 (e.colorLight = 1265 "rgba(255, 255, 255, .7);filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#B2FFFFFF', EndColorStr='#B2FFFFFF');")) 1266 : (e.colorLight = "rgba(0,0,0,0)"), 1267 (_ = 1268 '<div style="display:inline-block; z-index:-10;position:absolute;"><img src="' +
1269 e.backgroundImage + 1270 '" widht="' + 1271 (e.width + 2 * e.quietZone) + 1272 '" height="' + 1273 (e.height + 2 * e.quietZone) + 1274 '" style="opacity:' + 1275 e.backgroundImageAlpha + 1276 ";filter:alpha(opacity=" + 1277 100 * e.backgroundImageAlpha + 1278 '); "/></div>'), 1279 a.push(_)), 1280 e.quietZone && 1281 (s = 1282 "display:inline-block; width:" + 1283 (e.width + 2 * e.quietZone) + 1284 "px; height:" + 1285 (e.width + 2 * e.quietZone) + 1286 "px;background:" + 1287 e.quietZoneColor + 1288 "; text-align:center;"), 1289 a.push('<div style="font-size:0;' + s + '">'), 1290 a.push( 1291 '<table style="font-size:0;border:0;border-collapse:collapse; margin-top:' + 1292 e.quietZone + 1293 'px;" border="0" cellspacing="0" cellspadding="0" align="center" valign="middle">', 1294 ), 1295 a.push( 1296 '<tr height="' + 1297 e.titleHeight + 1298 '" align="center"><td style="border:0;border-collapse:collapse;margin:0;padding:0" colspan="' + 1299 r + 1300 '">', 1301 ), 1302 e.title && 1303 ((_ = e.titleColor), 1304 (s = e.titleFont), 1305 a.push( 1306 '<div style="width:100%;margin-top:' + 1307 e.titleTop + 1308 "px;color:" + 1309 _ + 1310 ";font:" + 1311 s + 1312 ";background:" + 1313 e.titleBackgroundColor + 1314 '">' + 1315 e.title + 1316 "</div>", 1317 )), 1318 e.subTitle && 1319 a.push( 1320 '<div style="width:100%;margin-top:' + 1321 (e.subTitleTop - e.titleTop) + 1322 "px;color:" + 1323 e.subTitleColor + 1324 "; font:" + 1325 e.subTitleFont + 1326 '">' + 1327 e.subTitle + 1328 "</div>", 1329 ), 1330 a.push("</td></tr>"); 1331 for (var c = 0; c < r; c++) { 1332 a.push('<tr style="border:0; padding:0; margin:0;" height="7">'); 1333 for (var g = 0; g < r; g++) { 1334 var p = t.isDark(c, g), 1335 f = t.getEye(c, g); 1336 f 1337 ? ((p = f.isDark), 1338 (f = e[(f = f.type)] || e[f.substring(0, 2)] || h), 1339 a.push( 1340 '<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + 1341 i + 1342 "px;height:" + 1343 n + 1344 'px;"><span style="width:' + 1345 i + 1346 "px;height:" + 1347 n + 1348 "px;background-color:" + 1349 (p ? f : d) + 1350 ';display:inline-block"></span></td>', 1351 )) 1352 : ((f = e.colorDark), 1353 6 == c 1354 ? ((f = e.timing_H || e.timing || h), 1355 a.push( 1356 '<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + 1357 i + 1358 "px;height:" + 1359 n + 1360 "px;background-color:" + 1361 (p ? f : d) + 1362 ';"></td>', 1363 )) 1364 : 6 == g 1365 ? ((f = e.timing_V || e.timing || h), 1366 a.push( 1367 '<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + 1368 i + 1369 "px;height:" + 1370 n + 1371 "px;background-color:" + 1372 (p ? f : d) + 1373 ';"></td>', 1374 )) 1375 : a.push( 1376 '<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + 1377 i + 1378 "px;height:" + 1379 n + 1380 'px;"><div style="display:inline-block;width:' + 1381 l + 1382 "px;height:" + 1383 u + 1384 "px;background-color:" + 1385 (p ? f : e.colorLight) + 1386 ';"></div></td>', 1387 )); 1388 } 1389 a.push("</tr>"); 1390 } 1391 a.push("</table>"), 1392 a.push("</div>"), 1393 e.logo && 1394 ((_ = new Image()), 1395 null != e.crossOrigin && (_.crossOrigin = e.crossOrigin), 1396 (_.src = e.logo), 1397 (s = e.width / 3.5) != (_ = e.height / 3.5) && (s = _), 1398 e.logoWidth && (s = e.logoWidth), 1399 e.logoHeight && (_ = e.logoHeight),
1400 (m = 1401 "position:relative; z-index:1;display:table-cell;top:-" + 1402 ((e.height - e.titleHeight) / 2 + _ / 2 + e.quietZone) + 1403 "px;text-align:center; width:" + 1404 s + 1405 "px; height:" + 1406 _ + 1407 "px;line-height:" + 1408 s + 1409 "px; vertical-align: middle;"), 1410 e.logoBackgroundTransparent || (m += "background:" + e.logoBackgroundColor), 1411 a.push( 1412 '<div style="' + 1413 m + 1414 '"><img src="' + 1415 e.logo + 1416 '" style="max-width: ' + 1417 s + 1418 "px; max-height: " + 1419 _ + 1420 'px;" /> <div style=" display: none; width:1px;margin-left: -1px;"></div></div>', 1421 )), 1422 e.onRenderingStart && e.onRenderingStart(e), 1423 (o.innerHTML = a.join("")); 1424 var m = o.childNodes[0], 1425 s = (e.width - m.offsetWidth) / 2, 1426 _ = (e.height - m.offsetHeight) / 2; 1427 0 < s && 0 < _ && (m.style.margin = _ + "px " + s + "px"), 1428 this._htOption.onRenderingEnd && this._htOption.onRenderingEnd(this._htOption, null); 1429 }), 1430 (k.prototype.clear = function () { 1431 this._el.innerHTML = ""; 1432 }), 1433 k) 1434 : (function () { 1435 function t() { 1436 if ("svg" == this._htOption.drawer) { 1437 var t = this._oContext.getSerializedSvg(!0); 1438 (this.dataURL = t), (this._el.innerHTML = t); 1439 } else 1440 try { 1441 var e = this._elCanvas.toDataURL("image/png"); 1442 this.dataURL = e; 1443 } catch (t) { 1444 console.error(t); 1445 } 1446 this._htOption.onRenderingEnd && 1447 (this.dataURL || 1448 console.error( 1449 "Can not get base64 data, please check: 1. Published the page and image to the server 2. The image request support CORS 3. Configured `crossOrigin:'anonymous'` option", 1450 ), 1451 this._htOption.onRenderingEnd(this._htOption, this.dataURL)); 1452 } 1453 var h, d; 1454 r._android && 1455 r._android <= 2.1 && 1456 ((h = 1 / window.devicePixelRatio), 1457 (d = CanvasRenderingContext2D.prototype.drawImage), 1458 (CanvasRenderingContext2D.prototype.drawImage = function (t, e, o, r, i, n, a, s, l) { 1459 if ("nodeName" in t && /img/i.test(t.nodeName)) 1460 for (var u = arguments.length - 1; 1 <= u; u--) arguments[u] = arguments[u] * h; 1461 else void 0 === s && ((arguments[1] *= h), (arguments[2] *= h), (arguments[3] *= h), (arguments[4] *= h)); 1462 d.apply(this, arguments); 1463 })); 1464 function e(t, e) { 1465 (this._bIsPainted = !1), 1466 (this._android = L()), 1467 (this._el = t), 1468 (this._htOption = e), 1469 "svg" == this._htOption.drawer 1470 ? ((this._oContext = {}), (this._elCanvas = {})) 1471 : ((this._elCanvas = document.createElement("canvas")), 1472 this._el.appendChild(this._elCanvas), 1473 (this._oContext = this._elCanvas.getContext("2d"))), 1474 (this._bSupportDataURI = null), 1475 (this.dataURL = null); 1476 } 1477 return ( 1478 (e.prototype.draw = function (o) { 1479 var r, 1480 c = this._htOption, 1481 g = (c.title || c.subTitle || ((c.height -= c.titleHeight), (c.titleHeight = 0)), o.getModuleCount()), 1482 p = Math.round(c.width / g), 1483 f = Math.round((c.height - c.titleHeight) / g), 1484 m = 1485 (p <= 1 && (p = 1), 1486 f <= 1 && (f = 1), 1487 (c.width = p * g), 1488 (c.height = f * g + c.titleHeight), 1489 (c.quietZone = Math.round(c.quietZone)), 1490 (this._elCanvas.width = c.width + 2 * c.quietZone), 1491 (this._elCanvas.height = c.height + 2 * c.quietZone), 1492 "canvas" != this._htOption.drawer && 1493 (this._oContext = new C2S(this._elCanvas.width, this._elCanvas.height)), 1494 this.clear(), 1495 this._oContext), 1496 i = 1497 ((m.lineWidth = 0), 1498 (m.fillStyle = c.colorLight), 1499 m.fillRect(0, 0, this._elCanvas.width, this._elCanvas.height), 1500 this); 1501 function _() { 1502 0 < c.quietZone && 1503 c.quietZoneColor && 1504 ((m.lineWidth = 0), 1505 (m.fillStyle = c.quietZoneColor), 1506 m.fillRect(0, 0, i._elCanvas.width, c.quietZone), 1507 m.fillRect(0, c.quietZone, c.quietZone, i._elCanvas.height - 2 * c.quietZone), 1508 m.fillRect( 1509 i._elCanvas.width - c.quietZone, 1510 c.quietZone, 1511 c.quietZone, 1512 i._elCanvas.height - 2 * c.quietZone, 1513 ), 1514 m.fillRect(0, i._elCanvas.height - c.quietZone, i._elCanvas.width, c.quietZone)); 1515 } 1516 function n(t) { 1517 c.onRenderingStart && c.onRenderingStart(c); 1518 for (var u, h, e = 0; e < g; e++) 1519 for (var o = 0; o < g; o++) { 1520 var r, 1521 i, 1522 n = o * p + c.quietZone, 1523 a = e * f + c.quietZone, 1524 s = t.isDark(e, o), 1525 l = t.getEye(e, o), 1526 d = c.dotScale; 1527 (m.lineWidth = 0), 1528 l 1529 ? ((r = c[l.type] || c[l.type.substring(0, 2)] || c.colorDark), (i = c.colorLight)) 1530 : c.backgroundImage 1531 ? ((i = "rgba(0,0,0,0)"), 1532 6 == e 1533 ? c.autoColor 1534 ? ((r = c.timing_H || c.timing || c.autoColorDark), (i = c.autoColorLight)) 1535 : (r = c.timing_H || c.timing || c.colorDark) 1536 : 6 == o 1537 ? c.autoColor 1538 ? ((r = c.timing_V || c.timing || c.autoColorDark), (i = c.autoColorLight)) 1539 : (r = c.timing_V || c.timing || c.colorDark) 1540 : c.autoColor 1541 ? ((r = c.autoColorDark), (i = c.autoColorLight)) 1542 : (r = c.colorDark)) 1543 : ((r = 1544 6 == e 1545 ? c.timing_H || c.timing || c.colorDark 1546 : (6 == o && (c.timing_V || c.timing)) || c.colorDark), 1547 (i = c.colorLight)), 1548 (m.strokeStyle = s ? r : i), 1549 (m.fillStyle = s ? r : i), 1550 l 1551 ? ((d = "AO" == l.type ? c.dotScaleAO : "AI" == l.type ? c.dotScaleAI : 1), 1552 c.backgroundImage && c.autoColor 1553 ? ((r = ("AO" == l.type ? c.AI : c.AO) || c.autoColorDark), (i = c.autoColorLight)) 1554 : (r = ("AO" == l.type ? c.AI : c.AO) || r), 1555 l.isDark) 1556 : 6 == e 1557 ? (d = c.dotScaleTiming_H) 1558 : 6 == o 1559 ? (d = c.dotScaleTiming_V) 1560 : c.backgroundImage, 1561 m.fillRect(n + (p * (1 - d)) / 2, c.titleHeight + a + (f * (1 - d)) / 2, p * d, f * d), 1562 1 == c.dotScale || l || (m.strokeStyle = c.colorLight); 1563 } 1564 c.title &&
1565 ((m.fillStyle = c.titleBackgroundColor), 1566 m.fillRect(0, 0, this._elCanvas.width, c.titleHeight + c.quietZone), 1567 (m.font = c.titleFont), 1568 (m.fillStyle = c.titleColor), 1569 (m.textAlign = "center"), 1570 m.fillText(c.title, this._elCanvas.width / 2, +c.quietZone + c.titleTop)), 1571 c.subTitle && 1572 ((m.font = c.subTitleFont), 1573 (m.fillStyle = c.subTitleColor), 1574 m.fillText(c.subTitle, this._elCanvas.width / 2, +c.quietZone + c.subTitleTop)), 1575 c.logo 1576 ? ((u = new Image()), 1577 (h = this), 1578 (u.onload = function () { 1579 var t, e, o, r, i, n, a, s, l; 1580 (t = u), 1581 (e = Math.round(c.width / 3.5)), 1582 (o = Math.round(c.height / 3.5)), 1583 e !== o && (e = o), 1584 c.logoMaxWidth 1585 ? (e = Math.round(c.logoMaxWidth)) 1586 : c.logoWidth && (e = Math.round(c.logoWidth)), 1587 c.logoMaxHeight 1588 ? (o = Math.round(c.logoMaxHeight)) 1589 : c.logoHeight && (o = Math.round(c.logoHeight)), 1590 (s = 1591 void 0 === t.naturalWidth 1592 ? ((a = t.width), t.height) 1593 : ((a = t.naturalWidth), t.naturalHeight)), 1594 (c.logoMaxWidth || c.logoMaxHeight) && 1595 (c.logoMaxWidth && a <= e && (e = a), c.logoMaxHeight && s <= o && (o = s), a <= e) && 1596 s <= o && 1597 ((e = a), (o = s)), 1598 (r = (c.width + 2 * c.quietZone - e) / 2), 1599 (i = (c.height + c.titleHeight + 2 * c.quietZone - o) / 2), 1600 (n = Math.min(e / a, o / s)), 1601 (a *= n), 1602 (s *= n), 1603 (c.logoMaxWidth || c.logoMaxHeight) && 1604 ((r = (c.width + 2 * c.quietZone - (e = a)) / 2), 1605 (i = (c.height + c.titleHeight + 2 * c.quietZone - (o = s
1605)) / 2)), 1606 c.logoBackgroundTransparent || 1607 ((m.fillStyle = c.logoBackgroundColor), m.fillRect(r, i, e, o)), 1608 (n = m.imageSmoothingQuality), 1609 (l = m.imageSmoothingEnabled), 1610 (m.imageSmoothingEnabled = !0), 1611 (m.imageSmoothingQuality = "high"), 1612 m.drawImage(t, r + (e - a) / 2, i + (o - s) / 2, a, s), 1613 (m.imageSmoothingEnabled = l), 1614 (m.imageSmoothingQuality = n), 1615 _(), 1616 (h._bIsPainted = !0), 1617 h.makeImage(); 1618 }), 1619 (u.onerror = function (t) { 1620 console.error(t); 1621 }), 1622 null != c.crossOrigin && (u.crossOrigin = c.crossOrigin), 1623 (u.originalSrc = c.logo), 1624 (u.src = c.logo)) 1625 : (_(), (this._bIsPainted = !0), this.makeImage()); 1626 } 1627 c.backgroundImage 1628 ? (((r = new Image()).onload = function () { 1629 (m.globalAlpha = 1), (m.globalAlpha = c.backgroundImageAlpha); 1630 var t = m.imageSmoothingQuality, 1631 e = m.imageSmoothingEnabled; 1632 (m.imageSmoothingEnabled = !0), 1633 (m.imageSmoothingQuality = "high"), 1634 m.drawImage( 1635 r, 1636 0, 1637 c.titleHeight, 1638 c.width + 2 * c.quietZone, 1639 c.height + 2 * c.quietZone - c.titleHeight, 1640 ), 1641 (m.imageSmoothingEnabled = e), 1642 (m.imageSmoothingQuality = t), 1643 (m.globalAlpha = 1), 1644 n.call(i, o); 1645 }), 1646 null != c.crossOrigin && (r.crossOrigin = c.crossOrigin), 1647 (r.originalSrc = c.backgroundImage), 1648 (r.src = c.backgroundImage)) 1649 : n.call(i, o); 1650 }), 1651 (e.prototype.makeImage = function () { 1652 this._bIsPainted && 1653 !function (t, e) { 1654 var o = this; 1655 (o._fFail = e), 1656 (o._fSuccess = t), 1657 null === o._bSupportDataURI 1658 ? (((e = document.createElement("img")).onabort = t = 1659 function () { 1660 (o._bSupportDataURI = !1), o._fFail && o._fFail.call(o); 1661 }), 1662 (e.onerror = t), 1663 (e.onload = function () { 1664 (o._bSupportDataURI = !0), o._fSuccess && o._fSuccess.call(o); 1665 }), 1666 (e.src = 1667 "data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==")) 1668 : !0 === o._bSupportDataURI && o._fSuccess 1669 ? o._fSuccess.call(o) 1670 : !1 === o._bSupportDataURI && o._fFail && o._fFail.call(o); 1671 }.call(this, t); 1672 }), 1673 (e.prototype.isPainted = function () { 1674 return this._bIsPainted; 1675 }), 1676 (e.prototype.clear = function () { 1677 this._oContext.clearRect(0, 0, this._elCanvas.width, this._elCanvas.height), (this._bIsPainted = !1); 1678 }), 1679 (e.prototype.remove = function () { 1680 this._oContext.clearRect(0, 0, this._elCanvas.width, this._elCanvas.height), 1681 (this._bIsPainted = !1), 1682 (this._el.innerHTML = ""); 1683 }), 1684 (e.prototype.round = function (t) { 1685 return t && Math.floor(1e3 * t) / 1e3; 1686 }), 1687 e 1688 ); 1689 })(); 1690 function k(t, e) { 1691 (this._el = t), (this._htOption = e); 1692 } 1693 function R(t, e) { 1694 for ( 1695 var o, 1696 r = e.correctLevel, 1697 i = 1, 1698 n = 1699 ((t = t), 1700 (o = encodeURI(t) 1701 .toString() 1702 .replace(/\%[0-9a-fA-F]{2}/g, "a")).length + (o.length != t.length ? 3 : 0)), 1703 a = 0, 1704 s = w.length; 1705 a < s; 1706 a++ 1707 ) { 1708 var l = 0; 1709 switch (r) { 1710 case u.L: 1711 l = w[a][0]; 1712 break; 1713 case u.M: 1714 l = w[a][1]; 1715 break; 1716 case u.Q: 1717 l = w[a][2]; 1718 break; 1719 case u.H: 1720 l = w[a][3]; 1721 } 1722 if (n <= l) break; 1723 i++; 1724 } 1725 if (w.length < i) 1726 throw new Error("Too long data. the CorrectLevel." + ["M", "L", "H", "Q"][r] + " limit length is " + l); 1727 return ( 1728 0 != e.version && 1729 (i <= e.version 1730 ? (i = e.version) 1731 : console.warn("QR Code version " + e.version + " too small, run version use " + i), 1732 (e.runVersion = i)), 1733 i 1734 ); 1735 } 1736 ((t = function (t, e) { 1737 if ( 1738 ((this._htOption = { 1739 width: 256, 1740 height: 256, 1741 typeNumber: 4, 1742 colorDark: "#000000", 1743 colorLight: "#ffffff", 1744 correctLevel: u.H, 1745 dotScale: 1, 1746 dotScaleTiming: 1, 1747 dotScaleTiming_H: h, 1748 dotScaleTiming_V: h, 1749 dotScaleA: 1, 1750 dotScaleAO: h, 1751 dotScaleAI: h, 1752 quietZone: 0, 1753 quietZoneColor: "rgba(0,0,0,0)", 1754 title: "", 1755 titleFont: "normal normal bold 16px Arial", 1756 titleColor: "#000000",
1757 titleBackgroundColor: "#ffffff", 1758 titleHeight: 0, 1759 titleTop: 30, 1760 subTitle: "", 1761 subTitleFont: "normal normal normal 14px Arial", 1762 subTitleColor: "#4F4F4F", 1763 subTitleTop: 60, 1764 logo: h, 1765 logoWidth: h, 1766 logoHeight: h, 1767 logoMaxWidth: h, 1768 logoMaxHeight: h, 1769 logoBackgroundColor: "#ffffff", 1770 logoBackgroundTransparent: !1, 1771 PO: h, 1772 PI: h, 1773 PO_TL: h, 1774 PI_TL: h, 1775 PO_TR: h, 1776 PI_TR: h, 1777 PO_BL: h, 1778 PI_BL: h, 1779 AO: h, 1780 AI: h, 1781 timing: h, 1782 timing_H: h, 1783 timing_V: h, 1784 backgroundImage: h, 1785 backgroundImageAlpha: 1, 1786 autoColor: !1, 1787 autoColorDark: "rgba(0, 0, 0, .6)", 1788 autoColorLight: "rgba(255, 255, 255, .7)", 1789 onRenderingStart: h, 1790 onRenderingEnd: h, 1791 version: 0, 1792 tooltip: !1, 1793 binary: !1, 1794 drawer: "canvas", 1795 crossOrigin: null, 1796 utf8WithoutBOM: !0, 1797 }), 1798 (e = "string" == typeof e ? { text: e } : e)) 1799 ) 1800 for (var o in e) this._htOption[o] = e[o]; 1801 (this._htOption.version < 0 || 40 < this._htOption.version) && 1802 (console.warn("QR Code version '" + this._htOption.version + "' is invalidate, reset to 0"), 1803 (this._htOption.version = 0)), 1804 (this._htOption.dotScale < 0 || 1 < this._htOption.dotScale) && 1805 (console.warn( 1806 this._htOption.dotScale + 1807 " , is invalidate, dotScale must greater than 0, less than or equal to 1, now reset to 1. ", 1808 ), 1809 (this._htOption.dotScale = 1)), 1810 (this._htOption.dotScaleTiming < 0 || 1 < this._htOption.dotScaleTiming) && 1811 (console.warn( 1812 this._htOption.dotScaleTiming + 1813 " , is invalidate, dotScaleTiming must greater than 0, less than or equal to 1, now reset to 1. ", 1814 ), 1815 (this._htOption.dotScaleTiming = 1)), 1816 this._htOption.dotScaleTiming_H 1817 ? (this._htOption.dotScaleTiming_H < 0 || 1 < this._htOption.dotScaleTiming_H) && 1818 (console.warn( 1819 this._htOption.dotScaleTiming_H + 1820 " , is invalidate, dotScaleTiming_H must greater than 0, less than or equal to 1, now reset to 1. ", 1821 ), 1822 (this._htOption.dotScaleTiming_H = 1)) 1823 : (this._htOption.dotScaleTiming_H = this._htOption.dotScaleTiming), 1824 this._htOption.dotScaleTiming_V 1825 ? (this._htOption.dotScaleTiming_V < 0 || 1 < this._htOption.dotScaleTiming_V) && 1826 (console.warn( 1827 this._htOption.dotScaleTiming_V + 1828 " , is invalidate, dotScaleTiming_V must greater than 0, less than or equal to 1, now reset to 1. ", 1829 ), 1830 (this._htOption.dotScaleTiming_V = 1)) 1831 : (this._htOption.dotScaleTiming_V = this._htOption.dotScaleTiming), 1832 (this._htOption.dotScaleA < 0 || 1 < this._htOption.dotScaleA) && 1833 (console.warn( 1834 this._htOption.dotScaleA + 1835 " , is invalidate, dotScaleA must greater than 0, less than or equal to 1, now reset to 1. ", 1836 ), 1837 (this._htOption.dotScaleA = 1)), 1838 this._htOption.dotScaleAO 1839 ? (this._htOption.dotScaleAO < 0 || 1 < this._htOption.dotScaleAO) && 1840 (console.warn( 1841 this._htOption.dotScaleAO + 1842 " , is invalidate, dotScaleAO must greater than 0, less than or equal to 1, now reset to 1. ", 1843 ), 1844 (this._htOption.dotScaleAO = 1)) 1845 : (this._htOption.dotScaleAO = this._htOption.dotScaleA), 1846 this._htOption.dotScaleAI 1847 ? (this._htOption.dotScaleAI < 0 || 1 < this._htOption.dotScaleAI) && 1848 (console.warn( 1849 this._htOption.dotScaleAI + 1850 " , is invalidate, dotScaleAI must greater than 0, less than or equal to 1, now reset to 1. ", 1851 ), 1852 (this._htOption.dotScaleAI = 1)) 1853 : (this._htOption.dotScaleAI = this._htOption.dotScaleA), 1854 (this._htOption.backgroundImageAlpha < 0 || 1 < this._htOption.backgroundImageAlpha) && 1855 (console.warn( 1856 this._htOption.backgroundImageAlpha + 1857 " , is invalidate, backgroundImageAlpha must between 0 and 1, now reset to 1. ", 1858 ), 1859 (this._htOption.backgroundImageAlpha = 1)), 1860 (this._htOption.height = this._htOption.height + this._htOption.titleHeight), 1861 "string" == typeof t && (t = document.getElementById(t)), 1862 (this._htOption.drawer && ("svg" == this._htOption.drawer || "canvas" == this._htOption.drawer)) || 1863 (this._htOption.drawer = "canvas"), 1864 (this._android = L()), 1865 (this._el = t), 1866 (this._oQRCode = null); 1867 var r = {}; 1868 for (o in this._htOption) r[o] = this._htOption[o]; 1869 (this._oDrawing = new O(this._el, r)), this._htOption.text && this.makeCode(this._htOption.text); 1870 }).prototype.makeCode = function (t) { 1871 (this._oQRCode = new l(R(t, this._htOption), this._htOption.correctLevel)), 1872 this._oQRCode.addData(t, this._htOption.binary, this._htOption.utf8WithoutBOM), 1873 this._oQRCode.make(), 1874 this._htOption.tooltip && (this._el.title = t), 1875 this._oDrawing.draw(this._oQRCode); 1876 }), 1877 (t.prototype.makeImage = function () { 1878 "function" == typeof this._oDrawing.makeImage && 1879 (!this._android || 3 <= this._android) && 1880 this._oDrawing.makeImage(); 1881 }), 1882 (t.prototype.clear = function () { 1883 this._oDrawing.remove(); 1884 }), 1885 (t.prototype.resize = function (t, e) { 1886 (this._oDrawing._htOption.width = t), (this._oDrawing._htOption.height = e), this._oDrawing.draw(this._oQRCode); 1887 }), 1888 (t.prototype.noConflict = function () { 1889 return r.QRCode === this && (r.QRCode = i), t; 1890 }), 1891 (t.CorrectLevel = u), 1892 "function" == typeof define && (define.amd || define.cmd) 1893 ? define([], function () { 1894 return t; 1895 }) 1896 : o 1897 ? (((o.exports = t).QRCode = t), (e.QRCode = t)) 1898 : (r.QRCode = t); 1899} 1900var version = "2.9.3", 1901 formatVersion = version.replace(/\./g, "_"); 1902QRCode(), 1903 removeExpiredLocalStorageItems(), 1904 getQueryParamsAndSaveToLocalStorage(window.location.href), 1905 saveWebReferrer(), 1906 (window.AF_SMART_SCRIPT = { 1907 generateOneLinkURL: function () { 1908 var i, 1909 t = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : { afParameters: {} }, 1910 e = t.oneLinkURL, 1911 o = t.afParameters, 1912 o = (void 0 === o ? {} : o).mediaSource,
1913 r = t.referrerSkipList, 1914 r = void 0 === r ? [] : r, 1915 n = t.urlSkipList, 1916 n = void 0 === n ? [] : n, 1917 a = t.webReferrer; 1918 return isOneLinkURLValid(e) && 1919 isSkipListsValid({ referrerSkipList: r, urlSkipList: n }) && 1920 isMSValid(o) && 1921 ((r = getCurrentURLParams(aggregateValuesFromParameters(t.afParameters))), 1922 (n = validateAndMappedParams(t.afParameters, r))) 1923 ? ((o = _objectSpread2({ af_js_web: !0, af_ss_ver: window.AF_SMART_SCRIPT.version }, n)), 1924 (i = e + stringifyParameters(o).replace("&", "?")), 1925 (t = JSON.parse(localStorage.getItem(LOCAL_STORAGE_VALUES.SS_WEB_REFERRER))), 1926 a && t && isValidUrl(t) && ((r = "&".concat(a, "=").concat(t)), (i = "".concat(i).concat(r))), 1927 (i = processTrackingParameters(i)), 1928 console.debug("Generated OneLink URL", i), 1929 (window.AF_SMART_SCRIPT.displayQrCode = function (t) { 1930 var e = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {}, 1931 o = e.logo, 1932 o = void 0 === o ? "" : o, 1933 r = e.codeColor, 1934 r = void 0 === r ? "#000" : r; 1935 return i 1936 ? new QRCode(document.getElementById(t), { 1937 text: "".concat(i, "&af_ss_qr=").concat(e.logo || e.codeColor ? "c" : "true", " "), 1938 logo: o, 1939 colorDark: getHexColorAfterValidation(r), 1940 logoBackgroundTransparent: !0, 1941 crossOrigin: "anonymous", 1942 correctLevel: o ? QRCode.CorrectLevel.Q : QRCode.CorrectLevel.L, 1943 }) 1944 : (console.debug("ClickURL is not valid"), null); 1945 }), 1946 createImpressionsLink(i).then(function (e) { 1947 e && 1948 (window.AF_SMART_SCRIPT.fireImpressionsLink = function () { 1949 var t = new Image(1, 1); 1950 (t.style.display = "none"), 1951 (t.style.position = "absolute"), 1952 (t.style.left = "-1px"), 1953 (t.style.top = "-1px"), 1954 (t.src = e); 1955 }); 1956 }), 1957 { clickURL: i }) 1958 : null; 1959 }, 1960 generateDirectClickURL: function () { 1961 var t, 1962 e = 1963 0 < arguments.length && void 0 !== arguments[0] 1964 ? arguments[0] 1965 : { afParameters: {}, referrerSkipList: [], urlSkipList: [] }, 1966 o = e.afParameters, 1967 o = void 0 === o ? {} : o, 1968 r = e.referrerSkipList, 1969 r = void 0 === r ? [] : r, 1970 i = e.urlSkipList, 1971 i = void 0 === i ? [] : i, 1972 n = e.platform, 1973 a = e.app_id, 1974 s = e.redirectURL, 1975 l = o.mediaSource, 1976 o = o.campaign; 1977 return l 1978 ? o 1979 ? a 1980 ? s 1981 ? ((n = null == n ? void 0 : n.toLowerCase()), 1982 isPlatformValid(n) 1983 ? "string" != typeof a 1984 ? (console.error("app_id must be a string"), null) 1985 : 0 !== (null == o || null == (t = o.keys) ? void 0 : t.length) || (null != o && o.defaultValue) 1986 ? isSkipListsValid({ referrerSkipList: r, urlSkipList: i }) && 1987 isMSValid(l) && 1988 ((t = getCurrentURLParams(aggregateValuesFromParameters(e.afParameters))), 1989 (r = validateAndMappedParams(e.afParameters, t, !0))) 1990 ? ((i = _objectSpread2({ af_js_web: !0, af_ss_ver: window.AF_SMART_SCRIPT.version }, r)), 1991 (e = stringifyParameters(i).replace("&", "?")), 1992 (t = "https://engagements.appsflyer.com/v1.0/c2s/click/app/".concat(n)), 1993 ["ios", "android"].includes(n) && (t = "https://app.appsflyer.com"), 1994 (r = "".concat(t, "/").concat(a).concat(e, "&af_r=").concat(encodeURIComponent(s))), 1995 ["ios", "android"].includes(n) && 1996 (r = r 1997 .replace("af_media_source", "pid") 1998 .replace("af_campaign", "c") 1999 .replace("af_campaign_id", "af_c_id")), 2000 (r = processTrackingParameters(r)), 2001 console.debug("generate Direct Click URL", r), 2002 delete window.AF_SMART_SCRIPT.displayQrCode, 2003 delete window.AF_SMART_SCRIPT.fireImpressionsLink, 2004 { clickURL: r }) 2005 : null 2006 : (console.error("campaign is missing (default value was not supplied), can't generate URL", l), 2007 null) 2008 : null) 2009 : (console.error("redirectURL is missing , can't generate URL", s), null) 2010 : (console.error("app_id is missing , can't generate URL", a), null) 2011 : (console.error("campaign is missing , can't generate URL", o), null) 2012 : (console.error("mediaSource is missing , can't generate URL", l), null); 2013 }, 2014 version: formatVersion, 2015 });
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.