0 cˆl–ß=¿Jµ5*q@½p/\”Å£ÑX‘¤~VÅ€M¾ JWltŸd–Ü4ý( ©¤ýÔâ�À‚àœS�ÿ{“„„-i[D<†ªo®-‹C1jOÅ ‚]ÄÊÑu‹mËÁ ‚@…áý<ÅY˜{£eOnÌ# “7îË�Þ½‘VBÛŸï¯c ˆ8'Þ9 YïÄŒÁºìG™P‡ÃëQñ§ªn–l€ëìÙ¼�óI×1|þÀ‹[âI\ÔÙÒî¶-–é ›) †!ˆl–ß=¿JJj"Tâ�À‚àœS�ÿÕ 0ÔËÒ�ÑËÒFile not found. �ÑËÒFile not found. #ˆl–ß=¿JJj"Tâ� À¿q—ÔÅ£Ö ƒh¹ÕÌÓ00 �ÒÌÓFile not found. 8!ˆl–ß=¿JJj"Tâ� ÀãBS�ÿ× 0Öa–ß=¿JJj"Tâ�À‚à�S�ÿÕ0#ˆl–Ãa¾”TËmJ �fàƒq–”Å£Ù „Ë?_‹I|¥Žƒî4ÃVŸÀ×'ù#/** * @output wp-includes/js/wp-pointer.js */ /** * Initializes the wp-pointer widget using jQuery UI Widget Factory. */ (function($){ var identifier = 0, zindex = 9999; $.widget('wp.pointer',/** @lends $.widget.wp.pointer.prototype */{ options: { pointerClass: 'wp-pointer', pointerWidth: 320, content: function() { return $(this).text(); }, buttons: function( event, t ) { var button = $('').text( wp.i18n.__( 'Dismiss' ) ); return button.on( 'click.pointer', function(e) { e.preventDefault(); t.element.pointer('close'); }); }, position: 'top', show: function( event, t ) { t.pointer.show(); t.opened(); }, hide: function( event, t ) { t.pointer.hide(); t.closed(); }, document: document }, /** * A class that represents a WordPress pointer. * * @since 3.3.0 * @private * * @constructs $.widget.wp.pointer */ _create: function() { var positioning, family; this.content = $('
'); this.arrow = $('
'); family = this.element.parents().add( this.element ); positioning = 'absolute'; if ( family.filter(function(){ return 'fixed' === $(this).css('position'); }).length ) positioning = 'fixed'; this.pointer = $('
') .append( this.content ) .append( this.arrow ) .attr('id', 'wp-pointer-' + identifier++) .addClass( this.options.pointerClass ) .css({'position': positioning, 'width': this.options.pointerWidth+'px', 'display': 'none'}) .appendTo( this.options.document.body ); }, /** * Sets an option on the pointer instance. * * There are 4 special values that do something extra: * * - `document` will transfer the pointer to the body of the new document * specified by the value. * - `pointerClass` will change the class of the pointer element. * - `position` will reposition the pointer. * - `content` will update the content of the pointer. * * @since 3.3.0 * @private * * @param {string} key The key of the option to set. * @param {*} value The value to set the option to. */ _setOption: function( key, value ) { var o = this.options, tip = this.pointer; // Handle document transfer. if ( key === 'document' && value !== o.document ) { tip.detach().appendTo( value.body ); // Handle class change. } else if ( key === 'pointerClass' ) { tip.removeClass( o.pointerClass ).addClass( value ); } // Call super method. $.Widget.prototype._setOption.apply( this, arguments ); // Reposition automatically. if ( key === 'position' ) { this.reposition(); // Update content automatically if pointer is open. } else if ( key === 'content' && this.active ) { this.update(); } }, /** * Removes the pointer element from of the DOM. * * Makes sure that the widget and all associated bindings are destroyed. * * @since 3.3.0 */ destroy: function() { this.pointer.remove(); $.Widget.prototype.destroy.call( this ); }, /** * Returns the pointer element. * * @since 3.3.0 * * @return {Object} Pointer The pointer object. */ widget: function() { return this.pointer; }, /** * Updates the content of the pointer. * * This function doesn't update the content of the pointer itse