GRAYBYTE WORDPRESS FILE MANAGER6050

Server IP : 149.255.58.128 / Your IP : 216.73.216.154
System : Linux cloud516.thundercloud.uk 5.14.0-427.26.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 17 15:51:13 EDT 2024 x86_64
PHP Version : 8.2.28
Disable Function : allow_url_include, apache_child_terminate, apache_setenv, exec, passthru, pcntl_exec, posix_kill, posix_mkfifo, posix_getpwuid, posix_setpgid, posix_setsid, posix_setuid, posix_setgid, posix_seteuid, posix_setegid, posix_uname, proc_close, proc_get_status, proc_open, proc_terminate, shell_exec, show_source, system
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /home/wheelch2/public_html/wp-includes/js/
Upload Files :
Current_dir [ Writeable ] Document_root [ Writeable ]

Command :


Current File : /home/wheelch2/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 );
		}

		/**
		 * Initialize our emoji support, and set up listeners.
		 */
		if ( settings ) {
			if ( settings.DOMReady ) {
				load();
			} else {
				settings.readyCallback = load;
			}
		}

		return {
			parse: parse,
			test: test
		};
	}

	window.wp = window.wp || {};

	/**
	 * @namespace wp.emoji
	 */
	window.wp.emoji = new wpEmoji();

} )( window, window._wpemojiSettings );

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
May 20 2025 03:29:06
1032 / wheelch2
0755
codemirror
--
March 06 2020 21:43:31
1032 / wheelch2
0755
crop
--
March 06 2020 21:43:31
1032 / wheelch2
0755
dist
--
March 05 2024 12:06:43
1032 / wheelch2
0755
imgareaselect
--
March 06 2020 21:43:31
1032 / wheelch2
0755
jcrop
--
March 06 2020 21:43:31
1032 / wheelch2
0755
jquery
--
May 29 2023 22:38:18
1032 / wheelch2
0755
mediaelement
--
March 06 2020 21:43:31
1032 / wheelch2
0755
plupload
--
March 06 2020 21:43:31
1032 / wheelch2
0755
swfupload
--
March 06 2020 21:43:31
1032 / wheelch2
0755
thickbox
--
March 06 2020 21:43:31
1032 / wheelch2
0755
tinymce
--
March 06 2020 21:43:31
1032 / wheelch2
0755
about.php
0 KB
March 02 2024 06:00:09
1032 / wheelch2
0644
admin-bar.js
10.51 KB
July 28 2020 04:05:02
1032 / wheelch2
0644
admin-bar.min.js
3.453 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
api-request.js
3.246 KB
December 01 2020 09:14:06
1032 / wheelch2
0644
api-request.min.js
0.999 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
autosave.js
21.949 KB
March 19 2021 00:31:04
1032 / wheelch2
0644
autosave.min.js
5.671 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
backbone.js
77.873 KB
August 11 2023 20:42:22
1032 / wheelch2
0644
backbone.min.js
23.574 KB
August 11 2023 20:42:22
1032 / wheelch2
0644
clipboard.js
26.179 KB
October 04 2022 20:25:24
1032 / wheelch2
0644
clipboard.min.js
8.798 KB
October 04 2022 20:25:24
1032 / wheelch2
0644
colorpicker.js
28.401 KB
November 15 2023 23:17:20
1032 / wheelch2
0644
colorpicker.min.js
16.13 KB
September 24 2022 00:25:30
1032 / wheelch2
0644
comment-reply.js
12.165 KB
January 10 2023 15:00:14
1032 / wheelch2
0644
comment-reply.min.js
2.911 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
customize-base.js
25.217 KB
May 20 2023 14:49:24
1032 / wheelch2
0644
customize-base.min.js
7.668 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
customize-loader.js
7.719 KB
June 20 2020 17:28:10
1032 / wheelch2
0644
customize-loader.min.js
3.468 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
customize-models.js
6.661 KB
June 25 2020 17:13:08
1032 / wheelch2
0644
customize-models.min.js
3.595 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
customize-preview-nav-menus.js
14.672 KB
July 28 2020 04:05:02
1032 / wheelch2
0644
customize-preview-nav-menus.min.js
4.92 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
customize-preview-widgets.js
22.708 KB
June 20 2020 17:28:10
1032 / wheelch2
0644
customize-preview-widgets.min.js
7.642 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
customize-preview.js
27.305 KB
July 28 2020 04:05:02
1032 / wheelch2
0644
customize-preview.min.js
10.453 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
customize-selective-refresh.js
32.551 KB
July 28 2020 04:37:04
1032 / wheelch2
0644
customize-selective-refresh.min.js
10.441 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
customize-views.js
4.946 KB
June 28 2018 07:00:16
1032 / wheelch2
0644
customize-views.min.js
2.394 KB
January 06 2021 20:59:24
1032 / wheelch2
0644
dropdown.php
0 KB
March 02 2024 06:00:09
1032 / wheelch2
0644
heartbeat.js
23.391 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
heartbeat.min.js
5.872 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
hoverIntent.js
7.056 KB
January 03 2022 20:33:18
1032 / wheelch2
0644
hoverIntent.min.js
1.464 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
hoverintent-js.min.js
1.678 KB
December 10 2019 06:33:02
1032 / wheelch2
0644
imagesloaded.min.js
5.391 KB
August 11 2023 22:48:26
1032 / wheelch2
0644
input.php
0 KB
December 16 2023 06:00:19
1032 / wheelch2
0644
json2.js
17.99 KB
October 06 2015 18:32:26
1032 / wheelch2
0644
json2.min.js
3.069 KB
September 24 2022 00:25:30
1032 / wheelch2
0644
masonry.min.js
23.572 KB
June 13 2020 23:23:28
1032 / wheelch2
0644
mce-view.js
25.243 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
mce-view.min.js
9.541 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
media-audiovideo.js
24.446 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
media-audiovideo.min.js
11.854 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
media-editor.js
28.437 KB
July 28 2020 04:05:02
1032 / wheelch2
0644
media-editor.min.js
10.63 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
media-grid.js
26.233 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
media-grid.min.js
13.026 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
media-models.js
42.768 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
media-models.min.js
13.021 KB
October 10 2023 02:01:28
1032 / wheelch2
0644
media-views.js
265.049 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
media-views.min.js
107.693 KB
September 21 2023 17:56:32
1032 / wheelch2
0644
quicktags.js
22.071 KB
September 09 2021 03:59:58
1032 / wheelch2
0644
quicktags.min.js
10.871 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
shortcode.js
10.506 KB
January 29 2020 06:15:18
1032 / wheelch2
0644
shortcode.min.js
2.581 KB
September 24 2022 00:25:30
1032 / wheelch2
0644
swfobject.js
9.991 KB
April 18 2012 03:39:30
1032 / wheelch2
0644
tw-sack.js
4.853 KB
August 23 2012 04:34:18
1032 / wheelch2
0644
tw-sack.min.js
3.211 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
twemoji.js
32.313 KB
February 02 2023 06:23:26
1032 / wheelch2
0644
twemoji.min.js
15.384 KB
February 02 2023 06:23:26
1032 / wheelch2
0644
underscore.js
66.771 KB
September 27 2022 19:48:26
1032 / wheelch2
0644
underscore.min.js
18.392 KB
September 27 2022 19:48:26
1032 / wheelch2
0644
utils.js
4.556 KB
January 29 2020 06:15:18
1032 / wheelch2
0644
utils.min.js
1.82 KB
September 24 2022 00:25:30
1032 / wheelch2
0644
wp-ajax-response.js
3.684 KB
July 16 2022 05:38:10
1032 / wheelch2
0644
wp-ajax-response.min.js
2.383 KB
September 24 2022 00:25:30
1032 / wheelch2
0644
wp-api.js
45.882 KB
January 10 2023 15:00:14
1032 / wheelch2
0644
wp-api.min.js
14.338 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
wp-auth-check.js
4.108 KB
March 19 2021 00:31:04
1032 / wheelch2
0644
wp-auth-check.min.js
1.619 KB
March 19 2021 00:31:04
1032 / wheelch2
0644
wp-backbone.js
14.883 KB
June 20 2020 17:28:10
1032 / wheelch2
0644
wp-backbone.min.js
2.968 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
wp-custom-header.js
10.22 KB
April 10 2021 17:10:06
1032 / wheelch2
0644
wp-custom-header.min.js
4.338 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
wp-embed-template.js
6.62 KB
November 11 2021 08:19:18
1032 / wheelch2
0644
wp-embed-template.min.js
3.1 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
wp-embed.js
3.139 KB
August 11 2023 00:19:18
1032 / wheelch2
0644
wp-embed.min.js
1.222 KB
August 11 2023 00:19:18
1032 / wheelch2
0644
wp-emoji-loader.js
12.229 KB
August 04 2023 04:53:26
1032 / wheelch2
0644
wp-emoji-loader.min.js
2.919 KB
August 04 2023 04:53:26
1032 / wheelch2
0644
wp-emoji-release.min.js
18.254 KB
February 02 2023 06:23:26
1032 / wheelch2
0644
wp-emoji.js
8.759 KB
February 02 2023 06:23:26
1032 / wheelch2
0644
wp-emoji.min.js
2.822 KB
February 02 2023 06:23:26
1032 / wheelch2
0644
wp-list-revisions.js
0.947 KB
June 28 2018 07:00:16
1032 / wheelch2
0644
wp-list-revisions.min.js
0.583 KB
January 06 2021 20:59:24
1032 / wheelch2
0644
wp-lists.js
24.722 KB
June 24 2023 19:02:20
1032 / wheelch2
0644
wp-lists.min.js
7.345 KB
June 24 2023 19:02:20
1032 / wheelch2
0644
wp-pointer.js
9.993 KB
February 17 2021 01:55:04
1032 / wheelch2
0644
wp-pointer.min.js
3.536 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
wp-sanitize.js
1.318 KB
September 04 2019 21:43:22
1032 / wheelch2
0644
wp-sanitize.min.js
0.447 KB
April 09 2022 00:37:18
1032 / wheelch2
0644
wp-util.js
4.569 KB
September 20 2022 08:22:10
1032 / wheelch2
0644
wp-util.min.js
1.393 KB
September 20 2022 08:22:10
1032 / wheelch2
0644
wpdialog.js
0.556 KB
January 25 2023 02:43:12
1032 / wheelch2
0644
wpdialog.min.js
0.274 KB
January 25 2023 02:43:12
1032 / wheelch2
0644
wplink.js
20.663 KB
March 19 2021 00:31:04
1032 / wheelch2
0644
wplink.min.js
10.989 KB
February 02 2023 22:06:32
1032 / wheelch2
0644
zxcvbn-async.js
0.802 KB
June 28 2018 07:00:16
1032 / wheelch2
0644
zxcvbn-async.min.js
0.343 KB
February 23 2021 22:15:20
1032 / wheelch2
0644
zxcvbn.min.js
802.966 KB
October 26 2019 04:47:08
1032 / wheelch2
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF