at path๏ผšROOT / wp-includes / js / wp-emoji-loader.js
run๏ผšR W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
DIR
2026-03-11 16:18:51
R W Run
10.3 KB
2026-03-11 16:18:51
R W Run
3.41 KB
2026-03-11 16:18:51
R W Run
3.25 KB
2026-03-11 16:18:51
R W Run
1023 By
2026-03-11 16:18:51
R W Run
21.95 KB
2026-03-11 16:18:51
R W Run
5.67 KB
2026-03-11 16:18:51
R W Run
78.51 KB
2026-03-11 16:18:51
R W Run
23.73 KB
2026-03-11 16:18:51
R W Run
26.18 KB
2026-03-11 16:18:51
R W Run
8.8 KB
2026-03-11 16:18:51
R W Run
28.4 KB
2026-03-11 16:18:51
R W Run
16.11 KB
2026-03-11 16:18:51
R W Run
12.22 KB
2026-03-11 16:18:51
R W Run
2.96 KB
2026-03-11 16:18:51
R W Run
25.22 KB
2026-03-11 16:18:51
R W Run
7.67 KB
2026-03-11 16:18:51
R W Run
7.72 KB
2026-03-11 16:18:51
R W Run
3.47 KB
2026-03-11 16:18:51
R W Run
6.66 KB
2026-03-11 16:18:51
R W Run
3.59 KB
2026-03-11 16:18:51
R W Run
14.67 KB
2026-03-11 16:18:51
R W Run
4.92 KB
2026-03-11 16:18:51
R W Run
22.71 KB
2026-03-11 16:18:51
R W Run
7.64 KB
2026-03-11 16:18:51
R W Run
27.93 KB
2026-03-11 16:18:51
R W Run
10.75 KB
2026-03-11 16:18:51
R W Run
32.55 KB
2026-03-11 16:18:51
R W Run
10.44 KB
2026-03-11 16:18:51
R W Run
5.1 KB
2026-03-11 16:18:51
R W Run
2.51 KB
2026-03-11 16:18:51
R W Run
23.49 KB
2026-03-11 16:18:51
R W Run
5.81 KB
2026-03-11 16:18:51
R W Run
7.06 KB
2026-03-11 16:18:51
R W Run
1.46 KB
2026-03-11 16:18:51
R W Run
1.68 KB
2026-03-11 16:18:51
R W Run
5.39 KB
2026-03-11 16:18:51
R W Run
31 By
2026-03-11 16:18:51
R W Run
35 By
2026-03-11 16:18:51
R W Run
23.57 KB
2026-03-11 16:18:51
R W Run
25.24 KB
2026-03-11 16:18:51
R W Run
9.54 KB
2026-03-11 16:18:51
R W Run
24.24 KB
2026-03-11 16:18:51
R W Run
11.77 KB
2026-03-11 16:18:51
R W Run
28.44 KB
2026-03-11 16:18:51
R W Run
10.63 KB
2026-03-11 16:18:51
R W Run
26.15 KB
2026-03-11 16:18:51
R W Run
12.98 KB
2026-03-11 16:18:51
R W Run
42.58 KB
2026-03-11 16:18:51
R W Run
12.97 KB
2026-03-11 16:18:51
R W Run
266.99 KB
2026-03-11 16:18:51
R W Run
108.18 KB
2026-03-11 16:18:51
R W Run
22.07 KB
2026-03-11 16:18:51
R W Run
10.87 KB
2026-03-11 16:18:51
R W Run
10.51 KB
2026-03-11 16:18:51
R W Run
2.58 KB
2026-03-11 16:18:51
R W Run
0 By
2026-03-11 16:18:51
R W Run
35 By
2026-03-11 16:18:51
R W Run
4.85 KB
2026-03-11 16:18:51
R W Run
3.21 KB
2026-03-11 16:18:51
R W Run
36.32 KB
2026-03-11 16:18:51
R W Run
19.39 KB
2026-03-11 16:18:51
R W Run
67.12 KB
2026-03-11 16:18:51
R W Run
18.46 KB
2026-03-11 16:18:51
R W Run
4.56 KB
2026-03-11 16:18:51
R W Run
1.82 KB
2026-03-11 16:18:51
R W Run
3.81 KB
2026-03-11 16:18:51
R W Run
2.51 KB
2026-03-11 16:18:51
R W Run
45.88 KB
2026-03-11 16:18:51
R W Run
14.34 KB
2026-03-11 16:18:51
R W Run
4.11 KB
2026-03-11 16:18:51
R W Run
1.62 KB
2026-03-11 16:18:51
R W Run
14.88 KB
2026-03-11 16:18:51
R W Run
2.97 KB
2026-03-11 16:18:51
R W Run
10.22 KB
2026-03-11 16:18:51
R W Run
4.34 KB
2026-03-11 16:18:51
R W Run
6.62 KB
2026-03-11 16:18:51
R W Run
3.1 KB
2026-03-11 16:18:51
R W Run
3.14 KB
2026-03-11 16:18:51
R W Run
1.22 KB
2026-03-11 16:18:51
R W Run
12.89 KB
2026-03-11 16:18:51
R W Run
2.82 KB
2026-03-11 16:18:51
R W Run
22.23 KB
2026-03-11 16:18:51
R W Run
8.59 KB
2026-03-11 16:18:51
R W Run
2.79 KB
2026-03-11 16:18:51
R W Run
970 By
2026-03-11 16:18:51
R W Run
597 By
2026-03-11 16:18:51
R W Run
24.72 KB
2026-03-11 16:18:51
R W Run
7.34 KB
2026-03-11 16:18:51
R W Run
9.99 KB
2026-03-11 16:18:51
R W Run
3.54 KB
2026-03-11 16:18:51
R W Run
1.3 KB
2026-03-11 16:18:51
R W Run
444 By
2026-03-11 16:18:51
R W Run
4.58 KB
2026-03-11 16:18:51
R W Run
1.4 KB
2026-03-11 16:18:51
R W Run
569 By
2026-03-11 16:18:51
R W Run
281 By
2026-03-11 16:18:51
R W Run
20.74 KB
2026-03-11 16:18:51
R W Run
11.05 KB
2026-03-11 16:18:51
R W Run
821 By
2026-03-11 16:18:51
R W Run
351 By
2026-03-11 16:18:51
R W Run
802.97 KB
2026-03-11 16:18:51
R W Run
error_log
๐Ÿ“„wp-emoji-loader.js
1/**
2 * @output wp-includes/js/wp-emoji-loader.js
3 */
4
5/* eslint-env es6 */
6
7// Note: This is loaded as a script module, so there is no need for an IIFE to prevent pollution of the global scope.
8
9/**
10 * Emoji Settings as exported in PHP via _print_emoji_detection_script().
11 * @typedef WPEmojiSettings
12 * @type {object}
13 * @property {?object} source
14 * @property {?string} source.concatemoji
15 * @property {?string} source.twemoji
16 * @property {?string} source.wpemoji
17 */
18
19const settings = /** @type {WPEmojiSettings} */ (
20 JSON.parse( document.getElementById( 'wp-emoji-settings' ).textContent )
21);
22
23// For compatibility with other scripts that read from this global, in particular wp-includes/js/wp-emoji.js (source file: js/_enqueues/wp/emoji.js).
24window._wpemojiSettings = settings;
25
26/**
27 * Support tests.
28 * @typedef SupportTests
29 * @type {object}
30 * @property {?boolean} flag
31 * @property {?boolean} emoji
32 */
33
34const sessionStorageKey = 'wpEmojiSettingsSupports';
35const tests = [ 'flag', 'emoji' ];
36
37/**
38 * Checks whether the browser supports offloading to a Worker.
39 *
40 * @since 6.3.0
41 *
42 * @private
43 *
44 * @returns {boolean}
45 */
46function supportsWorkerOffloading() {
47 return (
48 typeof Worker !== 'undefined' &&
49 typeof OffscreenCanvas !== 'undefined' &&
50 typeof URL !== 'undefined' &&
51 URL.createObjectURL &&
52 typeof Blob !== 'undefined'
53 );
54}
55
56/**
57 * @typedef SessionSupportTests
58 * @type {object}
59 * @property {number} timestamp
60 * @property {SupportTests} supportTests
61 */
62
63/**
64 * Get support tests from session.
65 *
66 * @since 6.3.0
67 *
68 * @private
69 *
70 * @returns {?SupportTests} Support tests, or null if not set or older than 1 week.
71 */
72function getSessionSupportTests() {
73 try {
74 /** @type {SessionSupportTests} */
75 const item = JSON.parse(
76 sessionStorage.getItem( sessionStorageKey )
77 );
78 if (
79 typeof item === 'object' &&
80 typeof item.timestamp === 'number' &&
81 new Date().valueOf() < item.timestamp + 604800 && // Note: Number is a week in seconds.
82 typeof item.supportTests === 'object'
83 ) {
84 return item.supportTests;
85 }
86 } catch ( e ) {}
87 return null;
88}
89
90/**
91 * Persist the supports in session storage.
92 *
93 * @since 6.3.0
94 *
95 * @private
96 *
97 * @param {SupportTests} supportTests Support tests.
98 */
99function setSessionSupportTests( supportTests ) {
100 try {
101 /** @type {SessionSupportTests} */
102 const item = {
103 supportTests: supportTests,
104 timestamp: new Date().valueOf()
105 };
106
107 sessionStorage.setItem(
108 sessionStorageKey,
109 JSON.stringify( item )
110 );
111 } catch ( e ) {}
112}
113
114/**
115 * Checks if two sets of Emoji characters render the same visually.
116 *
117 * This is used to determine if the browser is rendering an emoji with multiple data points
118 * correctly. set1 is the emoji in the correct form, using a zero-width joiner. set2 is the emoji
119 * in the incorrect form, using a zero-width space. If the two sets render the same, then the browser
120 * does not support the emoji correctly.
121 *
122 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
123 * scope. Everything must be passed by parameters.
124 *
125 * @since 4.9.0
126 *
127 * @private
128 *
129 * @param {CanvasRenderingContext2D} context 2D Context.
130 * @param {string} set1 Set of Emoji to test.
131 * @param {string} set2 Set of Emoji to test.
132 *
133 * @return {boolean} True if the two sets render the same.
134 */
135function emojiSetsRenderIdentically( context, set1, set2 ) {
136 // Cleanup from previous test.
137 context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
138 context.fillText( set1, 0, 0 );
139 const rendered1 = new Uint32Array(
140 context.getImageData(
141 0,
142 0,
143 context.canvas.width,
144 context.canvas.height
145 ).data
146 );
147
148 // Cleanup from previous test.
149 context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
150 context.fillText( set2, 0, 0 );
151 const rendered2 = new Uint32Array(
152 context.getImageData(
153 0,
154 0,
155 context.canvas.width,
156 context.canvas.height
157 ).data
158 );
159
160 return rendered1.every( ( rendered2Data, index ) => {
161 return rendered2Data === rendered2[ index ];
162 } );
163}
164
165/**
166 * Checks if the center point of a single emoji is empty.
167 *
168 * This is used to determine if the browser is rendering an emoji with a single data point
169 * correctly. The center point of an incorrectly rendered emoji will be empty. A correctly
170 * rendered emoji will have a non-zero value at the center point.
171 *
172 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
173 * scope. Everything must be passed by parameters.
174 *
175 * @since 6.8.2
176 *
177 * @private
178 *
179 * @param {CanvasRenderingContext2D} context 2D Context.
180 * @param {string} emoji Emoji to test.
181 *
182 * @return {boolean} True if the center point is empty.
183 */
184function emojiRendersEmptyCenterPoint( context, emoji ) {
185 // Cleanup from previous test.
186 context.clearRect( 0, 0, context.canvas.width, context.canvas.height );
187 context.fillText( emoji, 0, 0 );
188
189 // Test if the center point (16, 16) is empty (0,0,0,0).
190 const centerPoint = context.getImageData(16, 16, 1, 1);
191 for ( let i = 0; i < centerPoint.data.length; i++ ) {
192 if ( centerPoint.data[ i ] !== 0 ) {
193 // Stop checking the moment it's known not to be empty.
194 return false;
195 }
196 }
197
198 return true;
199}
200
201/**
202 * Determines if the browser properly renders Emoji that Twemoji can supplement.
203 *
204 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
205 * scope. Everything must be passed by parameters.
206 *
207 * @since 4.2.0
208 *
209 * @private
210 *
211 * @param {CanvasRenderingContext2D} context 2D Context.
212 * @param {string} type Whether to test for support of "flag" or "emoji".
213 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
214 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
215 *
216 * @return {boolean} True if the browser can render emoji, false if it cannot.
217 */
218function browserSupportsEmoji( context, type, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
219 let isIdentical;
220
221 switch ( type ) {
222 case 'flag':
223 /*
224 * Test for Transgender flag compatibility. Added in Unicode 13.
225 *
226 * To test for support, we try to render it, and compare the rendering to how it would look if
227 * the browser doesn't render it correctly (white flag emoji + transgender symbol).
228 */
229 isIdentical = emojiSetsRenderIdentically(
230 context,
231 '\uD83C\uDFF3\uFE0F\u200D\u26A7\uFE0F', // as a zero-width joiner sequence
232 '\uD83C\uDFF3\uFE0F\u200B\u26A7\uFE0F' // separated by a zero-width space
233 );
234
235 if ( isIdentical ) {
236 return false;
237 }
238
239 /*
240 * Test for Sark flag compatibility. This is the least supported of the letter locale flags,
241 * so gives us an easy test for full support.
242 *
243 * To test for support, we try to render it, and compare the rendering to how it would look if
244 * the browser doesn't render it correctly ([C] + [Q]).
245 */
246 isIdentical = emojiSetsRenderIdentically(
247 context,
248 '\uD83C\uDDE8\uD83C\uDDF6', // as the sequence of two code points
249 '\uD83C\uDDE8\u200B\uD83C\uDDF6' // as the two code points separated by a zero-width space
250 );
251
252 if ( isIdentical ) {
253 return false;
254 }
255
256 /*
257 * Test for English flag compatibility. England is a country in the United Kingdom, it
258 * does not have a two letter locale code but rather a five letter sub-division code.
259 *
260 * To test for support, we try to render it, and compare the rendering to how it would look if
261 * the browser doesn't render it correctly (black flag emoji + [G] + [B] + [E] + [N] + [G]).
262 */
263 isIdentical = emojiSetsRenderIdentically(
264 context,
265 // as the flag sequence
266 '\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F',
267 // with each code point separated by a zero-width space
268 '\uD83C\uDFF4\u200B\uDB40\uDC67\u200B\uDB40\uDC62\u200B\uDB40\uDC65\u200B\uDB40\uDC6E\u200B\uDB40\uDC67\u200B\uDB40\uDC7F'
269 );
270
271 return ! isIdentical;
272 case 'emoji':
273 /*
274 * Is there a large, hairy, humanoid mythical creature living in the browser?
275 *
276 * To test for Emoji 17.0 support, try to render a new emoji: Hairy Creature.
277 *
278 * The hairy creature emoji is a single code point emoji. Testing for browser
279 * support required testing the center point of the emoji to see if it is empty.
280 *
281 * 0xD83E 0x1FAC8 (\uD83E\u1FAC8) == ๐Ÿซˆ Hairy creature.
282 *
283 * When updating this test, please ensure that the emoji is either a single code point
284 * or switch to using the emojiSetsRenderIdentically function and testing with a zero-width
285 * joiner vs a zero-width space.
286 */
287 const notSupported = emojiRendersEmptyCenterPoint( context, '\uD83E\u1FAC8' );
288 return ! notSupported;
289 }
290
291 return false;
292}
293
294/**
295 * Checks emoji support tests.
296 *
297 * This function may be serialized to run in a Worker. Therefore, it cannot refer to variables from the containing
298 * scope. Everything must be passed by parameters.
299 *
300 * @since 6.3.0
301 *
302 * @private
303 *
304 * @param {string[]} tests Tests.
305 * @param {Function} browserSupportsEmoji Reference to browserSupportsEmoji function, needed due to minification.
306 * @param {Function} emojiSetsRenderIdentically Reference to emojiSetsRenderIdentically function, needed due to minification.
307 * @param {Function} emojiRendersEmptyCenterPoint Reference to emojiRendersEmptyCenterPoint function, needed due to minification.
308 *
309 * @return {SupportTests} Support tests.
310 */
311function testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint ) {
312 let canvas;
313 if (
314 typeof WorkerGlobalScope !== 'undefined' &&
315 self instanceof WorkerGlobalScope
316 ) {
317 canvas = new OffscreenCanvas( 300, 150 ); // Dimensions are default for HTMLCanvasElement.
318 } else {
319 canvas = document.createElement( 'canvas' );
320 }
321
322 const context = canvas.getContext( '2d', { willReadFrequently: true } );
323
324 /*
325 * Chrome on OS X added native emoji rendering in M41. Unfortunately,
326 * it doesn't work when the font is bolder than 500 weight. So, we
327 * check for bold rendering support to avoid invisible emoji in Chrome.
328 */
329 context.textBaseline = 'top';
330 context.font = '600 32px Arial';
331
332 const supports = {};
333 tests.forEach( ( test ) => {
334 supports[ test ] = browserSupportsEmoji( context, test, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
335 } );
336 return supports;
337}
338
339/**
340 * Adds a script to the head of the document.
341 *
342 * @ignore
343 *
344 * @since 4.2.0
345 *
346 * @param {string} src The url where the script is located.
347 *
348 * @return {void}
349 */
350function addScript( src ) {
351 const script = document.createElement( 'script' );
352 script.src = src;
353 script.defer = true;
354 document.head.appendChild( script );
355}
356
357settings.supports = {
358 everything: true,
359 everythingExceptFlag: true
360};
361
362// Obtain the emoji support from the browser, asynchronously when possible.
363new Promise( ( resolve ) => {
364 let supportTests = getSessionSupportTests();
365 if ( supportTests ) {
366 resolve( supportTests );
367 return;
368 }
369
370 if ( supportsWorkerOffloading() ) {
371 try {
372 // Note that the functions are being passed as arguments due to minification.
373 const workerScript =
374 'postMessage(' +
375 testEmojiSupports.toString() +
376 '(' +
377 [
378 JSON.stringify( tests ),
379 browserSupportsEmoji.toString(),
380 emojiSetsRenderIdentically.toString(),
381 emojiRendersEmptyCenterPoint.toString()
382 ].join( ',' ) +
383 '));';
384 const blob = new Blob( [ workerScript ], {
385 type: 'text/javascript'
386 } );
387 const worker = new Worker( URL.createObjectURL( blob ), { name: 'wpTestEmojiSupports' } );
388 worker.onmessage = ( event ) => {
389 supportTests = event.data;
390 setSessionSupportTests( supportTests );
391 worker.terminate();
392 resolve( supportTests );
393 };
394 return;
395 } catch ( e ) {}
396 }
397
398 supportTests = testEmojiSupports( tests, browserSupportsEmoji, emojiSetsRenderIdentically, emojiRendersEmptyCenterPoint );
399 setSessionSupportTests( supportTests );
400 resolve( supportTests );
401} )
402 // Once the browser emoji support has been obtained from the session, finalize the settings.
403 .then( ( supportTests ) => {
404 /*
405 * Tests the browser support for flag emojis and other emojis, and adjusts the
406 * support settings accordingly.
407 */
408 for ( const test in supportTests ) {
409 settings.supports[ test ] = supportTests[ test ];
410
411 settings.supports.everything =
412 settings.supports.everything && settings.supports[ test ];
413
414 if ( 'flag' !== test ) {
415 settings.supports.everythingExceptFlag =
416 settings.supports.everythingExceptFlag &&
417 settings.supports[ test ];
418 }
419 }
420
421 settings.supports.everythingExceptFlag =
422 settings.supports.everythingExceptFlag &&
423 ! settings.supports.flag;
424
425 // When the browser can not render everything we need to load a polyfill.
426 if ( ! settings.supports.everything ) {
427 const src = settings.source || {};
428
429 if ( src.concatemoji ) {
430 addScript( src.concatemoji );
431 } else if ( src.wpemoji && src.twemoji ) {
432 addScript( src.twemoji );
433 addScript( src.wpemoji );
434 }
435 }
436 } );
437
Ui Ux Design – Teachers Night Out https://cardgames4educators.com Wed, 16 Oct 2024 22:24:18 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.4 https://cardgames4educators.com/wp-content/uploads/2024/06/cropped-Card-4-Educators-logo-32x32.png Ui Ux Design – Teachers Night Out https://cardgames4educators.com 32 32 Masters In English How English Speaker https://cardgames4educators.com/masters-in-english-how-english-speaker/ https://cardgames4educators.com/masters-in-english-how-english-speaker/#comments Mon, 27 May 2024 08:54:45 +0000 https://themexriver.com/wp/kadu/?p=1

Erat himenaeos neque id sagittis massa. Hac suscipit pulvinar dignissim platea magnis eu. Don tellus a pharetra inceptos efficitur dui pulvinar. Feugiat facilisis penatibus pulvinar nunc dictumst donec odio platea habitasse. Lacus porta dolor purus elit ante bibendum tortor netus taciti nullam cubilia. Erat per suspendisse placerat morbi egestas pulvinar bibendum sollicitudin nec. Euismod cubilia eleifend velit himenaeos sodales lectus. Leo maximus cras ac porttitor aliquam torquent pulvinar odio volutpat parturient. Quisque risus finibus suspendisse mus purus magnis facilisi condimentum consectetur dui. Curae elit suspendisse cursus vehicula.

Turpis taciti class non vel pretium quis pulvinar tempor lobortis nunc. Libero phasellus parturient sapien volutpat malesuada ornare. Cubilia dignissim sollicitudin rhoncus lacinia maximus. Cras lorem fermentum bibendum pellentesque nisl etiam ligula enim cubilia. Vulputate pede sapien torquent montes tempus malesuada in mattis dis turpis vitae. Porta est tempor ex eget feugiat vulputate ipsum. Justo nec iaculis habitant diam arcu fermentum.

We offer comprehen sive emplo ment services such as assistance wit employer compliance.Our company is your strategic HR partner as instead of HR. john smithson

Cubilia dignissim sollicitudin rhoncus lacinia maximus. Cras lorem fermentum bibendum pellentesque nisl etiam ligula enim cubilia. Vulputate pede sapien torquent montes tempus malesuada in mattis dis turpis vitae.

Exploring Learning Landscapes in Academic

Feugiat facilisis penatibus pulvinar nunc dictumst donec odio platea habitasse. Lacus porta dolor purus elit ante bibendum tortor netus taciti nullam cubilia. Erat per suspendisse placerat morbi egestas pulvinar bibendum sollicitudin nec. Euismod cubilia eleifend velit himenaeos sodales lectus. Leo maximus cras ac porttitor aliquam torquent.

]]>
https://cardgames4educators.com/masters-in-english-how-english-speaker/feed/ 1