Index: extlink.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- extlink.js	(date 1481151195000)
+++ extlink.js	(date 1521738768000)
@@ -113,7 +113,7 @@
         $(external_links).attr('rel', function (i, val) {
           // If no rel attribute is present, create one with the values noopener and noreferrer.
           if (val === null) {
-            return 'noopener nofererer';
+            return 'noopener noreferrer';
           }
           // Check to see if rel contains noopener or noreferrer. Add what doesn't exist.
           if (val.indexOf('noopener') > -1 || val.indexOf('noreferrer') > -1) {
@@ -130,7 +130,7 @@
           }
           // Else, append noopener and noreferrer to val.
           else {
-            return val + ' noopener nofererer';
+            return val + ' noopener noreferrer';
           }
         });
       }
Index: extlink.min.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- extlink.min.js	(date 1481151195000)
+++ extlink.min.js	(date 1521739653000)
@@ -1,1 +1,1 @@
-!function(t,a,e){"use strict";a.extlink=a.extlink||{},a.extlink.attach=function(e,n){if(n.data.hasOwnProperty("extlink")){var l,i=/^(([^\/:]+?\.)*)([^\.:]{4,})((\.[a-z]{1,4})*)(:[0-9]{1,5})?$/,s=window.location.host.replace(i,"$3$4"),x=window.location.host.replace(i,"$1");l=n.data.extlink.extSubdomains?"([^/]*\\.)?":"www."===x||""===x?"(www\\.)?":x.replace(".","\\.");var p=new RegExp("^https?://"+l+s,"i"),d=!1;n.data.extlink.extInclude&&(d=new RegExp(n.data.extlink.extInclude.replace(/\\/,"\\"),"i"));var r=!1;n.data.extlink.extExclude&&(r=new RegExp(n.data.extlink.extExclude.replace(/\\/,"\\"),"i"));var k=!1;n.data.extlink.extCssExclude&&(k=n.data.extlink.extCssExclude);var c=!1;n.data.extlink.extCssExplicit&&(c=n.data.extlink.extCssExplicit);var o=[],h=[];t("a:not(."+n.data.extlink.extClass+", ."+n.data.extlink.mailtoClass+"), area:not(."+n.data.extlink.extClass+", ."+n.data.extlink.mailtoClass+")",e).each(function(a){try{var e=this.href.toLowerCase();0!==e.indexOf("http")||(e.match(p)||r&&e.match(r))&&(!d||!e.match(d))||k&&t(this).parents(k).length>0||c&&t(this).parents(c).length<1?"AREA"===this.tagName||0!==e.indexOf("mailto:")||k&&t(this).parents(k).length>0||c&&t(this).parents(c).length<1||h.push(this):o.push(this)}catch(n){return!1}}),n.data.extlink.extClass&&a.extlink.applyClassAndSpan(o,n.data.extlink.extClass),n.data.extlink.mailtoClass&&a.extlink.applyClassAndSpan(h,n.data.extlink.mailtoClass),n.data.extlink.extTarget&&n.data.extlink.extTarget&&t(o).attr({target:'_blank', rel:'nofollow'}),a.extlink=a.extlink||{},a.extlink.popupClickHandler=a.extlink.popupClickHandler||function(){return n.data.extlink.extAlert?confirm(n.data.extlink.extAlertText):void 0},t(o).click(function(t){return a.extlink.popupClickHandler(t)})}},a.extlink.applyClassAndSpan=function(a,n){var l;if(e.data.extlink.extImgClass)l=t(a);else{var i=t(a).find("img").parents("a");l=t(a).not(i)}l.addClass(n);var s,x=l.length;for(s=0;x>s;s++){var p=t(l[s]);("inline"===p.css("display")||"inline-block"===p.css("display"))&&(n===e.data.extlink.mailtoClass?p.append('<span class="'+n+'"><span class="element-invisible"> '+e.data.extlink.mailtoLabel+"</span></span>"):p.append('<span class="'+n+'"><span class="element-invisible"> '+e.data.extlink.extLabel+"</span></span>"))}},a.behaviors.extlink=a.behaviors.extlink||{},a.behaviors.extlink.attach=function(t,e){"function"==typeof extlinkAttach?extlinkAttach(t):a.extlink.attach(t,e)}}(jQuery,Drupal,drupalSettings);
+(function($,Drupal,drupalSettings){"use strict";Drupal.extlink=Drupal.extlink||{};Drupal.extlink.attach=function(context,drupalSettings){if(!drupalSettings.data.hasOwnProperty("extlink")){return}var pattern=/^(([^\/:]+?\.)*)([^\.:]{1,})((\.[a-z0-9]{1,253})*)(:[0-9]{1,5})?$/;var host=window.location.host.replace(pattern,"$3$4");var subdomain=window.location.host.replace(pattern,"$1");var subdomains;if(drupalSettings.data.extlink.extSubdomains){subdomains="([^/]*\\.)?"}else if(subdomain==="www."||subdomain===""){subdomains="(www\\.)?"}else{subdomains=subdomain.replace(".","\\.")}var internal_link=new RegExp("^https?://"+subdomains+host,"i");var extInclude=false;if(drupalSettings.data.extlink.extInclude){extInclude=new RegExp(drupalSettings.data.extlink.extInclude.replace(/\\/,"\\"),"i")}var extExclude=false;if(drupalSettings.data.extlink.extExclude){extExclude=new RegExp(drupalSettings.data.extlink.extExclude.replace(/\\/,"\\"),"i")}var extCssExclude=false;if(drupalSettings.data.extlink.extCssExclude){extCssExclude=drupalSettings.data.extlink.extCssExclude}var extCssExplicit=false;if(drupalSettings.data.extlink.extCssExplicit){extCssExplicit=drupalSettings.data.extlink.extCssExplicit}var external_links=[];var mailto_links=[];$("a:not(."+drupalSettings.data.extlink.extClass+", ."+drupalSettings.data.extlink.mailtoClass+"), area:not(."+drupalSettings.data.extlink.extClass+", ."+drupalSettings.data.extlink.mailtoClass+")",context).each(function(el){try{var url="";if(typeof this.href=="string"){url=this.href.toLowerCase()}else if(typeof this.href=="object"){url=this.href.baseVal}if(url.indexOf("http")===0&&(!url.match(internal_link)&&!(extExclude&&url.match(extExclude))||extInclude&&url.match(extInclude))&&!(extCssExclude&&$(this).parents(extCssExclude).length>0)&&!(extCssExplicit&&$(this).parents(extCssExplicit).length<1)){external_links.push(this)}else if(this.tagName!=="AREA"&&url.indexOf("mailto:")===0&&!(extCssExclude&&$(this).parents(extCssExclude).length>0)&&!(extCssExplicit&&$(this).parents(extCssExplicit).length<1)){mailto_links.push(this)}}catch(error){return false}});if(drupalSettings.data.extlink.extClass){Drupal.extlink.applyClassAndSpan(external_links,drupalSettings.data.extlink.extClass)}if(drupalSettings.data.extlink.mailtoClass){Drupal.extlink.applyClassAndSpan(mailto_links,drupalSettings.data.extlink.mailtoClass)}if(drupalSettings.data.extlink.extTarget){if(drupalSettings.data.extlink.extTarget){$(external_links).attr({target:"_blank",rel:"nofollow"});$(external_links).attr("rel",function(i,val){if(val===null){return"noopener noreferrer"}if(val.indexOf("noopener")>-1||val.indexOf("noreferrer")>-1){if(val.indexOf("noopener")===-1){return val+" noopener"}if(val.indexOf("noreferrer")===-1){return val+" noreferrer"}else{return val}}else{return val+" noopener noreferrer"}})}}Drupal.extlink=Drupal.extlink||{};Drupal.extlink.popupClickHandler=Drupal.extlink.popupClickHandler||function(){if(drupalSettings.data.extlink.extAlert){return confirm(drupalSettings.data.extlink.extAlertText)}};$(external_links).click(function(e){return Drupal.extlink.popupClickHandler(e,this)})};Drupal.extlink.applyClassAndSpan=function(links,class_name){var $links_to_process;if(drupalSettings.data.extlink.extImgClass){$links_to_process=$(links)}else{var links_with_images=$(links).find("img").parents("a");$links_to_process=$(links).not(links_with_images)}$links_to_process.addClass(class_name);var i;var length=$links_to_process.length;for(i=0;i<length;i++){var $link=$($links_to_process[i]);if($link.css("display")==="inline"||$link.css("display")==="inline-block"||$link.css("display")==="block"){if(class_name===drupalSettings.data.extlink.mailtoClass){$link.append('<span class="'+class_name+'"><span class="element-invisible"> '+drupalSettings.data.extlink.mailtoLabel+"</span></span>")}else{$link.append('<span class="'+class_name+'"><span class="element-invisible"> '+drupalSettings.data.extlink.extLabel+"</span></span>")}}}};Drupal.behaviors.extlink=Drupal.behaviors.extlink||{};Drupal.behaviors.extlink.attach=function(context,drupalSettings){if(typeof extlinkAttach==="function"){extlinkAttach(context)}else{Drupal.extlink.attach(context,drupalSettings)}}})(jQuery,Drupal,drupalSettings);
