/** * @output wp-includes/js/wp-util.js */ /* global _wpUtilSettings */ /** @namespace wp */ window.wp = window.wp || {}; (function ($) { // Check for the utility settings. var settings = typeof _wpUtilSettings === 'undefined' ? {} : _wpUtilSettings; /** * wp.template( id ) * * Fetch a JavaScript template for an id, and return a templating function for it. * * @param {string} id A string that corresponds to a DOM element with an id prefixed with "tmpl-". * For example, "attachment" maps to "tmpl-attachment". * @return {function} A function that lazily-compiles the template requested. */ wp.template = _.memoize(function ( id ) { var compiled, /* * Underscore's default ERB-style templates are incompatible with PHP * when asp_tags is enabled, so WordPress uses Mustache-inspired templating syntax. * * @see trac ticket #22344. */ options = { evaluate: /<#([\s\S]+?)#>/g, interpolate: /\{\{\{([\s\S]+?)\}\}\}/g, escape: /\{\{([^\}]+?)\}\}(?!\})/g, variable: 'data' }; return function ( data ) { if ( ! document.getElementById( 'tmpl-' + id ) ) { throw new Error( 'Template not found: ' + '#tmpl-' + id ); } compiled = compiled || _.template( $( '#tmpl-' + id ).html(), options ); return compiled( data ); }; }); /* * wp.ajax * ------ * * Tools for sending ajax requests with JSON responses and built in error handling. * Mirrors and wraps jQuery's ajax APIs. */ wp.ajax = { settings: settings.ajax || {}, /** * wp.ajax.post( [action], [data] ) * * Sends a POST request to WordPress. * * @param {(string|Object)} action The slug of the action to fire in WordPress or options passed * to jQuery.ajax. * @param {Object=} data Optional. The data to populate $_POST with. * @return {$.promise} A jQuery promise that represents the request, * decorated with an abort() method. */ post: function( action, data ) { return wp.ajax.send({ data: _.isObject( action ) ? action : _.extend( data || {}, { action: action }) }); }, /** * wp.ajax.send( [action], [options] ) * * Sends a POST request to WordPress. * * @param {(string|Object)} action The slug of the action to fire in WordPress or options passed * to jQuery.ajax. * @param {Object=} options Optional. The options passed to jQuery.ajax. * @return {$.promise} A jQuery promise that represents the request, * decorated with an abort() method. */ send: function( action, options ) { var promise, deferred; if ( _.isObject( action ) ) { options = action; } else { options = options || {}; options.data = _.extend( options.data || {}, { action: action }); } options = _.defaults( options || {}, { type: 'POST', url: wp.ajax.settings.url, context: this }); deferred = $.Deferred( function( deferred ) { // Transfer success/error callbacks. if ( options.success ) { deferred.done( options.success ); } if ( options.error ) { deferred.fail( options.error ); } delete options.success; delete options.error; // Use with PHP's wp_send_json_success() and wp_send_json_error(). deferred.jqXHR = $.ajax( options ).done( function( response ) { // Treat a response of 1 as successful for backward compatibility with existing handlers. if ( response === '1' || response === 1 ) { response = { success: true }; } if ( _.isObject( response ) && ! _.isUndefined( response.success ) ) { // When handling a media attachments request, get the total attachments from response headers. var context = this; deferred.done( function() { if ( action && action.data && 'query-attachments' === action.data.action && deferred.jqXHR.hasOwnProperty( 'getResponseHeader' ) && deferred.jqXHR.getResponseHeader( 'X-WP-Total' ) ) { context.totalAttachments = parseInt( deferred.jqXHR.getResponseHeader( 'X-WP-Total' ), 10 ); } else { context.totalAttachments = 0; } } ); deferred[ response.success ? 'resolveWith' : 'rejectWith' ]( this, [response.data] ); } else { deferred.rejectWith( this, [response] ); } }).fail( function() { deferred.rejectWith( this, arguments ); }); }); promise = deferred.promise(); promise.abort = function() { deferred.jqXHR.abort(); return this; }; return promise; } }; }(jQuery));
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
codemirror | Folder | 0555 |
|
|
crop | Folder | 0555 |
|
|
dist | Folder | 0555 |
|
|
imgareaselect | Folder | 0555 |
|
|
jcrop | Folder | 0555 |
|
|
jquery | Folder | 0555 |
|
|
mediaelement | Folder | 0555 |
|
|
plupload | Folder | 0555 |
|
|
swfupload | Folder | 0555 |
|
|
thickbox | Folder | 0555 |
|
|
tinymce | Folder | 0555 |
|
|
admin-bar.js | File | 10.3 KB | 0644 |
|
admin-bar.min.js | File | 3.41 KB | 0644 |
|
api-request.js | File | 3.25 KB | 0644 |
|
api-request.min.js | File | 1023 B | 0644 |
|
autosave.js | File | 21.95 KB | 0644 |
|
autosave.min.js | File | 5.67 KB | 0644 |
|
backbone.js | File | 77.87 KB | 0644 |
|
backbone.min.js | File | 23.57 KB | 0644 |
|
clipboard.js | File | 26.18 KB | 0644 |
|
clipboard.min.js | File | 8.8 KB | 0644 |
|
colorpicker.js | File | 28.4 KB | 0644 |
|
colorpicker.min.js | File | 16.13 KB | 0644 |
|
comment-reply.js | File | 12.17 KB | 0644 |
|
comment-reply.min.js | File | 2.91 KB | 0644 |
|
customize-base.js | File | 25.22 KB | 0644 |
|
customize-base.min.js | File | 7.67 KB | 0644 |
|
customize-loader.js | File | 7.72 KB | 0644 |
|
customize-loader.min.js | File | 3.47 KB | 0644 |
|
customize-models.js | File | 6.66 KB | 0644 |
|
customize-models.min.js | File | 3.59 KB | 0644 |
|
customize-preview-nav-menus.js | File | 14.67 KB | 0644 |
|
customize-preview-nav-menus.min.js | File | 4.92 KB | 0644 |
|
customize-preview-widgets.js | File | 22.71 KB | 0644 |
|
customize-preview-widgets.min.js | File | 7.64 KB | 0644 |
|
customize-preview.js | File | 27.3 KB | 0644 |
|
customize-preview.min.js | File | 10.45 KB | 0644 |
|
customize-selective-refresh.js | File | 32.55 KB | 0644 |
|
customize-selective-refresh.min.js | File | 10.44 KB | 0644 |
|
customize-views.js | File | 4.95 KB | 0644 |
|
customize-views.min.js | File | 2.39 KB | 0644 |
|
heartbeat.js | File | 23.39 KB | 0644 |
|
heartbeat.min.js | File | 5.87 KB | 0644 |
|
hoverIntent.js | File | 7.06 KB | 0644 |
|
hoverIntent.min.js | File | 1.46 KB | 0644 |
|
hoverintent-js.min.js | File | 1.68 KB | 0644 |
|
imagesloaded.min.js | File | 5.39 KB | 0644 |
|
json2.js | File | 17.99 KB | 0644 |
|
json2.min.js | File | 3.07 KB | 0644 |
|
masonry.min.js | File | 23.57 KB | 0644 |
|
mce-view.js | File | 25.24 KB | 0644 |
|
mce-view.min.js | File | 9.54 KB | 0644 |
|
media-audiovideo.js | File | 24.39 KB | 0644 |
|
media-audiovideo.min.js | File | 11.78 KB | 0644 |
|
media-editor.js | File | 28.44 KB | 0644 |
|
media-editor.min.js | File | 10.63 KB | 0644 |
|
media-grid.js | File | 26.18 KB | 0644 |
|
media-grid.min.js | File | 12.95 KB | 0644 |
|
media-models.js | File | 42.74 KB | 0644 |
|
media-models.min.js | File | 12.98 KB | 0644 |
|
media-views.js | File | 265.14 KB | 0644 |
|
media-views.min.js | File | 107.42 KB | 0644 |
|
quicktags.js | File | 22.07 KB | 0644 |
|
quicktags.min.js | File | 10.87 KB | 0644 |
|
shortcode.js | File | 10.51 KB | 0644 |
|
shortcode.min.js | File | 2.58 KB | 0644 |
|
swfobject.js | File | 9.99 KB | 0644 |
|
tw-sack.js | File | 4.85 KB | 0644 |
|
tw-sack.min.js | File | 3.21 KB | 0644 |
|
twemoji.js | File | 32.16 KB | 0644 |
|
twemoji.min.js | File | 15.42 KB | 0644 |
|
underscore.js | File | 66.77 KB | 0644 |
|
underscore.min.js | File | 18.39 KB | 0644 |
|
utils.js | File | 4.56 KB | 0644 |
|
utils.min.js | File | 1.82 KB | 0644 |
|
wp-ajax-response.js | File | 3.75 KB | 0644 |
|
wp-ajax-response.min.js | File | 2.45 KB | 0644 |
|
wp-api.js | File | 45.88 KB | 0644 |
|
wp-api.min.js | File | 14.34 KB | 0644 |
|
wp-auth-check.js | File | 4.11 KB | 0644 |
|
wp-auth-check.min.js | File | 1.62 KB | 0644 |
|
wp-backbone.js | File | 14.88 KB | 0644 |
|
wp-backbone.min.js | File | 2.97 KB | 0644 |
|
wp-custom-header.js | File | 10.22 KB | 0644 |
|
wp-custom-header.min.js | File | 4.34 KB | 0644 |
|
wp-embed-template.js | File | 6.62 KB | 0644 |
|
wp-embed-template.min.js | File | 3.1 KB | 0644 |
|
wp-embed.js | File | 3.14 KB | 0644 |
|
wp-embed.min.js | File | 1.22 KB | 0644 |
|
wp-emoji-loader.js | File | 11.92 KB | 0644 |
|
wp-emoji-loader.min.js | File | 2.86 KB | 0644 |
|
wp-emoji-release.min.js | File | 18.29 KB | 0644 |
|
wp-emoji.js | File | 8.76 KB | 0644 |
|
wp-emoji.min.js | File | 2.82 KB | 0644 |
|
wp-list-revisions.js | File | 970 B | 0644 |
|
wp-list-revisions.min.js | File | 597 B | 0644 |
|
wp-lists.js | File | 24.72 KB | 0644 |
|
wp-lists.min.js | File | 7.34 KB | 0644 |
|
wp-pointer.js | File | 9.99 KB | 0644 |
|
wp-pointer.min.js | File | 3.54 KB | 0644 |
|
wp-sanitize.js | File | 1.32 KB | 0644 |
|
wp-sanitize.min.js | File | 458 B | 0644 |
|
wp-util.js | File | 4.57 KB | 0644 |
|
wp-util.min.js | File | 1.39 KB | 0644 |
|
wpdialog.js | File | 569 B | 0644 |
|
wpdialog.min.js | File | 281 B | 0644 |
|
wplink.js | File | 20.76 KB | 0644 |
|
wplink.min.js | File | 11.07 KB | 0644 |
|
zxcvbn-async.js | File | 821 B | 0644 |
|
zxcvbn-async.min.js | File | 351 B | 0644 |
|
zxcvbn.min.js | File | 802.97 KB | 0644 |
|