1var _____WB$wombat$assign$function_____=function(name){return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name))||self[name];};if(!self.__WB_pmw){self.__WB_pmw=function(obj){this.__WB_source=obj;return this;}}{ 2let window = _____WB$wombat$assign$function_____("window"); 3let self = _____WB$wombat$assign$function_____("self"); 4let document = _____WB$wombat$assign$function_____("document"); 5let location = _____WB$wombat$assign$function_____("location"); 6let top = _____WB$wombat$assign$function_____("top"); 7let parent = _____WB$wombat$assign$function_____("parent"); 8let frames = _____WB$wombat$assign$function_____("frames"); 9let opens = _____WB$wombat$assign$function_____("opens"); 10if (!Date.now) { 11 Date.now = function now() { 12 return new Date().getTime(); 13 }; 14} 15 16(function(funcName, baseObj) { 17 "use strict"; 18 19 // The public function name defaults to window.docReady 20 // but you can modify the last line of this function to pass in a different object or method name 21 // if you want to put them in a different namespace and those will be used instead of 22 // window.docReady(...) 23 funcName = funcName || "docReady"; 24 baseObj = baseObj || window; 25 var readyList = []; 26 var readyFired = false; 27 var readyEventHandlersInstalled = false; 28 29 // call this when the document is ready 30 // this function protects itself against being called more than once 31 function ready() { 32 if (!readyFired) { 33 34 // this must be set to true before we start calling callbacks 35 readyFired = true; 36 for (var i = 0; i < readyList.length; i++) { 37 38 // if a callback here happens to add new ready handlers, 39 // the docReady() function will see that it already fired 40 // and will schedule the callback to run right after 41 // this event loop finishes so all handlers will still execute 42 // in order and no new ones will be added to the readyList 43 // while we are processing the list 44 readyList[i].fn.call(window, readyList[i].ctx); 45 } 46 47 // allow any closures held by these functions to free 48 readyList = []; 49 } 50 } 51 52 function readyStateChange() { 53 if ( document.readyState === "complete" ) { 54 ready(); 55 } 56 } 57 58 // This is the one public interface 59 // docReady(fn, context); 60 // the context argument is optional - if present, it will be passed 61 // as an argument to the callback 62 baseObj[funcName] = function(callback, context) { 63 if (typeof callback !== "function") { 64 throw new TypeError("callback for docReady(fn) must be a function"); 65 } 66 67 // if ready has already fired, then just schedule the callback 68 // to fire asynchronously, but right away 69 if (readyFired) { 70 setTimeout(function() {callback(context);}, 1); 71 return; 72 } else { 73 74 // add the function and context to the list 75 readyList.push({fn: callback, ctx: context}); 76 } 77 78 // if document already ready to go, schedule the ready function to run 79 // IE only safe when readyState is "complete", others safe when readyState is "interactive" 80 if (document.readyState === "complete" || (!document.attachEvent && document.readyState === "interactive")) { 81 setTimeout(ready, 1); 82 } else if (!readyEventHandlersInstalled) { 83 84 // otherwise if we don't have event handlers installed, install them 85 if (document.addEventListener) { 86 87 // first choice is DOMContentLoaded event 88 document.addEventListener("DOMContentLoaded", ready, false); 89 90 // backup is window load event 91 window.addEventListener("load", ready, false); 92 } else { 93 94 // must be IE 95 document.attachEvent("onreadystatechange", readyStateChange); 96 window.attachEvent("onload", ready); 97 } 98 readyEventHandlersInstalled = true; 99 } 100 } 101})("__sharethis__docReady", window); 102 103// Document.querySelectorAll method 104// http://ajaxian.com/archives/creating-a-queryselector-for-ie-that-runs-at-native-speed 105// Needed for: IE7- 106if (!document.querySelectorAll) { 107 document.querySelectorAll = function(selectors) { 108 var style = document.createElement('style'), elements = [], element; 109 document.documentElement.firstChild.appendChild(style); 110 document._qsa = []; 111 112 style.styleSheet.cssText = selectors + '{x-qsa:expression(document._qsa && document._qsa.push(this))}'; 113 window.scrollBy(0, 0); 114 style.parentNode.removeChild(style); 115 116 while (document._qsa.length) { 117 element = document._qsa.shift(); 118 element.style.removeAttribute('x-qsa'); 119 elements.push(element); 120 } 121 document._qsa = null; 122 return elements; 123 }; 124} 125 126// Document.querySelector method 127// Needed for: IE7- 128if (!document.querySelector) { 129 document.querySelector = function(selectors) { 130 var elements = document.querySelectorAll(selectors); 131 return (elements.length) ? elements[0] : null; 132 }; 133} 134 135if (!Array.isArray) { 136 Array.isArray = function(arg) { 137 return Object.prototype.toString.call(arg) === '[object Array]'; 138 }; 139} 140 141Array.prototype.indexOf || (Array.prototype.indexOf = function(d, e) { 142 var a; 143 if (null == this) throw new TypeError('"this" is null or not defined'); 144 var c = Object(this); 145 var b = c.length >>> 0; 146 if (0 === b) return -1; 147 a = +e || 0; 148 Infinity === Math.abs(a) && (a = 0); 149 if (a >= b) return -1; 150 for (a = Math.max(0 <= a ? a : b - Math.abs(a), 0); a < b;) { 151 if (a in c && c[a] === d) return a; 152 a++; 153 } 154 return -1 155}); 156 157(function() { 158 var st, 159 indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }; 160 161 if (window.__sharethis__ == null) { 162 window.__sharethis__ = { 163 v: '6.0.0' 164 }; 165 } 166 167 st = window.__sharethis__; 168 169 st.METRICS = "https://platform-metrics-api.sharethis.com"; 170 171 st.API = "https://platform-api.sharethis.com"; 172 173 st.SECOND = 1000; 174 175 st.MINUTE = 60 * st.SECOND; 176 177 st.HOUR = 60 * st.MINUTE; 178 179 st.DAY = 24 * st.HOUR; 180 181 st.WEEK = 7 * st.DAY; 182 183 st.BORDER_BOX = "-moz-box-sizing: border-box;\n-webkit-box-sizing: border-box;\nbox-sizing: border-box;"; 184 185 st.BORDER_RADIUS = function(radius) { 186 return "-moz-border-radius: " + (st.px(radius)) + ";\n-webkit-border-radius: " + (st.px(radius)) + ";\nborder-radius: " + (st.px(radius)) + ";"; 187 }; 188 189 st.BOX_SHADOW = function(value) { 190 return "-moz-box-shadow: " + value + ";\n-webkit-box-shadow: " + value + ";\nbox-shadow: " + value + ";"; 191 }; 192 193 st.FLEX = "-moz-flex: 1;\n-ms-flex: 1;\n-webkit-flex: 1;\nflex: 1;"; 194 195 st.FONT_FAMILY = "font-family: \"Helvetica Neue\", Verdana, Helvetica, Arial, sans-serif;"; 196 197 st.TRANSFORM = function(value) { 198 return "-ms-transform: " + value + ";\n-webkit-transform: " + value + ";\ntransform: " + value + ";"; 199 }; 200 201 st.TRANSITION = function(properties, duration) { 202 var i, len, property, value; 203 if (properties == null) { 204 properties = ['all']; 205 } 206 if (duration == null) { 207 duration = '0.2s'; 208 } 209 value = []; 210 for (i = 0, len = properties.length; i < len; i++) { 211 property = properties[i]; 212 value.push(property + " " + duration + " ease-in"); 213 } 214 value = value.join(', '); 215 return "-moz-transition: " + value + "; -ms-transition: " + value + "; -o-transition: " + value + "; -webkit-transition: " + value + "; transition: " + value + ";"; 216 }; 217 218 st._uid = 0; 219 220 st.uid = function() { 221 return ++st._uid; 222 }; 223 224 st.cache = {}; 225 226 st.get = function(key) { 227 return st.cache[key]; 228 }; 229 230 st.set = function(key, val) { 231 return st.cache[key] = val; 232 }; 233 234 st.has = function(key) { 235 return st.cache[key] != null; 236 }; 237 238 st.addClass = function($el, names) { 239 var current, i, len, name; 240 current = ($el.className || '').split(' '); 241 if (typeof names === 'string') { 242 names = [names]; 243 } 244 for (i = 0, len = names.length; i < len; i++) { 245 name = names[i]; 246 if ((name != null) && indexOf.call(current, name) < 0) { 247 current.push(name); 248 } 249 } 250 return $el.className = current.join(' '); 251 }; 252 253 st.addEventListener = function($el, event, callback) { 254 if (!($el && event && callback)) { 255 return; 256 } 257 if ($el.addEventListener) { 258 return $el.addEventListener(event, callback, false); 259 } else if ($el.attachEvent) { 260 return $el.attachEvent("on" + event, callback); 261 } else { 262 return $el["on" + event] = callback; 263 } 264 }; 265 266 st.capitalize = function(str) { 267 return "" + (str.charAt(0).toUpperCase()) + (str.substring(1).toLowerCase()); 268 }; 269 270 st.copy = function() { 271 var selection; 272 selection = typeof window.getSelection === "function" ? window.getSelection() : void 0; 273 if (!selection || selection.isCollapsed) { 274 return; 275 } 276 selection = selection.toString(); 277 if (selection.length > 500) { 278 selection = selection.slice(0, 497) + "..."; 279 } 280 if (selection.length > 0) { 281 return st.log({ 282 copy_text: selection, 283 destinations: "copy", 284 event: 'share', 285 url: st.href 286 }); 287 } 288 }; 289 290 st.close = function($el) { 291 st.removeClass(document.body, 'st-body-no-scroll'); 292 if (!$el) { 293 return; 294 } 295 st.addClass($el, 'st-hidden'); 296 return setTimeout((function() { 297 return st.remove($el); 298 }), 200); 299 }; 300 301 st.css = function(css) { 302 var head, s; 303 head = document.getElementsByTagName('head')[0]; 304 s = document.createElement('style'); 305 s.setAttribute('type', 'text/css'); 306 if (s.styleSheet) { 307 s.styleSheet.cssText = css; 308 } else { 309 s.appendChild(document.createTextNode(css)); 310 } 311 return head.appendChild(s); 312 }; 313 314 st.ecommerce = function() { 315 var ecommerce, has_ldjson, has_og, has_price; 316 has_ldjson = st.meta["@type"] === "Product"; 317 has_og = st.meta["og:type"] === "product"; 318 has_price = st.getMeta(['og:price:amount', 'price', 'product:price:amount']); 319 if (has_ldjson || has_og || has_price) { 320 ecommerce = JSON.stringify(st.omit({ 321 availability: st.getMeta(["og:availability", "product:availability", "availability"]), 322 brand: st.getMeta(["brand", "og:site_name"]), 323 category: st.getMeta(["category"]), 324 currency: st.getMeta(["og:price:currency", "product:price:currency", "priceCurrency"]), 325 description: st.getMeta(["og:description", "twitter:description", "description"]), 326 image: st.getMeta(["og:image:secure_url", "og:image", "twitter:image"]), 327 mpn: st.getMeta(["mpn"]),
328 name: st.getMeta(["og:title", "twitter:title", "name"]), 329 price: st.getMeta(["og:price:amount", "product:price:amount", "price"]), 330 rating: st.getMeta(["og:rating", "ratingValue"]), 331 reviews: st.getMeta(["reviewCount", "ratingCount"]), 332 sku: st.getMeta(["sku"]) 333 })); 334 st.log({ 335 event: 'ecommerce_pview', 336 ecommerce: ecommerce 337 }); 338 st.addEventListener(document, "click", function(e) { 339 var classes, cls, config, event, href, i, len; 340 if (!(e != null ? e.target : void 0)) { 341 return true; 342 } 343 if (e.target.tagName === "A") { 344 href = e.target.getAttribute('href') || ''; 345 if (new RegExp("/cart$").test(href)) { 346 st.log({ 347 event: "view_cart", 348 ecommerce: ecommerce 349 }); 350 return true; 351 } 352 } 353 config = { 354 add_to_cart: ["add_to_cart", "add-to-cart", "addtocart"], 355 add_to_wishlist: ["save-for-later", "wishlist"], 356 buy: ["payment-button"] 357 }; 358 for (event in config) { 359 classes = config[event]; 360 for (i = 0, len = classes.length; i < len; i++) { 361 cls = classes[i]; 362 if (st.hasClassOrId(e.target, cls)) { 363 st.log({ 364 event: event, 365 ecommerce: ecommerce 366 }); 367 return true; 368 } 369 } 370 } 371 return true; 372 }); 373 } 374 return true; 375 }; 376 377 st.emit = function(event, data) { 378 var handler, i, len, ref, ref1, results; 379 ref1 = ((ref = st.handlers) != null ? ref[event] : void 0) || []; 380 results = []; 381 for (i = 0, len = ref1.length; i < len; i++) { 382 handler = ref1[i]; 383 results.push(handler(data)); 384 } 385 return results; 386 }; 387 388 st.formatNumber = function(value) { 389 if (value > 1000000) { 390 return (Math.round(10 * (value / 1000000)) / 10) + "m"; 391 } 392 if (value > 100000) { 393 return (Math.round(value / 1000)) + "k"; 394 } 395 if (value > 1000) { 396 return (Math.round(10 * (value / 1000)) / 10) + "k"; 397 } 398 return "" + value; 399 }; 400 401 st.getCookie = function(name) { 402 var values; 403 values = document.cookie.match("(^|;)\\s*" + name + "\\s*=\\s*([^;]+)"); 404 if (values) { 405 return values.pop(); 406 } 407 return null; 408 }; 409 410 st.getDescription = function() { 411 return st.getMeta(['og:description', 'twitter:description', 'description', 'Description']); 412 }; 413 414 st.getImage = function() { 415 return st.getMeta(['og:image:secure_url', 'og:image', 'twitter:image']); 416 }; 417 418 st.getMeta = function(types) { 419 var i, len, type; 420 for (i = 0, len = types.length; i < len; i++) { 421 type = types[i]; 422 if ((st.meta[type] != null) && typeof st.meta[type] !== 'object') { 423 return "" + st.meta[type]; 424 } 425 } 426 return ''; 427 }; 428 429 st.getScrollbarWidth = function() { 430 var inner, outer, scrollbar_width; 431 outer = document.createElement('div'); 432 outer.style.visibility = 'hidden'; 433 outer.style.width = '100px'; 434 outer.style.msOverflowStyle = 'scrollbar'; 435 outer.style.overflow = 'scroll'; 436 document.body.appendChild(outer); 437 inner = document.createElement('div'); 438 inner.style.width = '100%'; 439 outer.appendChild(inner); 440 scrollbar_width = outer.offsetWidth - inner.offsetWidth; 441 outer.parentNode.removeChild(outer); 442 return scrollbar_width; 443 }; 444 445 st.getScrollDepth = function() { 446 var body, body_height, de, depth, percentage, window_height; 447 de = document.documentElement; 448 body = document.body; 449 body_height = Math.max.apply(Math, [body.scrollHeight || 0, body.offsetHeight || 0, de.clientHeight || 0, de.scrollHeight || 0, de.offsetHeight || 0]); 450 window_height = st.getWindowSize().height; 451 depth = window.pageYOffset || (de || body.parentNode || body).scrollTop; 452 percentage = Math.floor(100 * (window_height + depth) / body_height); 453 return percentage; 454 }; 455 456 st.getShareLabel = function(network, language) { 457 var value; 458 if (language == null) { 459 language = 'en'; 460 } 461 value = ''; 462 switch (network) { 463 case 'blm':
464 value = st.i18n['Support BLM'][language]; 465 break; 466 case 'email': 467 value = st.i18n['email'][language]; 468 break; 469 case 'gmail': 470 value = st.i18n['gmail'][language]; 471 break; 472 case 'flipboard': 473 value = st.i18n['flip'][language]; 474 break; 475 case 'googlebookmarks': 476 value = st.i18n['bookmark'][language]; 477 break; 478 case 'pinterest': 479 value = st.i18n['pin'][language]; 480 break; 481 case 'print': 482 value = st.i18n['print'][language]; 483 break; 484 case 'snapchat': 485 value = st.i18n['snapchat'][language]; 486 break; 487 case 'twitter': 488 value = st.i18n['tweet'][language]; 489 break; 490 case 'yahoomail': 491 value = st.i18n['email'][language]; 492 break; 493 default: 494 value = st.i18n['share'][language]; 495 } 496 if (network === 'blm') { 497 return value; 498 } 499 return st.capitalize(value); 500 }; 501 502 st.getTitle = function() { 503 return st.getMeta(['og:title', 'twitter:title']) || document.title; 504 }; 505 506 st.getQuerystring = function(url) { 507 var a; 508 a = document.createElement('a'); 509 a.setAttribute('href', url); 510 return a.search; 511 }; 512 513 st.getWindowSize = function() { 514 var body, documentElement, innerHeight, innerWidth; 515 body = document.body, documentElement = document.documentElement; 516 innerHeight = window.innerHeight, innerWidth = window.innerWidth; 517 return { 518 height: innerHeight || documentElement.clientHeight || body.clientHeight, 519 width: innerWidth || documentElement.clientWidth || body.clientWidth 520 }; 521 }; 522 523 st.hasClass = function($el, name) { 524 var re; 525 re = new RegExp(name); 526 return re.test(($el.className || '').toLowerCase()); 527 }; 528 529 st.hasClassOrId = function($el, name) { 530 var i, len, re, ref, str; 531 re = new RegExp(name); 532 ref = [$el.className, $el.id]; 533 for (i = 0, len = ref.length; i < len; i++) { 534 str = ref[i]; 535 if (typeof str !== 'string') { 536 continue; 537 } 538 if (re.test((str || '').toLowerCase())) { 539 return true; 540 } 541 } 542 return false; 543 }; 544 545 st.hasCookies = (function() { 546 var has_cookies, key; 547 key = '__sharethis_cookie_test__'; 548 document.cookie = key + "=1;"; 549 has_cookies = document.cookie.indexOf(key) > -1; 550 document.cookie = key + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 551 return has_cookies; 552 })(); 553 554 st.hasLocalStorage = (function() { 555 var key; 556 key = '__sharethis_local_storage_test__'; 557 try { 558 localStorage.setItem(key, 'hello world'); 559 localStorage.removeItem(key); 560 return true; 561 } catch (error1) { 562 return false; 563 } 564 })(); 565 566 st.hem = function(data) { 567 var params; 568 st._hem = data; 569 if ((data == null) || (data.sha1 == null) || (data.sha256 == null) || (data.md5 == null)) { 570 return 'Not valid data input'; 571 } 572 params = { 573 hem_sha1: data.sha1, 574 hem_sha256: data.sha256, 575 hem_md5: data.md5 576 }; 577 st.send("https://sync.sharethis.com/powr/hem?" + st.qs(params)); 578 }; 579 580 st.hostname = function(url) { 581 var a; 582 if (url == null) { 583 url = st.href; 584 } 585 a = document.createElement('a'); 586 a.setAttribute('href', url); 587 return a.hostname; 588 }; 589 590 st.ibl = function() { 591 var blacklist, domain, hostname, href, i, len, protocol; 592 href = document.referrer; 593 if (href) { 594 hostname = st.hostname(href) || ''; 595 protocol = st.protocol(href) || ''; 596 if (protocol === 'android-app:') { 597 return true; 598 } 599 blacklist = ['aol', 'bing', 'bs.to', 'facebook', 'google', 'yahoo', 'yandex', document.location.hostname]; 600 for (i = 0, len = blacklist.length; i < len; i++) { 601 domain = blacklist[i]; 602 if (hostname.indexOf(domain) > -1) { 603 return true; 604 } 605 } 606 st.log({ 607 event: 'ibl', 608 title: "", 609 url: href 610 }); 611 } 612 return true; 613 }; 614 615 st.img = function(name) { 616 var alt; 617 if (!name) { 618 return; 619 } 620 alt = (name.replace('.svg', '').replace('.png', '')) + " sharing button"; 621 return "<img alt='" + alt + "' src='https://platform-cdn.sharethis.com/img/" + name + "' />"; 622 }; 623 624 st.incLocalStorageShares = function(network, count_url) { 625 var all_counts, network_count, ref, ref1, ref2, ref3, ref4, ref5, total; 626 all_counts = st.storage.get("st_shares_" + count_url); 627 if (all_counts) { 628 network_count = (((ref = all_counts[network]) != null ? ref.value : void 0) + 1) || 0;
629 total = (((ref1 = all_counts["total"]) != null ? ref1.value : void 0) + 1) || 0; 630 if ((ref2 = all_counts[network]) != null) { 631 ref2.value = network_count; 632 } 633 if ((ref3 = all_counts[network]) != null) { 634 ref3.label = st.formatNumber(network_count); 635 } 636 if ((ref4 = all_counts["total"]) != null) { 637 ref4.value = total; 638 } 639 if ((ref5 = all_counts["total"]) != null) { 640 ref5.label = st.formatNumber(total); 641 } 642 all_counts["update_time"] = Math.round(new Date() / 1000); 643 return st.storage.set("st_shares_" + count_url, all_counts); 644 } 645 }; 646 647 st.inc = function($el) { 648 var value; 649 value = st.parseNumber($el.innerText); 650 $el.innerText = st.formatNumber(value + 1); 651 st.addClass($el, 'st-grow'); 652 return setTimeout((function() { 653 return st.removeClass($el, 'st-grow'); 654 }), 400); 655 }; 656 657 st.isEnter = function(e) { 658 return e.which === 13 || e.keyCode === 13; 659 }; 660 661 st.isEsc = function(e) { 662 var ref; 663 return ((ref = e.key) === 'Escape' || ref === 'Esc') || e.keyCode === 27; 664 }; 665 666 st.isValidEmail = function(email) { 667 var re; 668 re = /[^\.\s@][^\s@]*(?!\.)@[^\.\s@]+(?:\.[^\.\s@]+)*/; 669 return re.test(email); 670 }; 671 672 st.js = function(url, id) { 673 var $el, first; 674 $el = document.createElement('script'); 675 $el.async = 1; 676 $el.src = url; 677 if (id) { 678 $el.id = id; 679 } 680 first = document.getElementsByTagName('script')[0]; 681 return first.parentNode.insertBefore($el, first); 682 }; 683 684 st.ldjson = (function() { 685 var el, i, item, len, raw; 686 el = document.querySelector('script[type="application/ld+json"]'); 687 if (el) { 688 try { 689 raw = JSON.parse(el.innerText); 690 if (!Array.isArray(raw)) { 691 raw = [raw]; 692 } 693 for (i = 0, len = raw.length; i < len; i++) { 694 item = raw[i]; 695 if (item["@type"] === "Product") { 696 if (item.offers && !Array.isArray(item.offers)) { 697 item.offers = [item.offers]; 698 } 699 if (item.brand) { 700 item.brand = item.brand.name || item.brand; 701 } 702 if (item.category && Array.isArray(item.category)) { 703 item.category = item.category.join(";"); 704 } 705 return item; 706 } 707 } 708 return null; 709 } catch (error1) { 710 711 } 712 } 713 return null; 714 })(); 715 716 st.loadPixel = function() { 717 var domain, rnd, src; 718 domain = window.location.hostname; 719 rnd = (new Date()).getTime(); 720 src = "https://t.sharethis.com/1/k/t.dhj?" + st.qs({ 721 cid: 'c010', 722 cls: 'B', 723 dmn: domain, 724 gdpr_consent: st.gdpr_consent, 725 gdpr_domain: st.gdpr_consent && st.gdpr_domain, 726 rnd: rnd 727 }); 728 return st.js(src, 'pxscrpt'); 729 }; 730 731 if (st.loader == null) { 732 st.loader = {}; 733 } 734 735 st.load = function(product, config) { 736 var base; 737 return typeof (base = st.loader)[product] === "function" ? base[product](config) : void 0; 738 }; 739 740 if (st.load_counts_cache == null) { 741 st.load_counts_cache = {}; 742 } 743 744 st.loadCounts = function(options, next) { 745 var base, ourl, ref, ref1, ref2; 746 if (!next) { 747 ref = [{}, options], options = ref[0], next = ref[1]; 748 } 749 if (options.url == null) { 750 options.url = st.href; 751 } 752 ourl = options.url; 753 if ((base = st.load_counts_cache)[ourl] == null) { 754 base[ourl] = { 755 callbacks: [next], 756 response: null, 757 status: 'init' 758 }; 759 } 760 if (((ref1 = st.load_counts_cache[ourl]) != null ? ref1.status : void 0) === 'complete') { 761 return next(st.load_counts_cache[ourl].response); 762 } 763 if (((ref2 = st.load_counts_cache[ourl]) != null ? ref2.status : void 0) === 'in-progress') { 764 return st.load_counts_cache[ourl].callbacks.push(next); 765 } 766 st.load_counts_cache[ourl].status = 'in-progress'; 767 return st.js("https://count-server.sharethis.com/v2.0/get_counts?" + st.qs({ 768 cb: "window.__sharethis__.cb", 769 url: ourl 770 })); 771 }; 772 773 st.cb = function(resp) { 774 var callback, clicks, counts, i, j, len, len1, local_count, network, ourl, reaction, reactions, ref, ref1, shares, total, update_time, value; 775 if (resp == null) { 776 resp = {}; 777 } 778 clicks = resp.clicks, ourl = resp.ourl, reactions = resp.reactions, shares = resp.shares, total = resp.total, update_time = resp.update_time; 779 counts = {}; 780 for (reaction in st.REACTIONS || {}) { 781 value = (reactions != null ? reactions[reaction] : void 0) || 0; 782 counts[reaction] = { 783 value: value, 784 label: st.formatNumber(value) 785 }; 786 } 787 ref = st.networks || []; 788 for (i = 0, len = ref.length; i < len; i++) { 789 network = ref[i]; 790 value = ((clicks != null ? clicks[network] : void 0) || 0) + ((shares != null ? shares[network] : void 0) || 0); 791 counts[network] = { 792 value: value, 793 label: st.formatNumber(value) 794 }; 795 } 796 counts['total'] = { 797 value: total, 798 label: st.formatNumber(total) 799 }; 800 counts["update_time"] = update_time; 801 local_count = st.storage.get("st_shares_" + ourl); 802 if (update_time < (local_count != null ? local_count.update_time : void 0)) { 803 counts = local_count; 804 } 805 st.load_counts_cache[ourl].response = counts; 806 st.load_counts_cache[ourl].status = 'complete'; 807 st.storage.set("st_shares_" + ourl, counts); 808 ref1 = st.load_counts_cache[ourl].callbacks; 809 for (j = 0, len1 = ref1.length; j < len1; j++) { 810 callback = ref1[j]; 811 callback(counts); 812 } 813 return st.load_counts_cache[ourl].callbacks = []; 814 }; 815 816 st.log = function(data, url) { 817 var log, ref; 818 if (url == null) { 819 url = "https://l.sharethis.com/log"; 820 } 821 log = function() { 822 var fpestid, page_info, ref, ref1, ref2, ref3, ref4, ref5, ref6, ref7; 823 data.fcmp = typeof window.__cmp === 'function'; 824 data.fcmpv2 = typeof window.__tcfapi === 'function'; 825 data.has_segmentio = typeof (window.analytics && window.analytics.identify) === 'function'; 826 data.product = st.product; 827 data.publisher = st.property; 828 data.account = st.account; 829 data.ssb = st.ssb; 830 data.refDomain = st.hostname(window.document.referrer); 831 data.refQuery = st.getQuerystring(window.document.referrer); 832 data.source = 'sharethis.js'; 833 if (data.title == null) { 834 data.title = st.getTitle(); 835 } 836 data.ts = Date.now(); 837 data.sop = true; 838 data.cms = st.cms; 839 data.gdpr_consent = st.gdpr_consent; 840 data.gdpr_domain = st.gdpr_domain; 841 data.gdpr_method = st.gdpr_method; 842 data.usprivacy = st.usprivacy; 843 fpestid = st.getCookie("fpestid");
844 try { 845 if (!fpestid) { 846 fpestid = localStorage.getItem("fpestid"); 847 } 848 } catch (error1) {} 849 if (fpestid) { 850 data.fpestid = fpestid; 851 } 852 if (data.description == null) { 853 data.description = st.getDescription(); 854 } 855 data.ua = (ref = st.ua_fields) != null ? ref.ua : void 0; 856 data.ua_full_version_list = (ref1 = st.ua_fields) != null ? ref1.ua_full_version_list : void 0; 857 data.ua_mobile = (ref2 = st.ua_fields) != null ? ref2.ua_mobile : void 0; 858 data.ua_model = (ref3 = st.ua_fields) != null ? ref3.ua_model : void 0; 859 data.ua_platform = (ref4 = st.ua_fields) != null ? ref4.ua_platform : void 0; 860 data.ua_platform_version = (ref5 = st.ua_fields) != null ? ref5.ua_platform_version : void 0; 861 page_info = ((ref6 = window.__stdos__) != null ? (ref7 = ref6.data) != null ? ref7.pageInfo : void 0 : void 0) || {}; 862 if (page_info.override) { 863 data.override = page_info.override; 864 } 865 return st.send(url + "?" + st.qs(data)); 866 }; 867 if (st != null ? (ref = st.consent_queue) != null ? ref.initialized : void 0 : void 0) { 868 log(); 869 return; 870 } 871 if (st.consent_queue == null) { 872 st.consent_queue = { 873 functions: [] 874 }; 875 } 876 return st.consent_queue.functions.push(log); 877 }; 878 879 st.logGoogleAnalyticsEvent = function(category, action, label) { 880 var _gaq, ga; 881 ga = window.ga, _gaq = window._gaq; 882 if (ga) { 883 return ga('send', 'event', category, action, label); 884 } else if (_gaq) { 885 return _gaq.push(['_trackEvent', category, action, label]); 886 } 887 }; 888 889 st.meta = (function() { 890 var el, i, item, j, k, key, len, len1, offer, ref, ref1, ref2, v; 891 item = {}; 892 ref = document.querySelectorAll("meta,[itemprop]"); 893 for (i = 0, len = ref.length; i < len; i++) { 894 el = ref[i]; 895 key = el.getAttribute('property') || el.getAttribute('name') || el.getAttribute('itemprop'); 896 if (key) { 897 if (item[key] == null) { 898 item[key] = el.getAttribute('content') || el.getAttribute("href") || el.innerText; 899 } 900 } 901 } 902 try { 903 if (st.ldjson) { 904 ref1 = st.ldjson; 905 for (k in ref1) { 906 v = ref1[k]; 907 if (item[k] == null) { 908 item[k] = v; 909 } 910 } 911 if (st.ldjson.offers) { 912 ref2 = st.ldjson.offers; 913 for (j = 0, len1 = ref2.length; j < len1; j++) { 914 offer = ref2[j]; 915 for (k in offer) { 916 v = offer[k]; 917 if (item[k] == null) { 918 item[k] = v; 919 } 920 } 921 } 922 } 923 } 924 } catch (error1) { 925 926 } 927 return item; 928 })(); 929 930 st.newElement = function(parent) { 931 var $el, id; 932 if (parent === void 0) { 933 parent = document.body; 934 } 935 $el = document.createElement('div'); 936 id = "st-el-" + (st.uid()); 937 $el.setAttribute('id', id); 938 if (parent) { 939 parent.appendChild($el); 940 } 941 return { 942 $el: $el, 943 id: id 944 }; 945 }; 946 947 st.obl = function(e) { 948 var href, prefix, ref; 949 if ((e != null ? (ref = e.target) != null ? ref.tagName : void 0 : void 0) === 'A') { 950 href = e.target.getAttribute('href') || ''; 951 prefix = href.slice(0, href.indexOf(':')); 952 if (href.slice(0, 4) === 'http' && e.target.hostname !== document.location.hostname) { 953 st.log({ 954 event: 'obl', 955 title: "", 956 url: href 957 }); 958 } 959 } 960 return true; 961 }; 962 963 st.omit = function(obj) { 964 var k, res, v; 965 res = {}; 966 for (k in obj) { 967 v = obj[k]; 968 if (v) { 969 res[k] = v; 970 } 971 } 972 return res; 973 }; 974 975 st.on = function(event, callback) { 976 var base; 977 if (st.handlers == null) { 978 st.handlers = []; 979 } 980 if ((base = st.handlers)[event] == null) { 981 base[event] = []; 982 } 983 return st.handlers[event].push(callback); 984 }; 985 986 st.open = function(url) { 987 var h, w, wh, ww; 988 if (!url) { 989 return; 990 } 991 if (st.mobile) { 992 return window.open(url, '_blank'); 993 } else if (url.indexOf('mailto:') > -1 || url.indexOf('viber') > -1) { 994 return document.location = url; 995 } else {
996 wh = st.getWindowSize().height; 997 ww = st.getWindowSize().width; 998 h = Math.min(600, .6 * wh); 999 w = Math.min(800, .8 * ww); 1000 return window.open(url, '', ["height=" + h, "left=" + ((ww - w) / 2), "top=" + ((wh - h) / 2), "width=" + w, 'status=1', 'toolbar=0'].join(',')); 1001 } 1002 }; 1003 1004 st.parseNumber = function(value) { 1005 var multiplier; 1006 multiplier = 1; 1007 if (value.indexOf('k') > -1) { 1008 multiplier = 1000; 1009 } 1010 if (value.indexOf('m') > -1) { 1011 multiplier = 1000000; 1012 } 1013 value = value.replace(/[km,]/g, ''); 1014 return multiplier * parseInt(value, 10) || 0; 1015 }; 1016 1017 st.position = function($el, container) { 1018 var _container, _el; 1019 if (container == null) { 1020 container = window; 1021 } 1022 _el = $el.getBoundingClientRect(); 1023 if (container === window) { 1024 return { 1025 left: _el.left + window.scrollX, 1026 top: _el.top + window.scrollY 1027 }; 1028 } else { 1029 _container = container.getBoundingClientRect(); 1030 return { 1031 left: _el.left - _container.left + container.scrollLeft, 1032 top: _el.top - _container.top + container.scrollTop 1033 }; 1034 } 1035 }; 1036 1037 st.protocol = function(url) { 1038 var a; 1039 if (url == null) { 1040 url = st.href; 1041 } 1042 a = document.createElement('a'); 1043 a.setAttribute('href', url); 1044 return a.protocol; 1045 }; 1046 1047 st.px = function(value) { 1048 if (typeof value === 'string') { 1049 return value; 1050 } 1051 return (Math.floor(value)) + "px"; 1052 }; 1053 1054 st.qs = function(params) { 1055 var k, v; 1056 return ((function() { 1057 var results; 1058 results = []; 1059 for (k in params) { 1060 v = params[k]; 1061 if (v != null) { 1062 results.push(k + "=" + (encodeURIComponent(v))); 1063 } 1064 } 1065 return results; 1066 })()).join('&'); 1067 }; 1068 1069 st.react = function(arg) { 1070 var reaction, url; 1071 reaction = arg.reaction, url = arg.url; 1072 if (url == null) { 1073 url = st.href; 1074 } 1075 st.logGoogleAnalyticsEvent('ShareThis', reaction, url); 1076 return st.log({ 1077 event: 'reaction', 1078 reactionType: reaction, 1079 url: url 1080 }); 1081 }; 1082 1083 st.remove = function($el) { 1084 if (!($el != null ? $el.parentNode : void 0)) { 1085 return; 1086 } 1087 return $el.parentNode.removeChild($el); 1088 }; 1089 1090 st.removeClass = function($el, name) { 1091 return $el.className = $el.className.replace(name, ''); 1092 }; 1093 1094 st.removeEventListener = function($el, event, callback) { 1095 if (!($el && event && callback)) { 1096 return; 1097 } 1098 if ($el.removeEventListener) { 1099 return $el.removeEventListener(event, callback, false); 1100 } else if ($el.detachEvent) { 1101 return $el.detachEvent("on" + event, callback); 1102 } else { 1103 return $el["on" + event] = null; 1104 } 1105 }; 1106 1107 st.send = function(resource, params, next) { 1108 var img; 1109 if (params) { 1110 resource = resource + "?" + (st.qs(params)); 1111 } 1112 img = new Image(1, 1); 1113 img.src = resource; 1114 img.onload = function() { 1115 return typeof next === "function" ? next(true) : void 0; 1116 }; 1117 return img.onerror = function() { 1118 return typeof next === "function" ? next(false) : void 0; 1119 }; 1120 }; 1121 1122 st.setCookie = function(name, value, days) { 1123 var date, expires; 1124 if (days) { 1125 date = new Date(); 1126 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 1127 expires = "; expires=" + (date.toGMTString()); 1128 } else { 1129 expires = ""; 1130 } 1131 return document.cookie = name + "=" + value + expires + "; path=/"; 1132 }; 1133 1134 st.share = function(config) { 1135 var channel_is_ssb, channels_displayed, copybutton, copymessage, count_url, description, hostname, image, is_android, is_ios, message, network, product, redirects, run, share_url, short_url, subject, title, url, username, wechat; 1136 if (config == null) { 1137 config = {}; 1138 } 1139 channel_is_ssb = config.channel_is_ssb, channels_displayed = config.channels_displayed, count_url = config.count_url, subject = config.subject, share_url = config.share_url, short_url = config.short_url, url = config.url, description = config.description, image = config.image, message = config.message, network = config.network, title = config.title, username = config.username; 1140 channel_is_ssb = false;
1141 if (channels_displayed == null) { 1142 channels_displayed = JSON.stringify([]); 1143 } 1144 count_url = count_url || url || st.href; 1145 if (description == null) { 1146 description = st.getDescription(); 1147 } 1148 if (image == null) { 1149 image = st.getImage(); 1150 } 1151 share_url = share_url || short_url || url || st.href; 1152 if (title == null) { 1153 title = st.getTitle(); 1154 } 1155 if (url == null) { 1156 url = count_url; 1157 } 1158 if (network === 'sharethis') { 1159 return st.load('share-all', { 1160 count_url: count_url, 1161 description: description, 1162 image: image, 1163 share_url: share_url, 1164 short_url: short_url, 1165 title: title, 1166 url: url, 1167 username: username 1168 }); 1169 } 1170 st.incLocalStorageShares(network, count_url); 1171 st.logGoogleAnalyticsEvent('ShareThis', network, count_url); 1172 st.log({ 1173 channel_is_ssb: channel_is_ssb, 1174 channels_displayed: channels_displayed, 1175 destinations: network, 1176 event: 'share', 1177 title: title, 1178 url: count_url 1179 }); 1180 st.emit('share', { 1181 count_url: count_url, 1182 description: description, 1183 image: image, 1184 message: message, 1185 share_url: share_url, 1186 title: title, 1187 url: url, 1188 username: username 1189 }); 1190 if (network === 'wechat') { 1191 if (st.mobile) { 1192 return st.load('share-wechat-mobile', { 1193 url: share_url 1194 }); 1195 } else { 1196 wechat = "https://api.qrserver.com/v1/create-qr-code/?" + st.qs({ 1197 size: "154x154", 1198 data: share_url 1199 }); 1200 st.open(wechat); 1201 } 1202 } 1203 if (network === 'print') { 1204 st.emit('print', { 1205 count_url: count_url, 1206 description: description, 1207 image: image, 1208 message: message, 1209 share_url: share_url, 1210 title: title, 1211 url: url, 1212 username: username 1213 }); 1214 return window.print(); 1215 } 1216 if (network === 'copy') { 1217 navigator.clipboard.writeText(window.location.href); 1218 copybutton = document.querySelector('div[data-network="copy"]'); 1219 if (copybutton) { 1220 copymessage = document.createElement('span'); 1221 copymessage.innerText = 'URL Copied!'; 1222 copymessage.className = 'copy-notify'; 1223 copymessage.style.opacity = '1'; 1224 copymessage.style.width = '100px'; 1225 copymessage.style.transition = 'all .6s'; 1226 copybutton.append(copymessage); 1227 run = function() { 1228 copymessage.style.opacity = '0'; 1229 copymessage.style.minWidth = '0'; 1230 copymessage.style.width = '0'; 1231 copymessage.style.padding = '0'; 1232 copymessage.style.overflow = 'hidden'; 1233 run = function() { 1234 return copymessage.remove(); 1235 }; 1236 return setTimeout(run, 1000); 1237 }; 1238 setTimeout(run, 1500); 1239 } 1240 } 1241 hostname = document.location.hostname; 1242 product = st.product; 1243 is_ios = /iPad|iPhone|iPod/.test(navigator.userAgent); 1244 is_android = /Android/i.test(navigator.userAgent); 1245 redirects = { 1246 blm: "https://secure.actblue.com/donate/ms_blm_homepage_2019", 1247 blogger: "https://www.blogger.com/blog-this.g?" + st.qs({ 1248 n: title, 1249 t: description, 1250 u: share_url 1251 }), 1252 bluesky: "https://bsky.app/intent/compose?" + st.qs({ 1253 text: title + ' url:' + share_url 1254 }), 1255 buffer: "https://buffer.com/add?" + st.qs({ 1256 text: title, 1257 url: share_url 1258 }), 1259 diaspora: "https://share.diasporafoundation.org/?" + st.qs({ 1260 title: title, 1261 url: share_url 1262 }), 1263 delicious: "https://del.icio.us/save?" + st.qs({ 1264 provider: 'sharethis', 1265 title: title, 1266 url: share_url, 1267 v: 5 1268 }), 1269 digg: "https://digg.com/submit?" + st.qs({ 1270 url: share_url 1271 }), 1272 diigo: "https://www.diigo.com/post?" + st.qs({ 1273 title: title, 1274 url: share_url 1275 }), 1276 douban: "http://www.douban.com/recommend/?" + st.qs({ 1277 title: title, 1278 url: share_url 1279 }), 1280 email: "mailto:?" + st.qs({
1281 subject: subject || "I'd like to share a link with you", 1282 body: message || ("" + url) 1283 }), 1284 evernote: "http://www.evernote.com/clip.action?" + st.qs({ 1285 title: title, 1286 url: share_url 1287 }), 1288 facebook: "https://www.facebook.com/sharer.php?" + st.qs({ 1289 t: title, 1290 u: share_url 1291 }), 1292 fark: "https://www.fark.com/submit?" + st.qs({ 1293 new_url: share_url 1294 }), 1295 flipboard: "https://share.flipboard.com/bookmarklet/popout?" + st.qs({ 1296 ext: 'sharethis', 1297 title: title, 1298 url: share_url, 1299 utm_campaign: 'widgets', 1300 utm_content: hostname, 1301 utm_source: 'sharethis', 1302 v: 2 1303 }), 1304 foursquare: 'https://foursquare.com/intent/venue/' + title, 1305 gab: "https://gab.com/compose?url=" + share_url, 1306 getpocket: "https://getpocket.com/edit?" + st.qs({ 1307 url: share_url 1308 }), 1309 gmail: "https://mail.google.com/mail/?view=cm&" + st.qs({ 1310 to: '', 1311 su: title, 1312 body: share_url, 1313 bcc: '', 1314 cc: '' 1315 }), 1316 goodreads: "https://www.goodreads.com/quotes?" + st.qs({ 1317 'quote[url]': share_url 1318 }), 1319 googlebookmarks: "https://www.google.com/bookmarks/mark?" + st.qs({ 1320 op: 'edit', 1321 bkmk: share_url, 1322 title: title, 1323 annotation: description 1324 }), 1325 hackernews: "https://news.ycombinator.com/submitlink?" + st.qs({ 1326 u: share_url, 1327 t: title 1328 }), 1329 houzz: "https://www.houzz.com/imageClipperUpload?" + st.qs({ 1330 link: share_url, 1331 source: 'link', 1332 hzid: '' 1333 }), 1334 instapaper: "http://www.instapaper.com/edit?" + st.qs({ 1335 url: share_url, 1336 title: title, 1337 description: description 1338 }), 1339 iorbix: "https://iorbix.com/m-share?" + st.qs({ 1340 url: share_url, 1341 title: title 1342 }), 1343 kakao: "https://story.kakao.com/share?" + st.qs({ 1344 url: share_url 1345 }), 1346 kindleit: "https://pushtokindle.fivefilters.org/send.php?" + st.qs({ 1347 url: share_url 1348 }), 1349 kooapp: "https://www.kooapp.com/create?" + st.qs({ 1350 title: title, 1351 link: share_url 1352 }), 1353 line: "https://lineit.line.me/share/ui?" + st.qs({ 1354 url: share_url, 1355 text: title || description 1356 }), 1357 linkedin: "https://www.linkedin.com/shareArticle?" + st.qs({ 1358 title: title, 1359 url: share_url 1360 }), 1361 livejournal: "https://www.livejournal.com/update.bml?" + st.qs({ 1362 event: share_url, 1363 subject: title 1364 }), 1365 mailru: "https://connect.mail.ru/share?" + st.qs({ 1366 share_url: share_url 1367 }), 1368 mailru: "https://connect.mail.ru/share?" + st.qs({ 1369 share_url: share_url 1370 }), 1371 meneame: "https://meneame.net/submit.php?" + st.qs({ 1372 url: share_url 1373 }), 1374 messenger: { 1375 "true": "fb-messenger://share/?" + st.qs({ 1376 link: share_url, 1377 app_id: 291494419107518 1378 }), 1379 "false": "https://www.facebook.com/dialog/send?" + st.qs({ 1380 link: share_url, 1381 app_id: 291494419107518, 1382 redirect_uri: "https://www.sharethis.com" 1383 }) 1384 }[st.mobile], 1385 microsoftteams: "https://teams.microsoft.com/l/entity/com.microsoft.teamspace.tab.url.share?" + st.qs({ 1386 webUrl: share_url, 1387 appName: title 1388 }), 1389 naver: "http://share.naver.com/web/shareView.nhn?" + st.qs({ 1390 url: share_url, 1391 title: title 1392 }), 1393 nextdoor: "https://nextdoor.com/sharekit/?" + st.qs({ 1394 source: share_url, 1395 body: title 1396 }), 1397 odnoklassniki: "https://connect.ok.ru/dk?" + st.qs({ 1398 'st.cmd': 'WidgetSharePreview', 1399 'st.shareUrl': share_url 1400 }), 1401 outlook: "https://outlook.live.com/mail/deeplink/compose?" + st.qs({ 1402 path: 'mail inbox', 1403 subject: subject || "I'd like to share a link with you", 1404 body: message || ("" + url) 1405 }), 1406 pinboard: "https://pinboard.in/add?" + st.qs({ 1407 url: share_url, 1408 title: title 1409 }), 1410 pinterest: "https://pinterest.com/pin/create/button/?" + st.qs({ 1411 description: title, 1412 media: image, 1413 url: share_url 1414 }), 1415 plurk: "http://www.plurk.com/?" + st.qs({ 1416 qualifier: 'shares', 1417 status: share_url 1418 }), 1419 qzone: "http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?" + st.qs({ 1420 url: share_url 1421 }), 1422 reddit: "https://reddit.com/submit?" + st.qs({ 1423 title: title, 1424 url: share_url 1425 }), 1426 refind: "https://refind.com?" + st.qs({ 1427 url: share_url 1428 }), 1429 renren: "http://widget.renren.com/dialog/share?" + st.qs({ 1430 resourceUrl: share_url, 1431 srcUrl: share_url, 1432 title: title, 1433 description: description || title 1434 }), 1435 skype: "https://web.skype.com/share?" + st.qs({ 1436 url: share_url, 1437 text: title 1438 }), 1439 sms: "sms:" + (is_ios ? '&' : '?') + "body=" + (encodeURIComponent(share_url)), 1440 snapchat: "https://snapchat.com/scan?" + st.qs({ 1441 attachmentUrl: share_url, 1442 utm_source: 'sharethis' 1443 }), 1444 surfingbird: "http://surfingbird.ru/share?" + st.qs({ 1445 url: share_url, 1446 description: description || title, 1447 title: title 1448 }), 1449 telegram: "https://t.me/share/url?" + st.qs({ 1450 url: share_url, 1451 text: title, 1452 to: '' 1453 }), 1454 tencentqq: "https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?" + st.qs({ 1455 url: share_url, 1456 title: title, 1457 summary: share_url, 1458 desc: description, 1459 pics: image 1460 }), 1461 threads: "https://threads.net/intent/post?" + st.qs({ 1462 text: share_url 1463 }), 1464 threema: "threema://compose?" + st.qs({ 1465 text: share_url, 1466 id: '' 1467 }), 1468 trello: "https://trello.com/add-card?" + st.qs({ 1469 mode: 'popup', 1470 url: share_url, 1471 desc: description || title 1472 }), 1473 tumblr: "https://www.tumblr.com/share?" + st.qs({ 1474 t: title, 1475 u: share_url, 1476 v: 3 1477 }), 1478 twitter: "https://twitter.com/intent/tweet?" + st.qs({ 1479 text: title || description, 1480 url: share_url, 1481 via: username 1482 }), 1483 vk: "https://vk.com/share.php?" + st.qs({ 1484 url: share_url 1485 }), 1486 viber: "viber://forward?" + st.qs({ 1487 text: share_url, 1488 url: 'viber' 1489 }), 1490 weibo: "http://service.weibo.com/share/share.php?" + st.qs({ 1491 title: title, 1492 url: share_url, 1493 pic: image 1494 }),
1495 whatsapp: (!st.mobile ? "https://web.whatsapp.com/send?" : "whatsapp://send?") + st.qs({ 1496 text: share_url 1497 }), 1498 wordpress: "http://wordpress.com/wp-admin/press-this.php?" + st.qs({ 1499 u: share_url, 1500 t: title, 1501 s: description || title, 1502 i: '' 1503 }), 1504 yahoomail: "http://compose.mail.yahoo.com/?" + st.qs({ 1505 to: '', 1506 subject: title, 1507 body: share_url 1508 }), 1509 yummly: "https://www.yummly.com/urb/verify?" + st.qs({ 1510 url: share_url, 1511 title: title, 1512 urbtype: 'bookmarklet', 1513 type: 'agg', 1514 vendor: 'sharethis', 1515 image: image 1516 }), 1517 xing: "https://www.xing.com/app/user?" + st.qs({ 1518 op: 'share', 1519 title: title, 1520 url: share_url 1521 }) 1522 }; 1523 return st.open(redirects[network]); 1524 }; 1525 1526 st.follow = (function(_this) { 1527 return function(config) { 1528 var follow_url, network, url; 1529 if (config == null) { 1530 config = {}; 1531 } 1532 follow_url = config.follow_url, network = config.network, url = config.url; 1533 if (url == null) { 1534 url = st.href; 1535 } 1536 st.log({ 1537 destinations: network, 1538 event: 'follow', 1539 followUrl: follow_url, 1540 url: url 1541 }); 1542 return window.open(follow_url, '_blank'); 1543 }; 1544 })(this); 1545 1546 st.storage = { 1547 get: function(key) { 1548 if (st.hasLocalStorage) { 1549 try { 1550 return JSON.parse(localStorage.getItem(key)); 1551 } catch (error1) {} 1552 } 1553 if (st.hasCookies) { 1554 return st.getCookie(key); 1555 } 1556 return st.get(key); 1557 }, 1558 set: function(key, value) { 1559 if (st.hasLocalStorage) { 1560 return localStorage.setItem(key, JSON.stringify(value)); 1561 } 1562 if (st.hasCookies) { 1563 return st.setCookie(key, value); 1564 } 1565 return st.set(key, value); 1566 } 1567 }; 1568 1569 st.svg = function(paths, size) { 1570 var d; 1571 if (size == null) { 1572 size = 40; 1573 } 1574 if (typeof paths === 'string') { 1575 paths = [paths]; 1576 } 1577 return "<svg fill=\"#fff\" preserveAspectRatio=\"xMidYMid meet\" height=\"1em\" width=\"1em\" viewBox=\"0 0 " + size + " " + size + "\">\n <g>\n " + (((function() { 1578 var i, len, results; 1579 results = []; 1580 for (i = 0, len = paths.length; i < len; i++) { 1581 d = paths[i]; 1582 results.push("<path d='" + d + "'></path>"); 1583 } 1584 return results; 1585 })()).join('')) + "\n </g>\n</svg>"; 1586 }; 1587 1588 st.toggleClass = function($el, name) { 1589 if (st.hasClass($el, name)) { 1590 return st.removeClass($el, name); 1591 } else { 1592 return st.addClass($el, name); 1593 } 1594 }; 1595 1596 st.filterInvalidNetworks = function(networks, valid) { 1597 var n; 1598 if (valid == null) { 1599 valid = st.networks; 1600 } 1601 return (function() { 1602 var i, len, results; 1603 results = []; 1604 for (i = 0, len = networks.length; i < len; i++) { 1605 n = networks[i]; 1606 if (valid.indexOf(n) !== -1) { 1607 results.push(n); 1608 } 1609 } 1610 return results; 1611 })(); 1612 }; 1613 1614 st.tcfapi_listener = (function() { 1615 var interval, start; 1616 start = Date.now(); 1617 return interval = setInterval((function() { 1618 var e; 1619 if (window.__tcfapi) { 1620 try { 1621 window.__tcfapi("addEventListener", 2, function(data) { 1622 if ((data != null ? data.eventStatus : void 0) === "useractioncomplete") { 1623 st.gdpr_consent = data.tcString; 1624 st.gdpr_domain = data.isServiceSpecific ? document.location.hostname : ".sharethis.com"; 1625 st.gdpr_method = "api"; 1626 return st.log({ 1627 event: "updated_consent", 1628 pview_had_consent: st.pview_had_consent 1629 }); 1630 } 1631 }); 1632 } catch (error1) { 1633 e = error1; 1634 } 1635 clearInterval(interval); 1636 } 1637 if (Date.now() - start > 10000) { 1638 return clearInterval(interval); 1639 } 1640 }), 1000); 1641 })(); 1642 1643 st.floc = function() { 1644 var error; 1645 try { 1646 if (document.interestCohort) { 1647 return document.interestCohort().then(function(cohort) { 1648 if (cohort) { 1649 return st.log({ 1650 event: 'floc', 1651 floc: JSON.stringify(cohort) 1652 }); 1653 } 1654 }); 1655 } 1656 } catch (error1) { 1657 error = error1; 1658 } 1659 }; 1660 1661 1662 /* 1663 * Add Listeners 1664 */ 1665 1666 st.addEventListener(document, "click", st.obl); 1667 1668 st.addEventListener(document, "copy", st.copy); 1669 1670}).call(this); 1671 1672(function(){ 1673 st = window.__sharethis__ 1674 1675 st.CustomColor = class CustomColor {
1676 constructor(r, g, b) { 1677 this.set(r, g, b); 1678 } 1679 1680 toString() { 1681 return `rgb(${Math.round(this.r)}, ${Math.round(this.g)}, ${Math.round(this.b)})`; 1682 } 1683 1684 set(r, g, b) { 1685 this.r = this.clamp(r); 1686 this.g = this.clamp(g); 1687 this.b = this.clamp(b); 1688 } 1689 1690 hueRotate(angle = 0) { 1691 angle = angle / 180 * Math.PI; 1692 const sin = Math.sin(angle); 1693 const cos = Math.cos(angle); 1694 1695 this.multiply([ 1696 0.213 + cos * 0.787 - sin * 0.213, 1697 0.715 - cos * 0.715 - sin * 0.715, 1698 0.072 - cos * 0.072 + sin * 0.928, 1699 0.213 - cos * 0.213 + sin * 0.143, 1700 0.715 + cos * 0.285 + sin * 0.140, 1701 0.072 - cos * 0.072 - sin * 0.283, 1702 0.213 - cos * 0.213 - sin * 0.787, 1703 0.715 - cos * 0.715 + sin * 0.715, 1704 0.072 + cos * 0.928 + sin * 0.072, 1705 ]); 1706 } 1707 1708 grayscale(value = 1) { 1709 this.multiply([ 1710 0.2126 + 0.7874 * (1 - value), 1711 0.7152 - 0.7152 * (1 - value), 1712 0.0722 - 0.0722 * (1 - value), 1713 0.2126 - 0.2126 * (1 - value), 1714 0.7152 + 0.2848 * (1 - value), 1715 0.0722 - 0.0722 * (1 - value), 1716 0.2126 - 0.2126 * (1 - value), 1717 0.7152 - 0.7152 * (1 - value), 1718 0.0722 + 0.9278 * (1 - value), 1719 ]); 1720 } 1721 1722 sepia(value = 1) { 1723 this.multiply([ 1724 0.393 + 0.607 * (1 - value), 1725 0.769 - 0.769 * (1 - value), 1726 0.189 - 0.189 * (1 - value), 1727 0.349 - 0.349 * (1 - value), 1728 0.686 + 0.314 * (1 - value), 1729 0.168 - 0.168 * (1 - value), 1730 0.272 - 0.272 * (1 - value), 1731 0.534 - 0.534 * (1 - value), 1732 0.131 + 0.869 * (1 - value), 1733 ]); 1734 } 1735 1736 saturate(value = 1) { 1737 this.multiply([ 1738 0.213 + 0.787 * value, 1739 0.715 - 0.715 * value, 1740 0.072 - 0.072 * value, 1741 0.213 - 0.213 * value, 1742 0.715 + 0.285 * value, 1743 0.072 - 0.072 * value, 1744 0.213 - 0.213 * value, 1745 0.715 - 0.715 * value, 1746 0.072 + 0.928 * value, 1747 ]); 1748 } 1749 1750 multiply(matrix) { 1751 const newR = this.clamp(this.r * matrix[0] + this.g * matrix[1] + this.b * matrix[2]); 1752 const newG = this.clamp(this.r * matrix[3] + this.g * matrix[4] + this.b * matrix[5]); 1753 const newB = this.clamp(this.r * matrix[6] + this.g * matrix[7] + this.b * matrix[8]); 1754 this.r = newR; 1755 this.g = newG; 1756 this.b = newB; 1757 } 1758 1759 brightness(value = 1) { 1760 this.linear(value); 1761 } 1762 contrast(value = 1) { 1763 this.linear(value, -(0.5 * value) + 0.5); 1764 } 1765 1766 linear(slope = 1, intercept = 0) { 1767 this.r = this.clamp(this.r * slope + intercept * 255); 1768 this.g = this.clamp(this.g * slope + intercept * 255); 1769 this.b = this.clamp(this.b * slope + intercept * 255); 1770 } 1771 1772 invert(value = 1) { 1773 this.r = this.clamp((value + this.r / 255 * (1 - 2 * value)) * 255); 1774 this.g = this.clamp((value + this.g / 255 * (1 - 2 * value)) * 255); 1775 this.b = this.clamp((value + this.b / 255 * (1 - 2 * value)) * 255); 1776 } 1777 1778 hsl() { 1779 // Code taken from https://stackoverflow.com/a/9493060/2688027, licensed under CC BY-SA. 1780 const r = this.r / 255; 1781 const g = this.g / 255; 1782 const b = this.b / 255; 1783 const max = Math.max(r, g, b); 1784 const min = Math.min(r, g, b); 1785 let h, s, l = (max + min) / 2; 1786 1787 if (max === min) { 1788 h = s = 0; 1789 } else { 1790 const d = max - min; 1791 s = l > 0.5 ? d / (2 - max - min) : d / (max + min); 1792 switch (max) { 1793 case r: 1794 h = (g - b) / d + (g < b ? 6 : 0); 1795 break; 1796 1797 case g: 1798 h = (b - r) / d + 2; 1799 break; 1800 1801 case b: 1802 h = (r - g) / d + 4; 1803 break; 1804 } 1805 h /= 6; 1806 } 1807 1808 return { 1809 h: h * 100, 1810 s: s * 100, 1811 l: l * 100, 1812 }; 1813 } 1814 1815 clamp(value) { 1816 if (value > 255) { 1817 value = 255; 1818 } else if (value < 0) { 1819 value = 0; 1820 } 1821 return value; 1822 } 1823 } 1824 1825 st.Solver = class Solver { 1826 constructor(target, baseColor) { 1827 this.target = target; 1828 this.targetHSL = target.hsl(); 1829 this.reusedColor = new st.CustomColor(0, 0, 0); 1830 } 1831 1832 solve() { 1833 const result = this.solveNarrow(this.solveWide()); 1834 return { 1835 values: result.values, 1836 loss: result.loss, 1837 filter: this.css(result.values), 1838 }; 1839 } 1840 1841 solveWide() { 1842 const A = 5; 1843 const c = 15; 1844 const a = [60, 180, 18000, 600, 1.2, 1.2]; 1845 1846 let best = { loss: Infinity }; 1847 for (let i = 0; best.loss > 25 && i < 3; i++) { 1848 const initial = [50, 20, 3750, 50, 100, 100]; 1849 const result = this.spsa(A, a, c, initial, 1000); 1850 if (result.loss < best.loss) { 1851 best = result; 1852 } 1853 } 1854 return best; 1855 } 1856 1857 solveNarrow(wide) { 1858 const A = wide.loss; 1859 const c = 2; 1860 const A1 = A + 1; 1861 const a = [0.25 * A1, 0.25 * A1, A1, 0.25 * A1, 0.2 * A1, 0.2 * A1]; 1862 return this.spsa(A, a, c, wide.values, 500); 1863 } 1864 1865 spsa(A, a, c, values, iters) {
1866 const alpha = 1; 1867 const gamma = 0.16666666666666666; 1868 1869 let best = null; 1870 let bestLoss = Infinity; 1871 const deltas = new Array(6); 1872 const highArgs = new Array(6); 1873 const lowArgs = new Array(6); 1874 1875 for (let k = 0; k < iters; k++) { 1876 const ck = c / Math.pow(k + 1, gamma); 1877 for (let i = 0; i < 6; i++) { 1878 deltas[i] = Math.random() > 0.5 ? 1 : -1; 1879 highArgs[i] = values[i] + ck * deltas[i]; 1880 lowArgs[i] = values[i] - ck * deltas[i]; 1881 } 1882 1883 const lossDiff = this.loss(highArgs) - this.loss(lowArgs); 1884 for (let i = 0; i < 6; i++) { 1885 const g = lossDiff / (2 * ck) * deltas[i]; 1886 const ak = a[i] / Math.pow(A + k + 1, alpha); 1887 values[i] = fix(values[i] - ak * g, i); 1888 } 1889 1890 const loss = this.loss(values); 1891 if (loss < bestLoss) { 1892 best = values.slice(0); 1893 bestLoss = loss; 1894 } 1895 } 1896 return { values: best, loss: bestLoss }; 1897 1898 function fix(value, idx) { 1899 let max = 100; 1900 if (idx === 2 /* saturate */) { 1901 max = 7500; 1902 } else if (idx === 4 /* brightness */ || idx === 5 /* contrast */) { 1903 max = 200; 1904 } 1905 1906 if (idx === 3 /* hue-rotate */) { 1907 if (value > max) { 1908 value %= max; 1909 } else if (value < 0) { 1910 value = max + value % max; 1911 } 1912 } else if (value < 0) { 1913 value = 0; 1914 } else if (value > max) { 1915 value = max; 1916 } 1917 return value; 1918 } 1919 } 1920 1921 loss(filters) { 1922 // Argument is array of percentages. 1923 const color = this.reusedColor; 1924 color.set(0, 0, 0); 1925 1926 color.invert(filters[0] / 100); 1927 color.sepia(filters[1] / 100); 1928 color.saturate(filters[2] / 100); 1929 color.hueRotate(filters[3] * 3.6); 1930 color.brightness(filters[4] / 100); 1931 color.contrast(filters[5] / 100); 1932 1933 const colorHSL = color.hsl(); 1934 return ( 1935 Math.abs(color.r - this.target.r) + 1936 Math.abs(color.g - this.target.g) + 1937 Math.abs(color.b - this.target.b) + 1938 Math.abs(colorHSL.h - this.targetHSL.h) + 1939 Math.abs(colorHSL.s - this.targetHSL.s) + 1940 Math.abs(colorHSL.l - this.targetHSL.l) 1941 ); 1942 } 1943 1944 css(filters) { 1945 function fmt(idx, multiplier = 1) { 1946 if (idx == 0) { 1947 return Math.round(100 - (filters[idx] * multiplier)) 1948 } 1949 return Math.round(filters[idx] * multiplier); 1950 } 1951 return `filter: invert(${fmt(0)}%) sepia(${fmt(1)}%) saturate(${fmt(2)}%) hue-rotate(${fmt(3, 3.6)}deg) brightness(${fmt(4)}%) contrast(${fmt(5)}%);`; 1952 } 1953 } 1954 1955})(); 1956 1957(function() { 1958 var st; 1959 1960 st = window.__sharethis__; 1961 1962 st.hexToRgb = function(hex) { 1963 var result, shorthandRegex; 1964 if (!hex) { 1965 return; 1966 } 1967 if (typeof hex !== 'string') { 1968 return 'Wrong type input'; 1969 } 1970 shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; 1971 hex = hex.replace(shorthandRegex, (function(_this) { 1972 return function(m, r, g, b) { 1973 return r + r + g + g + b + b; 1974 }; 1975 })(this)); 1976 result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); 1977 if (result) { 1978 return [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)]; 1979 } 1980 }; 1981 1982 st.getFilter = function(rgb_hex) { 1983 var color, result, rgb, solver; 1984 rgb = st.hexToRgb(rgb_hex); 1985 if (!rgb) { 1986 return 'Invalid hex'; 1987 } 1988 if (rgb.length !== 3) { 1989 return 'Invalid hex format!'; 1990 } 1991 color = new st.CustomColor(rgb[0], rgb[1], rgb[2]); 1992 solver = new st.Solver(color); 1993 result = solver.solve(); 1994 return result.filter.split(': ')[1]; 1995 }; 1996 1997}).call(this); 1998 1999(function(a,b){window.__sharethis__.mobile = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
1999sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))})(navigator.userAgent||navigator.vendor||window.opera); 2000 2001(function(){ 2002 window.__sharethis__.is_ie = /(MSIE|Trident|Edge)/i.test(navigator.userAgent); 2003 window.__sharethis__.is_ie8 = /MSIE 8/i.test(navigator.userAgent); 2004})(); 2005 2006/** 2007 * none: https://goop.com/wellness/ 2008 * anchor.fm: https://www.podcastinsights.com/podcast-embed-players/ 2009 * consensu.org: 2010 * embed.ly: https://embed.ly/code?url=http%3A%2F%2Fgoogle.com 2011 * gfycat: https://developers.gfycat.com/iframe/#gfycat-iframe 2012 * giphy: https://giphy.com/posts/how-to-embed-giphy-gifs-on-your-website 2013 * imgur: https://help.imgur.com/hc/en-us/articles/211273743-Embed-Unit 2014 * instagram: https://www.bbc.com/news/uk-wales-51311320 2015 * megaphone: https://www.podcastinsights.com/podcast-embed-players/ 2016 * reddit: https://redditblog.com/2017/06/14/why-publishers-should-use-reddit-embeds/ 2017 * redditmedia: https://redditblog.com/2017/06/14/why-publishers-should-use-reddit-embeds/ 2018 * soundcloud: https://en.support.wordpress.com/soundcloud-audio-player/ 2019 * spotify: https://www.usmagazine.com/entertainment/news/kim-kardashian-north-asks-if-she-can-visit-prisons-with-me/ 2020 * tiktok: https://jezebel.com/15-tiktoks-that-deserve-academy-awards-1838371668 2021 * twitch: https://www.dexerto.com/entertainment/top-10-most-viewed-twitch-clips-of-all-time-2-310900 2022 * twitter: https://time.com/4128887/kobe-bryant-retirement-celebrities-reaction/ 2023 * vimeo: https://vimeo.zendesk.com/hc/en-us/articles/224969968-Embedding-videos-overview 2024 * youtube: https://electricbikereview.com/gocycle/gs/ 2025 */ 2026 2027/** 2028 * anchor.fm 2029 * tags: iframe 2030 * format: anchor.fm/{content}/embed 2031 * suggestions: add requirement for iframe 2032 */ 2033 2034/** 2035 * facebook.com 2036 * tags: iframe 2037 * format: facebook.com/plugins/{plugin_type} 2038 * exclude: /plugins/like, /plugins/page, /plugins/comment, /plugins/group, /plugins/follow, /plugins/customerchat, /plugins/messenger_checkbox, /plugins/send_to_messenger 2039 * require: /plugins/post, /plugins/video, /plugins/share_button 2040 * even though rhombus collects plugins/share_button i'm not sold we should, doesn't seem to embed to any outside content 2041 * suggestions: add requirement for iframe and update exclude/require statements 2042 */ 2043 2044/** 2045 * gfycat.com 2046 * tags: iframe 2047 * format: gfycat.com/ifr 2048 * suggestions: add requirement for iframe 2049 */ 2050 2051/** 2052 * giphy.com 2053 * tags: iframe 2054 * format: giphy.com/embed 2055 * questions: what happens when we remove the requirement for /embed and introduce a requirement for iframe? 2056 * suggestions: add requirement for iframe 2057 */ 2058 2059/** 2060 * imgur.com 2061 * tags: iframe 2062 * format: imgur.com/{hash}/embed 2063 * suggestions: add requirement for iframe 2064 */ 2065 2066/** 2067 * instagram.com 2068 * tags: iframe, blockquote 2069 * format: www.instagram.com/p 2070 * questions: what happens when we remove the requirement for /p and introduce a requirement for iframe and blockquote? 2071 * suggestions: add requirement for either iframe or blockquote 2072 */ 2073 2074/** 2075 * megaphone.fm 2076 * tags: iframe 2077 * format: player.megaphone.fm 2078 * questions: what happens when we remove the requirement for player and introduce a requirement for iframe? 2079 * suggestions: add requirement for iframe 2080 */ 2081 2082/** 2083 * redditmedia.com 2084 * it's difficult to find any records with redditmedia.com embeds 2085 * we may want to remove the requirment for /r and also look for reddit.com 2086 * suggestions: add requirement for iframe, remove requirement for /r 2087 */ 2088 2089/** 2090 * soundcloud.com 2091 * tags: iframe 2092 * format: w.soundcloud.com/player 2093 * questions: whats happens when we remove the requirement for /player and introduce a requirement for iframe? 2094 * suggestions: add requirement for iframe 2095 */ 2096 2097/** 2098 * spotify.com 2099 * tags: iframe 2100 * format: open.spotify.com/{endpoint} 2101 * exlude: /follow 2102 * require: /embed 2103 * suggestions: add requirement for iframe and update exclude/require statements 2104 */ 2105 2106/** 2107 * tiktok.com 2108 * tags: iframe 2109 * format: tiktok.com/embed/ 2110 * questions: what happens when we remove the requirement for /embed and introduce a requirement for iframe? 2111 * suggestions: add requirement for iframe 2112 */ 2113 2114/** 2115 * twitch.tv 2116 * tags: iframe 2117 * format: clips.twitch.tv/embed 2118 * questions: what happens when we remove the requirement for clips and introduce a requirement for iframe? 2119 * suggestions: add requirement for iframe 2120 */ 2121 2122/** 2123 * twitter.com 2124 * tags: div, blockquote 2125 * format: twitter.com/{user}/status 2126 * questions: this one is difficult because twitter doesn't use iframes (at least in the data we collected) 2127 * questions: it looks like for every embed we pull identical srcs from a div and blockquote 2128 * questions: we probably only need to pull just div 2129 * questions: what happens when we remove the /status requirement? 2130 * suggestions: add requirement for div 2131 */ 2132 2133/** 2134 * vimeo.com 2135 * tags: iframe 2136 * format: player.vimeo.com/video 2137 * questions: what happens when we remove the player requirement and introduce a requirement for iframe? 2138 * suggestions: add requirement for iframe 2139 */ 2140 2141/** 2142 * youtube.com 2143 * tags: iframe 2144 * format: youtube.com/embed 2145 * questions: what happens when we remove the requirement for /embed and introduce a requirement for iframe? 2146 * suggestions: add requirement for iframe 2147 */ 2148 2149// service list 2150var st = window.__sharethis__ || {}; 2151st.getEmbeds = function (next) { 2152 2153 var selectors = [ 2154 '.embed-twitter', 2155 '.embedly-card', 2156 '.fb-post', 2157 '.fb-video', 2158 '.instagram-media', 2159 '.reddit', 2160 '.reddit-card', 2161 '.rm-shortcode', 2162 '.spotify', 2163 '.tumblr-embed', 2164 '.twitter-embed', 2165 '.twitter-follow', 2166 '.twitter-tweet', 2167 '.twitter-video', 2168 '.twitter-widget', 2169 'embed', 2170 'iframe', 2171 '[class^="PIN"]' 2172 ]; 2173 2174 var config = [ 2175 { type: "audio", url: "anchor.fm" }, 2176 { type: "audio", url: "open.spotify.com/embed" }, 2177 { type: "audio", url: "player.megaphone.fm" }, 2178 { type: "audio", url: "playlist.megaphone.fm" }, 2179 { type: "audio", url: "w.soundcloud.com" }, 2180 { type: "image", url: "gfycat.com" }, 2181 { type: "image", url: "giphy.com/embed" }, 2182 { type: "image", url: "imgur.com" }, 2183 { type: "image", url: /(pinterest.com\/pin\/\d+\/)(?!.\S)/, span: true }, 2184 { type: "post", url: "facebook.com/plugins/post" }, 2185 { type: "post", url: "instagram.com/p", blockquote: true }, 2186 { type: "post", url: "linkedin.com/embed" }, 2187 { type: "post", url: "embed.tumblr.com/embed/post" }, 2188 { type: "post", url: /twitter.com\/.*\/status\/[0-9]+$/, blockquote: true }, 2189 { type: "video", url: /facebook.com\/.[^\/]*\/plugins\/video/ }, 2190 { type: "video", url: "facebook.com/plugins/video" }, 2191 { type: "video", url: /tiktok.com\/.[^\/]*\/video/, blockquote: true }, 2192 { type: "video", url: "player.vimeo.com" }, 2193 { type: "video", url: "youtube.com/embed" }, 2194 { type: "video", url: "clips.twitch.tv" }, 2195 { type: "video", url: "player.twitch.tv" } 2196 ]; 2197 2198 var sources = [ 2199 'cite', 2200 'data-click-to-open-target', 2201 'data-href', 2202 'data-instgrm-permalink', 2203 'data-lazy-src', 2204 'data-permalink', 2205 'data-pin-href', 2206 'data-src', 2207 'data-src-2x', 2208 'href', 2209 'src' 2210 ]; 2211 2212 // returns false if element is not an embed 2213 function getEmbedRule(tag, url) { 2214 // ensure the url has a proper prefix 2215 if (url.indexOf('http') != 0 && url.indexOf('//') != 0) { 2216 return false;
2217 } 2218 for (var i in config) { 2219 var rule = config[i]; 2220 var match = url.match(rule.url); 2221 if (match && match.length) { 2222 if (tag == 'iframe' || rule[tag]) { 2223 return rule; 2224 } 2225 return false; 2226 } 2227 } 2228 return false; 2229 } 2230 2231 // find elements 2232 var embeds = {}; 2233 var embed_els = document.querySelectorAll(selectors.join(',')); 2234 for (var i = 0; i < embed_els.length; i++) { 2235 var embed_el = embed_els[i]; 2236 try { 2237 var container = embed_el.shadowRoot || embed_el.parentElement; 2238 // find a valid url 2239 for (var j = 0; j < sources.length; j++) { 2240 var source = sources[j]; 2241 var source_els = container.querySelectorAll("[" + source + "]"); 2242 for (var k = 0; k < source_els.length; k++) { 2243 var source_el = source_els[k]; 2244 var tag = source_el.tagName.toLowerCase(); 2245 if (tag == 'iframe' || tag == 'blockquote' || tag == 'span') { 2246 var url = source_el.getAttribute(source); 2247 var rule = getEmbedRule(tag, url); 2248 if (rule) { 2249 if (url[url.length - 1] == '/') { 2250 url = url.substring(0, url.length - 1); 2251 } 2252 embeds[url] = { el: source_el, type: rule.type }; 2253 } 2254 } 2255 } 2256 } 2257 } 2258 catch (err) { 2259 } 2260 } 2261 2262 // gather output 2263 var result = []; 2264 for (var url in embeds) { 2265 if (next) { 2266 next(embeds[url].el, embeds[url].type, url); 2267 } 2268 result.push(url); 2269 } 2270 2271 return result; 2272} 2273st.embeds = st.getEmbeds(); 2274 2275(function() { 2276 window.__sharethis__.COLORS = { 2277 airbnb: '#FF5A5F', 2278 amazon: '#FFB300', 2279 bandcamp: '#1ca0c3', 2280 behance: '#135bf3', 2281 bitbucket: '#2584ff', 2282 blogger: '#ff8000', 2283 blm: '#000000', 2284 bluesky: '#097AFE', 2285 buffer: '#323B43', 2286 copy: '#14682B', 2287 delicious: '#205cc0', 2288 deviantart: '#21ce4e', 2289 diaspora: '#000000', 2290 discord: "#8c9eff", 2291 digg: '#262626', 2292 diigo: '#5285c4', 2293 douban: '#2E963D', 2294 dribbble: '#e44786', 2295 email: '#7d7d7d', 2296 evernote: '#5BA525', 2297 etsy: '#E67E22', 2298 facebook: '#4267B2', 2299 fark: '#6a6a9c', 2300 flickr: '#ff0084', 2301 flipboard: '#e12828', 2302 foursquare: '#0732A2', 2303 gab: '#1acf79', 2304 getpocket: '#ef4056', 2305 gitlab: '#ff492c', 2306 gmail: '#D44638', 2307 goodreads: '#382110', 2308 googlebookmarks: '#4285F4', 2309 googlemaps: '#4185f3', 2310 github: '#333333', 2311 hackernews: '#ff4000', 2312 houzz: '#4DBC15', 2313 instagram: '#bc2a8d', 2314 instapaper: '#000000', 2315 iorbix: '#364447', 2316 kakao: '#F9DD4A', 2317 kindleit: '#363C3D', 2318 kooapp: '#FACD00', 2319 line: '#00c300', 2320 linkedin: '#0077b5', 2321 livejournal: '#00b0ea', 2322 mailru: '#168de2', 2323 medium: '#333333', 2324 meetup: '#e61b3e', 2325 meneame: '#ff6400', 2326 messenger: '#448AFF', 2327 microsoftteams: '#515bc1', 2328 mix: '#ff8226', 2329 naver: '#07bc5e', 2330 nextdoor: '#8ed500', 2331 odnoklassniki: '#d7772d', 2332 outlook: '#3070CB', 2333 patreon: '#F96854', 2334 pinboard: '#1f36f2', 2335 pinterest: '#CB2027', 2336 plurk: '#FF574D', 2337 print: '#222222', 2338 qzone: '#F1C40F', 2339 quora: '#a62100', 2340 refind: '#4286f4', 2341 reddit: '#ff4500', 2342 renren: '#005baa', 2343 sharethis: '#95D03A', 2344 shares: '#0eb2b2', 2345 skype: '#00aff0', 2346 sms: '#ffbd00', 2347 snapchat: '#fffc00', 2348 slideshare: '#057eb0', 2349 soundcloud: '#ff8800', 2350 spotify: '#1ED760', 2351 stackoverflow: '#c66516', 2352 surfingbird: '#6dd3ff', 2353 telegram: '#0088cc', 2354 tencentqq: '#5790F7', 2355 threads: '#000000', 2356 threema: '#000000', 2357 trello: '#0D63DE', 2358 tiktok: '#4c4c4c', 2359 tripadvisor: '#1ABC9C', 2360 tumblr: '#32506d', 2361 twitch: '#6441A4', 2362 twitter: '#000000', 2363 vk: '#4c6c91', 2364 viber: '#645EA4', 2365 vimeo: '#29B6F6', 2366 wechat: '#4EC034', 2367 weibo: '#ff9933', 2368 whatsapp: '#25d366', 2369 wordpress: '#21759b', 2370 xing: '#1a7576', 2371 yelp: '#d32323', 2372 youtube: '#FF0000', 2373 yahoomail: '#720e9e', 2374 yummly: '#E16120', 2375 zillow: '#006aff', 2376 zomato: '#e23844' 2377 }; 2378 2379}).call(this); 2380 2381(function() { 2382 window.__sharethis__.PRODUCTS = ['custom-share-buttons', 'ecommerce', 'email-list-builder', 'ga', 'gdpr-compliance-tool', 'gdpr-compliance-tool-v2', 'image-share-buttons', 'image-share-buttons-wp', 'inline-follow-buttons', 'inline-reaction-buttons', 'inline-share-buttons', 'inline-share-buttons-wp', 'powr-form-builder', 'powr-popup', 'powr-social-feed', 'privacy-policy-generator', 'privy-share-buttons', 'reviews', 'sop', 'sop-wordpress-plugin', 'sticky-share-buttons', 'sticky-share-buttons-wp', 'top-content', 'unknown', 'video-share-buttons', 'viral-notifications']; 2383 2384}).call(this); 2385 2386(function() { 2387 var st; 2388 2389 st = window.__sharethis__; 2390 2391 st.i18n = { 2392 'angry': { 2393 de: 'wütend', 2394 en: 'angry', 2395 es: 'me enoja', 2396 fr: 'grrr', 2397 it: 'grrr', 2398 ja: 'ã²ã©ãã', 2399 ko: 'íëì', 2400 pt: 'ira', 2401 ru: 'bозмÑÑиÑелÑно', 2402 zh: 'æ' 2403 }, 2404 'Support BLM': { 2405 de: 'Steun BLM', 2406 en: 'Support BLM', 2407 es: 'Subtenu BLM', 2408 fr: 'Soutenir BLM', 2409 it: 'Supporta BLM', 2410 ja: 'BLMããµãã¼ã', 2411 ko: 'BLM ì§ì', 2412 pt: 'Suporte BLM', 2413 ru: 'ÐоддеÑжка BLM', 2414 zh: 'æ¯æBLM', 2415 nl: 'Steun BLM', 2416 ar: 'تبرع ÙØµØ§ÙØ BLM', 2417 bn: 'BLM à¦à§ সাপà§à¦°à§à¦ à¦à¦°à§à¦¨', 2418 hi: 'बà¥à¤à¤²à¤à¤® à¤à¥ सहयà¥à¤', 2419 tr: 'BLM yi Destekle', 2420 vi: 'Ủng há» BLM' 2421 }, 2422 'bookmark': { 2423 de: 'lesezeichen', 2424 en: 'mark', 2425 es: 'marcador',
2426 fr: 'signet', 2427 it: 'segnalibro', 2428 ja: 'ããã', 2429 ko: 'ìí', 2430 pt: 'marca páginas', 2431 ru: 'закладка', 2432 zh: '书ç¾', 2433 nl: 'Markeer', 2434 ar: 'ØªØ«Ø¨ÙØª', 2435 bn: 'মারà§à¦', 2436 hi: 'मारà¥à¤', 2437 tr: 'İÅaretle', 2438 vi: 'Äánh dấu' 2439 }, 2440 'email': { 2441 de: 'emailen', 2442 en: 'email', 2443 es: 'correo electrónico', 2444 fr: 'email', 2445 it: 'e-mail', 2446 ja: 'Eã¡ã¼ã«', 2447 ko: 'ì´ë©ì¼', 2448 pt: 'o email', 2449 ru: 'Ðл. адÑеÑ', 2450 zh: 'çµåé®ä»¶', 2451 nl: 'E-mail', 2452 ar: 'إرساÙ', 2453 bn: 'à¦à¦®à§à¦²', 2454 hi: 'à¤à¤®à¥à¤²', 2455 tr: 'E-posta', 2456 vi: 'Email' 2457 }, 2458 'flip': { 2459 de: 'flip', 2460 en: 'flip', 2461 es: 'Flipear', 2462 fr: 'Ajouter', 2463 it: 'Flip', 2464 ja: 'ããªãã', 2465 ko: 'ê³µì í기', 2466 pt: 'partilhar', 2467 ru: 'ФлипнÑÑÑ', 2468 zh: '翻转', 2469 nl: 'Flip', 2470 ar: 'تغÙÙØ±', 2471 bn: 'à¦à¦²à§à¦à¦¾à¦¨', 2472 hi: 'फ़à¥à¤²à¤¿à¤ª', 2473 tr: 'Döndür', 2474 vi: 'Láºt' 2475 }, 2476 'gmail': { 2477 de: 'emailen', 2478 en: 'email', 2479 es: 'correo electrónico', 2480 fr: 'email', 2481 it: 'e-mail', 2482 ja: 'Eã¡ã¼ã«', 2483 ko: 'ì´ë©ì¼', 2484 pt: 'o email', 2485 ru: 'Ðл. адÑеÑ', 2486 zh: 'çµåé®ä»¶' 2487 }, 2488 'like': { 2489 de: 'mögen', 2490 en: 'like', 2491 es: 'me gusta', 2492 fr: "j'aime", 2493 it: 'mi piace', 2494 ja: 'ãããï¼', 2495 ko: 'ì¢ìì', 2496 pt: 'gosto', 2497 ru: 'hÑавиÑÑÑ', 2498 zh: 'èµ' 2499 }, 2500 'lol': { 2501 de: 'lol', 2502 en: 'lol', 2503 es: 'me divierte', 2504 fr: 'haha', 2505 it: 'ahah', 2506 ja: 'ãããã', 2507 ko: 'ì겨ì', 2508 pt: 'riso', 2509 ru: 'xа-Ñ Ð°', 2510 zh: 'ç¬è¶´' 2511 }, 2512 'love': { 2513 de: 'lieben', 2514 en: 'love', 2515 es: 'me encanta', 2516 fr: "jâadore", 2517 it: 'love', 2518 ja: 'è¶ ãããï¼', 2519 ko: 'ìµê³ ìì', 2520 pt: 'adoro', 2521 ru: 'cÑпеÑ', 2522 zh: '大ç±' 2523 }, 2524 'pin': { 2525 de: 'pin', 2526 en: 'pin', 2527 es: 'pin', 2528 fr: 'épingle', 2529 it: 'pin', 2530 ja: 'ãã³', 2531 ko: 'í', 2532 pt: 'pin', 2533 ru: 'Ðин', 2534 zh: 'é', 2535 nl: 'Pin', 2536 ar: 'Ø¨ÙØªØ±Ø³Øª', 2537 bn: 'পিন', 2538 hi: 'पिन', 2539 tr: 'Pinle', 2540 vi: 'Ghim' 2541 }, 2542 'print': { 2543 de: 'drucken', 2544 en: 'print', 2545 es: 'impresión', 2546 fr: 'mpression', 2547 it: 'stampa', 2548 ja: 'ããªã³ã', 2549 ko: 'ì¸ì', 2550 pt: 'impressão', 2551 ru: 'РаÑпеÑаÑаÑÑ', 2552 zh: 'æå°', 2553 nl: 'Print', 2554 ar: 'طباعة', 2555 bn: 'পà§à¦°à¦¿à¦¨à§à¦ à¦à¦°à§à¦¨', 2556 hi: 'पà¥à¤°à¤¿à¤à¤', 2557 tr: 'Yazdır', 2558 vi: 'In' 2559 }, 2560 'sad': { 2561 de: 'traurig', 2562 en: 'sad', 2563 es: 'me entristece', 2564 fr: 'triste', 2565 it: 'sigh', 2566 ja: 'æ²ããã', 2567 ko: 'ì¬í¼ì', 2568 pt: 'tristeza', 2569 ru: 'cоÑÑвÑÑвÑÑ', 2570 zh: 'å¿ç¢' 2571 }, 2572 'send message': { 2573 zh: 'åä¿¡æ¯' 2574 }, 2575 'share': { 2576 de: 'teilen', 2577 en: 'share', 2578 es: 'compartir', 2579 fr: 'partager', 2580 it: 'condividi', 2581 ja: 'ã·ã§ã¢ãã', 2582 ko: 'ê³µì í기', 2583 pt: 'partilhar', 2584 ru: 'ÐоделиÑÑÑÑ', 2585 zh: 'å享', 2586 nl: 'Deel', 2587 ar: 'Ù Ø´Ø§Ø±ÙØ©', 2588 bn: 'শà§à§à¦¾à¦°', 2589 hi: 'शà¥à¤¯à¤°', 2590 tr: 'PaylaÅ', 2591 vi: 'Chia sẻ' 2592 }, 2593 'shares': { 2594 de: 'teilen', 2595 en: 'shares', 2596 es: 'veces compartido', 2597 fr: 'partages', 2598 it: 'condivisioni', 2599 ja: 'ã·ã§ã¢æ°', 2600 ko: 'ì¬ìí', 2601 pt: 'partilhas', 2602 ru: 'ÐеÑепоÑÑÑ', 2603 zh: '次转å', 2604 nl: 'Deel', 2605 ar: 'Ù Ø´Ø§Ø±ÙØ©', 2606 bn: 'শà§à§à¦¾à¦°', 2607 hi: 'शà¥à¤¯à¤°', 2608 tr: 'PaylaÅ', 2609 vi: 'Chia sẻ' 2610 }, 2611 'snapchat': { 2612 de: 'schnappen', 2613 en: 'snap', 2614 es: 'quebrar',
2615 fr: 'se casser', 2616 it: 'affrettato', 2617 ja: 'ã¹ããã', 2618 ko: 'ì¤ë ', 2619 pt: 'foto', 2620 ru: 'ÑелÑок', 2621 zh: 'å¿«ç §', 2622 nl: 'snap', 2623 ar: 'ÙÙØ±ÙØ¹Ø ÙÙÙØ¬Ø±', 2624 bn: 'аÑнаÑÑка', 2625 hi: 'à¤à¤à¤à¤¾à¤¨à¤¾', 2626 tr: 'patlatmak', 2627 vi: 'búng tay' 2628 }, 2629 'sticky-width': { 2630 de: 120, 2631 en: 120, 2632 es: 140, 2633 fr: 130, 2634 it: 140, 2635 ja: 160, 2636 ko: 120, 2637 pt: 130, 2638 ru: 160, 2639 zh: 120 2640 }, 2641 'subjects': { 2642 'en': "I'd like to share a link with you", 2643 'es': "Me gustarÃa compartir este enlace contigo", 2644 'ru': "Я Ñ Ð¾Ñел Ð±Ñ Ð¿Ð¾Ð´ÐµÐ»Ð¸ÑÑÑÑ Ñ Ð²Ð°Ð¼Ð¸ ÑÑÑлкой", 2645 'zh': "ææ³åä½ å享ä¸ä¸ªä¿¡æ¯" 2646 }, 2647 'tweet': { 2648 de: 'tweeten', 2649 en: 'tweet', 2650 es: 'twittear', 2651 fr: 'tweeter', 2652 it: 'twittare', 2653 ja: 'ãã¤ã¼ããã', 2654 ko: 'í¸ìí기', 2655 pt: 'tweetar', 2656 ru: 'tвиÑнÑÑÑ', 2657 zh: '忍', 2658 nl: 'Tweet', 2659 ar: 'تÙÙØªØ±', 2660 bn: 'à¦à§à¦à¦', 2661 hi: 'à¤à¥à¤µà¥à¤', 2662 tr: 'Tweet', 2663 vi: 'Tweet' 2664 }, 2665 'wow': { 2666 de: 'wow', 2667 en: 'wow', 2668 es: 'me asombra', 2669 fr: 'wouah', 2670 it: 'wow', 2671 ja: 'ãããã', 2672 ko: 'ë©ì ¸ì', 2673 pt: 'surpresa', 2674 ru: 'yÑ ÑÑ!', 2675 zh: 'å' 2676 }, 2677 'yahoomail': { 2678 de: 'emailen', 2679 en: 'email', 2680 es: 'correo electrónico', 2681 fr: 'email', 2682 it: 'e-mail', 2683 ja: 'Eã¡ã¼ã«', 2684 ko: 'ì´ë©ì¼', 2685 pt: 'o email', 2686 ru: 'Ðл. адÑеÑ', 2687 zh: 'çµåé®ä»¶' 2688 } 2689 }; 2690 2691}).call(this); 2692 2693(function() { 2694 var img, is_ie8; 2695 2696 img = window.__sharethis__.img; 2697 2698 is_ie8 = /MSIE 8.0/.test(navigator.userAgent); 2699 2700 window.__sharethis__.cdn = 'https://platform-cdn.sharethis.com'; 2701 2702 window.__sharethis__.ICONS = { 2703 airbnb: img('airbnb.svg'), 2704 amazon: img('amazon.svg'), 2705 arrow_left: img('arrow_left.svg'), 2706 arrow_right: img('arrow_right.svg'), 2707 bandcamp: img('bandcamp.svg'), 2708 behance: img('behance.svg'), 2709 blogger: img('blogger.svg'), 2710 blm: img('blm.svg'), 2711 bluesky: img('bluesky.svg'), 2712 bitbucket: img('bitbucket.svg'), 2713 buffer: img('buffer.svg'), 2714 close: img('close.svg'), 2715 copy: img('copy.svg'), 2716 delicious: img('delicious.svg'), 2717 deviantart: img('deviantart.svg'), 2718 diaspora: img('diaspora.svg'), 2719 digg: img('digg.svg'), 2720 diigo: img('diigo.svg'), 2721 discord: img('discord.svg'), 2722 douban: img('douban.svg'), 2723 dribbble: img('dribbble.svg'), 2724 email: img('email.svg'), 2725 evernote: img('evernote.svg'), 2726 etsy: img('etsy.svg'), 2727 facebook: img('facebook.svg'), 2728 fark: img('fark.svg'), 2729 flickr: img('flickr.svg'), 2730 flipboard: img('flipboard.svg'), 2731 gab: img('gab.svg'), 2732 getpocket: img('pocket.svg'), 2733 github: img('github.svg'), 2734 gitlab: img('gitlab.svg'), 2735 gmail: img('gmail.svg'), 2736 googlebookmarks: img('googlebookmarks.svg'), 2737 googlemaps: img('googlemaps.svg'), 2738 hackernews: img('hackernews.svg'), 2739 houzz: img('houzz.svg'), 2740 instagram: img('instagram.svg'), 2741 instapaper: img('instapaper.svg'), 2742 iorbix: img('iorbix.svg'), 2743 kakao: img('kakao.svg'), 2744 kindleit: img('kindleit.svg'), 2745 kooapp: img('kooapp.svg'), 2746 line: img('line.svg'), 2747 linkedin: img('linkedin.svg'), 2748 livejournal: img('livejournal.svg'), 2749 mailru: img('mailru.svg'), 2750 medium: img('medium.svg'), 2751 meneame: img('meneame.svg'), 2752 messenger: img('messenger.svg'), 2753 meetup: img('meetup.svg'), 2754 microsoftteams: img('microsoftteams.svg'), 2755 mix: img('mix.svg'), 2756 naver: img('naver.svg'), 2757 nextdoor: img('nextdoor.svg'), 2758 odnoklassniki: img('odnoklassniki.svg'), 2759 outlook: img('outlook.svg'), 2760 patreon: img('patreon.svg'), 2761 pinboard: img('pinboard.svg'), 2762 pinterest: img('pinterest.svg'), 2763 plurk: img('plurk.svg'), 2764 print: img('print.svg'), 2765 quora: img('quora.svg'), 2766 qzone: img('qzone.svg'), 2767 reddit: img('reddit.svg'), 2768 refind: img('refind.svg'), 2769 renren: img('renren.svg'), 2770 sharethis: img('sharethis.svg'), 2771 skype: img('skype.svg'), 2772 slideshare: img('slideshare.svg'), 2773 sms: img('sms.svg'), 2774 snapchat: img('snapchat.svg'), 2775 soundcloud: img('soundcloud.svg'), 2776 spotify: img('spotify.svg'), 2777 stackoverflow: img('stackoverflow.svg'), 2778 surfingbird: img('surfingbird.svg'), 2779 telegram: img('telegram.svg'), 2780 tencentqq: img('tencentqq.svg'), 2781 threads: img('threads.svg'), 2782 threema: img('threema.svg'), 2783 trello: img('trello.svg'), 2784 tiktok: img('tiktok.svg'), 2785 tripadvisor: img('tripadvisor.svg'), 2786 tumblr: img('tumblr.svg'), 2787 twitch: img('twitch.svg'), 2788 twitter: img('twitter.svg'), 2789 vk: img('vk.svg'), 2790 viber: img('viber.svg'), 2791 vimeo: img('vimeo.svg'), 2792 wechat: img('wechat.svg'), 2793 weibo: img('weibo.svg'), 2794 whatsapp: img('whatsapp.svg'), 2795 wordpress: img('wordpress.svg'), 2796 xing: img('xing.svg'), 2797 yahoomail: img('yahoomail.svg'), 2798 yelp: img('yelp.svg'), 2799 youtube: img('youtube.svg'), 2800 yummly: img('yummly.svg'), 2801 zillow: img('zillow.svg'), 2802 zomato: img('zomato.svg') 2803 }; 2804 2805 window.__sharethis__.ICONS_WHITE = { 2806 airbnb: img('airbnb-white.svg'), 2807 amazon: img('amazon-white.svg'), 2808 bandcamp: img('bandcamp-white.svg'), 2809 behance: img('behance-white.svg'), 2810 blogger: img('blogger-white.svg'), 2811 blm: img('blm-white.svg'), 2812 bluesky: img('bluesky-white.svg'), 2813 bitbucket: img('bitbucket-white.svg'), 2814 buffer: img('buffer-white.svg'), 2815 copy: img('copy-white.svg'), 2816 delicious: img('delicious-white.svg'), 2817 deviantart: img('deviantart-white.svg'), 2818 diaspora: img('diaspora-white.svg'), 2819 digg: img('digg-white.svg'), 2820 diigo: img('diigo-white.svg'), 2821 discord: img('discord-white.svg'), 2822 douban: img('douban-white.svg'), 2823 dribbble: img('dribbble-white.svg'), 2824 email: img('email-white.svg'), 2825 etsy: img('etsy-white.svg'), 2826 evernote: img('evernote-white.svg'), 2827 facebook: img('facebook-white.svg'), 2828 fark: img('fark-white.svg'), 2829 flickr: img('flickr-white.svg'), 2830 flipboard: img('flipboard-white.svg'), 2831 gab: img('gab-white.svg'), 2832 getpocket: img('pocket-white.svg'), 2833 github: img('github-white.svg'), 2834 gitlab: img('gitlab-white.svg'), 2835 gmail: img('gmail-white.svg'), 2836 googlebookmarks: img('googlebookmarks-white.svg'), 2837 googlemaps: img('googlemaps-white.svg'), 2838 hackernews: img('hackernews-white.svg'), 2839 houzz: img('houzz-white.svg'), 2840 instagram: img('instagram-white.svg'), 2841 instapaper: img('instapaper-white.svg'), 2842 iorbix: img('iorbix-white.svg'), 2843 kakao: img('kakao-white.svg'), 2844 kindleit: img('kindleit-white.svg'), 2845 kooapp: img('kooapp-white.svg'), 2846 line: img('line-white.svg'), 2847 linkedin: img('linkedin-white.svg'), 2848 livejournal: img('livejournal-white.svg'), 2849 mailru: img('mailru-white.svg'), 2850 medium: img('medium-white.svg'), 2851 meetup: img('meetup-white.svg'), 2852 meneame: img('meneame-white.svg'), 2853 messenger: img('messenger-white.svg'),
2854 microsoftteams: img('microsoftteams-white.svg'), 2855 mix: img('mix-white.svg'), 2856 naver: img('naver-white.svg'), 2857 nextdoor: img('nextdoor-white.svg'), 2858 odnoklassniki: img('odnoklassniki-white.svg'), 2859 outlook: img('outlook-white.svg'), 2860 patreon: img('patreon-white.svg'), 2861 pinboard: img('pinboard-white.svg'), 2862 pinterest: img('pinterest-white.svg'), 2863 plurk: img('plurk-white.svg'), 2864 print: img('print-white.svg'), 2865 quora: img('quora-white.svg'), 2866 qzone: img('qzone-white.svg'), 2867 reddit: img('reddit-white.svg'), 2868 refind: img('refind-white.svg'), 2869 renren: img('renren-white.svg'), 2870 sharethis: img('sharethis-white.svg'), 2871 skype: img('skype-white.svg'), 2872 slideshare: img('slideshare-white.svg'), 2873 sms: img('sms-white.svg'), 2874 snapchat: img('snapchat-white.svg'), 2875 soundcloud: img('soundcloud-white.svg'), 2876 spotify: img('spotify-white.svg'), 2877 stackoverflow: img('stackoverflow-white.svg'), 2878 surfingbird: img('surfingbird-white.svg'), 2879 telegram: img('telegram-white.svg'), 2880 telegram: img('telegram-white.svg'), 2881 tencentqq: img('tencentqq-white.svg'), 2882 threads: img('threads-white.svg'), 2883 threema: img('threema-white.svg'), 2884 trello: img('trello-white.svg'), 2885 tiktok: img('tiktok-white.svg'), 2886 tripadvisor: img('tripadvisor-white.svg'), 2887 tumblr: img('tumblr-white.svg'), 2888 twitch: img('twitch-white.svg'), 2889 twitter: img('twitter-white.svg'), 2890 vk: img('vk-white.svg'), 2891 viber: img('viber-white.svg'), 2892 vimeo: img('vimeo-white.svg'), 2893 wechat: img('wechat-white.svg'), 2894 weibo: img('weibo-white.svg'), 2895 whatsapp: img('whatsapp-white.svg'), 2896 wordpress: img('wordpress-white.svg'), 2897 xing: img('xing-white.svg'), 2898 yahoomail: img('yahoomail-white.svg'), 2899 ycombinator: img('ycombinator-white.svg'), 2900 yelp: img('yelp-white.svg'), 2901 youtube: img('youtube-white.svg'), 2902 yummly: img('yummly-white.svg'), 2903 zillow: img('zillow-white.svg'), 2904 zomato: img('zomato-white.svg') 2905 }; 2906 2907 if (is_ie8) { 2908 window.__sharethis__.ICONS = { 2909 arrow_left: img('left-arrow.png'), 2910 arrow_right: img('right-arrow.png'), 2911 blogger: img('blogger.png'), 2912 bluesky: img('bluesky.png'), 2913 delicious: img('delicious.png'), 2914 digg: img('digg.png'), 2915 email: img('email.png'), 2916 facebook: img('facebook.png'), 2917 flipboard: img('flipboard.png'), 2918 linkedin: img('linkedin.png'), 2919 livejournal: img('livejournal.png'), 2920 mailru: img('mailru.png'), 2921 meneame: img('mename.png'), 2922 odnoklassniki: img('odnoklassniki.png'), 2923 pinterest: img('pinterest.png'), 2924 print: img('print.png'), 2925 reddit: img('reddit.png'), 2926 sharethis: img('sharethis.png'), 2927 sms: img('sms.png'), 2928 tumblr: img('tumblr.png'), 2929 twitter: img('twitter.png'), 2930 vk: img('vk.png'), 2931 weibo: img('weibo.png'), 2932 whatsapp: img('whatsapp.png'), 2933 xing: img('xing.png'), 2934 wechat: img('wechat.png') 2935 }; 2936 } 2937 2938}).call(this); 2939 2940(function() { 2941 var st; 2942 2943 st = window.__sharethis__; 2944 2945 st.networks = ['airbnb', 'amazon', 'blogger', 'blm', 'bluesky', 'buffer', 'copy', 'diaspora', 'diigo', 'digg', 'discord', 'douban', 'email', 'evernote', 'etsy', 'facebook', 'fark', 'flipboard', 'foursquare', 'gab', 'getpocket', 'github', 'gmail', 'googlebookmarks', 'hackernews', 'houzz', 'instapaper', 'iorbix', 'kakao', 'kindleit', 'kooapp', 'line', 'linkedin', 'livejournal', 'mailru', 'meneame', 'messenger', 'microsoftteams', 'naver', 'nextdoor', 'odnoklassniki', 'outlook', 'pinboard', 'pinterest', 'plurk', 'print', 'qzone', 'reddit', 'refind', 'renren', 'sharethis', 'skype', 'sms', 'snapchat', 'surfingbird', 'telegram', 'tencentqq', 'threads', 'threema', 'tiktok', 'trello', 'tripadvisor', 'tumblr', 'twitter', 'vk', 'viber', 'vimeo', 'wechat', 'weibo', 'whatsapp', 'wordpress', 'xing', 'yahoomail', 'yummly', 'zillow']; 2946 2947 st.shareNetworks = ['blm', 'blogger', 'bluesky', 'buffer', 'copy', 'diaspora', 'digg', 'diigo', 'douban', 'email', 'evernote', 'facebook', 'fark', 'flipboard', 'gab', 'getpocket', 'gmail', 'googlebookmarks', 'hackernews', 'houzz', 'instapaper', 'iorbix', 'kakao', 'kindleit', 'kooapp', 'line', 'linkedin', 'livejournal', 'mailru', 'meneame', 'messenger', 'microsoftteam
2947s', 'naver', 'nextdoor', 'odnoklassniki', 'outlook', 'pinboard', 'pinterest', 'plurk', 'print', 'qzone', 'reddit', 'refind', 'renren', 'sharethis', 'skype', 'sms', 'surfingbird', 'telegram', 'tencentqq', 'threema', 'trello', 'tumblr', 'twitter', 'vk', 'viber', 'wechat', 'weibo', 'whatsapp', 'wordpress', 'xing', 'yahoomail', 'yummly']; 2948 2949 st.followNetworks = ['airbnb', 'amazon', 'bandcamp', 'behance', 'bitbucket', 'blogger', 'bluesky', 'deviantart', 'digg', 'discord', 'dribbble', 'etsy', 'facebook', 'flickr', 'flipboard', 'foursquare', 'github', 'gitlab', 'goodreads', 'googlemaps', 'houzz', 'instagram', 'linkedin', 'medium', 'meetup', 'messenger', 'mix', 'odnoklassniki', 'patreon', 'pinterest', 'quora', 'reddit', 'shares', 'skype', 'slideshare', 'snapchat', 'soundcloud', 'spotify', 'stackoverflow', 'telegram', 'threads', 'tiktok', 'trello', 'tripadvisor', 'tumblr', 'twitch', 'twitter', 'vimeo', 'vk', 'wechat', 'weibo', 'whatsapp', 'xing', 'yelp', 'youtube', 'zillow', 'zomato']; 2950 2951}).call(this); 2952 2953(function() { 2954 var st; 2955 2956 st = window.__sharethis__; 2957 2958 st.loader['share-all'] = function(config) { 2959 var $backdrop, $button, $buttons, $close, $el, common_css, count_url, css, description, html, i, id, image, j, len, len1, logo_link, message, network, network_css, ref, ref1, share_url, src, title, url, username; 2960 if (config == null) { 2961 config = {}; 2962 } 2963 count_url = config.count_url, share_url = config.share_url, url = config.url, description = config.description, image = config.image, message = config.message, network = config.network, title = config.title, username = config.username; 2964 ref = st.newElement(), $el = ref.$el, id = ref.id; 2965 st.addClass($el, 'st-hidden'); 2966 common_css = "body.st-body-no-scroll {\n bottom: 0;\n left: 0;\n overflow: hidden;\n position: fixed;\n right: 0;\n top: 0;\n}\n#" + id + " {\n " + st.FONT_FAMILY + "\n " + (st.TRANSITION()) + "\n height: 100%;\n left: 0;\n opacity: 1;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 99999;\n}\n#" + id + ".st-hidden {\n opacity: 0;\n top: 100%;\n}\n#" + id + " .st-backdrop {\n background: rgba(0, 0, 0, 0.8);\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 10;\n}\n#" + id + " .st-btns {\n bottom: 56px;\n left: 0;\n margin: 100px auto 0;\n max-width: 90%;\n position: absolute;\n right: 0;\n text-align: center;\n top: 10px;\n z-index: 20;\n overflow-y: auto;\n}\n#" + id + " .st-logo {\n background: #4c4c4c;\n bottom: 0;\n cursor: pointer;\n padding: 20px;\n position: absolute;\n text-align: center;\n width: 100%;\n z-index: 30;\n}\n#" + id + " .st-close {\n " + (st.BORDER_RADIUS(28)) + "\n " + st.BORDER_BOX + "\n background: #999;\n bottom: 28px;\n color: #fff;\n cursor: pointer;\n font-size: 36px;\n height: 56px;\n line-height: 28px;\n padding: 10px;\n position: absolute;\n right: 14px;\n width: 56px;\n z-index: 40;\n}\n#" + id + " .st-disclaimer {\n bottom: 72px;\n color: white;\n font-size: 12px;\n left: 50%;\n position: absolute;\n transform: translate(-50%, 0);\n z-index: 30;\n}\n#" + id + " .st-close > img {\n height: 40px;\n width: 40px;\n}\n#" + id + " .st-btn {\n " + (st.BORDER_RADIUS(4)) + "\n " + st.BORDER_BOX + "\n " + (st.TRANSITION()) + "\n color: white;\n cursor: pointer;\n display: inline-block;\n font-size: 12px;\n font-weight: 400;\n height: 48px;\n line-height: 30px;\n margin: 4px;\n opacity: 1;\n overflow: hidden;\n padding: 8px 12px;\n position: relative;\n text-align: left;\n top: 0;\n vertical-align: top;\n width: 148px;\n}\n#" + id + " .st-btn::before {\n " + (st.BORDER_RADIUS(4)) + "\n " + (st.TRANSITION()) + "\n background: #fff;\n content: '';\n height: 100%;\n left: 0;\n opacity: 0;\n position: absolute;\n top: 0;\n width: 100%;\n}\n#" + id + " .st-btn:hover::before {\n opacity: .2;\n}\n#" + id + " .st-btn > svg {\n display: inline-block;\n height: 20px;\n margin-top: 6px;\n vertical-align: top;\n width: 20px;\n}\n#" + id + " .st-btn > img {\n display: inline-block;\n height: 20px;\n margin-top: 6px;\n vertical-align: top;
2966\n width: 20px;\n}\n#" + id + " .st-btn > span {\n display: inline-block;\n letter-spacing: 0.5px;\n text-align: center;\n vertical-align: top;\n width: 96px;\n}\n@media(max-width: 1200px) {\n #" + id + " .st-btns {\n margin-top: 50px;\n }\n}\n@media(max-width: 800px) {\n #" + id + " .st-btns {\n margin: 0 auto;\n max-width: 100%;\n padding: 32px 10px 50px;\n }\n #" + id + " .st-btn {\n width: 130px;\n }\n #" + id + " .st-btn > span {\n width: 74px;\n }\n #" + id + " .st-disclaimer {\n background: #000;\n bottom: 44px;\n font-size: 10px;\n padding: 8px;\n text-align: center;\n width: 100%\n }\n}"; 2967 network_css = ((function() { 2968 var i, len, ref1, results; 2969 ref1 = st.shareNetworks; 2970 results = []; 2971 for (i = 0, len = ref1.length; i < len; i++) { 2972 network = ref1[i]; 2973 results.push("#" + id + " .st-btn[data-network='" + network + "'] {\n background-color: " + st.COLORS[network] + ";\n}"); 2974 } 2975 return results; 2976 })()).join('\n'); 2977 css = common_css; 2978 css += network_css; 2979 st.css(css); 2980 html = "<div class='st-backdrop'></div>"; 2981 html += "<div class='st-btns'>"; 2982 ref1 = st.shareNetworks; 2983 for (i = 0, len = ref1.length; i < len; i++) { 2984 network = ref1[i]; 2985 if (network === 'sharethis') { 2986 continue; 2987 } 2988 if (!st.mobile && (network === 'sms')) { 2989 continue; 2990 } 2991 html += "<div class='st-btn' data-network='" + network + "'>\n " + st.ICONS[network] + "\n <span>" + network + "</span>\n</div>"; 2992 } 2993 html += "</div>"; 2994 src = 'https://platform-cdn.sharethis.com/img/share-this-logo%402x.png'; 2995 logo_link = "https://sharethis.com/platform/share-buttons?" + st.qs({ 2996 utm_source: "share-buttons", 2997 utm_medium: "referral", 2998 utm_campaign: "sharethis-button-referral" 2999 }); 3000 html += "<div class=\"st-logo\">\n <a href=\"" + logo_link + "\" target=\"_blank\">\n <img height=\"16\" width=\"96\" src=\"" + src + "\">\n </a>\n</div>"; 3001 html += "<div class=\"st-close\">\n " + st.ICONS['close'] + "\n</div>"; 3002 html += "<div class=\"st-disclaimer\">\n Third-party platform trademarks and logos appearing here are owned by the\n respective third parties, link to those referenced platforms, and are not\n affiliated with ShareThis.\n</div>"; 3003 $el.innerHTML = html; 3004 $backdrop = $el.querySelector('.st-backdrop'); 3005 $buttons = $el.querySelectorAll('.st-btn'); 3006 $close = $el.querySelector('.st-close'); 3007 st.addEventListener($backdrop, 'click', function() { 3008 return st.close($el); 3009 }); 3010 st.addEventListener($close, 'click', function() { 3011 return st.close($el); 3012 }); 3013 st.addEventListener(document, 'keydown', function(e) { 3014 if (st.isEsc(e)) { 3015 return st.close($el); 3016 } 3017 }); 3018 for (j = 0, len1 = $buttons.length; j < len1; j++) { 3019 $button = $buttons[j]; 3020 st.addEventListener($button, 'click', function() { 3021 st.close($el); 3022 return st.share({ 3023 description: description, 3024 image: image, 3025 network: this.getAttribute('data-network'), 3026 share_url: share_url, 3027 title: title, 3028 url: url, 3029 username: username 3030 }); 3031 }); 3032 } 3033 return setTimeout((function() { 3034 st.removeClass($el, 'st-hidden'); 3035 return st.addClass(document.body, 'st-body-no-scroll'); 3036 }), 10); 3037 }; 3038 3039}).call(this); 3040 3041(function() { 3042 var st; 3043 3044 st = window.__sharethis__; 3045 3046 st.loader['share-wechat-mobile'] = function(config) { 3047 var $backdrop, $close, $copy, $el, $form_input, $open, html, id, mobile_css, ref, src, url; 3048 if (config == null) { 3049 config = {}; 3050 } 3051 url = config.url; 3052 ref = st.newElement(), $el = ref.$el, id = ref.id; 3053 st.addClass($el, 'st-hidden'); 3054 mobile_css = "body.st-body-no-scroll {\n bottom: 0;\n left: 0;\n overflow: hidden;\n position: fixed;\n right: 0;\n top: 0;\n}\n#" + id + " {\n " + (st.TRANSITION()) + "\n " + st.FONT_FAMILY + "\n bottom: 0;\n left: 0;\n opacity: 1;\n overflow-y: auto;\n padding-bottom: 100px;\n position: fixed;\n right: 0;\n text-align: center;\n top: 0;\n width: 100%;\n z-index: 99999;\n}\n\n#" + id + ".st-hidden {\n opacity: 0;\n top: 100%;\n}\n#" + id + " .st-backdrop {\n background: rgba(0, 0, 0, 0.8);\n bottom: 0;\n left: 0;\n position: fixed;\n right: 0;\n top: 0;\n z-index: 10;\n}\n#" + id + " .st-wechat {\n margin-top: 120px;\n height: 64px;\n width: 220px;\n display: inline-block;\n position: relative;\n z-index: 10;\n}\n#" + id + " .st-form {\n margin: 20px auto;\n max-width: 80%;\n position: relative;\n width: 320px;\n z-index: 20;\n}\n#" + id + " .st-form > input {\n " + st.BORDER_BOX + "\n " + (st.BORDER_RADIUS(4)) + "\n background-color: #fff;\n border: 0;\n color: #333;\n display: block;\n font-size: 16px;\n height: 48px;\n margin-bottom: 15px;\n padding: 12px;\n width: 100%;\n}\n#" + id + " .st-form > textarea {\n " + st.BORDER_BOX + "\n " + (st.BORDER_RADIUS(4)) + "\n background-color: #fff;\n border: 0;\n color: #333;\n display: block;\n font-size: 16px;\n height: 96px;\n margin-bottom: 15px;\n padding: 12px;\n width: 100%;\n}\n#" + id + " .st-copy {\n " + (st.BORDER_RADIUS(2)) + "\n background: #4EC034;\n color: #fff;
3054\n cursor: pointer;\n display: inline-block;\n height: 36px;\n letter-spacing: .5px;\n line-height: 36px;\n margin: 15px auto 0 auto;\n padding: 0 10px;\n position: relative;\n text-align: center;\n min-width: 120px;\n z-index: 20;\n}\n#" + id + " .st-open {\n " + (st.BORDER_RADIUS(2)) + "\n background: #4EC034;\n color: #fff;\n cursor: pointer;\n display: inline-block;\n height: 36px;\n letter-spacing: .5px;\n line-height: 36px;\n margin: 15px auto 0 auto;\n padding: 0 10px;\n position: relative;\n text-align: center;\n min-width: 120px;\n z-index: 20;\n}\n#" + id + " .st-logo {\n background: #4c4c4c;\n bottom: 0;\n padding: 20px;\n position: fixed;\n text-align: center;\n width: 100%;\n z-index: 30;\n}\n#" + id + " .st-close {\n " + (st.BORDER_RADIUS(28)) + "\n " + st.BORDER_BOX + "\n background: #999;\n bottom: 28px;\n color: #fff;\n cursor: pointer;\n font-size: 36px;\n height: 56px;\n line-height: 28px;\n padding: 10px;\n position: fixed;\n right: 14px;\n width: 56px;\n z-index: 40;\n}"; 3055 st.css(mobile_css); 3056 html = "<div class='st-backdrop'></div>"; 3057 html += "<div class='st-wechat'>" + st.ICONS['wechatIcon'] + "</div>"; 3058 html += "<div class='st-form'>\n <input class=\"st-url\" type=\"text\" value=\"\" />\n</div>"; 3059 html += "<div class=\"st-copy\">Copy URL</div>\n<div class=\"st-open\" style=\"display: none\">Open WeChat</div>"; 3060 src = 'https://platform-cdn.sharethis.com/img/share-this-logo%402x.png'; 3061 html += "<div class=\"st-logo\">\n <img height=\"16\" width=\"96\" src=\"" + src + "\">\n</div>"; 3062 html += "<div class=\"st-close\">\n " + st.ICONS['close'] + "\n</div>"; 3063 $el.innerHTML = html; 3064 $form_input = $el.querySelector('.st-form > input'); 3065 $backdrop = $el.querySelector('.st-backdrop'); 3066 $close = $el.querySelector('.st-close'); 3067 $copy = $el.querySelector('.st-copy'); 3068 $open = $el.querySelector('.st-open'); 3069 $form_input.value = url; 3070 st.addEventListener($backdrop, 'click', function() { 3071 return st.close($el); 3072 }); 3073 st.addEventListener($close, 'click', function() { 3074 return st.close($el); 3075 }); 3076 st.addEventListener($copy, 'click', function() { 3077 var succeed; 3078 $form_input.setSelectionRange(0, $form_input.value.length); 3079 succeed = document.execCommand('copy'); 3080 if (succeed) { 3081 $copy.innerText = 'Copied!'; 3082 $copy.style.background = '#f9a825'; 3083 return $open.style.display = 'inline-block'; 3084 } 3085 }); 3086 st.addEventListener($open, 'click', function() { 3087 var onError; 3088 onError = function(err) { 3089 $open.innerText = err; 3090 $open.style.background = '#c62828'; 3091 if (st.__share_email_timeout) { 3092 clearTimeout(st.__share_email_timeout); 3093 } 3094 return st.__share_email_timeout = setTimeout((function() { 3095 $open.innerText = 'Open'; 3096 return $open.style.background = '#00c853'; 3097 }), 2000); 3098 }; 3099 $open.innerText = 'Opening...'; 3100 $open.style.background = '#f9a825'; 3101 url = 'weixin://'; 3102 return st.open(url); 3103 }); 3104 st.addEventListener(document, 'keydown', function(e) { 3105 if (st.isEsc(e)) { 3106 return st.close($el); 3107 } 3108 }); 3109 return setTimeout((function() { 3110 st.removeClass($el, 'st-hidden'); 3111 return st.addClass(document.body, 'st-body-no-scroll'); 3112 }), 10); 3113 }; 3114 3115}).call(this); 3116 3117(function() { 3118 var st; 3119 3120 st = window.__sharethis__; 3121 3122 st.REACTIONS = { 3123 slight_smile: { 3124 icon: "<circle cx=\"32\" cy=\"32\" r=\"30\" fill=\"#ffdd67\"/><g fill=\"#664e27\"><circle cx=\"20.5\" cy=\"26.6\" r=\"5\"/><circle cx=\"43.5\" cy=\"26.6\" r=\"5\"/><path d=\"m44.6 40.3c-8.1 5.7-17.1 5.6-25.2 0-1-.7-1.8.5-1.2 1.6 2.5 4 7.4 7.7 13.8 7.7s11.3-3.6 13.8-7.7c.6-1.1-.2-2.3-1.2-1.6\"/></g>", 3125 label: 'like' 3126 }, 3127 heart_eyes: { 3128 icon: "<path d=\"M62,32c0,16.6-13.4,30-30,30C15.4,62,2,48.6,2,32C2,15.4,15.4,2,32,2C48.6,2,62,15.4,62,32z\" fill=\"#ffdd67\"/><g fill=\"#f46767\"><path d=\"m61.8 13.2c-.5-2.7-2-4.9-4.5-5.6-2.7-.7-5.1.3-7.4 2.7-1.3-3.6-3.3-6.3-6.5-7.7-3.2-1.4-6.4-.4-8.4 2.1-2.1 2.6-2.9 6.7-.7 12 2.1 5 11.4 15 11.7 15.3.4-.2 10.8-6.7 13.3-9.9 2.5-3.1 3-6.2 2.5-8.9\"/><path d=\"m29 4.7c-2-2.5-5.2-3.5-8.4-2.1-3.2 1.4-5.2 4.1-6.5 7.7-2.4-2.3-4.8-3.4-7.5-2.6-2.4.7-4 2.9-4.5 5.6-.5 2.6.1 5.8 2.5 8.9 2.6 3.1 13 9.6 13.4 9.8.3-.3 9.6-10.3 11.7-15.3 2.2-5.3 1.4-9.3-.7-12\"/></g><path d=\"m49 38.1c0-.8-.5-1.8-1.8-2.1-3.5-.7-8.6-1.3-15.2-1.3-6.6 0-11.7.7-1
31285.2 1.3-1.4.3-1.8 1.3-1.8 2.1 0 7.3 5.6 14.6 17 14.6 11.4-.1 17-7.4 17-14.6\" fill=\"#664e27\"/><path d=\"m44.7 38.3c-2.2-.4-6.8-1-12.7-1-5.9 0-10.5.6-12.7 1-1.3.2-1.4.7-1.3 1.5.1.4.1 1 .3 1.6.1.6.3.9 1.3.8 1.9-.2 23-.2 24.9 0 1 .1 1.1-.2 1.3-.8.1-.6.2-1.1.3-1.6 0-.8-.1-1.3-1.4-1.5\" fill=\"#fff\"/>", 3129 label: 'love' 3130 }, 3131 laughing: { 3132 icon: "<circle cx=\"32\" cy=\"32\" r=\"30\" fill=\"#ffdd67\"/><g fill=\"#664e27\"><path d=\"m51.7 19.4c.6.3.3 1-.2 1.1-2.7.4-5.5.9-8.3 2.4 4 .7 7.2 2.7 9 4.8.4.5-.1 1.1-.5 1-4.8-1.7-9.7-2.7-15.8-2-.5 0-.9-.2-.8-.7 1.6-7.3 10.9-10 16.6-6.6\"/><path d=\"m12.3 19.4c-.6.3-.3 1 .2 1.1 2.7.4 5.5.9 8.3 2.4-4 .7-7.2 2.7-9 4.8-.4.5.1 1.1.5 1 4.8-1.7 9.7-2.7 15.8-2 .5 0 .9-.2.8-.7-1.6-7.3-10.9-10-16.6-6.6\"/><path d=\"m49.7 34.4c-.4-.5-1.1-.4-1.9-.4-15.8 0-15.8 0-31.6 0-.8 0-1.5-.1-1.9.4-3.9 5 .7 19.6 17.7 19.6 17 0 21.6-14.6 17.7-19.6\"/></g><path d=\"m33.8 41.7c-.6 0-1.5.5-1.1 2 .2.7 1.2 1.6 1.2 2.8 0 2.4-3.8 2.4-3.8 0 0-1.2 1-2 1.2-2.8.3-1.4-.6-2-1.1-2-1.6 0-4.1 1.7-4.1 4.6 0 3.2 2.7 5.8 6 5.8s6-2.6 6-5.8c-.1-2.8-2.7-4.5-4.3-4.6\" fill=\"#4c3526\"/><path d=\"m24.3 50.7c2.2 1 4.8 1.5 7.7 1.5s5.5-.6 7.7-1.5c-2.1-1.1-4.7-1.7-7.7-1.7s-5.6.6-7.7 1.7\" fill=\"#ff717f\"/><path d=\"m47 36c-15 0-15 0-29.9 0-2.1 0-2.1 4-.1 4 10.4 0 19.6 0 30 0 2 0 2-4 0-4\" fill=\"#fff\"/>", 3133 label: 'lol' 3134 }, 3135 astonished: { 3136 icon: "<circle cx=\"32\" cy=\"32\" r=\"30\" fill=\"#ffdd67\"/><circle cx=\"19\" cy=\"29\" r=\"11\" fill=\"#fff\"/><path d=\"m24 29c0 2.8-2.2 5-5 5-2.8 0-5-2.2-5-5s2.2-5 5-5c2.8 0 5 2.2 5 5\" fill=\"#664e27\"/><path d=\"m56 29c0 6.1-4.9 11-11 11-6.1 0-11-4.9-11-11 0-6.1 4.9-11 11-11 6.1 0 11 4.9 11 11\" fill=\"#fff\"/><path d=\"m50 29c0 2.8-2.2 5-5 5-2.8 0-5-2.2-5-5s2.2-5 5-5c2.8 0 5 2.2 5 5\" fill=\"#664e27\"/><g fill=\"#917524\"><path d=\"m50.2 15.8c-3.2-2.7-7.5-3.9-11.7-3.1-.6.1-1.1-2-.4-2.2 4.8-.9 9.8.5 13.5 3.6.6.5-1 2.1-1.4 1.7\"/><path d=\"m25.5 12.5c-4.2-.7-8.5.4-11.7 3.1-.4.4-2-1.2-1.4-1.7 3.7-3.2 8.7-4.5 13.5-3.6.7.2.2 2.3-.4 2.2\"/></g><circle cx=\"32\" cy=\"49\" r=\"9\" fill=\"#664e27\"/><path d=\"m26 46c1.2-2.4 3.4-4 6-4 2.6 0 4.8 1.6 6 4h-12\" fill=\"#fff\"/>", 3137 label: 'wow' 3138 }, 3139 sob: { 3140 icon: "<g fill=\"#65b1ef\"><ellipse cx=\"17.5\" cy=\"59.9\" rx=\"12.5\" ry=\"1.5\"/><ellipse cx=\"44\" cy=\"60.2\" rx=\"18\" ry=\"1.8\"/></g><circle cx=\"32\" cy=\"32\" r=\"30\" fill=\"#ffdd67\"/><path d=\"m44.7 46c-1.4-3.6-4.8-6-12.7-6-8 0-11.3 2.4-12.7 6-.7 1.9.3 5 .3 5 1.3 3.9 1.1 5 12.4 5 11.3 0 11.1-1.1 12.4-5 0 0 1.1-3.1.3-5\" fill=\"#664e27\"/><path d=\"m41 45c.1-.3 0-.6-.2-.8 0 0-2-2.2-8.8-2.2-6.8 0-8.8 2.2-8.8 2.2-.2.1-.2.5-.2.8l.2.6c.1.3.3.5.5.5h16.6c.2 0 .5-.2.5-.5l.2-.6\" fill=\"#fff\"/><g fill=\"#65b1ef\"><path d=\"m44.5 60.5c2.3 0 4.6 0 6.8 0 8.2-9.9-1.5-20 .9-29.8-2.3 0-4.6 2.5-6.8 2.5-3.2 9.5 7.3 17.4-.9 27.3\"/><path d=\"m19.5 60.5c-2.3 0-4.6 0-6.8 0-8.2-9.9 1.5-20-.9-29.8 2.3 0 4.6 2.5 6.8 2.5 3.2 9.5-7.3 17.4.9 27.3\"/></g><g fill=\"#917524\"><path d=\"m40.7 18.3c3 3 7.2 4.5 11.4 4.1.6-.1.9 2.1.2 2.2-4.9.4-9.7-1.3-13.1-4.8-.6-.5 1.1-1.9 1.5-1.5\"/><path d=\"m12 22.4c4.2.4 8.4-1.1 11.4-4.1.4-.4 2.1 1 1.6 1.5-3.4 3.5-8.3 5.2-13.1 4.8-.9 0-.5-2.2.1-2.2\"/></g><g fill=\"#664e27\"><path d=\"m35.9 30.3c4.2 8 12.7 8 16.9 0 .2-.4-.3-.6-1-1-4.2 3.3-11.1 3-14.9 0-.6.4-1.2.6-1 1\"/><path d=\"m11.2 30.3c4.2 8 12.7 8 16.9 0 .2-.4-.3-.6-1-1-4.2 3.3-11.1 3-14.9 0-.7.4-1.2.6-1 1\"/></g>", 3141 label: 'sad' 3142 }, 3143 rage: { 3144 icon: "<circle cx=\"32\" cy=\"32\" r=\"30\" fill=\"#ef5350\"/><path d=\"m41 49.7c-5.8-4.8-12.2-4.8-18 0-.7.6-1.3-.4-.8-1.3 1.8-3.4 5.3-6.5 9.8-6.5s8.1 3.1 9.8 6.5c.5.8-.1 1.8-.8 1.3\" fill=\"#302424\"/><path d=\"m10.2 24.9c-1.5 4.7.6 10 5.3 12.1 4.6 2.2 10 .5 12.7-3.7l-6.9-7.7-11.1-.7\" fill=\"#fff\"/><g fill=\"#302424\"><path d=\"m14.2 25.8c-1.4 2.9-.1 6.4 2.8 7.7 2.9 1.4 6.4.1 7.7-2.8 1-1.9-9.6-6.8-10.5-4.9\"/><path d=\"m10.2 24.9c1.6-1 3.5-1.5 5.4-1.5 1.9 0 3.8.5 5.6 1.3 1.7.8 3.3 2 4.6 3.4 1.2 1.5 2.2 3.2 2.4 5.1-1.3-1.3-2.6-2.4-4-3.4-1.4-1-2.8-1.8-4.2-2.4-1.5-.7-3-1.2-4.6-1.7-1.8-.3-3.4-.6-5.2-.8\"/></g><path d=\"m53.8 24.9c1.5 4.7-.6 10-5.3 12.1-4.6 2.2-10 .5-12.7-3.7l6.9-7.7 11.1-.7\" fill=\"#fff\"/><g fill=\"#302424\"><path d=\"m49.8 25.8c1.4 2.9.1 6.4-2.8 7.7-2.9 1.4-6.4.1-7.7-2.8-1-1.9 9.6-6.8 10.5-4.9\"/><path d=\"m53.8 24.9c-1.6-1-3.5-1.5-5.4-1.5-1.9 0-3.8.5-5.6 1.3-1.7.8-3.3 2-4.6 3.4-1.2 1.5-2.2 3.2-2.4 5.1 1.3-1.3 2.6-2.4 4-3.4 1.4-1 2.8-1.8 4.2-2.4 1.5-.7 3-1.2 4.6-1.7 1.8-.3 3.4-.6 5.2-.8\"/></g>", 3145 label: 'angry'
3146 } 3147 }; 3148 3149}).call(this); 3150 3151(function() { 3152 var i, len, ref, ref1, ref2, ref3, ref4, ref5, ref6, script, scripts, src, st, 3153 indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }; 3154 3155 st = window.__sharethis__; 3156 3157 if (st.loaded) { 3158 return; 3159 } 3160 3161 st.loaded = true; 3162 3163 scripts = document.getElementsByTagName('script') || []; 3164 3165 for (i = 0, len = scripts.length; i < len; i++) { 3166 script = scripts[i]; 3167 src = script.getAttribute('src'); 3168 if (/\/js\/sharethis.js/.test(src)) { 3169 st.src = src; 3170 st.cms = (ref = /cms=([a-zA-Z0-9]+)/.exec(src)) != null ? ref[1] : void 0; 3171 st.product = (ref1 = /product=([a-zA-Z0-9-]+)/.exec(src)) != null ? ref1[1] : void 0; 3172 st.property = (ref2 = /property=([a-zA-Z0-9]+)/.exec(src)) != null ? ref2[1] : void 0; 3173 st.source = (ref3 = /source=([a-zA-Z0-9-]+)/.exec(src)) != null ? ref3[1] : void 0; 3174 st.ssb = (ref4 = /ssb=([a-zA-Z0-9-]+)/.exec(src)) != null ? ref4[1] : void 0; 3175 st.account = (ref5 = /account=([a-zA-Z0-9-]+)/.exec(src)) != null ? ref5[1] : void 0; 3176 } 3177 } 3178 3179 if (st.cms == null) { 3180 st.cms = 'unknown'; 3181 } 3182 3183 st.href = document.location.href; 3184 3185 if (st.source == null) { 3186 st.source = 'sharethis.js'; 3187 } 3188 3189 if (st.ssb == null) { 3190 st.ssb = 'false'; 3191 } 3192 3193 if (st.account == null) { 3194 st.account = 'true'; 3195 } 3196 3197 if (st.property == null) { 3198 st.property = 'anonymous'; 3199 } 3200 3201 if (st.product == null) { 3202 st.product = 'unknown'; 3203 } 3204 3205 if (ref6 = st.product, indexOf.call(st.PRODUCTS, ref6) < 0) { 3206 st.product = 'unknown'; 3207 } 3208 3209 st.initialize = function(options) { 3210 st.init = function(config) { 3211 st.config = config; 3212 return window.__sharethis__docReady(function() { 3213 var j, len1, product, ref7, results; 3214 if (typeof window.onShareThisLoaded === "function") { 3215 window.onShareThisLoaded(); 3216 } 3217 ref7 = st.PRODUCTS; 3218 results = []; 3219 for (j = 0, len1 = ref7.length; j < len1; j++) { 3220 product = ref7[j]; 3221 results.push(st.load(product, config[product])); 3222 } 3223 return results; 3224 }); 3225 }; 3226 if (st.config) { 3227 return st.init(st.config); 3228 } 3229 if (st.property !== 'anonymous') { 3230 return st.js("https://buttons-config.sharethis.com/js/" + st.property + ".js"); 3231 } else { 3232 if (st.account === 'false') { 3233 return setTimeout((function() { 3234 return st.load(st.product, { 3235 enabled: true, 3236 is_ssb: st.ssb === 'true', 3237 num_ssb_networks: 6 3238 }); 3239 }), 10); 3240 } else { 3241 return setTimeout((function() { 3242 return st.init({}); 3243 }), 10); 3244 } 3245 } 3246 }; 3247 3248 st.initialize(); 3249 3250 st.ibl(); 3251 3252 st.ecommerce(); 3253 3254 st.floc(); 3255 3256}).call(this); 3257 3258var __stdos__ = __stdos__ || {}; 3259 3260var tpcCookiesEnableCheckingDone = false; 3261var tpcCookiesEnabledStatus = true; 3262 3263if (typeof(__stdos__.data) == "undefined") { 3264 __stdos__.data = { 3265 bInit: false, 3266 pageInfo: {}, 3267 resetPageData: function() { 3268 __stdos__.data.pageInfo.hostname = ""; 3269 __stdos__.data.pageInfo.location = ""; 3270 __stdos__.data.pageInfo.product = "DOS2" 3271 __stdos__.data.pageInfo.url = ""; 3272 __stdos__.data.pageInfo.source = "" 3273 3274 }, 3275 init: function() { 3276 if (!__stdos__.data.bInit) { 3277 __stdos__.data.bInit = true; 3278 __stdos__.data.resetPageData(); 3279 var b = document.location.href; 3280 var a = "", 3281 c = ""; 3282 __stdos__.data.set("fcmp", typeof(window.__cmp) == 'function', "pageInfo"); 3283 __stdos__.data.set("fcmpv2", typeof(window.__tcfapi) == 'function', "pageInfo"); 3284 __stdos__.data.set("has_segmentio", typeof(window.analytics && window.analytics.identify) == 'function', "pageInfo"); 3285 __stdos__.data.set("url", b, "pageInfo"); 3286 __stdos__.data.set("title", document.title, "pageInfo"); 3287 a = (new Date()).getTime().toString(); 3288 c = Number(Math.random().toPrecision(5).toString().substr(2)).toString(); 3289 __stdos__.data.validateRefDomain(); 3290 __stdos__.data.set("hostname", document.location.hostname, "pageInfo"); 3291 __stdos__.data.set("location", document.location.pathname, "pageInfo") 3292 } 3293 }, 3294 validateRefDomain: function() { 3295 var a = __stdos__.data.get("refDomain", "pageInfo"); 3296 if (!a) { 3297 this.setRefDomain(window.document.referrer) 3298 } 3299 }, 3300 setRefDomain: function(a) { 3301 if (a.length == 0) { 3302 return 3303 } 3304 var b = a.replace("http://", "").replace("https://", "").split("/"); 3305 if (b.length > 0) { 3306 a = (typeof(b[0]) != "undefined") ? b[0] : a; 3307 var refQuery = (typeof(b[1]) != "undefined") ? b[1] : ""; 3308 __stdos__.data.set("refQuery", refQuery, "pageInfo"); 3309 __stdos__.data.set("refDomain", a, "pageInfo") 3310 } 3311 }, 3312 set: function(a, c, b) { 3313 if (typeof(c) == "number" || typeof(c) == "boolean") { 3314 __stdos__.data[b][a] = c 3315 } else { 3316 if (typeof(c) == "undefined" || c == null) {} else { 3317 __stdos__.data[b][a] = encodeURIComponent(decodeURIComponent(unescape(c.replace(/<[^<>]*>/gi, " ")).replace(/%/gi, "%25"))); 3318 if (a == "url" || a == "location" || a == "image") { 3319 try { 3320 __stdos__.data[b][a] = encodeURIComponent(decodeURIComponent(decodeURI(c.replace(/<[^<>]*>/gi, " ")).replace(/%/gi, "%25"))) 3321 } catch (d) { 3322 __stdos__.data[b][a] = encodeURIComponent(decodeURIComponent(unescape(c.replace(/<[^<>]*>/gi, " ")).replace(/%/gi, "%25"))) 3323 } 3324 } 3325 } 3326 } 3327 }, 3328 get: function(a, b) { 3329 try { 3330 if (__stdos__.data[b] && __stdos__.data[b][a]) { 3331 return decodeURIComponent(__stdos__.data[b][a]) 3332 } else { 3333 return false 3334 } 3335 } catch (c) { 3336 return false 3337 } 3338 }, 3339 unset: function(a, b) { 3340 if (__stdos__.data[b] && typeof(__stdos__.data[b][a]) != "undefined") { 3341 delete __stdos__.data[b][a] 3342 } 3343 }, 3344 bindEvent: function(element, eventName, eventHandler) { 3345 if (element.addEventListener) { 3346 element.addEventListener(eventName, eventHandler, false); 3347 } else if (element.attachEvent) { 3348 element.attachEvent('on' + eventName, eventHandler); 3349 } 3350 },
3351 debug: function(endpoint, event) { 3352 __stdos__.data.init(); 3353 var a = __stdos__.data.pageInfo; 3354 var c = ""; 3355 var b; 3356 for (b in a) { 3357 c += b + "=" + a[b] + "&" 3358 } 3359 c = c.substring(0, c.length - 1); 3360 3361 var loggerUrl = "https://l.sharethis.com/"; 3362 loggerUrl += endpoint; 3363 loggerUrl += "?event=" + event; 3364 loggerUrl += "&" + c; 3365 3366 var e = new Image(1, 1); 3367 e.src = loggerUrl; 3368 e.onload = function() { 3369 return 3370 }; 3371 }, 3372 parseCookie: function(name, cookie) { 3373 cookie = "; " + cookie 3374 var parts = cookie.split("; "+name+"="); 3375 if(parts.length === 2) { 3376 return parts.pop().split(';').shift(); 3377 }else { 3378 return null; 3379 } 3380 }, 3381 writeCookie: function(name, value, max_age) { 3382 if (!max_age) { 3383 max_age = 33696000 3384 } 3385 var host = (window && window.location && window.location.hostname) || ''; 3386 var parts = host.split('.'); 3387 var domain = ""; 3388 if (parts.length > 1) { 3389 domain = "domain=." + parts.slice(-2).join('.'); 3390 } 3391 var samesite_secure = ""; 3392 try { 3393 document.cookie = "st_samesite=1;SameSite=None;Secure"; 3394 if (__stdos__.data.parseCookie("st_samesite", document.cookie)) { 3395 samesite_secure = "SameSite=None;Secure" 3396 document.cookie = "st_samesite=1;max-age=0;SameSite=None;Secure"; 3397 } 3398 } catch (e) {} 3399 document.cookie = name + "=" + value + ";" + domain + ";path=/;max-age=" + max_age + ";" + samesite_secure; 3400 }, 3401 setConsent: function(consent) { 3402 for(var consent_key in consent) { 3403 __stdos__.data.set(consent_key,consent[consent_key],"pageInfo"); 3404 window.__sharethis__[consent_key] = consent[consent_key]; 3405 } 3406 }, 3407 getEUConsent: function(c) { 3408 3409 function once(fn, context) { 3410 var result; 3411 return function() { 3412 if(fn) { 3413 result = fn.apply(context || this, arguments); 3414 fn = null; 3415 } 3416 return result; 3417 }; 3418 } 3419 3420 var done = once(c); 3421 3422 // set usprivacy first if we have it 3423 var usprivacy = __stdos__.data.parseCookie("usprivacy", document.cookie); 3424 if (usprivacy) __stdos__.data.setConsent({ 3425 usprivacy: usprivacy 3426 }); 3427 3428 // keep track of how long it takes to get consent 3429 var start = Date.now(); 3430 3431 var useCookie = once(function() { 3432 3433 // check for first party cookies 3434 var euconsent_v2 = __stdos__.data.parseCookie("euconsent-v2", document.cookie); 3435 if (euconsent_v2 !== null) { 3436 3437 // use the first party cookie if it exists 3438 __stdos__.data.setConsent({ 3439 gdpr_consent: euconsent_v2, 3440 gdpr_domain: document.location.hostname, 3441 gdpr_method: "cookie" 3442 }); 3443 } 3444 done(); 3445 }); 3446 3447 if (typeof window.__tcfapi == "function") { 3448 3449 // fallback to cookie in case the tcf api is too slow or unavailable 3450 var timeout = setTimeout(useCookie, 5000); 3451 3452 // first we try to get the data from the cmp 3453 // wrap in a try catch since we don't control the tcfapi code on page 3454 try { 3455 3456 const tcfapi_callback = (data) => { 3457 if (data && data.tcString) { 3458 var gdpr_domain = (data.isServiceSpecific) 3459 ? document.location.hostname : ".sharethis.com"; 3460 __stdos__.data.setConsent({ 3461 consent_duration: Date.now() - start, 3462 gdpr_consent: data.tcString, 3463 gdpr_domain: gdpr_domain, 3464 gdpr_method: "api" 3465 }); 3466 clearTimeout(timeout); 3467 done(); 3468 __tcfapi('removeEventListener', 2, () => {}, data.listenerId); 3469 } 3470 } 3471 __tcfapi('addEventListener', 2, tcfapi_callback); 3472 3473 } catch (e) { 3474 3475 // fallback to cookie if there is an error 3476 useCookie(); 3477 } 3478 } else { 3479 3480 // fallback to cookie if the tcfapi doesn't exist 3481 useCookie(); 3482 } 3483 } 3484 }; 3485 __stdos__.data.resetPageData() 3486} 3487__stdos__.logger = { 3488 loggerUrl: "https://l.sharethis.com/", 3489 version: "st_sop.js", 3490 lang: "en", 3491 constructParamString: function() { 3492 var a = __stdos__.data.pageInfo; 3493 var c = ""; 3494 var b; 3495 for (b in a) { 3496 if (a[b] == null || a[b] === "") continue; 3497 c += b + "=" + a[b] + "&" 3498 } 3499 return c.substring(0, c.length - 1) 3500 }, 3501 log: function(a, h, j) { 3502 __stdos__.data.set("ts" + new Date().getTime(), "", "pageInfo") 3503 h = __stdos__.logger.loggerUrl 3504 3505 __stdos__.data.getEUConsent(function(consent){ 3506 if (!window.__sharethis__.consent_queue) { 3507 window.__sharethis__.consent_queue = {} 3508 } 3509 window.__sharethis__.consent_queue.initialized = true; 3510 if (window.__sharethis__.consent_queue.functions) { 3511 for (var i = 0; i < window.__sharethis__.consent_queue.functions.length; i++) { 3512 window.__sharethis__.consent_queue.functions[i](); 3513 } 3514 window.__sharethis__.consent_queue.functions = null; 3515 } 3516 var g = [ 3517 h, 3518 a, 3519 "?event=" + a, 3520 "&" + __stdos__.logger.constructParamString(), 3521 "&version=" + __stdos__.logger.version, 3522 "&lang=" + __stdos__.logger.lang 3523 ].join(''); 3524 var fpestid = __stdos__.data.parseCookie("fpestid", document.cookie);
3525 if (!fpestid) { 3526 try { fpestid = localStorage.getItem("fpestid") } catch(e) {} 3527 } 3528 if (fpestid) { 3529 g += "&fpestid=" + fpestid; 3530 } 3531 var description = window.__sharethis__.getDescription(); 3532 if (description) { 3533 g += "&description=" + encodeURIComponent(description); 3534 } 3535 var gdpr_consent = __stdos__.data.get("gdpr_consent", "pageInfo"); 3536 __stdos__.data.setConsent({ 3537 pview_had_consent: (gdpr_consent) ? true : false 3538 }); 3539 3540 ua_fields = {} 3541 var user_agent_data = {} 3542 window.__sharethis__.ua_fields = ua_fields 3543 try { 3544 if (navigator.userAgentData) { 3545 user_agent_data = navigator.userAgentData; 3546 } 3547 3548 if (Array.isArray(user_agent_data.brands)) { 3549 var ua = "" 3550 user_agent_data.brands.forEach((brand) => { 3551 if (ua) { 3552 ua += ", " 3553 } 3554 ua += `"${brand.brand}";v="${brand.version}"` 3555 }); 3556 g += "&ua=" + encodeURIComponent(ua); 3557 ua_fields.ua = ua 3558 } 3559 3560 if (user_agent_data.mobile !== undefined) { 3561 var ua_mobile = (user_agent_data.mobile) ? "true" : "false"; 3562 g += "&ua_mobile=" + encodeURIComponent(ua_mobile); 3563 ua_fields.ua_mobile = ua_mobile 3564 } 3565 3566 if (user_agent_data.platform) { 3567 var ua_platform = user_agent_data.platform 3568 g += "&ua_platform=" + encodeURIComponent(ua_platform); 3569 ua_fields.ua_platform = ua_platform 3570 } 3571 3572 } catch (e) { 3573 // do nothing for now if it fails 3574 } 3575 3576 // if there is no getHighEntropyValues function create a shell function 3577 // in order to keep the workflow unified 3578 if (!user_agent_data.getHighEntropyValues) { 3579 user_agent_data.getHighEntropyValues = () => { 3580 return new Promise((resolve) => { 3581 resolve({}); 3582 }); 3583 } 3584 } 3585 3586 function once(fn, context) { 3587 var result; 3588 return function() { 3589 if(fn) { 3590 result = fn.apply(context || this, arguments); 3591 fn = null; 3592 } 3593 return result; 3594 }; 3595 } 3596 3597 var sendPageView = once(function() { 3598 3599 try { 3600 try { 3601 if (crypto && crypto.randomUUID) { 3602 g += "&uuid=" + crypto.randomUUID() 3603 } 3604 __stdos__.data.pageInfo.pview_url = g 3605 } catch (e) {} 3606 var c = new XMLHttpRequest(); 3607 c.open("GET", g, true); 3608 c.withCredentials = true; 3609 c.onreadystatechange = function() { 3610 if (this.readyState == this.DONE) { 3611 try { 3612 var res = JSON.parse(c.responseText); 3613 if (typeof(res) !== "undefined") { 3614 __stdos__.data.set("stid", res.stid, "pageInfo"); 3615 if(res.fpestid) { 3616 __stdos__.data.writeCookie("fpestid", res.fpestid, res.fpestid_maxage); 3617 var fpestid_cookie = __stdos__.data.parseCookie("fpestid", document.cookie); 3618 try { 3619 if (!fpestid_cookie) { 3620 localStorage.setItem("fpestid", res.fpestid,); 3621 var timestamp = Math.floor(Date.now() / 1000); 3622 localStorage.setItem("fpestid_timestamp", timestamp.toString()); 3623 } 3624 } 3625 catch(e) {} 3626 } 3627 if(res.status === "true") { 3628 var product = __stdos__.data.get("product", "pageInfo") 3629 3630 if ((product === "ecommerce") || 3631 (product === "privy-share-buttons") || 3632 (product === "ga")) { 3633 return; 3634 } 3635 window.__sharethis__.loadPixel(); 3636 3637 var st_debug = false;
3638 3639 try { 3640 3641 if (window && window.location && window.location.href && window.location.href.endsWith("st_debug=true")) { 3642 st_debug = true 3643 } 3644 3645 // run lotame's panorama id code if indicated by the content rule 3646 if(res.lotame === "true" ) { 3647 !function() { 3648 3649 if (st_debug) { 3650 console.log("lotame firing 1"); 3651 } 3652 3653 // Callback that will be triggered after each call to sync() 3654 // and let you have access to the profile and/or panorama ids 3655 var syncCallback = function (profile) { 3656 3657 if (st_debug) { 3658 console.log("lotame firing 2"); 3659 } 3660 3661 // sync the panorama id 3662 var panorama_id = profile.getPanoramaId(); 3663 if (st_debug) { 3664 console.log(panorama_id); 3665 console.log(res.stid); 3666 } 3667 if (panorama_id && res.stid) { 3668 var url = "https://sync.sharethis.com/panorama" 3669 url += "?uid=" + encodeURIComponent(panorama_id) 3670 url += "&stid=" + encodeURIComponent(res.stid) 3671 st.send(url) 3672 } 3673 3674 }; 3675 3676 var lotame_client_id = '16621'; 3677 var lotame_tag_input = { 3678 config: { 3679 onProfileReady: syncCallback 3680 } 3681 }; 3682 3683 // Lotame initialization 3684 var lotame_config = lotame_tag_input.config || {}; 3685 var namespace = window['lotame_sync_' + lotame_client_id] = {}; 3686 namespace.config = lotame_config; 3687 namespace.data = {}; 3688 namespace.cmd = namespace.cmd || []; 3689 } (); 3690 3691 window.lotame_sync_16621.cmd.push(function() { 3692 window.lotame_sync_16621.sync(); 3693 }); 3694 3695 window.__sharethis__.js("https://platform-api.sharethis.com/panorama.js") 3696 } 3697 } catch (e) { 3698 if (st_debug) { 3699 console.log(e) 3700 } 3701 } 3702 3703 } 3704 3705 if(res.dmd === "true") { 3706 window.__sharethis__.js("https://platform-api.sharethis.com/dmd.js") 3707 } 3708 3709 if(res.atlas) { 3710 window.__sharethis__.js("https://platform-api.sharethis.com/atlas-exp.js") 3711 } 3712 3713 } 3714 j ? j() : null 3715 } catch(e) { 3716 } 3717 } 3718 }; 3719 c.send() 3720 } catch (d) { 3721 var e = new Image(1, 1); 3722 e.src = g; 3723 e.onload = function() { 3724 return 3725 }; 3726 j ? j() : null 3727 } 3728 3729 }) 3730 3731 var getOverride = function() { 3732 var is_safari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent); 3733 if (is_safari) { 3734 var req = new XMLHttpRequest(); 3735 req.open("GET", "https://data.stbuttons.click/data", true); 3736 req.onreadystatechange = function() { 3737 try { 3738 if (this.readyState == this.DONE) { 3739 var res = JSON.parse(req.responseText) 3740 if (res.data) { 3741 __stdos__.data.set("override", res.data,"pageInfo"); 3742 g += "&override=" + encodeURIComponent(res.data); 3743 } 3744 sendPageView() 3745 } 3746 } catch(e) { 3747 sendPageView() 3748 } 3749 } 3750 req.send() 3751 3752 // send page view if request doesn't complete in 2 seconds 3753 setTimeout(sendPageView, 2000) 3754 } else { 3755 sendPageView() 3756 } 3757 } 3758 3759 var high_entropy_fields = [ 3760 "model", 3761 "platformVersion", 3762 "fullVersionList" 3763 ] 3764 3765 user_agent_data.getHighEntropyValues(high_entropy_fields).then((high_entropy_values) => { 3766 3767 try { 3768 3769 if (Array.isArray(high_entropy_values.fullVersionList)) { 3770 var ua_full_version_list = "" 3771 high_entropy_values.fullVersionList.forEach((brand) => { 3772 if (ua_full_version_list) { 3773 ua_full_version_list += ", " 3774 } 3775 ua_full_version_list += `"${brand.brand}";v="${brand.version}"` 3776 }); 3777 g += "&ua_full_version_list=" + encodeURIComponent(ua_full_version_list); 3778 ua_fields.ua_full_version_list = ua_full_version_list 3779 } 3780 3781 if (high_entropy_values.model) { 3782 var ua_model = high_entropy_values.model 3783 g += "&ua_model=" + encodeURIComponent(ua_model); 3784 ua_fields.ua_model = ua_model 3785 } 3786 3787 if (high_entropy_values.platformVersion) { 3788 var ua_platform_version = high_entropy_values.platformVersion 3789 g += "&ua_platform_version=" + encodeURIComponent(ua_platform_version); 3790 ua_fields.ua_platform_version = ua_platform_version 3791 } 3792 3793 } catch (e) { 3794 // do nothing for now 3795 } 3796 3797 getOverride() 3798 3799 }); 3800 3801 }) 3802 } 3803}; 3804 3805(function(){ 3806 var _st = window.__sharethis__; 3807 var st_pview_logged = typeof stlib !== 'undefined' && stlib !== null && stlib.onscriptload; 3808 3809 if (!st_pview_logged && !__stdos__.onscriptload && document.URL.indexOf("edge.sharethis.com") == -1) { 3810 __stdos__.data.init(); 3811 __stdos__.data.set("cms", _st.cms, "pageInfo"); 3812 __stdos__.data.set("publisher", _st.property, "pageInfo") 3813 __stdos__.data.set("product", _st.product, "pageInfo") 3814 __stdos__.data.set("source", _st.source, "pageInfo") 3815 if (_st.embeds && st.embeds.length > 0 && !_st.is_ie) { 3816 __stdos__.data.set("embeds_csv", _st.embeds.join(','), "pageInfo") 3817 /* 3818 setTimeout(function(){ 3819 //_st.js("https://platform-api.sharethis.com/rhombus.js") 3820 }, 3000) 3821 */ 3822 } 3823 __stdos__.data.set("sop", true, "pageInfo") 3824 __stdos__.onscriptload = true; 3825 __stdos__.logger.log("pview"); 3826 } 3827})(); 3828 3829 3830 3831(function() { 3832 var st; 3833 3834 st = window.__sharethis__; 3835 3836 st.loadSsb = function($el, config, load) { 3837 var _xhr, is_preview, num_ssb_networks; 3838 num_ssb_networks = config.num_ssb_networks, is_preview = config.is_preview; 3839 if (num_ssb_networks == null) { 3840 num_ssb_networks = 6; 3841 } 3842 if (is_preview == null) { 3843 is_preview = false;
3844 } 3845 if (is_preview) { 3846 load($el, config); 3847 return; 3848 } 3849 _xhr = new XMLHttpRequest(); 3850 _xhr.open("GET", "https://datasphere-sbsvc.sharethis.com?n=" + num_ssb_networks + "&debug"); 3851 _xhr.responseType = "json"; 3852 _xhr.onload = function() { 3853 var ref, ref1; 3854 if ((ref = _xhr.response) != null ? ref.buttons : void 0) { 3855 config.networks = (ref1 = _xhr.response) != null ? ref1.buttons : void 0; 3856 } 3857 return load($el, config); 3858 }; 3859 return _xhr.send(); 3860 }; 3861 3862}).call(this); 3863 3864(function() { 3865 var st; 3866 3867 st = window.__sharethis__; 3868 3869 st.loader['custom-share-buttons'] = function() { 3870 var $button, $buttons, i, j, len, len1, results; 3871 $buttons = document.querySelectorAll('.st-custom-button'); 3872 if ($buttons.length === 0) { 3873 return; 3874 } 3875 for (i = 0, len = $buttons.length; i < len; i++) { 3876 $button = $buttons[i]; 3877 st.addEventListener($button, 'click', function() { 3878 return st.share({ 3879 count_url: this.getAttribute('data-count-url'), 3880 description: this.getAttribute('data-description'), 3881 image: this.getAttribute('data-image'), 3882 message: this.getAttribute('data-message'), 3883 network: this.getAttribute('data-network'), 3884 share_url: this.getAttribute('data-share-url'), 3885 short_url: this.getAttribute('data-short-url'), 3886 subject: this.getAttribute('data-email-subject'), 3887 title: this.getAttribute('data-title'), 3888 url: this.getAttribute('data-url'), 3889 username: this.getAttribute('data-username') 3890 }); 3891 }); 3892 } 3893 results = []; 3894 for (j = 0, len1 = $buttons.length; j < len1; j++) { 3895 $button = $buttons[j]; 3896 results.push((function($button) { 3897 var $count, data_count_url, data_url, network, url; 3898 network = $button.getAttribute('data-network'); 3899 data_url = $button.getAttribute('data-url'); 3900 data_count_url = $button.getAttribute('data-count-url'); 3901 url = data_count_url || data_url || st.href; 3902 $count = $button.querySelector('.count'); 3903 if ($count) { 3904 return st.loadCounts({ 3905 url: url 3906 }, function(counts) { 3907 var label, ref, value; 3908 ref = counts[network] || {}, label = ref.label, value = ref.value; 3909 if (label && value > 0) { 3910 if ($count != null) { 3911 $count.innerHTML = label; 3912 } 3913 return st.removeClass($button, 'st-hide-label'); 3914 } else { 3915 return st.addClass($button, 'st-hide-label'); 3916 } 3917 }); 3918 } 3919 })($button)); 3920 } 3921 return results; 3922 }; 3923 3924}).call(this); 3925 3926(function() { 3927 var st; 3928 3929 st = window.__sharethis__; 3930 3931 st.loader['email-list-builder'] = function(config) { 3932 var $backdrop, $button, $close, $el, $error, $input, $modal, behavior, button_label, color, common_css, container, css, fade_in, headline, hover_css, html, id, message, onClose, onScroll, onSubmit, property, ref, scroll_down, scroll_timeout, send, show, thanks; 3933 if (config == null) { 3934 config = {}; 3935 } 3936 if (!config.enabled) { 3937 return; 3938 } 3939 color = config.color, button_label = config.button_label, headline = config.headline, message = config.message, property = config.property, thanks = config.thanks, scroll_down = config.scroll_down; 3940 behavior = config.behavior, container = config.container, fade_in = config.fade_in, onClose = config.onClose, onSubmit = config.onSubmit; 3941 if (behavior !== 'show') { 3942 if (st.storage.get('st_email_list_builder_email_collected')) { 3943 return; 3944 } 3945 } 3946 if (color == null) { 3947 color = st.COLORS['sharethis']; 3948 } 3949 if (behavior == null) { 3950 behavior = 'smart'; 3951 } 3952 if (button_label == null) { 3953 button_label = 'Join'; 3954 } 3955 if (fade_in == null) { 3956 fade_in = true; 3957 } 3958 if (headline == null) { 3959 headline = 'SUBSCRIBE VIA EMAIL'; 3960 } 3961 if (message == null) { 3962 message = 'Subscribe to out mailing list to get updates!'; 3963 } 3964 if (property == null) { 3965 property = st.property; 3966 } 3967 if (scroll_down == null) { 3968 scroll_down = 0; 3969 } 3970 if (thanks == null) { 3971 thanks = 'Thank you for subscribing!'; 3972 } 3973 if (container == null) { 3974 container = document.body; 3975 } 3976 if (typeof container === 'string') { 3977 container = document.getElementById(container); 3978 } 3979 ref = st.newElement(null), $el = ref.$el, id = ref.id; 3980 st.addClass($el, 'st-email-list-builder'); 3981 if (fade_in) { 3982 st.addClass($el, 'st-hidden'); 3983 } 3984 common_css = "#" + id + " {\n " + st.BORDER_BOX + "\n " + (st.TRANSITION('opacity')) + "\n bottom: 0;\n display: block;\n left: 0;\n opacity: 1;\n position: fixed;\n right: 0;\n text-align: center;\n top: 0;\n z-index: 9999;\n}\n#" + id + ".st-hidden {\n opacity: 0;\n}\n#" + id + " .st-backdrop {\n background: rgba(0, 0, 0, 0.8);\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 10;\n}\n#" + id + " .st-modal {\n " + (st.BORDER_RADIUS(6)) + "\n " + st.BORDER_BOX + "\n " + (st.TRANSITION('opacity')) + "\n background: #fff;\n border-top: 10px solid " + color + ";\n bottom: 0;\n color: #333;\n margin: 100px auto 0;\n max-width: 90%;\n opacity: 1;\n padding: 20px 40px;\n position: relative;\n width: 600px;\n z-index: 20;\n}\n#" + id + " .st-modal.st-hidden {\n opacity: 0;\n}\n#" + id + " .st-headline {\n margin-bottom: 5px;\n font-size: 32px;\n line-height: 38px;\n}\n#" + id + " .st-message {\n margin-bottom: 25px;\n font-size: 18px;\n line-height: 24px;\n}\n#" + id + " .st-error {\n color: red;\n font-size: 14px;
3984\n line-height: 26px;\n}\n#" + id + " input {\n " + st.BORDER_BOX + "\n " + (st.BORDER_RADIUS(4)) + "\n background-color: #fff;\n border: 1px solid #aeaeae;\n color: #333;\n display: block;\n font-size: 15px;\n height: 48px;\n margin-bottom: 25px;\n padding: 12px;\n text-align: center;\n width: 100%;\n}\n#" + id + " .st-btn {\n " + st.BORDER_BOX + "\n " + (st.BORDER_RADIUS(4)) + "\n " + (st.TRANSITION()) + "\n background-color: #fff;\n border: 0;\n background: " + color + ";\n color: #fff;\n cursor: pointer;\n display: inline-block;\n font-size: 18px;\n height: 48px;\n line-height: 48px;\n min-width: 120px;\n padding: 0 20px;\n}\n#" + id + " .st-close {\n " + (st.BOX_SHADOW('0 0 20px black')) + "\n " + (st.BORDER_RADIUS(18)) + "\n background: #555;\n border: 3px solid white;\n cursor: pointer;\n font-size: 24px;\n height: 36px;\n padding-top: 1px;\n position: absolute;\n right: -15px;\n top: -23px;\n width: 36px;\n}"; 3985 hover_css = "#" + id + " .st-btn:hover {\n}"; 3986 css = common_css; 3987 if (!st.mobile) { 3988 css += hover_css; 3989 } 3990 st.css(css); 3991 html = "<div class=\"st-backdrop\"></div>\n<div class=\"st-modal\">\n <div class=\"st-headline\">" + headline + "</div>\n <div class=\"st-message\">" + message + "</div>\n <div class=\"st-error\"></div>\n <input class=\"st-email\" type=\"text\" placeholder=\"[email protected]\" />\n <div class=\"st-btn\">" + button_label + "</div>\n <div class=\"st-close\">\n " + st.ICONS['close'] + "\n </div>\n</div>"; 3992 $el.innerHTML = html; 3993 $backdrop = $el.querySelector('.st-backdrop'); 3994 $button = $el.querySelector('.st-btn'); 3995 $close = $el.querySelector('.st-close'); 3996 $error = $el.querySelector('.st-error'); 3997 $input = $el.querySelector('input'); 3998 $modal = $el.querySelector('.st-modal'); 3999 show = function() { 4000 var onScroll, seen_at; 4001 if (behavior !== 'show') { 4002 seen_at = st.storage.get('st_email_list_builder_seen_at'); 4003 if (Date.now() - seen_at < st.WEEK) { 4004 return; 4005 } 4006 st.storage.set('st_email_list_builder_seen_at', Date.now()); 4007 } 4008 if (container != null) { 4009 container.appendChild($el); 4010 } 4011 if (0 === scroll_down) { 4012 return setTimeout((function() { 4013 return st.removeClass($el, 'st-hidden'); 4014 }), 10); 4015 } else { 4016 onScroll = function(e) {}; 4017 st.addEventListener(document, 'scroll', function(e) { 4018 var scroll_timeout; 4019 if (scroll_timeout) { 4020 clearTimeout(scroll_timeout); 4021 } 4022 return scroll_timeout = setTimeout((function() { 4023 if (st.getScrollDepth() > scroll_down) { 4024 st.removeEventListener(document, 'scroll', onScroll); 4025 return st.removeClass($el, 'st-hidden'); 4026 } 4027 }), 1000); 4028 }); 4029 return st.addEventListener(document, 'scroll', onScroll); 4030 } 4031 }; 4032 st.addEventListener($backdrop, 'click', function() { 4033 st.close($el); 4034 return typeof onClose === "function" ? onClose() : void 0; 4035 }); 4036 st.addEventListener($close, 'click', function() { 4037 st.close($el); 4038 return typeof onClose === "function" ? onClose() : void 0; 4039 }); 4040 st.addEventListener($input, 'keydown', function(e) { 4041 if (st.isEnter(e)) { 4042 send(); 4043 } 4044 return $error.innerHTML = ''; 4045 }); 4046 st.addEventListener($button, 'click', function() { 4047 return send(); 4048 }); 4049 st.addEventListener(document, 'keydown', function(e) { 4050 if (st.isEsc(e)) { 4051 st.close($el); 4052 return typeof onClose === "function" ? onClose() : void 0; 4053 } 4054 }); 4055 send = function() { 4056 var email, url; 4057 email = $el.querySelector('.st-email').value; 4058 url = st.href; 4059 if (!st.isValidEmail(email)) { 4060 $error.innerHTML = 'Please enter a valid email'; 4061 return; 4062 } 4063 st.send(st.API + "/v1.0/email-list-builder/collect", { 4064 email: email, 4065 property: property 4066 }); 4067 st.log({ 4068 event: 'elb-submit', 4069 url: url 4070 }); 4071 st.emit('email-submitted', { 4072 email: email, 4073 property: property, 4074 url: url 4075 }); 4076 st.storage.set('st_email_list_builder_collected', true); 4077 st.addClass($modal, 'st-hidden'); 4078 return setTimeout((function() { 4079 html = "<div class=\"st-headline\">" + thanks + "</div>"; 4080 $modal.innerHTML = html; 4081 st.removeClass($modal, 'st-hidden'); 4082 return setTimeout((function() { 4083 st.close($el); 4084 return typeof onSubmit === "function" ? onSubmit(email) : void 0; 4085 }), 2500); 4086 }), 500); 4087 }; 4088 if (behavior === 'show' || 0 !== scroll_down) { 4089 return show(); 4090 } else { 4091 setTimeout((function() { 4092 return show(); 4093 }), 60 * 1000); 4094 scroll_timeout = null; 4095 onScroll = function(e) { 4096 return st.addEventListener(document, 'scroll', function(e) { 4097 if (scroll_timeout) { 4098 clearTimeout(scroll_timeout); 4099 } 4100 return scroll_timeout = setTimeout((function() { 4101 if (st.getScrollDepth() > 60) { 4102 st.removeEventListener(document, 'scroll', onScroll); 4103 return show(); 4104 } 4105 }), 1000); 4106 }); 4107 }; 4108 return st.addEventListener(document, 'scroll', onScroll); 4109 } 4110 }; 4111 4112}).call(this); 4113 4114(function() { 4115 var st; 4116 4117 st = window.__sharethis__; 4118
4119 st.loader['gdpr-compliance-tool'] = function(config) { 4120 var _xhr, color, commandQueue, display, publisher_name, publisher_purposes, scope; 4121 if (config == null) { 4122 config = {}; 4123 } 4124 if (!config.enabled) { 4125 return; 4126 } 4127 if (window.__cmp) { 4128 return; 4129 } 4130 color = config.color, display = config.display, publisher_name = config.publisher_name, publisher_purposes = config.publisher_purposes, scope = config.scope; 4131 if (color == null) { 4132 color = '#2e7d32'; 4133 } 4134 if (publisher_name == null) { 4135 publisher_name = ''; 4136 } 4137 if (publisher_purposes == null) { 4138 publisher_purposes = []; 4139 } 4140 commandQueue = []; 4141 st.addEventListener('message', function(event) { 4142 return window.__cmp.receiveMessage(event); 4143 }); 4144 window.__cmp = function(command, parameter, callback) { 4145 return commandQueue.push({ 4146 command: command, 4147 paramter: parameter, 4148 callback: callback 4149 }); 4150 }; 4151 window.__cmp.commandQueue = commandQueue; 4152 window.__cmp.receiveMessage = function(event) { 4153 var data; 4154 data = event && event.data && event.data.__cmpCall; 4155 if (data) { 4156 return commandQueue.push({ 4157 callId: data.callId, 4158 command: data.command, 4159 parameter: data.parameter, 4160 event: event 4161 }); 4162 } 4163 }; 4164 window.__cmp.config = { 4165 storeConsentGlobally: scope === 'global', 4166 publisherName: publisher_name, 4167 publisherPurposeList: publisher_purposes, 4168 color: color 4169 }; 4170 if (display === "always") { 4171 __cmp('showConsentTool'); 4172 return st.js("https://gdpr-api.sharethis.com/cmp.js"); 4173 } else if (display === "eu") { 4174 _xhr = new XMLHttpRequest(); 4175 _xhr.open("GET", "https://gdpr-api.sharethis.com/is_eu"); 4176 _xhr.responseType = "json"; 4177 _xhr.onload = (function(_this) { 4178 return function() { 4179 var ref; 4180 if ((ref = _xhr.response) != null ? ref.is_eu : void 0) { 4181 __cmp('showConsentTool'); 4182 return st.js("https://gdpr-api.sharethis.com/cmp.js"); 4183 } 4184 }; 4185 })(this); 4186 return _xhr.send(); 4187 } 4188 }; 4189 4190}).call(this); 4191 4192(function() { 4193 var st; 4194 4195 st = window.__sharethis__; 4196 4197 st.loader['gdpr-compliance-tool-v2'] = function(config) { 4198 var _xhr, background_color, color, display, gear_color, gear_position, language, preview, publisher_name, publisher_purposes, publisher_restrictions, scope, text_color; 4199 if (config == null) { 4200 config = {}; 4201 } 4202 4203 /* 4204 config = { 4205 background_color: '#000000' 4206 color: '#9900ef' 4207 display: 'always' 4208 enabled: true 4209 gear_color: '' 4210 gear_position: 'bottom_left' 4211 language: 'en' 4212 publisher_name: 'ShareThis' 4213 scope: 'global' 4214 text_color: '#ffffff' 4215 } 4216 */ 4217 if (!config.enabled) { 4218 return; 4219 } 4220 preview = config.preview, background_color = config.background_color, color = config.color, display = config.display, gear_color = config.gear_color, gear_position = config.gear_position, language = config.language, publisher_name = config.publisher_name, publisher_purposes = config.publisher_purposes, publisher_restrictions = config.publisher_restrictions, scope = config.scope, text_color = config.text_color; 4221 if (language == null) { 4222 language = 'en'; 4223 } 4224 if (publisher_name == null) { 4225 publisher_name = ''; 4226 } 4227 if (publisher_purposes == null) { 4228 publisher_purposes = []; 4229 } 4230 if (publisher_restrictions == null) { 4231 publisher_restrictions = {}; 4232 } 4233 if (preview == null) { 4234 preview = false; 4235 } 4236 if ((typeof Shopify !== "undefined" && Shopify !== null) && void 0 === (Shopify.designMode != null) && preview === true) { 4237 return; 4238 } 4239 window.__cmpconfig = { 4240 background_color: background_color, 4241 color: color, 4242 gear_color: gear_color, 4243 gear_position: gear_position, 4244 global: scope !== 'publisher', 4245 language: language, 4246 publisher_name: publisher_name, 4247 publisher_restrictions: publisher_restrictions, 4248 purposes: publisher_purposes, 4249 text_color: text_color, 4250 preview: preview 4251 }; 4252 if (display === "always") { 4253 return st.js("https://gdpr-api.sharethis.com/cmp-v2.js"); 4254 } else if (display === "eu") { 4255 _xhr = new XMLHttpRequest(); 4256 _xhr.open("GET", "https://gdpr-api.sharethis.com/is_eu"); 4257 _xhr.responseType = "json"; 4258 _xhr.onload = (function(_this) { 4259 return function() { 4260 var ref; 4261 if ((ref = _xhr.response) != null ? ref.is_eu : void 0) { 4262 return st.js("https://gdpr-api.sharethis.com/cmp-v2.js"); 4263 } 4264 }; 4265 })(this); 4266 return _xhr.send(); 4267 } 4268 }; 4269 4270}).call(this); 4271 4272(function() { 4273 var st; 4274 4275 st = window.__sharethis__; 4276 4277 st.loader['image-share-buttons'] = function(config) { 4278 var $el, $image, $images, alignment, container, enter, exit, i, id, inline_buttons, len, networks, omit_class, onLoad, over_buttons, over_image, padding, radius, ref, size, spacing, src, timeout; 4279 if (config == null) { 4280 config = {}; 4281 } 4282 if (!config.enabled) { 4283 return; 4284 } 4285 alignment = config.alignment, container = config.container, omit_class = config.omit_class, onLoad = config.onLoad, padding = config.padding, networks = config.networks, radius = config.radius, size = config.size, spacing = config.spacing; 4286 if (networks == null) { 4287 networks = ['facebook', 'twitter', 'pinterest', 'email']; 4288 } 4289 if (omit_class == null) { 4290 omit_class = ''; 4291 } 4292 if (padding == null) { 4293 padding = 10; 4294 } 4295 if (radius == null) { 4296 radius = 0; 4297 } 4298 if (size == null) { 4299 size = 40; 4300 } 4301 if (spacing == null) { 4302 spacing = 8; 4303 } 4304 if (typeof container === 'string') { 4305 container = document.getElementById(container); 4306 } 4307 ref = st.newElement(container), $el = ref.$el, id = ref.id; 4308 st.addClass($el, 'st-image-share-buttons'); 4309 $el.style.position = 'absolute'; 4310 inline_buttons = st.load('inline-share-buttons', { 4311 alignment: alignment, 4312 id: id, 4313 enabled: true, 4314 networks: networks, 4315 padding: padding, 4316 radius: radius, 4317 size: size, 4318 spacing: spacing, 4319 onLoad: function() { 4320 st.addClass($el, 'st-hidden'); 4321 return typeof onLoad === "function" ? onLoad() : void 0; 4322 } 4323 }); 4324 timeout = null; 4325 over_buttons = false;
4326 over_image = false; 4327 enter = function($img) { 4328 var left, ref1, src, top; 4329 if (omit_class) { 4330 if (st.hasClass($img, omit_class)) { 4331 return; 4332 } 4333 if (st.hasClass($img.parentNode.parentNode, omit_class)) { 4334 return; 4335 } 4336 if (st.hasClass($img.parentNode, omit_class)) { 4337 return; 4338 } 4339 } 4340 ref1 = st.position($img, container), left = ref1.left, top = ref1.top; 4341 src = $img.getAttribute('src'); 4342 $el.style.width = $img.width + 'px'; 4343 if ($img.height < 200 || $img.width < 200) { 4344 return; 4345 } 4346 if (timeout) { 4347 clearTimeout(timeout); 4348 } 4349 return timeout = setTimeout((function() { 4350 if (inline_buttons != null) { 4351 inline_buttons.modify('image', src); 4352 } 4353 $el.style.left = st.px(left); 4354 $el.style.top = st.px(top); 4355 $el.style.padding = st.px(spacing); 4356 $el.style.boxSizing = 'border-box'; 4357 st.removeClass($el, 'st-hide'); 4358 st.removeClass($el, 'st-hidden'); 4359 return inline_buttons != null ? inline_buttons.resize() : void 0; 4360 }), 10); 4361 }; 4362 exit = function(next) { 4363 if (timeout) { 4364 clearTimeout(timeout); 4365 } 4366 return timeout = setTimeout((function() { 4367 if (over_image || over_buttons) { 4368 return; 4369 } 4370 st.addClass($el, 'st-hide'); 4371 return typeof next === "function" ? next() : void 0; 4372 }), 10); 4373 }; 4374 $images = document.querySelectorAll('img'); 4375 for (i = 0, len = $images.length; i < len; i++) { 4376 $image = $images[i]; 4377 src = $image.getAttribute('src'); 4378 if (/\.(gif|jpg|jpeg|png)$/i.test(src)) { 4379 st.addEventListener($image, 'mouseenter', function() { 4380 over_image = true; 4381 return enter(this); 4382 }); 4383 st.addEventListener($image, 'mouseleave', function() { 4384 over_image = false; 4385 return exit(); 4386 }); 4387 } 4388 } 4389 st.addEventListener($el, 'mouseenter', function() { 4390 return over_buttons = true; 4391 }); 4392 return st.addEventListener($el, 'mouseleave', function() { 4393 over_buttons = false; 4394 return exit(); 4395 }); 4396 }; 4397 4398}).call(this); 4399 4400(function() { 4401 var DOMAINS, load, st; 4402 4403 st = window.__sharethis__; 4404 4405 DOMAINS = { 4406 airbnb: 'https://www.airbnb.com/rooms/', 4407 amazon: 'https://www.amazon.com/gp/profile/', 4408 bandcamp: '', 4409 behance: 'https://www.behance.net/', 4410 bitbucket: 'https://bitbucket.org/', 4411 blogger: 'https://www.blogger.com/', 4412 bluesky: 'https://bsky.app/profile/', 4413 deviantart: '', 4414 digg: 'https://www.digg.com/', 4415 discord: 'https://discord.gg/', 4416 dribbble: 'https://dribbble.com/', 4417 etsy: 'https://www.etsy.com/shop/', 4418 facebook: 'https://www.facebook.com/', 4419 flickr: 'https://www.flickr.com/people/', 4420 flipboard: 'https://flipboard.com/', 4421 foursquare: 'https://foursquare.com/v/', 4422 houzz: 'https://www.houzz.com/user/', 4423 github: 'https://www.github.com/', 4424 gitlab: 'https://gitlab.com/', 4425 googlemaps: '', 4426 goodreads: '', 4427 instagram: 'https://www.instagram.com/', 4428 linkedin: 'https://www.linkedin.com/', 4429 medium: 'https://www.medium.com/', 4430 messenger: 'https://www.messenger.com/', 4431 meetup: 'https://www.meetup.com/members/', 4432 mix: 'https://mix.com/', 4433 odnoklassniki: 'https://ok.ru/', 4434 patreon: 'https://www.patreon.com/', 4435 pinterest: 'https://www.pinterest.com/', 4436 quora: 'https://www.quora.com/', 4437 reddit: 'https://www.reddit.com/', 4438 shares: 'https://shar.es/@', 4439 skype: '', 4440 slideshare: 'https://www.slideshare.net/', 4441 snapchat: 'https://www.snapchat.com/', 4442 soundcloud: 'https://soundcloud.com/', 4443 spotify: 'https://open.spotify.com/', 4444 stackoverflow: 'https://stackoverflow.com/users/', 4445 telegram: 'https://t.me/', 4446 threads: 'https://www.threads.net/@', 4447 tiktok: 'https://www.tiktok.com/@', 4448 trello: 'https://trello.com/', 4449 tripadvisor: 'https://www.tripadvisor.com/Profile/', 4450 tumblr: 'https://www.tumblr.com/', 4451 twitch: 'https://www.twitch.tv/', 4452 twitter: 'https://www.twitter.com/', 4453 vk: 'https://www.vk.com/', 4454 vimeo: 'https://vimeo.com/', 4455 wechat: 'https://web.wechat.com/', 4456 weibo: 'https://www.weibo.com/', 4457 whatsapp: 'https://wa.me/', 4458 xing: 'https://www.xing.com/profile/', 4459 yelp: 'https://www.yelp.com/', 4460 youtube: 'https://www.youtube.com/', 4461 zillow: 'https://www.zillow.com/profile/', 4462 zomato: '' 4463 }; 4464 4465 st.loader['inline-follow-buttons'] = function(config) { 4466 var $el, $els, i, len, results; 4467 if (config == null) { 4468 config = {}; 4469 } 4470 if (!config.enabled) { 4471 return; 4472 } 4473 if (config.id) { 4474 $el = document.getElementById(config.id); 4475 if ($el) { 4476 return load($el, config); 4477 } 4478 } else { 4479 $els = document.querySelectorAll('.sharethis-inline-follow-buttons'); 4480 results = []; 4481 for (i = 0, len = $els.length; i < len; i++) { 4482 $el = $els[i]; 4483 results.push(load($el, config)); 4484 } 4485 return results; 4486 } 4487 }; 4488 4489 load = function($el, config) { 4490 var $button, $buttons, action, action_enable, action_pos, alignment, alignment_opposite, background_color, class_names, color, common_css, css, fade_in, fn, hover_css, html, i, id, index, j, language, len, len1, network, network_css, networks, onLoad, padding, preview, profiles, radius, resize, size, spacing, text_color, text_color_filter, url; 4491 action = config.action, action_enable = config.action_enable, action_pos = config.action_pos, alignment = config.alignment, color = config.color, fade_in = config.fade_in, id = config.id, language = config.language, networks = config.networks, onLoad = config.onLoad, padding = config.padding, profiles = config.profiles, radius = config.radius, size = config.size, spacing = config.spacing, url = config.url, text_color = config.text_color, background_color = config.background_color, preview = config.preview; 4492 alignment_opposite = alignment === 'left' ? 'right' : 'left'; 4493 if (action == null) { 4494 action = 'Follow us:'; 4495 } 4496 if (action_enable == null) { 4497 action_enable = true; 4498 } 4499 if (action_pos == null) { 4500 action_pos = 'top'; 4501 } 4502 if (alignment == null) { 4503 alignment = 'left'; 4504 } 4505 if (color == null) { 4506 color = 'social'; 4507 } 4508 if (fade_in == null) { 4509 fade_in = true; 4510 } 4511 if (language == null) { 4512 language = 'en'; 4513 } 4514 if (networks == null) { 4515 networks = ['facebook', 'twitter', 'pinterest']; 4516 } 4517 if (padding == null) { 4518 padding = 10; 4519 } 4520 if (profiles == null) { 4521 profiles = {}; 4522 } 4523 if (radius == null) { 4524 radius = 0; 4525 } 4526 if (size == null) { 4527 size = 40; 4528 } 4529 if (spacing == null) { 4530 spacing = 8; 4531 } 4532 if (preview == null) { 4533 preview = false;
4534 } 4535 if ((typeof Shopify !== "undefined" && Shopify !== null) && (Shopify.designMode != null)) { 4536 preview = false; 4537 } 4538 if (id == null) { 4539 id = "st-" + (st.uid()); 4540 } 4541 $el.setAttribute('id', id); 4542 st.addClass($el, 'st-inline-follow-buttons'); 4543 st.addClass($el, 'st-#{action_pos}'); 4544 if (fade_in) { 4545 st.addClass($el, 'st-hidden'); 4546 } 4547 if (true === preview) { 4548 st.addClass($el, 'st-preview'); 4549 } 4550 common_css = "#" + id + " {\n " + st.FONT_FAMILY + ";\n direction: ltr;\n display: block;\n opacity: 1;\n text-align: " + alignment + ";\n z-index: 94034;\n}\n#" + id + ".st-animated {\n " + (st.TRANSITION('opacity')) + "\n}\n#" + id + " .st-left {\n display: inline-block;\n padding-top: " + (st.px(size / 4)) + ";\n padding-right: 6px;\n}\n#" + id + ".st-preview {\n display: none!important;\n opacity: 0!important;\n}\n#" + id + " .st-top {\n padding-bottom: " + (st.px(size / 8)) + ";\n}\n#" + id + " .st-right {\n display: inline-block;\n padding-top: " + (st.px(size / 4)) + ";\n padding-left: 4px;\n}\n#" + id + ".st-hidden {\n opacity: " + (fade_in ? 0 : 1) + ";\n}\n#" + id + " .st-btn {\n " + st.BORDER_BOX + "\n " + (st.TRANSITION(['opacity', 'top'])) + "\n " + (st.BORDER_RADIUS(radius)) + "\n border: " + (color === 'white' ? 'solid 0.5px #ccc' : 'none') + ";\n cursor: pointer;\n display: inline-block;\n height: " + (st.px(size)) + ";\n line-height: " + (st.px(size)) + ";\n margin-right: " + (spacing ? st.px(spacing) : 0) + ";\n padding: 0 " + (st.px(padding)) + ";\n position: relative;\n text-align: center;\n top: 0;\n vertical-align: top;\n white-space: nowrap;\n}\n#" + id + " .st-btn:last-child {\n margin-right: 0;\n}\n#" + id + " .st-btn > svg {\n height: " + (st.px(size / 2)) + ";\n width: " + (st.px(size / 2)) + ";\n position: relative;\n top: " + (st.px(size / 4)) + ";\n vertical-align: top;\n}\n#" + id + " .st-btn > img {\n height: " + (st.px(size / 2)) + ";\n width: " + (st.px(size / 2)) + ";\n position: relative;\n top: " + (st.px(size / 4)) + ";\n vertical-align: top;\n}\n#" + id + " .st-btn > span {\n " + (st.TRANSITION()) + "\n color: #fff;\n display: inline-block;\n font-weight: 500;\n letter-spacing: 0.5px;\n min-width: " + (st.px(30 + Math.floor(size * 15 / 16))) + ";\n opacity: 1;\n padding: 0 6px;\n position: relative;\n vertical-align: top;\n}\n#" + id + ".st-justified {\n display: flex;\n text-align: center;\n}\n#" + id + ".st-justified .st-btn {\n " + st.FLEX + "\n}"; 4551 hover_css = "#" + id + " .st-btn:hover {\n opacity: .8;\n top: -4px;\n}"; 4552 text_color_filter = st.getFilter(text_color); 4553 network_css = ((function() { 4554 var i, len, results; 4555 results = []; 4556 for (i = 0, len = networks.length; i < len; i++) { 4557 network = networks[i]; 4558 results.push("#" + id + " .st-btn[data-network='" + network + "'] {\n background-color: " + ((function() { 4559 switch (color) { 4560 case 'social': 4561 return st.COLORS[network]; 4562 case 'black': 4563 return '#000'; 4564 case 'gray': 4565 return '#eee'; 4566 case 'custom': 4567 return background_color; 4568 case 'white': 4569 return '#fff'; 4570 default: 4571 return '#fff'; 4572 } 4573 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] img {\n filter: " + ((function() { 4574 switch (color) { 4575 case 'black': 4576 return 'invert(0%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 4577 case 'gray': 4578 return 'invert(100%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 4579 case 'custom': 4580 return text_color_filter; 4581 default: 4582 return ''; 4583 } 4584 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] > span {\n color: " + ((function() { 4585 switch (color) { 4586 case 'white': 4587 return st.COLORS[network]; 4588 case 'black': 4589 return '#fff'; 4590 case 'gray': 4591 return '#000'; 4592 case 'custom': 4593 return '#fff'; 4594 case 'social': 4595 return '#fff'; 4596 default: 4597 return '#fff'; 4598 } 4599 })()) + "\n}"); 4600 } 4601 return results; 4602 })()).join('\n'); 4603 css = common_css; 4604 css += hover_css; 4605 css += network_css; 4606 st.css(css); 4607 html = ''; 4608 networks = st.filterInvalidNetworks(networks, Object.keys(DOMAINS)); 4609 if (action_enable && (action != null ? action.length : void 0) > 0 && action_pos !== 'right') { 4610 html += "<div class='st-" + action_pos + "'>\n <span>" + action + "</span>\n</div>"; 4611 } 4612 for (index = i = 0, len = networks.length; i < len; index = ++i) { 4613 network = networks[index]; 4614 class_names = ['st-btn']; 4615 if (index === 0) { 4616 class_names.push('st-first'); 4617 } 4618 if (index === networks.length - 1) { 4619 class_names.push('st-last'); 4620 } 4621 html += "<div class='" + (class_names.join(' ')) + "' data-network='" + network + "'>\n " + (color === 'white' ? st.ICONS_WHITE[network] : st.ICONS[network]) + "\n</div>"; 4622 } 4623 if (action_enable && (action != null ? action.length : void 0) > 0 && action_pos === 'right') { 4624 html += "<div class='st-" + action_pos + "'>\n <span>" + (st.capitalize(action)) + "</span>\n</div>"; 4625 } 4626 $el.innerHTML = html; 4627 $buttons = $el.querySelectorAll('.st-btn'); 4628 resize = function() { 4629 var $button, actual, available, j, k, len1, results; 4630 available = $el.offsetWidth; 4631 actual = function() { 4632 var $button, j, len1, width; 4633 width = action_enable ? 70 : 0; 4634 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4635 $button = $buttons[j]; 4636 if ($button.style.display === 'none') { 4637 continue; 4638 } 4639 if (alignment === 'justified') { 4640 width += 160; 4641 } else { 4642 width += $button.offsetWidth + spacing; 4643 } 4644 } 4645 return width; 4646 }; 4647 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4648 $button = $buttons[j]; 4649 $button.style.display = 'inline-block'; 4650 } 4651 results = []; 4652 for (index = k = $buttons.length - 1; k >= 0; index = k += -1) { 4653 $button = $buttons[index]; 4654 if (actual() > available) { 4655 results.push($button.style.display = 'none'); 4656 } else { 4657 results.push(void 0); 4658 } 4659 } 4660 return results; 4661 }; 4662 st.addEventListener(window, 'resize', resize); 4663 fn = function($button) { 4664 return st.addEventListener($button, 'click', function() { 4665 var follow_url; 4666 network = $button.getAttribute('data-network'); 4667 follow_url = DOMAINS[network] + (profiles[network] || ''); 4668 if (network === 'youtube' && profiles[network]) { 4669 follow_url += '?sub_confirmation=1'; 4670 } 4671 if (network === 'tumblr' && profiles[network]) { 4672 follow_url = DOMAINS[network].replace('www', profiles[network]); 4673 } 4674 st.follow({ 4675 follow_url: follow_url, 4676 network: network, 4677 url: url || $el.getAttribute('data-url') 4678 }); 4679 return typeof onLoad === "function" ? onLoad() : void 0; 4680 }); 4681 }; 4682 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4683 $button = $buttons[j]; 4684 fn($button); 4685 } 4686 resize(); 4687 if (fade_in) { 4688 st.addClass($el, 'st-animated'); 4689 } 4690 if (fade_in) { 4691 st.removeClass($el, 'st-hidden'); 4692 } 4693 if (typeof onLoad === "function") { 4694 onLoad(); 4695 } 4696 return { 4697 $buttons: $buttons, 4698 $el: $el, 4699 id: id, 4700 resize: resize 4701 }; 4702 }; 4703 4704}).call(this); 4705 4706(function() { 4707 var load, st; 4708 4709 st = window.__sharethis__; 4710 4711 st.loader['inline-reaction-buttons'] = function(config) { 4712 var $el, $els, i, len, results; 4713 if (config == null) { 4714 config = {}; 4715 } 4716 if (!config.enabled) { 4717 return; 4718 } 4719 if (config.id) { 4720 $el = document.getElementById(config.id); 4721 return load($el, config); 4722 } else { 4723 $els = document.querySelectorAll('.sharethis-inline-reaction-buttons'); 4724 results = []; 4725 for (i = 0, len = $els.length; i < len; i++) { 4726 $el = $els[i]; 4727 results.push(load($el, config)); 4728 } 4729 return results; 4730 } 4731 }; 4732 4733 load = function($el, config) { 4734 var $buttons, alignment, class_names, common_css, css, data_url, fade_in, hover_css, html, i, id, index, item, k, label_span, language, len, min_count, onLoad, onReact, padding, reaction, reactions, ref, ref1, resize, selected_reaction, size, url;
4735 alignment = config.alignment, id = config.id, language = config.language, min_count = config.min_count, padding = config.padding, reactions = config.reactions, size = config.size, url = config.url; 4736 fade_in = config.fade_in, onLoad = config.onLoad, onReact = config.onReact; 4737 data_url = $el.getAttribute('data-url'); 4738 if (fade_in == null) { 4739 fade_in = true; 4740 } 4741 if (min_count == null) { 4742 min_count = 0; 4743 } 4744 if (reactions == null) { 4745 reactions = (function() { 4746 var results; 4747 results = []; 4748 for (k in st.REACTIONS) { 4749 results.push(k); 4750 } 4751 return results; 4752 })(); 4753 } 4754 if (padding == null) { 4755 padding = 10; 4756 } 4757 if (language == null) { 4758 language = 'en'; 4759 } 4760 if (size == null) { 4761 size = 48; 4762 } 4763 if (url == null) { 4764 url = data_url || st.href; 4765 } 4766 selected_reaction = st.storage.get("st_reaction_" + url); 4767 if (id == null) { 4768 id = "st-" + (st.uid()); 4769 } 4770 $el.setAttribute('id', id); 4771 st.addClass($el, ["st-inline-reaction-buttons", "st-" + alignment, selected_reaction ? "st-reacted" : void 0, fade_in ? 'st-hidden' : void 0, language ? 'st-has-labels' : void 0, language !== 'en' ? "st-lang-" + language : void 0]); 4772 common_css = "#" + id + " {\n " + st.FONT_FAMILY + "\n " + (st.TRANSITION('opacity')) + "\n direction: ltr;\n display: block;\n opacity: 1;\n text-align: " + alignment + ";\n}\n#" + id + ".st-hidden {\n opacity: " + (fade_in ? 0 : 1) + ";\n}\n#" + id + " .st-btn {\n " + st.BORDER_BOX + "\n " + (st.TRANSITION()) + "\n display: inline-block;\n font-size: " + (st.px(size / 2)) + ";\n line-height: " + (st.px(size / 2)) + ";\n opacity: 1;\n padding: " + (st.px(padding)) + ";\n position: relative;\n text-align: center;\n vertical-align: top;\n white-space: nowrap;\n width: " + (st.px(size + 2 * padding)) + ";\n}\n#" + id + " .st-btn > svg {\n display: block;\n height: " + (st.px(size)) + ";\n margin: auto;\n width: " + (st.px(size)) + ";\n vertical-align: top;\n}\n#" + id + " .st-btn > span {\n " + (st.TRANSITION('font-size')) + ";\n color: #555;\n font-size: 14px;\n font-weight: 400;\n letter-spacing: 0.5px;\n vertical-align: top;\n}\n#" + id + " .st-btn .st-count.st-grow {\n font-size: 18px;\n}\n#" + id + " .st-btn.st-hide-count .st-count {\n opacity: 0;\n}\n#" + id + " .st-btn .st-text {\n display: none;\n font-weight: bold;\n line-height: 12px;\n white-space: normal;\n word-break: break-all;\n}\n#" + id + ".st-justified {\n display: flex;\n text-align: center;\n}\n#" + id + ".st-justified .st-btn {\n " + st.FLEX + "\n}\n#" + id + " .st-btn.st-selected {\n " + (st.TRANSFORM("scale(1.2)")) + "\n}\n#" + id + ".st-reacted .st-btn:not(.st-selected) {\n filter: grayscale(100%);\n}"; 4773 hover_css = "#" + id + ":not(.st-reacted) .st-btn:hover {\n " + (st.TRANSFORM("scale(1.2)")) + "\n cursor: pointer;\n}\n#" + id + ":not(.st-reacted) .st-btn:active {\n " + (st.TRANSFORM("scale(1.4)")) + "\n}\n#" + id + ".st-has-labels:not(.st-reacted) .st-btn:hover .st-count {\n display: none;\n}\n#" + id + ".st-has-labels:not(.st-reacted) .st-btn:hover .st-text {\n display: block;\n}\n#" + id + ".st-has-labels:not(.st-reacted) .st-btn:hover span {\n font-size: 10px;\n}"; 4774 css = common_css; 4775 if (!st.mobile) { 4776 css += hover_css; 4777 } 4778 st.css(css); 4779 html = ''; 4780 for (index = i = 0, len = reactions.length; i < len; index = ++i) { 4781 reaction = reactions[index]; 4782 if (!st.REACTIONS[reaction]) { 4783 continue; 4784 } 4785 item = st.REACTIONS[reaction]; 4786 class_names = ['st-btn']; 4787 if (reaction === selected_reaction) { 4788 class_names.push('st-selected'); 4789 } 4790 if (index === 0) { 4791 class_names.push('st-first'); 4792 } 4793 if (index === reactions.length - 1) { 4794 class_names.push('st-last'); 4795 } 4796 if (language) { 4797 label_span = "<span class=\"st-text\">\n " + ((ref = st.i18n[item.label]) != null ? (ref1 = ref[language]) != null ? ref1.toUpperCase() : void 0 : void 0) + "\n</span>"; 4798 } else { 4799 label_span = ''; 4800 } 4801 html += "<div class='" + (class_names.join(' ')) + "' data-reaction='" + reaction + "'>
4801\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 64 64\"\n enable-background=\"new 0 0 64 64\"\n >\n " + item.icon + "\n </svg>\n <span class=\"st-count\"></span>\n " + label_span + "\n</div>"; 4802 } 4803 $el.innerHTML = html; 4804 $buttons = $el.querySelectorAll('.st-btn'); 4805 resize = function() { 4806 var $button, actual, available, j, len1, results, shrink_by; 4807 available = $el.offsetWidth; 4808 actual = function() { 4809 var $button, j, len1, width; 4810 width = 0; 4811 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4812 $button = $buttons[j]; 4813 width += size + 2 * padding; 4814 } 4815 return width; 4816 }; 4817 if (actual() > available) { 4818 shrink_by = available / actual(); 4819 results = []; 4820 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4821 $button = $buttons[j]; 4822 $button.style.padding = st.px(padding * shrink_by); 4823 $button.style.width = st.px((size + 2 * padding) * shrink_by); 4824 $button.querySelector('svg').style.width = st.px(size * shrink_by); 4825 results.push($button.querySelector('svg').style.height = st.px(size * shrink_by)); 4826 } 4827 return results; 4828 } 4829 }; 4830 return st.loadCounts({ 4831 url: url 4832 }, function(counts) { 4833 var $button, fn, j, l, label, len1, len2, ref2, ref3, value; 4834 for (j = 0, len1 = $buttons.length; j < len1; j++) { 4835 $button = $buttons[j]; 4836 reaction = $button.getAttribute('data-reaction'); 4837 ref2 = counts[reaction] || {}, label = ref2.label, value = ref2.value; 4838 if ((ref3 = $button.querySelector('.st-count')) != null) { 4839 ref3.innerHTML = label; 4840 } 4841 if (label && value >= min_count) { 4842 st.removeClass($button, 'st-hide-count'); 4843 } else { 4844 st.addClass($button, 'st-hide-count'); 4845 } 4846 } 4847 resize(); 4848 if (fade_in) { 4849 st.removeClass($el, 'st-hidden'); 4850 } 4851 st.addEventListener(window, 'resize', resize); 4852 fn = function($button) { 4853 return st.addEventListener($button, 'click', function() { 4854 if (st.hasClass($el, 'st-reacted')) { 4855 return; 4856 } 4857 reaction = $button.getAttribute('data-reaction'); 4858 st.addClass($el, 'st-reacted'); 4859 st.addClass($button, 'st-selected'); 4860 st.react({ 4861 reaction: reaction, 4862 url: url 4863 }); 4864 st.inc($button.querySelector('.st-count')); 4865 st.storage.set("st_reaction_" + url, reaction); 4866 return typeof onReact === "function" ? onReact(reaction) : void 0; 4867 }); 4868 }; 4869 for (l = 0, len2 = $buttons.length; l < len2; l++) { 4870 $button = $buttons[l]; 4871 fn($button); 4872 } 4873 return typeof onLoad === "function" ? onLoad() : void 0; 4874 }); 4875 }; 4876 4877}).call(this); 4878 4879(function() { 4880 var load, st; 4881 4882 st = window.__sharethis__; 4883 4884 st.loader['inline-share-buttons'] = function(config) { 4885 var $el, $els, i, id, len, loadFn, ref, results; 4886 if (config == null) { 4887 config = {}; 4888 } 4889 if (!config.enabled) { 4890 return; 4891 } 4892 loadFn = load; 4893 if (config.is_ssb) { 4894 loadFn = st.loadSsb; 4895 } 4896 if (config.id) { 4897 $el = document.getElementById(config.id); 4898 if ($el) { 4899 return loadFn($el, config, load); 4900 } 4901 } else if (config.container) { 4902 if (typeof config.container === 'string') { 4903 config.container = document.getElementById(config.container); 4904 } 4905 ref = st.newElement(config.container), $el = ref.$el, id = ref.id; 4906 config.id = id; 4907 if ($el) { 4908 return loadFn($el, config, load); 4909 } 4910 } else { 4911 $els = document.querySelectorAll('.sharethis-inline-share-buttons'); 4912 results = []; 4913 for (i = 0, len = $els.length; i < len; i++) { 4914 $el = $els[i]; 4915 results.push(loadFn($el, config, load)); 4916 } 4917 return results; 4918 } 4919 }; 4920 4921 load = function($el, config) { 4922 var $button, $buttons, $total, $total_label, alignment, alignment_opposite, background_color, class_names, color, common_css, css, description, fade_in, fn, font_size, hover_css, html, i, id, image, index, j, k, label, label_span, labels, language, len, len1, len2, message, min_count, mobile_css, modify, network, network_css, networks, onLoad, padding, preview, radius, ref, resize, show_mobile_buttons, show_total, size, spacing, subject, text_color, text_color_filter, title, url, use_native_counts, username; 4923 color = config.color, fade_in = config.fade_in, onLoad = config.onLoad, alignment = config.alignment, font_size = config.font_size, language = config.language, padding = config.padding, radius = config.radius, size = config.size, spacing = config.spacing, id = config.id, labels = config.labels, min_count = config.min_count, networks = config.networks, show_total = config.show_total, use_native_counts = config.use_native_counts, show_mobile_buttons = config.show_mobile_buttons, url = config.url, title = config.title, image = config.image, description = config.description, username = config.username, message = config.message, subject = config.subject, text_color = config.text_color, background_color = config.background_color, preview = config.preview; 4924 alignment_opposite = alignment === 'left' ? 'right' : 'left'; 4925 if (alignment == null) { 4926 alignment = 'left'; 4927 } 4928 if (background_color == null) { 4929 background_color = '#B581A3'; 4930 } 4931 if (color == null) { 4932 color = 'social'; 4933 } 4934 if (fade_in == null) { 4935 fade_in = true; 4936 } 4937 if (font_size == null) { 4938 font_size = 12; 4939 } 4940 if (text_color == null) { 4941 text_color = '#fff'; 4942 } 4943 if (language == null) { 4944 language = 'en'; 4945 } 4946 if (min_count == null) { 4947 min_count = 0; 4948 } 4949 if (networks == null) { 4950 networks = ['facebook', 'twitter', 'pinterest', 'email', 'sharethis']; 4951 } 4952 if (padding == null) { 4953 padding = 10; 4954 } 4955 if (radius == null) { 4956 radius = 0; 4957 } 4958 if (show_mobile_buttons == null) { 4959 show_mobile_buttons = st.mobile; 4960 } 4961 if (size == null) { 4962 size = 40; 4963 } 4964 if (spacing == null) { 4965 spacing = 8; 4966 } 4967 if (subject == null) { 4968 subject = st.i18n['subjects'][language]; 4969 } 4970 if (use_native_counts == null) { 4971 use_native_counts = true; 4972 } 4973 if (preview == null) { 4974 preview = false;
4975 } 4976 if ((typeof Shopify !== "undefined" && Shopify !== null) && (Shopify.designMode != null)) { 4977 preview = false; 4978 } 4979 if (id == null) { 4980 id = "st-" + (st.uid()); 4981 } 4982 $el.setAttribute('id', id); 4983 st.addClass($el, ["st-" + alignment, language !== 'en' ? "st-lang-" + language : void 0, labels === 'counts' || labels === 'cta' ? 'st-has-labels' : void 0, fade_in ? 'st-hidden' : void 0, true === preview ? 'st-preview' : void 0, 'st-inline-share-buttons']); 4984 common_css = "#" + id + " {\n " + st.FONT_FAMILY + ";\n direction: ltr;\n display: block;\n opacity: 1;\n text-align: " + alignment + ";\n z-index: 94034;\n}\n#" + id + ".st-animated {\n " + (st.TRANSITION('opacity')) + "\n}\n#" + id + ".st-hidden {\n opacity: " + (fade_in ? 0 : 1) + ";\n}\n\n#" + id + ".st-preview {\n display: none!important;\n opacity: 0!important;\n}\n#" + id + ".st-hide {\n display: none;\n}\n#" + id + " .st-btn {\n " + st.BORDER_BOX + "\n " + (st.TRANSITION(['opacity', 'top'])) + "\n " + (st.BORDER_RADIUS(radius)) + "\n border: " + (color === 'white' ? 'solid 1px #ccc' : 'none') + ";\n cursor: pointer;\n display: inline-block;\n font-size: " + (st.px(font_size)) + ";\n height: " + (st.px(size)) + ";\n line-height: " + (st.px(size)) + ";\n margin-right: " + (spacing ? st.px(spacing) : 0) + ";\n padding: 0 " + (st.px(padding)) + ";\n position: relative;\n text-align: center;\n top: 0;\n vertical-align: top;\n white-space: nowrap;\n}\n#" + id + " .st-btn:last-child {\n margin-right: 0;\n}\n#" + id + " .st-btn > svg {\n height: " + (st.px(size / 2)) + ";\n width: " + (st.px(size / 2)) + ";\n position: relative;\n top: " + (st.px(size / 4)) + ";\n vertical-align: top;\n}\n#" + id + " .st-btn > img {\n display: inline-block;\n height: " + (st.px(size / 2)) + ";\n width: " + (st.px(size / 2)) + ";\n position: relative;\n top: " + (st.px(size / 4)) + ";\n vertical-align: top;\n}\n#" + id + " .st-btn > span {\n " + (st.TRANSITION()) + "\n color: #fff;\n display: inline-block;\n font-weight: 500;\n letter-spacing: 0.5px;\n min-width: " + (st.px(30 + Math.floor(size * 15 / 16))) + ";\n opacity: 1;\n padding: 0 6px;\n position: relative;\n vertical-align: top;\n}\n#" + id + ".st-has-labels .st-btn {\n min-width: " + (st.px(60 + Math.floor(size * 15 / 8))) + ";\n}\n#" + id + ".st-has-labels .st-btn.st-remove-label {\n min-width: 50px;\n}\n#" + id + ".st-has-labels .st-btn.st-remove-label > span {\n display: none;\n}\n#" + id + ".st-has-labels .st-btn.st-hide-label > span {\n display: none;\n}\n#" + id + " .st-total {\n color: #555;\n display: inline-block;\n font-weight: 500;\n line-height: " + (st.px(.375 * size)) + ";\n margin-right: 0;\n max-width: 80px;\n padding: 4px 8px;\n text-align: center;\n}\n#" + id + " .st-total.st-hidden {\n display: none;\n}\n#" + id + " .st-total > span {\n font-size: " + (st.px(.5 * size)) + ";\n line-height: " + (st.px(.55 * size)) + ";\n display: block;\n padding: 0;\n}\n#" + id + " .st-total > span.st-shares {\n font-size: " + (st.px(.3 * size)) + ";\n line-height: " + (st.px(.3 * size)) + ";\n}\n#" + id + ".st-justified {\n display: flex;\n text-align: center;\n}\n#" + id + ".st-justified .st-btn {\n " + st.FLEX + "\n}"; 4985 hover_css = "#" + id + " .st-btn:hover {\n opacity: .8;\n top: -4px;\n}"; 4986 mobile_css = "#" + id + " {\n bottom: 0;"; 4987 text_color_filter = st.getFilter(text_color); 4988 network_css = ((function() { 4989 var i, len, results; 4990 results = []; 4991 for (i = 0, len = networks.length; i < len; i++) { 4992 network = networks[i]; 4993 results.push("#" + id + " .st-btn[data-network='" + network + "'] {\n background-color: " + ((function() { 4994 switch (color) { 4995 case 'social': 4996 return st.COLORS[network]; 4997 case 'black': 4998 return '#000'; 4999 case 'gray': 5000 return '#eee'; 5001 case 'custom': 5002 return background_color; 5003 case 'white': 5004 return '#fff'; 5005 default: 5006 return '#fff'; 5007 } 5008 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] img {\n filter: " + ((function() { 5009 switch (color) { 5010 case 'black': 5011 return 'invert(0%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 5012 case 'gray': 5013 return 'invert(100%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 5014 case 'custom': 5015 return text_color_filter; 5016 default: 5017 return ''; 5018 } 5019 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] > span {\n color: " + ((function() { 5020 switch (color) { 5021 case 'white': 5022 return st.COLORS[network]; 5023 case 'black': 5024 return '#fff'; 5025 case 'gray': 5026 return '#000'; 5027 case 'custom': 5028 return text_color; 5029 case 'social': 5030 return '#fff'; 5031 default: 5032 return '#fff'; 5033 } 5034 })()) + "\n}"); 5035 } 5036 return results; 5037 })()).join('\n'); 5038 network_css += "#" + id + " .st-btn[data-network='snapchat'] > span {\n color: " + (color === 'black' ? '#fff' : '#333') + "};\n}"; 5039 css = common_css; 5040 if (!st.mobile) { 5041 css += hover_css; 5042 } 5043 css += network_css; 5044 st.css(css); 5045 html = ''; 5046 networks = st.filterInvalidNetworks(networks); 5047 if (!show_mobile_buttons) { 5048 ref = ['sms']; 5049 for (i = 0, len = ref.length; i < len; i++) { 5050 network = ref[i]; 5051 index = networks.indexOf(network); 5052 if (index > -1) { 5053 networks.splice(index, 1); 5054 } 5055 } 5056 } 5057 if (show_total) { 5058 html += "<div class='st-total st-hidden'>\n <span class='st-label'></span>\n <span class='st-shares'>\n " + (st.capitalize(st.i18n['shares'][language])) + "\n </span>\n</div>"; 5059 } 5060 for (index = j = 0, len1 = networks.length; j < len1; index = ++j) { 5061 network = networks[index]; 5062 class_names = ['st-btn']; 5063 if (index === 0) { 5064 class_names.push('st-first'); 5065 } 5066 if (index === networks.length - 1) { 5067 class_names.push('st-last'); 5068 } 5069 label = st.getShareLabel(network, language); 5070 if (labels !== 'cta') { 5071 label = ''; 5072 } 5073 label_span = "<span class='st-label'>" + label + "</span>"; 5074 html += "<div class='" + (class_names.join(' ')) + "' data-network='" + network + "'>\n " + (color === 'white' ? st.ICONS_WHITE[network] : st.ICONS[network]) + "\n " + (labels === 'counts' || labels === 'cta' ? label_span : '') + "\n</div>"; 5075 } 5076 $el.innerHTML = html; 5077 $buttons = $el.querySelectorAll('.st-btn'); 5078 $total = $el.querySelector('.st-total'); 5079 $total_label = $el.querySelector('.st-total .st-label'); 5080 modify = function(key, value) { 5081 if (key === 'url') { 5082 url = value; 5083 } 5084 if (key === 'image') { 5085 return image = value; 5086 } 5087 }; 5088 resize = function() { 5089 var $button, actual, available, k, l, len2, m, results; 5090 available = $el.offsetWidth; 5091 actual = function() { 5092 var $button, k, len2, width; 5093 width = 0; 5094 if (show_total) { 5095 width += $total.offsetWidth; 5096 } 5097 for (k = 0, len2 = $buttons.length; k < len2; k++) { 5098 $button = $buttons[k]; 5099 if ($button.style.display === 'none') { 5100 continue; 5101 } 5102 if (alignment === 'justified') { 5103 if (st.hasClass($button, 'st-remove-label')) { 5104 width += 65; 5105 } else { 5106 width += 160; 5107 } 5108 } else { 5109 width += $button.offsetWidth + spacing; 5110 } 5111 } 5112 return width; 5113 }; 5114 for (k = 0, len2 = $buttons.length; k < len2; k++) { 5115 $button = $buttons[k]; 5116 $button.style.display = 'inline-block'; 5117 st.removeClass($button, 'st-remove-label'); 5118 } 5119 for (index = l = $buttons.length - 1; l >= 0; index = l += -1) { 5120 $button = $buttons[index]; 5121 if (actual() > available) { 5122 st.addClass($button, 'st-remove-label'); 5123 } 5124 } 5125 results = []; 5126 for (index = m = $buttons.length - 1; m >= 0; index = m += -1) { 5127 $button = $buttons[index]; 5128 if ($button.getAttribute('data-network') === 'sharethis') { 5129 continue; 5130 } 5131 if (actual() > available) { 5132 results.push($button.style.display = 'none'); 5133 } else { 5134 results.push(void 0); 5135 } 5136 } 5137 return results; 5138 }; 5139 st.addEventListener(window, 'resize', resize); 5140 fn = function($button) { 5141 return st.addEventListener($button, 'click', function() { 5142 return st.share({ 5143 channel_is_ssb: config.is_ssb, 5144 channels_displayed: JSON.stringify(config.networks), 5145 count_url: $el.getAttribute('data-count-url'), 5146 description: description || $el.getAttribute('data-description'), 5147 image: image || $el.getAttribute('data-image'), 5148 message: message || ($el != null ? $el.getAttribute('data-message') : void 0), 5149 network: $button.getAttribute('data-network'), 5150 share_url: $el.getAttribute('data-share-url'), 5151 short_url: $el.getAttribute('data-short-url'), 5152 subject: subject || $el.getAttribute('data-email-subject'), 5153 title: title || ($el != null ? $el.getAttribute('data-title') : void 0), 5154 url: url || $el.getAttribute('data-url'), 5155 username: username || $el.getAttribute('data-username') 5156 }); 5157 }); 5158 }; 5159 for (k = 0, len2 = $buttons.length; k < len2; k++) { 5160 $button = $buttons[k]; 5161 fn($button); 5162 } 5163 if (show_total || labels === 'counts') { 5164 st.loadCounts({ 5165 url: url || ($el.getAttribute('data-count-url')) || ($el.getAttribute('data-url')) || st.href 5166 }, function(counts) { 5167 var l, len3, ref1, ref2, ref3, ref4, value; 5168 if (show_total) { 5169 if (((ref1 = counts['total']) != null ? ref1.value : void 0) > min_count) { 5170 $total_label.innerHTML = ((ref2 = counts['total']) != null ? ref2.label : void 0) || ''; 5171 st.removeClass($total, 'st-hidden'); 5172 } else { 5173 st.addClass($total, 'st-hidden'); 5174 } 5175 } 5176 if (labels === 'counts') { 5177 for (l = 0, len3 = $buttons.length; l < len3; l++) { 5178 $button = $buttons[l]; 5179 network = $button.getAttribute('data-network'); 5180 ref3 = counts[network] || {}, label = ref3.label, value = ref3.value; 5181 if (label && value > min_count) { 5182 if ((ref4 = $button.querySelector('.st-label')) != null) { 5183 ref4.innerHTML = label; 5184 } 5185 st.removeClass($button, 'st-hide-label'); 5186 } else { 5187 st.addClass($button, 'st-hide-label'); 5188 } 5189 } 5190 } 5191 resize(); 5192 if (fade_in) { 5193 st.addClass($el, 'st-animated'); 5194 } 5195 if (fade_in) { 5196 st.removeClass($el, 'st-hidden'); 5197 } 5198 return typeof onLoad === "function" ? onLoad() : void 0; 5199 }); 5200 } else { 5201 resize(); 5202 if (fade_in) { 5203 st.addClass($el, 'st-animated'); 5204 } 5205 if (fade_in) { 5206 st.removeClass($el, 'st-hidden'); 5207 } 5208 if (typeof onLoad === "function") { 5209 onLoad(); 5210 } 5211 } 5212 return { 5213 $buttons: $buttons, 5214 $el: $el, 5215 id: id, 5216 modify: modify, 5217 resize: resize 5218 }; 5219 }; 5220 5221}).call(this); 5222 5223 5224(function() { 5225 var st; 5226 5227 st = window.__sharethis__; 5228
5229 st.loader['powr-social-feed'] = function(config) { 5230 if (config == null) { 5231 config = {}; 5232 } 5233 if (!config.enabled) { 5234 return; 5235 } 5236 return st.js("https://platform-api.sharethis.com/powr.js?platform=sharethis"); 5237 }; 5238 5239}).call(this); 5240 5241(function() { 5242 var st; 5243 5244 st = window.__sharethis__; 5245 5246 st.loader['powr-form-builder'] = function(config) { 5247 if (config == null) { 5248 config = {}; 5249 } 5250 if (!config.enabled) { 5251 return; 5252 } 5253 return st.js("https://platform-api.sharethis.com/powr.js?platform=sharethis"); 5254 }; 5255 5256}).call(this); 5257 5258(function() { 5259 var st; 5260 5261 st = window.__sharethis__; 5262 5263 st.loader['powr-popup'] = function(config) { 5264 if (config == null) { 5265 config = {}; 5266 } 5267 if (!config.enabled) { 5268 return; 5269 } 5270 return st.js("https://platform-api.sharethis.com/powr.js?platform=sharethis"); 5271 }; 5272 5273}).call(this); 5274 5275 5276/* 5277 * Loader for privacy-policy-generator 5278 * To update, please refer to `src/functions/privacy-policy-generator/README.md` 5279 */ 5280 5281(function() { 5282 var st; 5283 5284 st = window.__sharethis__; 5285 5286 st.loader['privacy-policy-generator'] = function(config) { 5287 if (config == null) { 5288 config = {}; 5289 } 5290 if (!config.enabled) { 5291 return; 5292 } 5293 return st.js("https://platform-api.sharethis.com/ppg.js"); 5294 }; 5295 5296}).call(this); 5297 5298 5299(function() { 5300 var load, st, 5301 indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }; 5302 5303 st = window.__sharethis__; 5304 5305 st.loader['sticky-share-buttons'] = function(config) { 5306 var $el, $els, i, id, len, loadFn, ref, ref1, results; 5307 if (config == null) { 5308 config = {}; 5309 } 5310 if (!config.enabled) { 5311 return; 5312 } 5313 loadFn = load; 5314 if (config.is_ssb) { 5315 loadFn = st.loadSsb; 5316 } 5317 if (config.id) { 5318 $el = document.getElementById(config.id); 5319 if ($el) { 5320 return loadFn($el, config, load); 5321 } 5322 } else if (config.container) { 5323 if (typeof config.container === 'string') { 5324 config.container = document.getElementById(config.container); 5325 } 5326 ref = st.newElement(config.container), $el = ref.$el, id = ref.id; 5327 config.id = id; 5328 if ($el) { 5329 return loadFn($el, config, load); 5330 } 5331 } else { 5332 $els = document.querySelectorAll('.sharethis-sticky-share-buttons'); 5333 if ($els.length === 0) { 5334 ref1 = st.newElement(), $el = ref1.$el, id = ref1.id; 5335 return loadFn($el, config, load); 5336 } else { 5337 results = []; 5338 for (i = 0, len = $els.length; i < len; i++) { 5339 $el = $els[i]; 5340 results.push(loadFn($el, config, load)); 5341 } 5342 return results; 5343 } 5344 } 5345 }; 5346 5347 load = function($el, config) { 5348 var $button, $buttons, $toggle, $total, $total_label, alignment, alignment_opposite, background_color, class_names, color, common_css, container, css, description, fn, font_size, hide_desktop, hover_css, html, i, id, image, index, j, k, label, label_span, labels, language, len, len1, len2, message, min_count, mobile_breakpoint, mobile_css, network, network_css, networks, onLoad, padding, preview, radius, ref, resize, responsive_css, scrollbar_width, show_mobile, show_mobile_buttons, show_toggle, show_total, size, slide_in, spacing, subject, text_color, text_color_filter, title, top, url, use_native_counts, username; 5349 onLoad = config.onLoad, alignment = config.alignment, color = config.color, container = config.container, font_size = config.font_size, hide_desktop = config.hide_desktop, padding = config.padding, radius = config.radius, size = config.size, spacing = config.spacing, id = config.id, labels = config.labels, language = config.language, min_count = config.min_count, networks = config.networks, show_toggle = config.show_toggle, show_total = config.show_total, mobile_breakpoint = config.mobile_breakpoint, show_mobile = config.show_mobile, slide_in = config.slide_in, top = config.top, use_native_counts = config.use_native_counts, show_mobile_buttons = config.show_mobile_buttons, url = config.url, title = config.title, image = config.image, description = config.description, username = config.username, message = config.message, subject = config.subject, text_color = config.text_color, background_color = config.background_color, preview = config.preview; 5350 alignment_opposite = alignment === 'left' ? 'right' : 'left'; 5351 if (alignment == null) { 5352 alignment = 'left'; 5353 } 5354 if (background_color == null) { 5355 background_color = '#B581A3'; 5356 } 5357 if (color == null) { 5358 color = 'social'; 5359 } 5360 if (hide_desktop == null) { 5361 hide_desktop = false;
5362 } 5363 if (text_color == null) { 5364 text_color = '#fff'; 5365 } 5366 if (labels == null) { 5367 labels = 'counts'; 5368 } 5369 if (language == null) { 5370 language = 'en'; 5371 } 5372 if (min_count == null) { 5373 min_count = 0; 5374 } 5375 if (mobile_breakpoint == null) { 5376 mobile_breakpoint = 0; 5377 } 5378 if (networks == null) { 5379 networks = ['facebook', 'twitter', 'pinterest', 'email', 'sharethis', 'sms']; 5380 } 5381 if (padding == null) { 5382 padding = 12; 5383 } 5384 if (radius == null) { 5385 radius = 0; 5386 } 5387 if (show_mobile == null) { 5388 show_mobile = false; 5389 } 5390 if (show_mobile_buttons == null) { 5391 show_mobile_buttons = st.mobile; 5392 } 5393 if (show_toggle == null) { 5394 show_toggle = true; 5395 } 5396 if (show_total == null) { 5397 show_total = false; 5398 } 5399 if (size == null) { 5400 size = 48; 5401 } 5402 if (slide_in == null) { 5403 slide_in = true; 5404 } 5405 if (subject == null) { 5406 subject = st.i18n['subjects'][language]; 5407 } 5408 if (top == null) { 5409 top = 100; 5410 } 5411 if (use_native_counts == null) { 5412 use_native_counts = true; 5413 } 5414 if (preview == null) { 5415 preview = false; 5416 } 5417 if ((typeof Shopify !== "undefined" && Shopify !== null) && (Shopify.designMode != null)) { 5418 preview = false; 5419 } 5420 if (id == null) { 5421 id = "st-" + (st.uid()); 5422 } 5423 $el.setAttribute('id', id); 5424 scrollbar_width = alignment === 'right' ? st.getScrollbarWidth() : 0; 5425 scrollbar_width = 0; 5426 st.addClass($el, ['st-sticky-share-buttons', "st-" + alignment, show_toggle ? 'st-toggleable' : void 0, labels === 'counts' || labels === 'cta' ? 'st-has-labels' : void 0, show_total ? 'st-show-total' : void 0, slide_in ? 'st-hidden' : void 0, language !== 'en' ? "st-lang-" + language : void 0, true === preview ? 'st-preview' : void 0]); 5427 common_css = "#" + id + " {\n " + st.FONT_FAMILY + ";\n " + (st.TRANSITION()) + "\n backface-visibility: hidden;\n display: " + (!hide_desktop ? 'block' : 'none') + ";\n position: fixed;\n opacity: 1;\n text-align: left;\n top: " + (st.px(top)) + ";\n z-index: 94034;\n}\n#" + id + ".st-" + alignment + " {\n " + alignment + ": " + (st.px(scrollbar_width)) + ";\n}\n#" + id + ".st-hidden.st-" + alignment + " {\n " + alignment + ": -" + (st.px(size)) + ";\n}\n#" + id + ".st-hidden {\n width: " + (st.px(2 * size)) + ";\n}\n#" + id + ".st-preview {\n display: none!important;\n opacity: 0!important;\n}\n#" + id + " > div {\n clear: " + alignment + ";\n float: " + alignment + ";\n}\n#" + id + " .st-btn {\n " + st.BORDER_BOX + "\n " + (st.TRANSITION()) + "\n border: " + (color === 'white' ? 'solid 0.5px #ccc' : 'none') + ";\n cursor: pointer;\n display: inline-block;\n font-size: " + (st.px(font_size)) + ";\n height: " + (st.px(size)) + ";\n line-height: " + (st.px(size / 2)) + ";\n margin-bottom: " + (spacing ? st.px(spacing) : 0) + ";\n opacity: 1;\n overflow: hidden;\n padding: " + (st.px(padding)) + ";\n position: relative;\n text-align: left;\n top: 0;\n vertical-align: top;\n white-space: nowrap;\n width: " + (st.px(size)) + ";\n}\n#" + id + " .st-btn.st-first {\n border-top: " + (color === 'white' ? 'solid 1px #ccc' : 'none') + ";\n border-top-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n}\n#" + id + " .st-btn.st-last {\n border-bottom: " + (color === 'white' ? 'solid 1px #ccc' : 'none') + ";\n border-bottom-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n}\n#" + id + " .st-btn > svg {\n " + (st.TRANSITION()) + "\n height: " + (st.px(size / 2)) + ";\n margin-left: 0;\n vertical-align: top;\n width: " + (st.px(size / 2)) + ";\n}\n#" + id + " .st-btn > img {\n " + (st.TRANSITION()) + "\n height: " + (st.px(size / 2)) + ";\n margin-left: 0;\n vertical-align: top;\n width: " + (st.px(size / 2)) + ";\n}\n#" + id + " .st-btn > span {\n " + (st.TRANSITION()) + "\n color: #fff;\n display: inline-block;\n font-weight: 500;\n left: -35px;\n letter-spacing: 0.5px;\n opacity: 0;\n padding: 0 6px;\n position: relative;\n vertical-align: top;\n filter: alpha(opacity=0);\n}\n#" + id + " .st-btn.st-hide-label > span {\n display: none !important;\n}\n#" + id + " .st-total {\n " + (st.TRANSITION()) + "\n background: #fff;
5427\n color: #555;\n display: inline-block;\n font-weight: 500;\n line-height: " + (st.px(.375 * size)) + ";\n margin-right: 0;\n min-height: 34px;\n max-width: 80px;\n opacity: 1;\n padding: 4px 0;\n text-align: center;\n width: " + (st.px(size)) + ";\n}\n#" + id + " .st-total.st-hidden {\n display: none;\n}\n#" + id + " .st-total > span {\n display: block;\n font-size: " + (st.px(.38 * size)) + ";\n line-height: " + (st.px(.45 * size)) + ";\n padding: 0;\n}\n#" + id + " .st-total > span.st-shares {\n font-size: " + (st.px(.23 * size)) + ";\n line-height: " + (st.px(.23 * size)) + ";\n}\n#" + id + " .st-toggle {\n " + alignment + ": -" + (st.px(size + scrollbar_width)) + ";\n " + (st.TRANSITION()) + "\n background: #ccc;\n border-bottom-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n color: white;\n cursor: pointer;\n font-size: " + (st.px(.5 * size)) + ";\n line-height: " + (st.px(.5 * size)) + ";\n position: relative;\n text-align: center;\n width: " + (st.px(size)) + ";\n}\n#" + id + ".st-hidden .st-toggle {\n border-top-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n}\n#" + id + ".st-" + alignment + " .st-toggle .st-" + alignment + " {\n display: inline-block;\n}\n#" + id + ".st-" + alignment + ".st-hidden .st-toggle .st-" + alignment + " {\n display: none;\n}\n#" + id + ".st-" + alignment + " .st-toggle .st-" + alignment_opposite + " {\n display: none;\n}\n#" + id + ".st-" + alignment + ".st-hidden .st-toggle .st-" + alignment_opposite + " {\n display: inline-block;\n}"; 5428 mobile_css = "#" + id + " {\n bottom: 0;\n display: " + (show_mobile ? 'flex' : 'none') + ";\n left: 0;\n right: 0;\n top: auto;\n width: 100%;\n}\n#" + id + ".st-hidden {\n bottom: -" + (st.px(size)) + ";\n width: 100%;\n}\n#" + id + ".st-hidden.st-left {\n left: 0;\n}\n#" + id + ".st-hidden.st-right {\n right: 0;\n}\n#" + id + " > div {\n -moz-flex: 1;\n -ms-flex: 1;\n -webkit-flex: 1;\n clear: none;\n flex: 1;\n float: none;\n}\n#" + id + " .st-total {\n background: #fff;\n padding: 6px 8px;\n}\n#" + id + " .st-btn {\n " + (st.BORDER_RADIUS('0 !important')) + "\n text-align: center;\n width: auto;\n}\n#" + id + " .st-btn > span {\n display: none;\n}\n#" + id + " .st-toggle {\n display: none;\n}"; 5429 if (show_mobile && !document.body.style.paddingBottom) { 5430 mobile_css += "body { padding-bottom: 48px; }"; 5431 } 5432 responsive_css = "@media (max-width: " + (st.px(mobile_breakpoint)) + ") {\n " + mobile_css + "\n}";
5433 hover_css = "#" + id + ":hover .st-toggle {\n " + alignment + ": 0;\n}\n#" + id + ".st-hidden:hover .st-toggle {\n " + alignment + ": " + (st.px(size)) + ";\n}\n#" + id + ".st-toggleable:hover .st-btn.st-last {\n border-bottom-" + alignment_opposite + "-radius: 0;\n}\n#" + id + ".st-toggleable:hover .st-btn.st-last:hover {\n border-bottom-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n}\n#" + id + " .st-btn:hover {\n border-bottom-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n border-top-" + alignment_opposite + "-radius: " + (st.px(radius)) + ";\n}\n#" + id + ".st-has-labels .st-btn:hover {\n width: " + (st.px(st.i18n['sticky-width'][language])) + ";\n}\n#" + id + ":not(.st-has-labels) .st-btn:hover {\n width: " + (st.px(1.3 * size)) + ";\n}\n#" + id + " .st-btn.st-hide-label:hover {\n width: " + (st.px(1.3 * size)) + ";\n}\n#" + id + " .st-btn:hover > svg {\n margin-left: 5px;\n}\n#" + id + " .st-btn:hover > img {\n margin-left: 5px;\n}\n#" + id + " .st-btn:hover > span {\n opacity: 1;\n display: inline-block;\n left: 0;\n filter: alpha(opacity=100);\n}\n@media (max-width: " + (st.px(mobile_breakpoint)) + ") {\n #" + id + " .st-btn:hover > svg {\n margin-left: 0;\n }\n #" + id + " .st-btn:hover > span {\n display: none;\n }\n}"; 5434 text_color_filter = st.getFilter(text_color); 5435 network_css = ((function() { 5436 var i, len, results; 5437 results = []; 5438 for (i = 0, len = networks.length; i < len; i++) { 5439 network = networks[i]; 5440 results.push("#" + id + " .st-btn[data-network='" + network + "'] {\n background-color: " + ((function() { 5441 switch (color) { 5442 case 'social': 5443 return st.COLORS[network]; 5444 case 'black': 5445 return '#000'; 5446 case 'gray': 5447 return '#eee'; 5448 case 'custom': 5449 return background_color; 5450 case 'white': 5451 return '#fff'; 5452 default: 5453 return '#fff'; 5454 } 5455 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] img {\n filter: " + ((function() { 5456 switch (color) { 5457 case 'black': 5458 return 'invert(0%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 5459 case 'gray': 5460 return 'invert(100%) sepia(100%) saturate(22%) hue-rotate(45deg) brightness(107%) contrast(105%)'; 5461 case 'custom': 5462 return text_color_filter; 5463 default: 5464 return ''; 5465 } 5466 })()) + "\n}\n#" + id + " .st-btn[data-network='" + network + "'] > span {\n color: " + ((function() { 5467 switch (color) { 5468 case 'white': 5469 return st.COLORS[network]; 5470 case 'black': 5471 return '#fff'; 5472 case 'gray': 5473 return '#000'; 5474 case 'custom': 5475 return text_color; 5476 case 'social': 5477 return '#fff'; 5478 default: 5479 return '#fff'; 5480 } 5481 })()) + "\n}"); 5482 } 5483 return results; 5484 })()).join('\n'); 5485 network_css += "#" + id + " .st-btn[data-network='snapchat'] > span {\n color: " + (color === 'black' ? '#fff' : '#333') + "};\n}"; 5486 network_css += "#" + id + " .st-btn[data-network='copy']:hover {\n width: max-content;\n}"; 5487 if (network === 'blm') { 5488 network_css += "#" + id + " .st-btn[data-network='blm']:hover {\n width: 165px;\n}"; 5489 } 5490 css = common_css; 5491 if (!st.mobile) { 5492 css += hover_css; 5493 } 5494 if (!st.mobile) { 5495 css += responsive_css; 5496 } 5497 if (st.mobile) { 5498 css += mobile_css; 5499 } 5500 css += network_css; 5501 st.css(css); 5502 if (!show_mobile_buttons) { 5503 ref = ['sms']; 5504 for (i = 0, len = ref.length; i < len; i++) { 5505 network = ref[i]; 5506 index = networks.indexOf(network); 5507 if (index > -1) { 5508 networks.splice(index, 1); 5509 } 5510 } 5511 } 5512 html = ''; 5513 networks = st.filterInvalidNetworks(networks); 5514 if (show_total) { 5515 html += "<div class='st-total st-hidden'>\n <span class='st-label'></span>\n <span class='st-shares'>\n " + (st.capitalize(st.i18n['shares'][language])) + "\n </span>\n</div>"; 5516 } 5517 for (index = j = 0, len1 = networks.length; j < len1; index = ++j) { 5518 network = networks[index]; 5519 class_names = ['st-btn']; 5520 if (index === 0) { 5521 class_names.push('st-first'); 5522 } 5523 if (index === networks.length - 1) { 5524 class_names.push('st-last'); 5525 } 5526 label = st.getShareLabel(network, language); 5527 if (labels !== 'cta') { 5528 label = ''; 5529 } 5530 label_span = "<span class='st-label'>" + label + "</span>"; 5531 html += "<div class='" + (class_names.join(' ')) + "' data-network='" + network + "'>\n " + (color === 'white' ? st.ICONS_WHITE[network] : st.ICONS[network]) + "\n " + (labels === 'counts' || labels === 'cta' ? label_span : '') + "\n</div>"; 5532 } 5533 if (show_toggle) { 5534 html += "<div class=\"st-toggle\">\n <div class=\"st-left\">\n " + st.ICONS['arrow_left'] + "\n </div>\n <div class=\"st-right\">\n " + st.ICONS['arrow_right'] + "\n </div>\n</div>"; 5535 } 5536 $el.innerHTML = html; 5537 $buttons = $el.querySelectorAll('.st-btn'); 5538 $toggle = $el.querySelector('.st-toggle'); 5539 $total = $el.querySelector('.st-total'); 5540 $total_label = $el.querySelector('.st-total .st-label'); 5541 st.addEventListener($toggle, 'click', function() { 5542 return st.toggleClass($el, 'st-hidden'); 5543 }); 5544 resize = function() { 5545 var $button, k, l, len2, len3, max, ref1, results; 5546 max = 100; 5547 if (st.mobile || window.innerWidth < mobile_breakpoint) { 5548 max = 6; 5549 } 5550 if (show_total) { 5551 max--; 5552 } 5553 if (indexOf.call(networks, 'sharethis') >= 0) { 5554 max--; 5555 } 5556 if (indexOf.call(networks, 'sms') >= 0) { 5557 max--; 5558 } 5559 if (indexOf.call(networks, 'whatsapp') >= 0) { 5560 max--; 5561 } 5562 if (indexOf.call(networks, 'messenger') >= 0) { 5563 max--; 5564 } 5565 if (indexOf.call(networks, 'wechat') >= 0) { 5566 max--; 5567 } 5568 for (k = 0, len2 = $buttons.length; k < len2; k++) { 5569 $button = $buttons[k]; 5570 $button.style.display = 'inline-block'; 5571 } 5572 results = []; 5573 for (index = l = 0, len3 = $buttons.length; l < len3; index = ++l) { 5574 $button = $buttons[index]; 5575 if ((ref1 = $button.getAttribute('data-network')) === 'sharethis' || ref1 === 'sms' || ref1 === 'messenger' || ref1 === 'whatsapp' || ref1 === 'wechat') { 5576 continue; 5577 } 5578 if (max-- > 0) { 5579 continue; 5580 } 5581 results.push($button.style.display = 'none'); 5582 } 5583 return results; 5584 }; 5585 st.addEventListener(window, 'resize', resize); 5586 fn = function($button) { 5587 return st.addEventListener($button, 'click', function() { 5588 return st.share({ 5589 channel_is_ssb: config.is_ssb, 5590 channels_displayed: JSON.stringify(config.networks), 5591 count_url: $el != null ? $el.getAttribute('data-count-url') : void 0, 5592 description: description || ($el != null ? $el.getAttribute('data-description') : void 0), 5593 image: image || ($el != null ? $el.getAttribute('data-image') : void 0), 5594 message: message || ($el != null ? $el.getAttribute('data-message') : void 0), 5595 network: $button.getAttribute('data-network'), 5596 share_url: $el != null ? $el.getAttribute('data-short-url') : void 0, 5597 subject: subject || $el.getAttribute('data-email-subject'), 5598 title: title || ($el != null ? $el.getAttribute('data-title') : void 0), 5599 url: url || ($el != null ? $el.getAttribute('data-url') : void 0), 5600 username: username || ($el != null ? $el.getAttribute('data-username') : void 0) 5601 }); 5602 }); 5603 }; 5604 for (k = 0, len2 = $buttons.length; k < len2; k++) { 5605 $button = $buttons[k]; 5606 fn($button); 5607 } 5608 if (show_total || labels === 'counts') { 5609 return st.loadCounts({ 5610 url: url || ($el != null ? $el.getAttribute('data-url') : void 0) 5611 }, function(counts) { 5612 var l, len3, ref1, ref2, ref3, value; 5613 if (show_total) { 5614 if (((ref1 = counts['total']) != null ? ref1.value : void 0) > min_count) { 5615 $total_label.innerHTML = counts['total'].label; 5616 st.removeClass($total, 'st-hidden'); 5617 } else { 5618 st.addClass($total, 'st-hidden'); 5619 } 5620 } 5621 if (labels === 'counts') { 5622 for (l = 0, len3 = $buttons.length; l < len3; l++) { 5623 $button = $buttons[l]; 5624 network = $button.getAttribute('data-network'); 5625 ref2 = counts[network] || {}, label = ref2.label, value = ref2.value; 5626 if (label && value > min_count) { 5627 if ((ref3 = $button.querySelector('.st-label')) != null) { 5628 ref3.innerHTML = label; 5629 } 5630 st.removeClass($button, 'st-hide-label'); 5631 } else { 5632 st.addClass($button, 'st-hide-label'); 5633 } 5634 } 5635 } 5636 resize(); 5637 setTimeout((function() { 5638 return st.removeClass($el, 'st-hidden'); 5639 }), 10); 5640 return typeof onLoad === "function" ? onLoad() : void 0; 5641 }); 5642 } else { 5643 resize(); 5644 setTimeout((function() { 5645 return st.removeClass($el, 'st-hidden'); 5646 }), 10); 5647 return typeof onLoad === "function" ? onLoad() : void 0; 5648 } 5649 }; 5650 5651}).call(this); 5652 5653(function() { 5654 var st; 5655 5656 st = window.__sharethis__; 5657 5658 st.loader['video-share-buttons'] = function(config) { 5659 var alignment, container, networks, omit_class, onLoad, padding, radius, size, spacing; 5660 if (config == null) { 5661 config = {}; 5662 } 5663 if (!config.enabled) { 5664 return; 5665 } 5666 alignment = config.alignment, container = config.container, omit_class = config.omit_class, onLoad = config.onLoad, padding = config.padding, networks = config.networks, radius = config.radius, size = config.size, spacing = config.spacing; 5667 if (networks == null) { 5668 networks = ['facebook', 'twitter', 'pinterest', 'email']; 5669 } 5670 if (omit_class == null) { 5671 omit_class = ''; 5672 } 5673 if (padding == null) { 5674 padding = 10; 5675 } 5676 if (radius == null) { 5677 radius = 0; 5678 } 5679 if (size == null) { 5680 size = 40; 5681 } 5682 if (spacing == null) { 5683 spacing = 8; 5684 } 5685 st.checkClass = function(checkClass, el) {}; 5686 return st.getEmbeds(function(el, type, url) { 5687 var $el, contAlign, id, inline_buttons, ref; 5688 if (type !== 'video') { 5689 return; 5690 } 5691 ref = st.newElement(el), $el = ref.$el, id = ref.id; 5692 if (omit_class) { 5693 if (st.hasClass(el.parentNode.parentNode, omit_class)) { 5694 return; 5695 } 5696 if (st.hasClass(el.parentNode, omit_class)) { 5697 return; 5698 } 5699 } 5700 st.addClass($el, 'st-video-share-buttons'); 5701 $el.style.width = el.offsetWidth.toString() + 'px'; 5702 $el.style.margin = '0'; 5703 $el.style.padding = '0'; 5704 if (el.tagName.toLowerCase() === 'blockquote') { 5705 $el.style.margin = 'auto'; 5706 } 5707 $el.setAttribute('data-url', el.src); 5708 if (!st.is_ie) { 5709 contAlign = getComputedStyle(el.parentElement).textAlign;
5710 if ('center' === contAlign) { 5711 $el.style.margin = 'auto'; 5712 } 5713 } 5714 el.parentNode.insertBefore($el, el.nextSibling); 5715 return inline_buttons = st.load('inline-share-buttons', { 5716 alignment: alignment, 5717 id: id, 5718 enabled: true, 5719 networks: networks, 5720 padding: padding, 5721 radius: radius, 5722 size: size, 5723 spacing: spacing, 5724 onLoad: function() { 5725 st.addClass($el, ''); 5726 return typeof onLoad === "function" ? onLoad() : void 0; 5727 } 5728 }); 5729 }); 5730 }; 5731 5732}).call(this); 5733 5734(function(){window.__sharethis__.md5="4ead6e8993ce46ced211e04fb40023e7";})(); 5735}
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.