Submit
Path:
~
/
home
/
bfxleof
/
www
/
wp-includes
/
js
/
File Content:
wp-emoji-loader.js
/** * @output wp-includes/js/wp-emoji-loader.js */ ( function( window, document, settings ) { var src, ready, ii, tests; // Create a canvas element for testing native browser support of emoji. var canvas = document.createElement( 'canvas' ); var context = canvas.getContext && canvas.getContext( '2d' ); /** * Checks if two sets of Emoji characters render the same visually. * * @since 4.9.0 * * @private * * @param {number[]} set1 Set of Emoji character codes. * @param {number[]} set2 Set of Emoji character codes. * * @return {boolean} True if the two sets render the same. */ function emojiSetsRenderIdentically( set1, set2 ) { var stringFromCharCode = String.fromCharCode; // Cleanup from previous test. context.clearRect( 0, 0, canvas.width, canvas.height ); context.fillText( stringFromCharCode.apply( this, set1 ), 0, 0 ); var rendered1 = canvas.toDataURL(); // Cleanup from previous test. context.clearRect( 0, 0, canvas.width, canvas.height ); context.fillText( stringFromCharCode.apply( this, set2 ), 0, 0 ); var rendered2 = canvas.toDataURL(); return rendered1 === rendered2; } /** * Detects if the browser supports rendering emoji or flag emoji. * * Flag emoji are a single glyph made of two characters, so some browsers * (notably, Firefox OS X) don't support them. * * @since 4.2.0 * * @private * * @param {string} type Whether to test for support of "flag" or "emoji". * * @return {boolean} True if the browser can render emoji, false if it cannot. */ function browserSupportsEmoji( type ) { var isIdentical; if ( ! context || ! context.fillText ) { return false; } /* * Chrome on OS X added native emoji rendering in M41. Unfortunately, * it doesn't work when the font is bolder than 500 weight. So, we * check for bold rendering support to avoid invisible emoji in Chrome. */ context.textBaseline = 'top'; context.font = '600 32px Arial'; switch ( type ) { case 'flag': /* * Test for Transgender flag compatibility. This flag is shortlisted for the Emoji 13 spec, * but has landed in Twemoji early, so we can add support for it, too. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesn't render it correctly (white flag emoji + transgender symbol). */ isIdentical = emojiSetsRenderIdentically( [ 0x1F3F3, 0xFE0F, 0x200D, 0x26A7, 0xFE0F ], [ 0x1F3F3, 0xFE0F, 0x200B, 0x26A7, 0xFE0F ] ); if ( isIdentical ) { return false; } /* * Test for UN flag compatibility. This is the least supported of the letter locale flags, * so gives us an easy test for full support. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesn't render it correctly ([U] + [N]). */ isIdentical = emojiSetsRenderIdentically( [ 0xD83C, 0xDDFA, 0xD83C, 0xDDF3 ], [ 0xD83C, 0xDDFA, 0x200B, 0xD83C, 0xDDF3 ] ); if ( isIdentical ) { return false; } /* * Test for English flag compatibility. England is a country in the United Kingdom, it * does not have a two letter locale code but rather an five letter sub-division code. * * To test for support, we try to render it, and compare the rendering to how it would look if * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]). */ isIdentical = emojiSetsRenderIdentically( [ 0xD83C, 0xDFF4, 0xDB40, 0xDC67, 0xDB40, 0xDC62, 0xDB40, 0xDC65, 0xDB40, 0xDC6E, 0xDB40, 0xDC67, 0xDB40, 0xDC7F ], [ 0xD83C, 0xDFF4, 0x200B, 0xDB40, 0xDC67, 0x200B, 0xDB40, 0xDC62, 0x200B, 0xDB40, 0xDC65, 0x200B, 0xDB40, 0xDC6E, 0x200B, 0xDB40, 0xDC67, 0x200B, 0xDB40, 0xDC7F ] ); return ! isIdentical; case 'emoji': /* * So easy, even a baby could do it! * * To test for Emoji 13 support, try to render a new emoji: Man Feeding Baby. * * The Man Feeding Baby emoji is a ZWJ sequence combining 👨 Man, a Zero Width Joiner and 🍼 Baby Bottle. * * 0xD83D, 0xDC68 == Man emoji. * 0x200D == Zero-Width Joiner (ZWJ) that links the two code points for the new emoji or * 0x200B == Zero-Width Space (ZWS) that is rendered for clients not supporting the new emoji. * 0xD83C, 0xDF7C == Baby Bottle. * * When updating this test for future Emoji releases, ensure that individual emoji that make up the * sequence come from older emoji standards. */ isIdentical = emojiSetsRenderIdentically( [0xD83D, 0xDC68, 0x200D, 0xD83C, 0xDF7C], [0xD83D, 0xDC68, 0x200B, 0xD83C, 0xDF7C] ); return ! isIdentical; } return false; } /** * Adds a script to the head of the document. * * @ignore * * @since 4.2.0 * * @param {Object} src The url where the script is located. * @return {void} */ function addScript( src ) { var script = document.createElement( 'script' ); script.src = src; script.defer = script.type = 'text/javascript'; document.getElementsByTagName( 'head' )[0].appendChild( script ); } tests = Array( 'flag', 'emoji' ); settings.supports = { everything: true, everythingExceptFlag: true }; /* * Tests the browser support for flag emojis and other emojis, and adjusts the * support settings accordingly. */ for( ii = 0; ii < tests.length; ii++ ) { settings.supports[ tests[ ii ] ] = browserSupportsEmoji( tests[ ii ] ); settings.supports.everything = settings.supports.everything && settings.supports[ tests[ ii ] ]; if ( 'flag' !== tests[ ii ] ) { settings.supports.everythingExceptFlag = settings.supports.everythingExceptFlag && settings.supports[ tests[ ii ] ]; } } settings.supports.everythingExceptFlag = settings.supports.everythingExceptFlag && ! settings.supports.flag; // Sets DOMReady to false and assigns a ready function to settings. settings.DOMReady = false; settings.readyCallback = function() { settings.DOMReady = true; }; // When the browser can not render everything we need to load a polyfill. if ( ! settings.supports.everything ) { ready = function() { settings.readyCallback(); }; /* * Cross-browser version of adding a dom ready event. */ if ( document.addEventListener ) { document.addEventListener( 'DOMContentLoaded', ready, false ); window.addEventListener( 'load', ready, false ); } else { window.attachEvent( 'onload', ready ); document.attachEvent( 'onreadystatechange', function() { if ( 'complete' === document.readyState ) { settings.readyCallback(); } } ); } src = settings.source || {}; if ( src.concatemoji ) { addScript( src.concatemoji ); } else if ( src.wpemoji && src.twemoji ) { addScript( src.twemoji ); addScript( src.wpemoji ); } } } )( window, document, window._wpemojiSettings );
Submit
FILE
FOLDER
Name
Size
Permission
Action
codemirror
---
0755
crop
---
0755
dist
---
0755
imgareaselect
---
0755
jcrop
---
0755
jquery
---
0755
mediaelement
---
0755
plupload
---
0755
swfupload
---
0755
thickbox
---
0755
tinymce
---
0755
418.php
478 bytes
0644
Category.php
3944 bytes
0644
ChaCha20.php
12934 bytes
0644
Exception.php
1214 bytes
0644
admin-bar.css
23876 bytes
0644
admin-bar.js
10762 bytes
0644
admin-bar.min.js
3556 bytes
0644
autoload.php
2731 bytes
0644
autosave.js
22518 bytes
0644
autosave.min.js
5847 bytes
0644
backbone.js
77794 bytes
0604
backbone.min.js
23818 bytes
0644
block.json
458 bytes
0644
class-wp-http-streams-20260704171429.php
16117 bytes
0644
class-wp-http-streams.php
16117 bytes
0644
class-wp-network-query.php
19169 bytes
0644
class-wp-network.php
12379 bytes
0644
class-wp-oembed-controller-20260621150705.php
6793 bytes
0644
class-wp-oembed-controller.php
6793 bytes
0644
class-wp-site.php
7428 bytes
0644
class-wp-sitemaps-posts-20260705060716.php
5875 bytes
0644
class-wp-sitemaps-posts.php
5875 bytes
0644
class-wp-theme.php
51601 bytes
0644
clipboard.js
29493 bytes
0644
clipboard.min.js
10419 bytes
0644
colorpicker.js
29083 bytes
0604
colorpicker.min.js
16562 bytes
0644
comment-reply.js
12457 bytes
0644
comment-reply.min.js
2984 bytes
0644
common-rtl.css
6510 bytes
0644
customize-base.js
25766 bytes
0644
customize-base.min.js
7858 bytes
0644
customize-loader.js
7904 bytes
0644
customize-loader.min.js
3553 bytes
0644
customize-models.js
6821 bytes
0644
customize-models.min.js
3693 bytes
0644
customize-preview-nav-menus.js
15024 bytes
0644
customize-preview-nav-menus.min.js
5038 bytes
0644
customize-preview-widgets.js
23253 bytes
0644
customize-preview-widgets.min.js
7824 bytes
0644
customize-preview.js
27960 bytes
0644
customize-preview.min.js
10758 bytes
0644
customize-selective-refresh.js
33332 bytes
0644
customize-selective-refresh.min.js
10693 bytes
0644
customize-views.js
5065 bytes
0604
customize-views.min.js
2451 bytes
0644
data.js
147192 bytes
0644
editor.js
472144 bytes
0644
heartbeat.js
23154 bytes
0644
heartbeat.min.js
5883 bytes
0644
hoverintent-js.min.js
1718 bytes
0604
https-detection-20260622230655.php
6871 bytes
0644
https-detection-20260623211809-20260705134447.php
6871 bytes
0644
https-detection-20260623211809-20260706014449.php
6871 bytes
0644
https-detection-20260623211809.php
6871 bytes
0644
https-detection.php
6871 bytes
0644
https-migration-20260621215951.php
4730 bytes
0644
https-migration-20260621222700-20260622020253.php
4730 bytes
0644
https-migration-20260621222700-20260622150413.php
4730 bytes
0644
https-migration-20260621222700.php
4730 bytes
0644
https-migration-20260622015718.php
4730 bytes
0644
https-migration-20260622015815.php
4730 bytes
0644
https-migration-20260622055634.php
4730 bytes
0644
https-migration-20260622145328.php
4730 bytes
0644
https-migration-20260622165410.php
4730 bytes
0644
https-migration-20260622194220.php
4730 bytes
0644
https-migration-20260622204948.php
4730 bytes
0644
https-migration-20260622211332.php
4730 bytes
0644
https-migration-20260622230538.php
4730 bytes
0644
https-migration.php
4730 bytes
0644
imagesloaded.min.js
5629 bytes
0644
json2.js
18422 bytes
0604
json2.min.js
3153 bytes
0644
kses.php
63459 bytes
0644
masonry.min.js
24138 bytes
0644
mce-view.js
26059 bytes
0644
mce-view.min.js
9883 bytes
0644
media-audiovideo.js
27553 bytes
0644
media-audiovideo.min.js
12921 bytes
0644
media-editor.js
29119 bytes
0644
media-editor.min.js
10909 bytes
0644
media-grid.js
29532 bytes
0644
media-grid.min.js
14165 bytes
0644
media-models.js
45137 bytes
0644
media-models.min.js
13811 bytes
0644
media-views.js
267734 bytes
0644
media-views.min.js
107493 bytes
0644
ms-blogs.php
25174 bytes
0644
nav-menu-template.php
23296 bytes
0644
php72compat_const.php
4597 bytes
0644
plural-forms.php
7612 bytes
0644
quicktags.js
22615 bytes
0604
quicktags.min.js
11149 bytes
0644
revision.php
22027 bytes
0644
shortcode.min.js
4096 bytes
0644
shortcode.php
697 bytes
0644
swfobject.js
10231 bytes
0604
tw-sack.js
4969 bytes
0604
tw-sack.min.js
3299 bytes
0604
twemoji.js
28010 bytes
0644
twemoji.min.js
11307 bytes
0644
underscore.min.js
16045 bytes
0644
utils.js
4665 bytes
0604
utils.min.js
1864 bytes
0644
wp-ajax-response.js
3214 bytes
0644
wp-ajax-response.min.js
2098 bytes
0644
wp-api.js
46983 bytes
0644
wp-api.min.js
14687 bytes
0644
wp-auth-check.js
4225 bytes
0644
wp-auth-check.min.js
1674 bytes
0644
wp-backbone.js
15240 bytes
0644
wp-backbone.min.js
3037 bytes
0644
wp-custom-header.js
10447 bytes
0644
wp-custom-header.min.js
4442 bytes
0644
wp-embed-template.min.js
3154 bytes
0644
wp-embed.js
3414 bytes
0644
wp-embed.min.js
1478 bytes
0644
wp-emoji-loader.js
6953 bytes
0644
wp-emoji-loader.min.js
1852 bytes
0644
wp-emoji-release.min.js
14229 bytes
0644
wp-emoji.js
8989 bytes
0604
wp-emoji.min.js
2873 bytes
0644
wp-list-revisions.js
970 bytes
0604
wp-list-revisions.min.js
597 bytes
0644
wp-lists.js
25315 bytes
0644
wp-lists.min.js
7434 bytes
0644
wp-sanitize.js
1350 bytes
0604
wp-sanitize.min.js
458 bytes
0644
wp-util.js
4113 bytes
0644
wp-util.min.js
1169 bytes
0644
wpdialog.js
560 bytes
0604
wpdialog.min.js
272 bytes
0604
wplink.js
21160 bytes
0644
wplink.min.js
11283 bytes
0644
zxcvbn-async.js
821 bytes
0604
zxcvbn-async.min.js
351 bytes
0644
zxcvbn.min.js
822237 bytes
0604
N4ST4R_ID | Naxtarrr