PKNv\gEj streams.phpnuW+A * * @version $Id: streams.php 1157 2015-11-20 04:30:11Z dd32 $ * @package pomo * @subpackage streams */ if ( ! class_exists( 'POMO_Reader', false ) ) : class POMO_Reader { var $endian = 'little'; var $_post = ''; /** * PHP5 constructor. */ function __construct() { $this->is_overloaded = ( ( ini_get( 'mbstring.func_overload' ) & 2 ) != 0 ) && function_exists( 'mb_substr' ); $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_Reader::__construct() */ public function POMO_Reader() { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct(); } /** * Sets the endianness of the file. * * @param string $endian Set the endianness of the file. Accepts 'big', or 'little'. */ function setEndian( $endian ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid $this->endian = $endian; } /** * Reads a 32bit Integer from the Stream * * @return mixed The integer, corresponding to the next 32 bits from * the stream of false if there are not enough bytes or on error */ function readint32() { $bytes = $this->read( 4 ); if ( 4 != $this->strlen( $bytes ) ) { return false; } $endian_letter = ( 'big' == $this->endian ) ? 'N' : 'V'; $int = unpack( $endian_letter, $bytes ); return reset( $int ); } /** * Reads an array of 32-bit Integers from the Stream * * @param integer $count How many elements should be read * @return mixed Array of integers or false if there isn't * enough data or on error */ function readint32array( $count ) { $bytes = $this->read( 4 * $count ); if ( 4 * $count != $this->strlen( $bytes ) ) { return false; } $endian_letter = ( 'big' == $this->endian ) ? 'N' : 'V'; return unpack( $endian_letter . $count, $bytes ); } /** * @param string $string * @param int $start * @param int $length * @return string */ function substr( $string, $start, $length ) { if ( $this->is_overloaded ) { return mb_substr( $string, $start, $length, 'ascii' ); } else { return substr( $string, $start, $length ); } } /** * @param string $string * @return int */ function strlen( $string ) { if ( $this->is_overloaded ) { return mb_strlen( $string, 'ascii' ); } else { return strlen( $string ); } } /** * @param string $string * @param int $chunk_size * @return array */ function str_split( $string, $chunk_size ) { if ( ! function_exists( 'str_split' ) ) { $length = $this->strlen( $string ); $out = array(); for ( $i = 0; $i < $length; $i += $chunk_size ) { $out[] = $this->substr( $string, $i, $chunk_size ); } return $out; } else { return str_split( $string, $chunk_size ); } } /** * @return int */ function pos() { return $this->_pos; } /** * @return true */ function is_resource() { return true; } /** * @return true */ function close() { return true; } } endif; if ( ! class_exists( 'POMO_FileReader', false ) ) : class POMO_FileReader extends POMO_Reader { /** * @param string $filename */ function __construct( $filename ) { parent::__construct(); $this->_f = fopen( $filename, 'rb' ); } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_FileReader::__construct() */ public function POMO_FileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } /** * @param int $bytes * @return string|false Returns read string, otherwise false. */ function read( $bytes ) { return fread( $this->_f, $bytes ); } /** * @param int $pos * @return boolean */ function seekto( $pos ) { if ( -1 == fseek( $this->_f, $pos, SEEK_SET ) ) { return false; } $this->_pos = $pos; return true; } /** * @return bool */ function is_resource() { return is_resource( $this->_f ); } /** * @return bool */ function feof() { return feof( $this->_f ); } /** * @return bool */ function close() { return fclose( $this->_f ); } /** * @return string */ function read_all() { $all = ''; while ( ! $this->feof() ) { $all .= $this->read( 4096 ); } return $all; } } endif; if ( ! class_exists( 'POMO_StringReader', false ) ) : /** * Provides file-like methods for manipulating a string instead * of a physical file. */ class POMO_StringReader extends POMO_Reader { var $_str = ''; /** * PHP5 constructor. */ function __construct( $str = '' ) { parent::__construct(); $this->_str = $str; $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_StringReader::__construct() */ public function POMO_StringReader( $str = '' ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $str ); } /** * @param string $bytes * @return string */ function read( $bytes ) { $data = $this->substr( $this->_str, $this->_pos, $bytes ); $this->_pos += $bytes; if ( $this->strlen( $this->_str ) < $this->_pos ) { $this->_pos = $this->strlen( $this->_str ); } return $data; } /** * @param int $pos * @return int */ function seekto( $pos ) { $this->_pos = $pos; if ( $this->strlen( $this->_str ) < $this->_pos ) { $this->_pos = $this->strlen( $this->_str ); } return $this->_pos; } /** * @return int */ function length() { return $this->strlen( $this->_str ); } /** * @return string */ function read_all() { return $this->substr( $this->_str, $this->_pos, $this->strlen( $this->_str ) ); } } endif; if ( ! class_exists( 'POMO_CachedFileReader', false ) ) : /** * Reads the contents of the file in the beginning. */ class POMO_CachedFileReader extends POMO_StringReader { /** * PHP5 constructor. */ function __construct( $filename ) { parent::__construct(); $this->_str = file_get_contents( $filename ); if ( false === $this->_str ) { return false; } $this->_pos = 0; } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_CachedFileReader::__construct() */ public function POMO_CachedFileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } } endif; if ( ! class_exists( 'POMO_CachedIntFileReader', false ) ) : /** * Reads the contents of the file in the beginning. */ class POMO_CachedIntFileReader extends POMO_CachedFileReader { /** * PHP5 constructor. */ public function __construct( $filename ) { parent::__construct( $filename ); } /** * PHP4 constructor. * * @deprecated 5.4.0 Use __construct() instead. * * @see POMO_CachedIntFileReader::__construct() */ function POMO_CachedIntFileReader( $filename ) { _deprecated_constructor( self::class, '5.4.0', static::class ); self::__construct( $filename ); } } endif; PKNv\}W&Y&Y lib/js.zipnuW+APKv\wp-emoji-loader.min.jsnuW+A/*! This file is auto-generated */ !function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){var a=String.fromCharCode;p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,e),0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,t),0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r'+e+"").bind("click.pointer",function(t){t.preventDefault(),i.element.pointer("close")})},position:"top",show:function(t,i){i.pointer.show(),i.opened()},hide:function(t,i){i.pointer.hide(),i.closed()},document:document},_create:function(){var t;this.content=o('
'),this.arrow=o('
'),t="absolute",this.element.parents().add(this.element).filter(function(){return"fixed"===o(this).css("position")}).length&&(t="fixed"),this.pointer=o("
").append(this.content).append(this.arrow).attr("id","wp-pointer-"+i++).addClass(this.options.pointerClass).css({position:t,width:this.options.pointerWidth+"px",display:"none"}).appendTo(this.options.document.body)},_setOption:function(t,i){var e=this.options,n=this.pointer;"document"===t&&i!==e.document?n.detach().appendTo(i.body):"pointerClass"===t&&n.removeClass(e.pointerClass).addClass(i),o.Widget.prototype._setOption.apply(this,arguments),"position"===t?this.reposition():"content"===t&&this.active&&this.update()},destroy:function(){this.pointer.remove(),o.Widget.prototype.destroy.call(this)},widget:function(){return this.pointer},update:function(i){var e=this,t=this.options,n=o.Deferred();if(!t.disabled)return n.done(function(t){e._update(i,t)}),(t="string"==typeof t.content?t.content:t.content.call(this.element[0],n.resolve,i,this._handoff()))&&n.resolve(t),n.promise()},_update:function(t,i){var e=this.options;i&&(this.pointer.stop(),this.content.html(i),(t=e.buttons.call(this.element[0],t,this._handoff()))&&t.wrap('
').parent().appendTo(this.content),this.reposition())},reposition:function(){var t;this.options.disabled||(t=this._processPosition(this.options.position),this.pointer.css({top:0,left:0,zIndex:e++}).show().position(o.extend({of:this.element,collision:"fit none"},t)),this.repoint())},repoint:function(){var t=this.options;t.disabled||(t="string"==typeof t.position?t.position:t.position.edge,this.pointer[0].className=this.pointer[0].className.replace(/wp-pointer-[^\s'"]*/,""),this.pointer.addClass("wp-pointer-"+t))},_processPosition:function(t){var i={top:"bottom",bottom:"top",left:"right",right:"left"},t="string"==typeof t?{edge:t+""}:o.extend({},t);return t.edge&&("top"==t.edge||"bottom"==t.edge?(t.align=t.align||"left",t.at=t.at||t.align+" "+i[t.edge],t.my=t.my||t.align+" "+t.edge):(t.align=t.align||"top",t.at=t.at||i[t.edge]+" "+t.align,t.my=t.my||t.edge+" "+t.align)),t},open:function(t){var i=this,e=this.options;this.active||e.disabled||this.element.is(":hidden")||this.update().done(function(){i._open(t)})},_open:function(t){var i=this,e=this.options;this.active||e.disabled||this.element.is(":hidden")||(this.active=!0,this._trigger("open",t,this._handoff()),this._trigger("show",t,this._handoff({opened:function(){i._trigger("opened",t,i._handoff())}})))},close:function(t){var i;this.active&&!this.options.disabled&&((i=this).active=!1,this._trigger("close",t,this._handoff()),this._trigger("hide",t,this._handoff({closed:function(){i._trigger("closed",t,i._handoff())}})))},sendToTop:function(){this.active&&this.pointer.css("z-index",e++)},toggle:function(t){this.pointer.is(":hidden")?this.open(t):this.close(t)},_handoff:function(t){return o.extend({pointer:this.pointer,element:this.element},t)}})}(jQuery);PKv\̈́Ĵswfupload/handlers.jsnuW+Avar topWin = window.dialogArguments || opener || parent || top; function fileDialogStart() {} function fileQueued() {} function uploadStart() {} function uploadProgress() {} function prepareMediaItem() {} function prepareMediaItemInit() {} function itemAjaxError() {} function deleteSuccess() {} function deleteError() {} function updateMediaForm() {} function uploadSuccess() {} function uploadComplete() {} function wpQueueError() {} function wpFileError() {} function fileQueueError() {} function fileDialogComplete() {} function uploadError() {} function cancelUpload() {} function switchUploader() { jQuery( '#' + swfu.customSettings.swfupload_element_id ).hide(); jQuery( '#' + swfu.customSettings.degraded_element_id ).show(); jQuery( '.upload-html-bypass' ).hide(); } function swfuploadPreLoad() { switchUploader(); } function swfuploadLoadFailed() { switchUploader(); } jQuery(document).ready(function($){ $( 'input[type="radio"]', '#media-items' ).on( 'click', function(){ var tr = $(this).closest('tr'); if ( $(tr).hasClass('align') ) setUserSetting('align', $(this).val()); else if ( $(tr).hasClass('image-size') ) setUserSetting('imgsize', $(this).val()); }); $( 'button.button', '#media-items' ).on( 'click', function(){ var c = this.className || ''; c = c.match(/url([^ '"]+)/); if ( c && c[1] ) { setUserSetting('urlbutton', c[1]); $(this).siblings('.urlfield').val( $(this).attr('title') ); } }); }); PKv\ȑswfupload/handlers.min.jsnuW+Afunction fileDialogStart(){}function fileQueued(){}function uploadStart(){}function uploadProgress(){}function prepareMediaItem(){}function prepareMediaItemInit(){}function itemAjaxError(){}function deleteSuccess(){}function deleteError(){}function updateMediaForm(){}function uploadSuccess(){}function uploadComplete(){}function wpQueueError(){}function wpFileError(){}function fileQueueError(){}function fileDialogComplete(){}function uploadError(){}function cancelUpload(){}function switchUploader(){jQuery("#"+swfu.customSettings.swfupload_element_id).hide(),jQuery("#"+swfu.customSettings.degraded_element_id).show(),jQuery(".upload-html-bypass").hide()}function swfuploadPreLoad(){switchUploader()}function swfuploadLoadFailed(){switchUploader()}var topWin=window.dialogArguments||opener||parent||top;jQuery(document).ready(function(a){a('input[type="radio"]',"#media-items").on("click",function(){var b=a(this).closest("tr");a(b).hasClass("align")?setUserSetting("align",a(this).val()):a(b).hasClass("image-size")&&setUserSetting("imgsize",a(this).val())}),a("button.button","#media-items").on("click",function(){var b=this.className||"";b=b.match(/url([^ '"]+)/),b&&b[1]&&(setUserSetting("urlbutton",b[1]),a(this).siblings(".urlfield").val(a(this).attr("title")))})});PKv\}yWWswfupload/swfupload.jsnuW+A/** * SWFUpload fallback * * @since 4.9.0 */ var SWFUpload; ( function () { function noop() {} if (SWFUpload == undefined) { SWFUpload = function (settings) { this.initSWFUpload(settings); }; } SWFUpload.prototype.initSWFUpload = function ( settings ) { function fallback() { var $ = window.jQuery; var $placeholder = settings.button_placeholder_id ? $( '#' + settings.button_placeholder_id ) : $( settings.button_placeholder ); if ( ! $placeholder.length ) { return; } var $form = $placeholder.closest( 'form' ); if ( ! $form.length ) { $form = $( '
' ); $form.attr( 'action', settings.upload_url ); $form.insertAfter( $placeholder ).append( $placeholder ); } $placeholder.replaceWith( $( '
' ) .append( $( '' ).attr({ name: settings.file_post_name || 'async-upload', accepts: settings.file_types || '*.*' }) ).append( $( '' ) ) ); } try { // Try the built-in fallback. if ( typeof settings.swfupload_load_failed_handler === 'function' && settings.custom_settings ) { window.swfu = { customSettings: settings.custom_settings }; settings.swfupload_load_failed_handler(); } else { fallback(); } } catch ( ex ) { fallback(); } }; SWFUpload.instances = {}; SWFUpload.movieCount = 0; SWFUpload.version = "0"; SWFUpload.QUEUE_ERROR = {}; SWFUpload.UPLOAD_ERROR = {}; SWFUpload.FILE_STATUS = {}; SWFUpload.BUTTON_ACTION = {}; SWFUpload.CURSOR = {}; SWFUpload.WINDOW_MODE = {}; SWFUpload.completeURL = noop; SWFUpload.prototype.initSettings = noop; SWFUpload.prototype.loadFlash = noop; SWFUpload.prototype.getFlashHTML = noop; SWFUpload.prototype.getFlashVars = noop; SWFUpload.prototype.getMovieElement = noop; SWFUpload.prototype.buildParamString = noop; SWFUpload.prototype.destroy = noop; SWFUpload.prototype.displayDebugInfo = noop; SWFUpload.prototype.addSetting = noop; SWFUpload.prototype.getSetting = noop; SWFUpload.prototype.callFlash = noop; SWFUpload.prototype.selectFile = noop; SWFUpload.prototype.selectFiles = noop; SWFUpload.prototype.startUpload = noop; SWFUpload.prototype.cancelUpload = noop; SWFUpload.prototype.stopUpload = noop; SWFUpload.prototype.getStats = noop; SWFUpload.prototype.setStats = noop; SWFUpload.prototype.getFile = noop; SWFUpload.prototype.addFileParam = noop; SWFUpload.prototype.removeFileParam = noop; SWFUpload.prototype.setUploadURL = noop; SWFUpload.prototype.setPostParams = noop; SWFUpload.prototype.addPostParam = noop; SWFUpload.prototype.removePostParam = noop; SWFUpload.prototype.setFileTypes = noop; SWFUpload.prototype.setFileSizeLimit = noop; SWFUpload.prototype.setFileUploadLimit = noop; SWFUpload.prototype.setFileQueueLimit = noop; SWFUpload.prototype.setFilePostName = noop; SWFUpload.prototype.setUseQueryString = noop; SWFUpload.prototype.setRequeueOnError = noop; SWFUpload.prototype.setHTTPSuccess = noop; SWFUpload.prototype.setAssumeSuccessTimeout = noop; SWFUpload.prototype.setDebugEnabled = noop; SWFUpload.prototype.setButtonImageURL = noop; SWFUpload.prototype.setButtonDimensions = noop; SWFUpload.prototype.setButtonText = noop; SWFUpload.prototype.setButtonTextPadding = noop; SWFUpload.prototype.setButtonTextStyle = noop; SWFUpload.prototype.setButtonDisabled = noop; SWFUpload.prototype.setButtonAction = noop; SWFUpload.prototype.setButtonCursor = noop; SWFUpload.prototype.queueEvent = noop; SWFUpload.prototype.executeNextEvent = noop; SWFUpload.prototype.unescapeFilePostParams = noop; SWFUpload.prototype.testExternalInterface = noop; SWFUpload.prototype.flashReady = noop; SWFUpload.prototype.cleanUp = noop; SWFUpload.prototype.fileDialogStart = noop; SWFUpload.prototype.fileQueued = noop; SWFUpload.prototype.fileQueueError = noop; SWFUpload.prototype.fileDialogComplete = noop; SWFUpload.prototype.uploadStart = noop; SWFUpload.prototype.returnUploadStart = noop; SWFUpload.prototype.uploadProgress = noop; SWFUpload.prototype.uploadError = noop; SWFUpload.prototype.uploadSuccess = noop; SWFUpload.prototype.uploadComplete = noop; SWFUpload.prototype.debug = noop; SWFUpload.prototype.debugMessage = noop; SWFUpload.Console = { writeLine: noop }; }() ); PKv\swfupload/license.txtnuW+A/** * SWFUpload: http://www.swfupload.org, http://swfupload.googlecode.com * * mmSWFUpload 1.0: Flash upload dialog - http://profandesign.se/swfupload/, http://www.vinterwebb.se/ * * SWFUpload is (c) 2006-2007 Lars Huring, Olov Nilzén and Mammon Media and is released under the MIT License: * http://www.opensource.org/licenses/mit-license.php * * SWFUpload 2 is (c) 2007-2008 Jake Roberts and is released under the MIT License: * http://www.opensource.org/licenses/mit-license.php * */ The MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.PKv\ ESRSR wplink.jsnuW+A/** * @output wp-includes/js/wplink.js */ /* global wpLink */ ( function( $, wpLinkL10n, wp ) { var editor, searchTimer, River, Query, correctedURL, emailRegexp = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,63}$/i, urlRegexp = /^(https?|ftp):\/\/[A-Z0-9.-]+\.[A-Z]{2,63}[^ "]*$/i, inputs = {}, rivers = {}, isTouch = ( 'ontouchend' in document ); function getLink() { if ( editor ) { return editor.$( 'a[data-wplink-edit="true"]' ); } return null; } window.wpLink = { timeToTriggerRiver: 150, minRiverAJAXDuration: 200, riverBottomThreshold: 5, keySensitivity: 100, lastSearch: '', textarea: '', modalOpen: false, init: function() { inputs.wrap = $('#wp-link-wrap'); inputs.dialog = $( '#wp-link' ); inputs.backdrop = $( '#wp-link-backdrop' ); inputs.submit = $( '#wp-link-submit' ); inputs.close = $( '#wp-link-close' ); // Input. inputs.text = $( '#wp-link-text' ); inputs.url = $( '#wp-link-url' ); inputs.nonce = $( '#_ajax_linking_nonce' ); inputs.openInNewTab = $( '#wp-link-target' ); inputs.search = $( '#wp-link-search' ); // Build rivers. rivers.search = new River( $( '#search-results' ) ); rivers.recent = new River( $( '#most-recent-results' ) ); rivers.elements = inputs.dialog.find( '.query-results' ); // Get search notice text. inputs.queryNotice = $( '#query-notice-message' ); inputs.queryNoticeTextDefault = inputs.queryNotice.find( '.query-notice-default' ); inputs.queryNoticeTextHint = inputs.queryNotice.find( '.query-notice-hint' ); // Bind event handlers. inputs.dialog.keydown( wpLink.keydown ); inputs.dialog.keyup( wpLink.keyup ); inputs.submit.click( function( event ) { event.preventDefault(); wpLink.update(); }); inputs.close.add( inputs.backdrop ).add( '#wp-link-cancel button' ).click( function( event ) { event.preventDefault(); wpLink.close(); }); rivers.elements.on( 'river-select', wpLink.updateFields ); // Display 'hint' message when search field or 'query-results' box are focused. inputs.search.on( 'focus.wplink', function() { inputs.queryNoticeTextDefault.hide(); inputs.queryNoticeTextHint.removeClass( 'screen-reader-text' ).show(); } ).on( 'blur.wplink', function() { inputs.queryNoticeTextDefault.show(); inputs.queryNoticeTextHint.addClass( 'screen-reader-text' ).hide(); } ); inputs.search.on( 'keyup input', function() { window.clearTimeout( searchTimer ); searchTimer = window.setTimeout( function() { wpLink.searchInternalLinks(); }, 500 ); }); inputs.url.on( 'paste', function() { setTimeout( wpLink.correctURL, 0 ); } ); inputs.url.on( 'blur', wpLink.correctURL ); }, // If URL wasn't corrected last time and doesn't start with http:, https:, ? # or /, prepend http://. correctURL: function () { var url = $.trim( inputs.url.val() ); if ( url && correctedURL !== url && ! /^(?:[a-z]+:|#|\?|\.|\/)/.test( url ) ) { inputs.url.val( 'http://' + url ); correctedURL = url; } }, open: function( editorId, url, text ) { var ed, $body = $( document.body ); $body.addClass( 'modal-open' ); wpLink.modalOpen = true; wpLink.range = null; if ( editorId ) { window.wpActiveEditor = editorId; } if ( ! window.wpActiveEditor ) { return; } this.textarea = $( '#' + window.wpActiveEditor ).get( 0 ); if ( typeof window.tinymce !== 'undefined' ) { // Make sure the link wrapper is the last element in the body, // or the inline editor toolbar may show above the backdrop. $body.append( inputs.backdrop, inputs.wrap ); ed = window.tinymce.get( window.wpActiveEditor ); if ( ed && ! ed.isHidden() ) { editor = ed; } else { editor = null; } } if ( ! wpLink.isMCE() && document.selection ) { this.textarea.focus(); this.range = document.selection.createRange(); } inputs.wrap.show(); inputs.backdrop.show(); wpLink.refresh( url, text ); $( document ).trigger( 'wplink-open', inputs.wrap ); }, isMCE: function() { return editor && ! editor.isHidden(); }, refresh: function( url, text ) { var linkText = ''; // Refresh rivers (clear links, check visibility). rivers.search.refresh(); rivers.recent.refresh(); if ( wpLink.isMCE() ) { wpLink.mceRefresh( url, text ); } else { // For the Text editor the "Link text" field is always shown. if ( ! inputs.wrap.hasClass( 'has-text-field' ) ) { inputs.wrap.addClass( 'has-text-field' ); } if ( document.selection ) { // Old IE. linkText = document.selection.createRange().text || text || ''; } else if ( typeof this.textarea.selectionStart !== 'undefined' && ( this.textarea.selectionStart !== this.textarea.selectionEnd ) ) { // W3C. text = this.textarea.value.substring( this.textarea.selectionStart, this.textarea.selectionEnd ) || text || ''; } inputs.text.val( text ); wpLink.setDefaultValues(); } if ( isTouch ) { // Close the onscreen keyboard. inputs.url.focus().blur(); } else { /* * Focus the URL field and highlight its contents. * If this is moved above the selection changes, * IE will show a flashing cursor over the dialog. */ window.setTimeout( function() { inputs.url[0].select(); inputs.url.focus(); } ); } // Load the most recent results if this is the first time opening the panel. if ( ! rivers.recent.ul.children().length ) { rivers.recent.ajax(); } correctedURL = inputs.url.val().replace( /^http:\/\//, '' ); }, hasSelectedText: function( linkNode ) { var node, nodes, i, html = editor.selection.getContent(); // Partial html and not a fully selected anchor element. if ( /]+>[^<]+<\/a>$/.test( html ) || html.indexOf('href=') === -1 ) ) { return false; } if ( linkNode.length ) { nodes = linkNode[0].childNodes; if ( ! nodes || ! nodes.length ) { return false; } for ( i = nodes.length - 1; i >= 0; i-- ) { node = nodes[i]; if ( node.nodeType != 3 && ! window.tinymce.dom.BookmarkManager.isBookmarkNode( node ) ) { return false; } } } return true; }, mceRefresh: function( searchStr, text ) { var linkText, href, linkNode = getLink(), onlyText = this.hasSelectedText( linkNode ); if ( linkNode.length ) { linkText = linkNode.text(); href = linkNode.attr( 'href' ); if ( ! $.trim( linkText ) ) { linkText = text || ''; } if ( searchStr && ( urlRegexp.test( searchStr ) || emailRegexp.test( searchStr ) ) ) { href = searchStr; } if ( href !== '_wp_link_placeholder' ) { inputs.url.val( href ); inputs.openInNewTab.prop( 'checked', '_blank' === linkNode.attr( 'target' ) ); inputs.submit.val( wpLinkL10n.update ); } else { this.setDefaultValues( linkText ); } if ( searchStr && searchStr !== href ) { // The user has typed something in the inline dialog. Trigger a search with it. inputs.search.val( searchStr ); } else { inputs.search.val( '' ); } // Always reset the search. window.setTimeout( function() { wpLink.searchInternalLinks(); } ); } else { linkText = editor.selection.getContent({ format: 'text' }) || text || ''; this.setDefaultValues( linkText ); } if ( onlyText ) { inputs.text.val( linkText ); inputs.wrap.addClass( 'has-text-field' ); } else { inputs.text.val( '' ); inputs.wrap.removeClass( 'has-text-field' ); } }, close: function( reset ) { $( document.body ).removeClass( 'modal-open' ); wpLink.modalOpen = false; if ( reset !== 'noReset' ) { if ( ! wpLink.isMCE() ) { wpLink.textarea.focus(); if ( wpLink.range ) { wpLink.range.moveToBookmark( wpLink.range.getBookmark() ); wpLink.range.select(); } } else { if ( editor.plugins.wplink ) { editor.plugins.wplink.close(); } editor.focus(); } } inputs.backdrop.hide(); inputs.wrap.hide(); correctedURL = false; $( document ).trigger( 'wplink-close', inputs.wrap ); }, getAttrs: function() { wpLink.correctURL(); return { href: $.trim( inputs.url.val() ), target: inputs.openInNewTab.prop( 'checked' ) ? '_blank' : null }; }, buildHtml: function(attrs) { var html = ''; }, update: function() { if ( wpLink.isMCE() ) { wpLink.mceUpdate(); } else { wpLink.htmlUpdate(); } }, htmlUpdate: function() { var attrs, text, html, begin, end, cursor, selection, textarea = wpLink.textarea; if ( ! textarea ) { return; } attrs = wpLink.getAttrs(); text = inputs.text.val(); var parser = document.createElement( 'a' ); parser.href = attrs.href; if ( 'javascript:' === parser.protocol || 'data:' === parser.protocol ) { // jshint ignore:line attrs.href = ''; } // If there's no href, return. if ( ! attrs.href ) { return; } html = wpLink.buildHtml(attrs); // Insert HTML. if ( document.selection && wpLink.range ) { // IE. // Note: If no text is selected, IE will not place the cursor // inside the closing tag. textarea.focus(); wpLink.range.text = html + ( text || wpLink.range.text ) + ''; wpLink.range.moveToBookmark( wpLink.range.getBookmark() ); wpLink.range.select(); wpLink.range = null; } else if ( typeof textarea.selectionStart !== 'undefined' ) { // W3C. begin = textarea.selectionStart; end = textarea.selectionEnd; selection = text || textarea.value.substring( begin, end ); html = html + selection + ''; cursor = begin + html.length; // If no text is selected, place the cursor inside the closing tag. if ( begin === end && ! selection ) { cursor -= 4; } textarea.value = ( textarea.value.substring( 0, begin ) + html + textarea.value.substring( end, textarea.value.length ) ); // Update cursor position. textarea.selectionStart = textarea.selectionEnd = cursor; } wpLink.close(); textarea.focus(); $( textarea ).trigger( 'change' ); // Audible confirmation message when a link has been inserted in the Editor. wp.a11y.speak( wpLinkL10n.linkInserted ); }, mceUpdate: function() { var attrs = wpLink.getAttrs(), $link, text, hasText; var parser = document.createElement( 'a' ); parser.href = attrs.href; if ( 'javascript:' === parser.protocol || 'data:' === parser.protocol ) { // jshint ignore:line attrs.href = ''; } if ( ! attrs.href ) { editor.execCommand( 'unlink' ); wpLink.close(); return; } $link = getLink(); editor.undoManager.transact( function() { if ( ! $link.length ) { editor.execCommand( 'mceInsertLink', false, { href: '_wp_link_placeholder', 'data-wp-temp-link': 1 } ); $link = editor.$( 'a[data-wp-temp-link="1"]' ).removeAttr( 'data-wp-temp-link' ); hasText = $.trim( $link.text() ); } if ( ! $link.length ) { editor.execCommand( 'unlink' ); } else { if ( inputs.wrap.hasClass( 'has-text-field' ) ) { text = inputs.text.val(); if ( text ) { $link.text( text ); } else if ( ! hasText ) { $link.text( attrs.href ); } } attrs['data-wplink-edit'] = null; attrs['data-mce-href'] = attrs.href; $link.attr( attrs ); } } ); wpLink.close( 'noReset' ); editor.focus(); if ( $link.length ) { editor.selection.select( $link[0] ); if ( editor.plugins.wplink ) { editor.plugins.wplink.checkLink( $link[0] ); } } editor.nodeChanged(); // Audible confirmation message when a link has been inserted in the Editor. wp.a11y.speak( wpLinkL10n.linkInserted ); }, updateFields: function( e, li ) { inputs.url.val( li.children( '.item-permalink' ).val() ); if ( inputs.wrap.hasClass( 'has-text-field' ) && ! inputs.text.val() ) { inputs.text.val( li.children( '.item-title' ).text() ); } }, getUrlFromSelection: function( selection ) { if ( ! selection ) { if ( this.isMCE() ) { selection = editor.selection.getContent({ format: 'text' }); } else if ( document.selection && wpLink.range ) { selection = wpLink.range.text; } else if ( typeof this.textarea.selectionStart !== 'undefined' ) { selection = this.textarea.value.substring( this.textarea.selectionStart, this.textarea.selectionEnd ); } } selection = $.trim( selection ); if ( selection && emailRegexp.test( selection ) ) { // Selection is email address. return 'mailto:' + selection; } else if ( selection && urlRegexp.test( selection ) ) { // Selection is URL. return selection.replace( /&|�?38;/gi, '&' ); } return ''; }, setDefaultValues: function( selection ) { inputs.url.val( this.getUrlFromSelection( selection ) ); // Empty the search field and swap the "rivers". inputs.search.val(''); wpLink.searchInternalLinks(); // Update save prompt. inputs.submit.val( wpLinkL10n.save ); }, searchInternalLinks: function() { var waiting, search = inputs.search.val() || '', minInputLength = parseInt( wpLinkL10n.minInputLength, 10 ) || 3; if ( search.length >= minInputLength ) { rivers.recent.hide(); rivers.search.show(); // Don't search if the keypress didn't change the title. if ( wpLink.lastSearch == search ) return; wpLink.lastSearch = search; waiting = inputs.search.parent().find( '.spinner' ).addClass( 'is-active' ); rivers.search.change( search ); rivers.search.ajax( function() { waiting.removeClass( 'is-active' ); }); } else { rivers.search.hide(); rivers.recent.show(); } }, next: function() { rivers.search.next(); rivers.recent.next(); }, prev: function() { rivers.search.prev(); rivers.recent.prev(); }, keydown: function( event ) { var fn, id; // Escape key. if ( 27 === event.keyCode ) { wpLink.close(); event.stopImmediatePropagation(); // Tab key. } else if ( 9 === event.keyCode ) { id = event.target.id; // wp-link-submit must always be the last focusable element in the dialog. // Following focusable elements will be skipped on keyboard navigation. if ( id === 'wp-link-submit' && ! event.shiftKey ) { inputs.close.focus(); event.preventDefault(); } else if ( id === 'wp-link-close' && event.shiftKey ) { inputs.submit.focus(); event.preventDefault(); } } // Up Arrow and Down Arrow keys. if ( event.shiftKey || ( 38 !== event.keyCode && 40 !== event.keyCode ) ) { return; } if ( document.activeElement && ( document.activeElement.id === 'link-title-field' || document.activeElement.id === 'url-field' ) ) { return; } // Up Arrow key. fn = 38 === event.keyCode ? 'prev' : 'next'; clearInterval( wpLink.keyInterval ); wpLink[ fn ](); wpLink.keyInterval = setInterval( wpLink[ fn ], wpLink.keySensitivity ); event.preventDefault(); }, keyup: function( event ) { // Up Arrow and Down Arrow keys. if ( 38 === event.keyCode || 40 === event.keyCode ) { clearInterval( wpLink.keyInterval ); event.preventDefault(); } }, delayedCallback: function( func, delay ) { var timeoutTriggered, funcTriggered, funcArgs, funcContext; if ( ! delay ) return func; setTimeout( function() { if ( funcTriggered ) return func.apply( funcContext, funcArgs ); // Otherwise, wait. timeoutTriggered = true; }, delay ); return function() { if ( timeoutTriggered ) return func.apply( this, arguments ); // Otherwise, wait. funcArgs = arguments; funcContext = this; funcTriggered = true; }; } }; River = function( element, search ) { var self = this; this.element = element; this.ul = element.children( 'ul' ); this.contentHeight = element.children( '#link-selector-height' ); this.waiting = element.find('.river-waiting'); this.change( search ); this.refresh(); $( '#wp-link .query-results, #wp-link #link-selector' ).scroll( function() { self.maybeLoad(); }); element.on( 'click', 'li', function( event ) { self.select( $( this ), event ); }); }; $.extend( River.prototype, { refresh: function() { this.deselect(); this.visible = this.element.is( ':visible' ); }, show: function() { if ( ! this.visible ) { this.deselect(); this.element.show(); this.visible = true; } }, hide: function() { this.element.hide(); this.visible = false; }, // Selects a list item and triggers the river-select event. select: function( li, event ) { var liHeight, elHeight, liTop, elTop; if ( li.hasClass( 'unselectable' ) || li == this.selected ) return; this.deselect(); this.selected = li.addClass( 'selected' ); // Make sure the element is visible. liHeight = li.outerHeight(); elHeight = this.element.height(); liTop = li.position().top; elTop = this.element.scrollTop(); if ( liTop < 0 ) // Make first visible element. this.element.scrollTop( elTop + liTop ); else if ( liTop + liHeight > elHeight ) // Make last visible element. this.element.scrollTop( elTop + liTop - elHeight + liHeight ); // Trigger the river-select event. this.element.trigger( 'river-select', [ li, event, this ] ); }, deselect: function() { if ( this.selected ) this.selected.removeClass( 'selected' ); this.selected = false; }, prev: function() { if ( ! this.visible ) return; var to; if ( this.selected ) { to = this.selected.prev( 'li' ); if ( to.length ) this.select( to ); } }, next: function() { if ( ! this.visible ) return; var to = this.selected ? this.selected.next( 'li' ) : $( 'li:not(.unselectable):first', this.element ); if ( to.length ) this.select( to ); }, ajax: function( callback ) { var self = this, delay = this.query.page == 1 ? 0 : wpLink.minRiverAJAXDuration, response = wpLink.delayedCallback( function( results, params ) { self.process( results, params ); if ( callback ) callback( results, params ); }, delay ); this.query.ajax( response ); }, change: function( search ) { if ( this.query && this._search == search ) return; this._search = search; this.query = new Query( search ); this.element.scrollTop( 0 ); }, process: function( results, params ) { var list = '', alt = true, classes = '', firstPage = params.page == 1; if ( ! results ) { if ( firstPage ) { list += '
  • ' + wpLinkL10n.noMatchesFound + '
  • '; } } else { $.each( results, function() { classes = alt ? 'alternate' : ''; classes += this.title ? '' : ' no-title'; list += classes ? '
  • ' : '
  • '; list += ''; list += ''; list += this.title ? this.title : wpLinkL10n.noTitle; list += '' + this.info + '
  • '; alt = ! alt; }); } this.ul[ firstPage ? 'html' : 'append' ]( list ); }, maybeLoad: function() { var self = this, el = this.element, bottom = el.scrollTop() + el.height(); if ( ! this.query.ready() || bottom < this.contentHeight.height() - wpLink.riverBottomThreshold ) return; setTimeout(function() { var newTop = el.scrollTop(), newBottom = newTop + el.height(); if ( ! self.query.ready() || newBottom < self.contentHeight.height() - wpLink.riverBottomThreshold ) return; self.waiting.addClass( 'is-active' ); el.scrollTop( newTop + self.waiting.outerHeight() ); self.ajax( function() { self.waiting.removeClass( 'is-active' ); }); }, wpLink.timeToTriggerRiver ); } }); Query = function( search ) { this.page = 1; this.allLoaded = false; this.querying = false; this.search = search; }; $.extend( Query.prototype, { ready: function() { return ! ( this.querying || this.allLoaded ); }, ajax: function( callback ) { var self = this, query = { action : 'wp-link-ajax', page : this.page, '_ajax_linking_nonce' : inputs.nonce.val() }; if ( this.search ) query.search = this.search; this.querying = true; $.post( window.ajaxurl, query, function( r ) { self.page++; self.querying = false; self.allLoaded = ! r; callback( r, query ); }, 'json' ); } }); $( document ).ready( wpLink.init ); })( jQuery, window.wpLinkL10n, window.wp ); PKv\P$ crop/cropper.cssnuW+A.imgCrop_wrap { /* width: 500px; @done_in_js */ /* height: 375px; @done_in_js */ position: relative; cursor: crosshair; } /* an extra classname is applied for Opera < 9.0 to fix its lack of opacity support */ .imgCrop_wrap.opera8 .imgCrop_overlay, .imgCrop_wrap.opera8 .imgCrop_clickArea { background-color: transparent; } /* fix for IE displaying all boxes at line-height by default, although they are still 1 pixel high until we combine them with the pointless span */ .imgCrop_wrap, .imgCrop_wrap * { font-size: 0; } .imgCrop_overlay { background-color: #000; opacity: 0.5; filter:alpha(opacity=50); position: absolute; width: 100%; height: 100%; } .imgCrop_selArea { position: absolute; /* @done_in_js top: 20px; left: 20px; width: 200px; height: 200px; background: transparent url(castle.jpg) no-repeat -210px -110px; */ cursor: move; z-index: 2; } /* clickArea is all a fix for IE 5.5 & 6 to allow the user to click on the given area */ .imgCrop_clickArea { width: 100%; height: 100%; background-color: #FFF; opacity: 0.01; filter:alpha(opacity=01); } .imgCrop_marqueeHoriz { position: absolute; width: 100%; height: 1px; background: transparent url(marqueeHoriz.gif) repeat-x 0 0; z-index: 3; } .imgCrop_marqueeVert { position: absolute; height: 100%; width: 1px; background: transparent url(marqueeVert.gif) repeat-y 0 0; z-index: 3; } .imgCrop_marqueeNorth { top: 0; left: 0; } .imgCrop_marqueeEast { top: 0; right: 0; } .imgCrop_marqueeSouth { bottom: 0px; left: 0; } .imgCrop_marqueeWest { top: 0; left: 0; } .imgCrop_handle { position: absolute; border: 1px solid #333; width: 6px; height: 6px; background: #FFF; opacity: 0.5; filter:alpha(opacity=50); z-index: 4; } /* fix IE 5 box model */ * html .imgCrop_handle { width: 8px; height: 8px; wid\th: 6px; hei\ght: 6px; } .imgCrop_handleN { top: -3px; left: 0; /* margin-left: 49%; @done_in_js */ cursor: n-resize; } .imgCrop_handleNE { top: -3px; right: -3px; cursor: ne-resize; } .imgCrop_handleE { top: 0; right: -3px; /* margin-top: 49%; @done_in_js */ cursor: e-resize; } .imgCrop_handleSE { right: -3px; bottom: -3px; cursor: se-resize; } .imgCrop_handleS { right: 0; bottom: -3px; /* margin-right: 49%; @done_in_js */ cursor: s-resize; } .imgCrop_handleSW { left: -3px; bottom: -3px; cursor: sw-resize; } .imgCrop_handleW { top: 0; left: -3px; /* margin-top: 49%; @done_in_js */ cursor: e-resize; } .imgCrop_handleNW { top: -3px; left: -3px; cursor: nw-resize; } /** * Create an area to click & drag around on as the default browser behaviour is to let you drag the image */ .imgCrop_dragArea { width: 100%; height: 100%; z-index: 200; position: absolute; top: 0; left: 0; } .imgCrop_previewWrap { /* width: 200px; @done_in_js */ /* height: 200px; @done_in_js */ overflow: hidden; position: relative; } .imgCrop_previewWrap img { position: absolute; }PKv\prScrop/marqueeHoriz.gifnuW+AGIF89a ! NETSCAPE2.0!, @ ʺ,!,DP(!,DP(!,DP(!,DP(!, (!, (!, (;PKv\%%crop/marqueeVert.gifnuW+AGIF89a(! NETSCAPE2.0!,(  ʺ|!,% DPZ!,% DPZ!,% DPZ!,% DPZ!,% PZ!,% PZ!,% PZ;PKv\%Ge@e@crop/cropper.jsnuW+A/** * Copyright (c) 2006, David Spurr (http://www.defusion.org.uk/) * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * * * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * * Neither the name of the David Spurr nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * http://www.opensource.org/licenses/bsd-license.php * * See scriptaculous.js for full scriptaculous licence */ var CropDraggable=Class.create(); Object.extend(Object.extend(CropDraggable.prototype,Draggable.prototype),{initialize:function(_1){ this.options=Object.extend({drawMethod:function(){ }},arguments[1]||{}); this.element=$(_1); this.handle=this.element; this.delta=this.currentDelta(); this.dragging=false; this.eventMouseDown=this.initDrag.bindAsEventListener(this); Event.observe(this.handle,"mousedown",this.eventMouseDown); Draggables.register(this); },draw:function(_2){ var _3=Position.cumulativeOffset(this.element); var d=this.currentDelta(); _3[0]-=d[0]; _3[1]-=d[1]; var p=[0,1].map(function(i){ return (_2[i]-_3[i]-this.offset[i]); }.bind(this)); this.options.drawMethod(p); }}); var Cropper={}; Cropper.Img=Class.create(); Cropper.Img.prototype={initialize:function(_7,_8){ this.options=Object.extend({ratioDim:{x:0,y:0},minWidth:0,minHeight:0,displayOnInit:false,onEndCrop:Prototype.emptyFunction,captureKeys:true},_8||{}); if(this.options.minWidth>0&&this.options.minHeight>0){ this.options.ratioDim.x=this.options.minWidth; this.options.ratioDim.y=this.options.minHeight; } this.img=$(_7); this.clickCoords={x:0,y:0}; this.dragging=false; this.resizing=false; this.isWebKit=/Konqueror|Safari|KHTML/.test(navigator.userAgent); this.isIE=/MSIE/.test(navigator.userAgent); this.isOpera8=/Opera\s[1-8]/.test(navigator.userAgent); this.ratioX=0; this.ratioY=0; this.attached=false; $A(document.getElementsByTagName("script")).each(function(s){ if(s.src.match(/cropper\.js/)){ var _a=s.src.replace(/cropper\.js(.*)?/,""); var _b=document.createElement("link"); _b.rel="stylesheet"; _b.type="text/css"; _b.href=_a+"cropper.css"; _b.media="screen"; document.getElementsByTagName("head")[0].appendChild(_b); } }); if(this.options.ratioDim.x>0&&this.options.ratioDim.y>0){ var _c=this.getGCD(this.options.ratioDim.x,this.options.ratioDim.y); this.ratioX=this.options.ratioDim.x/_c; this.ratioY=this.options.ratioDim.y/_c; } this.subInitialize(); if(this.img.complete||this.isWebKit){ this.onLoad(); }else{ Event.observe(this.img,"load",this.onLoad.bindAsEventListener(this)); } },getGCD:function(a,b){return 1; if(b==0){ return a; } return this.getGCD(b,a%b); },onLoad:function(){ var _f="imgCrop_"; var _10=this.img.parentNode; var _11=""; if(this.isOpera8){ _11=" opera8"; } this.imgWrap=Builder.node("div",{"class":_f+"wrap"+_11}); if(this.isIE){ this.north=Builder.node("div",{"class":_f+"overlay "+_f+"north"},[Builder.node("span")]); this.east=Builder.node("div",{"class":_f+"overlay "+_f+"east"},[Builder.node("span")]); this.south=Builder.node("div",{"class":_f+"overlay "+_f+"south"},[Builder.node("span")]); this.west=Builder.node("div",{"class":_f+"overlay "+_f+"west"},[Builder.node("span")]); var _12=[this.north,this.east,this.south,this.west]; }else{ this.overlay=Builder.node("div",{"class":_f+"overlay"}); var _12=[this.overlay]; } this.dragArea=Builder.node("div",{"class":_f+"dragArea"},_12); this.handleN=Builder.node("div",{"class":_f+"handle "+_f+"handleN"}); this.handleNE=Builder.node("div",{"class":_f+"handle "+_f+"handleNE"}); this.handleE=Builder.node("div",{"class":_f+"handle "+_f+"handleE"}); this.handleSE=Builder.node("div",{"class":_f+"handle "+_f+"handleSE"}); this.handleS=Builder.node("div",{"class":_f+"handle "+_f+"handleS"}); this.handleSW=Builder.node("div",{"class":_f+"handle "+_f+"handleSW"}); this.handleW=Builder.node("div",{"class":_f+"handle "+_f+"handleW"}); this.handleNW=Builder.node("div",{"class":_f+"handle "+_f+"handleNW"}); this.selArea=Builder.node("div",{"class":_f+"selArea"},[Builder.node("div",{"class":_f+"marqueeHoriz "+_f+"marqueeNorth"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeVert "+_f+"marqueeEast"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeHoriz "+_f+"marqueeSouth"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeVert "+_f+"marqueeWest"},[Builder.node("span")]),this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW,Builder.node("div",{"class":_f+"clickArea"})]); Element.setStyle($(this.selArea),{backgroundColor:"transparent",backgroundRepeat:"no-repeat",backgroundPosition:"0 0"}); this.imgWrap.appendChild(this.img); this.imgWrap.appendChild(this.dragArea); this.dragArea.appendChild(this.selArea); this.dragArea.appendChild(Builder.node("div",{"class":_f+"clickArea"})); _10.appendChild(this.imgWrap); Event.observe(this.dragArea,"mousedown",this.startDrag.bindAsEventListener(this)); Event.observe(document,"mousemove",this.onDrag.bindAsEventListener(this)); Event.observe(document,"mouseup",this.endCrop.bindAsEventListener(this)); var _13=[this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW]; for(var i=0;i<_13.length;i++){ Event.observe(_13[i],"mousedown",this.startResize.bindAsEventListener(this)); } if(this.options.captureKeys){ Event.observe(document,"keydown",this.handleKeys.bindAsEventListener(this)); } new CropDraggable(this.selArea,{drawMethod:this.moveArea.bindAsEventListener(this)}); this.setParams(); },setParams:function(){ this.imgW=this.img.width; this.imgH=this.img.height; if(!this.isIE){ Element.setStyle($(this.overlay),{width:this.imgW+"px",height:this.imgH+"px"}); Element.hide($(this.overlay)); Element.setStyle($(this.selArea),{backgroundImage:"url("+this.img.src+")"}); }else{ Element.setStyle($(this.north),{height:0}); Element.setStyle($(this.east),{width:0,height:0}); Element.setStyle($(this.south),{height:0}); Element.setStyle($(this.west),{width:0,height:0}); } Element.setStyle($(this.imgWrap),{"width":this.imgW+"px","height":this.imgH+"px"}); Element.hide($(this.selArea)); var _15=Position.positionedOffset(this.imgWrap); this.wrapOffsets={"top":_15[1],"left":_15[0]}; var _16={x1:0,y1:0,x2:0,y2:0}; this.setAreaCoords(_16); if(this.options.ratioDim.x>0&&this.options.ratioDim.y>0&&this.options.displayOnInit){ _16.x1=Math.ceil((this.imgW-this.options.ratioDim.x)/2); _16.y1=Math.ceil((this.imgH-this.options.ratioDim.y)/2); _16.x2=_16.x1+this.options.ratioDim.x; _16.y2=_16.y1+this.options.ratioDim.y; Element.show(this.selArea); this.drawArea(); this.endCrop(); } this.attached=true; },remove:function(){ this.attached=false; this.imgWrap.parentNode.insertBefore(this.img,this.imgWrap); this.imgWrap.parentNode.removeChild(this.imgWrap); Event.stopObserving(this.dragArea,"mousedown",this.startDrag.bindAsEventListener(this)); Event.stopObserving(document,"mousemove",this.onDrag.bindAsEventListener(this)); Event.stopObserving(document,"mouseup",this.endCrop.bindAsEventListener(this)); var _17=[this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW]; for(var i=0;i<_17.length;i++){ Event.stopObserving(_17[i],"mousedown",this.startResize.bindAsEventListener(this)); } if(this.options.captureKeys){ Event.stopObserving(document,"keydown",this.handleKeys.bindAsEventListener(this)); } },reset:function(){ if(!this.attached){ this.onLoad(); }else{ this.setParams(); } this.endCrop(); },handleKeys:function(e){ var dir={x:0,y:0}; if(!this.dragging){ switch(e.keyCode){ case (37): dir.x=-1; break; case (38): dir.y=-1; break; case (39): dir.x=1; break; case (40): dir.y=1; break; } if(dir.x!=0||dir.y!=0){ if(e.shiftKey){ dir.x*=10; dir.y*=10; } this.moveArea([this.areaCoords.x1+dir.x,this.areaCoords.y1+dir.y]); Event.stop(e); } } },calcW:function(){ return (this.areaCoords.x2-this.areaCoords.x1); },calcH:function(){ return (this.areaCoords.y2-this.areaCoords.y1); },moveArea:function(_1b){ this.setAreaCoords({x1:_1b[0],y1:_1b[1],x2:_1b[0]+this.calcW(),y2:_1b[1]+this.calcH()},true); this.drawArea(); },cloneCoords:function(_1c){ return {x1:_1c.x1,y1:_1c.y1,x2:_1c.x2,y2:_1c.y2}; },setAreaCoords:function(_1d,_1e,_1f,_20,_21){ var _22=typeof _1e!="undefined"?_1e:false; var _23=typeof _1f!="undefined"?_1f:false; if(_1e){ var _24=_1d.x2-_1d.x1; var _25=_1d.y2-_1d.y1; if(_1d.x1<0){ _1d.x1=0; _1d.x2=_24; } if(_1d.y1<0){ _1d.y1=0; _1d.y2=_25; } if(_1d.x2>this.imgW){ _1d.x2=this.imgW; _1d.x1=this.imgW-_24; } if(_1d.y2>this.imgH){ _1d.y2=this.imgH; _1d.y1=this.imgH-_25; } }else{ if(_1d.x1<0){ _1d.x1=0; } if(_1d.y1<0){ _1d.y1=0; } if(_1d.x2>this.imgW){ _1d.x2=this.imgW; } if(_1d.y2>this.imgH){ _1d.y2=this.imgH; } if(typeof (_20)!="undefined"){ if(this.ratioX>0){ this.applyRatio(_1d,{x:this.ratioX,y:this.ratioY},_20,_21); }else{ if(_23){ this.applyRatio(_1d,{x:1,y:1},_20,_21); } } var _26={a1:_1d.x1,a2:_1d.x2}; var _27={a1:_1d.y1,a2:_1d.y2}; var _28=this.options.minWidth; var _29=this.options.minHeight; if((_28==0||_29==0)&&_23){ if(_28>0){ _29=_28; }else{ if(_29>0){ _28=_29; } } } this.applyMinDimension(_26,_28,_20.x,{min:0,max:this.imgW}); this.applyMinDimension(_27,_29,_20.y,{min:0,max:this.imgH}); _1d={x1:_26.a1,y1:_27.a1,x2:_26.a2,y2:_27.a2}; } } this.areaCoords=_1d; },applyMinDimension:function(_2a,_2b,_2c,_2d){ if((_2a.a2-_2a.a1)<_2b){ if(_2c==1){ _2a.a2=_2a.a1+_2b; }else{ _2a.a1=_2a.a2-_2b; } if(_2a.a1<_2d.min){ _2a.a1=_2d.min; _2a.a2=_2b; }else{ if(_2a.a2>_2d.max){ _2a.a1=_2d.max-_2b; _2a.a2=_2d.max; } } } },applyRatio:function(_2e,_2f,_30,_31){ var _32; if(_31=="N"||_31=="S"){ _32=this.applyRatioToAxis({a1:_2e.y1,b1:_2e.x1,a2:_2e.y2,b2:_2e.x2},{a:_2f.y,b:_2f.x},{a:_30.y,b:_30.x},{min:0,max:this.imgW}); _2e.x1=_32.b1; _2e.y1=_32.a1; _2e.x2=_32.b2; _2e.y2=_32.a2; }else{ _32=this.applyRatioToAxis({a1:_2e.x1,b1:_2e.y1,a2:_2e.x2,b2:_2e.y2},{a:_2f.x,b:_2f.y},{a:_30.x,b:_30.y},{min:0,max:this.imgH}); _2e.x1=_32.a1; _2e.y1=_32.b1; _2e.x2=_32.a2; _2e.y2=_32.b2; } },applyRatioToAxis:function(_33,_34,_35,_36){ var _37=Object.extend(_33,{}); var _38=_37.a2-_37.a1; var _3a=Math.floor(_38*_34.b/_34.a); var _3b; var _3c; var _3d=null; if(_35.b==1){ _3b=_37.b1+_3a; if(_3b>_36.max){ _3b=_36.max; _3d=_3b-_37.b1; } _37.b2=_3b; }else{ _3b=_37.b2-_3a; if(_3b<_36.min){ _3b=_36.min; _3d=_3b+_37.b2; } _37.b1=_3b; } if(_3d!=null){ _3c=Math.floor(_3d*_34.a/_34.b); if(_35.a==1){ _37.a2=_37.a1+_3c; }else{ _37.a1=_37.a1=_37.a2-_3c; } } return _37; },drawArea:function(){ if(!this.isIE){ Element.show($(this.overlay)); } var _3e=this.calcW(); var _3f=this.calcH(); var _40=this.areaCoords.x2; var _41=this.areaCoords.y2; var _42=this.selArea.style; _42.left=this.areaCoords.x1+"px"; _42.top=this.areaCoords.y1+"px"; _42.width=_3e+"px"; _42.height=_3f+"px"; var _43=Math.ceil((_3e-6)/2)+"px"; var _44=Math.ceil((_3f-6)/2)+"px"; this.handleN.style.left=_43; this.handleE.style.top=_44; this.handleS.style.left=_43; this.handleW.style.top=_44; if(this.isIE){ this.north.style.height=this.areaCoords.y1+"px"; var _45=this.east.style; _45.top=this.areaCoords.y1+"px"; _45.height=_3f+"px"; _45.left=_40+"px"; _45.width=(this.img.width-_40)+"px"; var _46=this.south.style; _46.top=_41+"px"; _46.height=(this.img.height-_41)+"px"; var _47=this.west.style; _47.top=this.areaCoords.y1+"px"; _47.height=_3f+"px"; _47.width=this.areaCoords.x1+"px"; }else{ _42.backgroundPosition="-"+this.areaCoords.x1+"px "+"-"+this.areaCoords.y1+"px"; } this.subDrawArea(); this.forceReRender(); },forceReRender:function(){ if(this.isIE||this.isWebKit){ var n=document.createTextNode(" "); var d,el,fixEL,i; if(this.isIE){ fixEl=this.selArea; }else{ if(this.isWebKit){ fixEl=document.getElementsByClassName("imgCrop_marqueeSouth",this.imgWrap)[0]; d=Builder.node("div",""); d.style.visibility="hidden"; var _4a=["SE","S","SW"]; for(i=0;i<_4a.length;i++){ el=document.getElementsByClassName("imgCrop_handle"+_4a[i],this.selArea)[0]; if(el.childNodes.length){ el.removeChild(el.childNodes[0]); } el.appendChild(d); } } } fixEl.appendChild(n); fixEl.removeChild(n); } },startResize:function(e){ this.startCoords=this.cloneCoords(this.areaCoords); this.resizing=true; this.resizeHandle=Element.classNames(Event.element(e)).toString().replace(/([^N|NE|E|SE|S|SW|W|NW])+/,""); Event.stop(e); },startDrag:function(e){ Element.show(this.selArea); this.clickCoords=this.getCurPos(e); this.setAreaCoords({x1:this.clickCoords.x,y1:this.clickCoords.y,x2:this.clickCoords.x,y2:this.clickCoords.y}); this.dragging=true; this.onDrag(e); Event.stop(e); },getCurPos:function(e){ return curPos={x:Event.pointerX(e)-this.wrapOffsets.left,y:Event.pointerY(e)-this.wrapOffsets.top}; },onDrag:function(e){ var _4f=null; if(this.dragging||this.resizing){ var _50=this.getCurPos(e); var _51=this.cloneCoords(this.areaCoords); var _52={x:1,y:1}; } if(this.dragging){ if(_50.x0&&this.options.minHeight>0){ this.previewWrap=$(this.options.previewWrap); this.previewImg=this.img.cloneNode(false); this.options.displayOnInit=true; this.hasPreviewImg=true; Element.addClassName(this.previewWrap,"imgCrop_previewWrap"); Element.setStyle(this.previewWrap,{width:this.options.minWidth+"px",height:this.options.minHeight+"px"}); this.previewWrap.appendChild(this.previewImg); } },subDrawArea:function(){ if(this.hasPreviewImg){ var _58=this.calcW(); var _59=this.calcH(); var _5a={x:this.imgW/_58,y:this.imgH/_59}; var _5b={x:_58/this.options.minWidth,y:_59/this.options.minHeight}; var _5c={w:Math.ceil(this.options.minWidth*_5a.x)+"px",h:Math.ceil(this.options.minHeight*_5a.y)+"px",x:"-"+Math.ceil(this.areaCoords.x1/_5b.x)+"px",y:"-"+Math.ceil(this.areaCoords.y1/_5b.y)+"px"}; var _5d=this.previewImg.style; _5d.width=_5c.w; _5d.height=_5c.h; _5d.left=_5c.x; _5d.top=_5c.y; } }}); PKv\Y00 wpdialog.jsnuW+A/** * @output wp-includes/js/wpdialog.js */ /* * Wrap the jQuery UI Dialog open function remove focus from tinyMCE. */ ( function($) { $.widget('wp.wpdialog', $.ui.dialog, { open: function() { // Add beforeOpen event. if ( this.isOpen() || false === this._trigger('beforeOpen') ) { return; } // Open the dialog. this._super(); // WebKit leaves focus in the TinyMCE editor unless we shift focus. this.element.focus(); this._trigger('refresh'); } }); $.wp.wpdialog.prototype.options.closeOnEscape = false; })(jQuery); PKv\ۚc%%wp-auth-check.jsnuW+A/** * Interim login dialog. * * @output wp-includes/js/wp-auth-check.js */ /* global adminpage */ (function($){ var wrap, next; /** * Shows the authentication form popup. * * @since 3.6.0 * @private */ function show() { var parent = $('#wp-auth-check'), form = $('#wp-auth-check-form'), noframe = wrap.find('.wp-auth-fallback-expired'), frame, loaded = false; if ( form.length ) { // Add unload confirmation to counter (frame-busting) JS redirects. $(window).on( 'beforeunload.wp-auth-check', function(e) { e.originalEvent.returnValue = window.authcheckL10n.beforeunload; }); frame = $('',m=a.firstChild,s.appendChild(m),E.addEvent(m,"load",function(){var e;try{e=m.contentWindow.document||m.contentDocument||window.frames[m.id].document,/^4(0[0-9]|1[0-7]|2[2346])\s/.test(e.title)?l=e.title.replace(/^(\d+).*$/,"$1"):(l=200,d=f.trim(e.body.innerHTML),u.trigger({type:"progress",loaded:d.length,total:d.length}),o&&u.trigger({type:"uploadprogress",loaded:o.size||1025,total:o.size||1025}))}catch(e){if(!g.hasSameOrigin(t.url))return void h.call(u,function(){u.trigger("error")});l=404}h.call(u,function(){u.trigger("load")})},u.uid),n.submit(),u.trigger("loadstart")},getStatus:function(){return l},getResponse:function(e){if("json"===e&&"string"===f.typeOf(d)&&window.JSON)try{return JSON.parse(d.replace(/^\s*]*>/,"").replace(/<\/pre>\s*$/,""))}catch(e){return null}return d},abort:function(){var e=this;m&&m.contentWindow&&(m.contentWindow.stop?m.contentWindow.stop():m.contentWindow.document.execCommand?m.contentWindow.document.execCommand("Stop"):m.src="about:blank"),h.call(this,function(){e.dispatchEvent("abort")})}})}}),e("moxie/runtime/html4/image/Image",["moxie/runtime/html4/Runtime","moxie/runtime/html5/image/Image"],function(e,t){return e.Image=t}),function(e){for(var t=0;t').css({position:"fixed",top:"-1000px",left:"-1000px",height:0,width:0}).attr("id","wp-uploader-browser-"+this.uploader.id).appendTo("body"):r).append(this.browser))}this.uploader.refresh()}}),u.queue=new wp.media.model.Attachments([],{query:!1}),u.errors=new Backbone.Collection,e.Uploader=u)}(wp,jQuery);PKv\LGGRMIMIplupload/handlers.jsnuW+A/* global plupload, pluploadL10n, ajaxurl, post_id, wpUploaderInit, deleteUserSetting, setUserSetting, getUserSetting, shortform */ var topWin = window.dialogArguments || opener || parent || top, uploader, uploader_init; // Progress and success handlers for media multi uploads. function fileQueued( fileObj ) { // Get rid of unused form. jQuery( '.media-blank' ).remove(); var items = jQuery( '#media-items' ).children(), postid = post_id || 0; // Collapse a single item. if ( items.length == 1 ) { items.removeClass( 'open' ).find( '.slidetoggle' ).slideUp( 200 ); } // Create a progress bar containing the filename. jQuery( '
    ' ) .attr( 'id', 'media-item-' + fileObj.id ) .addClass( 'child-of-' + postid ) .append( '
    0%
    ', jQuery( '
    ' ).text( ' ' + fileObj.name ) ) .appendTo( jQuery( '#media-items' ) ); // Disable submit. jQuery( '#insert-gallery' ).prop( 'disabled', true ); } function uploadStart() { try { if ( typeof topWin.tb_remove != 'undefined' ) topWin.jQuery( '#TB_overlay' ).unbind( 'click', topWin.tb_remove ); } catch( e ){} return true; } function uploadProgress( up, file ) { var item = jQuery( '#media-item-' + file.id ); jQuery( '.bar', item ).width( ( 200 * file.loaded ) / file.size ); jQuery( '.percent', item ).html( file.percent + '%' ); } // Check to see if a large file failed to upload. function fileUploading( up, file ) { var hundredmb = 100 * 1024 * 1024, max = parseInt( up.settings.max_file_size, 10 ); if ( max > hundredmb && file.size > hundredmb ) { setTimeout( function() { if ( file.status < 3 && file.loaded === 0 ) { // Not uploading. wpFileError( file, pluploadL10n.big_upload_failed.replace( '%1$s', '' ).replace( '%2$s', '' ) ); up.stop(); // Stop the whole queue. up.removeFile( file ); up.start(); // Restart the queue. } }, 10000 ); // Wait for 10 seconds for the file to start uploading. } } function updateMediaForm() { var items = jQuery( '#media-items' ).children(); // Just one file, no need for collapsible part. if ( items.length == 1 ) { items.addClass( 'open' ).find( '.slidetoggle' ).show(); jQuery( '.insert-gallery' ).hide(); } else if ( items.length > 1 ) { items.removeClass( 'open' ); // Only show Gallery/Playlist buttons when there are at least two files. jQuery( '.insert-gallery' ).show(); } // Only show Save buttons when there is at least one file. if ( items.not( '.media-blank' ).length > 0 ) jQuery( '.savebutton' ).show(); else jQuery( '.savebutton' ).hide(); } function uploadSuccess( fileObj, serverData ) { var item = jQuery( '#media-item-' + fileObj.id ); // On success serverData should be numeric, // fix bug in html4 runtime returning the serverData wrapped in a
     tag.
    	if ( typeof serverData === 'string' ) {
    		serverData = serverData.replace( /^
    (\d+)<\/pre>$/, '$1' );
    
    		// If async-upload returned an error message, place it in the media item div and return.
    		if ( /media-upload-error|error-div/.test( serverData ) ) {
    			item.html( serverData );
    			return;
    		}
    	}
    
    	item.find( '.percent' ).html( pluploadL10n.crunching );
    
    	prepareMediaItem( fileObj, serverData );
    	updateMediaForm();
    
    	// Increment the counter.
    	if ( post_id && item.hasClass( 'child-of-' + post_id ) ) {
    		jQuery( '#attachments-count' ).text( 1 * jQuery( '#attachments-count' ).text() + 1 );
    	}
    }
    
    function setResize( arg ) {
    	if ( arg ) {
    		if ( window.resize_width && window.resize_height ) {
    			uploader.settings.resize = {
    				enabled: true,
    				width: window.resize_width,
    				height: window.resize_height,
    				quality: 100
    			};
    		} else {
    			uploader.settings.multipart_params.image_resize = true;
    		}
    	} else {
    		delete( uploader.settings.multipart_params.image_resize );
    	}
    }
    
    function prepareMediaItem( fileObj, serverData ) {
    	var f = ( typeof shortform == 'undefined' ) ? 1 : 2, item = jQuery( '#media-item-' + fileObj.id );
    	if ( f == 2 && shortform > 2 )
    		f = shortform;
    
    	try {
    		if ( typeof topWin.tb_remove != 'undefined' )
    			topWin.jQuery( '#TB_overlay' ).click( topWin.tb_remove );
    	} catch( e ){}
    
    	if ( isNaN( serverData ) || !serverData ) {
    		// Old style: Append the HTML returned by the server -- thumbnail and form inputs.
    		item.append( serverData );
    		prepareMediaItemInit( fileObj );
    	} else {
    		// New style: server data is just the attachment ID, fetch the thumbnail and form html from the server.
    		item.load( 'async-upload.php', {attachment_id:serverData, fetch:f}, function(){prepareMediaItemInit( fileObj );updateMediaForm();});
    	}
    }
    
    function prepareMediaItemInit( fileObj ) {
    	var item = jQuery( '#media-item-' + fileObj.id );
    	// Clone the thumbnail as a "pinkynail" -- a tiny image to the left of the filename.
    	jQuery( '.thumbnail', item ).clone().attr( 'class', 'pinkynail toggle' ).prependTo( item );
    
    	// Replace the original filename with the new (unique) one assigned during upload.
    	jQuery( '.filename.original', item ).replaceWith( jQuery( '.filename.new', item ) );
    
    	// Bind AJAX to the new Delete button.
    	jQuery( 'a.delete', item ).click( function(){
    		// Tell the server to delete it. TODO: Handle exceptions.
    		jQuery.ajax({
    			url: ajaxurl,
    			type: 'post',
    			success: deleteSuccess,
    			error: deleteError,
    			id: fileObj.id,
    			data: {
    				id : this.id.replace(/[^0-9]/g, '' ),
    				action : 'trash-post',
    				_ajax_nonce : this.href.replace(/^.*wpnonce=/,'' )
    			}
    		});
    		return false;
    	});
    
    	// Bind AJAX to the new Undo button.
    	jQuery( 'a.undo', item ).click( function(){
    		// Tell the server to untrash it. TODO: Handle exceptions.
    		jQuery.ajax({
    			url: ajaxurl,
    			type: 'post',
    			id: fileObj.id,
    			data: {
    				id : this.id.replace(/[^0-9]/g,'' ),
    				action: 'untrash-post',
    				_ajax_nonce: this.href.replace(/^.*wpnonce=/,'' )
    			},
    			success: function( ){
    				var type,
    					item = jQuery( '#media-item-' + fileObj.id );
    
    				if ( type = jQuery( '#type-of-' + fileObj.id ).val() )
    					jQuery( '#' + type + '-counter' ).text( jQuery( '#' + type + '-counter' ).text()-0+1 );
    
    				if ( post_id && item.hasClass( 'child-of-'+post_id ) )
    					jQuery( '#attachments-count' ).text( jQuery( '#attachments-count' ).text()-0+1 );
    
    				jQuery( '.filename .trashnotice', item ).remove();
    				jQuery( '.filename .title', item ).css( 'font-weight','normal' );
    				jQuery( 'a.undo', item ).addClass( 'hidden' );
    				jQuery( '.menu_order_input', item ).show();
    				item.css( {backgroundColor:'#ceb'} ).animate( {backgroundColor: '#fff'}, { queue: false, duration: 500, complete: function(){ jQuery( this ).css({backgroundColor:''}); } }).removeClass( 'undo' );
    			}
    		});
    		return false;
    	});
    
    	// Open this item if it says to start open (e.g. to display an error).
    	jQuery( '#media-item-' + fileObj.id + '.startopen' ).removeClass( 'startopen' ).addClass( 'open' ).find( 'slidetoggle' ).fadeIn();
    }
    
    // Generic error message.
    function wpQueueError( message ) {
    	jQuery( '#media-upload-error' ).show().html( '

    ' + message + '

    ' ); } // File-specific error messages. function wpFileError( fileObj, message ) { itemAjaxError( fileObj.id, message ); } function itemAjaxError( id, message ) { var item = jQuery( '#media-item-' + id ), filename = item.find( '.filename' ).text(), last_err = item.data( 'last-err' ); if ( last_err == id ) // Prevent firing an error for the same file twice. return; item.html( '
    ' + '' + pluploadL10n.dismiss + '' + '' + pluploadL10n.error_uploading.replace( '%s', jQuery.trim( filename )) + ' ' + message + '
    ' ).data( 'last-err', id ); } function deleteSuccess( data ) { var type, id, item; if ( data == '-1' ) return itemAjaxError( this.id, 'You do not have permission. Has your session expired?' ); if ( data == '0' ) return itemAjaxError( this.id, 'Could not be deleted. Has it been deleted already?' ); id = this.id; item = jQuery( '#media-item-' + id ); // Decrement the counters. if ( type = jQuery( '#type-of-' + id ).val() ) jQuery( '#' + type + '-counter' ).text( jQuery( '#' + type + '-counter' ).text() - 1 ); if ( post_id && item.hasClass( 'child-of-'+post_id ) ) jQuery( '#attachments-count' ).text( jQuery( '#attachments-count' ).text() - 1 ); if ( jQuery( 'form.type-form #media-items' ).children().length == 1 && jQuery( '.hidden', '#media-items' ).length > 0 ) { jQuery( '.toggle' ).toggle(); jQuery( '.slidetoggle' ).slideUp( 200 ).siblings().removeClass( 'hidden' ); } // Vanish it. jQuery( '.toggle', item ).toggle(); jQuery( '.slidetoggle', item ).slideUp( 200 ).siblings().removeClass( 'hidden' ); item.css( {backgroundColor:'#faa'} ).animate( {backgroundColor:'#f4f4f4'}, {queue:false, duration:500} ).addClass( 'undo' ); jQuery( '.filename:empty', item ).remove(); jQuery( '.filename .title', item ).css( 'font-weight','bold' ); jQuery( '.filename', item ).append( ' ' + pluploadL10n.deleted + ' ' ).siblings( 'a.toggle' ).hide(); jQuery( '.filename', item ).append( jQuery( 'a.undo', item ).removeClass( 'hidden' ) ); jQuery( '.menu_order_input', item ).hide(); return; } function deleteError() { } function uploadComplete() { jQuery( '#insert-gallery' ).prop( 'disabled', false ); } function switchUploader( s ) { if ( s ) { deleteUserSetting( 'uploader' ); jQuery( '.media-upload-form' ).removeClass( 'html-uploader' ); if ( typeof( uploader ) == 'object' ) uploader.refresh(); } else { setUserSetting( 'uploader', '1' ); // 1 == html uploader. jQuery( '.media-upload-form' ).addClass( 'html-uploader' ); } } function uploadError( fileObj, errorCode, message, up ) { var hundredmb = 100 * 1024 * 1024, max; switch ( errorCode ) { case plupload.FAILED: wpFileError( fileObj, pluploadL10n.upload_failed ); break; case plupload.FILE_EXTENSION_ERROR: wpFileExtensionError( up, fileObj, pluploadL10n.invalid_filetype ); break; case plupload.FILE_SIZE_ERROR: uploadSizeError( up, fileObj ); break; case plupload.IMAGE_FORMAT_ERROR: wpFileError( fileObj, pluploadL10n.not_an_image ); break; case plupload.IMAGE_MEMORY_ERROR: wpFileError( fileObj, pluploadL10n.image_memory_exceeded ); break; case plupload.IMAGE_DIMENSIONS_ERROR: wpFileError( fileObj, pluploadL10n.image_dimensions_exceeded ); break; case plupload.GENERIC_ERROR: wpQueueError( pluploadL10n.upload_failed ); break; case plupload.IO_ERROR: max = parseInt( up.settings.filters.max_file_size, 10 ); if ( max > hundredmb && fileObj.size > hundredmb ) { wpFileError( fileObj, pluploadL10n.big_upload_failed.replace( '%1$s', '' ).replace( '%2$s', '' ) ); } else { wpQueueError( pluploadL10n.io_error ); } break; case plupload.HTTP_ERROR: wpQueueError( pluploadL10n.http_error ); break; case plupload.INIT_ERROR: jQuery( '.media-upload-form' ).addClass( 'html-uploader' ); break; case plupload.SECURITY_ERROR: wpQueueError( pluploadL10n.security_error ); break; /* case plupload.UPLOAD_ERROR.UPLOAD_STOPPED: case plupload.UPLOAD_ERROR.FILE_CANCELLED: jQuery( '#media-item-' + fileObj.id ).remove(); break;*/ default: wpFileError( fileObj, pluploadL10n.default_error ); } } function uploadSizeError( up, file ) { var message, errorDiv; message = pluploadL10n.file_exceeds_size_limit.replace( '%s', file.name ); // Construct the error div. errorDiv = jQuery( '
    ' ) .attr( { 'id': 'media-item-' + file.id, 'class': 'media-item error' } ) .append( jQuery( '

    ' ) .text( message ) ); // Append the error. jQuery( '#media-items' ).append( errorDiv ); up.removeFile( file ); } function wpFileExtensionError( up, file, message ) { jQuery( '#media-items' ).append( '

    ' + message + '

    ' ); up.removeFile( file ); } jQuery( document ).ready( function( $ ) { var tryAgainCount = {}; var tryAgain; $( '.media-upload-form' ).bind( 'click.uploader', function( e ) { var target = $( e.target ), tr, c; if ( target.is( 'input[type="radio"]' ) ) { // Remember the last used image size and alignment. tr = target.closest( 'tr' ); if ( tr.hasClass( 'align' ) ) setUserSetting( 'align', target.val() ); else if ( tr.hasClass( 'image-size' ) ) setUserSetting( 'imgsize', target.val() ); } else if ( target.is( 'button.button' ) ) { // Remember the last used image link url. c = e.target.className || ''; c = c.match( /url([^ '"]+)/ ); if ( c && c[1] ) { setUserSetting( 'urlbutton', c[1] ); target.siblings( '.urlfield' ).val( target.data( 'link-url' ) ); } } else if ( target.is( 'a.dismiss' ) ) { target.parents( '.media-item' ).fadeOut( 200, function() { $( this ).remove(); } ); } else if ( target.is( '.upload-flash-bypass a' ) || target.is( 'a.uploader-html' ) ) { // Switch uploader to html4. $( '#media-items, p.submit, span.big-file-warning' ).css( 'display', 'none' ); switchUploader( 0 ); e.preventDefault(); } else if ( target.is( '.upload-html-bypass a' ) ) { // Switch uploader to multi-file. $( '#media-items, p.submit, span.big-file-warning' ).css( 'display', '' ); switchUploader( 1 ); e.preventDefault(); } else if ( target.is( 'a.describe-toggle-on' ) ) { // Show. target.parent().addClass( 'open' ); target.siblings( '.slidetoggle' ).fadeIn( 250, function() { var S = $( window ).scrollTop(), H = $( window ).height(), top = $( this ).offset().top, h = $( this ).height(), b, B; if ( H && top && h ) { b = top + h; B = S + H; if ( b > B ) { if ( b - B < top - S ) window.scrollBy( 0, ( b - B ) + 10 ); else window.scrollBy( 0, top - S - 40 ); } } } ); e.preventDefault(); } else if ( target.is( 'a.describe-toggle-off' ) ) { // Hide. target.siblings( '.slidetoggle' ).fadeOut( 250, function() { target.parent().removeClass( 'open' ); } ); e.preventDefault(); } }); // Attempt to create image sub-sizes when an image was uploaded successfully // but the server responded with an HTTP 5xx error. tryAgain = function( up, error ) { var file = error.file; var times; var id; if ( ! error || ! error.responseHeaders ) { wpQueueError( pluploadL10n.http_error_image ); return; } id = error.responseHeaders.match( /x-wp-upload-attachment-id:\s*(\d+)/i ); if ( id && id[1] ) { id = id[1]; } else { wpQueueError( pluploadL10n.http_error_image ); return; } times = tryAgainCount[ file.id ]; if ( times && times > 4 ) { /* * The file may have been uploaded and attachment post created, * but post-processing and resizing failed... * Do a cleanup then tell the user to scale down the image and upload it again. */ $.ajax({ type: 'post', url: ajaxurl, dataType: 'json', data: { action: 'media-create-image-subsizes', _wpnonce: wpUploaderInit.multipart_params._wpnonce, attachment_id: id, _wp_upload_failed_cleanup: true, } }); if ( error.message && ( error.status < 500 || error.status >= 600 ) ) { wpQueueError( error.message ); } else { wpQueueError( pluploadL10n.http_error_image ); } return; } if ( ! times ) { tryAgainCount[ file.id ] = 1; } else { tryAgainCount[ file.id ] = ++times; } // Try to create the missing image sizes. $.ajax({ type: 'post', url: ajaxurl, dataType: 'json', data: { action: 'media-create-image-subsizes', _wpnonce: wpUploaderInit.multipart_params._wpnonce, attachment_id: id, _legacy_support: 'true', } }).done( function( response ) { var message; if ( response.success ) { uploadSuccess( file, response.data.id ); } else { if ( response.data && response.data.message ) { message = response.data.message; } wpQueueError( message || pluploadL10n.http_error_image ); } }).fail( function( jqXHR ) { // If another HTTP 5xx error, try try again... if ( jqXHR.status >= 500 && jqXHR.status < 600 ) { tryAgain( up, error ); return; } wpQueueError( pluploadL10n.http_error_image ); }); } // Init and set the uploader. uploader_init = function() { uploader = new plupload.Uploader( wpUploaderInit ); $( '#image_resize' ).bind( 'change', function() { var arg = $( this ).prop( 'checked' ); setResize( arg ); if ( arg ) setUserSetting( 'upload_resize', '1' ); else deleteUserSetting( 'upload_resize' ); }); uploader.bind( 'Init', function( up ) { var uploaddiv = $( '#plupload-upload-ui' ); setResize( getUserSetting( 'upload_resize', false ) ); if ( up.features.dragdrop && ! $( document.body ).hasClass( 'mobile' ) ) { uploaddiv.addClass( 'drag-drop' ); $( '#drag-drop-area' ).on( 'dragover.wp-uploader', function() { // dragenter doesn't fire right :( uploaddiv.addClass( 'drag-over' ); }).on( 'dragleave.wp-uploader, drop.wp-uploader', function() { uploaddiv.removeClass( 'drag-over' ); }); } else { uploaddiv.removeClass( 'drag-drop' ); $( '#drag-drop-area' ).off( '.wp-uploader' ); } if ( up.runtime === 'html4' ) { $( '.upload-flash-bypass' ).hide(); } }); uploader.bind( 'postinit', function( up ) { up.refresh(); }); uploader.init(); uploader.bind( 'FilesAdded', function( up, files ) { $( '#media-upload-error' ).empty(); uploadStart(); plupload.each( files, function( file ) { fileQueued( file ); }); up.refresh(); up.start(); }); uploader.bind( 'UploadFile', function( up, file ) { fileUploading( up, file ); }); uploader.bind( 'UploadProgress', function( up, file ) { uploadProgress( up, file ); }); uploader.bind( 'Error', function( up, error ) { var isImage = error.file && error.file.type && error.file.type.indexOf( 'image/' ) === 0; var status = error && error.status; // If the file is an image and the error is HTTP 5xx try to create sub-sizes again. if ( isImage && status >= 500 && status < 600 ) { tryAgain( up, error ); return; } uploadError( error.file, error.code, error.message, up ); up.refresh(); }); uploader.bind( 'FileUploaded', function( up, file, response ) { uploadSuccess( file, response.response ); }); uploader.bind( 'UploadComplete', function() { uploadComplete(); }); }; if ( typeof( wpUploaderInit ) == 'object' ) { uploader_init(); } }); PKv\|++plupload/handlers.min.jsnuW+Avar uploader,uploader_init,topWin=window.dialogArguments||opener||parent||top;function fileQueued(e){jQuery(".media-blank").remove();var a=jQuery("#media-items").children(),r=post_id||0;1==a.length&&a.removeClass("open").find(".slidetoggle").slideUp(200),jQuery('
    ').attr("id","media-item-"+e.id).addClass("child-of-"+r).append('
    0%
    ',jQuery('
    ').text(" "+e.name)).appendTo(jQuery("#media-items")),jQuery("#insert-gallery").prop("disabled",!0)}function uploadStart(){try{void 0!==topWin.tb_remove&&topWin.jQuery("#TB_overlay").unbind("click",topWin.tb_remove)}catch(e){}return!0}function uploadProgress(e,a){var r=jQuery("#media-item-"+a.id);jQuery(".bar",r).width(200*a.loaded/a.size),jQuery(".percent",r).html(a.percent+"%")}function fileUploading(e,a){var r=104857600;rr&&setTimeout(function(){a.status<3&&0===a.loaded&&(wpFileError(a,pluploadL10n.big_upload_failed.replace("%1$s",'').replace("%2$s","")),e.stop(),e.removeFile(a),e.start())},1e4)}function updateMediaForm(){var e=jQuery("#media-items").children();1==e.length?(e.addClass("open").find(".slidetoggle").show(),jQuery(".insert-gallery").hide()):1(\d+)<\/pre>$/,"$1"),/media-upload-error|error-div/.test(a))?r.html(a):(r.find(".percent").html(pluploadL10n.crunching),prepareMediaItem(e,a),updateMediaForm(),post_id&&r.hasClass("child-of-"+post_id)&&jQuery("#attachments-count").text(+jQuery("#attachments-count").text()+1))}function setResize(e){e?window.resize_width&&window.resize_height?uploader.settings.resize={enabled:!0,width:window.resize_width,height:window.resize_height,quality:100}:uploader.settings.multipart_params.image_resize=!0:delete uploader.settings.multipart_params.image_resize}function prepareMediaItem(e,a){var r="undefined"==typeof shortform?1:2,i=jQuery("#media-item-"+e.id);2==r&&2

    '+e+"

    ")}function wpFileError(e,a){itemAjaxError(e.id,a)}function itemAjaxError(e,a){var r=jQuery("#media-item-"+e),i=r.find(".filename").text();r.data("last-err")!=e&&r.html('
    '+pluploadL10n.dismiss+""+pluploadL10n.error_uploading.replace("%s",jQuery.trim(i))+" "+a+"
    ").data("last-err",e)}function deleteSuccess(e){var a;return"-1"==e?itemAjaxError(this.id,"You do not have permission. Has your session expired?"):"0"==e?itemAjaxError(this.id,"Could not be deleted. Has it been deleted already?"):(a=this.id,e=jQuery("#media-item-"+a),(a=jQuery("#type-of-"+a).val())&&jQuery("#"+a+"-counter").text(jQuery("#"+a+"-counter").text()-1),post_id&&e.hasClass("child-of-"+post_id)&&jQuery("#attachments-count").text(jQuery("#attachments-count").text()-1),1==jQuery("form.type-form #media-items").children().length&&0 '+pluploadL10n.deleted+" ").siblings("a.toggle").hide(),jQuery(".filename",e).append(jQuery("a.undo",e).removeClass("hidden")),void jQuery(".menu_order_input",e).hide())}function deleteError(){}function uploadComplete(){jQuery("#insert-gallery").prop("disabled",!1)}function switchUploader(e){e?(deleteUserSetting("uploader"),jQuery(".media-upload-form").removeClass("html-uploader"),"object"==typeof uploader&&uploader.refresh()):(setUserSetting("uploader","1"),jQuery(".media-upload-form").addClass("html-uploader"))}function uploadError(e,a,r,i){var t=104857600;switch(a){case plupload.FAILED:wpFileError(e,pluploadL10n.upload_failed);break;case plupload.FILE_EXTENSION_ERROR:wpFileExtensionError(i,e,pluploadL10n.invalid_filetype);break;case plupload.FILE_SIZE_ERROR:uploadSizeError(i,e);break;case plupload.IMAGE_FORMAT_ERROR:wpFileError(e,pluploadL10n.not_an_image);break;case plupload.IMAGE_MEMORY_ERROR:wpFileError(e,pluploadL10n.image_memory_exceeded);break;case plupload.IMAGE_DIMENSIONS_ERROR:wpFileError(e,pluploadL10n.image_dimensions_exceeded);break;case plupload.GENERIC_ERROR:wpQueueError(pluploadL10n.upload_failed);break;case plupload.IO_ERROR:tt?wpFileError(e,pluploadL10n.big_upload_failed.replace("%1$s",'').replace("%2$s","")):wpQueueError(pluploadL10n.io_error);break;case plupload.HTTP_ERROR:wpQueueError(pluploadL10n.http_error);break;case plupload.INIT_ERROR:jQuery(".media-upload-form").addClass("html-uploader");break;case plupload.SECURITY_ERROR:wpQueueError(pluploadL10n.security_error);break;default:wpFileError(e,pluploadL10n.default_error)}}function uploadSizeError(e,a){var r=pluploadL10n.file_exceeds_size_limit.replace("%s",a.name),r=jQuery("
    ").attr({id:"media-item-"+a.id,class:"media-item error"}).append(jQuery("

    ").text(r));jQuery("#media-items").append(r),e.removeFile(a)}function wpFileExtensionError(e,a,r){jQuery("#media-items").append('

    '+r+"

    "),e.removeFile(a)}jQuery(document).ready(function(d){var o,l={};d(".media-upload-form").bind("click.uploader",function(e){var a,r=d(e.target);r.is('input[type="radio"]')?(a=r.closest("tr")).hasClass("align")?setUserSetting("align",r.val()):a.hasClass("image-size")&&setUserSetting("imgsize",r.val()):r.is("button.button")?(a=(a=e.target.className||"").match(/url([^ '"]+)/))&&a[1]&&(setUserSetting("urlbutton",a[1]),r.siblings(".urlfield").val(r.data("link-url"))):r.is("a.dismiss")?r.parents(".media-item").fadeOut(200,function(){d(this).remove()}):r.is(".upload-flash-bypass a")||r.is("a.uploader-html")?(d("#media-items, p.submit, span.big-file-warning").css("display","none"),switchUploader(0),e.preventDefault()):r.is(".upload-html-bypass a")?(d("#media-items, p.submit, span.big-file-warning").css("display",""),switchUploader(1),e.preventDefault()):r.is("a.describe-toggle-on")?(r.parent().addClass("open"),r.siblings(".slidetoggle").fadeIn(250,function(){var e,a,r=d(window).scrollTop(),i=d(window).height(),t=d(this).offset().top,o=d(this).height();i&&t&&o&&(a=r+i)<(e=t+o)&&(e-aplupload/moxie.jsnuW+A;var MXI_DEBUG = false; /** * mOxie - multi-runtime File API & XMLHttpRequest L2 Polyfill * v1.3.5 * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing * * Date: 2016-05-15 */ /** * Compiled inline version. (Library mode) */ /** * Modified for WordPress, Silverlight and Flash runtimes support was removed. * See https://core.trac.wordpress.org/ticket/41755. */ /*jshint smarttabs:true, undef:true, latedef:true, curly:true, bitwise:true, camelcase:true */ /*globals $code */ (function(exports, undefined) { "use strict"; var modules = {}; function require(ids, callback) { var module, defs = []; for (var i = 0; i < ids.length; ++i) { module = modules[ids[i]] || resolve(ids[i]); if (!module) { throw 'module definition dependecy not found: ' + ids[i]; } defs.push(module); } callback.apply(null, defs); } function define(id, dependencies, definition) { if (typeof id !== 'string') { throw 'invalid module definition, module id must be defined and be a string'; } if (dependencies === undefined) { throw 'invalid module definition, dependencies must be specified'; } if (definition === undefined) { throw 'invalid module definition, definition function must be specified'; } require(dependencies, function() { modules[id] = definition.apply(null, arguments); }); } function defined(id) { return !!modules[id]; } function resolve(id) { var target = exports; var fragments = id.split(/[.\/]/); for (var fi = 0; fi < fragments.length; ++fi) { if (!target[fragments[fi]]) { return; } target = target[fragments[fi]]; } return target; } function expose(ids) { for (var i = 0; i < ids.length; i++) { var target = exports; var id = ids[i]; var fragments = id.split(/[.\/]/); for (var fi = 0; fi < fragments.length - 1; ++fi) { if (target[fragments[fi]] === undefined) { target[fragments[fi]] = {}; } target = target[fragments[fi]]; } target[fragments[fragments.length - 1]] = modules[id]; } } // Included from: src/javascript/core/utils/Basic.js /** * Basic.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/utils/Basic', [], function() { /** Gets the true type of the built-in object (better version of typeof). @author Angus Croll (http://javascriptweblog.wordpress.com/) @method typeOf @for Utils @static @param {Object} o Object to check. @return {String} Object [[Class]] */ var typeOf = function(o) { var undef; if (o === undef) { return 'undefined'; } else if (o === null) { return 'null'; } else if (o.nodeType) { return 'node'; } // the snippet below is awesome, however it fails to detect null, undefined and arguments types in IE lte 8 return ({}).toString.call(o).match(/\s([a-z|A-Z]+)/)[1].toLowerCase(); }; /** Extends the specified object with another object. @method extend @static @param {Object} target Object to extend. @param {Object} [obj]* Multiple objects to extend with. @return {Object} Same as target, the extended object. */ var extend = function(target) { var undef; each(arguments, function(arg, i) { if (i > 0) { each(arg, function(value, key) { if (value !== undef) { if (typeOf(target[key]) === typeOf(value) && !!~inArray(typeOf(value), ['array', 'object'])) { extend(target[key], value); } else { target[key] = value; } } }); } }); return target; }; /** Executes the callback function for each item in array/object. If you return false in the callback it will break the loop. @method each @static @param {Object} obj Object to iterate. @param {function} callback Callback function to execute for each item. */ var each = function(obj, callback) { var length, key, i, undef; if (obj) { if (typeOf(obj.length) === 'number') { // it might be Array, FileList or even arguments object // Loop array items for (i = 0, length = obj.length; i < length; i++) { if (callback(obj[i], i) === false) { return; } } } else if (typeOf(obj) === 'object') { // Loop object items for (key in obj) { if (obj.hasOwnProperty(key)) { if (callback(obj[key], key) === false) { return; } } } } } }; /** Checks if object is empty. @method isEmptyObj @static @param {Object} o Object to check. @return {Boolean} */ var isEmptyObj = function(obj) { var prop; if (!obj || typeOf(obj) !== 'object') { return true; } for (prop in obj) { return false; } return true; }; /** Recieve an array of functions (usually async) to call in sequence, each function receives a callback as first argument that it should call, when it completes. Finally, after everything is complete, main callback is called. Passing truthy value to the callback as a first argument will interrupt the sequence and invoke main callback immediately. @method inSeries @static @param {Array} queue Array of functions to call in sequence @param {Function} cb Main callback that is called in the end, or in case of error */ var inSeries = function(queue, cb) { var i = 0, length = queue.length; if (typeOf(cb) !== 'function') { cb = function() {}; } if (!queue || !queue.length) { cb(); } function callNext(i) { if (typeOf(queue[i]) === 'function') { queue[i](function(error) { /*jshint expr:true */ ++i < length && !error ? callNext(i) : cb(error); }); } } callNext(i); }; /** Recieve an array of functions (usually async) to call in parallel, each function receives a callback as first argument that it should call, when it completes. After everything is complete, main callback is called. Passing truthy value to the callback as a first argument will interrupt the process and invoke main callback immediately. @method inParallel @static @param {Array} queue Array of functions to call in sequence @param {Function} cb Main callback that is called in the end, or in case of error */ var inParallel = function(queue, cb) { var count = 0, num = queue.length, cbArgs = new Array(num); each(queue, function(fn, i) { fn(function(error) { if (error) { return cb(error); } var args = [].slice.call(arguments); args.shift(); // strip error - undefined or not cbArgs[i] = args; count++; if (count === num) { cbArgs.unshift(null); cb.apply(this, cbArgs); } }); }); }; /** Find an element in array and return it's index if present, otherwise return -1. @method inArray @static @param {Mixed} needle Element to find @param {Array} array @return {Int} Index of the element, or -1 if not found */ var inArray = function(needle, array) { if (array) { if (Array.prototype.indexOf) { return Array.prototype.indexOf.call(array, needle); } for (var i = 0, length = array.length; i < length; i++) { if (array[i] === needle) { return i; } } } return -1; }; /** Returns elements of first array if they are not present in second. And false - otherwise. @private @method arrayDiff @param {Array} needles @param {Array} array @return {Array|Boolean} */ var arrayDiff = function(needles, array) { var diff = []; if (typeOf(needles) !== 'array') { needles = [needles]; } if (typeOf(array) !== 'array') { array = [array]; } for (var i in needles) { if (inArray(needles[i], array) === -1) { diff.push(needles[i]); } } return diff.length ? diff : false; }; /** Find intersection of two arrays. @private @method arrayIntersect @param {Array} array1 @param {Array} array2 @return {Array} Intersection of two arrays or null if there is none */ var arrayIntersect = function(array1, array2) { var result = []; each(array1, function(item) { if (inArray(item, array2) !== -1) { result.push(item); } }); return result.length ? result : null; }; /** Forces anything into an array. @method toArray @static @param {Object} obj Object with length field. @return {Array} Array object containing all items. */ var toArray = function(obj) { var i, arr = []; for (i = 0; i < obj.length; i++) { arr[i] = obj[i]; } return arr; }; /** Generates an unique ID. The only way a user would be able to get the same ID is if the two persons at the same exact millisecond manage to get the same 5 random numbers between 0-65535; it also uses a counter so each ID is guaranteed to be unique for the given page. It is more probable for the earth to be hit with an asteroid. @method guid @static @param {String} prefix to prepend (by default 'o' will be prepended). @method guid @return {String} Virtually unique id. */ var guid = (function() { var counter = 0; return function(prefix) { var guid = new Date().getTime().toString(32), i; for (i = 0; i < 5; i++) { guid += Math.floor(Math.random() * 65535).toString(32); } return (prefix || 'o_') + guid + (counter++).toString(32); }; }()); /** Trims white spaces around the string @method trim @static @param {String} str @return {String} */ var trim = function(str) { if (!str) { return str; } return String.prototype.trim ? String.prototype.trim.call(str) : str.toString().replace(/^\s*/, '').replace(/\s*$/, ''); }; /** Parses the specified size string into a byte value. For example 10kb becomes 10240. @method parseSizeStr @static @param {String/Number} size String to parse or number to just pass through. @return {Number} Size in bytes. */ var parseSizeStr = function(size) { if (typeof(size) !== 'string') { return size; } var muls = { t: 1099511627776, g: 1073741824, m: 1048576, k: 1024 }, mul; size = /^([0-9\.]+)([tmgk]?)$/.exec(size.toLowerCase().replace(/[^0-9\.tmkg]/g, '')); mul = size[2]; size = +size[1]; if (muls.hasOwnProperty(mul)) { size *= muls[mul]; } return Math.floor(size); }; /** * Pseudo sprintf implementation - simple way to replace tokens with specified values. * * @param {String} str String with tokens * @return {String} String with replaced tokens */ var sprintf = function(str) { var args = [].slice.call(arguments, 1); return str.replace(/%[a-z]/g, function() { var value = args.shift(); return typeOf(value) !== 'undefined' ? value : ''; }); }; return { guid: guid, typeOf: typeOf, extend: extend, each: each, isEmptyObj: isEmptyObj, inSeries: inSeries, inParallel: inParallel, inArray: inArray, arrayDiff: arrayDiff, arrayIntersect: arrayIntersect, toArray: toArray, trim: trim, sprintf: sprintf, parseSizeStr: parseSizeStr }; }); // Included from: src/javascript/core/utils/Env.js /** * Env.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/core/utils/Env", [ "moxie/core/utils/Basic" ], function(Basic) { /** * UAParser.js v0.7.7 * Lightweight JavaScript-based User-Agent string parser * https://github.com/faisalman/ua-parser-js * * Copyright © 2012-2015 Faisal Salman * Dual licensed under GPLv2 & MIT */ var UAParser = (function (undefined) { ////////////// // Constants ///////////// var EMPTY = '', UNKNOWN = '?', FUNC_TYPE = 'function', UNDEF_TYPE = 'undefined', OBJ_TYPE = 'object', MAJOR = 'major', MODEL = 'model', NAME = 'name', TYPE = 'type', VENDOR = 'vendor', VERSION = 'version', ARCHITECTURE= 'architecture', CONSOLE = 'console', MOBILE = 'mobile', TABLET = 'tablet'; /////////// // Helper ////////// var util = { has : function (str1, str2) { return str2.toLowerCase().indexOf(str1.toLowerCase()) !== -1; }, lowerize : function (str) { return str.toLowerCase(); } }; /////////////// // Map helper ////////////// var mapper = { rgx : function () { // loop through all regexes maps for (var result, i = 0, j, k, p, q, matches, match, args = arguments; i < args.length; i += 2) { var regex = args[i], // even sequence (0,2,4,..) props = args[i + 1]; // odd sequence (1,3,5,..) // construct object barebones if (typeof(result) === UNDEF_TYPE) { result = {}; for (p in props) { q = props[p]; if (typeof(q) === OBJ_TYPE) { result[q[0]] = undefined; } else { result[q] = undefined; } } } // try matching uastring with regexes for (j = k = 0; j < regex.length; j++) { matches = regex[j].exec(this.getUA()); if (!!matches) { for (p = 0; p < props.length; p++) { match = matches[++k]; q = props[p]; // check if given property is actually array if (typeof(q) === OBJ_TYPE && q.length > 0) { if (q.length == 2) { if (typeof(q[1]) == FUNC_TYPE) { // assign modified match result[q[0]] = q[1].call(this, match); } else { // assign given value, ignore regex match result[q[0]] = q[1]; } } else if (q.length == 3) { // check whether function or regex if (typeof(q[1]) === FUNC_TYPE && !(q[1].exec && q[1].test)) { // call function (usually string mapper) result[q[0]] = match ? q[1].call(this, match, q[2]) : undefined; } else { // sanitize match using given regex result[q[0]] = match ? match.replace(q[1], q[2]) : undefined; } } else if (q.length == 4) { result[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined; } } else { result[q] = match ? match : undefined; } } break; } } if(!!matches) break; // break the loop immediately if match found } return result; }, str : function (str, map) { for (var i in map) { // check if array if (typeof(map[i]) === OBJ_TYPE && map[i].length > 0) { for (var j = 0; j < map[i].length; j++) { if (util.has(map[i][j], str)) { return (i === UNKNOWN) ? undefined : i; } } } else if (util.has(map[i], str)) { return (i === UNKNOWN) ? undefined : i; } } return str; } }; /////////////// // String map ////////////// var maps = { browser : { oldsafari : { major : { '1' : ['/8', '/1', '/3'], '2' : '/4', '?' : '/' }, version : { '1.0' : '/8', '1.2' : '/1', '1.3' : '/3', '2.0' : '/412', '2.0.2' : '/416', '2.0.3' : '/417', '2.0.4' : '/419', '?' : '/' } } }, device : { sprint : { model : { 'Evo Shift 4G' : '7373KT' }, vendor : { 'HTC' : 'APA', 'Sprint' : 'Sprint' } } }, os : { windows : { version : { 'ME' : '4.90', 'NT 3.11' : 'NT3.51', 'NT 4.0' : 'NT4.0', '2000' : 'NT 5.0', 'XP' : ['NT 5.1', 'NT 5.2'], 'Vista' : 'NT 6.0', '7' : 'NT 6.1', '8' : 'NT 6.2', '8.1' : 'NT 6.3', 'RT' : 'ARM' } } } }; ////////////// // Regex map ///////////// var regexes = { browser : [[ // Presto based /(opera\smini)\/([\w\.-]+)/i, // Opera Mini /(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet /(opera).+version\/([\w\.]+)/i, // Opera > 9.80 /(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80 ], [NAME, VERSION], [ /\s(opr)\/([\w\.]+)/i // Opera Webkit ], [[NAME, 'Opera'], VERSION], [ // Mixed /(kindle)\/([\w\.]+)/i, // Kindle /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i, // Lunascape/Maxthon/Netfront/Jasmine/Blazer // Trident based /(avant\s|iemobile|slim|baidu)(?:browser)?[\/\s]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser/Baidu /(?:ms|\()(ie)\s([\w\.]+)/i, // Internet Explorer // Webkit/KHTML based /(rekonq)\/([\w\.]+)*/i, // Rekonq /(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi)\/([\w\.-]+)/i // Chromium/Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron ], [NAME, VERSION], [ /(trident).+rv[:\s]([\w\.]+).+like\sgecko/i // IE11 ], [[NAME, 'IE'], VERSION], [ /(edge)\/((\d+)?[\w\.]+)/i // Microsoft Edge ], [NAME, VERSION], [ /(yabrowser)\/([\w\.]+)/i // Yandex ], [[NAME, 'Yandex'], VERSION], [ /(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon ], [[NAME, /_/g, ' '], VERSION], [ /(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i, // Chrome/OmniWeb/Arora/Tizen/Nokia /(uc\s?browser|qqbrowser)[\/\s]?([\w\.]+)/i // UCBrowser/QQBrowser ], [NAME, VERSION], [ /(dolfin)\/([\w\.]+)/i // Dolphin ], [[NAME, 'Dolphin'], VERSION], [ /((?:android.+)crmo|crios)\/([\w\.]+)/i // Chrome for Android/iOS ], [[NAME, 'Chrome'], VERSION], [ /XiaoMi\/MiuiBrowser\/([\w\.]+)/i // MIUI Browser ], [VERSION, [NAME, 'MIUI Browser']], [ /android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)/i // Android Browser ], [VERSION, [NAME, 'Android Browser']], [ /FBAV\/([\w\.]+);/i // Facebook App for iOS ], [VERSION, [NAME, 'Facebook']], [ /version\/([\w\.]+).+?mobile\/\w+\s(safari)/i // Mobile Safari ], [VERSION, [NAME, 'Mobile Safari']], [ /version\/([\w\.]+).+?(mobile\s?safari|safari)/i // Safari & Safari Mobile ], [VERSION, NAME], [ /webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Safari < 3.0 ], [NAME, [VERSION, mapper.str, maps.browser.oldsafari.version]], [ /(konqueror)\/([\w\.]+)/i, // Konqueror /(webkit|khtml)\/([\w\.]+)/i ], [NAME, VERSION], [ // Gecko based /(navigator|netscape)\/([\w\.-]+)/i // Netscape ], [[NAME, 'Netscape'], VERSION], [ /(swiftfox)/i, // Swiftfox /(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i, // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror /(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i, // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i, // Mozilla // Other /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf)[\/\s]?([\w\.]+)/i, // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf /(links)\s\(([\w\.]+)/i, // Links /(gobrowser)\/?([\w\.]+)*/i, // GoBrowser /(ice\s?browser)\/v?([\w\._]+)/i, // ICE Browser /(mosaic)[\/\s]([\w\.]+)/i // Mosaic ], [NAME, VERSION] ], engine : [[ /windows.+\sedge\/([\w\.]+)/i // EdgeHTML ], [VERSION, [NAME, 'EdgeHTML']], [ /(presto)\/([\w\.]+)/i, // Presto /(webkit|trident|netfront|netsurf|amaya|lynx|w3m)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m /(khtml|tasman|links)[\/\s]\(?([\w\.]+)/i, // KHTML/Tasman/Links /(icab)[\/\s]([23]\.[\d\.]+)/i // iCab ], [NAME, VERSION], [ /rv\:([\w\.]+).*(gecko)/i // Gecko ], [VERSION, NAME] ], os : [[ // Windows based /microsoft\s(windows)\s(vista|xp)/i // Windows (iTunes) ], [NAME, VERSION], [ /(windows)\snt\s6\.2;\s(arm)/i, // Windows RT /(windows\sphone(?:\sos)*|windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i ], [NAME, [VERSION, mapper.str, maps.os.windows.version]], [ /(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i ], [[NAME, 'Windows'], [VERSION, mapper.str, maps.os.windows.version]], [ // Mobile/Embedded OS /\((bb)(10);/i // BlackBerry 10 ], [[NAME, 'BlackBerry'], VERSION], [ /(blackberry)\w*\/?([\w\.]+)*/i, // Blackberry /(tizen)[\/\s]([\w\.]+)/i, // Tizen /(android|webos|palm\os|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i, // Android/WebOS/Palm/QNX/Bada/RIM/MeeGo/Contiki /linux;.+(sailfish);/i // Sailfish OS ], [NAME, VERSION], [ /(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i // Symbian ], [[NAME, 'Symbian'], VERSION], [ /\((series40);/i // Series 40 ], [NAME], [ /mozilla.+\(mobile;.+gecko.+firefox/i // Firefox OS ], [[NAME, 'Firefox OS'], VERSION], [ // Console /(nintendo|playstation)\s([wids3portablevu]+)/i, // Nintendo/Playstation // GNU/Linux based /(mint)[\/\s\(]?(\w+)*/i, // Mint /(mageia|vectorlinux)[;\s]/i, // Mageia/VectorLinux /(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?([\w\.-]+)*/i, // Joli/Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware // Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus /(hurd|linux)\s?([\w\.]+)*/i, // Hurd/Linux /(gnu)\s?([\w\.]+)*/i // GNU ], [NAME, VERSION], [ /(cros)\s[\w]+\s([\w\.]+\w)/i // Chromium OS ], [[NAME, 'Chromium OS'], VERSION],[ // Solaris /(sunos)\s?([\w\.]+\d)*/i // Solaris ], [[NAME, 'Solaris'], VERSION], [ // BSD based /\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i // FreeBSD/NetBSD/OpenBSD/PC-BSD/DragonFly ], [NAME, VERSION],[ /(ip[honead]+)(?:.*os\s*([\w]+)*\slike\smac|;\sopera)/i // iOS ], [[NAME, 'iOS'], [VERSION, /_/g, '.']], [ /(mac\sos\sx)\s?([\w\s\.]+\w)*/i, /(macintosh|mac(?=_powerpc)\s)/i // Mac OS ], [[NAME, 'Mac OS'], [VERSION, /_/g, '.']], [ // Other /((?:open)?solaris)[\/\s-]?([\w\.]+)*/i, // Solaris /(haiku)\s(\w+)/i, // Haiku /(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i, // AIX /(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i, // Plan9/Minix/BeOS/OS2/AmigaOS/MorphOS/RISCOS/OpenVMS /(unix)\s?([\w\.]+)*/i // UNIX ], [NAME, VERSION] ] }; ///////////////// // Constructor //////////////// var UAParser = function (uastring) { var ua = uastring || ((window && window.navigator && window.navigator.userAgent) ? window.navigator.userAgent : EMPTY); this.getBrowser = function () { return mapper.rgx.apply(this, regexes.browser); }; this.getEngine = function () { return mapper.rgx.apply(this, regexes.engine); }; this.getOS = function () { return mapper.rgx.apply(this, regexes.os); }; this.getResult = function() { return { ua : this.getUA(), browser : this.getBrowser(), engine : this.getEngine(), os : this.getOS() }; }; this.getUA = function () { return ua; }; this.setUA = function (uastring) { ua = uastring; return this; }; this.setUA(ua); }; return UAParser; })(); function version_compare(v1, v2, operator) { // From: http://phpjs.org/functions // + original by: Philippe Jausions (http://pear.php.net/user/jausions) // + original by: Aidan Lister (http://aidanlister.com/) // + reimplemented by: Kankrelune (http://www.webfaktory.info/) // + improved by: Brett Zamir (http://brett-zamir.me) // + improved by: Scott Baker // + improved by: Theriault // * example 1: version_compare('8.2.5rc', '8.2.5a'); // * returns 1: 1 // * example 2: version_compare('8.2.50', '8.2.52', '<'); // * returns 2: true // * example 3: version_compare('5.3.0-dev', '5.3.0'); // * returns 3: -1 // * example 4: version_compare('4.1.0.52','4.01.0.51'); // * returns 4: 1 // Important: compare must be initialized at 0. var i = 0, x = 0, compare = 0, // vm maps textual PHP versions to negatives so they're less than 0. // PHP currently defines these as CASE-SENSITIVE. It is important to // leave these as negatives so that they can come before numerical versions // and as if no letters were there to begin with. // (1alpha is < 1 and < 1.1 but > 1dev1) // If a non-numerical value can't be mapped to this table, it receives // -7 as its value. vm = { 'dev': -6, 'alpha': -5, 'a': -5, 'beta': -4, 'b': -4, 'RC': -3, 'rc': -3, '#': -2, 'p': 1, 'pl': 1 }, // This function will be called to prepare each version argument. // It replaces every _, -, and + with a dot. // It surrounds any nonsequence of numbers/dots with dots. // It replaces sequences of dots with a single dot. // version_compare('4..0', '4.0') == 0 // Important: A string of 0 length needs to be converted into a value // even less than an unexisting value in vm (-7), hence [-8]. // It's also important to not strip spaces because of this. // version_compare('', ' ') == 1 prepVersion = function (v) { v = ('' + v).replace(/[_\-+]/g, '.'); v = v.replace(/([^.\d]+)/g, '.$1.').replace(/\.{2,}/g, '.'); return (!v.length ? [-8] : v.split('.')); }, // This converts a version component to a number. // Empty component becomes 0. // Non-numerical component becomes a negative number. // Numerical component becomes itself as an integer. numVersion = function (v) { return !v ? 0 : (isNaN(v) ? vm[v] || -7 : parseInt(v, 10)); }; v1 = prepVersion(v1); v2 = prepVersion(v2); x = Math.max(v1.length, v2.length); for (i = 0; i < x; i++) { if (v1[i] == v2[i]) { continue; } v1[i] = numVersion(v1[i]); v2[i] = numVersion(v2[i]); if (v1[i] < v2[i]) { compare = -1; break; } else if (v1[i] > v2[i]) { compare = 1; break; } } if (!operator) { return compare; } // Important: operator is CASE-SENSITIVE. // "No operator" seems to be treated as "<." // Any other values seem to make the function return null. switch (operator) { case '>': case 'gt': return (compare > 0); case '>=': case 'ge': return (compare >= 0); case '<=': case 'le': return (compare <= 0); case '==': case '=': case 'eq': return (compare === 0); case '<>': case '!=': case 'ne': return (compare !== 0); case '': case '<': case 'lt': return (compare < 0); default: return null; } } var can = (function() { var caps = { define_property: (function() { /* // currently too much extra code required, not exactly worth it try { // as of IE8, getters/setters are supported only on DOM elements var obj = {}; if (Object.defineProperty) { Object.defineProperty(obj, 'prop', { enumerable: true, configurable: true }); return true; } } catch(ex) {} if (Object.prototype.__defineGetter__ && Object.prototype.__defineSetter__) { return true; }*/ return false; }()), create_canvas: (function() { // On the S60 and BB Storm, getContext exists, but always returns undefined // so we actually have to call getContext() to verify // github.com/Modernizr/Modernizr/issues/issue/97/ var el = document.createElement('canvas'); return !!(el.getContext && el.getContext('2d')); }()), return_response_type: function(responseType) { try { if (Basic.inArray(responseType, ['', 'text', 'document']) !== -1) { return true; } else if (window.XMLHttpRequest) { var xhr = new XMLHttpRequest(); xhr.open('get', '/'); // otherwise Gecko throws an exception if ('responseType' in xhr) { xhr.responseType = responseType; // as of 23.0.1271.64, Chrome switched from throwing exception to merely logging it to the console (why? o why?) if (xhr.responseType !== responseType) { return false; } return true; } } } catch (ex) {} return false; }, // ideas for this heavily come from Modernizr (http://modernizr.com/) use_data_uri: (function() { var du = new Image(); du.onload = function() { caps.use_data_uri = (du.width === 1 && du.height === 1); }; setTimeout(function() { du.src = "data:image/gif;base64,R0lGODlhAQABAIAAAP8AAAAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=="; }, 1); return false; }()), use_data_uri_over32kb: function() { // IE8 return caps.use_data_uri && (Env.browser !== 'IE' || Env.version >= 9); }, use_data_uri_of: function(bytes) { return (caps.use_data_uri && bytes < 33000 || caps.use_data_uri_over32kb()); }, use_fileinput: function() { if (navigator.userAgent.match(/(Android (1.0|1.1|1.5|1.6|2.0|2.1))|(Windows Phone (OS 7|8.0))|(XBLWP)|(ZuneWP)|(w(eb)?OSBrowser)|(webOS)|(Kindle\/(1.0|2.0|2.5|3.0))/)) { return false; } var el = document.createElement('input'); el.setAttribute('type', 'file'); return !el.disabled; } }; return function(cap) { var args = [].slice.call(arguments); args.shift(); // shift of cap return Basic.typeOf(caps[cap]) === 'function' ? caps[cap].apply(this, args) : !!caps[cap]; }; }()); var uaResult = new UAParser().getResult(); var Env = { can: can, uaParser: UAParser, browser: uaResult.browser.name, version: uaResult.browser.version, os: uaResult.os.name, // everybody intuitively types it in a lowercase for some reason osVersion: uaResult.os.version, verComp: version_compare, global_event_dispatcher: "moxie.core.EventTarget.instance.dispatchEvent" }; // for backward compatibility // @deprecated Use `Env.os` instead Env.OS = Env.os; if (MXI_DEBUG) { Env.debug = { runtime: true, events: false }; Env.log = function() { function logObj(data) { // TODO: this should recursively print out the object in a pretty way console.appendChild(document.createTextNode(data + "\n")); } var data = arguments[0]; if (Basic.typeOf(data) === 'string') { data = Basic.sprintf.apply(this, arguments); } if (window && window.console && window.console.log) { window.console.log(data); } else if (document) { var console = document.getElementById('moxie-console'); if (!console) { console = document.createElement('pre'); console.id = 'moxie-console'; //console.style.display = 'none'; document.body.appendChild(console); } if (Basic.inArray(Basic.typeOf(data), ['object', 'array']) !== -1) { logObj(data); } else { console.appendChild(document.createTextNode(data + "\n")); } } }; } return Env; }); // Included from: src/javascript/core/I18n.js /** * I18n.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/core/I18n", [ "moxie/core/utils/Basic" ], function(Basic) { var i18n = {}; return { /** * Extends the language pack object with new items. * * @param {Object} pack Language pack items to add. * @return {Object} Extended language pack object. */ addI18n: function(pack) { return Basic.extend(i18n, pack); }, /** * Translates the specified string by checking for the english string in the language pack lookup. * * @param {String} str String to look for. * @return {String} Translated string or the input string if it wasn't found. */ translate: function(str) { return i18n[str] || str; }, /** * Shortcut for translate function * * @param {String} str String to look for. * @return {String} Translated string or the input string if it wasn't found. */ _: function(str) { return this.translate(str); }, /** * Pseudo sprintf implementation - simple way to replace tokens with specified values. * * @param {String} str String with tokens * @return {String} String with replaced tokens */ sprintf: function(str) { var args = [].slice.call(arguments, 1); return str.replace(/%[a-z]/g, function() { var value = args.shift(); return Basic.typeOf(value) !== 'undefined' ? value : ''; }); } }; }); // Included from: src/javascript/core/utils/Mime.js /** * Mime.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/core/utils/Mime", [ "moxie/core/utils/Basic", "moxie/core/I18n" ], function(Basic, I18n) { var mimeData = "" + "application/msword,doc dot," + "application/pdf,pdf," + "application/pgp-signature,pgp," + "application/postscript,ps ai eps," + "application/rtf,rtf," + "application/vnd.ms-excel,xls xlb," + "application/vnd.ms-powerpoint,ppt pps pot," + "application/zip,zip," + "application/x-shockwave-flash,swf swfl," + "application/vnd.openxmlformats-officedocument.wordprocessingml.document,docx," + "application/vnd.openxmlformats-officedocument.wordprocessingml.template,dotx," + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,xlsx," + "application/vnd.openxmlformats-officedocument.presentationml.presentation,pptx," + "application/vnd.openxmlformats-officedocument.presentationml.template,potx," + "application/vnd.openxmlformats-officedocument.presentationml.slideshow,ppsx," + "application/x-javascript,js," + "application/json,json," + "audio/mpeg,mp3 mpga mpega mp2," + "audio/x-wav,wav," + "audio/x-m4a,m4a," + "audio/ogg,oga ogg," + "audio/aiff,aiff aif," + "audio/flac,flac," + "audio/aac,aac," + "audio/ac3,ac3," + "audio/x-ms-wma,wma," + "image/bmp,bmp," + "image/gif,gif," + "image/jpeg,jpg jpeg jpe," + "image/photoshop,psd," + "image/png,png," + "image/svg+xml,svg svgz," + "image/tiff,tiff tif," + "text/plain,asc txt text diff log," + "text/html,htm html xhtml," + "text/css,css," + "text/csv,csv," + "text/rtf,rtf," + "video/mpeg,mpeg mpg mpe m2v," + "video/quicktime,qt mov," + "video/mp4,mp4," + "video/x-m4v,m4v," + "video/x-flv,flv," + "video/x-ms-wmv,wmv," + "video/avi,avi," + "video/webm,webm," + "video/3gpp,3gpp 3gp," + "video/3gpp2,3g2," + "video/vnd.rn-realvideo,rv," + "video/ogg,ogv," + "video/x-matroska,mkv," + "application/vnd.oasis.opendocument.formula-template,otf," + "application/octet-stream,exe"; var Mime = { mimes: {}, extensions: {}, // Parses the default mime types string into a mimes and extensions lookup maps addMimeType: function (mimeData) { var items = mimeData.split(/,/), i, ii, ext; for (i = 0; i < items.length; i += 2) { ext = items[i + 1].split(/ /); // extension to mime lookup for (ii = 0; ii < ext.length; ii++) { this.mimes[ext[ii]] = items[i]; } // mime to extension lookup this.extensions[items[i]] = ext; } }, extList2mimes: function (filters, addMissingExtensions) { var self = this, ext, i, ii, type, mimes = []; // convert extensions to mime types list for (i = 0; i < filters.length; i++) { ext = filters[i].extensions.split(/\s*,\s*/); for (ii = 0; ii < ext.length; ii++) { // if there's an asterisk in the list, then accept attribute is not required if (ext[ii] === '*') { return []; } type = self.mimes[ext[ii]]; if (type && Basic.inArray(type, mimes) === -1) { mimes.push(type); } // future browsers should filter by extension, finally if (addMissingExtensions && /^\w+$/.test(ext[ii])) { mimes.push('.' + ext[ii]); } else if (!type) { // if we have no type in our map, then accept all return []; } } } return mimes; }, mimes2exts: function(mimes) { var self = this, exts = []; Basic.each(mimes, function(mime) { if (mime === '*') { exts = []; return false; } // check if this thing looks like mime type var m = mime.match(/^(\w+)\/(\*|\w+)$/); if (m) { if (m[2] === '*') { // wildcard mime type detected Basic.each(self.extensions, function(arr, mime) { if ((new RegExp('^' + m[1] + '/')).test(mime)) { [].push.apply(exts, self.extensions[mime]); } }); } else if (self.extensions[mime]) { [].push.apply(exts, self.extensions[mime]); } } }); return exts; }, mimes2extList: function(mimes) { var accept = [], exts = []; if (Basic.typeOf(mimes) === 'string') { mimes = Basic.trim(mimes).split(/\s*,\s*/); } exts = this.mimes2exts(mimes); accept.push({ title: I18n.translate('Files'), extensions: exts.length ? exts.join(',') : '*' }); // save original mimes string accept.mimes = mimes; return accept; }, getFileExtension: function(fileName) { var matches = fileName && fileName.match(/\.([^.]+)$/); if (matches) { return matches[1].toLowerCase(); } return ''; }, getFileMime: function(fileName) { return this.mimes[this.getFileExtension(fileName)] || ''; } }; Mime.addMimeType(mimeData); return Mime; }); // Included from: src/javascript/core/utils/Dom.js /** * Dom.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/utils/Dom', ['moxie/core/utils/Env'], function(Env) { /** Get DOM Element by it's id. @method get @for Utils @param {String} id Identifier of the DOM Element @return {DOMElement} */ var get = function(id) { if (typeof id !== 'string') { return id; } return document.getElementById(id); }; /** Checks if specified DOM element has specified class. @method hasClass @static @param {Object} obj DOM element like object to add handler to. @param {String} name Class name */ var hasClass = function(obj, name) { if (!obj.className) { return false; } var regExp = new RegExp("(^|\\s+)"+name+"(\\s+|$)"); return regExp.test(obj.className); }; /** Adds specified className to specified DOM element. @method addClass @static @param {Object} obj DOM element like object to add handler to. @param {String} name Class name */ var addClass = function(obj, name) { if (!hasClass(obj, name)) { obj.className = !obj.className ? name : obj.className.replace(/\s+$/, '') + ' ' + name; } }; /** Removes specified className from specified DOM element. @method removeClass @static @param {Object} obj DOM element like object to add handler to. @param {String} name Class name */ var removeClass = function(obj, name) { if (obj.className) { var regExp = new RegExp("(^|\\s+)"+name+"(\\s+|$)"); obj.className = obj.className.replace(regExp, function($0, $1, $2) { return $1 === ' ' && $2 === ' ' ? ' ' : ''; }); } }; /** Returns a given computed style of a DOM element. @method getStyle @static @param {Object} obj DOM element like object. @param {String} name Style you want to get from the DOM element */ var getStyle = function(obj, name) { if (obj.currentStyle) { return obj.currentStyle[name]; } else if (window.getComputedStyle) { return window.getComputedStyle(obj, null)[name]; } }; /** Returns the absolute x, y position of an Element. The position will be returned in a object with x, y fields. @method getPos @static @param {Element} node HTML element or element id to get x, y position from. @param {Element} root Optional root element to stop calculations at. @return {object} Absolute position of the specified element object with x, y fields. */ var getPos = function(node, root) { var x = 0, y = 0, parent, doc = document, nodeRect, rootRect; node = node; root = root || doc.body; // Returns the x, y cordinate for an element on IE 6 and IE 7 function getIEPos(node) { var bodyElm, rect, x = 0, y = 0; if (node) { rect = node.getBoundingClientRect(); bodyElm = doc.compatMode === "CSS1Compat" ? doc.documentElement : doc.body; x = rect.left + bodyElm.scrollLeft; y = rect.top + bodyElm.scrollTop; } return { x : x, y : y }; } // Use getBoundingClientRect on IE 6 and IE 7 but not on IE 8 in standards mode if (node && node.getBoundingClientRect && Env.browser === 'IE' && (!doc.documentMode || doc.documentMode < 8)) { nodeRect = getIEPos(node); rootRect = getIEPos(root); return { x : nodeRect.x - rootRect.x, y : nodeRect.y - rootRect.y }; } parent = node; while (parent && parent != root && parent.nodeType) { x += parent.offsetLeft || 0; y += parent.offsetTop || 0; parent = parent.offsetParent; } parent = node.parentNode; while (parent && parent != root && parent.nodeType) { x -= parent.scrollLeft || 0; y -= parent.scrollTop || 0; parent = parent.parentNode; } return { x : x, y : y }; }; /** Returns the size of the specified node in pixels. @method getSize @static @param {Node} node Node to get the size of. @return {Object} Object with a w and h property. */ var getSize = function(node) { return { w : node.offsetWidth || node.clientWidth, h : node.offsetHeight || node.clientHeight }; }; return { get: get, hasClass: hasClass, addClass: addClass, removeClass: removeClass, getStyle: getStyle, getPos: getPos, getSize: getSize }; }); // Included from: src/javascript/core/Exceptions.js /** * Exceptions.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/Exceptions', [ 'moxie/core/utils/Basic' ], function(Basic) { function _findKey(obj, value) { var key; for (key in obj) { if (obj[key] === value) { return key; } } return null; } return { RuntimeError: (function() { var namecodes = { NOT_INIT_ERR: 1, NOT_SUPPORTED_ERR: 9, JS_ERR: 4 }; function RuntimeError(code) { this.code = code; this.name = _findKey(namecodes, code); this.message = this.name + ": RuntimeError " + this.code; } Basic.extend(RuntimeError, namecodes); RuntimeError.prototype = Error.prototype; return RuntimeError; }()), OperationNotAllowedException: (function() { function OperationNotAllowedException(code) { this.code = code; this.name = 'OperationNotAllowedException'; } Basic.extend(OperationNotAllowedException, { NOT_ALLOWED_ERR: 1 }); OperationNotAllowedException.prototype = Error.prototype; return OperationNotAllowedException; }()), ImageError: (function() { var namecodes = { WRONG_FORMAT: 1, MAX_RESOLUTION_ERR: 2, INVALID_META_ERR: 3 }; function ImageError(code) { this.code = code; this.name = _findKey(namecodes, code); this.message = this.name + ": ImageError " + this.code; } Basic.extend(ImageError, namecodes); ImageError.prototype = Error.prototype; return ImageError; }()), FileException: (function() { var namecodes = { NOT_FOUND_ERR: 1, SECURITY_ERR: 2, ABORT_ERR: 3, NOT_READABLE_ERR: 4, ENCODING_ERR: 5, NO_MODIFICATION_ALLOWED_ERR: 6, INVALID_STATE_ERR: 7, SYNTAX_ERR: 8 }; function FileException(code) { this.code = code; this.name = _findKey(namecodes, code); this.message = this.name + ": FileException " + this.code; } Basic.extend(FileException, namecodes); FileException.prototype = Error.prototype; return FileException; }()), DOMException: (function() { var namecodes = { INDEX_SIZE_ERR: 1, DOMSTRING_SIZE_ERR: 2, HIERARCHY_REQUEST_ERR: 3, WRONG_DOCUMENT_ERR: 4, INVALID_CHARACTER_ERR: 5, NO_DATA_ALLOWED_ERR: 6, NO_MODIFICATION_ALLOWED_ERR: 7, NOT_FOUND_ERR: 8, NOT_SUPPORTED_ERR: 9, INUSE_ATTRIBUTE_ERR: 10, INVALID_STATE_ERR: 11, SYNTAX_ERR: 12, INVALID_MODIFICATION_ERR: 13, NAMESPACE_ERR: 14, INVALID_ACCESS_ERR: 15, VALIDATION_ERR: 16, TYPE_MISMATCH_ERR: 17, SECURITY_ERR: 18, NETWORK_ERR: 19, ABORT_ERR: 20, URL_MISMATCH_ERR: 21, QUOTA_EXCEEDED_ERR: 22, TIMEOUT_ERR: 23, INVALID_NODE_TYPE_ERR: 24, DATA_CLONE_ERR: 25 }; function DOMException(code) { this.code = code; this.name = _findKey(namecodes, code); this.message = this.name + ": DOMException " + this.code; } Basic.extend(DOMException, namecodes); DOMException.prototype = Error.prototype; return DOMException; }()), EventException: (function() { function EventException(code) { this.code = code; this.name = 'EventException'; } Basic.extend(EventException, { UNSPECIFIED_EVENT_TYPE_ERR: 0 }); EventException.prototype = Error.prototype; return EventException; }()) }; }); // Included from: src/javascript/core/EventTarget.js /** * EventTarget.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/EventTarget', [ 'moxie/core/utils/Env', 'moxie/core/Exceptions', 'moxie/core/utils/Basic' ], function(Env, x, Basic) { /** Parent object for all event dispatching components and objects @class EventTarget @constructor EventTarget */ function EventTarget() { // hash of event listeners by object uid var eventpool = {}; Basic.extend(this, { /** Unique id of the event dispatcher, usually overriden by children @property uid @type String */ uid: null, /** Can be called from within a child in order to acquire uniqie id in automated manner @method init */ init: function() { if (!this.uid) { this.uid = Basic.guid('uid_'); } }, /** Register a handler to a specific event dispatched by the object @method addEventListener @param {String} type Type or basically a name of the event to subscribe to @param {Function} fn Callback function that will be called when event happens @param {Number} [priority=0] Priority of the event handler - handlers with higher priorities will be called first @param {Object} [scope=this] A scope to invoke event handler in */ addEventListener: function(type, fn, priority, scope) { var self = this, list; // without uid no event handlers can be added, so make sure we got one if (!this.hasOwnProperty('uid')) { this.uid = Basic.guid('uid_'); } type = Basic.trim(type); if (/\s/.test(type)) { // multiple event types were passed for one handler Basic.each(type.split(/\s+/), function(type) { self.addEventListener(type, fn, priority, scope); }); return; } type = type.toLowerCase(); priority = parseInt(priority, 10) || 0; list = eventpool[this.uid] && eventpool[this.uid][type] || []; list.push({fn : fn, priority : priority, scope : scope || this}); if (!eventpool[this.uid]) { eventpool[this.uid] = {}; } eventpool[this.uid][type] = list; }, /** Check if any handlers were registered to the specified event @method hasEventListener @param {String} type Type or basically a name of the event to check @return {Mixed} Returns a handler if it was found and false, if - not */ hasEventListener: function(type) { var list = type ? eventpool[this.uid] && eventpool[this.uid][type] : eventpool[this.uid]; return list ? list : false; }, /** Unregister the handler from the event, or if former was not specified - unregister all handlers @method removeEventListener @param {String} type Type or basically a name of the event @param {Function} [fn] Handler to unregister */ removeEventListener: function(type, fn) { type = type.toLowerCase(); var list = eventpool[this.uid] && eventpool[this.uid][type], i; if (list) { if (fn) { for (i = list.length - 1; i >= 0; i--) { if (list[i].fn === fn) { list.splice(i, 1); break; } } } else { list = []; } // delete event list if it has become empty if (!list.length) { delete eventpool[this.uid][type]; // and object specific entry in a hash if it has no more listeners attached if (Basic.isEmptyObj(eventpool[this.uid])) { delete eventpool[this.uid]; } } } }, /** Remove all event handlers from the object @method removeAllEventListeners */ removeAllEventListeners: function() { if (eventpool[this.uid]) { delete eventpool[this.uid]; } }, /** Dispatch the event @method dispatchEvent @param {String/Object} Type of event or event object to dispatch @param {Mixed} [...] Variable number of arguments to be passed to a handlers @return {Boolean} true by default and false if any handler returned false */ dispatchEvent: function(type) { var uid, list, args, tmpEvt, evt = {}, result = true, undef; if (Basic.typeOf(type) !== 'string') { // we can't use original object directly (because of Silverlight) tmpEvt = type; if (Basic.typeOf(tmpEvt.type) === 'string') { type = tmpEvt.type; if (tmpEvt.total !== undef && tmpEvt.loaded !== undef) { // progress event evt.total = tmpEvt.total; evt.loaded = tmpEvt.loaded; } evt.async = tmpEvt.async || false; } else { throw new x.EventException(x.EventException.UNSPECIFIED_EVENT_TYPE_ERR); } } // check if event is meant to be dispatched on an object having specific uid if (type.indexOf('::') !== -1) { (function(arr) { uid = arr[0]; type = arr[1]; }(type.split('::'))); } else { uid = this.uid; } type = type.toLowerCase(); list = eventpool[uid] && eventpool[uid][type]; if (list) { // sort event list by prority list.sort(function(a, b) { return b.priority - a.priority; }); args = [].slice.call(arguments); // first argument will be pseudo-event object args.shift(); evt.type = type; args.unshift(evt); if (MXI_DEBUG && Env.debug.events) { Env.log("Event '%s' fired on %u", evt.type, uid); } // Dispatch event to all listeners var queue = []; Basic.each(list, function(handler) { // explicitly set the target, otherwise events fired from shims do not get it args[0].target = handler.scope; // if event is marked as async, detach the handler if (evt.async) { queue.push(function(cb) { setTimeout(function() { cb(handler.fn.apply(handler.scope, args) === false); }, 1); }); } else { queue.push(function(cb) { cb(handler.fn.apply(handler.scope, args) === false); // if handler returns false stop propagation }); } }); if (queue.length) { Basic.inSeries(queue, function(err) { result = !err; }); } } return result; }, /** Alias for addEventListener @method bind @protected */ bind: function() { this.addEventListener.apply(this, arguments); }, /** Alias for removeEventListener @method unbind @protected */ unbind: function() { this.removeEventListener.apply(this, arguments); }, /** Alias for removeAllEventListeners @method unbindAll @protected */ unbindAll: function() { this.removeAllEventListeners.apply(this, arguments); }, /** Alias for dispatchEvent @method trigger @protected */ trigger: function() { return this.dispatchEvent.apply(this, arguments); }, /** Handle properties of on[event] type. @method handleEventProps @private */ handleEventProps: function(dispatches) { var self = this; this.bind(dispatches.join(' '), function(e) { var prop = 'on' + e.type.toLowerCase(); if (Basic.typeOf(this[prop]) === 'function') { this[prop].apply(this, arguments); } }); // object must have defined event properties, even if it doesn't make use of them Basic.each(dispatches, function(prop) { prop = 'on' + prop.toLowerCase(prop); if (Basic.typeOf(self[prop]) === 'undefined') { self[prop] = null; } }); } }); } EventTarget.instance = new EventTarget(); return EventTarget; }); // Included from: src/javascript/runtime/Runtime.js /** * Runtime.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/runtime/Runtime', [ "moxie/core/utils/Env", "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/EventTarget" ], function(Env, Basic, Dom, EventTarget) { var runtimeConstructors = {}, runtimes = {}; /** Common set of methods and properties for every runtime instance @class Runtime @param {Object} options @param {String} type Sanitized name of the runtime @param {Object} [caps] Set of capabilities that differentiate specified runtime @param {Object} [modeCaps] Set of capabilities that do require specific operational mode @param {String} [preferredMode='browser'] Preferred operational mode to choose if no required capabilities were requested */ function Runtime(options, type, caps, modeCaps, preferredMode) { /** Dispatched when runtime is initialized and ready. Results in RuntimeInit on a connected component. @event Init */ /** Dispatched when runtime fails to initialize. Results in RuntimeError on a connected component. @event Error */ var self = this , _shim , _uid = Basic.guid(type + '_') , defaultMode = preferredMode || 'browser' ; options = options || {}; // register runtime in private hash runtimes[_uid] = this; /** Default set of capabilities, which can be redifined later by specific runtime @private @property caps @type Object */ caps = Basic.extend({ // Runtime can: // provide access to raw binary data of the file access_binary: false, // provide access to raw binary data of the image (image extension is optional) access_image_binary: false, // display binary data as thumbs for example display_media: false, // make cross-domain requests do_cors: false, // accept files dragged and dropped from the desktop drag_and_drop: false, // filter files in selection dialog by their extensions filter_by_extension: true, // resize image (and manipulate it raw data of any file in general) resize_image: false, // periodically report how many bytes of total in the file were uploaded (loaded) report_upload_progress: false, // provide access to the headers of http response return_response_headers: false, // support response of specific type, which should be passed as an argument // e.g. runtime.can('return_response_type', 'blob') return_response_type: false, // return http status code of the response return_status_code: true, // send custom http header with the request send_custom_headers: false, // pick up the files from a dialog select_file: false, // select whole folder in file browse dialog select_folder: false, // select multiple files at once in file browse dialog select_multiple: true, // send raw binary data, that is generated after image resizing or manipulation of other kind send_binary_string: false, // send cookies with http request and therefore retain session send_browser_cookies: true, // send data formatted as multipart/form-data send_multipart: true, // slice the file or blob to smaller parts slice_blob: false, // upload file without preloading it to memory, stream it out directly from disk stream_upload: false, // programmatically trigger file browse dialog summon_file_dialog: false, // upload file of specific size, size should be passed as argument // e.g. runtime.can('upload_filesize', '500mb') upload_filesize: true, // initiate http request with specific http method, method should be passed as argument // e.g. runtime.can('use_http_method', 'put') use_http_method: true }, caps); // default to the mode that is compatible with preferred caps if (options.preferred_caps) { defaultMode = Runtime.getMode(modeCaps, options.preferred_caps, defaultMode); } if (MXI_DEBUG && Env.debug.runtime) { Env.log("\tdefault mode: %s", defaultMode); } // small extension factory here (is meant to be extended with actual extensions constructors) _shim = (function() { var objpool = {}; return { exec: function(uid, comp, fn, args) { if (_shim[comp]) { if (!objpool[uid]) { objpool[uid] = { context: this, instance: new _shim[comp]() }; } if (objpool[uid].instance[fn]) { return objpool[uid].instance[fn].apply(this, args); } } }, removeInstance: function(uid) { delete objpool[uid]; }, removeAllInstances: function() { var self = this; Basic.each(objpool, function(obj, uid) { if (Basic.typeOf(obj.instance.destroy) === 'function') { obj.instance.destroy.call(obj.context); } self.removeInstance(uid); }); } }; }()); // public methods Basic.extend(this, { /** Specifies whether runtime instance was initialized or not @property initialized @type {Boolean} @default false */ initialized: false, // shims require this flag to stop initialization retries /** Unique ID of the runtime @property uid @type {String} */ uid: _uid, /** Runtime type (e.g. flash, html5, etc) @property type @type {String} */ type: type, /** Runtime (not native one) may operate in browser or client mode. @property mode @private @type {String|Boolean} current mode or false, if none possible */ mode: Runtime.getMode(modeCaps, (options.required_caps), defaultMode), /** id of the DOM container for the runtime (if available) @property shimid @type {String} */ shimid: _uid + '_container', /** Number of connected clients. If equal to zero, runtime can be destroyed @property clients @type {Number} */ clients: 0, /** Runtime initialization options @property options @type {Object} */ options: options, /** Checks if the runtime has specific capability @method can @param {String} cap Name of capability to check @param {Mixed} [value] If passed, capability should somehow correlate to the value @param {Object} [refCaps] Set of capabilities to check the specified cap against (defaults to internal set) @return {Boolean} true if runtime has such capability and false, if - not */ can: function(cap, value) { var refCaps = arguments[2] || caps; // if cap var is a comma-separated list of caps, convert it to object (key/value) if (Basic.typeOf(cap) === 'string' && Basic.typeOf(value) === 'undefined') { cap = Runtime.parseCaps(cap); } if (Basic.typeOf(cap) === 'object') { for (var key in cap) { if (!this.can(key, cap[key], refCaps)) { return false; } } return true; } // check the individual cap if (Basic.typeOf(refCaps[cap]) === 'function') { return refCaps[cap].call(this, value); } else { return (value === refCaps[cap]); } }, /** Returns container for the runtime as DOM element @method getShimContainer @return {DOMElement} */ getShimContainer: function() { var container, shimContainer = Dom.get(this.shimid); // if no container for shim, create one if (!shimContainer) { container = this.options.container ? Dom.get(this.options.container) : document.body; // create shim container and insert it at an absolute position into the outer container shimContainer = document.createElement('div'); shimContainer.id = this.shimid; shimContainer.className = 'moxie-shim moxie-shim-' + this.type; Basic.extend(shimContainer.style, { position: 'absolute', top: '0px', left: '0px', width: '1px', height: '1px', overflow: 'hidden' }); container.appendChild(shimContainer); container = null; } return shimContainer; }, /** Returns runtime as DOM element (if appropriate) @method getShim @return {DOMElement} */ getShim: function() { return _shim; }, /** Invokes a method within the runtime itself (might differ across the runtimes) @method shimExec @param {Mixed} [] @protected @return {Mixed} Depends on the action and component */ shimExec: function(component, action) { var args = [].slice.call(arguments, 2); return self.getShim().exec.call(this, this.uid, component, action, args); }, /** Operaional interface that is used by components to invoke specific actions on the runtime (is invoked in the scope of component) @method exec @param {Mixed} []* @protected @return {Mixed} Depends on the action and component */ exec: function(component, action) { // this is called in the context of component, not runtime var args = [].slice.call(arguments, 2); if (self[component] && self[component][action]) { return self[component][action].apply(this, args); } return self.shimExec.apply(this, arguments); }, /** Destroys the runtime (removes all events and deletes DOM structures) @method destroy */ destroy: function() { if (!self) { return; // obviously already destroyed } var shimContainer = Dom.get(this.shimid); if (shimContainer) { shimContainer.parentNode.removeChild(shimContainer); } if (_shim) { _shim.removeAllInstances(); } this.unbindAll(); delete runtimes[this.uid]; this.uid = null; // mark this runtime as destroyed _uid = self = _shim = shimContainer = null; } }); // once we got the mode, test against all caps if (this.mode && options.required_caps && !this.can(options.required_caps)) { this.mode = false; } } /** Default order to try different runtime types @property order @type String @static */ Runtime.order = 'html5,html4'; /** Retrieves runtime from private hash by it's uid @method getRuntime @private @static @param {String} uid Unique identifier of the runtime @return {Runtime|Boolean} Returns runtime, if it exists and false, if - not */ Runtime.getRuntime = function(uid) { return runtimes[uid] ? runtimes[uid] : false; }; /** Register constructor for the Runtime of new (or perhaps modified) type @method addConstructor @static @param {String} type Runtime type (e.g. flash, html5, etc) @param {Function} construct Constructor for the Runtime type */ Runtime.addConstructor = function(type, constructor) { constructor.prototype = EventTarget.instance; runtimeConstructors[type] = constructor; }; /** Get the constructor for the specified type. method getConstructor @static @param {String} type Runtime type (e.g. flash, html5, etc) @return {Function} Constructor for the Runtime type */ Runtime.getConstructor = function(type) { return runtimeConstructors[type] || null; }; /** Get info about the runtime (uid, type, capabilities) @method getInfo @static @param {String} uid Unique identifier of the runtime @return {Mixed} Info object or null if runtime doesn't exist */ Runtime.getInfo = function(uid) { var runtime = Runtime.getRuntime(uid); if (runtime) { return { uid: runtime.uid, type: runtime.type, mode: runtime.mode, can: function() { return runtime.can.apply(runtime, arguments); } }; } return null; }; /** Convert caps represented by a comma-separated string to the object representation. @method parseCaps @static @param {String} capStr Comma-separated list of capabilities @return {Object} */ Runtime.parseCaps = function(capStr) { var capObj = {}; if (Basic.typeOf(capStr) !== 'string') { return capStr || {}; } Basic.each(capStr.split(','), function(key) { capObj[key] = true; // we assume it to be - true }); return capObj; }; /** Test the specified runtime for specific capabilities. @method can @static @param {String} type Runtime type (e.g. flash, html5, etc) @param {String|Object} caps Set of capabilities to check @return {Boolean} Result of the test */ Runtime.can = function(type, caps) { var runtime , constructor = Runtime.getConstructor(type) , mode ; if (constructor) { runtime = new constructor({ required_caps: caps }); mode = runtime.mode; runtime.destroy(); return !!mode; } return false; }; /** Figure out a runtime that supports specified capabilities. @method thatCan @static @param {String|Object} caps Set of capabilities to check @param {String} [runtimeOrder] Comma-separated list of runtimes to check against @return {String} Usable runtime identifier or null */ Runtime.thatCan = function(caps, runtimeOrder) { var types = (runtimeOrder || Runtime.order).split(/\s*,\s*/); for (var i in types) { if (Runtime.can(types[i], caps)) { return types[i]; } } return null; }; /** Figure out an operational mode for the specified set of capabilities. @method getMode @static @param {Object} modeCaps Set of capabilities that depend on particular runtime mode @param {Object} [requiredCaps] Supplied set of capabilities to find operational mode for @param {String|Boolean} [defaultMode='browser'] Default mode to use @return {String|Boolean} Compatible operational mode */ Runtime.getMode = function(modeCaps, requiredCaps, defaultMode) { var mode = null; if (Basic.typeOf(defaultMode) === 'undefined') { // only if not specified defaultMode = 'browser'; } if (requiredCaps && !Basic.isEmptyObj(modeCaps)) { // loop over required caps and check if they do require the same mode Basic.each(requiredCaps, function(value, cap) { if (modeCaps.hasOwnProperty(cap)) { var capMode = modeCaps[cap](value); // make sure we always have an array if (typeof(capMode) === 'string') { capMode = [capMode]; } if (!mode) { mode = capMode; } else if (!(mode = Basic.arrayIntersect(mode, capMode))) { // if cap requires conflicting mode - runtime cannot fulfill required caps if (MXI_DEBUG && Env.debug.runtime) { Env.log("\t\t%c: %v (conflicting mode requested: %s)", cap, value, capMode); } return (mode = false); } } if (MXI_DEBUG && Env.debug.runtime) { Env.log("\t\t%c: %v (compatible modes: %s)", cap, value, mode); } }); if (mode) { return Basic.inArray(defaultMode, mode) !== -1 ? defaultMode : mode[0]; } else if (mode === false) { return false; } } return defaultMode; }; /** Capability check that always returns true @private @static @return {True} */ Runtime.capTrue = function() { return true; }; /** Capability check that always returns false @private @static @return {False} */ Runtime.capFalse = function() { return false; }; /** Evaluate the expression to boolean value and create a function that always returns it. @private @static @param {Mixed} expr Expression to evaluate @return {Function} Function returning the result of evaluation */ Runtime.capTest = function(expr) { return function() { return !!expr; }; }; return Runtime; }); // Included from: src/javascript/runtime/RuntimeClient.js /** * RuntimeClient.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/runtime/RuntimeClient', [ 'moxie/core/utils/Env', 'moxie/core/Exceptions', 'moxie/core/utils/Basic', 'moxie/runtime/Runtime' ], function(Env, x, Basic, Runtime) { /** Set of methods and properties, required by a component to acquire ability to connect to a runtime @class RuntimeClient */ return function RuntimeClient() { var runtime; Basic.extend(this, { /** Connects to the runtime specified by the options. Will either connect to existing runtime or create a new one. Increments number of clients connected to the specified runtime. @private @method connectRuntime @param {Mixed} options Can be a runtme uid or a set of key-value pairs defining requirements and pre-requisites */ connectRuntime: function(options) { var comp = this, ruid; function initialize(items) { var type, constructor; // if we ran out of runtimes if (!items.length) { comp.trigger('RuntimeError', new x.RuntimeError(x.RuntimeError.NOT_INIT_ERR)); runtime = null; return; } type = items.shift().toLowerCase(); constructor = Runtime.getConstructor(type); if (!constructor) { initialize(items); return; } if (MXI_DEBUG && Env.debug.runtime) { Env.log("Trying runtime: %s", type); Env.log(options); } // try initializing the runtime runtime = new constructor(options); runtime.bind('Init', function() { // mark runtime as initialized runtime.initialized = true; if (MXI_DEBUG && Env.debug.runtime) { Env.log("Runtime '%s' initialized", runtime.type); } // jailbreak ... setTimeout(function() { runtime.clients++; // this will be triggered on component comp.trigger('RuntimeInit', runtime); }, 1); }); runtime.bind('Error', function() { if (MXI_DEBUG && Env.debug.runtime) { Env.log("Runtime '%s' failed to initialize", runtime.type); } runtime.destroy(); // runtime cannot destroy itself from inside at a right moment, thus we do it here initialize(items); }); /*runtime.bind('Exception', function() { });*/ if (MXI_DEBUG && Env.debug.runtime) { Env.log("\tselected mode: %s", runtime.mode); } // check if runtime managed to pick-up operational mode if (!runtime.mode) { runtime.trigger('Error'); return; } runtime.init(); } // check if a particular runtime was requested if (Basic.typeOf(options) === 'string') { ruid = options; } else if (Basic.typeOf(options.ruid) === 'string') { ruid = options.ruid; } if (ruid) { runtime = Runtime.getRuntime(ruid); if (runtime) { runtime.clients++; return runtime; } else { // there should be a runtime and there's none - weird case throw new x.RuntimeError(x.RuntimeError.NOT_INIT_ERR); } } // initialize a fresh one, that fits runtime list and required features best initialize((options.runtime_order || Runtime.order).split(/\s*,\s*/)); }, /** Disconnects from the runtime. Decrements number of clients connected to the specified runtime. @private @method disconnectRuntime */ disconnectRuntime: function() { if (runtime && --runtime.clients <= 0) { runtime.destroy(); } // once the component is disconnected, it shouldn't have access to the runtime runtime = null; }, /** Returns the runtime to which the client is currently connected. @method getRuntime @return {Runtime} Runtime or null if client is not connected */ getRuntime: function() { if (runtime && runtime.uid) { return runtime; } return runtime = null; // make sure we do not leave zombies rambling around }, /** Handy shortcut to safely invoke runtime extension methods. @private @method exec @return {Mixed} Whatever runtime extension method returns */ exec: function() { if (runtime) { return runtime.exec.apply(this, arguments); } return null; } }); }; }); // Included from: src/javascript/file/FileInput.js /** * FileInput.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/FileInput', [ 'moxie/core/utils/Basic', 'moxie/core/utils/Env', 'moxie/core/utils/Mime', 'moxie/core/utils/Dom', 'moxie/core/Exceptions', 'moxie/core/EventTarget', 'moxie/core/I18n', 'moxie/runtime/Runtime', 'moxie/runtime/RuntimeClient' ], function(Basic, Env, Mime, Dom, x, EventTarget, I18n, Runtime, RuntimeClient) { /** Provides a convenient way to create cross-browser file-picker. Generates file selection dialog on click, converts selected files to _File_ objects, to be used in conjunction with _Image_, preloaded in memory with _FileReader_ or uploaded to a server through _XMLHttpRequest_. @class FileInput @constructor @extends EventTarget @uses RuntimeClient @param {Object|String|DOMElement} options If options is string or node, argument is considered as _browse\_button_. @param {String|DOMElement} options.browse_button DOM Element to turn into file picker. @param {Array} [options.accept] Array of mime types to accept. By default accepts all. @param {String} [options.file='file'] Name of the file field (not the filename). @param {Boolean} [options.multiple=false] Enable selection of multiple files. @param {Boolean} [options.directory=false] Turn file input into the folder input (cannot be both at the same time). @param {String|DOMElement} [options.container] DOM Element to use as a container for file-picker. Defaults to parentNode for _browse\_button_. @param {Object|String} [options.required_caps] Set of required capabilities, that chosen runtime must support. @example */ var dispatches = [ /** Dispatched when runtime is connected and file-picker is ready to be used. @event ready @param {Object} event */ 'ready', /** Dispatched right after [ready](#event_ready) event, and whenever [refresh()](#method_refresh) is invoked. Check [corresponding documentation entry](#method_refresh) for more info. @event refresh @param {Object} event */ /** Dispatched when selection of files in the dialog is complete. @event change @param {Object} event */ 'change', 'cancel', // TODO: might be useful /** Dispatched when mouse cursor enters file-picker area. Can be used to style element accordingly. @event mouseenter @param {Object} event */ 'mouseenter', /** Dispatched when mouse cursor leaves file-picker area. Can be used to style element accordingly. @event mouseleave @param {Object} event */ 'mouseleave', /** Dispatched when functional mouse button is pressed on top of file-picker area. @event mousedown @param {Object} event */ 'mousedown', /** Dispatched when functional mouse button is released on top of file-picker area. @event mouseup @param {Object} event */ 'mouseup' ]; function FileInput(options) { if (MXI_DEBUG) { Env.log("Instantiating FileInput..."); } var self = this, container, browseButton, defaults; // if flat argument passed it should be browse_button id if (Basic.inArray(Basic.typeOf(options), ['string', 'node']) !== -1) { options = { browse_button : options }; } // this will help us to find proper default container browseButton = Dom.get(options.browse_button); if (!browseButton) { // browse button is required throw new x.DOMException(x.DOMException.NOT_FOUND_ERR); } // figure out the options defaults = { accept: [{ title: I18n.translate('All Files'), extensions: '*' }], name: 'file', multiple: false, required_caps: false, container: browseButton.parentNode || document.body }; options = Basic.extend({}, defaults, options); // convert to object representation if (typeof(options.required_caps) === 'string') { options.required_caps = Runtime.parseCaps(options.required_caps); } // normalize accept option (could be list of mime types or array of title/extensions pairs) if (typeof(options.accept) === 'string') { options.accept = Mime.mimes2extList(options.accept); } container = Dom.get(options.container); // make sure we have container if (!container) { container = document.body; } // make container relative, if it's not if (Dom.getStyle(container, 'position') === 'static') { container.style.position = 'relative'; } container = browseButton = null; // IE RuntimeClient.call(self); Basic.extend(self, { /** Unique id of the component @property uid @protected @readOnly @type {String} @default UID */ uid: Basic.guid('uid_'), /** Unique id of the connected runtime, if any. @property ruid @protected @type {String} */ ruid: null, /** Unique id of the runtime container. Useful to get hold of it for various manipulations. @property shimid @protected @type {String} */ shimid: null, /** Array of selected mOxie.File objects @property files @type {Array} @default null */ files: null, /** Initializes the file-picker, connects it to runtime and dispatches event ready when done. @method init */ init: function() { self.bind('RuntimeInit', function(e, runtime) { self.ruid = runtime.uid; self.shimid = runtime.shimid; self.bind("Ready", function() { self.trigger("Refresh"); }, 999); // re-position and resize shim container self.bind('Refresh', function() { var pos, size, browseButton, shimContainer; browseButton = Dom.get(options.browse_button); shimContainer = Dom.get(runtime.shimid); // do not use runtime.getShimContainer(), since it will create container if it doesn't exist if (browseButton) { pos = Dom.getPos(browseButton, Dom.get(options.container)); size = Dom.getSize(browseButton); if (shimContainer) { Basic.extend(shimContainer.style, { top : pos.y + 'px', left : pos.x + 'px', width : size.w + 'px', height : size.h + 'px' }); } } shimContainer = browseButton = null; }); runtime.exec.call(self, 'FileInput', 'init', options); }); // runtime needs: options.required_features, options.runtime_order and options.container self.connectRuntime(Basic.extend({}, options, { required_caps: { select_file: true } })); }, /** Disables file-picker element, so that it doesn't react to mouse clicks. @method disable @param {Boolean} [state=true] Disable component if - true, enable if - false */ disable: function(state) { var runtime = this.getRuntime(); if (runtime) { runtime.exec.call(this, 'FileInput', 'disable', Basic.typeOf(state) === 'undefined' ? true : state); } }, /** Reposition and resize dialog trigger to match the position and size of browse_button element. @method refresh */ refresh: function() { self.trigger("Refresh"); }, /** Destroy component. @method destroy */ destroy: function() { var runtime = this.getRuntime(); if (runtime) { runtime.exec.call(this, 'FileInput', 'destroy'); this.disconnectRuntime(); } if (Basic.typeOf(this.files) === 'array') { // no sense in leaving associated files behind Basic.each(this.files, function(file) { file.destroy(); }); } this.files = null; this.unbindAll(); } }); this.handleEventProps(dispatches); } FileInput.prototype = EventTarget.instance; return FileInput; }); // Included from: src/javascript/core/utils/Encode.js /** * Encode.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/utils/Encode', [], function() { /** Encode string with UTF-8 @method utf8_encode @for Utils @static @param {String} str String to encode @return {String} UTF-8 encoded string */ var utf8_encode = function(str) { return unescape(encodeURIComponent(str)); }; /** Decode UTF-8 encoded string @method utf8_decode @static @param {String} str String to decode @return {String} Decoded string */ var utf8_decode = function(str_data) { return decodeURIComponent(escape(str_data)); }; /** Decode Base64 encoded string (uses browser's default method if available), from: https://raw.github.com/kvz/phpjs/master/functions/url/base64_decode.js @method atob @static @param {String} data String to decode @return {String} Decoded string */ var atob = function(data, utf8) { if (typeof(window.atob) === 'function') { return utf8 ? utf8_decode(window.atob(data)) : window.atob(data); } // http://kevin.vanzonneveld.net // + original by: Tyler Akins (http://rumkin.com) // + improved by: Thunder.m // + input by: Aman Gupta // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + bugfixed by: Onno Marsman // + bugfixed by: Pellentesque Malesuada // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + input by: Brett Zamir (http://brett-zamir.me) // + bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // * example 1: base64_decode('S2V2aW4gdmFuIFpvbm5ldmVsZA=='); // * returns 1: 'Kevin van Zonneveld' // mozilla has this native // - but breaks in 2.0.0.12! //if (typeof this.window.atob == 'function') { // return atob(data); //} var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, dec = "", tmp_arr = []; if (!data) { return data; } data += ''; do { // unpack four hexets into three octets using index points in b64 h1 = b64.indexOf(data.charAt(i++)); h2 = b64.indexOf(data.charAt(i++)); h3 = b64.indexOf(data.charAt(i++)); h4 = b64.indexOf(data.charAt(i++)); bits = h1 << 18 | h2 << 12 | h3 << 6 | h4; o1 = bits >> 16 & 0xff; o2 = bits >> 8 & 0xff; o3 = bits & 0xff; if (h3 == 64) { tmp_arr[ac++] = String.fromCharCode(o1); } else if (h4 == 64) { tmp_arr[ac++] = String.fromCharCode(o1, o2); } else { tmp_arr[ac++] = String.fromCharCode(o1, o2, o3); } } while (i < data.length); dec = tmp_arr.join(''); return utf8 ? utf8_decode(dec) : dec; }; /** Base64 encode string (uses browser's default method if available), from: https://raw.github.com/kvz/phpjs/master/functions/url/base64_encode.js @method btoa @static @param {String} data String to encode @return {String} Base64 encoded string */ var btoa = function(data, utf8) { if (utf8) { data = utf8_encode(data); } if (typeof(window.btoa) === 'function') { return window.btoa(data); } // http://kevin.vanzonneveld.net // + original by: Tyler Akins (http://rumkin.com) // + improved by: Bayron Guevara // + improved by: Thunder.m // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + bugfixed by: Pellentesque Malesuada // + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: Rafał Kukawski (http://kukawski.pl) // * example 1: base64_encode('Kevin van Zonneveld'); // * returns 1: 'S2V2aW4gdmFuIFpvbm5ldmVsZA==' // mozilla has this native // - but breaks in 2.0.0.12! var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, enc = "", tmp_arr = []; if (!data) { return data; } do { // pack three octets into four hexets o1 = data.charCodeAt(i++); o2 = data.charCodeAt(i++); o3 = data.charCodeAt(i++); bits = o1 << 16 | o2 << 8 | o3; h1 = bits >> 18 & 0x3f; h2 = bits >> 12 & 0x3f; h3 = bits >> 6 & 0x3f; h4 = bits & 0x3f; // use hexets to index into b64, and append result to encoded string tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4); } while (i < data.length); enc = tmp_arr.join(''); var r = data.length % 3; return (r ? enc.slice(0, r - 3) : enc) + '==='.slice(r || 3); }; return { utf8_encode: utf8_encode, utf8_decode: utf8_decode, atob: atob, btoa: btoa }; }); // Included from: src/javascript/file/Blob.js /** * Blob.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/Blob', [ 'moxie/core/utils/Basic', 'moxie/core/utils/Encode', 'moxie/runtime/RuntimeClient' ], function(Basic, Encode, RuntimeClient) { var blobpool = {}; /** @class Blob @constructor @param {String} ruid Unique id of the runtime, to which this blob belongs to @param {Object} blob Object "Native" blob object, as it is represented in the runtime */ function Blob(ruid, blob) { function _sliceDetached(start, end, type) { var blob, data = blobpool[this.uid]; if (Basic.typeOf(data) !== 'string' || !data.length) { return null; // or throw exception } blob = new Blob(null, { type: type, size: end - start }); blob.detach(data.substr(start, blob.size)); return blob; } RuntimeClient.call(this); if (ruid) { this.connectRuntime(ruid); } if (!blob) { blob = {}; } else if (Basic.typeOf(blob) === 'string') { // dataUrl or binary string blob = { data: blob }; } Basic.extend(this, { /** Unique id of the component @property uid @type {String} */ uid: blob.uid || Basic.guid('uid_'), /** Unique id of the connected runtime, if falsy, then runtime will have to be initialized before this Blob can be used, modified or sent @property ruid @type {String} */ ruid: ruid, /** Size of blob @property size @type {Number} @default 0 */ size: blob.size || 0, /** Mime type of blob @property type @type {String} @default '' */ type: blob.type || '', /** @method slice @param {Number} [start=0] */ slice: function(start, end, type) { if (this.isDetached()) { return _sliceDetached.apply(this, arguments); } return this.getRuntime().exec.call(this, 'Blob', 'slice', this.getSource(), start, end, type); }, /** Returns "native" blob object (as it is represented in connected runtime) or null if not found @method getSource @return {Blob} Returns "native" blob object or null if not found */ getSource: function() { if (!blobpool[this.uid]) { return null; } return blobpool[this.uid]; }, /** Detaches blob from any runtime that it depends on and initialize with standalone value @method detach @protected @param {DOMString} [data=''] Standalone value */ detach: function(data) { if (this.ruid) { this.getRuntime().exec.call(this, 'Blob', 'destroy'); this.disconnectRuntime(); this.ruid = null; } data = data || ''; // if dataUrl, convert to binary string if (data.substr(0, 5) == 'data:') { var base64Offset = data.indexOf(';base64,'); this.type = data.substring(5, base64Offset); data = Encode.atob(data.substring(base64Offset + 8)); } this.size = data.length; blobpool[this.uid] = data; }, /** Checks if blob is standalone (detached of any runtime) @method isDetached @protected @return {Boolean} */ isDetached: function() { return !this.ruid && Basic.typeOf(blobpool[this.uid]) === 'string'; }, /** Destroy Blob and free any resources it was using @method destroy */ destroy: function() { this.detach(); delete blobpool[this.uid]; } }); if (blob.data) { this.detach(blob.data); // auto-detach if payload has been passed } else { blobpool[this.uid] = blob; } } return Blob; }); // Included from: src/javascript/file/File.js /** * File.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/File', [ 'moxie/core/utils/Basic', 'moxie/core/utils/Mime', 'moxie/file/Blob' ], function(Basic, Mime, Blob) { /** @class File @extends Blob @constructor @param {String} ruid Unique id of the runtime, to which this blob belongs to @param {Object} file Object "Native" file object, as it is represented in the runtime */ function File(ruid, file) { if (!file) { // avoid extra errors in case we overlooked something file = {}; } Blob.apply(this, arguments); if (!this.type) { this.type = Mime.getFileMime(file.name); } // sanitize file name or generate new one var name; if (file.name) { name = file.name.replace(/\\/g, '/'); name = name.substr(name.lastIndexOf('/') + 1); } else if (this.type) { var prefix = this.type.split('/')[0]; name = Basic.guid((prefix !== '' ? prefix : 'file') + '_'); if (Mime.extensions[this.type]) { name += '.' + Mime.extensions[this.type][0]; // append proper extension if possible } } Basic.extend(this, { /** File name @property name @type {String} @default UID */ name: name || Basic.guid('file_'), /** Relative path to the file inside a directory @property relativePath @type {String} @default '' */ relativePath: '', /** Date of last modification @property lastModifiedDate @type {String} @default now */ lastModifiedDate: file.lastModifiedDate || (new Date()).toLocaleString() // Thu Aug 23 2012 19:40:00 GMT+0400 (GET) }); } File.prototype = Blob.prototype; return File; }); // Included from: src/javascript/file/FileDrop.js /** * FileDrop.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/FileDrop', [ 'moxie/core/I18n', 'moxie/core/utils/Dom', 'moxie/core/Exceptions', 'moxie/core/utils/Basic', 'moxie/core/utils/Env', 'moxie/file/File', 'moxie/runtime/RuntimeClient', 'moxie/core/EventTarget', 'moxie/core/utils/Mime' ], function(I18n, Dom, x, Basic, Env, File, RuntimeClient, EventTarget, Mime) { /** Turn arbitrary DOM element to a drop zone accepting files. Converts selected files to _File_ objects, to be used in conjunction with _Image_, preloaded in memory with _FileReader_ or uploaded to a server through _XMLHttpRequest_. @example
    Drop files here

    @class FileDrop @constructor @extends EventTarget @uses RuntimeClient @param {Object|String} options If options has typeof string, argument is considered as options.drop_zone @param {String|DOMElement} options.drop_zone DOM Element to turn into a drop zone @param {Array} [options.accept] Array of mime types to accept. By default accepts all @param {Object|String} [options.required_caps] Set of required capabilities, that chosen runtime must support */ var dispatches = [ /** Dispatched when runtime is connected and drop zone is ready to accept files. @event ready @param {Object} event */ 'ready', /** Dispatched when dragging cursor enters the drop zone. @event dragenter @param {Object} event */ 'dragenter', /** Dispatched when dragging cursor leaves the drop zone. @event dragleave @param {Object} event */ 'dragleave', /** Dispatched when file is dropped onto the drop zone. @event drop @param {Object} event */ 'drop', /** Dispatched if error occurs. @event error @param {Object} event */ 'error' ]; function FileDrop(options) { if (MXI_DEBUG) { Env.log("Instantiating FileDrop..."); } var self = this, defaults; // if flat argument passed it should be drop_zone id if (typeof(options) === 'string') { options = { drop_zone : options }; } // figure out the options defaults = { accept: [{ title: I18n.translate('All Files'), extensions: '*' }], required_caps: { drag_and_drop: true } }; options = typeof(options) === 'object' ? Basic.extend({}, defaults, options) : defaults; // this will help us to find proper default container options.container = Dom.get(options.drop_zone) || document.body; // make container relative, if it is not if (Dom.getStyle(options.container, 'position') === 'static') { options.container.style.position = 'relative'; } // normalize accept option (could be list of mime types or array of title/extensions pairs) if (typeof(options.accept) === 'string') { options.accept = Mime.mimes2extList(options.accept); } RuntimeClient.call(self); Basic.extend(self, { uid: Basic.guid('uid_'), ruid: null, files: null, init: function() { self.bind('RuntimeInit', function(e, runtime) { self.ruid = runtime.uid; runtime.exec.call(self, 'FileDrop', 'init', options); self.dispatchEvent('ready'); }); // runtime needs: options.required_features, options.runtime_order and options.container self.connectRuntime(options); // throws RuntimeError }, destroy: function() { var runtime = this.getRuntime(); if (runtime) { runtime.exec.call(this, 'FileDrop', 'destroy'); this.disconnectRuntime(); } this.files = null; this.unbindAll(); } }); this.handleEventProps(dispatches); } FileDrop.prototype = EventTarget.instance; return FileDrop; }); // Included from: src/javascript/file/FileReader.js /** * FileReader.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/FileReader', [ 'moxie/core/utils/Basic', 'moxie/core/utils/Encode', 'moxie/core/Exceptions', 'moxie/core/EventTarget', 'moxie/file/Blob', 'moxie/runtime/RuntimeClient' ], function(Basic, Encode, x, EventTarget, Blob, RuntimeClient) { /** Utility for preloading o.Blob/o.File objects in memory. By design closely follows [W3C FileReader](http://www.w3.org/TR/FileAPI/#dfn-filereader) interface. Where possible uses native FileReader, where - not falls back to shims. @class FileReader @constructor FileReader @extends EventTarget @uses RuntimeClient */ var dispatches = [ /** Dispatched when the read starts. @event loadstart @param {Object} event */ 'loadstart', /** Dispatched while reading (and decoding) blob, and reporting partial Blob data (progess.loaded/progress.total). @event progress @param {Object} event */ 'progress', /** Dispatched when the read has successfully completed. @event load @param {Object} event */ 'load', /** Dispatched when the read has been aborted. For instance, by invoking the abort() method. @event abort @param {Object} event */ 'abort', /** Dispatched when the read has failed. @event error @param {Object} event */ 'error', /** Dispatched when the request has completed (either in success or failure). @event loadend @param {Object} event */ 'loadend' ]; function FileReader() { RuntimeClient.call(this); Basic.extend(this, { /** UID of the component instance. @property uid @type {String} */ uid: Basic.guid('uid_'), /** Contains current state of FileReader object. Can take values of FileReader.EMPTY, FileReader.LOADING and FileReader.DONE. @property readyState @type {Number} @default FileReader.EMPTY */ readyState: FileReader.EMPTY, /** Result of the successful read operation. @property result @type {String} */ result: null, /** Stores the error of failed asynchronous read operation. @property error @type {DOMError} */ error: null, /** Initiates reading of File/Blob object contents to binary string. @method readAsBinaryString @param {Blob|File} blob Object to preload */ readAsBinaryString: function(blob) { _read.call(this, 'readAsBinaryString', blob); }, /** Initiates reading of File/Blob object contents to dataURL string. @method readAsDataURL @param {Blob|File} blob Object to preload */ readAsDataURL: function(blob) { _read.call(this, 'readAsDataURL', blob); }, /** Initiates reading of File/Blob object contents to string. @method readAsText @param {Blob|File} blob Object to preload */ readAsText: function(blob) { _read.call(this, 'readAsText', blob); }, /** Aborts preloading process. @method abort */ abort: function() { this.result = null; if (Basic.inArray(this.readyState, [FileReader.EMPTY, FileReader.DONE]) !== -1) { return; } else if (this.readyState === FileReader.LOADING) { this.readyState = FileReader.DONE; } this.exec('FileReader', 'abort'); this.trigger('abort'); this.trigger('loadend'); }, /** Destroy component and release resources. @method destroy */ destroy: function() { this.abort(); this.exec('FileReader', 'destroy'); this.disconnectRuntime(); this.unbindAll(); } }); // uid must already be assigned this.handleEventProps(dispatches); this.bind('Error', function(e, err) { this.readyState = FileReader.DONE; this.error = err; }, 999); this.bind('Load', function(e) { this.readyState = FileReader.DONE; }, 999); function _read(op, blob) { var self = this; this.trigger('loadstart'); if (this.readyState === FileReader.LOADING) { this.trigger('error', new x.DOMException(x.DOMException.INVALID_STATE_ERR)); this.trigger('loadend'); return; } // if source is not o.Blob/o.File if (!(blob instanceof Blob)) { this.trigger('error', new x.DOMException(x.DOMException.NOT_FOUND_ERR)); this.trigger('loadend'); return; } this.result = null; this.readyState = FileReader.LOADING; if (blob.isDetached()) { var src = blob.getSource(); switch (op) { case 'readAsText': case 'readAsBinaryString': this.result = src; break; case 'readAsDataURL': this.result = 'data:' + blob.type + ';base64,' + Encode.btoa(src); break; } this.readyState = FileReader.DONE; this.trigger('load'); this.trigger('loadend'); } else { this.connectRuntime(blob.ruid); this.exec('FileReader', 'read', op, blob); } } } /** Initial FileReader state @property EMPTY @type {Number} @final @static @default 0 */ FileReader.EMPTY = 0; /** FileReader switches to this state when it is preloading the source @property LOADING @type {Number} @final @static @default 1 */ FileReader.LOADING = 1; /** Preloading is complete, this is a final state @property DONE @type {Number} @final @static @default 2 */ FileReader.DONE = 2; FileReader.prototype = EventTarget.instance; return FileReader; }); // Included from: src/javascript/core/utils/Url.js /** * Url.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/utils/Url', [], function() { /** Parse url into separate components and fill in absent parts with parts from current url, based on https://raw.github.com/kvz/phpjs/master/functions/url/parse_url.js @method parseUrl @for Utils @static @param {String} url Url to parse (defaults to empty string if undefined) @return {Object} Hash containing extracted uri components */ var parseUrl = function(url, currentUrl) { var key = ['source', 'scheme', 'authority', 'userInfo', 'user', 'pass', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'fragment'] , i = key.length , ports = { http: 80, https: 443 } , uri = {} , regex = /^(?:([^:\/?#]+):)?(?:\/\/()(?:(?:()(?:([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?))?()(?:(()(?:(?:[^?#\/]*\/)*)()(?:[^?#]*))(?:\\?([^#]*))?(?:#(.*))?)/ , m = regex.exec(url || '') ; while (i--) { if (m[i]) { uri[key[i]] = m[i]; } } // when url is relative, we set the origin and the path ourselves if (!uri.scheme) { // come up with defaults if (!currentUrl || typeof(currentUrl) === 'string') { currentUrl = parseUrl(currentUrl || document.location.href); } uri.scheme = currentUrl.scheme; uri.host = currentUrl.host; uri.port = currentUrl.port; var path = ''; // for urls without trailing slash we need to figure out the path if (/^[^\/]/.test(uri.path)) { path = currentUrl.path; // if path ends with a filename, strip it if (/\/[^\/]*\.[^\/]*$/.test(path)) { path = path.replace(/\/[^\/]+$/, '/'); } else { // avoid double slash at the end (see #127) path = path.replace(/\/?$/, '/'); } } uri.path = path + (uri.path || ''); // site may reside at domain.com or domain.com/subdir } if (!uri.port) { uri.port = ports[uri.scheme] || 80; } uri.port = parseInt(uri.port, 10); if (!uri.path) { uri.path = "/"; } delete uri.source; return uri; }; /** Resolve url - among other things will turn relative url to absolute @method resolveUrl @static @param {String|Object} url Either absolute or relative, or a result of parseUrl call @return {String} Resolved, absolute url */ var resolveUrl = function(url) { var ports = { // we ignore default ports http: 80, https: 443 } , urlp = typeof(url) === 'object' ? url : parseUrl(url); ; return urlp.scheme + '://' + urlp.host + (urlp.port !== ports[urlp.scheme] ? ':' + urlp.port : '') + urlp.path + (urlp.query ? urlp.query : ''); }; /** Check if specified url has the same origin as the current document @method hasSameOrigin @param {String|Object} url @return {Boolean} */ var hasSameOrigin = function(url) { function origin(url) { return [url.scheme, url.host, url.port].join('/'); } if (typeof url === 'string') { url = parseUrl(url); } return origin(parseUrl()) === origin(url); }; return { parseUrl: parseUrl, resolveUrl: resolveUrl, hasSameOrigin: hasSameOrigin }; }); // Included from: src/javascript/runtime/RuntimeTarget.js /** * RuntimeTarget.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/runtime/RuntimeTarget', [ 'moxie/core/utils/Basic', 'moxie/runtime/RuntimeClient', "moxie/core/EventTarget" ], function(Basic, RuntimeClient, EventTarget) { /** Instance of this class can be used as a target for the events dispatched by shims, when allowing them onto components is for either reason inappropriate @class RuntimeTarget @constructor @protected @extends EventTarget */ function RuntimeTarget() { this.uid = Basic.guid('uid_'); RuntimeClient.call(this); this.destroy = function() { this.disconnectRuntime(); this.unbindAll(); }; } RuntimeTarget.prototype = EventTarget.instance; return RuntimeTarget; }); // Included from: src/javascript/file/FileReaderSync.js /** * FileReaderSync.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/file/FileReaderSync', [ 'moxie/core/utils/Basic', 'moxie/runtime/RuntimeClient', 'moxie/core/utils/Encode' ], function(Basic, RuntimeClient, Encode) { /** Synchronous FileReader implementation. Something like this is available in WebWorkers environment, here it can be used to read only preloaded blobs/files and only below certain size (not yet sure what that'd be, but probably < 1mb). Not meant to be used directly by user. @class FileReaderSync @private @constructor */ return function() { RuntimeClient.call(this); Basic.extend(this, { uid: Basic.guid('uid_'), readAsBinaryString: function(blob) { return _read.call(this, 'readAsBinaryString', blob); }, readAsDataURL: function(blob) { return _read.call(this, 'readAsDataURL', blob); }, /*readAsArrayBuffer: function(blob) { return _read.call(this, 'readAsArrayBuffer', blob); },*/ readAsText: function(blob) { return _read.call(this, 'readAsText', blob); } }); function _read(op, blob) { if (blob.isDetached()) { var src = blob.getSource(); switch (op) { case 'readAsBinaryString': return src; case 'readAsDataURL': return 'data:' + blob.type + ';base64,' + Encode.btoa(src); case 'readAsText': var txt = ''; for (var i = 0, length = src.length; i < length; i++) { txt += String.fromCharCode(src[i]); } return txt; } } else { var result = this.connectRuntime(blob.ruid).exec.call(this, 'FileReaderSync', 'read', op, blob); this.disconnectRuntime(); return result; } } }; }); // Included from: src/javascript/xhr/FormData.js /** * FormData.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/xhr/FormData", [ "moxie/core/Exceptions", "moxie/core/utils/Basic", "moxie/file/Blob" ], function(x, Basic, Blob) { /** FormData @class FormData @constructor */ function FormData() { var _blob, _fields = []; Basic.extend(this, { /** Append another key-value pair to the FormData object @method append @param {String} name Name for the new field @param {String|Blob|Array|Object} value Value for the field */ append: function(name, value) { var self = this, valueType = Basic.typeOf(value); // according to specs value might be either Blob or String if (value instanceof Blob) { _blob = { name: name, value: value // unfortunately we can only send single Blob in one FormData }; } else if ('array' === valueType) { name += '[]'; Basic.each(value, function(value) { self.append(name, value); }); } else if ('object' === valueType) { Basic.each(value, function(value, key) { self.append(name + '[' + key + ']', value); }); } else if ('null' === valueType || 'undefined' === valueType || 'number' === valueType && isNaN(value)) { self.append(name, "false"); } else { _fields.push({ name: name, value: value.toString() }); } }, /** Checks if FormData contains Blob. @method hasBlob @return {Boolean} */ hasBlob: function() { return !!this.getBlob(); }, /** Retrieves blob. @method getBlob @return {Object} Either Blob if found or null */ getBlob: function() { return _blob && _blob.value || null; }, /** Retrieves blob field name. @method getBlobName @return {String} Either Blob field name or null */ getBlobName: function() { return _blob && _blob.name || null; }, /** Loop over the fields in FormData and invoke the callback for each of them. @method each @param {Function} cb Callback to call for each field */ each: function(cb) { Basic.each(_fields, function(field) { cb(field.value, field.name); }); if (_blob) { cb(_blob.value, _blob.name); } }, destroy: function() { _blob = null; _fields = []; } }); } return FormData; }); // Included from: src/javascript/xhr/XMLHttpRequest.js /** * XMLHttpRequest.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/xhr/XMLHttpRequest", [ "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/core/EventTarget", "moxie/core/utils/Encode", "moxie/core/utils/Url", "moxie/runtime/Runtime", "moxie/runtime/RuntimeTarget", "moxie/file/Blob", "moxie/file/FileReaderSync", "moxie/xhr/FormData", "moxie/core/utils/Env", "moxie/core/utils/Mime" ], function(Basic, x, EventTarget, Encode, Url, Runtime, RuntimeTarget, Blob, FileReaderSync, FormData, Env, Mime) { var httpCode = { 100: 'Continue', 101: 'Switching Protocols', 102: 'Processing', 200: 'OK', 201: 'Created', 202: 'Accepted', 203: 'Non-Authoritative Information', 204: 'No Content', 205: 'Reset Content', 206: 'Partial Content', 207: 'Multi-Status', 226: 'IM Used', 300: 'Multiple Choices', 301: 'Moved Permanently', 302: 'Found', 303: 'See Other', 304: 'Not Modified', 305: 'Use Proxy', 306: 'Reserved', 307: 'Temporary Redirect', 400: 'Bad Request', 401: 'Unauthorized', 402: 'Payment Required', 403: 'Forbidden', 404: 'Not Found', 405: 'Method Not Allowed', 406: 'Not Acceptable', 407: 'Proxy Authentication Required', 408: 'Request Timeout', 409: 'Conflict', 410: 'Gone', 411: 'Length Required', 412: 'Precondition Failed', 413: 'Request Entity Too Large', 414: 'Request-URI Too Long', 415: 'Unsupported Media Type', 416: 'Requested Range Not Satisfiable', 417: 'Expectation Failed', 422: 'Unprocessable Entity', 423: 'Locked', 424: 'Failed Dependency', 426: 'Upgrade Required', 500: 'Internal Server Error', 501: 'Not Implemented', 502: 'Bad Gateway', 503: 'Service Unavailable', 504: 'Gateway Timeout', 505: 'HTTP Version Not Supported', 506: 'Variant Also Negotiates', 507: 'Insufficient Storage', 510: 'Not Extended' }; function XMLHttpRequestUpload() { this.uid = Basic.guid('uid_'); } XMLHttpRequestUpload.prototype = EventTarget.instance; /** Implementation of XMLHttpRequest @class XMLHttpRequest @constructor @uses RuntimeClient @extends EventTarget */ var dispatches = [ 'loadstart', 'progress', 'abort', 'error', 'load', 'timeout', 'loadend' // readystatechange (for historical reasons) ]; var NATIVE = 1, RUNTIME = 2; function XMLHttpRequest() { var self = this, // this (together with _p() @see below) is here to gracefully upgrade to setter/getter syntax where possible props = { /** The amount of milliseconds a request can take before being terminated. Initially zero. Zero means there is no timeout. @property timeout @type Number @default 0 */ timeout: 0, /** Current state, can take following values: UNSENT (numeric value 0) The object has been constructed. OPENED (numeric value 1) The open() method has been successfully invoked. During this state request headers can be set using setRequestHeader() and the request can be made using the send() method. HEADERS_RECEIVED (numeric value 2) All redirects (if any) have been followed and all HTTP headers of the final response have been received. Several response members of the object are now available. LOADING (numeric value 3) The response entity body is being received. DONE (numeric value 4) @property readyState @type Number @default 0 (UNSENT) */ readyState: XMLHttpRequest.UNSENT, /** True when user credentials are to be included in a cross-origin request. False when they are to be excluded in a cross-origin request and when cookies are to be ignored in its response. Initially false. @property withCredentials @type Boolean @default false */ withCredentials: false, /** Returns the HTTP status code. @property status @type Number @default 0 */ status: 0, /** Returns the HTTP status text. @property statusText @type String */ statusText: "", /** Returns the response type. Can be set to change the response type. Values are: the empty string (default), "arraybuffer", "blob", "document", "json", and "text". @property responseType @type String */ responseType: "", /** Returns the document response entity body. Throws an "InvalidStateError" exception if responseType is not the empty string or "document". @property responseXML @type Document */ responseXML: null, /** Returns the text response entity body. Throws an "InvalidStateError" exception if responseType is not the empty string or "text". @property responseText @type String */ responseText: null, /** Returns the response entity body (http://www.w3.org/TR/XMLHttpRequest/#response-entity-body). Can become: ArrayBuffer, Blob, Document, JSON, Text @property response @type Mixed */ response: null }, _async = true, _url, _method, _headers = {}, _user, _password, _encoding = null, _mimeType = null, // flags _sync_flag = false, _send_flag = false, _upload_events_flag = false, _upload_complete_flag = false, _error_flag = false, _same_origin_flag = false, // times _start_time, _timeoutset_time, _finalMime = null, _finalCharset = null, _options = {}, _xhr, _responseHeaders = '', _responseHeadersBag ; Basic.extend(this, props, { /** Unique id of the component @property uid @type String */ uid: Basic.guid('uid_'), /** Target for Upload events @property upload @type XMLHttpRequestUpload */ upload: new XMLHttpRequestUpload(), /** Sets the request method, request URL, synchronous flag, request username, and request password. Throws a "SyntaxError" exception if one of the following is true: method is not a valid HTTP method. url cannot be resolved. url contains the "user:password" format in the userinfo production. Throws a "SecurityError" exception if method is a case-insensitive match for CONNECT, TRACE or TRACK. Throws an "InvalidAccessError" exception if one of the following is true: Either user or password is passed as argument and the origin of url does not match the XMLHttpRequest origin. There is an associated XMLHttpRequest document and either the timeout attribute is not zero, the withCredentials attribute is true, or the responseType attribute is not the empty string. @method open @param {String} method HTTP method to use on request @param {String} url URL to request @param {Boolean} [async=true] If false request will be done in synchronous manner. Asynchronous by default. @param {String} [user] Username to use in HTTP authentication process on server-side @param {String} [password] Password to use in HTTP authentication process on server-side */ open: function(method, url, async, user, password) { var urlp; // first two arguments are required if (!method || !url) { throw new x.DOMException(x.DOMException.SYNTAX_ERR); } // 2 - check if any code point in method is higher than U+00FF or after deflating method it does not match the method if (/[\u0100-\uffff]/.test(method) || Encode.utf8_encode(method) !== method) { throw new x.DOMException(x.DOMException.SYNTAX_ERR); } // 3 if (!!~Basic.inArray(method.toUpperCase(), ['CONNECT', 'DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT', 'TRACE', 'TRACK'])) { _method = method.toUpperCase(); } // 4 - allowing these methods poses a security risk if (!!~Basic.inArray(_method, ['CONNECT', 'TRACE', 'TRACK'])) { throw new x.DOMException(x.DOMException.SECURITY_ERR); } // 5 url = Encode.utf8_encode(url); // 6 - Resolve url relative to the XMLHttpRequest base URL. If the algorithm returns an error, throw a "SyntaxError". urlp = Url.parseUrl(url); _same_origin_flag = Url.hasSameOrigin(urlp); // 7 - manually build up absolute url _url = Url.resolveUrl(url); // 9-10, 12-13 if ((user || password) && !_same_origin_flag) { throw new x.DOMException(x.DOMException.INVALID_ACCESS_ERR); } _user = user || urlp.user; _password = password || urlp.pass; // 11 _async = async || true; if (_async === false && (_p('timeout') || _p('withCredentials') || _p('responseType') !== "")) { throw new x.DOMException(x.DOMException.INVALID_ACCESS_ERR); } // 14 - terminate abort() // 15 - terminate send() // 18 _sync_flag = !_async; _send_flag = false; _headers = {}; _reset.call(this); // 19 _p('readyState', XMLHttpRequest.OPENED); // 20 this.dispatchEvent('readystatechange'); }, /** Appends an header to the list of author request headers, or if header is already in the list of author request headers, combines its value with value. Throws an "InvalidStateError" exception if the state is not OPENED or if the send() flag is set. Throws a "SyntaxError" exception if header is not a valid HTTP header field name or if value is not a valid HTTP header field value. @method setRequestHeader @param {String} header @param {String|Number} value */ setRequestHeader: function(header, value) { var uaHeaders = [ // these headers are controlled by the user agent "accept-charset", "accept-encoding", "access-control-request-headers", "access-control-request-method", "connection", "content-length", "cookie", "cookie2", "content-transfer-encoding", "date", "expect", "host", "keep-alive", "origin", "referer", "te", "trailer", "transfer-encoding", "upgrade", "user-agent", "via" ]; // 1-2 if (_p('readyState') !== XMLHttpRequest.OPENED || _send_flag) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 3 if (/[\u0100-\uffff]/.test(header) || Encode.utf8_encode(header) !== header) { throw new x.DOMException(x.DOMException.SYNTAX_ERR); } // 4 /* this step is seemingly bypassed in browsers, probably to allow various unicode characters in header values if (/[\u0100-\uffff]/.test(value) || Encode.utf8_encode(value) !== value) { throw new x.DOMException(x.DOMException.SYNTAX_ERR); }*/ header = Basic.trim(header).toLowerCase(); // setting of proxy-* and sec-* headers is prohibited by spec if (!!~Basic.inArray(header, uaHeaders) || /^(proxy\-|sec\-)/.test(header)) { return false; } // camelize // browsers lowercase header names (at least for custom ones) // header = header.replace(/\b\w/g, function($1) { return $1.toUpperCase(); }); if (!_headers[header]) { _headers[header] = value; } else { // http://tools.ietf.org/html/rfc2616#section-4.2 (last paragraph) _headers[header] += ', ' + value; } return true; }, /** Returns all headers from the response, with the exception of those whose field name is Set-Cookie or Set-Cookie2. @method getAllResponseHeaders @return {String} reponse headers or empty string */ getAllResponseHeaders: function() { return _responseHeaders || ''; }, /** Returns the header field value from the response of which the field name matches header, unless the field name is Set-Cookie or Set-Cookie2. @method getResponseHeader @param {String} header @return {String} value(s) for the specified header or null */ getResponseHeader: function(header) { header = header.toLowerCase(); if (_error_flag || !!~Basic.inArray(header, ['set-cookie', 'set-cookie2'])) { return null; } if (_responseHeaders && _responseHeaders !== '') { // if we didn't parse response headers until now, do it and keep for later if (!_responseHeadersBag) { _responseHeadersBag = {}; Basic.each(_responseHeaders.split(/\r\n/), function(line) { var pair = line.split(/:\s+/); if (pair.length === 2) { // last line might be empty, omit pair[0] = Basic.trim(pair[0]); // just in case _responseHeadersBag[pair[0].toLowerCase()] = { // simply to retain header name in original form header: pair[0], value: Basic.trim(pair[1]) }; } }); } if (_responseHeadersBag.hasOwnProperty(header)) { return _responseHeadersBag[header].header + ': ' + _responseHeadersBag[header].value; } } return null; }, /** Sets the Content-Type header for the response to mime. Throws an "InvalidStateError" exception if the state is LOADING or DONE. Throws a "SyntaxError" exception if mime is not a valid media type. @method overrideMimeType @param String mime Mime type to set */ overrideMimeType: function(mime) { var matches, charset; // 1 if (!!~Basic.inArray(_p('readyState'), [XMLHttpRequest.LOADING, XMLHttpRequest.DONE])) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 2 mime = Basic.trim(mime.toLowerCase()); if (/;/.test(mime) && (matches = mime.match(/^([^;]+)(?:;\scharset\=)?(.*)$/))) { mime = matches[1]; if (matches[2]) { charset = matches[2]; } } if (!Mime.mimes[mime]) { throw new x.DOMException(x.DOMException.SYNTAX_ERR); } // 3-4 _finalMime = mime; _finalCharset = charset; }, /** Initiates the request. The optional argument provides the request entity body. The argument is ignored if request method is GET or HEAD. Throws an "InvalidStateError" exception if the state is not OPENED or if the send() flag is set. @method send @param {Blob|Document|String|FormData} [data] Request entity body @param {Object} [options] Set of requirements and pre-requisities for runtime initialization */ send: function(data, options) { if (Basic.typeOf(options) === 'string') { _options = { ruid: options }; } else if (!options) { _options = {}; } else { _options = options; } // 1-2 if (this.readyState !== XMLHttpRequest.OPENED || _send_flag) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 3 // sending Blob if (data instanceof Blob) { _options.ruid = data.ruid; _mimeType = data.type || 'application/octet-stream'; } // FormData else if (data instanceof FormData) { if (data.hasBlob()) { var blob = data.getBlob(); _options.ruid = blob.ruid; _mimeType = blob.type || 'application/octet-stream'; } } // DOMString else if (typeof data === 'string') { _encoding = 'UTF-8'; _mimeType = 'text/plain;charset=UTF-8'; // data should be converted to Unicode and encoded as UTF-8 data = Encode.utf8_encode(data); } // if withCredentials not set, but requested, set it automatically if (!this.withCredentials) { this.withCredentials = (_options.required_caps && _options.required_caps.send_browser_cookies) && !_same_origin_flag; } // 4 - storage mutex // 5 _upload_events_flag = (!_sync_flag && this.upload.hasEventListener()); // DSAP // 6 _error_flag = false; // 7 _upload_complete_flag = !data; // 8 - Asynchronous steps if (!_sync_flag) { // 8.1 _send_flag = true; // 8.2 // this.dispatchEvent('loadstart'); // will be dispatched either by native or runtime xhr // 8.3 //if (!_upload_complete_flag) { // this.upload.dispatchEvent('loadstart'); // will be dispatched either by native or runtime xhr //} } // 8.5 - Return the send() method call, but continue running the steps in this algorithm. _doXHR.call(this, data); }, /** Cancels any network activity. @method abort */ abort: function() { _error_flag = true; _sync_flag = false; if (!~Basic.inArray(_p('readyState'), [XMLHttpRequest.UNSENT, XMLHttpRequest.OPENED, XMLHttpRequest.DONE])) { _p('readyState', XMLHttpRequest.DONE); _send_flag = false; if (_xhr) { _xhr.getRuntime().exec.call(_xhr, 'XMLHttpRequest', 'abort', _upload_complete_flag); } else { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } _upload_complete_flag = true; } else { _p('readyState', XMLHttpRequest.UNSENT); } }, destroy: function() { if (_xhr) { if (Basic.typeOf(_xhr.destroy) === 'function') { _xhr.destroy(); } _xhr = null; } this.unbindAll(); if (this.upload) { this.upload.unbindAll(); this.upload = null; } } }); this.handleEventProps(dispatches.concat(['readystatechange'])); // for historical reasons this.upload.handleEventProps(dispatches); /* this is nice, but maybe too lengthy // if supported by JS version, set getters/setters for specific properties o.defineProperty(this, 'readyState', { configurable: false, get: function() { return _p('readyState'); } }); o.defineProperty(this, 'timeout', { configurable: false, get: function() { return _p('timeout'); }, set: function(value) { if (_sync_flag) { throw new x.DOMException(x.DOMException.INVALID_ACCESS_ERR); } // timeout still should be measured relative to the start time of request _timeoutset_time = (new Date).getTime(); _p('timeout', value); } }); // the withCredentials attribute has no effect when fetching same-origin resources o.defineProperty(this, 'withCredentials', { configurable: false, get: function() { return _p('withCredentials'); }, set: function(value) { // 1-2 if (!~o.inArray(_p('readyState'), [XMLHttpRequest.UNSENT, XMLHttpRequest.OPENED]) || _send_flag) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 3-4 if (_anonymous_flag || _sync_flag) { throw new x.DOMException(x.DOMException.INVALID_ACCESS_ERR); } // 5 _p('withCredentials', value); } }); o.defineProperty(this, 'status', { configurable: false, get: function() { return _p('status'); } }); o.defineProperty(this, 'statusText', { configurable: false, get: function() { return _p('statusText'); } }); o.defineProperty(this, 'responseType', { configurable: false, get: function() { return _p('responseType'); }, set: function(value) { // 1 if (!!~o.inArray(_p('readyState'), [XMLHttpRequest.LOADING, XMLHttpRequest.DONE])) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 2 if (_sync_flag) { throw new x.DOMException(x.DOMException.INVALID_ACCESS_ERR); } // 3 _p('responseType', value.toLowerCase()); } }); o.defineProperty(this, 'responseText', { configurable: false, get: function() { // 1 if (!~o.inArray(_p('responseType'), ['', 'text'])) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 2-3 if (_p('readyState') !== XMLHttpRequest.DONE && _p('readyState') !== XMLHttpRequest.LOADING || _error_flag) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } return _p('responseText'); } }); o.defineProperty(this, 'responseXML', { configurable: false, get: function() { // 1 if (!~o.inArray(_p('responseType'), ['', 'document'])) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // 2-3 if (_p('readyState') !== XMLHttpRequest.DONE || _error_flag) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } return _p('responseXML'); } }); o.defineProperty(this, 'response', { configurable: false, get: function() { if (!!~o.inArray(_p('responseType'), ['', 'text'])) { if (_p('readyState') !== XMLHttpRequest.DONE && _p('readyState') !== XMLHttpRequest.LOADING || _error_flag) { return ''; } } if (_p('readyState') !== XMLHttpRequest.DONE || _error_flag) { return null; } return _p('response'); } }); */ function _p(prop, value) { if (!props.hasOwnProperty(prop)) { return; } if (arguments.length === 1) { // get return Env.can('define_property') ? props[prop] : self[prop]; } else { // set if (Env.can('define_property')) { props[prop] = value; } else { self[prop] = value; } } } /* function _toASCII(str, AllowUnassigned, UseSTD3ASCIIRules) { // TODO: http://tools.ietf.org/html/rfc3490#section-4.1 return str.toLowerCase(); } */ function _doXHR(data) { var self = this; _start_time = new Date().getTime(); _xhr = new RuntimeTarget(); function loadEnd() { if (_xhr) { // it could have been destroyed by now _xhr.destroy(); _xhr = null; } self.dispatchEvent('loadend'); self = null; } function exec(runtime) { _xhr.bind('LoadStart', function(e) { _p('readyState', XMLHttpRequest.LOADING); self.dispatchEvent('readystatechange'); self.dispatchEvent(e); if (_upload_events_flag) { self.upload.dispatchEvent(e); } }); _xhr.bind('Progress', function(e) { if (_p('readyState') !== XMLHttpRequest.LOADING) { _p('readyState', XMLHttpRequest.LOADING); // LoadStart unreliable (in Flash for example) self.dispatchEvent('readystatechange'); } self.dispatchEvent(e); }); _xhr.bind('UploadProgress', function(e) { if (_upload_events_flag) { self.upload.dispatchEvent({ type: 'progress', lengthComputable: false, total: e.total, loaded: e.loaded }); } }); _xhr.bind('Load', function(e) { _p('readyState', XMLHttpRequest.DONE); _p('status', Number(runtime.exec.call(_xhr, 'XMLHttpRequest', 'getStatus') || 0)); _p('statusText', httpCode[_p('status')] || ""); _p('response', runtime.exec.call(_xhr, 'XMLHttpRequest', 'getResponse', _p('responseType'))); if (!!~Basic.inArray(_p('responseType'), ['text', ''])) { _p('responseText', _p('response')); } else if (_p('responseType') === 'document') { _p('responseXML', _p('response')); } _responseHeaders = runtime.exec.call(_xhr, 'XMLHttpRequest', 'getAllResponseHeaders'); self.dispatchEvent('readystatechange'); if (_p('status') > 0) { // status 0 usually means that server is unreachable if (_upload_events_flag) { self.upload.dispatchEvent(e); } self.dispatchEvent(e); } else { _error_flag = true; self.dispatchEvent('error'); } loadEnd(); }); _xhr.bind('Abort', function(e) { self.dispatchEvent(e); loadEnd(); }); _xhr.bind('Error', function(e) { _error_flag = true; _p('readyState', XMLHttpRequest.DONE); self.dispatchEvent('readystatechange'); _upload_complete_flag = true; self.dispatchEvent(e); loadEnd(); }); runtime.exec.call(_xhr, 'XMLHttpRequest', 'send', { url: _url, method: _method, async: _async, user: _user, password: _password, headers: _headers, mimeType: _mimeType, encoding: _encoding, responseType: self.responseType, withCredentials: self.withCredentials, options: _options }, data); } // clarify our requirements if (typeof(_options.required_caps) === 'string') { _options.required_caps = Runtime.parseCaps(_options.required_caps); } _options.required_caps = Basic.extend({}, _options.required_caps, { return_response_type: self.responseType }); if (data instanceof FormData) { _options.required_caps.send_multipart = true; } if (!Basic.isEmptyObj(_headers)) { _options.required_caps.send_custom_headers = true; } if (!_same_origin_flag) { _options.required_caps.do_cors = true; } if (_options.ruid) { // we do not need to wait if we can connect directly exec(_xhr.connectRuntime(_options)); } else { _xhr.bind('RuntimeInit', function(e, runtime) { exec(runtime); }); _xhr.bind('RuntimeError', function(e, err) { self.dispatchEvent('RuntimeError', err); }); _xhr.connectRuntime(_options); } } function _reset() { _p('responseText', ""); _p('responseXML', null); _p('response', null); _p('status', 0); _p('statusText', ""); _start_time = _timeoutset_time = null; } } XMLHttpRequest.UNSENT = 0; XMLHttpRequest.OPENED = 1; XMLHttpRequest.HEADERS_RECEIVED = 2; XMLHttpRequest.LOADING = 3; XMLHttpRequest.DONE = 4; XMLHttpRequest.prototype = EventTarget.instance; return XMLHttpRequest; }); // Included from: src/javascript/runtime/Transporter.js /** * Transporter.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/runtime/Transporter", [ "moxie/core/utils/Basic", "moxie/core/utils/Encode", "moxie/runtime/RuntimeClient", "moxie/core/EventTarget" ], function(Basic, Encode, RuntimeClient, EventTarget) { function Transporter() { var mod, _runtime, _data, _size, _pos, _chunk_size; RuntimeClient.call(this); Basic.extend(this, { uid: Basic.guid('uid_'), state: Transporter.IDLE, result: null, transport: function(data, type, options) { var self = this; options = Basic.extend({ chunk_size: 204798 }, options); // should divide by three, base64 requires this if ((mod = options.chunk_size % 3)) { options.chunk_size += 3 - mod; } _chunk_size = options.chunk_size; _reset.call(this); _data = data; _size = data.length; if (Basic.typeOf(options) === 'string' || options.ruid) { _run.call(self, type, this.connectRuntime(options)); } else { // we require this to run only once var cb = function(e, runtime) { self.unbind("RuntimeInit", cb); _run.call(self, type, runtime); }; this.bind("RuntimeInit", cb); this.connectRuntime(options); } }, abort: function() { var self = this; self.state = Transporter.IDLE; if (_runtime) { _runtime.exec.call(self, 'Transporter', 'clear'); self.trigger("TransportingAborted"); } _reset.call(self); }, destroy: function() { this.unbindAll(); _runtime = null; this.disconnectRuntime(); _reset.call(this); } }); function _reset() { _size = _pos = 0; _data = this.result = null; } function _run(type, runtime) { var self = this; _runtime = runtime; //self.unbind("RuntimeInit"); self.bind("TransportingProgress", function(e) { _pos = e.loaded; if (_pos < _size && Basic.inArray(self.state, [Transporter.IDLE, Transporter.DONE]) === -1) { _transport.call(self); } }, 999); self.bind("TransportingComplete", function() { _pos = _size; self.state = Transporter.DONE; _data = null; // clean a bit self.result = _runtime.exec.call(self, 'Transporter', 'getAsBlob', type || ''); }, 999); self.state = Transporter.BUSY; self.trigger("TransportingStarted"); _transport.call(self); } function _transport() { var self = this, chunk, bytesLeft = _size - _pos; if (_chunk_size > bytesLeft) { _chunk_size = bytesLeft; } chunk = Encode.btoa(_data.substr(_pos, _chunk_size)); _runtime.exec.call(self, 'Transporter', 'receive', chunk, _size); } } Transporter.IDLE = 0; Transporter.BUSY = 1; Transporter.DONE = 2; Transporter.prototype = EventTarget.instance; return Transporter; }); // Included from: src/javascript/image/Image.js /** * Image.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define("moxie/image/Image", [ "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/Exceptions", "moxie/file/FileReaderSync", "moxie/xhr/XMLHttpRequest", "moxie/runtime/Runtime", "moxie/runtime/RuntimeClient", "moxie/runtime/Transporter", "moxie/core/utils/Env", "moxie/core/EventTarget", "moxie/file/Blob", "moxie/file/File", "moxie/core/utils/Encode" ], function(Basic, Dom, x, FileReaderSync, XMLHttpRequest, Runtime, RuntimeClient, Transporter, Env, EventTarget, Blob, File, Encode) { /** Image preloading and manipulation utility. Additionally it provides access to image meta info (Exif, GPS) and raw binary data. @class Image @constructor @extends EventTarget */ var dispatches = [ 'progress', /** Dispatched when loading is complete. @event load @param {Object} event */ 'load', 'error', /** Dispatched when resize operation is complete. @event resize @param {Object} event */ 'resize', /** Dispatched when visual representation of the image is successfully embedded into the corresponsing container. @event embedded @param {Object} event */ 'embedded' ]; function Image() { RuntimeClient.call(this); Basic.extend(this, { /** Unique id of the component @property uid @type {String} */ uid: Basic.guid('uid_'), /** Unique id of the connected runtime, if any. @property ruid @type {String} */ ruid: null, /** Name of the file, that was used to create an image, if available. If not equals to empty string. @property name @type {String} @default "" */ name: "", /** Size of the image in bytes. Actual value is set only after image is preloaded. @property size @type {Number} @default 0 */ size: 0, /** Width of the image. Actual value is set only after image is preloaded. @property width @type {Number} @default 0 */ width: 0, /** Height of the image. Actual value is set only after image is preloaded. @property height @type {Number} @default 0 */ height: 0, /** Mime type of the image. Currently only image/jpeg and image/png are supported. Actual value is set only after image is preloaded. @property type @type {String} @default "" */ type: "", /** Holds meta info (Exif, GPS). Is populated only for image/jpeg. Actual value is set only after image is preloaded. @property meta @type {Object} @default {} */ meta: {}, /** Alias for load method, that takes another mOxie.Image object as a source (see load). @method clone @param {Image} src Source for the image @param {Boolean} [exact=false] Whether to activate in-depth clone mode */ clone: function() { this.load.apply(this, arguments); }, /** Loads image from various sources. Currently the source for new image can be: mOxie.Image, mOxie.Blob/mOxie.File, native Blob/File, dataUrl or URL. Depending on the type of the source, arguments - differ. When source is URL, Image will be downloaded from remote destination and loaded in memory. @example var img = new mOxie.Image(); img.onload = function() { var blob = img.getAsBlob(); var formData = new mOxie.FormData(); formData.append('file', blob); var xhr = new mOxie.XMLHttpRequest(); xhr.onload = function() { // upload complete }; xhr.open('post', 'upload.php'); xhr.send(formData); }; img.load("http://www.moxiecode.com/images/mox-logo.jpg"); // notice file extension (.jpg) @method load @param {Image|Blob|File|String} src Source for the image @param {Boolean|Object} [mixed] */ load: function() { _load.apply(this, arguments); }, /** Downsizes the image to fit the specified width/height. If crop is supplied, image will be cropped to exact dimensions. @method downsize @param {Object} opts @param {Number} opts.width Resulting width @param {Number} [opts.height=width] Resulting height (optional, if not supplied will default to width) @param {Boolean} [opts.crop=false] Whether to crop the image to exact dimensions @param {Boolean} [opts.preserveHeaders=true] Whether to preserve meta headers (on JPEGs after resize) @param {String} [opts.resample=false] Resampling algorithm to use for resizing */ downsize: function(opts) { var defaults = { width: this.width, height: this.height, type: this.type || 'image/jpeg', quality: 90, crop: false, preserveHeaders: true, resample: false }; if (typeof(opts) === 'object') { opts = Basic.extend(defaults, opts); } else { // for backward compatibility opts = Basic.extend(defaults, { width: arguments[0], height: arguments[1], crop: arguments[2], preserveHeaders: arguments[3] }); } try { if (!this.size) { // only preloaded image objects can be used as source throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // no way to reliably intercept the crash due to high resolution, so we simply avoid it if (this.width > Image.MAX_RESIZE_WIDTH || this.height > Image.MAX_RESIZE_HEIGHT) { throw new x.ImageError(x.ImageError.MAX_RESOLUTION_ERR); } this.exec('Image', 'downsize', opts.width, opts.height, opts.crop, opts.preserveHeaders); } catch(ex) { // for now simply trigger error event this.trigger('error', ex.code); } }, /** Alias for downsize(width, height, true). (see downsize) @method crop @param {Number} width Resulting width @param {Number} [height=width] Resulting height (optional, if not supplied will default to width) @param {Boolean} [preserveHeaders=true] Whether to preserve meta headers (on JPEGs after resize) */ crop: function(width, height, preserveHeaders) { this.downsize(width, height, true, preserveHeaders); }, getAsCanvas: function() { if (!Env.can('create_canvas')) { throw new x.RuntimeError(x.RuntimeError.NOT_SUPPORTED_ERR); } var runtime = this.connectRuntime(this.ruid); return runtime.exec.call(this, 'Image', 'getAsCanvas'); }, /** Retrieves image in it's current state as mOxie.Blob object. Cannot be run on empty or image in progress (throws DOMException.INVALID_STATE_ERR). @method getAsBlob @param {String} [type="image/jpeg"] Mime type of resulting blob. Can either be image/jpeg or image/png @param {Number} [quality=90] Applicable only together with mime type image/jpeg @return {Blob} Image as Blob */ getAsBlob: function(type, quality) { if (!this.size) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } return this.exec('Image', 'getAsBlob', type || 'image/jpeg', quality || 90); }, /** Retrieves image in it's current state as dataURL string. Cannot be run on empty or image in progress (throws DOMException.INVALID_STATE_ERR). @method getAsDataURL @param {String} [type="image/jpeg"] Mime type of resulting blob. Can either be image/jpeg or image/png @param {Number} [quality=90] Applicable only together with mime type image/jpeg @return {String} Image as dataURL string */ getAsDataURL: function(type, quality) { if (!this.size) { throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } return this.exec('Image', 'getAsDataURL', type || 'image/jpeg', quality || 90); }, /** Retrieves image in it's current state as binary string. Cannot be run on empty or image in progress (throws DOMException.INVALID_STATE_ERR). @method getAsBinaryString @param {String} [type="image/jpeg"] Mime type of resulting blob. Can either be image/jpeg or image/png @param {Number} [quality=90] Applicable only together with mime type image/jpeg @return {String} Image as binary string */ getAsBinaryString: function(type, quality) { var dataUrl = this.getAsDataURL(type, quality); return Encode.atob(dataUrl.substring(dataUrl.indexOf('base64,') + 7)); }, /** Embeds a visual representation of the image into the specified node. Depending on the runtime, it might be a canvas, an img node or a thrid party shim object (Flash or SilverLight - very rare, can be used in legacy browsers that do not have canvas or proper dataURI support). @method embed @param {DOMElement} el DOM element to insert the image object into @param {Object} [opts] @param {Number} [opts.width] The width of an embed (defaults to the image width) @param {Number} [opts.height] The height of an embed (defaults to the image height) @param {String} [type="image/jpeg"] Mime type @param {Number} [quality=90] Quality of an embed, if mime type is image/jpeg @param {Boolean} [crop=false] Whether to crop an embed to the specified dimensions */ embed: function(el, opts) { var self = this , runtime // this has to be outside of all the closures to contain proper runtime ; opts = Basic.extend({ width: this.width, height: this.height, type: this.type || 'image/jpeg', quality: 90 }, opts || {}); function render(type, quality) { var img = this; // if possible, embed a canvas element directly if (Env.can('create_canvas')) { var canvas = img.getAsCanvas(); if (canvas) { el.appendChild(canvas); canvas = null; img.destroy(); self.trigger('embedded'); return; } } var dataUrl = img.getAsDataURL(type, quality); if (!dataUrl) { throw new x.ImageError(x.ImageError.WRONG_FORMAT); } if (Env.can('use_data_uri_of', dataUrl.length)) { el.innerHTML = ''; img.destroy(); self.trigger('embedded'); } else { var tr = new Transporter(); tr.bind("TransportingComplete", function() { runtime = self.connectRuntime(this.result.ruid); self.bind("Embedded", function() { // position and size properly Basic.extend(runtime.getShimContainer().style, { //position: 'relative', top: '0px', left: '0px', width: img.width + 'px', height: img.height + 'px' }); // some shims (Flash/SilverLight) reinitialize, if parent element is hidden, reordered or it's // position type changes (in Gecko), but since we basically need this only in IEs 6/7 and // sometimes 8 and they do not have this problem, we can comment this for now /*tr.bind("RuntimeInit", function(e, runtime) { tr.destroy(); runtime.destroy(); onResize.call(self); // re-feed our image data });*/ runtime = null; // release }, 999); runtime.exec.call(self, "ImageView", "display", this.result.uid, width, height); img.destroy(); }); tr.transport(Encode.atob(dataUrl.substring(dataUrl.indexOf('base64,') + 7)), type, { required_caps: { display_media: true }, runtime_order: 'flash,silverlight', container: el }); } } try { if (!(el = Dom.get(el))) { throw new x.DOMException(x.DOMException.INVALID_NODE_TYPE_ERR); } if (!this.size) { // only preloaded image objects can be used as source throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } // high-resolution images cannot be consistently handled across the runtimes if (this.width > Image.MAX_RESIZE_WIDTH || this.height > Image.MAX_RESIZE_HEIGHT) { //throw new x.ImageError(x.ImageError.MAX_RESOLUTION_ERR); } var imgCopy = new Image(); imgCopy.bind("Resize", function() { render.call(this, opts.type, opts.quality); }); imgCopy.bind("Load", function() { imgCopy.downsize(opts); }); // if embedded thumb data is available and dimensions are big enough, use it if (this.meta.thumb && this.meta.thumb.width >= opts.width && this.meta.thumb.height >= opts.height) { imgCopy.load(this.meta.thumb.data); } else { imgCopy.clone(this, false); } return imgCopy; } catch(ex) { // for now simply trigger error event this.trigger('error', ex.code); } }, /** Properly destroys the image and frees resources in use. If any. Recommended way to dispose mOxie.Image object. @method destroy */ destroy: function() { if (this.ruid) { this.getRuntime().exec.call(this, 'Image', 'destroy'); this.disconnectRuntime(); } this.unbindAll(); } }); // this is here, because in order to bind properly, we need uid, which is created above this.handleEventProps(dispatches); this.bind('Load Resize', function() { _updateInfo.call(this); }, 999); function _updateInfo(info) { if (!info) { info = this.exec('Image', 'getInfo'); } this.size = info.size; this.width = info.width; this.height = info.height; this.type = info.type; this.meta = info.meta; // update file name, only if empty if (this.name === '') { this.name = info.name; } } function _load(src) { var srcType = Basic.typeOf(src); try { // if source is Image if (src instanceof Image) { if (!src.size) { // only preloaded image objects can be used as source throw new x.DOMException(x.DOMException.INVALID_STATE_ERR); } _loadFromImage.apply(this, arguments); } // if source is o.Blob/o.File else if (src instanceof Blob) { if (!~Basic.inArray(src.type, ['image/jpeg', 'image/png'])) { throw new x.ImageError(x.ImageError.WRONG_FORMAT); } _loadFromBlob.apply(this, arguments); } // if native blob/file else if (Basic.inArray(srcType, ['blob', 'file']) !== -1) { _load.call(this, new File(null, src), arguments[1]); } // if String else if (srcType === 'string') { // if dataUrl String if (src.substr(0, 5) === 'data:') { _load.call(this, new Blob(null, { data: src }), arguments[1]); } // else assume Url, either relative or absolute else { _loadFromUrl.apply(this, arguments); } } // if source seems to be an img node else if (srcType === 'node' && src.nodeName.toLowerCase() === 'img') { _load.call(this, src.src, arguments[1]); } else { throw new x.DOMException(x.DOMException.TYPE_MISMATCH_ERR); } } catch(ex) { // for now simply trigger error event this.trigger('error', ex.code); } } function _loadFromImage(img, exact) { var runtime = this.connectRuntime(img.ruid); this.ruid = runtime.uid; runtime.exec.call(this, 'Image', 'loadFromImage', img, (Basic.typeOf(exact) === 'undefined' ? true : exact)); } function _loadFromBlob(blob, options) { var self = this; self.name = blob.name || ''; function exec(runtime) { self.ruid = runtime.uid; runtime.exec.call(self, 'Image', 'loadFromBlob', blob); } if (blob.isDetached()) { this.bind('RuntimeInit', function(e, runtime) { exec(runtime); }); // convert to object representation if (options && typeof(options.required_caps) === 'string') { options.required_caps = Runtime.parseCaps(options.required_caps); } this.connectRuntime(Basic.extend({ required_caps: { access_image_binary: true, resize_image: true } }, options)); } else { exec(this.connectRuntime(blob.ruid)); } } function _loadFromUrl(url, options) { var self = this, xhr; xhr = new XMLHttpRequest(); xhr.open('get', url); xhr.responseType = 'blob'; xhr.onprogress = function(e) { self.trigger(e); }; xhr.onload = function() { _loadFromBlob.call(self, xhr.response, true); }; xhr.onerror = function(e) { self.trigger(e); }; xhr.onloadend = function() { xhr.destroy(); }; xhr.bind('RuntimeError', function(e, err) { self.trigger('RuntimeError', err); }); xhr.send(null, options); } } // virtual world will crash on you if image has a resolution higher than this: Image.MAX_RESIZE_WIDTH = 8192; Image.MAX_RESIZE_HEIGHT = 8192; Image.prototype = EventTarget.instance; return Image; }); // Included from: src/javascript/runtime/html5/Runtime.js /** * Runtime.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /*global File:true */ /** Defines constructor for HTML5 runtime. @class moxie/runtime/html5/Runtime @private */ define("moxie/runtime/html5/Runtime", [ "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/runtime/Runtime", "moxie/core/utils/Env" ], function(Basic, x, Runtime, Env) { var type = "html5", extensions = {}; function Html5Runtime(options) { var I = this , Test = Runtime.capTest , True = Runtime.capTrue ; var caps = Basic.extend({ access_binary: Test(window.FileReader || window.File && window.File.getAsDataURL), access_image_binary: function() { return I.can('access_binary') && !!extensions.Image; }, display_media: Test(Env.can('create_canvas') || Env.can('use_data_uri_over32kb')), do_cors: Test(window.XMLHttpRequest && 'withCredentials' in new XMLHttpRequest()), drag_and_drop: Test(function() { // this comes directly from Modernizr: http://www.modernizr.com/ var div = document.createElement('div'); // IE has support for drag and drop since version 5, but doesn't support dropping files from desktop return (('draggable' in div) || ('ondragstart' in div && 'ondrop' in div)) && (Env.browser !== 'IE' || Env.verComp(Env.version, 9, '>')); }()), filter_by_extension: Test(function() { // if you know how to feature-detect this, please suggest return (Env.browser === 'Chrome' && Env.verComp(Env.version, 28, '>=')) || (Env.browser === 'IE' && Env.verComp(Env.version, 10, '>=')) || (Env.browser === 'Safari' && Env.verComp(Env.version, 7, '>=')); }()), return_response_headers: True, return_response_type: function(responseType) { if (responseType === 'json' && !!window.JSON) { // we can fake this one even if it's not supported return true; } return Env.can('return_response_type', responseType); }, return_status_code: True, report_upload_progress: Test(window.XMLHttpRequest && new XMLHttpRequest().upload), resize_image: function() { return I.can('access_binary') && Env.can('create_canvas'); }, select_file: function() { return Env.can('use_fileinput') && window.File; }, select_folder: function() { return I.can('select_file') && Env.browser === 'Chrome' && Env.verComp(Env.version, 21, '>='); }, select_multiple: function() { // it is buggy on Safari Windows and iOS return I.can('select_file') && !(Env.browser === 'Safari' && Env.os === 'Windows') && !(Env.os === 'iOS' && Env.verComp(Env.osVersion, "7.0.0", '>') && Env.verComp(Env.osVersion, "8.0.0", '<')); }, send_binary_string: Test(window.XMLHttpRequest && (new XMLHttpRequest().sendAsBinary || (window.Uint8Array && window.ArrayBuffer))), send_custom_headers: Test(window.XMLHttpRequest), send_multipart: function() { return !!(window.XMLHttpRequest && new XMLHttpRequest().upload && window.FormData) || I.can('send_binary_string'); }, slice_blob: Test(window.File && (File.prototype.mozSlice || File.prototype.webkitSlice || File.prototype.slice)), stream_upload: function(){ return I.can('slice_blob') && I.can('send_multipart'); }, summon_file_dialog: function() { // yeah... some dirty sniffing here... return I.can('select_file') && ( (Env.browser === 'Firefox' && Env.verComp(Env.version, 4, '>=')) || (Env.browser === 'Opera' && Env.verComp(Env.version, 12, '>=')) || (Env.browser === 'IE' && Env.verComp(Env.version, 10, '>=')) || !!~Basic.inArray(Env.browser, ['Chrome', 'Safari']) ); }, upload_filesize: True }, arguments[2] ); Runtime.call(this, options, (arguments[1] || type), caps); Basic.extend(this, { init : function() { this.trigger("Init"); }, destroy: (function(destroy) { // extend default destroy method return function() { destroy.call(I); destroy = I = null; }; }(this.destroy)) }); Basic.extend(this.getShim(), extensions); } Runtime.addConstructor(type, Html5Runtime); return extensions; }); // Included from: src/javascript/core/utils/Events.js /** * Events.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ define('moxie/core/utils/Events', [ 'moxie/core/utils/Basic' ], function(Basic) { var eventhash = {}, uid = 'moxie_' + Basic.guid(); // IE W3C like event funcs function preventDefault() { this.returnValue = false; } function stopPropagation() { this.cancelBubble = true; } /** Adds an event handler to the specified object and store reference to the handler in objects internal Plupload registry (@see removeEvent). @method addEvent @for Utils @static @param {Object} obj DOM element like object to add handler to. @param {String} name Name to add event listener to. @param {Function} callback Function to call when event occurs. @param {String} [key] that might be used to add specifity to the event record. */ var addEvent = function(obj, name, callback, key) { var func, events; name = name.toLowerCase(); // Add event listener if (obj.addEventListener) { func = callback; obj.addEventListener(name, func, false); } else if (obj.attachEvent) { func = function() { var evt = window.event; if (!evt.target) { evt.target = evt.srcElement; } evt.preventDefault = preventDefault; evt.stopPropagation = stopPropagation; callback(evt); }; obj.attachEvent('on' + name, func); } // Log event handler to objects internal mOxie registry if (!obj[uid]) { obj[uid] = Basic.guid(); } if (!eventhash.hasOwnProperty(obj[uid])) { eventhash[obj[uid]] = {}; } events = eventhash[obj[uid]]; if (!events.hasOwnProperty(name)) { events[name] = []; } events[name].push({ func: func, orig: callback, // store original callback for IE key: key }); }; /** Remove event handler from the specified object. If third argument (callback) is not specified remove all events with the specified name. @method removeEvent @static @param {Object} obj DOM element to remove event listener(s) from. @param {String} name Name of event listener to remove. @param {Function|String} [callback] might be a callback or unique key to match. */ var removeEvent = function(obj, name, callback) { var type, undef; name = name.toLowerCase(); if (obj[uid] && eventhash[obj[uid]] && eventhash[obj[uid]][name]) { type = eventhash[obj[uid]][name]; } else { return; } for (var i = type.length - 1; i >= 0; i--) { // undefined or not, key should match if (type[i].orig === callback || type[i].key === callback) { if (obj.removeEventListener) { obj.removeEventListener(name, type[i].func, false); } else if (obj.detachEvent) { obj.detachEvent('on'+name, type[i].func); } type[i].orig = null; type[i].func = null; type.splice(i, 1); // If callback was passed we are done here, otherwise proceed if (callback !== undef) { break; } } } // If event array got empty, remove it if (!type.length) { delete eventhash[obj[uid]][name]; } // If mOxie registry has become empty, remove it if (Basic.isEmptyObj(eventhash[obj[uid]])) { delete eventhash[obj[uid]]; // IE doesn't let you remove DOM object property with - delete try { delete obj[uid]; } catch(e) { obj[uid] = undef; } } }; /** Remove all kind of events from the specified object @method removeAllEvents @static @param {Object} obj DOM element to remove event listeners from. @param {String} [key] unique key to match, when removing events. */ var removeAllEvents = function(obj, key) { if (!obj || !obj[uid]) { return; } Basic.each(eventhash[obj[uid]], function(events, name) { removeEvent(obj, name, key); }); }; return { addEvent: addEvent, removeEvent: removeEvent, removeAllEvents: removeAllEvents }; }); // Included from: src/javascript/runtime/html5/file/FileInput.js /** * FileInput.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/file/FileInput @private */ define("moxie/runtime/html5/file/FileInput", [ "moxie/runtime/html5/Runtime", "moxie/file/File", "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/utils/Events", "moxie/core/utils/Mime", "moxie/core/utils/Env" ], function(extensions, File, Basic, Dom, Events, Mime, Env) { function FileInput() { var _options; Basic.extend(this, { init: function(options) { var comp = this, I = comp.getRuntime(), input, shimContainer, mimes, browseButton, zIndex, top; _options = options; // figure out accept string mimes = _options.accept.mimes || Mime.extList2mimes(_options.accept, I.can('filter_by_extension')); shimContainer = I.getShimContainer(); shimContainer.innerHTML = ''; input = Dom.get(I.uid); // prepare file input to be placed underneath the browse_button element Basic.extend(input.style, { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%' }); browseButton = Dom.get(_options.browse_button); // Route click event to the input[type=file] element for browsers that support such behavior if (I.can('summon_file_dialog')) { if (Dom.getStyle(browseButton, 'position') === 'static') { browseButton.style.position = 'relative'; } zIndex = parseInt(Dom.getStyle(browseButton, 'z-index'), 10) || 1; browseButton.style.zIndex = zIndex; shimContainer.style.zIndex = zIndex - 1; Events.addEvent(browseButton, 'click', function(e) { var input = Dom.get(I.uid); if (input && !input.disabled) { // for some reason FF (up to 8.0.1 so far) lets to click disabled input[type=file] input.click(); } e.preventDefault(); }, comp.uid); } /* Since we have to place input[type=file] on top of the browse_button for some browsers, browse_button loses interactivity, so we restore it here */ top = I.can('summon_file_dialog') ? browseButton : shimContainer; Events.addEvent(top, 'mouseover', function() { comp.trigger('mouseenter'); }, comp.uid); Events.addEvent(top, 'mouseout', function() { comp.trigger('mouseleave'); }, comp.uid); Events.addEvent(top, 'mousedown', function() { comp.trigger('mousedown'); }, comp.uid); Events.addEvent(Dom.get(_options.container), 'mouseup', function() { comp.trigger('mouseup'); }, comp.uid); input.onchange = function onChange(e) { // there should be only one handler for this comp.files = []; Basic.each(this.files, function(file) { var relativePath = ''; if (_options.directory) { // folders are represented by dots, filter them out (Chrome 11+) if (file.name == ".") { // if it looks like a folder... return true; } } if (file.webkitRelativePath) { relativePath = '/' + file.webkitRelativePath.replace(/^\//, ''); } file = new File(I.uid, file); file.relativePath = relativePath; comp.files.push(file); }); // clearing the value enables the user to select the same file again if they want to if (Env.browser !== 'IE' && Env.browser !== 'IEMobile') { this.value = ''; } else { // in IE input[type="file"] is read-only so the only way to reset it is to re-insert it var clone = this.cloneNode(true); this.parentNode.replaceChild(clone, this); clone.onchange = onChange; } if (comp.files.length) { comp.trigger('change'); } }; // ready event is perfectly asynchronous comp.trigger({ type: 'ready', async: true }); shimContainer = null; }, disable: function(state) { var I = this.getRuntime(), input; if ((input = Dom.get(I.uid))) { input.disabled = !!state; } }, destroy: function() { var I = this.getRuntime() , shim = I.getShim() , shimContainer = I.getShimContainer() ; Events.removeAllEvents(shimContainer, this.uid); Events.removeAllEvents(_options && Dom.get(_options.container), this.uid); Events.removeAllEvents(_options && Dom.get(_options.browse_button), this.uid); if (shimContainer) { shimContainer.innerHTML = ''; } shim.removeInstance(this.uid); _options = shimContainer = shim = null; } }); } return (extensions.FileInput = FileInput); }); // Included from: src/javascript/runtime/html5/file/Blob.js /** * Blob.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/file/Blob @private */ define("moxie/runtime/html5/file/Blob", [ "moxie/runtime/html5/Runtime", "moxie/file/Blob" ], function(extensions, Blob) { function HTML5Blob() { function w3cBlobSlice(blob, start, end) { var blobSlice; if (window.File.prototype.slice) { try { blob.slice(); // depricated version will throw WRONG_ARGUMENTS_ERR exception return blob.slice(start, end); } catch (e) { // depricated slice method return blob.slice(start, end - start); } // slice method got prefixed: https://bugzilla.mozilla.org/show_bug.cgi?id=649672 } else if ((blobSlice = window.File.prototype.webkitSlice || window.File.prototype.mozSlice)) { return blobSlice.call(blob, start, end); } else { return null; // or throw some exception } } this.slice = function() { return new Blob(this.getRuntime().uid, w3cBlobSlice.apply(this, arguments)); }; } return (extensions.Blob = HTML5Blob); }); // Included from: src/javascript/runtime/html5/file/FileDrop.js /** * FileDrop.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/file/FileDrop @private */ define("moxie/runtime/html5/file/FileDrop", [ "moxie/runtime/html5/Runtime", 'moxie/file/File', "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/utils/Events", "moxie/core/utils/Mime" ], function(extensions, File, Basic, Dom, Events, Mime) { function FileDrop() { var _files = [], _allowedExts = [], _options, _ruid; Basic.extend(this, { init: function(options) { var comp = this, dropZone; _options = options; _ruid = comp.ruid; // every dropped-in file should have a reference to the runtime _allowedExts = _extractExts(_options.accept); dropZone = _options.container; Events.addEvent(dropZone, 'dragover', function(e) { if (!_hasFiles(e)) { return; } e.preventDefault(); e.dataTransfer.dropEffect = 'copy'; }, comp.uid); Events.addEvent(dropZone, 'drop', function(e) { if (!_hasFiles(e)) { return; } e.preventDefault(); _files = []; // Chrome 21+ accepts folders via Drag'n'Drop if (e.dataTransfer.items && e.dataTransfer.items[0].webkitGetAsEntry) { _readItems(e.dataTransfer.items, function() { comp.files = _files; comp.trigger("drop"); }); } else { Basic.each(e.dataTransfer.files, function(file) { _addFile(file); }); comp.files = _files; comp.trigger("drop"); } }, comp.uid); Events.addEvent(dropZone, 'dragenter', function(e) { comp.trigger("dragenter"); }, comp.uid); Events.addEvent(dropZone, 'dragleave', function(e) { comp.trigger("dragleave"); }, comp.uid); }, destroy: function() { Events.removeAllEvents(_options && Dom.get(_options.container), this.uid); _ruid = _files = _allowedExts = _options = null; } }); function _hasFiles(e) { if (!e.dataTransfer || !e.dataTransfer.types) { // e.dataTransfer.files is not available in Gecko during dragover return false; } var types = Basic.toArray(e.dataTransfer.types || []); return Basic.inArray("Files", types) !== -1 || Basic.inArray("public.file-url", types) !== -1 || // Safari < 5 Basic.inArray("application/x-moz-file", types) !== -1 // Gecko < 1.9.2 (< Firefox 3.6) ; } function _addFile(file, relativePath) { if (_isAcceptable(file)) { var fileObj = new File(_ruid, file); fileObj.relativePath = relativePath || ''; _files.push(fileObj); } } function _extractExts(accept) { var exts = []; for (var i = 0; i < accept.length; i++) { [].push.apply(exts, accept[i].extensions.split(/\s*,\s*/)); } return Basic.inArray('*', exts) === -1 ? exts : []; } function _isAcceptable(file) { if (!_allowedExts.length) { return true; } var ext = Mime.getFileExtension(file.name); return !ext || Basic.inArray(ext, _allowedExts) !== -1; } function _readItems(items, cb) { var entries = []; Basic.each(items, function(item) { var entry = item.webkitGetAsEntry(); // Address #998 (https://code.google.com/p/chromium/issues/detail?id=332579) if (entry) { // file() fails on OSX when the filename contains a special character (e.g. umlaut): see #61 if (entry.isFile) { _addFile(item.getAsFile(), entry.fullPath); } else { entries.push(entry); } } }); if (entries.length) { _readEntries(entries, cb); } else { cb(); } } function _readEntries(entries, cb) { var queue = []; Basic.each(entries, function(entry) { queue.push(function(cbcb) { _readEntry(entry, cbcb); }); }); Basic.inSeries(queue, function() { cb(); }); } function _readEntry(entry, cb) { if (entry.isFile) { entry.file(function(file) { _addFile(file, entry.fullPath); cb(); }, function() { // fire an error event maybe cb(); }); } else if (entry.isDirectory) { _readDirEntry(entry, cb); } else { cb(); // not file, not directory? what then?.. } } function _readDirEntry(dirEntry, cb) { var entries = [], dirReader = dirEntry.createReader(); // keep quering recursively till no more entries function getEntries(cbcb) { dirReader.readEntries(function(moreEntries) { if (moreEntries.length) { [].push.apply(entries, moreEntries); getEntries(cbcb); } else { cbcb(); } }, cbcb); } // ...and you thought FileReader was crazy... getEntries(function() { _readEntries(entries, cb); }); } } return (extensions.FileDrop = FileDrop); }); // Included from: src/javascript/runtime/html5/file/FileReader.js /** * FileReader.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/file/FileReader @private */ define("moxie/runtime/html5/file/FileReader", [ "moxie/runtime/html5/Runtime", "moxie/core/utils/Encode", "moxie/core/utils/Basic" ], function(extensions, Encode, Basic) { function FileReader() { var _fr, _convertToBinary = false; Basic.extend(this, { read: function(op, blob) { var comp = this; comp.result = ''; _fr = new window.FileReader(); _fr.addEventListener('progress', function(e) { comp.trigger(e); }); _fr.addEventListener('load', function(e) { comp.result = _convertToBinary ? _toBinary(_fr.result) : _fr.result; comp.trigger(e); }); _fr.addEventListener('error', function(e) { comp.trigger(e, _fr.error); }); _fr.addEventListener('loadend', function(e) { _fr = null; comp.trigger(e); }); if (Basic.typeOf(_fr[op]) === 'function') { _convertToBinary = false; _fr[op](blob.getSource()); } else if (op === 'readAsBinaryString') { // readAsBinaryString is depricated in general and never existed in IE10+ _convertToBinary = true; _fr.readAsDataURL(blob.getSource()); } }, abort: function() { if (_fr) { _fr.abort(); } }, destroy: function() { _fr = null; } }); function _toBinary(str) { return Encode.atob(str.substring(str.indexOf('base64,') + 7)); } } return (extensions.FileReader = FileReader); }); // Included from: src/javascript/runtime/html5/xhr/XMLHttpRequest.js /** * XMLHttpRequest.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /*global ActiveXObject:true */ /** @class moxie/runtime/html5/xhr/XMLHttpRequest @private */ define("moxie/runtime/html5/xhr/XMLHttpRequest", [ "moxie/runtime/html5/Runtime", "moxie/core/utils/Basic", "moxie/core/utils/Mime", "moxie/core/utils/Url", "moxie/file/File", "moxie/file/Blob", "moxie/xhr/FormData", "moxie/core/Exceptions", "moxie/core/utils/Env" ], function(extensions, Basic, Mime, Url, File, Blob, FormData, x, Env) { function XMLHttpRequest() { var self = this , _xhr , _filename ; Basic.extend(this, { send: function(meta, data) { var target = this , isGecko2_5_6 = (Env.browser === 'Mozilla' && Env.verComp(Env.version, 4, '>=') && Env.verComp(Env.version, 7, '<')) , isAndroidBrowser = Env.browser === 'Android Browser' , mustSendAsBinary = false ; // extract file name _filename = meta.url.replace(/^.+?\/([\w\-\.]+)$/, '$1').toLowerCase(); _xhr = _getNativeXHR(); _xhr.open(meta.method, meta.url, meta.async, meta.user, meta.password); // prepare data to be sent if (data instanceof Blob) { if (data.isDetached()) { mustSendAsBinary = true; } data = data.getSource(); } else if (data instanceof FormData) { if (data.hasBlob()) { if (data.getBlob().isDetached()) { data = _prepareMultipart.call(target, data); // _xhr must be instantiated and be in OPENED state mustSendAsBinary = true; } else if ((isGecko2_5_6 || isAndroidBrowser) && Basic.typeOf(data.getBlob().getSource()) === 'blob' && window.FileReader) { // Gecko 2/5/6 can't send blob in FormData: https://bugzilla.mozilla.org/show_bug.cgi?id=649150 // Android browsers (default one and Dolphin) seem to have the same issue, see: #613 _preloadAndSend.call(target, meta, data); return; // _preloadAndSend will reinvoke send() with transmutated FormData =%D } } // transfer fields to real FormData if (data instanceof FormData) { // if still a FormData, e.g. not mangled by _prepareMultipart() var fd = new window.FormData(); data.each(function(value, name) { if (value instanceof Blob) { fd.append(name, value.getSource()); } else { fd.append(name, value); } }); data = fd; } } // if XHR L2 if (_xhr.upload) { if (meta.withCredentials) { _xhr.withCredentials = true; } _xhr.addEventListener('load', function(e) { target.trigger(e); }); _xhr.addEventListener('error', function(e) { target.trigger(e); }); // additionally listen to progress events _xhr.addEventListener('progress', function(e) { target.trigger(e); }); _xhr.upload.addEventListener('progress', function(e) { target.trigger({ type: 'UploadProgress', loaded: e.loaded, total: e.total }); }); // ... otherwise simulate XHR L2 } else { _xhr.onreadystatechange = function onReadyStateChange() { // fake Level 2 events switch (_xhr.readyState) { case 1: // XMLHttpRequest.OPENED // readystatechanged is fired twice for OPENED state (in IE and Mozilla) - neu break; // looks like HEADERS_RECEIVED (state 2) is not reported in Opera (or it's old versions) - neu case 2: // XMLHttpRequest.HEADERS_RECEIVED break; case 3: // XMLHttpRequest.LOADING // try to fire progress event for not XHR L2 var total, loaded; try { if (Url.hasSameOrigin(meta.url)) { // Content-Length not accessible for cross-domain on some browsers total = _xhr.getResponseHeader('Content-Length') || 0; // old Safari throws an exception here } if (_xhr.responseText) { // responseText was introduced in IE7 loaded = _xhr.responseText.length; } } catch(ex) { total = loaded = 0; } target.trigger({ type: 'progress', lengthComputable: !!total, total: parseInt(total, 10), loaded: loaded }); break; case 4: // XMLHttpRequest.DONE // release readystatechange handler (mostly for IE) _xhr.onreadystatechange = function() {}; // usually status 0 is returned when server is unreachable, but FF also fails to status 0 for 408 timeout if (_xhr.status === 0) { target.trigger('error'); } else { target.trigger('load'); } break; } }; } // set request headers if (!Basic.isEmptyObj(meta.headers)) { Basic.each(meta.headers, function(value, header) { _xhr.setRequestHeader(header, value); }); } // request response type if ("" !== meta.responseType && 'responseType' in _xhr) { if ('json' === meta.responseType && !Env.can('return_response_type', 'json')) { // we can fake this one _xhr.responseType = 'text'; } else { _xhr.responseType = meta.responseType; } } // send ... if (!mustSendAsBinary) { _xhr.send(data); } else { if (_xhr.sendAsBinary) { // Gecko _xhr.sendAsBinary(data); } else { // other browsers having support for typed arrays (function() { // mimic Gecko's sendAsBinary var ui8a = new Uint8Array(data.length); for (var i = 0; i < data.length; i++) { ui8a[i] = (data.charCodeAt(i) & 0xff); } _xhr.send(ui8a.buffer); }()); } } target.trigger('loadstart'); }, getStatus: function() { // according to W3C spec it should return 0 for readyState < 3, but instead it throws an exception try { if (_xhr) { return _xhr.status; } } catch(ex) {} return 0; }, getResponse: function(responseType) { var I = this.getRuntime(); try { switch (responseType) { case 'blob': var file = new File(I.uid, _xhr.response); // try to extract file name from content-disposition if possible (might be - not, if CORS for example) var disposition = _xhr.getResponseHeader('Content-Disposition'); if (disposition) { // extract filename from response header if available var match = disposition.match(/filename=([\'\"'])([^\1]+)\1/); if (match) { _filename = match[2]; } } file.name = _filename; // pre-webkit Opera doesn't set type property on the blob response if (!file.type) { file.type = Mime.getFileMime(_filename); } return file; case 'json': if (!Env.can('return_response_type', 'json')) { return _xhr.status === 200 && !!window.JSON ? JSON.parse(_xhr.responseText) : null; } return _xhr.response; case 'document': return _getDocument(_xhr); default: return _xhr.responseText !== '' ? _xhr.responseText : null; // against the specs, but for consistency across the runtimes } } catch(ex) { return null; } }, getAllResponseHeaders: function() { try { return _xhr.getAllResponseHeaders(); } catch(ex) {} return ''; }, abort: function() { if (_xhr) { _xhr.abort(); } }, destroy: function() { self = _filename = null; } }); // here we go... ugly fix for ugly bug function _preloadAndSend(meta, data) { var target = this, blob, fr; // get original blob blob = data.getBlob().getSource(); // preload blob in memory to be sent as binary string fr = new window.FileReader(); fr.onload = function() { // overwrite original blob data.append(data.getBlobName(), new Blob(null, { type: blob.type, data: fr.result })); // invoke send operation again self.send.call(target, meta, data); }; fr.readAsBinaryString(blob); } function _getNativeXHR() { if (window.XMLHttpRequest && !(Env.browser === 'IE' && Env.verComp(Env.version, 8, '<'))) { // IE7 has native XHR but it's buggy return new window.XMLHttpRequest(); } else { return (function() { var progIDs = ['Msxml2.XMLHTTP.6.0', 'Microsoft.XMLHTTP']; // if 6.0 available, use it, otherwise failback to default 3.0 for (var i = 0; i < progIDs.length; i++) { try { return new ActiveXObject(progIDs[i]); } catch (ex) {} } })(); } } // @credits Sergey Ilinsky (http://www.ilinsky.com/) function _getDocument(xhr) { var rXML = xhr.responseXML; var rText = xhr.responseText; // Try parsing responseText (@see: http://www.ilinsky.com/articles/XMLHttpRequest/#bugs-ie-responseXML-content-type) if (Env.browser === 'IE' && rText && rXML && !rXML.documentElement && /[^\/]+\/[^\+]+\+xml/.test(xhr.getResponseHeader("Content-Type"))) { rXML = new window.ActiveXObject("Microsoft.XMLDOM"); rXML.async = false; rXML.validateOnParse = false; rXML.loadXML(rText); } // Check if there is no error in document if (rXML) { if ((Env.browser === 'IE' && rXML.parseError !== 0) || !rXML.documentElement || rXML.documentElement.tagName === "parsererror") { return null; } } return rXML; } function _prepareMultipart(fd) { var boundary = '----moxieboundary' + new Date().getTime() , dashdash = '--' , crlf = '\r\n' , multipart = '' , I = this.getRuntime() ; if (!I.can('send_binary_string')) { throw new x.RuntimeError(x.RuntimeError.NOT_SUPPORTED_ERR); } _xhr.setRequestHeader('Content-Type', 'multipart/form-data; boundary=' + boundary); // append multipart parameters fd.each(function(value, name) { // Firefox 3.6 failed to convert multibyte characters to UTF-8 in sendAsBinary(), // so we try it here ourselves with: unescape(encodeURIComponent(value)) if (value instanceof Blob) { // Build RFC2388 blob multipart += dashdash + boundary + crlf + 'Content-Disposition: form-data; name="' + name + '"; filename="' + unescape(encodeURIComponent(value.name || 'blob')) + '"' + crlf + 'Content-Type: ' + (value.type || 'application/octet-stream') + crlf + crlf + value.getSource() + crlf; } else { multipart += dashdash + boundary + crlf + 'Content-Disposition: form-data; name="' + name + '"' + crlf + crlf + unescape(encodeURIComponent(value)) + crlf; } }); multipart += dashdash + boundary + dashdash + crlf; return multipart; } } return (extensions.XMLHttpRequest = XMLHttpRequest); }); // Included from: src/javascript/runtime/html5/utils/BinaryReader.js /** * BinaryReader.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/utils/BinaryReader @private */ define("moxie/runtime/html5/utils/BinaryReader", [ "moxie/core/utils/Basic" ], function(Basic) { function BinaryReader(data) { if (data instanceof ArrayBuffer) { ArrayBufferReader.apply(this, arguments); } else { UTF16StringReader.apply(this, arguments); } }   Basic.extend(BinaryReader.prototype, { littleEndian: false, read: function(idx, size) { var sum, mv, i; if (idx + size > this.length()) { throw new Error("You are trying to read outside the source boundaries."); } mv = this.littleEndian ? 0 : -8 * (size - 1) ; for (i = 0, sum = 0; i < size; i++) { sum |= (this.readByteAt(idx + i) << Math.abs(mv + i*8)); } return sum; }, write: function(idx, num, size) { var mv, i, str = ''; if (idx > this.length()) { throw new Error("You are trying to write outside the source boundaries."); } mv = this.littleEndian ? 0 : -8 * (size - 1) ; for (i = 0; i < size; i++) { this.writeByteAt(idx + i, (num >> Math.abs(mv + i*8)) & 255); } }, BYTE: function(idx) { return this.read(idx, 1); }, SHORT: function(idx) { return this.read(idx, 2); }, LONG: function(idx) { return this.read(idx, 4); }, SLONG: function(idx) { // 2's complement notation var num = this.read(idx, 4); return (num > 2147483647 ? num - 4294967296 : num); }, CHAR: function(idx) { return String.fromCharCode(this.read(idx, 1)); }, STRING: function(idx, count) { return this.asArray('CHAR', idx, count).join(''); }, asArray: function(type, idx, count) { var values = []; for (var i = 0; i < count; i++) { values[i] = this[type](idx + i); } return values; } }); function ArrayBufferReader(data) { var _dv = new DataView(data); Basic.extend(this, { readByteAt: function(idx) { return _dv.getUint8(idx); }, writeByteAt: function(idx, value) { _dv.setUint8(idx, value); }, SEGMENT: function(idx, size, value) { switch (arguments.length) { case 2: return data.slice(idx, idx + size); case 1: return data.slice(idx); case 3: if (value === null) { value = new ArrayBuffer(); } if (value instanceof ArrayBuffer) { var arr = new Uint8Array(this.length() - size + value.byteLength); if (idx > 0) { arr.set(new Uint8Array(data.slice(0, idx)), 0); } arr.set(new Uint8Array(value), idx); arr.set(new Uint8Array(data.slice(idx + size)), idx + value.byteLength); this.clear(); data = arr.buffer; _dv = new DataView(data); break; } default: return data; } }, length: function() { return data ? data.byteLength : 0; }, clear: function() { _dv = data = null; } }); } function UTF16StringReader(data) { Basic.extend(this, { readByteAt: function(idx) { return data.charCodeAt(idx); }, writeByteAt: function(idx, value) { putstr(String.fromCharCode(value), idx, 1); }, SEGMENT: function(idx, length, segment) { switch (arguments.length) { case 1: return data.substr(idx); case 2: return data.substr(idx, length); case 3: putstr(segment !== null ? segment : '', idx, length); break; default: return data; } }, length: function() { return data ? data.length : 0; }, clear: function() { data = null; } }); function putstr(segment, idx, length) { length = arguments.length === 3 ? length : data.length - idx - 1; data = data.substr(0, idx) + segment + data.substr(length + idx); } } return BinaryReader; }); // Included from: src/javascript/runtime/html5/image/JPEGHeaders.js /** * JPEGHeaders.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/JPEGHeaders @private */ define("moxie/runtime/html5/image/JPEGHeaders", [ "moxie/runtime/html5/utils/BinaryReader", "moxie/core/Exceptions" ], function(BinaryReader, x) { return function JPEGHeaders(data) { var headers = [], _br, idx, marker, length = 0; _br = new BinaryReader(data); // Check if data is jpeg if (_br.SHORT(0) !== 0xFFD8) { _br.clear(); throw new x.ImageError(x.ImageError.WRONG_FORMAT); } idx = 2; while (idx <= _br.length()) { marker = _br.SHORT(idx); // omit RST (restart) markers if (marker >= 0xFFD0 && marker <= 0xFFD7) { idx += 2; continue; } // no headers allowed after SOS marker if (marker === 0xFFDA || marker === 0xFFD9) { break; } length = _br.SHORT(idx + 2) + 2; // APPn marker detected if (marker >= 0xFFE1 && marker <= 0xFFEF) { headers.push({ hex: marker, name: 'APP' + (marker & 0x000F), start: idx, length: length, segment: _br.SEGMENT(idx, length) }); } idx += length; } _br.clear(); return { headers: headers, restore: function(data) { var max, i, br; br = new BinaryReader(data); idx = br.SHORT(2) == 0xFFE0 ? 4 + br.SHORT(4) : 2; for (i = 0, max = headers.length; i < max; i++) { br.SEGMENT(idx, 0, headers[i].segment); idx += headers[i].length; } data = br.SEGMENT(); br.clear(); return data; }, strip: function(data) { var br, headers, jpegHeaders, i; jpegHeaders = new JPEGHeaders(data); headers = jpegHeaders.headers; jpegHeaders.purge(); br = new BinaryReader(data); i = headers.length; while (i--) { br.SEGMENT(headers[i].start, headers[i].length, ''); } data = br.SEGMENT(); br.clear(); return data; }, get: function(name) { var array = []; for (var i = 0, max = headers.length; i < max; i++) { if (headers[i].name === name.toUpperCase()) { array.push(headers[i].segment); } } return array; }, set: function(name, segment) { var array = [], i, ii, max; if (typeof(segment) === 'string') { array.push(segment); } else { array = segment; } for (i = ii = 0, max = headers.length; i < max; i++) { if (headers[i].name === name.toUpperCase()) { headers[i].segment = array[ii]; headers[i].length = array[ii].length; ii++; } if (ii >= array.length) { break; } } }, purge: function() { this.headers = headers = []; } }; }; }); // Included from: src/javascript/runtime/html5/image/ExifParser.js /** * ExifParser.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/ExifParser @private */ define("moxie/runtime/html5/image/ExifParser", [ "moxie/core/utils/Basic", "moxie/runtime/html5/utils/BinaryReader", "moxie/core/Exceptions" ], function(Basic, BinaryReader, x) { function ExifParser(data) { var __super__, tags, tagDescs, offsets, idx, Tiff; BinaryReader.call(this, data); tags = { tiff: { /* The image orientation viewed in terms of rows and columns. 1 = The 0th row is at the visual top of the image, and the 0th column is the visual left-hand side. 2 = The 0th row is at the visual top of the image, and the 0th column is the visual right-hand side. 3 = The 0th row is at the visual bottom of the image, and the 0th column is the visual right-hand side. 4 = The 0th row is at the visual bottom of the image, and the 0th column is the visual left-hand side. 5 = The 0th row is the visual left-hand side of the image, and the 0th column is the visual top. 6 = The 0th row is the visual right-hand side of the image, and the 0th column is the visual top. 7 = The 0th row is the visual right-hand side of the image, and the 0th column is the visual bottom. 8 = The 0th row is the visual left-hand side of the image, and the 0th column is the visual bottom. */ 0x0112: 'Orientation', 0x010E: 'ImageDescription', 0x010F: 'Make', 0x0110: 'Model', 0x0131: 'Software', 0x8769: 'ExifIFDPointer', 0x8825: 'GPSInfoIFDPointer' }, exif: { 0x9000: 'ExifVersion', 0xA001: 'ColorSpace', 0xA002: 'PixelXDimension', 0xA003: 'PixelYDimension', 0x9003: 'DateTimeOriginal', 0x829A: 'ExposureTime', 0x829D: 'FNumber', 0x8827: 'ISOSpeedRatings', 0x9201: 'ShutterSpeedValue', 0x9202: 'ApertureValue' , 0x9207: 'MeteringMode', 0x9208: 'LightSource', 0x9209: 'Flash', 0x920A: 'FocalLength', 0xA402: 'ExposureMode', 0xA403: 'WhiteBalance', 0xA406: 'SceneCaptureType', 0xA404: 'DigitalZoomRatio', 0xA408: 'Contrast', 0xA409: 'Saturation', 0xA40A: 'Sharpness' }, gps: { 0x0000: 'GPSVersionID', 0x0001: 'GPSLatitudeRef', 0x0002: 'GPSLatitude', 0x0003: 'GPSLongitudeRef', 0x0004: 'GPSLongitude' }, thumb: { 0x0201: 'JPEGInterchangeFormat', 0x0202: 'JPEGInterchangeFormatLength' } }; tagDescs = { 'ColorSpace': { 1: 'sRGB', 0: 'Uncalibrated' }, 'MeteringMode': { 0: 'Unknown', 1: 'Average', 2: 'CenterWeightedAverage', 3: 'Spot', 4: 'MultiSpot', 5: 'Pattern', 6: 'Partial', 255: 'Other' }, 'LightSource': { 1: 'Daylight', 2: 'Fliorescent', 3: 'Tungsten', 4: 'Flash', 9: 'Fine weather', 10: 'Cloudy weather', 11: 'Shade', 12: 'Daylight fluorescent (D 5700 - 7100K)', 13: 'Day white fluorescent (N 4600 -5400K)', 14: 'Cool white fluorescent (W 3900 - 4500K)', 15: 'White fluorescent (WW 3200 - 3700K)', 17: 'Standard light A', 18: 'Standard light B', 19: 'Standard light C', 20: 'D55', 21: 'D65', 22: 'D75', 23: 'D50', 24: 'ISO studio tungsten', 255: 'Other' }, 'Flash': { 0x0000: 'Flash did not fire', 0x0001: 'Flash fired', 0x0005: 'Strobe return light not detected', 0x0007: 'Strobe return light detected', 0x0009: 'Flash fired, compulsory flash mode', 0x000D: 'Flash fired, compulsory flash mode, return light not detected', 0x000F: 'Flash fired, compulsory flash mode, return light detected', 0x0010: 'Flash did not fire, compulsory flash mode', 0x0018: 'Flash did not fire, auto mode', 0x0019: 'Flash fired, auto mode', 0x001D: 'Flash fired, auto mode, return light not detected', 0x001F: 'Flash fired, auto mode, return light detected', 0x0020: 'No flash function', 0x0041: 'Flash fired, red-eye reduction mode', 0x0045: 'Flash fired, red-eye reduction mode, return light not detected', 0x0047: 'Flash fired, red-eye reduction mode, return light detected', 0x0049: 'Flash fired, compulsory flash mode, red-eye reduction mode', 0x004D: 'Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected', 0x004F: 'Flash fired, compulsory flash mode, red-eye reduction mode, return light detected', 0x0059: 'Flash fired, auto mode, red-eye reduction mode', 0x005D: 'Flash fired, auto mode, return light not detected, red-eye reduction mode', 0x005F: 'Flash fired, auto mode, return light detected, red-eye reduction mode' }, 'ExposureMode': { 0: 'Auto exposure', 1: 'Manual exposure', 2: 'Auto bracket' }, 'WhiteBalance': { 0: 'Auto white balance', 1: 'Manual white balance' }, 'SceneCaptureType': { 0: 'Standard', 1: 'Landscape', 2: 'Portrait', 3: 'Night scene' }, 'Contrast': { 0: 'Normal', 1: 'Soft', 2: 'Hard' }, 'Saturation': { 0: 'Normal', 1: 'Low saturation', 2: 'High saturation' }, 'Sharpness': { 0: 'Normal', 1: 'Soft', 2: 'Hard' }, // GPS related 'GPSLatitudeRef': { N: 'North latitude', S: 'South latitude' }, 'GPSLongitudeRef': { E: 'East longitude', W: 'West longitude' } }; offsets = { tiffHeader: 10 }; idx = offsets.tiffHeader; __super__ = { clear: this.clear }; // Public functions Basic.extend(this, { read: function() { try { return ExifParser.prototype.read.apply(this, arguments); } catch (ex) { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } }, write: function() { try { return ExifParser.prototype.write.apply(this, arguments); } catch (ex) { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } }, UNDEFINED: function() { return this.BYTE.apply(this, arguments); }, RATIONAL: function(idx) { return this.LONG(idx) / this.LONG(idx + 4) }, SRATIONAL: function(idx) { return this.SLONG(idx) / this.SLONG(idx + 4) }, ASCII: function(idx) { return this.CHAR(idx); }, TIFF: function() { return Tiff || null; }, EXIF: function() { var Exif = null; if (offsets.exifIFD) { try { Exif = extractTags.call(this, offsets.exifIFD, tags.exif); } catch(ex) { return null; } // Fix formatting of some tags if (Exif.ExifVersion && Basic.typeOf(Exif.ExifVersion) === 'array') { for (var i = 0, exifVersion = ''; i < Exif.ExifVersion.length; i++) { exifVersion += String.fromCharCode(Exif.ExifVersion[i]); } Exif.ExifVersion = exifVersion; } } return Exif; }, GPS: function() { var GPS = null; if (offsets.gpsIFD) { try { GPS = extractTags.call(this, offsets.gpsIFD, tags.gps); } catch (ex) { return null; } // iOS devices (and probably some others) do not put in GPSVersionID tag (why?..) if (GPS.GPSVersionID && Basic.typeOf(GPS.GPSVersionID) === 'array') { GPS.GPSVersionID = GPS.GPSVersionID.join('.'); } } return GPS; }, thumb: function() { if (offsets.IFD1) { try { var IFD1Tags = extractTags.call(this, offsets.IFD1, tags.thumb); if ('JPEGInterchangeFormat' in IFD1Tags) { return this.SEGMENT(offsets.tiffHeader + IFD1Tags.JPEGInterchangeFormat, IFD1Tags.JPEGInterchangeFormatLength); } } catch (ex) {} } return null; }, setExif: function(tag, value) { // Right now only setting of width/height is possible if (tag !== 'PixelXDimension' && tag !== 'PixelYDimension') { return false; } return setTag.call(this, 'exif', tag, value); }, clear: function() { __super__.clear(); data = tags = tagDescs = Tiff = offsets = __super__ = null; } }); // Check if that's APP1 and that it has EXIF if (this.SHORT(0) !== 0xFFE1 || this.STRING(4, 5).toUpperCase() !== "EXIF\0") { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } // Set read order of multi-byte data this.littleEndian = (this.SHORT(idx) == 0x4949); // Check if always present bytes are indeed present if (this.SHORT(idx+=2) !== 0x002A) { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } offsets.IFD0 = offsets.tiffHeader + this.LONG(idx += 2); Tiff = extractTags.call(this, offsets.IFD0, tags.tiff); if ('ExifIFDPointer' in Tiff) { offsets.exifIFD = offsets.tiffHeader + Tiff.ExifIFDPointer; delete Tiff.ExifIFDPointer; } if ('GPSInfoIFDPointer' in Tiff) { offsets.gpsIFD = offsets.tiffHeader + Tiff.GPSInfoIFDPointer; delete Tiff.GPSInfoIFDPointer; } if (Basic.isEmptyObj(Tiff)) { Tiff = null; } // check if we have a thumb as well var IFD1Offset = this.LONG(offsets.IFD0 + this.SHORT(offsets.IFD0) * 12 + 2); if (IFD1Offset) { offsets.IFD1 = offsets.tiffHeader + IFD1Offset; } function extractTags(IFD_offset, tags2extract) { var data = this; var length, i, tag, type, count, size, offset, value, values = [], hash = {}; var types = { 1 : 'BYTE', 7 : 'UNDEFINED', 2 : 'ASCII', 3 : 'SHORT', 4 : 'LONG', 5 : 'RATIONAL', 9 : 'SLONG', 10: 'SRATIONAL' }; var sizes = { 'BYTE' : 1, 'UNDEFINED' : 1, 'ASCII' : 1, 'SHORT' : 2, 'LONG' : 4, 'RATIONAL' : 8, 'SLONG' : 4, 'SRATIONAL' : 8 }; length = data.SHORT(IFD_offset); // The size of APP1 including all these elements shall not exceed the 64 Kbytes specified in the JPEG standard. for (i = 0; i < length; i++) { values = []; // Set binary reader pointer to beginning of the next tag offset = IFD_offset + 2 + i*12; tag = tags2extract[data.SHORT(offset)]; if (tag === undefined) { continue; // Not the tag we requested } type = types[data.SHORT(offset+=2)]; count = data.LONG(offset+=2); size = sizes[type]; if (!size) { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } offset += 4; // tag can only fit 4 bytes of data, if data is larger we should look outside if (size * count > 4) { // instead of data tag contains an offset of the data offset = data.LONG(offset) + offsets.tiffHeader; } // in case we left the boundaries of data throw an early exception if (offset + size * count >= this.length()) { throw new x.ImageError(x.ImageError.INVALID_META_ERR); } // special care for the string if (type === 'ASCII') { hash[tag] = Basic.trim(data.STRING(offset, count).replace(/\0$/, '')); // strip trailing NULL continue; } else { values = data.asArray(type, offset, count); value = (count == 1 ? values[0] : values); if (tagDescs.hasOwnProperty(tag) && typeof value != 'object') { hash[tag] = tagDescs[tag][value]; } else { hash[tag] = value; } } } return hash; } // At the moment only setting of simple (LONG) values, that do not require offset recalculation, is supported function setTag(ifd, tag, value) { var offset, length, tagOffset, valueOffset = 0; // If tag name passed translate into hex key if (typeof(tag) === 'string') { var tmpTags = tags[ifd.toLowerCase()]; for (var hex in tmpTags) { if (tmpTags[hex] === tag) { tag = hex; break; } } } offset = offsets[ifd.toLowerCase() + 'IFD']; length = this.SHORT(offset); for (var i = 0; i < length; i++) { tagOffset = offset + 12 * i + 2; if (this.SHORT(tagOffset) == tag) { valueOffset = tagOffset + 8; break; } } if (!valueOffset) { return false; } try { this.write(valueOffset, value, 4); } catch(ex) { return false; } return true; } } ExifParser.prototype = BinaryReader.prototype; return ExifParser; }); // Included from: src/javascript/runtime/html5/image/JPEG.js /** * JPEG.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/JPEG @private */ define("moxie/runtime/html5/image/JPEG", [ "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/runtime/html5/image/JPEGHeaders", "moxie/runtime/html5/utils/BinaryReader", "moxie/runtime/html5/image/ExifParser" ], function(Basic, x, JPEGHeaders, BinaryReader, ExifParser) { function JPEG(data) { var _br, _hm, _ep, _info; _br = new BinaryReader(data); // check if it is jpeg if (_br.SHORT(0) !== 0xFFD8) { throw new x.ImageError(x.ImageError.WRONG_FORMAT); } // backup headers _hm = new JPEGHeaders(data); // extract exif info try { _ep = new ExifParser(_hm.get('app1')[0]); } catch(ex) {} // get dimensions _info = _getDimensions.call(this); Basic.extend(this, { type: 'image/jpeg', size: _br.length(), width: _info && _info.width || 0, height: _info && _info.height || 0, setExif: function(tag, value) { if (!_ep) { return false; // or throw an exception } if (Basic.typeOf(tag) === 'object') { Basic.each(tag, function(value, tag) { _ep.setExif(tag, value); }); } else { _ep.setExif(tag, value); } // update internal headers _hm.set('app1', _ep.SEGMENT()); }, writeHeaders: function() { if (!arguments.length) { // if no arguments passed, update headers internally return _hm.restore(data); } return _hm.restore(arguments[0]); }, stripHeaders: function(data) { return _hm.strip(data); }, purge: function() { _purge.call(this); } }); if (_ep) { this.meta = { tiff: _ep.TIFF(), exif: _ep.EXIF(), gps: _ep.GPS(), thumb: _getThumb() }; } function _getDimensions(br) { var idx = 0 , marker , length ; if (!br) { br = _br; } // examine all through the end, since some images might have very large APP segments while (idx <= br.length()) { marker = br.SHORT(idx += 2); if (marker >= 0xFFC0 && marker <= 0xFFC3) { // SOFn idx += 5; // marker (2 bytes) + length (2 bytes) + Sample precision (1 byte) return { height: br.SHORT(idx), width: br.SHORT(idx += 2) }; } length = br.SHORT(idx += 2); idx += length - 2; } return null; } function _getThumb() { var data = _ep.thumb() , br , info ; if (data) { br = new BinaryReader(data); info = _getDimensions(br); br.clear(); if (info) { info.data = data; return info; } } return null; } function _purge() { if (!_ep || !_hm || !_br) { return; // ignore any repeating purge requests } _ep.clear(); _hm.purge(); _br.clear(); _info = _hm = _ep = _br = null; } } return JPEG; }); // Included from: src/javascript/runtime/html5/image/PNG.js /** * PNG.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/PNG @private */ define("moxie/runtime/html5/image/PNG", [ "moxie/core/Exceptions", "moxie/core/utils/Basic", "moxie/runtime/html5/utils/BinaryReader" ], function(x, Basic, BinaryReader) { function PNG(data) { var _br, _hm, _ep, _info; _br = new BinaryReader(data); // check if it's png (function() { var idx = 0, i = 0 , signature = [0x8950, 0x4E47, 0x0D0A, 0x1A0A] ; for (i = 0; i < signature.length; i++, idx += 2) { if (signature[i] != _br.SHORT(idx)) { throw new x.ImageError(x.ImageError.WRONG_FORMAT); } } }()); function _getDimensions() { var chunk, idx; chunk = _getChunkAt.call(this, 8); if (chunk.type == 'IHDR') { idx = chunk.start; return { width: _br.LONG(idx), height: _br.LONG(idx += 4) }; } return null; } function _purge() { if (!_br) { return; // ignore any repeating purge requests } _br.clear(); data = _info = _hm = _ep = _br = null; } _info = _getDimensions.call(this); Basic.extend(this, { type: 'image/png', size: _br.length(), width: _info.width, height: _info.height, purge: function() { _purge.call(this); } }); // for PNG we can safely trigger purge automatically, as we do not keep any data for later _purge.call(this); function _getChunkAt(idx) { var length, type, start, CRC; length = _br.LONG(idx); type = _br.STRING(idx += 4, 4); start = idx += 4; CRC = _br.LONG(idx + length); return { length: length, type: type, start: start, CRC: CRC }; } } return PNG; }); // Included from: src/javascript/runtime/html5/image/ImageInfo.js /** * ImageInfo.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/ImageInfo @private */ define("moxie/runtime/html5/image/ImageInfo", [ "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/runtime/html5/image/JPEG", "moxie/runtime/html5/image/PNG" ], function(Basic, x, JPEG, PNG) { /** Optional image investigation tool for HTML5 runtime. Provides the following features: - ability to distinguish image type (JPEG or PNG) by signature - ability to extract image width/height directly from it's internals, without preloading in memory (fast) - ability to extract APP headers from JPEGs (Exif, GPS, etc) - ability to replace width/height tags in extracted JPEG headers - ability to restore APP headers, that were for example stripped during image manipulation @class ImageInfo @constructor @param {String} data Image source as binary string */ return function(data) { var _cs = [JPEG, PNG], _img; // figure out the format, throw: ImageError.WRONG_FORMAT if not supported _img = (function() { for (var i = 0; i < _cs.length; i++) { try { return new _cs[i](data); } catch (ex) { // console.info(ex); } } throw new x.ImageError(x.ImageError.WRONG_FORMAT); }()); Basic.extend(this, { /** Image Mime Type extracted from it's depths @property type @type {String} @default '' */ type: '', /** Image size in bytes @property size @type {Number} @default 0 */ size: 0, /** Image width extracted from image source @property width @type {Number} @default 0 */ width: 0, /** Image height extracted from image source @property height @type {Number} @default 0 */ height: 0, /** Sets Exif tag. Currently applicable only for width and height tags. Obviously works only with JPEGs. @method setExif @param {String} tag Tag to set @param {Mixed} value Value to assign to the tag */ setExif: function() {}, /** Restores headers to the source. @method writeHeaders @param {String} data Image source as binary string @return {String} Updated binary string */ writeHeaders: function(data) { return data; }, /** Strip all headers from the source. @method stripHeaders @param {String} data Image source as binary string @return {String} Updated binary string */ stripHeaders: function(data) { return data; }, /** Dispose resources. @method purge */ purge: function() { data = null; } }); Basic.extend(this, _img); this.purge = function() { _img.purge(); _img = null; }; }; }); // Included from: src/javascript/runtime/html5/image/MegaPixel.js /** (The MIT License) Copyright (c) 2012 Shinichi Tomita ; Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /** * Mega pixel image rendering library for iOS6 Safari * * Fixes iOS6 Safari's image file rendering issue for large size image (over mega-pixel), * which causes unexpected subsampling when drawing it in canvas. * By using this library, you can safely render the image with proper stretching. * * Copyright (c) 2012 Shinichi Tomita * Released under the MIT license */ /** @class moxie/runtime/html5/image/MegaPixel @private */ define("moxie/runtime/html5/image/MegaPixel", [], function() { /** * Rendering image element (with resizing) into the canvas element */ function renderImageToCanvas(img, canvas, options) { var iw = img.naturalWidth, ih = img.naturalHeight; var width = options.width, height = options.height; var x = options.x || 0, y = options.y || 0; var ctx = canvas.getContext('2d'); if (detectSubsampling(img)) { iw /= 2; ih /= 2; } var d = 1024; // size of tiling canvas var tmpCanvas = document.createElement('canvas'); tmpCanvas.width = tmpCanvas.height = d; var tmpCtx = tmpCanvas.getContext('2d'); var vertSquashRatio = detectVerticalSquash(img, iw, ih); var sy = 0; while (sy < ih) { var sh = sy + d > ih ? ih - sy : d; var sx = 0; while (sx < iw) { var sw = sx + d > iw ? iw - sx : d; tmpCtx.clearRect(0, 0, d, d); tmpCtx.drawImage(img, -sx, -sy); var dx = (sx * width / iw + x) << 0; var dw = Math.ceil(sw * width / iw); var dy = (sy * height / ih / vertSquashRatio + y) << 0; var dh = Math.ceil(sh * height / ih / vertSquashRatio); ctx.drawImage(tmpCanvas, 0, 0, sw, sh, dx, dy, dw, dh); sx += d; } sy += d; } tmpCanvas = tmpCtx = null; } /** * Detect subsampling in loaded image. * In iOS, larger images than 2M pixels may be subsampled in rendering. */ function detectSubsampling(img) { var iw = img.naturalWidth, ih = img.naturalHeight; if (iw * ih > 1024 * 1024) { // subsampling may happen over megapixel image var canvas = document.createElement('canvas'); canvas.width = canvas.height = 1; var ctx = canvas.getContext('2d'); ctx.drawImage(img, -iw + 1, 0); // subsampled image becomes half smaller in rendering size. // check alpha channel value to confirm image is covering edge pixel or not. // if alpha value is 0 image is not covering, hence subsampled. return ctx.getImageData(0, 0, 1, 1).data[3] === 0; } else { return false; } } /** * Detecting vertical squash in loaded image. * Fixes a bug which squash image vertically while drawing into canvas for some images. */ function detectVerticalSquash(img, iw, ih) { var canvas = document.createElement('canvas'); canvas.width = 1; canvas.height = ih; var ctx = canvas.getContext('2d'); ctx.drawImage(img, 0, 0); var data = ctx.getImageData(0, 0, 1, ih).data; // search image edge pixel position in case it is squashed vertically. var sy = 0; var ey = ih; var py = ih; while (py > sy) { var alpha = data[(py - 1) * 4 + 3]; if (alpha === 0) { ey = py; } else { sy = py; } py = (ey + sy) >> 1; } canvas = null; var ratio = (py / ih); return (ratio === 0) ? 1 : ratio; } return { isSubsampled: detectSubsampling, renderTo: renderImageToCanvas }; }); // Included from: src/javascript/runtime/html5/image/Image.js /** * Image.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html5/image/Image @private */ define("moxie/runtime/html5/image/Image", [ "moxie/runtime/html5/Runtime", "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/core/utils/Encode", "moxie/file/Blob", "moxie/file/File", "moxie/runtime/html5/image/ImageInfo", "moxie/runtime/html5/image/MegaPixel", "moxie/core/utils/Mime", "moxie/core/utils/Env" ], function(extensions, Basic, x, Encode, Blob, File, ImageInfo, MegaPixel, Mime, Env) { function HTML5Image() { var me = this , _img, _imgInfo, _canvas, _binStr, _blob , _modified = false // is set true whenever image is modified , _preserveHeaders = true ; Basic.extend(this, { loadFromBlob: function(blob) { var comp = this, I = comp.getRuntime() , asBinary = arguments.length > 1 ? arguments[1] : true ; if (!I.can('access_binary')) { throw new x.RuntimeError(x.RuntimeError.NOT_SUPPORTED_ERR); } _blob = blob; if (blob.isDetached()) { _binStr = blob.getSource(); _preload.call(this, _binStr); return; } else { _readAsDataUrl.call(this, blob.getSource(), function(dataUrl) { if (asBinary) { _binStr = _toBinary(dataUrl); } _preload.call(comp, dataUrl); }); } }, loadFromImage: function(img, exact) { this.meta = img.meta; _blob = new File(null, { name: img.name, size: img.size, type: img.type }); _preload.call(this, exact ? (_binStr = img.getAsBinaryString()) : img.getAsDataURL()); }, getInfo: function() { var I = this.getRuntime(), info; if (!_imgInfo && _binStr && I.can('access_image_binary')) { _imgInfo = new ImageInfo(_binStr); } info = { width: _getImg().width || 0, height: _getImg().height || 0, type: _blob.type || Mime.getFileMime(_blob.name), size: _binStr && _binStr.length || _blob.size || 0, name: _blob.name || '', meta: _imgInfo && _imgInfo.meta || this.meta || {} }; // store thumbnail data as blob if (info.meta && info.meta.thumb && !(info.meta.thumb.data instanceof Blob)) { info.meta.thumb.data = new Blob(null, { type: 'image/jpeg', data: info.meta.thumb.data }); } return info; }, downsize: function() { _downsize.apply(this, arguments); }, getAsCanvas: function() { if (_canvas) { _canvas.id = this.uid + '_canvas'; } return _canvas; }, getAsBlob: function(type, quality) { if (type !== this.type) { // if different mime type requested prepare image for conversion _downsize.call(this, this.width, this.height, false); } return new File(null, { name: _blob.name || '', type: type, data: me.getAsBinaryString.call(this, type, quality) }); }, getAsDataURL: function(type) { var quality = arguments[1] || 90; // if image has not been modified, return the source right away if (!_modified) { return _img.src; } if ('image/jpeg' !== type) { return _canvas.toDataURL('image/png'); } else { try { // older Geckos used to result in an exception on quality argument return _canvas.toDataURL('image/jpeg', quality/100); } catch (ex) { return _canvas.toDataURL('image/jpeg'); } } }, getAsBinaryString: function(type, quality) { // if image has not been modified, return the source right away if (!_modified) { // if image was not loaded from binary string if (!_binStr) { _binStr = _toBinary(me.getAsDataURL(type, quality)); } return _binStr; } if ('image/jpeg' !== type) { _binStr = _toBinary(me.getAsDataURL(type, quality)); } else { var dataUrl; // if jpeg if (!quality) { quality = 90; } try { // older Geckos used to result in an exception on quality argument dataUrl = _canvas.toDataURL('image/jpeg', quality/100); } catch (ex) { dataUrl = _canvas.toDataURL('image/jpeg'); } _binStr = _toBinary(dataUrl); if (_imgInfo) { _binStr = _imgInfo.stripHeaders(_binStr); if (_preserveHeaders) { // update dimensions info in exif if (_imgInfo.meta && _imgInfo.meta.exif) { _imgInfo.setExif({ PixelXDimension: this.width, PixelYDimension: this.height }); } // re-inject the headers _binStr = _imgInfo.writeHeaders(_binStr); } // will be re-created from fresh on next getInfo call _imgInfo.purge(); _imgInfo = null; } } _modified = false; return _binStr; }, destroy: function() { me = null; _purge.call(this); this.getRuntime().getShim().removeInstance(this.uid); } }); function _getImg() { if (!_canvas && !_img) { throw new x.ImageError(x.DOMException.INVALID_STATE_ERR); } return _canvas || _img; } function _toBinary(str) { return Encode.atob(str.substring(str.indexOf('base64,') + 7)); } function _toDataUrl(str, type) { return 'data:' + (type || '') + ';base64,' + Encode.btoa(str); } function _preload(str) { var comp = this; _img = new Image(); _img.onerror = function() { _purge.call(this); comp.trigger('error', x.ImageError.WRONG_FORMAT); }; _img.onload = function() { comp.trigger('load'); }; _img.src = str.substr(0, 5) == 'data:' ? str : _toDataUrl(str, _blob.type); } function _readAsDataUrl(file, callback) { var comp = this, fr; // use FileReader if it's available if (window.FileReader) { fr = new FileReader(); fr.onload = function() { callback(this.result); }; fr.onerror = function() { comp.trigger('error', x.ImageError.WRONG_FORMAT); }; fr.readAsDataURL(file); } else { return callback(file.getAsDataURL()); } } function _downsize(width, height, crop, preserveHeaders) { var self = this , scale , mathFn , x = 0 , y = 0 , img , destWidth , destHeight , orientation ; _preserveHeaders = preserveHeaders; // we will need to check this on export (see getAsBinaryString()) // take into account orientation tag orientation = (this.meta && this.meta.tiff && this.meta.tiff.Orientation) || 1; if (Basic.inArray(orientation, [5,6,7,8]) !== -1) { // values that require 90 degree rotation // swap dimensions var tmp = width; width = height; height = tmp; } img = _getImg(); // unify dimensions if (!crop) { scale = Math.min(width/img.width, height/img.height); } else { // one of the dimensions may exceed the actual image dimensions - we need to take the smallest value width = Math.min(width, img.width); height = Math.min(height, img.height); scale = Math.max(width/img.width, height/img.height); } // we only downsize here if (scale > 1 && !crop && preserveHeaders) { this.trigger('Resize'); return; } // prepare canvas if necessary if (!_canvas) { _canvas = document.createElement("canvas"); } // calculate dimensions of proportionally resized image destWidth = Math.round(img.width * scale); destHeight = Math.round(img.height * scale); // scale image and canvas if (crop) { _canvas.width = width; _canvas.height = height; // if dimensions of the resulting image still larger than canvas, center it if (destWidth > width) { x = Math.round((destWidth - width) / 2); } if (destHeight > height) { y = Math.round((destHeight - height) / 2); } } else { _canvas.width = destWidth; _canvas.height = destHeight; } // rotate if required, according to orientation tag if (!_preserveHeaders) { _rotateToOrientaion(_canvas.width, _canvas.height, orientation); } _drawToCanvas.call(this, img, _canvas, -x, -y, destWidth, destHeight); this.width = _canvas.width; this.height = _canvas.height; _modified = true; self.trigger('Resize'); } function _drawToCanvas(img, canvas, x, y, w, h) { if (Env.OS === 'iOS') { // avoid squish bug in iOS6 MegaPixel.renderTo(img, canvas, { width: w, height: h, x: x, y: y }); } else { var ctx = canvas.getContext('2d'); ctx.drawImage(img, x, y, w, h); } } /** * Transform canvas coordination according to specified frame size and orientation * Orientation value is from EXIF tag * @author Shinichi Tomita */ function _rotateToOrientaion(width, height, orientation) { switch (orientation) { case 5: case 6: case 7: case 8: _canvas.width = height; _canvas.height = width; break; default: _canvas.width = width; _canvas.height = height; } /** 1 = The 0th row is at the visual top of the image, and the 0th column is the visual left-hand side. 2 = The 0th row is at the visual top of the image, and the 0th column is the visual right-hand side. 3 = The 0th row is at the visual bottom of the image, and the 0th column is the visual right-hand side. 4 = The 0th row is at the visual bottom of the image, and the 0th column is the visual left-hand side. 5 = The 0th row is the visual left-hand side of the image, and the 0th column is the visual top. 6 = The 0th row is the visual right-hand side of the image, and the 0th column is the visual top. 7 = The 0th row is the visual right-hand side of the image, and the 0th column is the visual bottom. 8 = The 0th row is the visual left-hand side of the image, and the 0th column is the visual bottom. */ var ctx = _canvas.getContext('2d'); switch (orientation) { case 2: // horizontal flip ctx.translate(width, 0); ctx.scale(-1, 1); break; case 3: // 180 rotate left ctx.translate(width, height); ctx.rotate(Math.PI); break; case 4: // vertical flip ctx.translate(0, height); ctx.scale(1, -1); break; case 5: // vertical flip + 90 rotate right ctx.rotate(0.5 * Math.PI); ctx.scale(1, -1); break; case 6: // 90 rotate right ctx.rotate(0.5 * Math.PI); ctx.translate(0, -height); break; case 7: // horizontal flip + 90 rotate right ctx.rotate(0.5 * Math.PI); ctx.translate(width, -height); ctx.scale(-1, 1); break; case 8: // 90 rotate left ctx.rotate(-0.5 * Math.PI); ctx.translate(-width, 0); break; } } function _purge() { if (_imgInfo) { _imgInfo.purge(); _imgInfo = null; } _binStr = _img = _canvas = _blob = null; _modified = false; } } return (extensions.Image = HTML5Image); }); /** * Stub for moxie/runtime/flash/Runtime * @private */ define("moxie/runtime/flash/Runtime", [ ], function() { return {}; }); /** * Stub for moxie/runtime/silverlight/Runtime * @private */ define("moxie/runtime/silverlight/Runtime", [ ], function() { return {}; }); // Included from: src/javascript/runtime/html4/Runtime.js /** * Runtime.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /*global File:true */ /** Defines constructor for HTML4 runtime. @class moxie/runtime/html4/Runtime @private */ define("moxie/runtime/html4/Runtime", [ "moxie/core/utils/Basic", "moxie/core/Exceptions", "moxie/runtime/Runtime", "moxie/core/utils/Env" ], function(Basic, x, Runtime, Env) { var type = 'html4', extensions = {}; function Html4Runtime(options) { var I = this , Test = Runtime.capTest , True = Runtime.capTrue ; Runtime.call(this, options, type, { access_binary: Test(window.FileReader || window.File && File.getAsDataURL), access_image_binary: false, display_media: Test(extensions.Image && (Env.can('create_canvas') || Env.can('use_data_uri_over32kb'))), do_cors: false, drag_and_drop: false, filter_by_extension: Test(function() { // if you know how to feature-detect this, please suggest return (Env.browser === 'Chrome' && Env.verComp(Env.version, 28, '>=')) || (Env.browser === 'IE' && Env.verComp(Env.version, 10, '>=')) || (Env.browser === 'Safari' && Env.verComp(Env.version, 7, '>=')); }()), resize_image: function() { return extensions.Image && I.can('access_binary') && Env.can('create_canvas'); }, report_upload_progress: false, return_response_headers: false, return_response_type: function(responseType) { if (responseType === 'json' && !!window.JSON) { return true; } return !!~Basic.inArray(responseType, ['text', 'document', '']); }, return_status_code: function(code) { return !Basic.arrayDiff(code, [200, 404]); }, select_file: function() { return Env.can('use_fileinput'); }, select_multiple: false, send_binary_string: false, send_custom_headers: false, send_multipart: true, slice_blob: false, stream_upload: function() { return I.can('select_file'); }, summon_file_dialog: function() { // yeah... some dirty sniffing here... return I.can('select_file') && ( (Env.browser === 'Firefox' && Env.verComp(Env.version, 4, '>=')) || (Env.browser === 'Opera' && Env.verComp(Env.version, 12, '>=')) || (Env.browser === 'IE' && Env.verComp(Env.version, 10, '>=')) || !!~Basic.inArray(Env.browser, ['Chrome', 'Safari']) ); }, upload_filesize: True, use_http_method: function(methods) { return !Basic.arrayDiff(methods, ['GET', 'POST']); } }); Basic.extend(this, { init : function() { this.trigger("Init"); }, destroy: (function(destroy) { // extend default destroy method return function() { destroy.call(I); destroy = I = null; }; }(this.destroy)) }); Basic.extend(this.getShim(), extensions); } Runtime.addConstructor(type, Html4Runtime); return extensions; }); // Included from: src/javascript/runtime/html4/file/FileInput.js /** * FileInput.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html4/file/FileInput @private */ define("moxie/runtime/html4/file/FileInput", [ "moxie/runtime/html4/Runtime", "moxie/file/File", "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/utils/Events", "moxie/core/utils/Mime", "moxie/core/utils/Env" ], function(extensions, File, Basic, Dom, Events, Mime, Env) { function FileInput() { var _uid, _mimes = [], _options; function addInput() { var comp = this, I = comp.getRuntime(), shimContainer, browseButton, currForm, form, input, uid; uid = Basic.guid('uid_'); shimContainer = I.getShimContainer(); // we get new ref everytime to avoid memory leaks in IE if (_uid) { // move previous form out of the view currForm = Dom.get(_uid + '_form'); if (currForm) { Basic.extend(currForm.style, { top: '100%' }); } } // build form in DOM, since innerHTML version not able to submit file for some reason form = document.createElement('form'); form.setAttribute('id', uid + '_form'); form.setAttribute('method', 'post'); form.setAttribute('enctype', 'multipart/form-data'); form.setAttribute('encoding', 'multipart/form-data'); Basic.extend(form.style, { overflow: 'hidden', position: 'absolute', top: 0, left: 0, width: '100%', height: '100%' }); input = document.createElement('input'); input.setAttribute('id', uid); input.setAttribute('type', 'file'); input.setAttribute('name', _options.name || 'Filedata'); input.setAttribute('accept', _mimes.join(',')); Basic.extend(input.style, { fontSize: '999px', opacity: 0 }); form.appendChild(input); shimContainer.appendChild(form); // prepare file input to be placed underneath the browse_button element Basic.extend(input.style, { position: 'absolute', top: 0, left: 0, width: '100%', height: '100%' }); if (Env.browser === 'IE' && Env.verComp(Env.version, 10, '<')) { Basic.extend(input.style, { filter : "progid:DXImageTransform.Microsoft.Alpha(opacity=0)" }); } input.onchange = function() { // there should be only one handler for this var file; if (!this.value) { return; } if (this.files) { // check if browser is fresh enough file = this.files[0]; // ignore empty files (IE10 for example hangs if you try to send them via XHR) if (file.size === 0) { form.parentNode.removeChild(form); return; } } else { file = { name: this.value }; } file = new File(I.uid, file); // clear event handler this.onchange = function() {}; addInput.call(comp); comp.files = [file]; // substitute all ids with file uids (consider file.uid read-only - we cannot do it the other way around) input.setAttribute('id', file.uid); form.setAttribute('id', file.uid + '_form'); comp.trigger('change'); input = form = null; }; // route click event to the input if (I.can('summon_file_dialog')) { browseButton = Dom.get(_options.browse_button); Events.removeEvent(browseButton, 'click', comp.uid); Events.addEvent(browseButton, 'click', function(e) { if (input && !input.disabled) { // for some reason FF (up to 8.0.1 so far) lets to click disabled input[type=file] input.click(); } e.preventDefault(); }, comp.uid); } _uid = uid; shimContainer = currForm = browseButton = null; } Basic.extend(this, { init: function(options) { var comp = this, I = comp.getRuntime(), shimContainer; // figure out accept string _options = options; _mimes = options.accept.mimes || Mime.extList2mimes(options.accept, I.can('filter_by_extension')); shimContainer = I.getShimContainer(); (function() { var browseButton, zIndex, top; browseButton = Dom.get(options.browse_button); // Route click event to the input[type=file] element for browsers that support such behavior if (I.can('summon_file_dialog')) { if (Dom.getStyle(browseButton, 'position') === 'static') { browseButton.style.position = 'relative'; } zIndex = parseInt(Dom.getStyle(browseButton, 'z-index'), 10) || 1; browseButton.style.zIndex = zIndex; shimContainer.style.zIndex = zIndex - 1; } /* Since we have to place input[type=file] on top of the browse_button for some browsers, browse_button loses interactivity, so we restore it here */ top = I.can('summon_file_dialog') ? browseButton : shimContainer; Events.addEvent(top, 'mouseover', function() { comp.trigger('mouseenter'); }, comp.uid); Events.addEvent(top, 'mouseout', function() { comp.trigger('mouseleave'); }, comp.uid); Events.addEvent(top, 'mousedown', function() { comp.trigger('mousedown'); }, comp.uid); Events.addEvent(Dom.get(options.container), 'mouseup', function() { comp.trigger('mouseup'); }, comp.uid); browseButton = null; }()); addInput.call(this); shimContainer = null; // trigger ready event asynchronously comp.trigger({ type: 'ready', async: true }); }, disable: function(state) { var input; if ((input = Dom.get(_uid))) { input.disabled = !!state; } }, destroy: function() { var I = this.getRuntime() , shim = I.getShim() , shimContainer = I.getShimContainer() ; Events.removeAllEvents(shimContainer, this.uid); Events.removeAllEvents(_options && Dom.get(_options.container), this.uid); Events.removeAllEvents(_options && Dom.get(_options.browse_button), this.uid); if (shimContainer) { shimContainer.innerHTML = ''; } shim.removeInstance(this.uid); _uid = _mimes = _options = shimContainer = shim = null; } }); } return (extensions.FileInput = FileInput); }); // Included from: src/javascript/runtime/html4/file/FileReader.js /** * FileReader.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html4/file/FileReader @private */ define("moxie/runtime/html4/file/FileReader", [ "moxie/runtime/html4/Runtime", "moxie/runtime/html5/file/FileReader" ], function(extensions, FileReader) { return (extensions.FileReader = FileReader); }); // Included from: src/javascript/runtime/html4/xhr/XMLHttpRequest.js /** * XMLHttpRequest.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html4/xhr/XMLHttpRequest @private */ define("moxie/runtime/html4/xhr/XMLHttpRequest", [ "moxie/runtime/html4/Runtime", "moxie/core/utils/Basic", "moxie/core/utils/Dom", "moxie/core/utils/Url", "moxie/core/Exceptions", "moxie/core/utils/Events", "moxie/file/Blob", "moxie/xhr/FormData" ], function(extensions, Basic, Dom, Url, x, Events, Blob, FormData) { function XMLHttpRequest() { var _status, _response, _iframe; function cleanup(cb) { var target = this, uid, form, inputs, i, hasFile = false; if (!_iframe) { return; } uid = _iframe.id.replace(/_iframe$/, ''); form = Dom.get(uid + '_form'); if (form) { inputs = form.getElementsByTagName('input'); i = inputs.length; while (i--) { switch (inputs[i].getAttribute('type')) { case 'hidden': inputs[i].parentNode.removeChild(inputs[i]); break; case 'file': hasFile = true; // flag the case for later break; } } inputs = []; if (!hasFile) { // we need to keep the form for sake of possible retries form.parentNode.removeChild(form); } form = null; } // without timeout, request is marked as canceled (in console) setTimeout(function() { Events.removeEvent(_iframe, 'load', target.uid); if (_iframe.parentNode) { // #382 _iframe.parentNode.removeChild(_iframe); } // check if shim container has any other children, if - not, remove it as well var shimContainer = target.getRuntime().getShimContainer(); if (!shimContainer.children.length) { shimContainer.parentNode.removeChild(shimContainer); } shimContainer = _iframe = null; cb(); }, 1); } Basic.extend(this, { send: function(meta, data) { var target = this, I = target.getRuntime(), uid, form, input, blob; _status = _response = null; function createIframe() { var container = I.getShimContainer() || document.body , temp = document.createElement('div') ; // IE 6 won't be able to set the name using setAttribute or iframe.name temp.innerHTML = ''; _iframe = temp.firstChild; container.appendChild(_iframe); /* _iframe.onreadystatechange = function() { console.info(_iframe.readyState); };*/ Events.addEvent(_iframe, 'load', function() { // _iframe.onload doesn't work in IE lte 8 var el; try { el = _iframe.contentWindow.document || _iframe.contentDocument || window.frames[_iframe.id].document; // try to detect some standard error pages if (/^4(0[0-9]|1[0-7]|2[2346])\s/.test(el.title)) { // test if title starts with 4xx HTTP error _status = el.title.replace(/^(\d+).*$/, '$1'); } else { _status = 200; // get result _response = Basic.trim(el.body.innerHTML); // we need to fire these at least once target.trigger({ type: 'progress', loaded: _response.length, total: _response.length }); if (blob) { // if we were uploading a file target.trigger({ type: 'uploadprogress', loaded: blob.size || 1025, total: blob.size || 1025 }); } } } catch (ex) { if (Url.hasSameOrigin(meta.url)) { // if response is sent with error code, iframe in IE gets redirected to res://ieframe.dll/http_x.htm // which obviously results to cross domain error (wtf?) _status = 404; } else { cleanup.call(target, function() { target.trigger('error'); }); return; } } cleanup.call(target, function() { target.trigger('load'); }); }, target.uid); } // end createIframe // prepare data to be sent and convert if required if (data instanceof FormData && data.hasBlob()) { blob = data.getBlob(); uid = blob.uid; input = Dom.get(uid); form = Dom.get(uid + '_form'); if (!form) { throw new x.DOMException(x.DOMException.NOT_FOUND_ERR); } } else { uid = Basic.guid('uid_'); form = document.createElement('form'); form.setAttribute('id', uid + '_form'); form.setAttribute('method', meta.method); form.setAttribute('enctype', 'multipart/form-data'); form.setAttribute('encoding', 'multipart/form-data'); I.getShimContainer().appendChild(form); } // set upload target form.setAttribute('target', uid + '_iframe'); if (data instanceof FormData) { data.each(function(value, name) { if (value instanceof Blob) { if (input) { input.setAttribute('name', name); } } else { var hidden = document.createElement('input'); Basic.extend(hidden, { type : 'hidden', name : name, value : value }); // make sure that input[type="file"], if it's there, comes last if (input) { form.insertBefore(hidden, input); } else { form.appendChild(hidden); } } }); } // set destination url form.setAttribute("action", meta.url); createIframe(); form.submit(); target.trigger('loadstart'); }, getStatus: function() { return _status; }, getResponse: function(responseType) { if ('json' === responseType) { // strip off
    ..
    tags that might be enclosing the response if (Basic.typeOf(_response) === 'string' && !!window.JSON) { try { return JSON.parse(_response.replace(/^\s*]*>/, '').replace(/<\/pre>\s*$/, '')); } catch (ex) { return null; } } } else if ('document' === responseType) { } return _response; }, abort: function() { var target = this; if (_iframe && _iframe.contentWindow) { if (_iframe.contentWindow.stop) { // FireFox/Safari/Chrome _iframe.contentWindow.stop(); } else if (_iframe.contentWindow.document.execCommand) { // IE _iframe.contentWindow.document.execCommand('Stop'); } else { _iframe.src = "about:blank"; } } cleanup.call(this, function() { // target.dispatchEvent('readystatechange'); target.dispatchEvent('abort'); }); } }); } return (extensions.XMLHttpRequest = XMLHttpRequest); }); // Included from: src/javascript/runtime/html4/image/Image.js /** * Image.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /** @class moxie/runtime/html4/image/Image @private */ define("moxie/runtime/html4/image/Image", [ "moxie/runtime/html4/Runtime", "moxie/runtime/html5/image/Image" ], function(extensions, Image) { return (extensions.Image = Image); }); expose(["moxie/core/utils/Basic","moxie/core/utils/Env","moxie/core/I18n","moxie/core/utils/Mime","moxie/core/utils/Dom","moxie/core/Exceptions","moxie/core/EventTarget","moxie/runtime/Runtime","moxie/runtime/RuntimeClient","moxie/file/FileInput","moxie/core/utils/Encode","moxie/file/Blob","moxie/file/File","moxie/file/FileDrop","moxie/file/FileReader","moxie/core/utils/Url","moxie/runtime/RuntimeTarget","moxie/file/FileReaderSync","moxie/xhr/FormData","moxie/xhr/XMLHttpRequest","moxie/runtime/Transporter","moxie/image/Image","moxie/core/utils/Events"]); })(this); /** * o.js * * Copyright 2013, Moxiecode Systems AB * Released under GPL License. * * License: http://www.plupload.com/license * Contributing: http://www.plupload.com/contributing */ /*global moxie:true */ /** Globally exposed namespace with the most frequently used public classes and handy methods. @class o @static @private */ (function(exports) { "use strict"; var o = {}, inArray = exports.moxie.core.utils.Basic.inArray; // directly add some public classes // (we do it dynamically here, since for custom builds we cannot know beforehand what modules were included) (function addAlias(ns) { var name, itemType; for (name in ns) { itemType = typeof(ns[name]); if (itemType === 'object' && !~inArray(name, ['Exceptions', 'Env', 'Mime'])) { addAlias(ns[name]); } else if (itemType === 'function') { o[name] = ns[name]; } } })(exports.moxie); // add some manually o.Env = exports.moxie.core.utils.Env; o.Mime = exports.moxie.core.utils.Mime; o.Exceptions = exports.moxie.core.Exceptions; // expose globally exports.mOxie = o; if (!exports.o) { exports.o = o; } return o; })(this); PKv\J <<plupload/plupload.min.jsnuW+A!function(e,I,S){var T=e.setTimeout,D={};function w(e){var t=e.required_features,r={};function i(e,t,i){var n={chunks:"slice_blob",jpgresize:"send_binary_string",pngresize:"send_binary_string",progress:"report_upload_progress",multi_selection:"select_multiple",dragdrop:"drag_and_drop",drop_element:"drag_and_drop",headers:"send_custom_headers",urlstream_upload:"send_binary_string",canSendBinary:"send_binary",triggerDialog:"summon_file_dialog"};n[e]?r[n[e]]=t:i||(r[e]=t)}return"string"==typeof t?F.each(t.split(/\s*,\s*/),function(e){i(e,!0)}):"object"==typeof t?F.each(t,function(e,t){i(t,e)}):!0===t&&(0":"gt","&":"amp",'"':"quot","'":"#39"};return e&&(""+e).replace(/[<>&\"\']/g,function(e){return t[e]?"&"+t[e]+";":e})},toArray:I.toArray,inArray:I.inArray,addI18n:I.addI18n,translate:I.translate,isEmptyObj:I.isEmptyObj,hasClass:I.hasClass,addClass:I.addClass,removeClass:I.removeClass,getStyle:I.getStyle,addEvent:I.addEvent,removeEvent:I.removeEvent,removeAllEvents:I.removeAllEvents,cleanName:function(e){for(var t=[/[\300-\306]/g,"A",/[\340-\346]/g,"a",/\307/g,"C",/\347/g,"c",/[\310-\313]/g,"E",/[\350-\353]/g,"e",/[\314-\317]/g,"I",/[\354-\357]/g,"i",/\321/g,"N",/\361/g,"n",/[\322-\330]/g,"O",/[\362-\370]/g,"o",/[\331-\334]/g,"U",/[\371-\374]/g,"u"],i=0;i(i/=1024)?t(e/i,1)+" "+F.translate("gb"):e>(i/=1024)?t(e/i,1)+" "+F.translate("mb"):1024e?(this.trigger("Error",{code:F.FILE_SIZE_ERROR,message:F.translate("File size error."),file:t}),i(!1)):i(!0)}),F.addFileFilter("prevent_duplicates",function(e,t,i){if(e)for(var n=this.files.length;n--;)if(t.name===this.files[n].name&&t.size===this.files[n].size)return this.trigger("Error",{code:F.FILE_DUPLICATE_ERROR,message:F.translate("Duplicate file error."),file:t}),void i(!1);i(!0)}),F.Uploader=function(e){var u,i,n,p,t=F.guid(),l=[],h={},o=[],d=[],c=!1;function r(){var e,t,i=0;if(this.state==F.STARTED){for(t=0;tu?(t=Math.min(u,a.size-c),a.slice(c,c+t)):(t=a.size,a),u&&d.chunks&&(r.settings.send_chunk_number?(n.chunk=Math.ceil(c/u),n.chunks=Math.ceil(a.size/u)):(n.offset=c,n.total=a.size)),(p=new I.XMLHttpRequest).upload&&(p.upload.onprogress=function(e){s.loaded=Math.min(s.size,c+e.loaded),r.trigger("UploadProgress",s)}),p.onload=function(){400<=p.status?f():(l=r.settings.max_retries,t=a.size?(s.size!=s.origSize&&(a.destroy(),a=null),r.trigger("UploadProgress",s),s.status=F.DONE,r.trigger("FileUploaded",s,{response:p.responseText,status:p.status,responseHeaders:p.getAllResponseHeaders()})):T(g,1))},p.onerror=function(){f()},p.onloadend=function(){this.destroy(),p=null},r.settings.multipart&&d.multipart?(p.open("post",o,!0),F.each(r.settings.headers,function(e,t){p.setRequestHeader(t,e)}),i=new I.FormData,F.each(F.extend(n,r.settings.multipart_params),function(e,t){i.append(t,e)}),i.append(r.settings.file_data_name,e),p.send(i,{runtime_order:r.settings.runtimes,required_caps:r.settings.required_features,preferred_caps:h})):(o=F.buildUrl(r.settings.url,F.extend(n,r.settings.multipart_params)),p.open("post",o,!0),p.setRequestHeader("Content-Type","application/octet-stream"),F.each(r.settings.headers,function(e,t){p.setRequestHeader(t,e)}),p.send(e,{runtime_order:r.settings.runtimes,required_caps:r.settings.required_features,preferred_caps:h})))}s.loaded&&(c=s.loaded=u?u*Math.floor(s.loaded/u):0),a=s.getSource(),r.settings.resize.enabled&&function(e,t){if(e.ruid){e=I.Runtime.getInfo(e.ruid);if(e)return e.can(t)}}(a,"send_binary_string")&&~I.inArray(a.type,["image/jpeg","image/png"])?function(t,e,i){var n=new I.Image;try{n.onload=function(){if(e.width>this.width&&e.height>this.height&&e.quality===S&&e.preserve_headers&&!e.crop)return this.destroy(),i(t);n.downsize(e.width,e.height,e.crop,e.preserve_headers)},n.onresize=function(){i(this.getAsBlob(t.type,e.quality)),this.destroy()},n.onerror=function(){i(t)},n.load(t)}catch(e){i(t)}}.call(this,a,r.settings.resize,function(e){a=e,s.size=e.size,g()}):g()}function R(e,t){s(t)}function E(e){if(e.state==F.STARTED)i=+new Date;else if(e.state==F.STOPPED)for(var t=e.files.length-1;0<=t;t--)e.files[t].status==F.UPLOADING&&(e.files[t].status=F.QUEUED,a())}function y(){p&&p.abort()}function v(e){a(),T(function(){r.call(e)},1)}function z(e,t){t.code===F.INIT_ERROR?e.destroy():t.code===F.HTTP_ERROR&&(t.file.status=F.FAILED,s(t.file),e.state==F.STARTED&&(e.trigger("CancelUpload"),T(function(){r.call(e)},1)))}function O(e){e.stop(),F.each(l,function(e){e.destroy()}),l=[],o.length&&(F.each(o,function(e){e.destroy()}),o=[]),d.length&&(F.each(d,function(e){e.destroy()}),d=[]),c=!(h={}),i=p=null,n.reset()}u={runtimes:I.Runtime.order,max_retries:0,chunk_size:0,multipart:!0,multi_selection:!0,file_data_name:"file",filters:{mime_types:[],prevent_duplicates:!1,max_file_size:0},resize:{enabled:!1,preserve_headers:!0,crop:!1},send_file_name:!0,send_chunk_number:!0},_.call(this,e,null,!0),n=new F.QueueProgress,F.extend(this,{id:t,uid:t,state:F.STOPPED,features:{},runtime:null,files:l,settings:u,total:n,init:function(){var t,i=this,e=i.getOption("preinit");return"function"==typeof e?e(i):F.each(e,function(e,t){i.bind(t,e)}),function(){this.bind("FilesAdded FilesRemoved",function(e){e.trigger("QueueChanged"),e.refresh()}),this.bind("CancelUpload",y),this.bind("BeforeUpload",m),this.bind("UploadFile",b),this.bind("UploadProgress",R),this.bind("StateChanged",E),this.bind("QueueChanged",a),this.bind("Error",z),this.bind("FileUploaded",v),this.bind("Destroy",O)}.call(i),F.each(["container","browse_button","drop_element"],function(e){if(null===i.getOption(e))return!(t={code:F.INIT_ERROR,message:F.translate("'%' specified, but cannot be found.")})}),t?i.trigger("Error",t):u.browse_button||u.drop_element?void g.call(i,u,function(e){var t=i.getOption("init");"function"==typeof t?t(i):F.each(t,function(e,t){i.bind(t,e)}),e?(i.runtime=I.Runtime.getInfo(f()).type,i.trigger("Init",{runtime:i.runtime}),i.trigger("PostInit")):i.trigger("Error",{code:F.INIT_ERROR,message:F.translate("Init error.")})}):i.trigger("Error",{code:F.INIT_ERROR,message:F.translate("You must specify either 'browse_button' or 'drop_element'.")})},setOption:function(e,t){_.call(this,e,t,!this.runtime)},getOption:function(e){return e?u[e]:u},refresh:function(){o.length&&F.each(o,function(e){e.trigger("Refresh")}),this.trigger("Refresh")},start:function(){this.state!=F.STARTED&&(this.state=F.STARTED,this.trigger("StateChanged"),r.call(this))},stop:function(){this.state!=F.STOPPED&&(this.state=F.STOPPED,this.trigger("StateChanged"),this.trigger("CancelUpload"))},disableBrowse:function(){c=arguments[0]===S||arguments[0],o.length&&F.each(o,function(e){e.disable(c)}),this.trigger("DisableBrowse",c)},getFile:function(e){for(var t=l.length-1;0<=t;t--)if(l[t].id===e)return l[t]},addFile:function(e,n){var r,s=this,a=[],o=[];r=f(),function e(i){var t=I.typeOf(i);if(i instanceof I.File){if(!i.ruid&&!i.isDetached()){if(!r)return!1;i.ruid=r,i.connectRuntime(r)}e(new F.File(i))}else i instanceof I.Blob?(e(i.getSource()),i.destroy()):i instanceof F.File?(n&&(i.name=n),a.push(function(t){var n,e,r;n=i,e=function(e){e||(l.push(i),o.push(i),s.trigger("FileFiltered",i)),T(t,1)},r=[],I.each(s.settings.filters,function(e,i){D[i]&&r.push(function(t){D[i].call(s,e,n,function(e){t(!e)})})}),I.inSeries(r,e)})):-1!==I.inArray(t,["file","blob"])?e(new I.File(null,i)):"node"===t&&"filelist"===I.typeOf(i.files)?I.each(i.files,e):"array"===t&&(n=null,I.each(i,e))}(e),a.length&&I.inSeries(a,function(){o.length&&s.trigger("FilesAdded",o)})},removeFile:function(e){for(var t="string"==typeof e?e:e.id,i=l.length-1;0<=i;i--)if(l[i].id===t)return this.splice(i,1)[0]},splice:function(e,t){var t=l.splice(e===S?0:e,t===S?l.length:t),i=!1;return this.state==F.STARTED&&(F.each(t,function(e){if(e.status===F.UPLOADING)return!(i=!0)}),i&&this.stop()),this.trigger("FilesRemoved",t),F.each(t,function(e){e.destroy()}),i&&this.start(),t},dispatchEvent:function(e){var t,i;if(e=e.toLowerCase(),t=this.hasEventListener(e)){t.sort(function(e,t){return t.priority-e.priority}),(i=[].slice.call(arguments)).shift(),i.unshift(this);for(var n=0;n */ (function($) { $.fn.hoverIntent = function(handlerIn,handlerOut,selector) { // default configuration values var cfg = { interval: 100, sensitivity: 6, timeout: 0 }; if ( typeof handlerIn === "object" ) { cfg = $.extend(cfg, handlerIn ); } else if ($.isFunction(handlerOut)) { cfg = $.extend(cfg, { over: handlerIn, out: handlerOut, selector: selector } ); } else { cfg = $.extend(cfg, { over: handlerIn, out: handlerIn, selector: handlerOut } ); } // instantiate variables // cX, cY = current X and Y position of mouse, updated by mousemove event // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval var cX, cY, pX, pY; // A private function for getting mouse position var track = function(ev) { cX = ev.pageX; cY = ev.pageY; }; // A private function for comparing current and previous mouse position var compare = function(ev,ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); // compare mouse positions to see if they've crossed the threshold if ( Math.sqrt( (pX-cX)*(pX-cX) + (pY-cY)*(pY-cY) ) < cfg.sensitivity ) { $(ob).off("mousemove.hoverIntent",track); // set hoverIntent state to true (so mouseOut can be called) ob.hoverIntent_s = true; return cfg.over.apply(ob,[ev]); } else { // set previous coordinates for next time pX = cX; pY = cY; // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs) ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval ); } }; // A private function for delaying the mouseOut function var delay = function(ev,ob) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); ob.hoverIntent_s = false; return cfg.out.apply(ob,[ev]); }; // A private function for handling mouse 'hovering' var handleHover = function(e) { // copy objects to be passed into t (required for event object to be passed in IE) var ev = $.extend({},e); var ob = this; // cancel hoverIntent timer if it exists if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); } // if e.type === "mouseenter" if (e.type === "mouseenter") { // set "previous" X and Y position based on initial entry point pX = ev.pageX; pY = ev.pageY; // update "current" X and Y position based on mousemove $(ob).on("mousemove.hoverIntent",track); // start polling interval (self-calling timeout) to compare mouse coordinates over time if (!ob.hoverIntent_s) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );} // else e.type == "mouseleave" } else { // unbind expensive mousemove event $(ob).off("mousemove.hoverIntent",track); // if hoverIntent state is true, then call the mouseOut function after the specified delay if (ob.hoverIntent_s) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );} } }; // listen for mouseenter and mouseleave return this.on({'mouseenter.hoverIntent':handleHover,'mouseleave.hoverIntent':handleHover}, cfg.selector); }; })(jQuery); PKv\i ll twemoji.jsnuW+A/*jslint indent: 2, browser: true, bitwise: true, plusplus: true */ var twemoji = (function ( /*! Copyright Twitter Inc. and other contributors. Licensed under MIT *//* https://github.com/twitter/twemoji/blob/gh-pages/LICENSE */ // WARNING: this file is generated automatically via // `node scripts/generate` // please update its `createTwemoji` function // at the bottom of the same file instead. ) { 'use strict'; /*jshint maxparams:4 */ var // the exported module object twemoji = { ///////////////////////// // properties // ///////////////////////// // default assets url, by default will be Twitter Inc. CDN base: 'https://twemoji.maxcdn.com/v/12.1.3/', // default assets file extensions, by default '.png' ext: '.png', // default assets/folder size, by default "72x72" // available via Twitter CDN: 72 size: '72x72', // default class name, by default 'emoji' className: 'emoji', // basic utilities / helpers to convert code points // to JavaScript surrogates and vice versa convert: { /** * Given an HEX codepoint, returns UTF16 surrogate pairs. * * @param string generic codepoint, i.e. '1F4A9' * @return string codepoint transformed into utf16 surrogates pair, * i.e. \uD83D\uDCA9 * * @example * twemoji.convert.fromCodePoint('1f1e8'); * // "\ud83c\udde8" * * '1f1e8-1f1f3'.split('-').map(twemoji.convert.fromCodePoint).join('') * // "\ud83c\udde8\ud83c\uddf3" */ fromCodePoint: fromCodePoint, /** * Given UTF16 surrogate pairs, returns the equivalent HEX codepoint. * * @param string generic utf16 surrogates pair, i.e. \uD83D\uDCA9 * @param string optional separator for double code points, default='-' * @return string utf16 transformed into codepoint, i.e. '1F4A9' * * @example * twemoji.convert.toCodePoint('\ud83c\udde8\ud83c\uddf3'); * // "1f1e8-1f1f3" * * twemoji.convert.toCodePoint('\ud83c\udde8\ud83c\uddf3', '~'); * // "1f1e8~1f1f3" */ toCodePoint: toCodePoint }, ///////////////////////// // methods // ///////////////////////// /** * User first: used to remove missing images * preserving the original text intent when * a fallback for network problems is desired. * Automatically added to Image nodes via DOM * It could be recycled for string operations via: * $('img.emoji').on('error', twemoji.onerror) */ onerror: function onerror() { if (this.parentNode) { this.parentNode.replaceChild(createText(this.alt, false), this); } }, /** * Main method/logic to generate either tags or HTMLImage nodes. * "emojify" a generic text or DOM Element. * * @overloads * * String replacement for `innerHTML` or server side operations * twemoji.parse(string); * twemoji.parse(string, Function); * twemoji.parse(string, Object); * * HTMLElement tree parsing for safer operations over existing DOM * twemoji.parse(HTMLElement); * twemoji.parse(HTMLElement, Function); * twemoji.parse(HTMLElement, Object); * * @param string|HTMLElement the source to parse and enrich with emoji. * * string replace emoji matches with tags. * Mainly used to inject emoji via `innerHTML` * It does **not** parse the string or validate it, * it simply replaces found emoji with a tag. * NOTE: be sure this won't affect security. * * HTMLElement walk through the DOM tree and find emoji * that are inside **text node only** (nodeType === 3) * Mainly used to put emoji in already generated DOM * without compromising surrounding nodes and * **avoiding** the usage of `innerHTML`. * NOTE: Using DOM elements instead of strings should * improve security without compromising too much * performance compared with a less safe `innerHTML`. * * @param Function|Object [optional] * either the callback that will be invoked or an object * with all properties to use per each found emoji. * * Function if specified, this will be invoked per each emoji * that has been found through the RegExp except * those follwed by the invariant \uFE0E ("as text"). * Once invoked, parameters will be: * * iconId:string the lower case HEX code point * i.e. "1f4a9" * * options:Object all info for this parsing operation * * variant:char the optional \uFE0F ("as image") * variant, in case this info * is anyhow meaningful. * By default this is ignored. * * If such callback will return a falsy value instead * of a valid `src` to use for the image, nothing will * actually change for that specific emoji. * * * Object if specified, an object containing the following properties * * callback Function the callback to invoke per each found emoji. * base string the base url, by default twemoji.base * ext string the image extension, by default twemoji.ext * size string the assets size, by default twemoji.size * * @example * * twemoji.parse("I \u2764\uFE0F emoji!"); * // I ❤️ emoji! * * * twemoji.parse("I \u2764\uFE0F emoji!", function(iconId, options) { * return '/assets/' + iconId + '.gif'; * }); * // I ❤️ emoji! * * * twemoji.parse("I \u2764\uFE0F emoji!", { * size: 72, * callback: function(iconId, options) { * return '/assets/' + options.size + '/' + iconId + options.ext; * } * }); * // I ❤️ emoji! * */ parse: parse, /** * Given a string, invokes the callback argument * per each emoji found in such string. * This is the most raw version used by * the .parse(string) method itself. * * @param string generic string to parse * @param Function a generic callback that will be * invoked to replace the content. * This calback wil receive standard * String.prototype.replace(str, callback) * arguments such: * callback( * rawText, // the emoji match * ); * * and others commonly received via replace. */ replace: replace, /** * Simplify string tests against emoji. * * @param string some text that might contain emoji * @return boolean true if any emoji was found, false otherwise. * * @example * * if (twemoji.test(someContent)) { * console.log("emoji All The Things!"); * } */ test: test }, // used to escape HTML special chars in attributes escaper = { '&': '&', '<': '<', '>': '>', "'": ''', '"': '"' }, // RegExp based on emoji's official Unicode standards // http://www.unicode.org/Public/UNIDATA/EmojiSources.txt re = /(?:\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb|\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffc]|\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffd]|\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffe]|\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffc-\udfff]|\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffd-\udfff]|\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb|\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb\udffc\udffe\udfff]|\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb\udffc]|\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffd\udfff]|\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb-\udffd]|\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c[\udffb-\udffe]|\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c[\udffb-\udffe]|\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb|\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb\udffc]|\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udffd]|\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udffe]|\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c[\udffb-\udfff]|\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1|\ud83d\udc6b\ud83c[\udffb-\udfff]|\ud83d\udc6c\ud83c[\udffb-\udfff]|\ud83d\udc6d\ud83c[\udffb-\udfff]|\ud83d[\udc6b-\udc6d])|(?:\ud83d[\udc68\udc69])(?:\ud83c[\udffb-\udfff])?\u200d(?:\u2695\ufe0f|\u2696\ufe0f|\u2708\ufe0f|\ud83c[\udf3e\udf73\udf93\udfa4\udfa8\udfeb\udfed]|\ud83d[\udcbb\udcbc\udd27\udd2c\ude80\ude92]|\ud83e[\uddaf-\uddb3\uddbc\uddbd])|(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75]|\u26f9)((?:\ud83c[\udffb-\udfff]|\ufe0f)\u200d[\u2640\u2642]\ufe0f)|(?:\ud83c[\udfc3\udfc4\udfca]|\ud83d[\udc6e\udc71\udc73\udc77\udc81\udc82\udc86\udc87\ude45-\ude47\ude4b\ude4d\ude4e\udea3\udeb4-\udeb6]|\ud83e[\udd26\udd35\udd37-\udd39\udd3d\udd3e\uddb8\uddb9\uddcd-\uddcf\uddd6-\udddd])(?:\ud83c[\udffb-\udfff])?\u200d[\u2640\u2642]\ufe0f|(?:\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68|\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d[\udc68\udc69]|\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66|\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f|\ud83c\udff3\ufe0f\u200d\ud83c\udf08|\ud83c\udff4\u200d\u2620\ufe0f|\ud83d\udc15\u200d\ud83e\uddba|\ud83d\udc41\u200d\ud83d\udde8|\ud83d\udc68\u200d\ud83d[\udc66\udc67]|\ud83d\udc69\u200d\ud83d[\udc66\udc67]|\ud83d\udc6f\u200d\u2640\ufe0f|\ud83d\udc6f\u200d\u2642\ufe0f|\ud83e\udd3c\u200d\u2640\ufe0f|\ud83e\udd3c\u200d\u2642\ufe0f|\ud83e\uddde\u200d\u2640\ufe0f|\ud83e\uddde\u200d\u2642\ufe0f|\ud83e\udddf\u200d\u2640\ufe0f|\ud83e\udddf\u200d\u2642\ufe0f)|[#*0-9]\ufe0f?\u20e3|(?:[©®\u2122\u265f]\ufe0f)|(?:\ud83c[\udc04\udd70\udd71\udd7e\udd7f\ude02\ude1a\ude2f\ude37\udf21\udf24-\udf2c\udf36\udf7d\udf96\udf97\udf99-\udf9b\udf9e\udf9f\udfcd\udfce\udfd4-\udfdf\udff3\udff5\udff7]|\ud83d[\udc3f\udc41\udcfd\udd49\udd4a\udd6f\udd70\udd73\udd76-\udd79\udd87\udd8a-\udd8d\udda5\udda8\uddb1\uddb2\uddbc\uddc2-\uddc4\uddd1-\uddd3\udddc-\uddde\udde1\udde3\udde8\uddef\uddf3\uddfa\udecb\udecd-\udecf\udee0-\udee5\udee9\udef0\udef3]|[\u203c\u2049\u2139\u2194-\u2199\u21a9\u21aa\u231a\u231b\u2328\u23cf\u23ed-\u23ef\u23f1\u23f2\u23f8-\u23fa\u24c2\u25aa\u25ab\u25b6\u25c0\u25fb-\u25fe\u2600-\u2604\u260e\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262a\u262e\u262f\u2638-\u263a\u2640\u2642\u2648-\u2653\u2660\u2663\u2665\u2666\u2668\u267b\u267f\u2692-\u2697\u2699\u269b\u269c\u26a0\u26a1\u26a7\u26aa\u26ab\u26b0\u26b1\u26bd\u26be\u26c4\u26c5\u26c8\u26cf\u26d1\u26d3\u26d4\u26e9\u26ea\u26f0-\u26f5\u26f8\u26fa\u26fd\u2702\u2708\u2709\u270f\u2712\u2714\u2716\u271d\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u2764\u27a1\u2934\u2935\u2b05-\u2b07\u2b1b\u2b1c\u2b50\u2b55\u3030\u303d\u3297\u3299])(?:\ufe0f|(?!\ufe0e))|(?:(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75\udd90]|[\u261d\u26f7\u26f9\u270c\u270d])(?:\ufe0f|(?!\ufe0e))|(?:\ud83c[\udf85\udfc2-\udfc4\udfc7\udfca]|\ud83d[\udc42\udc43\udc46-\udc50\udc66-\udc69\udc6e\udc70-\udc78\udc7c\udc81-\udc83\udc85-\udc87\udcaa\udd7a\udd95\udd96\ude45-\ude47\ude4b-\ude4f\udea3\udeb4-\udeb6\udec0\udecc]|\ud83e[\udd0f\udd18-\udd1c\udd1e\udd1f\udd26\udd30-\udd39\udd3d\udd3e\uddb5\uddb6\uddb8\uddb9\uddbb\uddcd-\uddcf\uddd1-\udddd]|[\u270a\u270b]))(?:\ud83c[\udffb-\udfff])?|(?:\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc73\udb40\udc63\udb40\udc74\udb40\udc7f|\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc77\udb40\udc6c\udb40\udc73\udb40\udc7f|\ud83c\udde6\ud83c[\udde8-\uddec\uddee\uddf1\uddf2\uddf4\uddf6-\uddfa\uddfc\uddfd\uddff]|\ud83c\udde7\ud83c[\udde6\udde7\udde9-\uddef\uddf1-\uddf4\uddf6-\uddf9\uddfb\uddfc\uddfe\uddff]|\ud83c\udde8\ud83c[\udde6\udde8\udde9\uddeb-\uddee\uddf0-\uddf5\uddf7\uddfa-\uddff]|\ud83c\udde9\ud83c[\uddea\uddec\uddef\uddf0\uddf2\uddf4\uddff]|\ud83c\uddea\ud83c[\udde6\udde8\uddea\uddec\udded\uddf7-\uddfa]|\ud83c\uddeb\ud83c[\uddee-\uddf0\uddf2\uddf4\uddf7]|\ud83c\uddec\ud83c[\udde6\udde7\udde9-\uddee\uddf1-\uddf3\uddf5-\uddfa\uddfc\uddfe]|\ud83c\udded\ud83c[\uddf0\uddf2\uddf3\uddf7\uddf9\uddfa]|\ud83c\uddee\ud83c[\udde8-\uddea\uddf1-\uddf4\uddf6-\uddf9]|\ud83c\uddef\ud83c[\uddea\uddf2\uddf4\uddf5]|\ud83c\uddf0\ud83c[\uddea\uddec-\uddee\uddf2\uddf3\uddf5\uddf7\uddfc\uddfe\uddff]|\ud83c\uddf1\ud83c[\udde6-\udde8\uddee\uddf0\uddf7-\uddfb\uddfe]|\ud83c\uddf2\ud83c[\udde6\udde8-\udded\uddf0-\uddff]|\ud83c\uddf3\ud83c[\udde6\udde8\uddea-\uddec\uddee\uddf1\uddf4\uddf5\uddf7\uddfa\uddff]|\ud83c\uddf4\ud83c\uddf2|\ud83c\uddf5\ud83c[\udde6\uddea-\udded\uddf0-\uddf3\uddf7-\uddf9\uddfc\uddfe]|\ud83c\uddf6\ud83c\udde6|\ud83c\uddf7\ud83c[\uddea\uddf4\uddf8\uddfa\uddfc]|\ud83c\uddf8\ud83c[\udde6-\uddea\uddec-\uddf4\uddf7-\uddf9\uddfb\uddfd-\uddff]|\ud83c\uddf9\ud83c[\udde6\udde8\udde9\uddeb-\udded\uddef-\uddf4\uddf7\uddf9\uddfb\uddfc\uddff]|\ud83c\uddfa\ud83c[\udde6\uddec\uddf2\uddf3\uddf8\uddfe\uddff]|\ud83c\uddfb\ud83c[\udde6\udde8\uddea\uddec\uddee\uddf3\uddfa]|\ud83c\uddfc\ud83c[\uddeb\uddf8]|\ud83c\uddfd\ud83c\uddf0|\ud83c\uddfe\ud83c[\uddea\uddf9]|\ud83c\uddff\ud83c[\udde6\uddf2\uddfc]|\ud83c[\udccf\udd8e\udd91-\udd9a\udde6-\uddff\ude01\ude32-\ude36\ude38-\ude3a\ude50\ude51\udf00-\udf20\udf2d-\udf35\udf37-\udf7c\udf7e-\udf84\udf86-\udf93\udfa0-\udfc1\udfc5\udfc6\udfc8\udfc9\udfcf-\udfd3\udfe0-\udff0\udff4\udff8-\udfff]|\ud83d[\udc00-\udc3e\udc40\udc44\udc45\udc51-\udc65\udc6a-\udc6d\udc6f\udc79-\udc7b\udc7d-\udc80\udc84\udc88-\udca9\udcab-\udcfc\udcff-\udd3d\udd4b-\udd4e\udd50-\udd67\udda4\uddfb-\ude44\ude48-\ude4a\ude80-\udea2\udea4-\udeb3\udeb7-\udebf\udec1-\udec5\uded0-\uded2\uded5\udeeb\udeec\udef4-\udefa\udfe0-\udfeb]|\ud83e[\udd0d\udd0e\udd10-\udd17\udd1d\udd20-\udd25\udd27-\udd2f\udd3a\udd3c\udd3f-\udd45\udd47-\udd71\udd73-\udd76\udd7a-\udda2\udda5-\uddaa\uddae-\uddb4\uddb7\uddba\uddbc-\uddca\uddd0\uddde-\uddff\ude70-\ude73\ude78-\ude7a\ude80-\ude82\ude90-\ude95]|[\u23e9-\u23ec\u23f0\u23f3\u267e\u26ce\u2705\u2728\u274c\u274e\u2753-\u2755\u2795-\u2797\u27b0\u27bf\ue50a])|\ufe0f/g, // avoid runtime RegExp creation for not so smart, // not JIT based, and old browsers / engines UFE0Fg = /\uFE0F/g, // avoid using a string literal like '\u200D' here because minifiers expand it inline U200D = String.fromCharCode(0x200D), // used to find HTML special chars in attributes rescaper = /[&<>'"]/g, // nodes with type 1 which should **not** be parsed shouldntBeParsed = /^(?:iframe|noframes|noscript|script|select|style|textarea)$/, // just a private shortcut fromCharCode = String.fromCharCode; return twemoji; ///////////////////////// // private functions // // declaration // ///////////////////////// /** * Shortcut to create text nodes * @param string text used to create DOM text node * @return Node a DOM node with that text */ function createText(text, clean) { return document.createTextNode(clean ? text.replace(UFE0Fg, '') : text); } /** * Utility function to escape html attribute text * @param string text use in HTML attribute * @return string text encoded to use in HTML attribute */ function escapeHTML(s) { return s.replace(rescaper, replacer); } /** * Default callback used to generate emoji src * based on Twitter CDN * @param string the emoji codepoint string * @param string the default size to use, i.e. "36x36" * @return string the image source to use */ function defaultImageSrcGenerator(icon, options) { return ''.concat(options.base, options.size, '/', icon, options.ext); } /** * Given a generic DOM nodeType 1, walk through all children * and store every nodeType 3 (#text) found in the tree. * @param Element a DOM Element with probably some text in it * @param Array the list of previously discovered text nodes * @return Array same list with new discovered nodes, if any */ function grabAllTextNodes(node, allText) { var childNodes = node.childNodes, length = childNodes.length, subnode, nodeType; while (length--) { subnode = childNodes[length]; nodeType = subnode.nodeType; // parse emoji only in text nodes if (nodeType === 3) { // collect them to process emoji later allText.push(subnode); } // ignore all nodes that are not type 1, that are svg, or that // should not be parsed as script, style, and others else if (nodeType === 1 && !('ownerSVGElement' in subnode) && !shouldntBeParsed.test(subnode.nodeName.toLowerCase())) { grabAllTextNodes(subnode, allText); } } return allText; } /** * Used to both remove the possible variant * and to convert utf16 into code points. * If there is a zero-width-joiner (U+200D), leave the variants in. * @param string the raw text of the emoji match * @return string the code point */ function grabTheRightIcon(rawText) { // if variant is present as \uFE0F return toCodePoint(rawText.indexOf(U200D) < 0 ? rawText.replace(UFE0Fg, '') : rawText ); } /** * DOM version of the same logic / parser: * emojify all found sub-text nodes placing images node instead. * @param Element generic DOM node with some text in some child node * @param Object options containing info about how to parse * * .callback Function the callback to invoke per each found emoji. * .base string the base url, by default twemoji.base * .ext string the image extension, by default twemoji.ext * .size string the assets size, by default twemoji.size * * @return Element same generic node with emoji in place, if any. */ function parseNode(node, options) { var allText = grabAllTextNodes(node, []), length = allText.length, attrib, attrname, modified, fragment, subnode, text, match, i, index, img, rawText, iconId, src; while (length--) { modified = false; fragment = document.createDocumentFragment(); subnode = allText[length]; text = subnode.nodeValue; i = 0; while ((match = re.exec(text))) { index = match.index; if (index !== i) { fragment.appendChild( createText(text.slice(i, index), true) ); } rawText = match[0]; iconId = grabTheRightIcon(rawText); i = index + rawText.length; src = options.callback(iconId, options); if (iconId && src) { img = new Image(); img.onerror = options.onerror; img.setAttribute('draggable', 'false'); attrib = options.attributes(rawText, iconId); for (attrname in attrib) { if ( attrib.hasOwnProperty(attrname) && // don't allow any handlers to be set + don't allow overrides attrname.indexOf('on') !== 0 && !img.hasAttribute(attrname) ) { img.setAttribute(attrname, attrib[attrname]); } } img.className = options.className; img.alt = rawText; img.src = src; modified = true; fragment.appendChild(img); } if (!img) fragment.appendChild(createText(rawText, false)); img = null; } // is there actually anything to replace in here ? if (modified) { // any text left to be added ? if (i < text.length) { fragment.appendChild( createText(text.slice(i), true) ); } // replace the text node only, leave intact // anything else surrounding such text subnode.parentNode.replaceChild(fragment, subnode); } } return node; } /** * String/HTML version of the same logic / parser: * emojify a generic text placing images tags instead of surrogates pair. * @param string generic string with possibly some emoji in it * @param Object options containing info about how to parse * * .callback Function the callback to invoke per each found emoji. * .base string the base url, by default twemoji.base * .ext string the image extension, by default twemoji.ext * .size string the assets size, by default twemoji.size * * @return the string with replacing all found and parsed emoji */ function parseString(str, options) { return replace(str, function (rawText) { var ret = rawText, iconId = grabTheRightIcon(rawText), src = options.callback(iconId, options), attrib, attrname; if (iconId && src) { // recycle the match string replacing the emoji // with its image counter part ret = ''); } return ret; }); } /** * Function used to actually replace HTML special chars * @param string HTML special char * @return string encoded HTML special char */ function replacer(m) { return escaper[m]; } /** * Default options.attribute callback * @return null */ function returnNull() { return null; } /** * Given a generic value, creates its squared counterpart if it's a number. * As example, number 36 will return '36x36'. * @param any a generic value. * @return any a string representing asset size, i.e. "36x36" * only in case the value was a number. * Returns initial value otherwise. */ function toSizeSquaredAsset(value) { return typeof value === 'number' ? value + 'x' + value : value; } ///////////////////////// // exported functions // // declaration // ///////////////////////// function fromCodePoint(codepoint) { var code = typeof codepoint === 'string' ? parseInt(codepoint, 16) : codepoint; if (code < 0x10000) { return fromCharCode(code); } code -= 0x10000; return fromCharCode( 0xD800 + (code >> 10), 0xDC00 + (code & 0x3FF) ); } function parse(what, how) { if (!how || typeof how === 'function') { how = {callback: how}; } // if first argument is string, inject html tags // otherwise use the DOM tree and parse text nodes only return (typeof what === 'string' ? parseString : parseNode)(what, { callback: how.callback || defaultImageSrcGenerator, attributes: typeof how.attributes === 'function' ? how.attributes : returnNull, base: typeof how.base === 'string' ? how.base : twemoji.base, ext: how.ext || twemoji.ext, size: how.folder || toSizeSquaredAsset(how.size || twemoji.size), className: how.className || twemoji.className, onerror: how.onerror || twemoji.onerror }); } function replace(text, callback) { return String(text).replace(re, callback); } function test(text) { // IE6 needs a reset before too re.lastIndex = 0; var result = re.test(text); re.lastIndex = 0; return result; } function toCodePoint(unicodeSurrogates, sep) { var r = [], c = 0, p = 0, i = 0; while (i < unicodeSurrogates.length) { c = unicodeSurrogates.charCodeAt(i++); if (p) { r.push((0x10000 + ((p - 0xD800) << 10) + (c - 0xDC00)).toString(16)); p = 0; } else if (0xD800 <= c && c <= 0xDBFF) { p = c; } else { r.push(c.toString(16)); } } return r.join(sep || '-'); } }());PKv\tWѓ customize-views.min.jsnuW+A/*! This file is auto-generated */ !function(i,e,o){var t;e&&e.customize&&((t=e.customize).HeaderTool.CurrentView=e.Backbone.View.extend({template:e.template("header-current"),initialize:function(){this.listenTo(this.model,"change",this.render),this.render()},render:function(){return this.$el.html(this.template(this.model.toJSON())),this.setButtons(),this},setButtons:function(){var e=i("#customize-control-header_image .actions .remove");this.model.get("choice")?e.show():e.hide()}}),t.HeaderTool.ChoiceView=e.Backbone.View.extend({template:e.template("header-choice"),className:"header-view",events:{"click .choice,.random":"select","click .close":"removeImage"},initialize:function(){var e=[this.model.get("header").url,this.model.get("choice")];this.listenTo(this.model,"change:selected",this.toggleSelected),o.contains(e,t.get().header_image)&&t.HeaderTool.currentHeader.set(this.extendedModel())},render:function(){return this.$el.html(this.template(this.extendedModel())),this.toggleSelected(),this},toggleSelected:function(){this.$el.toggleClass("selected",this.model.get("selected"))},extendedModel:function(){var e=this.model.get("collection");return o.extend(this.model.toJSON(),{type:e.type})},select:function(){this.preventJump(),this.model.save(),t.HeaderTool.currentHeader.set(this.extendedModel())},preventJump:function(){var e=i(".wp-full-overlay-sidebar-content"),t=e.scrollTop();o.defer(function(){e.scrollTop(t)})},removeImage:function(e){e.stopPropagation(),this.model.destroy(),this.remove()}}),t.HeaderTool.ChoiceListView=e.Backbone.View.extend({initialize:function(){this.listenTo(this.collection,"add",this.addOne),this.listenTo(this.collection,"remove",this.render),this.listenTo(this.collection,"sort",this.render),this.listenTo(this.collection,"change",this.toggleList),this.render()},render:function(){this.$el.empty(),this.collection.each(this.addOne,this),this.toggleList()},addOne:function(e){e.set({collection:this.collection}),e=new t.HeaderTool.ChoiceView({model:e}),this.$el.append(e.render().el)},toggleList:function(){var e=this.$el.parents().prev(".customize-control-title"),t=this.$el.find(".random").parent();this.collection.shouldHideTitle()?e.add(t).hide():e.add(t).show()}}),t.HeaderTool.CombinedList=e.Backbone.View.extend({initialize:function(e){this.collections=e,this.on("all",this.propagate,this)},propagate:function(t,i){o.each(this.collections,function(e){e.trigger(t,i)})}}))}(jQuery,window.wp,_);PKv\H))clipboard.min.jsnuW+A/*! This file is auto-generated */ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return o={},r.m=n=[function(t,e,n){"use strict";var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r=function(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t};function i(t,e){for(var n=0;n= 0 && length <= MAX_ARRAY_INDEX; }; // Collection Functions // -------------------- // The cornerstone, an `each` implementation, aka `forEach`. // Handles raw objects in addition to array-likes. Treats all // sparse array-likes as if they were dense. _.each = _.forEach = function(obj, iteratee, context) { iteratee = optimizeCb(iteratee, context); var i, length; if (isArrayLike(obj)) { for (i = 0, length = obj.length; i < length; i++) { iteratee(obj[i], i, obj); } } else { var keys = _.keys(obj); for (i = 0, length = keys.length; i < length; i++) { iteratee(obj[keys[i]], keys[i], obj); } } return obj; }; // Return the results of applying the iteratee to each element. _.map = _.collect = function(obj, iteratee, context) { iteratee = cb(iteratee, context); var keys = !isArrayLike(obj) && _.keys(obj), length = (keys || obj).length, results = Array(length); for (var index = 0; index < length; index++) { var currentKey = keys ? keys[index] : index; results[index] = iteratee(obj[currentKey], currentKey, obj); } return results; }; // Create a reducing function iterating left or right. function createReduce(dir) { // Optimized iterator function as using arguments.length // in the main function will deoptimize the, see #1991. function iterator(obj, iteratee, memo, keys, index, length) { for (; index >= 0 && index < length; index += dir) { var currentKey = keys ? keys[index] : index; memo = iteratee(memo, obj[currentKey], currentKey, obj); } return memo; } return function(obj, iteratee, memo, context) { iteratee = optimizeCb(iteratee, context, 4); var keys = !isArrayLike(obj) && _.keys(obj), length = (keys || obj).length, index = dir > 0 ? 0 : length - 1; // Determine the initial value if none is provided. if (arguments.length < 3) { memo = obj[keys ? keys[index] : index]; index += dir; } return iterator(obj, iteratee, memo, keys, index, length); }; } // **Reduce** builds up a single result from a list of values, aka `inject`, // or `foldl`. _.reduce = _.foldl = _.inject = createReduce(1); // The right-associative version of reduce, also known as `foldr`. _.reduceRight = _.foldr = createReduce(-1); // Return the first value which passes a truth test. Aliased as `detect`. _.find = _.detect = function(obj, predicate, context) { var key; if (isArrayLike(obj)) { key = _.findIndex(obj, predicate, context); } else { key = _.findKey(obj, predicate, context); } if (key !== void 0 && key !== -1) return obj[key]; }; // Return all the elements that pass a truth test. // Aliased as `select`. _.filter = _.select = function(obj, predicate, context) { var results = []; predicate = cb(predicate, context); _.each(obj, function(value, index, list) { if (predicate(value, index, list)) results.push(value); }); return results; }; // Return all the elements for which a truth test fails. _.reject = function(obj, predicate, context) { return _.filter(obj, _.negate(cb(predicate)), context); }; // Determine whether all of the elements match a truth test. // Aliased as `all`. _.every = _.all = function(obj, predicate, context) { predicate = cb(predicate, context); var keys = !isArrayLike(obj) && _.keys(obj), length = (keys || obj).length; for (var index = 0; index < length; index++) { var currentKey = keys ? keys[index] : index; if (!predicate(obj[currentKey], currentKey, obj)) return false; } return true; }; // Determine if at least one element in the object matches a truth test. // Aliased as `any`. _.some = _.any = function(obj, predicate, context) { predicate = cb(predicate, context); var keys = !isArrayLike(obj) && _.keys(obj), length = (keys || obj).length; for (var index = 0; index < length; index++) { var currentKey = keys ? keys[index] : index; if (predicate(obj[currentKey], currentKey, obj)) return true; } return false; }; // Determine if the array or object contains a given item (using `===`). // Aliased as `includes` and `include`. _.contains = _.includes = _.include = function(obj, item, fromIndex, guard) { if (!isArrayLike(obj)) obj = _.values(obj); if (typeof fromIndex != 'number' || guard) fromIndex = 0; return _.indexOf(obj, item, fromIndex) >= 0; }; // Invoke a method (with arguments) on every item in a collection. _.invoke = function(obj, method) { var args = slice.call(arguments, 2); var isFunc = _.isFunction(method); return _.map(obj, function(value) { var func = isFunc ? method : value[method]; return func == null ? func : func.apply(value, args); }); }; // Convenience version of a common use case of `map`: fetching a property. _.pluck = function(obj, key) { return _.map(obj, _.property(key)); }; // Convenience version of a common use case of `filter`: selecting only objects // containing specific `key:value` pairs. _.where = function(obj, attrs) { return _.filter(obj, _.matcher(attrs)); }; // Convenience version of a common use case of `find`: getting the first object // containing specific `key:value` pairs. _.findWhere = function(obj, attrs) { return _.find(obj, _.matcher(attrs)); }; // Return the maximum element (or element-based computation). _.max = function(obj, iteratee, context) { var result = -Infinity, lastComputed = -Infinity, value, computed; if (iteratee == null && obj != null) { obj = isArrayLike(obj) ? obj : _.values(obj); for (var i = 0, length = obj.length; i < length; i++) { value = obj[i]; if (value > result) { result = value; } } } else { iteratee = cb(iteratee, context); _.each(obj, function(value, index, list) { computed = iteratee(value, index, list); if (computed > lastComputed || computed === -Infinity && result === -Infinity) { result = value; lastComputed = computed; } }); } return result; }; // Return the minimum element (or element-based computation). _.min = function(obj, iteratee, context) { var result = Infinity, lastComputed = Infinity, value, computed; if (iteratee == null && obj != null) { obj = isArrayLike(obj) ? obj : _.values(obj); for (var i = 0, length = obj.length; i < length; i++) { value = obj[i]; if (value < result) { result = value; } } } else { iteratee = cb(iteratee, context); _.each(obj, function(value, index, list) { computed = iteratee(value, index, list); if (computed < lastComputed || computed === Infinity && result === Infinity) { result = value; lastComputed = computed; } }); } return result; }; // Shuffle a collection, using the modern version of the // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle). _.shuffle = function(obj) { var set = isArrayLike(obj) ? obj : _.values(obj); var length = set.length; var shuffled = Array(length); for (var index = 0, rand; index < length; index++) { rand = _.random(0, index); if (rand !== index) shuffled[index] = shuffled[rand]; shuffled[rand] = set[index]; } return shuffled; }; // Sample **n** random values from a collection. // If **n** is not specified, returns a single random element. // The internal `guard` argument allows it to work with `map`. _.sample = function(obj, n, guard) { if (n == null || guard) { if (!isArrayLike(obj)) obj = _.values(obj); return obj[_.random(obj.length - 1)]; } return _.shuffle(obj).slice(0, Math.max(0, n)); }; // Sort the object's values by a criterion produced by an iteratee. _.sortBy = function(obj, iteratee, context) { iteratee = cb(iteratee, context); return _.pluck(_.map(obj, function(value, index, list) { return { value: value, index: index, criteria: iteratee(value, index, list) }; }).sort(function(left, right) { var a = left.criteria; var b = right.criteria; if (a !== b) { if (a > b || a === void 0) return 1; if (a < b || b === void 0) return -1; } return left.index - right.index; }), 'value'); }; // An internal function used for aggregate "group by" operations. var group = function(behavior) { return function(obj, iteratee, context) { var result = {}; iteratee = cb(iteratee, context); _.each(obj, function(value, index) { var key = iteratee(value, index, obj); behavior(result, value, key); }); return result; }; }; // Groups the object's values by a criterion. Pass either a string attribute // to group by, or a function that returns the criterion. _.groupBy = group(function(result, value, key) { if (_.has(result, key)) result[key].push(value); else result[key] = [value]; }); // Indexes the object's values by a criterion, similar to `groupBy`, but for // when you know that your index values will be unique. _.indexBy = group(function(result, value, key) { result[key] = value; }); // Counts instances of an object that group by a certain criterion. Pass // either a string attribute to count by, or a function that returns the // criterion. _.countBy = group(function(result, value, key) { if (_.has(result, key)) result[key]++; else result[key] = 1; }); // Safely create a real, live array from anything iterable. _.toArray = function(obj) { if (!obj) return []; if (_.isArray(obj)) return slice.call(obj); if (isArrayLike(obj)) return _.map(obj, _.identity); return _.values(obj); }; // Return the number of elements in an object. _.size = function(obj) { if (obj == null) return 0; return isArrayLike(obj) ? obj.length : _.keys(obj).length; }; // Split a collection into two arrays: one whose elements all satisfy the given // predicate, and one whose elements all do not satisfy the predicate. _.partition = function(obj, predicate, context) { predicate = cb(predicate, context); var pass = [], fail = []; _.each(obj, function(value, key, obj) { (predicate(value, key, obj) ? pass : fail).push(value); }); return [pass, fail]; }; // Array Functions // --------------- // Get the first element of an array. Passing **n** will return the first N // values in the array. Aliased as `head` and `take`. The **guard** check // allows it to work with `_.map`. _.first = _.head = _.take = function(array, n, guard) { if (array == null) return void 0; if (n == null || guard) return array[0]; return _.initial(array, array.length - n); }; // Returns everything but the last entry of the array. Especially useful on // the arguments object. Passing **n** will return all the values in // the array, excluding the last N. _.initial = function(array, n, guard) { return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); }; // Get the last element of an array. Passing **n** will return the last N // values in the array. _.last = function(array, n, guard) { if (array == null) return void 0; if (n == null || guard) return array[array.length - 1]; return _.rest(array, Math.max(0, array.length - n)); }; // Returns everything but the first entry of the array. Aliased as `tail` and `drop`. // Especially useful on the arguments object. Passing an **n** will return // the rest N values in the array. _.rest = _.tail = _.drop = function(array, n, guard) { return slice.call(array, n == null || guard ? 1 : n); }; // Trim out all falsy values from an array. _.compact = function(array) { return _.filter(array, _.identity); }; // Internal implementation of a recursive `flatten` function. var flatten = function(input, shallow, strict, startIndex) { var output = [], idx = 0; for (var i = startIndex || 0, length = getLength(input); i < length; i++) { var value = input[i]; if (isArrayLike(value) && (_.isArray(value) || _.isArguments(value))) { //flatten current level of array or arguments object if (!shallow) value = flatten(value, shallow, strict); var j = 0, len = value.length; output.length += len; while (j < len) { output[idx++] = value[j++]; } } else if (!strict) { output[idx++] = value; } } return output; }; // Flatten out an array, either recursively (by default), or just one level. _.flatten = function(array, shallow) { return flatten(array, shallow, false); }; // Return a version of the array that does not contain the specified value(s). _.without = function(array) { return _.difference(array, slice.call(arguments, 1)); }; // Produce a duplicate-free version of the array. If the array has already // been sorted, you have the option of using a faster algorithm. // Aliased as `unique`. _.uniq = _.unique = function(array, isSorted, iteratee, context) { if (!_.isBoolean(isSorted)) { context = iteratee; iteratee = isSorted; isSorted = false; } if (iteratee != null) iteratee = cb(iteratee, context); var result = []; var seen = []; for (var i = 0, length = getLength(array); i < length; i++) { var value = array[i], computed = iteratee ? iteratee(value, i, array) : value; if (isSorted) { if (!i || seen !== computed) result.push(value); seen = computed; } else if (iteratee) { if (!_.contains(seen, computed)) { seen.push(computed); result.push(value); } } else if (!_.contains(result, value)) { result.push(value); } } return result; }; // Produce an array that contains the union: each distinct element from all of // the passed-in arrays. _.union = function() { return _.uniq(flatten(arguments, true, true)); }; // Produce an array that contains every item shared between all the // passed-in arrays. _.intersection = function(array) { var result = []; var argsLength = arguments.length; for (var i = 0, length = getLength(array); i < length; i++) { var item = array[i]; if (_.contains(result, item)) continue; for (var j = 1; j < argsLength; j++) { if (!_.contains(arguments[j], item)) break; } if (j === argsLength) result.push(item); } return result; }; // Take the difference between one array and a number of other arrays. // Only the elements present in just the first array will remain. _.difference = function(array) { var rest = flatten(arguments, true, true, 1); return _.filter(array, function(value){ return !_.contains(rest, value); }); }; // Zip together multiple lists into a single array -- elements that share // an index go together. _.zip = function() { return _.unzip(arguments); }; // Complement of _.zip. Unzip accepts an array of arrays and groups // each array's elements on shared indices _.unzip = function(array) { var length = array && _.max(array, getLength).length || 0; var result = Array(length); for (var index = 0; index < length; index++) { result[index] = _.pluck(array, index); } return result; }; // Converts lists into objects. Pass either a single array of `[key, value]` // pairs, or two parallel arrays of the same length -- one of keys, and one of // the corresponding values. _.object = function(list, values) { var result = {}; for (var i = 0, length = getLength(list); i < length; i++) { if (values) { result[list[i]] = values[i]; } else { result[list[i][0]] = list[i][1]; } } return result; }; // Generator function to create the findIndex and findLastIndex functions function createPredicateIndexFinder(dir) { return function(array, predicate, context) { predicate = cb(predicate, context); var length = getLength(array); var index = dir > 0 ? 0 : length - 1; for (; index >= 0 && index < length; index += dir) { if (predicate(array[index], index, array)) return index; } return -1; }; } // Returns the first index on an array-like that passes a predicate test _.findIndex = createPredicateIndexFinder(1); _.findLastIndex = createPredicateIndexFinder(-1); // Use a comparator function to figure out the smallest index at which // an object should be inserted so as to maintain order. Uses binary search. _.sortedIndex = function(array, obj, iteratee, context) { iteratee = cb(iteratee, context, 1); var value = iteratee(obj); var low = 0, high = getLength(array); while (low < high) { var mid = Math.floor((low + high) / 2); if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; } return low; }; // Generator function to create the indexOf and lastIndexOf functions function createIndexFinder(dir, predicateFind, sortedIndex) { return function(array, item, idx) { var i = 0, length = getLength(array); if (typeof idx == 'number') { if (dir > 0) { i = idx >= 0 ? idx : Math.max(idx + length, i); } else { length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1; } } else if (sortedIndex && idx && length) { idx = sortedIndex(array, item); return array[idx] === item ? idx : -1; } if (item !== item) { idx = predicateFind(slice.call(array, i, length), _.isNaN); return idx >= 0 ? idx + i : -1; } for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) { if (array[idx] === item) return idx; } return -1; }; } // Return the position of the first occurrence of an item in an array, // or -1 if the item is not included in the array. // If the array is large and already in sort order, pass `true` // for **isSorted** to use binary search. _.indexOf = createIndexFinder(1, _.findIndex, _.sortedIndex); _.lastIndexOf = createIndexFinder(-1, _.findLastIndex); // Generate an integer Array containing an arithmetic progression. A port of // the native Python `range()` function. See // [the Python documentation](http://docs.python.org/library/functions.html#range). _.range = function(start, stop, step) { if (stop == null) { stop = start || 0; start = 0; } step = step || 1; var length = Math.max(Math.ceil((stop - start) / step), 0); var range = Array(length); for (var idx = 0; idx < length; idx++, start += step) { range[idx] = start; } return range; }; // Function (ahem) Functions // ------------------ // Determines whether to execute a function as a constructor // or a normal function with the provided arguments var executeBound = function(sourceFunc, boundFunc, context, callingContext, args) { if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args); var self = baseCreate(sourceFunc.prototype); var result = sourceFunc.apply(self, args); if (_.isObject(result)) return result; return self; }; // Create a function bound to a given object (assigning `this`, and arguments, // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if // available. _.bind = function(func, context) { if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1)); if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function'); var args = slice.call(arguments, 2); var bound = function() { return executeBound(func, bound, context, this, args.concat(slice.call(arguments))); }; return bound; }; // Partially apply a function by creating a version that has had some of its // arguments pre-filled, without changing its dynamic `this` context. _ acts // as a placeholder, allowing any combination of arguments to be pre-filled. _.partial = function(func) { var boundArgs = slice.call(arguments, 1); var bound = function() { var position = 0, length = boundArgs.length; var args = Array(length); for (var i = 0; i < length; i++) { args[i] = boundArgs[i] === _ ? arguments[position++] : boundArgs[i]; } while (position < arguments.length) args.push(arguments[position++]); return executeBound(func, bound, this, this, args); }; return bound; }; // Bind a number of an object's methods to that object. Remaining arguments // are the method names to be bound. Useful for ensuring that all callbacks // defined on an object belong to it. _.bindAll = function(obj) { var i, length = arguments.length, key; if (length <= 1) throw new Error('bindAll must be passed function names'); for (i = 1; i < length; i++) { key = arguments[i]; obj[key] = _.bind(obj[key], obj); } return obj; }; // Memoize an expensive function by storing its results. _.memoize = function(func, hasher) { var memoize = function(key) { var cache = memoize.cache; var address = '' + (hasher ? hasher.apply(this, arguments) : key); if (!_.has(cache, address)) cache[address] = func.apply(this, arguments); return cache[address]; }; memoize.cache = {}; return memoize; }; // Delays a function for the given number of milliseconds, and then calls // it with the arguments supplied. _.delay = function(func, wait) { var args = slice.call(arguments, 2); return setTimeout(function(){ return func.apply(null, args); }, wait); }; // Defers a function, scheduling it to run after the current call stack has // cleared. _.defer = _.partial(_.delay, _, 1); // Returns a function, that, when invoked, will only be triggered at most once // during a given window of time. Normally, the throttled function will run // as much as it can, without ever going more than once per `wait` duration; // but if you'd like to disable the execution on the leading edge, pass // `{leading: false}`. To disable execution on the trailing edge, ditto. _.throttle = function(func, wait, options) { var context, args, result; var timeout = null; var previous = 0; if (!options) options = {}; var later = function() { previous = options.leading === false ? 0 : _.now(); timeout = null; result = func.apply(context, args); if (!timeout) context = args = null; }; return function() { var now = _.now(); if (!previous && options.leading === false) previous = now; var remaining = wait - (now - previous); context = this; args = arguments; if (remaining <= 0 || remaining > wait) { if (timeout) { clearTimeout(timeout); timeout = null; } previous = now; result = func.apply(context, args); if (!timeout) context = args = null; } else if (!timeout && options.trailing !== false) { timeout = setTimeout(later, remaining); } return result; }; }; // Returns a function, that, as long as it continues to be invoked, will not // be triggered. The function will be called after it stops being called for // N milliseconds. If `immediate` is passed, trigger the function on the // leading edge, instead of the trailing. _.debounce = function(func, wait, immediate) { var timeout, args, context, timestamp, result; var later = function() { var last = _.now() - timestamp; if (last < wait && last >= 0) { timeout = setTimeout(later, wait - last); } else { timeout = null; if (!immediate) { result = func.apply(context, args); if (!timeout) context = args = null; } } }; return function() { context = this; args = arguments; timestamp = _.now(); var callNow = immediate && !timeout; if (!timeout) timeout = setTimeout(later, wait); if (callNow) { result = func.apply(context, args); context = args = null; } return result; }; }; // Returns the first function passed as an argument to the second, // allowing you to adjust arguments, run code before and after, and // conditionally execute the original function. _.wrap = function(func, wrapper) { return _.partial(wrapper, func); }; // Returns a negated version of the passed-in predicate. _.negate = function(predicate) { return function() { return !predicate.apply(this, arguments); }; }; // Returns a function that is the composition of a list of functions, each // consuming the return value of the function that follows. _.compose = function() { var args = arguments; var start = args.length - 1; return function() { var i = start; var result = args[start].apply(this, arguments); while (i--) result = args[i].call(this, result); return result; }; }; // Returns a function that will only be executed on and after the Nth call. _.after = function(times, func) { return function() { if (--times < 1) { return func.apply(this, arguments); } }; }; // Returns a function that will only be executed up to (but not including) the Nth call. _.before = function(times, func) { var memo; return function() { if (--times > 0) { memo = func.apply(this, arguments); } if (times <= 1) func = null; return memo; }; }; // Returns a function that will be executed at most one time, no matter how // often you call it. Useful for lazy initialization. _.once = _.partial(_.before, 2); // Object Functions // ---------------- // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed. var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString'); var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString', 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString']; function collectNonEnumProps(obj, keys) { var nonEnumIdx = nonEnumerableProps.length; var constructor = obj.constructor; var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto; // Constructor is a special case. var prop = 'constructor'; if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop); while (nonEnumIdx--) { prop = nonEnumerableProps[nonEnumIdx]; if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) { keys.push(prop); } } } // Retrieve the names of an object's own properties. // Delegates to **ECMAScript 5**'s native `Object.keys` _.keys = function(obj) { if (!_.isObject(obj)) return []; if (nativeKeys) return nativeKeys(obj); var keys = []; for (var key in obj) if (_.has(obj, key)) keys.push(key); // Ahem, IE < 9. if (hasEnumBug) collectNonEnumProps(obj, keys); return keys; }; // Retrieve all the property names of an object. _.allKeys = function(obj) { if (!_.isObject(obj)) return []; var keys = []; for (var key in obj) keys.push(key); // Ahem, IE < 9. if (hasEnumBug) collectNonEnumProps(obj, keys); return keys; }; // Retrieve the values of an object's properties. _.values = function(obj) { var keys = _.keys(obj); var length = keys.length; var values = Array(length); for (var i = 0; i < length; i++) { values[i] = obj[keys[i]]; } return values; }; // Returns the results of applying the iteratee to each element of the object // In contrast to _.map it returns an object _.mapObject = function(obj, iteratee, context) { iteratee = cb(iteratee, context); var keys = _.keys(obj), length = keys.length, results = {}, currentKey; for (var index = 0; index < length; index++) { currentKey = keys[index]; results[currentKey] = iteratee(obj[currentKey], currentKey, obj); } return results; }; // Convert an object into a list of `[key, value]` pairs. _.pairs = function(obj) { var keys = _.keys(obj); var length = keys.length; var pairs = Array(length); for (var i = 0; i < length; i++) { pairs[i] = [keys[i], obj[keys[i]]]; } return pairs; }; // Invert the keys and values of an object. The values must be serializable. _.invert = function(obj) { var result = {}; var keys = _.keys(obj); for (var i = 0, length = keys.length; i < length; i++) { result[obj[keys[i]]] = keys[i]; } return result; }; // Return a sorted list of the function names available on the object. // Aliased as `methods` _.functions = _.methods = function(obj) { var names = []; for (var key in obj) { if (_.isFunction(obj[key])) names.push(key); } return names.sort(); }; // Extend a given object with all the properties in passed-in object(s). _.extend = createAssigner(_.allKeys); // Assigns a given object with all the own properties in the passed-in object(s) // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) _.extendOwn = _.assign = createAssigner(_.keys); // Returns the first key on an object that passes a predicate test _.findKey = function(obj, predicate, context) { predicate = cb(predicate, context); var keys = _.keys(obj), key; for (var i = 0, length = keys.length; i < length; i++) { key = keys[i]; if (predicate(obj[key], key, obj)) return key; } }; // Return a copy of the object only containing the whitelisted properties. _.pick = function(object, oiteratee, context) { var result = {}, obj = object, iteratee, keys; if (obj == null) return result; if (_.isFunction(oiteratee)) { keys = _.allKeys(obj); iteratee = optimizeCb(oiteratee, context); } else { keys = flatten(arguments, false, false, 1); iteratee = function(value, key, obj) { return key in obj; }; obj = Object(obj); } for (var i = 0, length = keys.length; i < length; i++) { var key = keys[i]; var value = obj[key]; if (iteratee(value, key, obj)) result[key] = value; } return result; }; // Return a copy of the object without the blacklisted properties. _.omit = function(obj, iteratee, context) { if (_.isFunction(iteratee)) { iteratee = _.negate(iteratee); } else { var keys = _.map(flatten(arguments, false, false, 1), String); iteratee = function(value, key) { return !_.contains(keys, key); }; } return _.pick(obj, iteratee, context); }; // Fill in a given object with default properties. _.defaults = createAssigner(_.allKeys, true); // Creates an object that inherits from the given prototype object. // If additional properties are provided then they will be added to the // created object. _.create = function(prototype, props) { var result = baseCreate(prototype); if (props) _.extendOwn(result, props); return result; }; // Create a (shallow-cloned) duplicate of an object. _.clone = function(obj) { if (!_.isObject(obj)) return obj; return _.isArray(obj) ? obj.slice() : _.extend({}, obj); }; // Invokes interceptor with the obj, and then returns obj. // The primary purpose of this method is to "tap into" a method chain, in // order to perform operations on intermediate results within the chain. _.tap = function(obj, interceptor) { interceptor(obj); return obj; }; // Returns whether an object has a given set of `key:value` pairs. _.isMatch = function(object, attrs) { var keys = _.keys(attrs), length = keys.length; if (object == null) return !length; var obj = Object(object); for (var i = 0; i < length; i++) { var key = keys[i]; if (attrs[key] !== obj[key] || !(key in obj)) return false; } return true; }; // Internal recursive comparison function for `isEqual`. var eq = function(a, b, aStack, bStack) { // Identical objects are equal. `0 === -0`, but they aren't identical. // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal). if (a === b) return a !== 0 || 1 / a === 1 / b; // A strict comparison is necessary because `null == undefined`. if (a == null || b == null) return a === b; // Unwrap any wrapped objects. if (a instanceof _) a = a._wrapped; if (b instanceof _) b = b._wrapped; // Compare `[[Class]]` names. var className = toString.call(a); if (className !== toString.call(b)) return false; switch (className) { // Strings, numbers, regular expressions, dates, and booleans are compared by value. case '[object RegExp]': // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') case '[object String]': // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is // equivalent to `new String("5")`. return '' + a === '' + b; case '[object Number]': // `NaN`s are equivalent, but non-reflexive. // Object(NaN) is equivalent to NaN if (+a !== +a) return +b !== +b; // An `egal` comparison is performed for other numeric values. return +a === 0 ? 1 / +a === 1 / b : +a === +b; case '[object Date]': case '[object Boolean]': // Coerce dates and booleans to numeric primitive values. Dates are compared by their // millisecond representations. Note that invalid dates with millisecond representations // of `NaN` are not equivalent. return +a === +b; } var areArrays = className === '[object Array]'; if (!areArrays) { if (typeof a != 'object' || typeof b != 'object') return false; // Objects with different constructors are not equivalent, but `Object`s or `Array`s // from different frames are. var aCtor = a.constructor, bCtor = b.constructor; if (aCtor !== bCtor && !(_.isFunction(aCtor) && aCtor instanceof aCtor && _.isFunction(bCtor) && bCtor instanceof bCtor) && ('constructor' in a && 'constructor' in b)) { return false; } } // Assume equality for cyclic structures. The algorithm for detecting cyclic // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`. // Initializing stack of traversed objects. // It's done here since we only need them for objects and arrays comparison. aStack = aStack || []; bStack = bStack || []; var length = aStack.length; while (length--) { // Linear search. Performance is inversely proportional to the number of // unique nested structures. if (aStack[length] === a) return bStack[length] === b; } // Add the first object to the stack of traversed objects. aStack.push(a); bStack.push(b); // Recursively compare objects and arrays. if (areArrays) { // Compare array lengths to determine if a deep comparison is necessary. length = a.length; if (length !== b.length) return false; // Deep compare the contents, ignoring non-numeric properties. while (length--) { if (!eq(a[length], b[length], aStack, bStack)) return false; } } else { // Deep compare objects. var keys = _.keys(a), key; length = keys.length; // Ensure that both objects contain the same number of properties before comparing deep equality. if (_.keys(b).length !== length) return false; while (length--) { // Deep compare each member key = keys[length]; if (!(_.has(b, key) && eq(a[key], b[key], aStack, bStack))) return false; } } // Remove the first object from the stack of traversed objects. aStack.pop(); bStack.pop(); return true; }; // Perform a deep comparison to check if two objects are equal. _.isEqual = function(a, b) { return eq(a, b); }; // Is a given array, string, or object empty? // An "empty" object has no enumerable own-properties. _.isEmpty = function(obj) { if (obj == null) return true; if (isArrayLike(obj) && (_.isArray(obj) || _.isString(obj) || _.isArguments(obj))) return obj.length === 0; return _.keys(obj).length === 0; }; // Is a given value a DOM element? _.isElement = function(obj) { return !!(obj && obj.nodeType === 1); }; // Is a given value an array? // Delegates to ECMA5's native Array.isArray _.isArray = nativeIsArray || function(obj) { return toString.call(obj) === '[object Array]'; }; // Is a given variable an object? _.isObject = function(obj) { var type = typeof obj; return type === 'function' || type === 'object' && !!obj; }; // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp, isError. _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp', 'Error'], function(name) { _['is' + name] = function(obj) { return toString.call(obj) === '[object ' + name + ']'; }; }); // Define a fallback version of the method in browsers (ahem, IE < 9), where // there isn't any inspectable "Arguments" type. if (!_.isArguments(arguments)) { _.isArguments = function(obj) { return _.has(obj, 'callee'); }; } // Optimize `isFunction` if appropriate. Work around some typeof bugs in old v8, // IE 11 (#1621), and in Safari 8 (#1929). if (typeof /./ != 'function' && typeof Int8Array != 'object') { _.isFunction = function(obj) { return typeof obj == 'function' || false; }; } // Is a given object a finite number? _.isFinite = function(obj) { return isFinite(obj) && !isNaN(parseFloat(obj)); }; // Is the given value `NaN`? (NaN is the only number which does not equal itself). _.isNaN = function(obj) { return _.isNumber(obj) && obj !== +obj; }; // Is a given value a boolean? _.isBoolean = function(obj) { return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; }; // Is a given value equal to null? _.isNull = function(obj) { return obj === null; }; // Is a given variable undefined? _.isUndefined = function(obj) { return obj === void 0; }; // Shortcut function for checking if an object has a given property directly // on itself (in other words, not on a prototype). _.has = function(obj, key) { return obj != null && hasOwnProperty.call(obj, key); }; // Utility Functions // ----------------- // Run Underscore.js in *noConflict* mode, returning the `_` variable to its // previous owner. Returns a reference to the Underscore object. _.noConflict = function() { root._ = previousUnderscore; return this; }; // Keep the identity function around for default iteratees. _.identity = function(value) { return value; }; // Predicate-generating functions. Often useful outside of Underscore. _.constant = function(value) { return function() { return value; }; }; _.noop = function(){}; _.property = property; // Generates a function for a given object that returns a given property. _.propertyOf = function(obj) { return obj == null ? function(){} : function(key) { return obj[key]; }; }; // Returns a predicate for checking whether an object has a given set of // `key:value` pairs. _.matcher = _.matches = function(attrs) { attrs = _.extendOwn({}, attrs); return function(obj) { return _.isMatch(obj, attrs); }; }; // Run a function **n** times. _.times = function(n, iteratee, context) { var accum = Array(Math.max(0, n)); iteratee = optimizeCb(iteratee, context, 1); for (var i = 0; i < n; i++) accum[i] = iteratee(i); return accum; }; // Return a random integer between min and max (inclusive). _.random = function(min, max) { if (max == null) { max = min; min = 0; } return min + Math.floor(Math.random() * (max - min + 1)); }; // A (possibly faster) way to get the current timestamp as an integer. _.now = Date.now || function() { return new Date().getTime(); }; // List of HTML entities for escaping. var escapeMap = { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''', '`': '`' }; var unescapeMap = _.invert(escapeMap); // Functions for escaping and unescaping strings to/from HTML interpolation. var createEscaper = function(map) { var escaper = function(match) { return map[match]; }; // Regexes for identifying a key that needs to be escaped var source = '(?:' + _.keys(map).join('|') + ')'; var testRegexp = RegExp(source); var replaceRegexp = RegExp(source, 'g'); return function(string) { string = string == null ? '' : '' + string; return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; }; }; _.escape = createEscaper(escapeMap); _.unescape = createEscaper(unescapeMap); // If the value of the named `property` is a function then invoke it with the // `object` as context; otherwise, return it. _.result = function(object, property, fallback) { var value = object == null ? void 0 : object[property]; if (value === void 0) { value = fallback; } return _.isFunction(value) ? value.call(object) : value; }; // Generate a unique integer id (unique within the entire client session). // Useful for temporary DOM ids. var idCounter = 0; _.uniqueId = function(prefix) { var id = ++idCounter + ''; return prefix ? prefix + id : id; }; // By default, Underscore uses ERB-style template delimiters, change the // following template settings to use alternative delimiters. _.templateSettings = { evaluate : /<%([\s\S]+?)%>/g, interpolate : /<%=([\s\S]+?)%>/g, escape : /<%-([\s\S]+?)%>/g }; // When customizing `templateSettings`, if you don't want to define an // interpolation, evaluation or escaping regex, we need one that is // guaranteed not to match. var noMatch = /(.)^/; // Certain characters need to be escaped so that they can be put into a // string literal. var escapes = { "'": "'", '\\': '\\', '\r': 'r', '\n': 'n', '\u2028': 'u2028', '\u2029': 'u2029' }; var escaper = /\\|'|\r|\n|\u2028|\u2029/g; var escapeChar = function(match) { return '\\' + escapes[match]; }; // JavaScript micro-templating, similar to John Resig's implementation. // Underscore templating handles arbitrary delimiters, preserves whitespace, // and correctly escapes quotes within interpolated code. // NB: `oldSettings` only exists for backwards compatibility. _.template = function(text, settings, oldSettings) { if (!settings && oldSettings) settings = oldSettings; settings = _.defaults({}, settings, _.templateSettings); // Combine delimiters into one regular expression via alternation. var matcher = RegExp([ (settings.escape || noMatch).source, (settings.interpolate || noMatch).source, (settings.evaluate || noMatch).source ].join('|') + '|$', 'g'); // Compile the template source, escaping string literals appropriately. var index = 0; var source = "__p+='"; text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { source += text.slice(index, offset).replace(escaper, escapeChar); index = offset + match.length; if (escape) { source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; } else if (interpolate) { source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; } else if (evaluate) { source += "';\n" + evaluate + "\n__p+='"; } // Adobe VMs need the match returned to produce the correct offest. return match; }); source += "';\n"; // If a variable is not specified, place data values in local scope. if (!settings.variable) source = 'with(obj||{}){\n' + source + '}\n'; source = "var __t,__p='',__j=Array.prototype.join," + "print=function(){__p+=__j.call(arguments,'');};\n" + source + 'return __p;\n'; try { var render = new Function(settings.variable || 'obj', '_', source); } catch (e) { e.source = source; throw e; } var template = function(data) { return render.call(this, data, _); }; // Provide the compiled source as a convenience for precompilation. var argument = settings.variable || 'obj'; template.source = 'function(' + argument + '){\n' + source + '}'; return template; }; // Add a "chain" function. Start chaining a wrapped Underscore object. _.chain = function(obj) { var instance = _(obj); instance._chain = true; return instance; }; // OOP // --------------- // If Underscore is called as a function, it returns a wrapped object that // can be used OO-style. This wrapper holds altered versions of all the // underscore functions. Wrapped objects may be chained. // Helper function to continue chaining intermediate results. var result = function(instance, obj) { return instance._chain ? _(obj).chain() : obj; }; // Add your own custom functions to the Underscore object. _.mixin = function(obj) { _.each(_.functions(obj), function(name) { var func = _[name] = obj[name]; _.prototype[name] = function() { var args = [this._wrapped]; push.apply(args, arguments); return result(this, func.apply(_, args)); }; }); }; // Add all of the Underscore functions to the wrapper object. _.mixin(_); // Add all mutator Array functions to the wrapper. _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { var method = ArrayProto[name]; _.prototype[name] = function() { var obj = this._wrapped; method.apply(obj, arguments); if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0]; return result(this, obj); }; }); // Add all accessor Array functions to the wrapper. _.each(['concat', 'join', 'slice'], function(name) { var method = ArrayProto[name]; _.prototype[name] = function() { return result(this, method.apply(this._wrapped, arguments)); }; }); // Extracts the result from a wrapped and chained object. _.prototype.value = function() { return this._wrapped; }; // Provide unwrapping proxy for some methods used in engine operations // such as arithmetic and JSON stringification. _.prototype.valueOf = _.prototype.toJSON = _.prototype.value; _.prototype.toString = function() { return '' + this._wrapped; }; // AMD registration happens at the end for compatibility with AMD loaders // that may not enforce next-turn semantics on modules. Even though general // practice for AMD registration is to be anonymous, underscore registers // as a named module because, like jQuery, it is a base library that is // popular enough to be bundled in a third party lib, but not be part of // an AMD load request. Those cases could generate an error when an // anonymous define() is called outside of a loader request. if (typeof define === 'function' && define.amd) { define('underscore', [], function() { return _; }); } }.call(this)); PKv\=heartbeat.min.jsnuW+A/*! This file is auto-generated */ !function(f,w){w.wp=w.wp||{},w.wp.heartbeat=new function(){var e,t,n,a,r=f(document),i={suspend:!1,suspendEnabled:!0,screenId:"",url:"",lastTick:0,queue:{},mainInterval:60,tempInterval:0,originalInterval:0,minimalInterval:0,countdown:0,connecting:!1,connectionError:!1,errorcount:0,hasConnected:!1,hasFocus:!0,userActivity:0,userActivityEvents:!1,checkFocusTimer:0,beatTimer:0};function o(){return(new Date).getTime()}function c(e){var t,n=e.src;if(!n||!/^https?:\/\//.test(n)||(t=w.location.origin||w.location.protocol+"//"+w.location.host,0===n.indexOf(t)))try{if(e.contentWindow.document)return 1}catch(e){}}function s(){i.hasFocus&&!document.hasFocus()?m():!i.hasFocus&&document.hasFocus()&&v()}function u(e,t){var n;if(e){switch(e){case"abort":break;case"timeout":n=!0;break;case"error":if(503===t&&i.hasConnected){n=!0;break}case"parsererror":case"empty":case"unknown":i.errorcount++,2=this.created)},i=["s","order","orderby","posts_per_page","post_mime_type","post_parent","author"],wp.Uploader&&_(this.args).chain().keys().difference(i).isEmpty().value()&&this.observe(wp.Uploader.queue)},hasMore:function(){return this._hasMore},more:function(t){var e=this;return this._more&&"pending"===this._more.state()?this._more:this.hasMore()?((t=t||{}).remove=!1,this._more=this.fetch(t).done(function(t){(_.isEmpty(t)||-1===this.args.posts_per_page||t.length|$)/g, '' ) .replace( /<(script|style)[^>]*>[\s\S]*?(<\/\1>|$)/ig, '' ) .replace( /<\/?[a-z][\s\S]*?(>|$)/ig, '' ); // If the initial text is not equal to the modified text, // do the search-replace again, until there is nothing to be replaced. if ( _text !== text ) { return wp.sanitize.stripTags( _text ); } // Return the text with stripped tags. return _text; }, /** * Strip HTML tags and convert HTML entities. * * @param {string} text Text to strip tags and convert HTML entities. * * @return Sanitized text. False on failure. */ stripTagsAndEncodeText: function( text ) { var _text = wp.sanitize.stripTags( text ), textarea = document.createElement( 'textarea' ); try { textarea.textContent = _text; _text = wp.sanitize.stripTags( textarea.value ); } catch ( er ) {} return _text; } }; }() ); PKv\@++ admin-bar.jsnuW+A/** * @output wp-includes/js/admin-bar.js */ /** * Admin bar with Vanilla JS, no external dependencies. * * @since 5.3.1 * * @param {Object} document The document object. * @param {Object} window The window object. * @param {Object} navigator The navigator object. * * @return {void} */ ( function( document, window, navigator ) { document.addEventListener( 'DOMContentLoaded', function() { var adminBar = document.getElementById( 'wpadminbar' ), topMenuItems, allMenuItems, adminBarLogout, adminBarSearchForm, shortlink, skipLink, mobileEvent, fontFaceRegex, adminBarSearchInput, i; if ( ! adminBar || ! ( 'querySelectorAll' in adminBar ) ) { return; } topMenuItems = adminBar.querySelectorAll( 'li.menupop' ); allMenuItems = adminBar.querySelectorAll( '.ab-item' ); adminBarLogout = document.getElementById( 'wp-admin-bar-logout' ); adminBarSearchForm = document.getElementById( 'adminbarsearch' ); shortlink = document.getElementById( 'wp-admin-bar-get-shortlink' ); skipLink = adminBar.querySelector( '.screen-reader-shortcut' ); mobileEvent = /Mobile\/.+Safari/.test( navigator.userAgent ) ? 'touchstart' : 'click'; fontFaceRegex = /Android (1.0|1.1|1.5|1.6|2.0|2.1)|Nokia|Opera Mini|w(eb)?OSBrowser|webOS|UCWEB|Windows Phone OS 7|XBLWP7|ZuneWP7|MSIE 7/; // Remove nojs class after the DOM is loaded. removeClass( adminBar, 'nojs' ); if ( 'ontouchstart' in window ) { // Remove hover class when the user touches outside the menu items. document.body.addEventListener( mobileEvent, function( e ) { if ( ! getClosest( e.target, 'li.menupop' ) ) { removeAllHoverClass( topMenuItems ); } } ); // Add listener for menu items to toggle hover class by touches. // Remove the callback later for better performance. adminBar.addEventListener( 'touchstart', function bindMobileEvents() { for ( var i = 0; i < topMenuItems.length; i++ ) { topMenuItems[i].addEventListener( 'click', mobileHover.bind( null, topMenuItems ) ); } adminBar.removeEventListener( 'touchstart', bindMobileEvents ); } ); } // Scroll page to top when clicking on the admin bar. adminBar.addEventListener( 'click', scrollToTop ); for ( i = 0; i < topMenuItems.length; i++ ) { // Adds or removes the hover class based on the hover intent. window.hoverintent( topMenuItems[i], addClass.bind( null, topMenuItems[i], 'hover' ), removeClass.bind( null, topMenuItems[i], 'hover' ) ).options( { timeout: 180 } ); // Toggle hover class if the enter key is pressed. topMenuItems[i].addEventListener( 'keydown', toggleHoverIfEnter ); } // Remove hover class if the escape key is pressed. for ( i = 0; i < allMenuItems.length; i++ ) { allMenuItems[i].addEventListener( 'keydown', removeHoverIfEscape ); } if ( adminBarSearchForm ) { adminBarSearchInput = document.getElementById( 'adminbar-search' ); // Adds the adminbar-focused class on focus. adminBarSearchInput.addEventListener( 'focus', function() { addClass( adminBarSearchForm, 'adminbar-focused' ); } ); // Removes the adminbar-focused class on blur. adminBarSearchInput.addEventListener( 'blur', function() { removeClass( adminBarSearchForm, 'adminbar-focused' ); } ); } if ( skipLink ) { // Focus the target of skip link after pressing Enter. skipLink.addEventListener( 'keydown', focusTargetAfterEnter ); } if ( shortlink ) { shortlink.addEventListener( 'click', clickShortlink ); } // Prevents the toolbar from covering up content when a hash is present in the URL. if ( window.location.hash ) { window.scrollBy( 0, -32 ); } // Add no-font-face class to body if needed. if ( navigator.userAgent && fontFaceRegex.test( navigator.userAgent ) && ! hasClass( document.body, 'no-font-face' ) ) { addClass( document.body, 'no-font-face' ); } // Clear sessionStorage on logging out. if ( adminBarLogout ) { adminBarLogout.addEventListener( 'click', emptySessionStorage ); } } ); /** * Remove hover class for top level menu item when escape is pressed. * * @since 5.3.1 * * @param {Event} event The keydown event. */ function removeHoverIfEscape( event ) { var wrapper; if ( event.which !== 27 ) { return; } wrapper = getClosest( event.target, '.menupop' ); if ( ! wrapper ) { return; } wrapper.querySelector( '.menupop > .ab-item' ).focus(); removeClass( wrapper, 'hover' ); } /** * Toggle hover class for top level menu item when enter is pressed. * * @since 5.3.1 * * @param {Event} event The keydown event. */ function toggleHoverIfEnter( event ) { var wrapper; if ( event.which !== 13 ) { return; } if ( !! getClosest( event.target, '.ab-sub-wrapper' ) ) { return; } wrapper = getClosest( event.target, '.menupop' ); if ( ! wrapper ) { return; } event.preventDefault(); if ( hasClass( wrapper, 'hover' ) ) { removeClass( wrapper, 'hover' ); } else { addClass( wrapper, 'hover' ); } } /** * Focus the target of skip link after pressing Enter. * * @since 5.3.1 * * @param {Event} event The keydown event. */ function focusTargetAfterEnter( event ) { var id, userAgent; if ( event.which !== 13 ) { return; } id = event.target.getAttribute( 'href' ); userAgent = navigator.userAgent.toLowerCase(); if ( userAgent.indexOf( 'applewebkit' ) > -1 && id && id.charAt( 0 ) === '#' ) { setTimeout( function() { var target = document.getElementById( id.replace( '#', '' ) ); if ( target ) { target.setAttribute( 'tabIndex', '0' ); target.focus(); } }, 100 ); } } /** * Toogle hover class for mobile devices. * * @since 5.3.1 * * @param {NodeList} topMenuItems All menu items. * @param {Event} event The click event. */ function mobileHover( topMenuItems, event ) { var wrapper; if ( !! getClosest( event.target, '.ab-sub-wrapper' ) ) { return; } event.preventDefault(); wrapper = getClosest( event.target, '.menupop' ); if ( ! wrapper ) { return; } if ( hasClass( wrapper, 'hover' ) ) { removeClass( wrapper, 'hover' ); } else { removeAllHoverClass( topMenuItems ); addClass( wrapper, 'hover' ); } } /** * Handles the click on the Shortlink link in the adminbar. * * @since 3.1.0 * @since 5.3.1 Use querySelector to clean up the function. * * @param {Event} event The click event. * @return {boolean} Returns false to prevent default click behavior. */ function clickShortlink( event ) { var wrapper = event.target.parentNode, input; if ( wrapper ) { input = wrapper.querySelector( '.shortlink-input' ); } if ( ! input ) { return; } // (Old) IE doesn't support preventDefault, and does support returnValue. if ( event.preventDefault ) { event.preventDefault(); } event.returnValue = false; addClass( wrapper, 'selected' ); input.focus(); input.select(); input.onblur = function() { removeClass( wrapper, 'selected' ); }; return false; } /** * Clear sessionStorage on logging out. * * @since 5.3.1 */ function emptySessionStorage() { if ( 'sessionStorage' in window ) { try { for ( var key in sessionStorage ) { if ( key.indexOf( 'wp-autosave-' ) > -1 ) { sessionStorage.removeItem( key ); } } } catch ( er ) {} } } /** * Check if element has class. * * @since 5.3.1 * * @param {HTMLElement} element The HTML element. * @param {String} className The class name. * @return {bool} Whether the element has the className. */ function hasClass( element, className ) { var classNames; if ( ! element ) { return false; } if ( element.classList && element.classList.contains ) { return element.classList.contains( className ); } else if ( element.className ) { classNames = element.className.split( ' ' ); return classNames.indexOf( className ) > -1; } return false; } /** * Add class to an element. * * @since 5.3.1 * * @param {HTMLElement} element The HTML element. * @param {String} className The class name. */ function addClass( element, className ) { if ( ! element ) { return; } if ( element.classList && element.classList.add ) { element.classList.add( className ); } else if ( ! hasClass( element, className ) ) { if ( element.className ) { element.className += ' '; } element.className += className; } } /** * Remove class from an element. * * @since 5.3.1 * * @param {HTMLElement} element The HTML element. * @param {String} className The class name. */ function removeClass( element, className ) { var testName, classes; if ( ! element || ! hasClass( element, className ) ) { return; } if ( element.classList && element.classList.remove ) { element.classList.remove( className ); } else { testName = ' ' + className + ' '; classes = ' ' + element.className + ' '; while ( classes.indexOf( testName ) > -1 ) { classes = classes.replace( testName, '' ); } element.className = classes.replace( /^[\s]+|[\s]+$/g, '' ); } } /** * Remove hover class for all menu items. * * @since 5.3.1 * * @param {NodeList} topMenuItems All menu items. */ function removeAllHoverClass( topMenuItems ) { if ( topMenuItems && topMenuItems.length ) { for ( var i = 0; i < topMenuItems.length; i++ ) { removeClass( topMenuItems[i], 'hover' ); } } } /** * Scrolls to the top of the page. * * @since 3.4.0 * * @param {Event} event The Click event. * * @return {void} */ function scrollToTop( event ) { // Only scroll when clicking on the wpadminbar, not on menus or submenus. if ( event.target && event.target.id !== 'wpadminbar' && event.target.id !== 'wp-admin-bar-top-secondary' ) { return; } try { window.scrollTo( { top: -32, left: 0, behavior: 'smooth' } ); } catch ( er ) { window.scrollTo( 0, -32 ); } } /** * Get closest Element. * * @since 5.3.1 * * @param {HTMLElement} el Element to get parent. * @param {string} selector CSS selector to match. */ function getClosest( el, selector ) { if ( ! window.Element.prototype.matches ) { // Polyfill from https://developer.mozilla.org/en-US/docs/Web/API/Element/matches. window.Element.prototype.matches = window.Element.prototype.matchesSelector || window.Element.prototype.mozMatchesSelector || window.Element.prototype.msMatchesSelector || window.Element.prototype.oMatchesSelector || window.Element.prototype.webkitMatchesSelector || function( s ) { var matches = ( this.document || this.ownerDocument ).querySelectorAll( s ), i = matches.length; while ( --i >= 0 && matches.item( i ) !== this ) { } return i > -1; }; } // Get the closest matching elent. for ( ; el && el !== document; el = el.parentNode ) { if ( el.matches( selector ) ) { return el; } } return null; } } )( document, window, navigator ); PKv\A dist/block-library.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["blockLibrary"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "K51g"); /******/ }) /************************************************************************/ /******/ ({ /***/ "1CF3": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["dom"]; }()); /***/ }), /***/ "1OyB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; }); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /***/ }), /***/ "1Yn1": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var code = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M9.4,16.6L4.8,12l4.6-4.6L8,6l-6,6l6,6L9.4,16.6z M14.6,16.6l4.6-4.6l-4.6-4.6L16,6l6,6l-6,6L14.6,16.6z" })); /* harmony default export */ __webpack_exports__["a"] = (code); /***/ }), /***/ "1ZqX": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["data"]; }()); /***/ }), /***/ "25BE": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; }); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } /***/ }), /***/ "4JlD": /***/ (function(module, exports, __webpack_require__) { "use strict"; // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. var stringifyPrimitive = function(v) { switch (typeof v) { case 'string': return v; case 'boolean': return v ? 'true' : 'false'; case 'number': return isFinite(v) ? v : ''; default: return ''; } }; module.exports = function(obj, sep, eq, name) { sep = sep || '&'; eq = eq || '='; if (obj === null) { obj = undefined; } if (typeof obj === 'object') { return map(objectKeys(obj), function(k) { var ks = encodeURIComponent(stringifyPrimitive(k)) + eq; if (isArray(obj[k])) { return map(obj[k], function(v) { return ks + encodeURIComponent(stringifyPrimitive(v)); }).join(sep); } else { return ks + encodeURIComponent(stringifyPrimitive(obj[k])); } }).join(sep); } if (!name) return ''; return encodeURIComponent(stringifyPrimitive(name)) + eq + encodeURIComponent(stringifyPrimitive(obj)); }; var isArray = Array.isArray || function (xs) { return Object.prototype.toString.call(xs) === '[object Array]'; }; function map (xs, f) { if (xs.map) return xs.map(f); var res = []; for (var i = 0; i < xs.length; i++) { res.push(f(xs[i], i)); } return res; } var objectKeys = Object.keys || function (obj) { var res = []; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) res.push(key); } return res; }; /***/ }), /***/ "4eJC": /***/ (function(module, exports, __webpack_require__) { /** * Memize options object. * * @typedef MemizeOptions * * @property {number} [maxSize] Maximum size of the cache. */ /** * Internal cache entry. * * @typedef MemizeCacheNode * * @property {?MemizeCacheNode|undefined} [prev] Previous node. * @property {?MemizeCacheNode|undefined} [next] Next node. * @property {Array<*>} args Function arguments for cache * entry. * @property {*} val Function result. */ /** * Properties of the enhanced function for controlling cache. * * @typedef MemizeMemoizedFunction * * @property {()=>void} clear Clear the cache. */ /** * Accepts a function to be memoized, and returns a new memoized function, with * optional options. * * @template {Function} F * * @param {F} fn Function to memoize. * @param {MemizeOptions} [options] Options object. * * @return {F & MemizeMemoizedFunction} Memoized function. */ function memize( fn, options ) { var size = 0; /** @type {?MemizeCacheNode|undefined} */ var head; /** @type {?MemizeCacheNode|undefined} */ var tail; options = options || {}; function memoized( /* ...args */ ) { var node = head, len = arguments.length, args, i; searchCache: while ( node ) { // Perform a shallow equality test to confirm that whether the node // under test is a candidate for the arguments passed. Two arrays // are shallowly equal if their length matches and each entry is // strictly equal between the two sets. Avoid abstracting to a // function which could incur an arguments leaking deoptimization. // Check whether node arguments match arguments length if ( node.args.length !== arguments.length ) { node = node.next; continue; } // Check whether node arguments match arguments values for ( i = 0; i < len; i++ ) { if ( node.args[ i ] !== arguments[ i ] ) { node = node.next; continue searchCache; } } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== head ) { // As tail, shift to previous. Must only shift if not also // head, since if both head and tail, there is no previous. if ( node === tail ) { tail = node.prev; } // Adjust siblings to point to each other. If node was tail, // this also handles new tail's empty `next` assignment. /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = head; node.prev = null; /** @type {MemizeCacheNode} */ ( head ).prev = node; head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: // Create a copy of arguments (avoid leaking deoptimization) args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } node = { args: args, // Generate the result from original function val: fn.apply( null, args ), }; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( head ) { head.prev = node; node.next = head; } else { // If no head, follows that there's no tail (at initial or reset) tail = node; } // Trim tail if we're reached max size and are pending cache insertion if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { tail = /** @type {MemizeCacheNode} */ ( tail ).prev; /** @type {MemizeCacheNode} */ ( tail ).next = null; } else { size++; } head = node; return node.val; } memoized.clear = function() { head = null; tail = null; size = 0; }; if ( false ) {} // Ignore reason: There's not a clear solution to create an intersection of // the function with additional properties, where the goal is to retain the // function signature of the incoming argument and add control properties // on the return value. // @ts-ignore return memoized; } module.exports = memize; /***/ }), /***/ "A/WM": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! Copyright (c) 2017 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /* global define */ (function () { 'use strict'; var classNames = (function () { // don't inherit from Object so we can skip hasOwnProperty check later // http://stackoverflow.com/questions/15518328/creating-js-object-with-object-createnull#answer-21079232 function StorageObject() {} StorageObject.prototype = Object.create(null); function _parseArray (resultSet, array) { var length = array.length; for (var i = 0; i < length; ++i) { _parse(resultSet, array[i]); } } var hasOwn = {}.hasOwnProperty; function _parseNumber (resultSet, num) { resultSet[num] = true; } function _parseObject (resultSet, object) { for (var k in object) { if (hasOwn.call(object, k)) { // set value to false instead of deleting it to avoid changing object structure // https://www.smashingmagazine.com/2012/11/writing-fast-memory-efficient-javascript/#de-referencing-misconceptions resultSet[k] = !!object[k]; } } } var SPACE = /\s+/; function _parseString (resultSet, str) { var array = str.split(SPACE); var length = array.length; for (var i = 0; i < length; ++i) { resultSet[array[i]] = true; } } function _parse (resultSet, arg) { if (!arg) return; var argType = typeof arg; // 'foo bar' if (argType === 'string') { _parseString(resultSet, arg); // ['foo', 'bar', ...] } else if (Array.isArray(arg)) { _parseArray(resultSet, arg); // { 'foo': true, ... } } else if (argType === 'object') { _parseObject(resultSet, arg); // '130' } else if (argType === 'number') { _parseNumber(resultSet, arg); } } function _classNames () { // don't leak arguments // https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments var len = arguments.length; var args = Array(len); for (var i = 0; i < len; i++) { args[i] = arguments[i]; } var classSet = new StorageObject(); _parseArray(classSet, args); var list = []; for (var k in classSet) { if (classSet[k]) { list.push(k) } } return list.join(' '); } return _classNames; })(); if ( true && module.exports) { classNames.default = classNames; module.exports = classNames; } else if (true) { // register as 'classnames', consistent with npm package name !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return classNames; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }()); /***/ }), /***/ "Bpkj": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var link = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M17.74 2.76c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-1.12 1.12-2.7 1.47-4.14 1.09l2.62-2.61.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-3.38 3.38c-.37-1.44-.02-3.02 1.1-4.14l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM8.59 13.43l5.34-5.34c.42-.42.42-1.1 0-1.52-.44-.43-1.13-.39-1.53 0l-5.33 5.34c-.42.42-.42 1.1 0 1.52.44.43 1.13.39 1.52 0zm-.76 2.29l4.14-4.15c.38 1.44.03 3.02-1.09 4.14l-1.52 1.53c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.53-1.52c1.12-1.12 2.7-1.47 4.14-1.1l-4.14 4.15c-.85.84-.85 2.2 0 3.05.84.84 2.2.84 3.04 0z" })); /* harmony default export */ __webpack_exports__["a"] = (link); /***/ }), /***/ "BsWD": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; }); /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a3WO"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); } /***/ }), /***/ "CxY0": /***/ (function(module, exports, __webpack_require__) { "use strict"; // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. var punycode = __webpack_require__("nYho"); var util = __webpack_require__("Nehr"); exports.parse = urlParse; exports.resolve = urlResolve; exports.resolveObject = urlResolveObject; exports.format = urlFormat; exports.Url = Url; function Url() { this.protocol = null; this.slashes = null; this.auth = null; this.host = null; this.port = null; this.hostname = null; this.hash = null; this.search = null; this.query = null; this.pathname = null; this.path = null; this.href = null; } // Reference: RFC 3986, RFC 1808, RFC 2396 // define these here so at least they only have to be // compiled once on the first module load. var protocolPattern = /^([a-z0-9.+-]+:)/i, portPattern = /:[0-9]*$/, // Special case for a simple path URL simplePathPattern = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/, // RFC 2396: characters reserved for delimiting URLs. // We actually just auto-escape these. delims = ['<', '>', '"', '`', ' ', '\r', '\n', '\t'], // RFC 2396: characters not allowed for various reasons. unwise = ['{', '}', '|', '\\', '^', '`'].concat(delims), // Allowed by RFCs, but cause of XSS attacks. Always escape these. autoEscape = ['\''].concat(unwise), // Characters that are never ever allowed in a hostname. // Note that any invalid chars are also handled, but these // are the ones that are *expected* to be seen, so we fast-path // them. nonHostChars = ['%', '/', '?', ';', '#'].concat(autoEscape), hostEndingChars = ['/', '?', '#'], hostnameMaxLen = 255, hostnamePartPattern = /^[+a-z0-9A-Z_-]{0,63}$/, hostnamePartStart = /^([+a-z0-9A-Z_-]{0,63})(.*)$/, // protocols that can allow "unsafe" and "unwise" chars. unsafeProtocol = { 'javascript': true, 'javascript:': true }, // protocols that never have a hostname. hostlessProtocol = { 'javascript': true, 'javascript:': true }, // protocols that always contain a // bit. slashedProtocol = { 'http': true, 'https': true, 'ftp': true, 'gopher': true, 'file': true, 'http:': true, 'https:': true, 'ftp:': true, 'gopher:': true, 'file:': true }, querystring = __webpack_require__("s4NR"); function urlParse(url, parseQueryString, slashesDenoteHost) { if (url && util.isObject(url) && url instanceof Url) return url; var u = new Url; u.parse(url, parseQueryString, slashesDenoteHost); return u; } Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) { if (!util.isString(url)) { throw new TypeError("Parameter 'url' must be a string, not " + typeof url); } // Copy chrome, IE, opera backslash-handling behavior. // Back slashes before the query string get converted to forward slashes // See: https://code.google.com/p/chromium/issues/detail?id=25916 var queryIndex = url.indexOf('?'), splitter = (queryIndex !== -1 && queryIndex < url.indexOf('#')) ? '?' : '#', uSplit = url.split(splitter), slashRegex = /\\/g; uSplit[0] = uSplit[0].replace(slashRegex, '/'); url = uSplit.join(splitter); var rest = url; // trim before proceeding. // This is to support parse stuff like " http://foo.com \n" rest = rest.trim(); if (!slashesDenoteHost && url.split('#').length === 1) { // Try fast path regexp var simplePath = simplePathPattern.exec(rest); if (simplePath) { this.path = rest; this.href = rest; this.pathname = simplePath[1]; if (simplePath[2]) { this.search = simplePath[2]; if (parseQueryString) { this.query = querystring.parse(this.search.substr(1)); } else { this.query = this.search.substr(1); } } else if (parseQueryString) { this.search = ''; this.query = {}; } return this; } } var proto = protocolPattern.exec(rest); if (proto) { proto = proto[0]; var lowerProto = proto.toLowerCase(); this.protocol = lowerProto; rest = rest.substr(proto.length); } // figure out if it's got a host // user@server is *always* interpreted as a hostname, and url // resolution will treat //foo/bar as host=foo,path=bar because that's // how the browser resolves relative URLs. if (slashesDenoteHost || proto || rest.match(/^\/\/[^@\/]+@[^@\/]+/)) { var slashes = rest.substr(0, 2) === '//'; if (slashes && !(proto && hostlessProtocol[proto])) { rest = rest.substr(2); this.slashes = true; } } if (!hostlessProtocol[proto] && (slashes || (proto && !slashedProtocol[proto]))) { // there's a hostname. // the first instance of /, ?, ;, or # ends the host. // // If there is an @ in the hostname, then non-host chars *are* allowed // to the left of the last @ sign, unless some host-ending character // comes *before* the @-sign. // URLs are obnoxious. // // ex: // http://a@b@c/ => user:a@b host:c // http://a@b?@c => user:a host:c path:/?@c // v0.12 TODO(isaacs): This is not quite how Chrome does things. // Review our test case against browsers more comprehensively. // find the first instance of any hostEndingChars var hostEnd = -1; for (var i = 0; i < hostEndingChars.length; i++) { var hec = rest.indexOf(hostEndingChars[i]); if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) hostEnd = hec; } // at this point, either we have an explicit point where the // auth portion cannot go past, or the last @ char is the decider. var auth, atSign; if (hostEnd === -1) { // atSign can be anywhere. atSign = rest.lastIndexOf('@'); } else { // atSign must be in auth portion. // http://a@b/c@d => host:b auth:a path:/c@d atSign = rest.lastIndexOf('@', hostEnd); } // Now we have a portion which is definitely the auth. // Pull that off. if (atSign !== -1) { auth = rest.slice(0, atSign); rest = rest.slice(atSign + 1); this.auth = decodeURIComponent(auth); } // the host is the remaining to the left of the first non-host char hostEnd = -1; for (var i = 0; i < nonHostChars.length; i++) { var hec = rest.indexOf(nonHostChars[i]); if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) hostEnd = hec; } // if we still have not hit it, then the entire thing is a host. if (hostEnd === -1) hostEnd = rest.length; this.host = rest.slice(0, hostEnd); rest = rest.slice(hostEnd); // pull out port. this.parseHost(); // we've indicated that there is a hostname, // so even if it's empty, it has to be present. this.hostname = this.hostname || ''; // if hostname begins with [ and ends with ] // assume that it's an IPv6 address. var ipv6Hostname = this.hostname[0] === '[' && this.hostname[this.hostname.length - 1] === ']'; // validate a little. if (!ipv6Hostname) { var hostparts = this.hostname.split(/\./); for (var i = 0, l = hostparts.length; i < l; i++) { var part = hostparts[i]; if (!part) continue; if (!part.match(hostnamePartPattern)) { var newpart = ''; for (var j = 0, k = part.length; j < k; j++) { if (part.charCodeAt(j) > 127) { // we replace non-ASCII char with a temporary placeholder // we need this to make sure size of hostname is not // broken by replacing non-ASCII by nothing newpart += 'x'; } else { newpart += part[j]; } } // we test again with ASCII char only if (!newpart.match(hostnamePartPattern)) { var validParts = hostparts.slice(0, i); var notHost = hostparts.slice(i + 1); var bit = part.match(hostnamePartStart); if (bit) { validParts.push(bit[1]); notHost.unshift(bit[2]); } if (notHost.length) { rest = '/' + notHost.join('.') + rest; } this.hostname = validParts.join('.'); break; } } } } if (this.hostname.length > hostnameMaxLen) { this.hostname = ''; } else { // hostnames are always lower case. this.hostname = this.hostname.toLowerCase(); } if (!ipv6Hostname) { // IDNA Support: Returns a punycoded representation of "domain". // It only converts parts of the domain name that // have non-ASCII characters, i.e. it doesn't matter if // you call it with a domain that already is ASCII-only. this.hostname = punycode.toASCII(this.hostname); } var p = this.port ? ':' + this.port : ''; var h = this.hostname || ''; this.host = h + p; this.href += this.host; // strip [ and ] from the hostname // the host field still retains them, though if (ipv6Hostname) { this.hostname = this.hostname.substr(1, this.hostname.length - 2); if (rest[0] !== '/') { rest = '/' + rest; } } } // now rest is set to the post-host stuff. // chop off any delim chars. if (!unsafeProtocol[lowerProto]) { // First, make 100% sure that any "autoEscape" chars get // escaped, even if encodeURIComponent doesn't think they // need to be. for (var i = 0, l = autoEscape.length; i < l; i++) { var ae = autoEscape[i]; if (rest.indexOf(ae) === -1) continue; var esc = encodeURIComponent(ae); if (esc === ae) { esc = escape(ae); } rest = rest.split(ae).join(esc); } } // chop off from the tail first. var hash = rest.indexOf('#'); if (hash !== -1) { // got a fragment string. this.hash = rest.substr(hash); rest = rest.slice(0, hash); } var qm = rest.indexOf('?'); if (qm !== -1) { this.search = rest.substr(qm); this.query = rest.substr(qm + 1); if (parseQueryString) { this.query = querystring.parse(this.query); } rest = rest.slice(0, qm); } else if (parseQueryString) { // no query string, but parseQueryString still requested this.search = ''; this.query = {}; } if (rest) this.pathname = rest; if (slashedProtocol[lowerProto] && this.hostname && !this.pathname) { this.pathname = '/'; } //to support http.request if (this.pathname || this.search) { var p = this.pathname || ''; var s = this.search || ''; this.path = p + s; } // finally, reconstruct the href based on what has been validated. this.href = this.format(); return this; }; // format a parsed object into a url string function urlFormat(obj) { // ensure it's an object, and not a string url. // If it's an obj, this is a no-op. // this way, you can call url_format() on strings // to clean up potentially wonky urls. if (util.isString(obj)) obj = urlParse(obj); if (!(obj instanceof Url)) return Url.prototype.format.call(obj); return obj.format(); } Url.prototype.format = function() { var auth = this.auth || ''; if (auth) { auth = encodeURIComponent(auth); auth = auth.replace(/%3A/i, ':'); auth += '@'; } var protocol = this.protocol || '', pathname = this.pathname || '', hash = this.hash || '', host = false, query = ''; if (this.host) { host = auth + this.host; } else if (this.hostname) { host = auth + (this.hostname.indexOf(':') === -1 ? this.hostname : '[' + this.hostname + ']'); if (this.port) { host += ':' + this.port; } } if (this.query && util.isObject(this.query) && Object.keys(this.query).length) { query = querystring.stringify(this.query); } var search = this.search || (query && ('?' + query)) || ''; if (protocol && protocol.substr(-1) !== ':') protocol += ':'; // only the slashedProtocols get the //. Not mailto:, xmpp:, etc. // unless they had them to begin with. if (this.slashes || (!protocol || slashedProtocol[protocol]) && host !== false) { host = '//' + (host || ''); if (pathname && pathname.charAt(0) !== '/') pathname = '/' + pathname; } else if (!host) { host = ''; } if (hash && hash.charAt(0) !== '#') hash = '#' + hash; if (search && search.charAt(0) !== '?') search = '?' + search; pathname = pathname.replace(/[?#]/g, function(match) { return encodeURIComponent(match); }); search = search.replace('#', '%23'); return protocol + host + pathname + search + hash; }; function urlResolve(source, relative) { return urlParse(source, false, true).resolve(relative); } Url.prototype.resolve = function(relative) { return this.resolveObject(urlParse(relative, false, true)).format(); }; function urlResolveObject(source, relative) { if (!source) return relative; return urlParse(source, false, true).resolveObject(relative); } Url.prototype.resolveObject = function(relative) { if (util.isString(relative)) { var rel = new Url(); rel.parse(relative, false, true); relative = rel; } var result = new Url(); var tkeys = Object.keys(this); for (var tk = 0; tk < tkeys.length; tk++) { var tkey = tkeys[tk]; result[tkey] = this[tkey]; } // hash is always overridden, no matter what. // even href="" will remove it. result.hash = relative.hash; // if the relative url is empty, then there's nothing left to do here. if (relative.href === '') { result.href = result.format(); return result; } // hrefs like //foo/bar always cut to the protocol. if (relative.slashes && !relative.protocol) { // take everything except the protocol from relative var rkeys = Object.keys(relative); for (var rk = 0; rk < rkeys.length; rk++) { var rkey = rkeys[rk]; if (rkey !== 'protocol') result[rkey] = relative[rkey]; } //urlParse appends trailing / to urls like http://www.example.com if (slashedProtocol[result.protocol] && result.hostname && !result.pathname) { result.path = result.pathname = '/'; } result.href = result.format(); return result; } if (relative.protocol && relative.protocol !== result.protocol) { // if it's a known url protocol, then changing // the protocol does weird things // first, if it's not file:, then we MUST have a host, // and if there was a path // to begin with, then we MUST have a path. // if it is file:, then the host is dropped, // because that's known to be hostless. // anything else is assumed to be absolute. if (!slashedProtocol[relative.protocol]) { var keys = Object.keys(relative); for (var v = 0; v < keys.length; v++) { var k = keys[v]; result[k] = relative[k]; } result.href = result.format(); return result; } result.protocol = relative.protocol; if (!relative.host && !hostlessProtocol[relative.protocol]) { var relPath = (relative.pathname || '').split('/'); while (relPath.length && !(relative.host = relPath.shift())); if (!relative.host) relative.host = ''; if (!relative.hostname) relative.hostname = ''; if (relPath[0] !== '') relPath.unshift(''); if (relPath.length < 2) relPath.unshift(''); result.pathname = relPath.join('/'); } else { result.pathname = relative.pathname; } result.search = relative.search; result.query = relative.query; result.host = relative.host || ''; result.auth = relative.auth; result.hostname = relative.hostname || relative.host; result.port = relative.port; // to support http.request if (result.pathname || result.search) { var p = result.pathname || ''; var s = result.search || ''; result.path = p + s; } result.slashes = result.slashes || relative.slashes; result.href = result.format(); return result; } var isSourceAbs = (result.pathname && result.pathname.charAt(0) === '/'), isRelAbs = ( relative.host || relative.pathname && relative.pathname.charAt(0) === '/' ), mustEndAbs = (isRelAbs || isSourceAbs || (result.host && relative.pathname)), removeAllDots = mustEndAbs, srcPath = result.pathname && result.pathname.split('/') || [], relPath = relative.pathname && relative.pathname.split('/') || [], psychotic = result.protocol && !slashedProtocol[result.protocol]; // if the url is a non-slashed url, then relative // links like ../.. should be able // to crawl up to the hostname, as well. This is strange. // result.protocol has already been set by now. // Later on, put the first path part into the host field. if (psychotic) { result.hostname = ''; result.port = null; if (result.host) { if (srcPath[0] === '') srcPath[0] = result.host; else srcPath.unshift(result.host); } result.host = ''; if (relative.protocol) { relative.hostname = null; relative.port = null; if (relative.host) { if (relPath[0] === '') relPath[0] = relative.host; else relPath.unshift(relative.host); } relative.host = null; } mustEndAbs = mustEndAbs && (relPath[0] === '' || srcPath[0] === ''); } if (isRelAbs) { // it's absolute. result.host = (relative.host || relative.host === '') ? relative.host : result.host; result.hostname = (relative.hostname || relative.hostname === '') ? relative.hostname : result.hostname; result.search = relative.search; result.query = relative.query; srcPath = relPath; // fall through to the dot-handling below. } else if (relPath.length) { // it's relative // throw away the existing file, and take the new path instead. if (!srcPath) srcPath = []; srcPath.pop(); srcPath = srcPath.concat(relPath); result.search = relative.search; result.query = relative.query; } else if (!util.isNullOrUndefined(relative.search)) { // just pull out the search. // like href='?foo'. // Put this after the other two cases because it simplifies the booleans if (psychotic) { result.hostname = result.host = srcPath.shift(); //occationaly the auth can get stuck only in host //this especially happens in cases like //url.resolveObject('mailto:local1@domain1', 'local2@domain2') var authInHost = result.host && result.host.indexOf('@') > 0 ? result.host.split('@') : false; if (authInHost) { result.auth = authInHost.shift(); result.host = result.hostname = authInHost.shift(); } } result.search = relative.search; result.query = relative.query; //to support http.request if (!util.isNull(result.pathname) || !util.isNull(result.search)) { result.path = (result.pathname ? result.pathname : '') + (result.search ? result.search : ''); } result.href = result.format(); return result; } if (!srcPath.length) { // no path at all. easy. // we've already handled the other stuff above. result.pathname = null; //to support http.request if (result.search) { result.path = '/' + result.search; } else { result.path = null; } result.href = result.format(); return result; } // if a url ENDs in . or .., then it must get a trailing slash. // however, if it ends in anything else non-slashy, // then it must NOT get a trailing slash. var last = srcPath.slice(-1)[0]; var hasTrailingSlash = ( (result.host || relative.host || srcPath.length > 1) && (last === '.' || last === '..') || last === ''); // strip single dots, resolve double dots to parent dir // if the path tries to go above the root, `up` ends up > 0 var up = 0; for (var i = srcPath.length; i >= 0; i--) { last = srcPath[i]; if (last === '.') { srcPath.splice(i, 1); } else if (last === '..') { srcPath.splice(i, 1); up++; } else if (up) { srcPath.splice(i, 1); up--; } } // if the path is allowed to go above the root, restore leading ..s if (!mustEndAbs && !removeAllDots) { for (; up--; up) { srcPath.unshift('..'); } } if (mustEndAbs && srcPath[0] !== '' && (!srcPath[0] || srcPath[0].charAt(0) !== '/')) { srcPath.unshift(''); } if (hasTrailingSlash && (srcPath.join('/').substr(-1) !== '/')) { srcPath.push(''); } var isAbsolute = srcPath[0] === '' || (srcPath[0] && srcPath[0].charAt(0) === '/'); // put the host back if (psychotic) { result.hostname = result.host = isAbsolute ? '' : srcPath.length ? srcPath.shift() : ''; //occationaly the auth can get stuck only in host //this especially happens in cases like //url.resolveObject('mailto:local1@domain1', 'local2@domain2') var authInHost = result.host && result.host.indexOf('@') > 0 ? result.host.split('@') : false; if (authInHost) { result.auth = authInHost.shift(); result.host = result.hostname = authInHost.shift(); } } mustEndAbs = mustEndAbs || (result.host && srcPath.length); if (mustEndAbs && !isAbsolute) { srcPath.unshift(''); } if (!srcPath.length) { result.pathname = null; result.path = null; } else { result.pathname = srcPath.join('/'); } //to support request.http if (!util.isNull(result.pathname) || !util.isNull(result.search)) { result.path = (result.pathname ? result.pathname : '') + (result.search ? result.search : ''); } result.auth = relative.auth || result.auth; result.slashes = result.slashes || relative.slashes; result.href = result.format(); return result; }; Url.prototype.parseHost = function() { var host = this.host; var port = portPattern.exec(host); if (port) { port = port[0]; if (port !== ':') { this.port = port.substr(1); } host = host.substr(0, host.length - port.length); } if (host) this.hostname = host; }; /***/ }), /***/ "DSFK": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; }); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /***/ }), /***/ "FEKF": /***/ (function(module, exports, __webpack_require__) { /*! Fast Average Color | © 2019 Denis Seleznev | MIT License | https://github.com/hcodes/fast-average-color/ */ (function (global, factory) { true ? module.exports = factory() : undefined; }(this, (function () { 'use strict'; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } var FastAverageColor = /*#__PURE__*/ function () { function FastAverageColor() { _classCallCheck(this, FastAverageColor); } _createClass(FastAverageColor, [{ key: "getColorAsync", /** * Get asynchronously the average color from not loaded image. * * @param {HTMLImageElement} resource * @param {Function} callback * @param {Object|null} [options] * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {*} [options.data] * @param {string} [options.mode="speed"] "precision" or "speed" * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {number} [options.step=1] * @param {number} [options.left=0] * @param {number} [options.top=0] * @param {number} [options.width=width of resource] * @param {number} [options.height=height of resource] */ value: function getColorAsync(resource, callback, options) { if (resource.complete) { callback.call(resource, this.getColor(resource, options), options && options.data); } else { this._bindImageEvents(resource, callback, options); } } /** * Get the average color from images, videos and canvas. * * @param {HTMLImageElement|HTMLVideoElement|HTMLCanvasElement} resource * @param {Object|null} [options] * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {*} [options.data] * @param {string} [options.mode="speed"] "precision" or "speed" * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {number} [options.step=1] * @param {number} [options.left=0] * @param {number} [options.top=0] * @param {number} [options.width=width of resource] * @param {number} [options.height=height of resource] * * @returns {Object} */ }, { key: "getColor", value: function getColor(resource, options) { options = options || {}; var defaultColor = this._getDefaultColor(options), originalSize = this._getOriginalSize(resource), size = this._prepareSizeAndPosition(originalSize, options); var error = null, value = defaultColor; if (!size.srcWidth || !size.srcHeight || !size.destWidth || !size.destHeight) { return this._prepareResult(defaultColor, new Error('FastAverageColor: Incorrect sizes.')); } if (!this._ctx) { this._canvas = this._makeCanvas(); this._ctx = this._canvas.getContext && this._canvas.getContext('2d'); if (!this._ctx) { return this._prepareResult(defaultColor, new Error('FastAverageColor: Canvas Context 2D is not supported in this browser.')); } } this._canvas.width = size.destWidth; this._canvas.height = size.destHeight; try { this._ctx.clearRect(0, 0, size.destWidth, size.destHeight); this._ctx.drawImage(resource, size.srcLeft, size.srcTop, size.srcWidth, size.srcHeight, 0, 0, size.destWidth, size.destHeight); var bitmapData = this._ctx.getImageData(0, 0, size.destWidth, size.destHeight).data; value = this.getColorFromArray4(bitmapData, options); } catch (e) { // Security error, CORS // https://developer.mozilla.org/en/docs/Web/HTML/CORS_enabled_image error = e; } return this._prepareResult(value, error); } /** * Get the average color from a array when 1 pixel is 4 bytes. * * @param {Array|Uint8Array} arr * @param {Object} [options] * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {number} [options.step=1] * * @returns {Array} [red (0-255), green (0-255), blue (0-255), alpha (0-255)] */ }, { key: "getColorFromArray4", value: function getColorFromArray4(arr, options) { options = options || {}; var bytesPerPixel = 4, arrLength = arr.length; if (arrLength < bytesPerPixel) { return this._getDefaultColor(options); } var len = arrLength - arrLength % bytesPerPixel, preparedStep = (options.step || 1) * bytesPerPixel, algorithm = '_' + (options.algorithm || 'sqrt') + 'Algorithm'; if (typeof this[algorithm] !== 'function') { throw new Error("FastAverageColor: ".concat(options.algorithm, " is unknown algorithm.")); } return this[algorithm](arr, len, preparedStep); } /** * Destroy the instance. */ }, { key: "destroy", value: function destroy() { delete this._canvas; delete this._ctx; } }, { key: "_getDefaultColor", value: function _getDefaultColor(options) { return this._getOption(options, 'defaultColor', [255, 255, 255, 255]); } }, { key: "_getOption", value: function _getOption(options, name, defaultValue) { return typeof options[name] === 'undefined' ? defaultValue : options[name]; } }, { key: "_prepareSizeAndPosition", value: function _prepareSizeAndPosition(originalSize, options) { var srcLeft = this._getOption(options, 'left', 0), srcTop = this._getOption(options, 'top', 0), srcWidth = this._getOption(options, 'width', originalSize.width), srcHeight = this._getOption(options, 'height', originalSize.height), destWidth = srcWidth, destHeight = srcHeight; if (options.mode === 'precision') { return { srcLeft: srcLeft, srcTop: srcTop, srcWidth: srcWidth, srcHeight: srcHeight, destWidth: destWidth, destHeight: destHeight }; } var maxSize = 100, minSize = 10; var factor; if (srcWidth > srcHeight) { factor = srcWidth / srcHeight; destWidth = maxSize; destHeight = Math.round(destWidth / factor); } else { factor = srcHeight / srcWidth; destHeight = maxSize; destWidth = Math.round(destHeight / factor); } if (destWidth > srcWidth || destHeight > srcHeight || destWidth < minSize || destHeight < minSize) { destWidth = srcWidth; destHeight = srcHeight; } return { srcLeft: srcLeft, srcTop: srcTop, srcWidth: srcWidth, srcHeight: srcHeight, destWidth: destWidth, destHeight: destHeight }; } }, { key: "_simpleAlgorithm", value: function _simpleAlgorithm(arr, len, preparedStep) { var redTotal = 0, greenTotal = 0, blueTotal = 0, alphaTotal = 0, count = 0; for (var i = 0; i < len; i += preparedStep) { var alpha = arr[i + 3], red = arr[i] * alpha, green = arr[i + 1] * alpha, blue = arr[i + 2] * alpha; redTotal += red; greenTotal += green; blueTotal += blue; alphaTotal += alpha; count++; } return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_sqrtAlgorithm", value: function _sqrtAlgorithm(arr, len, preparedStep) { var redTotal = 0, greenTotal = 0, blueTotal = 0, alphaTotal = 0, count = 0; for (var i = 0; i < len; i += preparedStep) { var red = arr[i], green = arr[i + 1], blue = arr[i + 2], alpha = arr[i + 3]; redTotal += red * red * alpha; greenTotal += green * green * alpha; blueTotal += blue * blue * alpha; alphaTotal += alpha; count++; } return alphaTotal ? [Math.round(Math.sqrt(redTotal / alphaTotal)), Math.round(Math.sqrt(greenTotal / alphaTotal)), Math.round(Math.sqrt(blueTotal / alphaTotal)), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_dominantAlgorithm", value: function _dominantAlgorithm(arr, len, preparedStep) { var colorHash = {}, divider = 24; for (var i = 0; i < len; i += preparedStep) { var red = arr[i], green = arr[i + 1], blue = arr[i + 2], alpha = arr[i + 3], key = Math.round(red / divider) + ',' + Math.round(green / divider) + ',' + Math.round(blue / divider); if (colorHash[key]) { colorHash[key] = [colorHash[key][0] + red * alpha, colorHash[key][1] + green * alpha, colorHash[key][2] + blue * alpha, colorHash[key][3] + alpha, colorHash[key][4] + 1]; } else { colorHash[key] = [red * alpha, green * alpha, blue * alpha, alpha, 1]; } } var buffer = Object.keys(colorHash).map(function (key) { return colorHash[key]; }).sort(function (a, b) { var countA = a[4], countB = b[4]; return countA > countB ? -1 : countA === countB ? 0 : 1; }); var _buffer$ = _slicedToArray(buffer[0], 5), redTotal = _buffer$[0], greenTotal = _buffer$[1], blueTotal = _buffer$[2], alphaTotal = _buffer$[3], count = _buffer$[4]; return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_bindImageEvents", value: function _bindImageEvents(resource, callback, options) { var _this = this; options = options || {}; var data = options && options.data, defaultColor = this._getDefaultColor(options), onload = function onload() { unbindEvents(); callback.call(resource, _this.getColor(resource, options), data); }, onerror = function onerror() { unbindEvents(); callback.call(resource, _this._prepareResult(defaultColor, new Error('Image error')), data); }, onabort = function onabort() { unbindEvents(); callback.call(resource, _this._prepareResult(defaultColor, new Error('Image abort')), data); }, unbindEvents = function unbindEvents() { resource.removeEventListener('load', onload); resource.removeEventListener('error', onerror); resource.removeEventListener('abort', onabort); }; resource.addEventListener('load', onload); resource.addEventListener('error', onerror); resource.addEventListener('abort', onabort); } }, { key: "_prepareResult", value: function _prepareResult(value, error) { var rgb = value.slice(0, 3), rgba = [].concat(rgb, value[3] / 255), isDark = this._isDark(value); return { error: error, value: value, rgb: 'rgb(' + rgb.join(',') + ')', rgba: 'rgba(' + rgba.join(',') + ')', hex: this._arrayToHex(rgb), hexa: this._arrayToHex(value), isDark: isDark, isLight: !isDark }; } }, { key: "_getOriginalSize", value: function _getOriginalSize(resource) { if (resource instanceof HTMLImageElement) { return { width: resource.naturalWidth, height: resource.naturalHeight }; } if (resource instanceof HTMLVideoElement) { return { width: resource.videoWidth, height: resource.videoHeight }; } return { width: resource.width, height: resource.height }; } }, { key: "_toHex", value: function _toHex(num) { var str = num.toString(16); return str.length === 1 ? '0' + str : str; } }, { key: "_arrayToHex", value: function _arrayToHex(arr) { return '#' + arr.map(this._toHex).join(''); } }, { key: "_isDark", value: function _isDark(color) { // http://www.w3.org/TR/AERT#color-contrast var result = (color[0] * 299 + color[1] * 587 + color[2] * 114) / 1000; return result < 128; } }, { key: "_makeCanvas", value: function _makeCanvas() { return typeof window === 'undefined' ? new OffscreenCanvas(1, 1) : document.createElement('canvas'); } }]); return FastAverageColor; }(); return FastAverageColor; }))); /***/ }), /***/ "Ff2n": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; }); /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zLVn"); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } /***/ }), /***/ "FqII": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["date"]; }()); /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "HSyU": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blocks"]; }()); /***/ }), /***/ "JREk": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["serverSideRender"]; }()); /***/ }), /***/ "JX7q": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; }); function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } /***/ }), /***/ "Ji7U": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inherits; }); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } /***/ }), /***/ "K51g": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "registerCoreBlocks", function() { return /* binding */ build_module_registerCoreBlocks; }); __webpack_require__.d(__webpack_exports__, "__experimentalRegisterExperimentalCoreBlocks", function() { return /* binding */ __experimentalRegisterExperimentalCoreBlocks; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/paragraph/index.js var build_module_paragraph_namespaceObject = {}; __webpack_require__.r(build_module_paragraph_namespaceObject); __webpack_require__.d(build_module_paragraph_namespaceObject, "metadata", function() { return paragraph_metadata; }); __webpack_require__.d(build_module_paragraph_namespaceObject, "name", function() { return paragraph_name; }); __webpack_require__.d(build_module_paragraph_namespaceObject, "settings", function() { return paragraph_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/image/index.js var build_module_image_namespaceObject = {}; __webpack_require__.r(build_module_image_namespaceObject); __webpack_require__.d(build_module_image_namespaceObject, "metadata", function() { return image_metadata; }); __webpack_require__.d(build_module_image_namespaceObject, "name", function() { return image_name; }); __webpack_require__.d(build_module_image_namespaceObject, "settings", function() { return image_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/heading/index.js var build_module_heading_namespaceObject = {}; __webpack_require__.r(build_module_heading_namespaceObject); __webpack_require__.d(build_module_heading_namespaceObject, "metadata", function() { return heading_metadata; }); __webpack_require__.d(build_module_heading_namespaceObject, "name", function() { return heading_name; }); __webpack_require__.d(build_module_heading_namespaceObject, "settings", function() { return heading_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/quote/index.js var build_module_quote_namespaceObject = {}; __webpack_require__.r(build_module_quote_namespaceObject); __webpack_require__.d(build_module_quote_namespaceObject, "metadata", function() { return quote_metadata; }); __webpack_require__.d(build_module_quote_namespaceObject, "name", function() { return quote_name; }); __webpack_require__.d(build_module_quote_namespaceObject, "settings", function() { return quote_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/gallery/index.js var build_module_gallery_namespaceObject = {}; __webpack_require__.r(build_module_gallery_namespaceObject); __webpack_require__.d(build_module_gallery_namespaceObject, "metadata", function() { return gallery_metadata; }); __webpack_require__.d(build_module_gallery_namespaceObject, "name", function() { return gallery_name; }); __webpack_require__.d(build_module_gallery_namespaceObject, "settings", function() { return gallery_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/archives/index.js var archives_namespaceObject = {}; __webpack_require__.r(archives_namespaceObject); __webpack_require__.d(archives_namespaceObject, "name", function() { return archives_name; }); __webpack_require__.d(archives_namespaceObject, "settings", function() { return archives_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/audio/index.js var build_module_audio_namespaceObject = {}; __webpack_require__.r(build_module_audio_namespaceObject); __webpack_require__.d(build_module_audio_namespaceObject, "metadata", function() { return audio_metadata; }); __webpack_require__.d(build_module_audio_namespaceObject, "name", function() { return audio_name; }); __webpack_require__.d(build_module_audio_namespaceObject, "settings", function() { return audio_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/button/index.js var build_module_button_namespaceObject = {}; __webpack_require__.r(build_module_button_namespaceObject); __webpack_require__.d(build_module_button_namespaceObject, "metadata", function() { return button_metadata; }); __webpack_require__.d(build_module_button_namespaceObject, "name", function() { return button_name; }); __webpack_require__.d(build_module_button_namespaceObject, "settings", function() { return button_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/buttons/index.js var buttons_namespaceObject = {}; __webpack_require__.r(buttons_namespaceObject); __webpack_require__.d(buttons_namespaceObject, "metadata", function() { return buttons_metadata; }); __webpack_require__.d(buttons_namespaceObject, "name", function() { return buttons_name; }); __webpack_require__.d(buttons_namespaceObject, "settings", function() { return buttons_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/calendar/index.js var build_module_calendar_namespaceObject = {}; __webpack_require__.r(build_module_calendar_namespaceObject); __webpack_require__.d(build_module_calendar_namespaceObject, "name", function() { return calendar_name; }); __webpack_require__.d(build_module_calendar_namespaceObject, "settings", function() { return calendar_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/categories/index.js var categories_namespaceObject = {}; __webpack_require__.r(categories_namespaceObject); __webpack_require__.d(categories_namespaceObject, "name", function() { return categories_name; }); __webpack_require__.d(categories_namespaceObject, "settings", function() { return categories_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/code/index.js var code_namespaceObject = {}; __webpack_require__.r(code_namespaceObject); __webpack_require__.d(code_namespaceObject, "metadata", function() { return code_metadata; }); __webpack_require__.d(code_namespaceObject, "name", function() { return code_name; }); __webpack_require__.d(code_namespaceObject, "settings", function() { return code_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/columns/index.js var build_module_columns_namespaceObject = {}; __webpack_require__.r(build_module_columns_namespaceObject); __webpack_require__.d(build_module_columns_namespaceObject, "metadata", function() { return columns_metadata; }); __webpack_require__.d(build_module_columns_namespaceObject, "name", function() { return columns_name; }); __webpack_require__.d(build_module_columns_namespaceObject, "settings", function() { return columns_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/column/index.js var build_module_column_namespaceObject = {}; __webpack_require__.r(build_module_column_namespaceObject); __webpack_require__.d(build_module_column_namespaceObject, "metadata", function() { return column_metadata; }); __webpack_require__.d(build_module_column_namespaceObject, "name", function() { return column_name; }); __webpack_require__.d(build_module_column_namespaceObject, "settings", function() { return column_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/cover/index.js var build_module_cover_namespaceObject = {}; __webpack_require__.r(build_module_cover_namespaceObject); __webpack_require__.d(build_module_cover_namespaceObject, "metadata", function() { return cover_metadata; }); __webpack_require__.d(build_module_cover_namespaceObject, "name", function() { return cover_name; }); __webpack_require__.d(build_module_cover_namespaceObject, "settings", function() { return cover_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/embed/index.js var embed_namespaceObject = {}; __webpack_require__.r(embed_namespaceObject); __webpack_require__.d(embed_namespaceObject, "name", function() { return embed_name; }); __webpack_require__.d(embed_namespaceObject, "settings", function() { return embed_settings; }); __webpack_require__.d(embed_namespaceObject, "common", function() { return embed_common; }); __webpack_require__.d(embed_namespaceObject, "others", function() { return embed_others; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/file/index.js var build_module_file_namespaceObject = {}; __webpack_require__.r(build_module_file_namespaceObject); __webpack_require__.d(build_module_file_namespaceObject, "metadata", function() { return file_metadata; }); __webpack_require__.d(build_module_file_namespaceObject, "name", function() { return file_name; }); __webpack_require__.d(build_module_file_namespaceObject, "settings", function() { return file_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/html/index.js var build_module_html_namespaceObject = {}; __webpack_require__.r(build_module_html_namespaceObject); __webpack_require__.d(build_module_html_namespaceObject, "metadata", function() { return html_metadata; }); __webpack_require__.d(build_module_html_namespaceObject, "name", function() { return html_name; }); __webpack_require__.d(build_module_html_namespaceObject, "settings", function() { return html_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/media-text/index.js var media_text_namespaceObject = {}; __webpack_require__.r(media_text_namespaceObject); __webpack_require__.d(media_text_namespaceObject, "metadata", function() { return media_text_metadata; }); __webpack_require__.d(media_text_namespaceObject, "name", function() { return media_text_name; }); __webpack_require__.d(media_text_namespaceObject, "settings", function() { return media_text_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-comments/index.js var latest_comments_namespaceObject = {}; __webpack_require__.r(latest_comments_namespaceObject); __webpack_require__.d(latest_comments_namespaceObject, "name", function() { return latest_comments_name; }); __webpack_require__.d(latest_comments_namespaceObject, "settings", function() { return latest_comments_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-posts/index.js var latest_posts_namespaceObject = {}; __webpack_require__.r(latest_posts_namespaceObject); __webpack_require__.d(latest_posts_namespaceObject, "name", function() { return latest_posts_name; }); __webpack_require__.d(latest_posts_namespaceObject, "settings", function() { return latest_posts_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/list/index.js var build_module_list_namespaceObject = {}; __webpack_require__.r(build_module_list_namespaceObject); __webpack_require__.d(build_module_list_namespaceObject, "metadata", function() { return list_metadata; }); __webpack_require__.d(build_module_list_namespaceObject, "name", function() { return list_name; }); __webpack_require__.d(build_module_list_namespaceObject, "settings", function() { return list_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/missing/index.js var missing_namespaceObject = {}; __webpack_require__.r(missing_namespaceObject); __webpack_require__.d(missing_namespaceObject, "metadata", function() { return missing_metadata; }); __webpack_require__.d(missing_namespaceObject, "name", function() { return missing_name; }); __webpack_require__.d(missing_namespaceObject, "settings", function() { return missing_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/more/index.js var build_module_more_namespaceObject = {}; __webpack_require__.r(build_module_more_namespaceObject); __webpack_require__.d(build_module_more_namespaceObject, "metadata", function() { return more_metadata; }); __webpack_require__.d(build_module_more_namespaceObject, "name", function() { return more_name; }); __webpack_require__.d(build_module_more_namespaceObject, "settings", function() { return more_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/nextpage/index.js var nextpage_namespaceObject = {}; __webpack_require__.r(nextpage_namespaceObject); __webpack_require__.d(nextpage_namespaceObject, "metadata", function() { return nextpage_metadata; }); __webpack_require__.d(nextpage_namespaceObject, "name", function() { return nextpage_name; }); __webpack_require__.d(nextpage_namespaceObject, "settings", function() { return nextpage_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/preformatted/index.js var build_module_preformatted_namespaceObject = {}; __webpack_require__.r(build_module_preformatted_namespaceObject); __webpack_require__.d(build_module_preformatted_namespaceObject, "metadata", function() { return preformatted_metadata; }); __webpack_require__.d(build_module_preformatted_namespaceObject, "name", function() { return preformatted_name; }); __webpack_require__.d(build_module_preformatted_namespaceObject, "settings", function() { return preformatted_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/pullquote/index.js var build_module_pullquote_namespaceObject = {}; __webpack_require__.r(build_module_pullquote_namespaceObject); __webpack_require__.d(build_module_pullquote_namespaceObject, "metadata", function() { return pullquote_metadata; }); __webpack_require__.d(build_module_pullquote_namespaceObject, "name", function() { return pullquote_name; }); __webpack_require__.d(build_module_pullquote_namespaceObject, "settings", function() { return pullquote_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/block/index.js var block_namespaceObject = {}; __webpack_require__.r(block_namespaceObject); __webpack_require__.d(block_namespaceObject, "name", function() { return block_name; }); __webpack_require__.d(block_namespaceObject, "settings", function() { return block_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/rss/index.js var build_module_rss_namespaceObject = {}; __webpack_require__.r(build_module_rss_namespaceObject); __webpack_require__.d(build_module_rss_namespaceObject, "name", function() { return rss_name; }); __webpack_require__.d(build_module_rss_namespaceObject, "settings", function() { return rss_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/search/index.js var build_module_search_namespaceObject = {}; __webpack_require__.r(build_module_search_namespaceObject); __webpack_require__.d(build_module_search_namespaceObject, "name", function() { return search_name; }); __webpack_require__.d(build_module_search_namespaceObject, "settings", function() { return search_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/group/index.js var build_module_group_namespaceObject = {}; __webpack_require__.r(build_module_group_namespaceObject); __webpack_require__.d(build_module_group_namespaceObject, "metadata", function() { return group_metadata; }); __webpack_require__.d(build_module_group_namespaceObject, "name", function() { return group_name; }); __webpack_require__.d(build_module_group_namespaceObject, "settings", function() { return group_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/separator/index.js var build_module_separator_namespaceObject = {}; __webpack_require__.r(build_module_separator_namespaceObject); __webpack_require__.d(build_module_separator_namespaceObject, "metadata", function() { return separator_metadata; }); __webpack_require__.d(build_module_separator_namespaceObject, "name", function() { return separator_name; }); __webpack_require__.d(build_module_separator_namespaceObject, "settings", function() { return build_module_separator_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/shortcode/index.js var build_module_shortcode_namespaceObject = {}; __webpack_require__.r(build_module_shortcode_namespaceObject); __webpack_require__.d(build_module_shortcode_namespaceObject, "metadata", function() { return shortcode_metadata; }); __webpack_require__.d(build_module_shortcode_namespaceObject, "name", function() { return shortcode_name; }); __webpack_require__.d(build_module_shortcode_namespaceObject, "settings", function() { return shortcode_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/spacer/index.js var spacer_namespaceObject = {}; __webpack_require__.r(spacer_namespaceObject); __webpack_require__.d(spacer_namespaceObject, "metadata", function() { return spacer_metadata; }); __webpack_require__.d(spacer_namespaceObject, "name", function() { return spacer_name; }); __webpack_require__.d(spacer_namespaceObject, "settings", function() { return spacer_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/subhead/index.js var subhead_namespaceObject = {}; __webpack_require__.r(subhead_namespaceObject); __webpack_require__.d(subhead_namespaceObject, "metadata", function() { return subhead_metadata; }); __webpack_require__.d(subhead_namespaceObject, "name", function() { return subhead_name; }); __webpack_require__.d(subhead_namespaceObject, "settings", function() { return subhead_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/table/index.js var build_module_table_namespaceObject = {}; __webpack_require__.r(build_module_table_namespaceObject); __webpack_require__.d(build_module_table_namespaceObject, "metadata", function() { return table_metadata; }); __webpack_require__.d(build_module_table_namespaceObject, "name", function() { return table_name; }); __webpack_require__.d(build_module_table_namespaceObject, "settings", function() { return table_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/text-columns/index.js var text_columns_namespaceObject = {}; __webpack_require__.r(text_columns_namespaceObject); __webpack_require__.d(text_columns_namespaceObject, "metadata", function() { return text_columns_metadata; }); __webpack_require__.d(text_columns_namespaceObject, "name", function() { return text_columns_name; }); __webpack_require__.d(text_columns_namespaceObject, "settings", function() { return text_columns_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/verse/index.js var build_module_verse_namespaceObject = {}; __webpack_require__.r(build_module_verse_namespaceObject); __webpack_require__.d(build_module_verse_namespaceObject, "metadata", function() { return verse_metadata; }); __webpack_require__.d(build_module_verse_namespaceObject, "name", function() { return verse_name; }); __webpack_require__.d(build_module_verse_namespaceObject, "settings", function() { return verse_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/video/index.js var build_module_video_namespaceObject = {}; __webpack_require__.r(build_module_video_namespaceObject); __webpack_require__.d(build_module_video_namespaceObject, "metadata", function() { return video_metadata; }); __webpack_require__.d(build_module_video_namespaceObject, "name", function() { return video_name; }); __webpack_require__.d(build_module_video_namespaceObject, "settings", function() { return video_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/tag-cloud/index.js var tag_cloud_namespaceObject = {}; __webpack_require__.r(tag_cloud_namespaceObject); __webpack_require__.d(tag_cloud_namespaceObject, "name", function() { return tag_cloud_name; }); __webpack_require__.d(tag_cloud_namespaceObject, "settings", function() { return tag_cloud_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/classic/index.js var build_module_classic_namespaceObject = {}; __webpack_require__.r(build_module_classic_namespaceObject); __webpack_require__.d(build_module_classic_namespaceObject, "metadata", function() { return classic_metadata; }); __webpack_require__.d(build_module_classic_namespaceObject, "name", function() { return classic_name; }); __webpack_require__.d(build_module_classic_namespaceObject, "settings", function() { return classic_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-links/index.js var social_links_namespaceObject = {}; __webpack_require__.r(social_links_namespaceObject); __webpack_require__.d(social_links_namespaceObject, "metadata", function() { return social_links_metadata; }); __webpack_require__.d(social_links_namespaceObject, "name", function() { return social_links_name; }); __webpack_require__.d(social_links_namespaceObject, "settings", function() { return social_links_settings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-link/index.js var social_link_namespaceObject = {}; __webpack_require__.r(social_link_namespaceObject); __webpack_require__.d(social_link_namespaceObject, "metadata", function() { return social_link_metadata; }); __webpack_require__.d(social_link_namespaceObject, "name", function() { return social_link_name; }); __webpack_require__.d(social_link_namespaceObject, "settings", function() { return social_link_settings; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules var toConsumableArray = __webpack_require__("KQm4"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: external {"this":["wp","coreData"]} var external_this_wp_coreData_ = __webpack_require__("jZUy"); // EXTERNAL MODULE: external {"this":["wp","blockEditor"]} var external_this_wp_blockEditor_ = __webpack_require__("axFQ"); // EXTERNAL MODULE: external {"this":["wp","blocks"]} var external_this_wp_blocks_ = __webpack_require__("HSyU"); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // EXTERNAL MODULE: external {"this":["wp","i18n"]} var external_this_wp_i18n_ = __webpack_require__("l3Sj"); // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // EXTERNAL MODULE: external {"this":["wp","primitives"]} var external_this_wp_primitives_ = __webpack_require__("Tqx9"); // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/paragraph.js /** * WordPress dependencies */ var paragraph = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M11 5v7H9.5C7.6 12 6 10.4 6 8.5S7.6 5 9.5 5H11m8-2H9.5C6.5 3 4 5.5 4 8.5S6.5 14 9.5 14H11v7h2V5h2v16h2V5h2V3z" })); /* harmony default export */ var library_paragraph = (paragraph); // EXTERNAL MODULE: ./node_modules/classnames/index.js var classnames = __webpack_require__("TSYQ"); var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/deprecated.js function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ var deprecated_supports = { className: false }; var deprecated_blockAttributes = { align: { type: 'string' }, content: { type: 'string', source: 'html', selector: 'p', default: '' }, dropCap: { type: 'boolean', default: false }, placeholder: { type: 'string' }, textColor: { type: 'string' }, customTextColor: { type: 'string' }, backgroundColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, fontSize: { type: 'string' }, customFontSize: { type: 'number' }, direction: { type: 'string', enum: ['ltr', 'rtl'] } }; var deprecated = [{ supports: deprecated_supports, attributes: deprecated_blockAttributes, save: function save(_ref) { var _classnames; var attributes = _ref.attributes; var align = attributes.align, content = attributes.content, dropCap = attributes.dropCap, backgroundColor = attributes.backgroundColor, textColor = attributes.textColor, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor, fontSize = attributes.fontSize, customFontSize = attributes.customFontSize, direction = attributes.direction; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var fontSizeClass = Object(external_this_wp_blockEditor_["getFontSizeClass"])(fontSize); var className = classnames_default()((_classnames = { 'has-text-color': textColor || customTextColor, 'has-background': backgroundColor || customBackgroundColor, 'has-drop-cap': dropCap }, Object(defineProperty["a" /* default */])(_classnames, fontSizeClass, fontSizeClass), Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), _classnames)); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor, fontSize: fontSizeClass ? undefined : customFontSize, textAlign: align }; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", style: styles, className: className ? className : undefined, value: content, dir: direction }); } }, { supports: deprecated_supports, attributes: _objectSpread({}, deprecated_blockAttributes, { width: { type: 'string' } }), save: function save(_ref2) { var _classnames2; var attributes = _ref2.attributes; var width = attributes.width, align = attributes.align, content = attributes.content, dropCap = attributes.dropCap, backgroundColor = attributes.backgroundColor, textColor = attributes.textColor, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor, fontSize = attributes.fontSize, customFontSize = attributes.customFontSize; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var fontSizeClass = fontSize && "is-".concat(fontSize, "-text"); var className = classnames_default()((_classnames2 = {}, Object(defineProperty["a" /* default */])(_classnames2, "align".concat(width), width), Object(defineProperty["a" /* default */])(_classnames2, 'has-background', backgroundColor || customBackgroundColor), Object(defineProperty["a" /* default */])(_classnames2, 'has-drop-cap', dropCap), Object(defineProperty["a" /* default */])(_classnames2, fontSizeClass, fontSizeClass), Object(defineProperty["a" /* default */])(_classnames2, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames2, backgroundClass, backgroundClass), _classnames2)); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor, fontSize: fontSizeClass ? undefined : customFontSize, textAlign: align }; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", style: styles, className: className ? className : undefined, value: content }); } }, { supports: deprecated_supports, attributes: Object(external_this_lodash_["omit"])(_objectSpread({}, deprecated_blockAttributes, { fontSize: { type: 'number' } }), 'customFontSize', 'customTextColor', 'customBackgroundColor'), save: function save(_ref3) { var _classnames3; var attributes = _ref3.attributes; var width = attributes.width, align = attributes.align, content = attributes.content, dropCap = attributes.dropCap, backgroundColor = attributes.backgroundColor, textColor = attributes.textColor, fontSize = attributes.fontSize; var className = classnames_default()((_classnames3 = {}, Object(defineProperty["a" /* default */])(_classnames3, "align".concat(width), width), Object(defineProperty["a" /* default */])(_classnames3, 'has-background', backgroundColor), Object(defineProperty["a" /* default */])(_classnames3, 'has-drop-cap', dropCap), _classnames3)); var styles = { backgroundColor: backgroundColor, color: textColor, fontSize: fontSize, textAlign: align }; return Object(external_this_wp_element_["createElement"])("p", { style: styles, className: className ? className : undefined }, content); }, migrate: function migrate(attributes) { return Object(external_this_lodash_["omit"])(_objectSpread({}, attributes, { customFontSize: Object(external_this_lodash_["isFinite"])(attributes.fontSize) ? attributes.fontSize : undefined, customTextColor: attributes.textColor && '#' === attributes.textColor[0] ? attributes.textColor : undefined, customBackgroundColor: attributes.backgroundColor && '#' === attributes.backgroundColor[0] ? attributes.backgroundColor : undefined }), ['fontSize', 'textColor', 'backgroundColor']); } }, { supports: deprecated_supports, attributes: _objectSpread({}, deprecated_blockAttributes, { content: { type: 'string', source: 'html', default: '' } }), save: function save(_ref4) { var attributes = _ref4.attributes; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, attributes.content); }, migrate: function migrate(attributes) { return attributes; } }]; /* harmony default export */ var paragraph_deprecated = (deprecated); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__("ODXe"); // EXTERNAL MODULE: external {"this":["wp","components"]} var external_this_wp_components_ = __webpack_require__("tI+e"); // EXTERNAL MODULE: external {"this":["wp","compose"]} var external_this_wp_compose_ = __webpack_require__("K9lf"); // EXTERNAL MODULE: external {"this":["wp","data"]} var external_this_wp_data_ = __webpack_require__("1ZqX"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/edit.js function edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Browser dependencies */ var _window = window, getComputedStyle = _window.getComputedStyle; var querySelector = window.document.querySelector.bind(document); var edit_name = 'core/paragraph'; var PARAGRAPH_DROP_CAP_SELECTOR = 'p.has-drop-cap'; function ParagraphRTLToolbar(_ref) { var direction = _ref.direction, setDirection = _ref.setDirection; var isRTL = Object(external_this_wp_data_["useSelect"])(function (select) { return !!select('core/block-editor').getSettings().isRTL; }, []); return isRTL && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { controls: [{ icon: 'editor-ltr', title: Object(external_this_wp_i18n_["_x"])('Left to right', 'editor button'), isActive: direction === 'ltr', onClick: function onClick() { setDirection(direction === 'ltr' ? undefined : 'ltr'); } }] }); } function useDropCapMinimumHeight(isDropCap, deps) { var _useState = Object(external_this_wp_element_["useState"])(), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), minimumHeight = _useState2[0], setMinimumHeight = _useState2[1]; Object(external_this_wp_element_["useEffect"])(function () { var element = querySelector(PARAGRAPH_DROP_CAP_SELECTOR); if (isDropCap && element) { setMinimumHeight(getComputedStyle(element, 'first-letter').lineHeight); } else if (minimumHeight) { setMinimumHeight(undefined); } }, [isDropCap, minimumHeight, setMinimumHeight].concat(Object(toConsumableArray["a" /* default */])(deps))); return minimumHeight; } function ParagraphBlock(_ref2) { var _classnames; var attributes = _ref2.attributes, className = _ref2.className, fontSize = _ref2.fontSize, mergeBlocks = _ref2.mergeBlocks, onReplace = _ref2.onReplace, setAttributes = _ref2.setAttributes, setFontSize = _ref2.setFontSize; var align = attributes.align, content = attributes.content, dropCap = attributes.dropCap, placeholder = attributes.placeholder, direction = attributes.direction; var ref = Object(external_this_wp_element_["useRef"])(); var dropCapMinimumHeight = useDropCapMinimumHeight(dropCap, [fontSize.size]); var _experimentalUseColo = Object(external_this_wp_blockEditor_["__experimentalUseColors"])([{ name: 'textColor', property: 'color' }, { name: 'backgroundColor', className: 'has-background' }], { contrastCheckers: [{ backgroundColor: true, textColor: true, fontSize: fontSize.size }], colorDetector: { targetRef: ref } }, [fontSize.size]), TextColor = _experimentalUseColo.TextColor, BackgroundColor = _experimentalUseColo.BackgroundColor, InspectorControlsColorPanel = _experimentalUseColo.InspectorControlsColorPanel; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { value: align, onChange: function onChange(newAlign) { return setAttributes({ align: newAlign }); } }), Object(external_this_wp_element_["createElement"])(ParagraphRTLToolbar, { direction: direction, setDirection: function setDirection(newDirection) { return setAttributes({ direction: newDirection }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Text settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["FontSizePicker"], { value: fontSize.size, onChange: setFontSize }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Drop cap'), checked: !!dropCap, onChange: function onChange() { return setAttributes({ dropCap: !dropCap }); }, help: dropCap ? Object(external_this_wp_i18n_["__"])('Showing large initial letter.') : Object(external_this_wp_i18n_["__"])('Toggle to show a large initial letter.') }))), InspectorControlsColorPanel, Object(external_this_wp_element_["createElement"])(BackgroundColor, null, Object(external_this_wp_element_["createElement"])(TextColor, null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { ref: ref, identifier: "content", tagName: "p", className: classnames_default()('wp-block-paragraph', className, (_classnames = { 'has-drop-cap': dropCap }, Object(defineProperty["a" /* default */])(_classnames, "has-text-align-".concat(align), align), Object(defineProperty["a" /* default */])(_classnames, fontSize.class, fontSize.class), _classnames)), style: { fontSize: fontSize.size ? fontSize.size + 'px' : undefined, direction: direction, minHeight: dropCapMinimumHeight }, value: content, onChange: function onChange(newContent) { return setAttributes({ content: newContent }); }, onSplit: function onSplit(value) { if (!value) { return Object(external_this_wp_blocks_["createBlock"])(edit_name); } return Object(external_this_wp_blocks_["createBlock"])(edit_name, edit_objectSpread({}, attributes, { content: value })); }, onMerge: mergeBlocks, onReplace: onReplace, onRemove: onReplace ? function () { return onReplace([]); } : undefined, "aria-label": content ? Object(external_this_wp_i18n_["__"])('Paragraph block') : Object(external_this_wp_i18n_["__"])('Empty block; start writing or type forward slash to choose a block'), placeholder: placeholder || Object(external_this_wp_i18n_["__"])('Start writing or type / to choose a block'), __unstableEmbedURLOnPaste: true, __unstableAllowPrefixTransformations: true })))); } var ParagraphEdit = Object(external_this_wp_compose_["compose"])([Object(external_this_wp_blockEditor_["withFontSizes"])('fontSize')])(ParagraphBlock); /* harmony default export */ var paragraph_edit = (ParagraphEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/save.js /** * External dependencies */ /** * WordPress dependencies */ function save_save(_ref) { var _classnames; var attributes = _ref.attributes; var align = attributes.align, content = attributes.content, dropCap = attributes.dropCap, backgroundColor = attributes.backgroundColor, textColor = attributes.textColor, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor, fontSize = attributes.fontSize, customFontSize = attributes.customFontSize, direction = attributes.direction; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var fontSizeClass = Object(external_this_wp_blockEditor_["getFontSizeClass"])(fontSize); var className = classnames_default()((_classnames = { 'has-text-color': textColor || customTextColor, 'has-background': backgroundColor || customBackgroundColor, 'has-drop-cap': dropCap }, Object(defineProperty["a" /* default */])(_classnames, "has-text-align-".concat(align), align), Object(defineProperty["a" /* default */])(_classnames, fontSizeClass, fontSizeClass), Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), _classnames)); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor, fontSize: fontSizeClass ? undefined : customFontSize }; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", style: styles, className: className ? className : undefined, value: content, dir: direction }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/transforms.js /** * WordPress dependencies */ /** * Internal dependencies */ var _name$category$attrib = { name: "core/paragraph", category: "common", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "p", "default": "" }, dropCap: { type: "boolean", "default": false }, placeholder: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" }, backgroundColor: { type: "string" }, customBackgroundColor: { type: "string" }, fontSize: { type: "string" }, customFontSize: { type: "number" }, direction: { type: "string", "enum": ["ltr", "rtl"] } } }, transforms_name = _name$category$attrib.name; var transforms_transforms = { from: [{ type: 'raw', // Paragraph is a fallback and should be matched last. priority: 20, selector: 'p', schema: function schema(_ref) { var phrasingContentSchema = _ref.phrasingContentSchema, isPaste = _ref.isPaste; return { p: { children: phrasingContentSchema, attributes: isPaste ? [] : ['style'] } }; }, transform: function transform(node) { var attributes = Object(external_this_wp_blocks_["getBlockAttributes"])(transforms_name, node.outerHTML); var _ref2 = node.style || {}, textAlign = _ref2.textAlign; if (textAlign === 'left' || textAlign === 'center' || textAlign === 'right') { attributes.align = textAlign; } return Object(external_this_wp_blocks_["createBlock"])(transforms_name, attributes); } }] }; /* harmony default export */ var paragraph_transforms = (transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var paragraph_metadata = { name: "core/paragraph", category: "common", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "p", "default": "" }, dropCap: { type: "boolean", "default": false }, placeholder: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" }, backgroundColor: { type: "string" }, customBackgroundColor: { type: "string" }, fontSize: { type: "string" }, customFontSize: { type: "number" }, direction: { type: "string", "enum": ["ltr", "rtl"] } } }; var paragraph_name = paragraph_metadata.name; var paragraph_settings = { title: Object(external_this_wp_i18n_["__"])('Paragraph'), description: Object(external_this_wp_i18n_["__"])('Start with the building block of all narrative.'), icon: library_paragraph, keywords: [Object(external_this_wp_i18n_["__"])('text')], example: { attributes: { content: Object(external_this_wp_i18n_["__"])('In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing.'), customFontSize: 28, dropCap: true } }, supports: { className: false, __unstablePasteTextInline: true }, __experimentalLabel: function __experimentalLabel(attributes, _ref) { var context = _ref.context; if (context === 'accessibility') { var content = attributes.content; return Object(external_this_lodash_["isEmpty"])(content) ? Object(external_this_wp_i18n_["__"])('Empty') : content; } }, transforms: paragraph_transforms, deprecated: paragraph_deprecated, merge: function merge(attributes, attributesToMerge) { return { content: (attributes.content || '') + (attributesToMerge.content || '') }; }, getEditWrapperProps: function getEditWrapperProps(attributes) { var width = attributes.width; if (['wide', 'full', 'left', 'right'].indexOf(width) !== -1) { return { 'data-align': width }; } }, edit: paragraph_edit, save: save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/image.js /** * WordPress dependencies */ var image_image = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m19 5v14h-14v-14h14m0-2h-14c-1.1 0-2 0.9-2 2v14c0 1.1 0.9 2 2 2h14c1.1 0 2-0.9 2-2v-14c0-1.1-0.9-2-2-2z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m14.14 11.86l-3 3.87-2.14-2.59-3 3.86h12l-3.86-5.14z" })); /* harmony default export */ var library_image = (image_image); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__("wx14"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ var image_deprecated_blockAttributes = { align: { type: 'string' }, url: { type: 'string', source: 'attribute', selector: 'img', attribute: 'src' }, alt: { type: 'string', source: 'attribute', selector: 'img', attribute: 'alt', default: '' }, caption: { type: 'string', source: 'html', selector: 'figcaption' }, href: { type: 'string', source: 'attribute', selector: 'figure > a', attribute: 'href' }, rel: { type: 'string', source: 'attribute', selector: 'figure > a', attribute: 'rel' }, linkClass: { type: 'string', source: 'attribute', selector: 'figure > a', attribute: 'class' }, id: { type: 'number' }, width: { type: 'number' }, height: { type: 'number' }, linkDestination: { type: 'string', default: 'none' }, linkTarget: { type: 'string', source: 'attribute', selector: 'figure > a', attribute: 'target' } }; var deprecated_deprecated = [{ attributes: image_deprecated_blockAttributes, save: function save(_ref) { var _classnames; var attributes = _ref.attributes; var url = attributes.url, alt = attributes.alt, caption = attributes.caption, align = attributes.align, href = attributes.href, width = attributes.width, height = attributes.height, id = attributes.id; var classes = classnames_default()((_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, "align".concat(align), align), Object(defineProperty["a" /* default */])(_classnames, 'is-resized', width || height), _classnames)); var image = Object(external_this_wp_element_["createElement"])("img", { src: url, alt: alt, className: id ? "wp-image-".concat(id) : null, width: width, height: height }); return Object(external_this_wp_element_["createElement"])("figure", { className: classes }, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, image) : image, !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } }, { attributes: image_deprecated_blockAttributes, save: function save(_ref2) { var attributes = _ref2.attributes; var url = attributes.url, alt = attributes.alt, caption = attributes.caption, align = attributes.align, href = attributes.href, width = attributes.width, height = attributes.height, id = attributes.id; var image = Object(external_this_wp_element_["createElement"])("img", { src: url, alt: alt, className: id ? "wp-image-".concat(id) : null, width: width, height: height }); return Object(external_this_wp_element_["createElement"])("figure", { className: align ? "align".concat(align) : null }, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, image) : image, !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } }, { attributes: image_deprecated_blockAttributes, save: function save(_ref3) { var attributes = _ref3.attributes; var url = attributes.url, alt = attributes.alt, caption = attributes.caption, align = attributes.align, href = attributes.href, width = attributes.width, height = attributes.height; var extraImageProps = width || height ? { width: width, height: height } : {}; var image = Object(external_this_wp_element_["createElement"])("img", Object(esm_extends["a" /* default */])({ src: url, alt: alt }, extraImageProps)); var figureStyle = {}; if (width) { figureStyle = { width: width }; } else if (align === 'left' || align === 'right') { figureStyle = { maxWidth: '50%' }; } return Object(external_this_wp_element_["createElement"])("figure", { className: align ? "align".concat(align) : null, style: figureStyle }, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, image) : image, !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } }]; /* harmony default export */ var image_deprecated = (deprecated_deprecated); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js var classCallCheck = __webpack_require__("1OyB"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js var createClass = __webpack_require__("vuIU"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js var possibleConstructorReturn = __webpack_require__("md7G"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js var getPrototypeOf = __webpack_require__("foSv"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js var assertThisInitialized = __webpack_require__("JX7q"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules var inherits = __webpack_require__("Ji7U"); // EXTERNAL MODULE: external {"this":["wp","blob"]} var external_this_wp_blob_ = __webpack_require__("xTGt"); // EXTERNAL MODULE: external {"this":["wp","url"]} var external_this_wp_url_ = __webpack_require__("Mmq9"); // EXTERNAL MODULE: external {"this":["wp","viewport"]} var external_this_wp_viewport_ = __webpack_require__("KEfo"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/icons.js /** * WordPress dependencies */ var embedContentIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M0,0h24v24H0V0z", fill: "none" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M19,4H5C3.89,4,3,4.9,3,6v12c0,1.1,0.89,2,2,2h14c1.1,0,2-0.9,2-2V6C21,4.9,20.11,4,19,4z M19,18H5V8h14V18z" })); var embedAudioIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fill: "none", d: "M0 0h24v24H0V0z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z" })); var embedPhotoIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M0,0h24v24H0V0z", fill: "none" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M21,4H3C1.9,4,1,4.9,1,6v12c0,1.1,0.9,2,2,2h18c1.1,0,2-0.9,2-2V6C23,4.9,22.1,4,21,4z M21,18H3V6h18V18z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Polygon"], { points: "14.5 11 11 15.51 8.5 12.5 5 17 19 17" })); var embedVideoIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M0,0h24v24H0V0z", fill: "none" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "m10 8v8l5-4-5-4zm9-5h-14c-1.1 0-2 0.9-2 2v14c0 1.1 0.9 2 2 2h14c1.1 0 2-0.9 2-2v-14c0-1.1-0.9-2-2-2zm0 16h-14v-14h14v14z" })); var embedTwitterIcon = { foreground: '#1da1f2', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["G"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M22.23 5.924c-.736.326-1.527.547-2.357.646.847-.508 1.498-1.312 1.804-2.27-.793.47-1.67.812-2.606.996C18.325 4.498 17.258 4 16.078 4c-2.266 0-4.103 1.837-4.103 4.103 0 .322.036.635.106.935-3.41-.17-6.433-1.804-8.457-4.287-.353.607-.556 1.312-.556 2.064 0 1.424.724 2.68 1.825 3.415-.673-.022-1.305-.207-1.86-.514v.052c0 1.988 1.415 3.647 3.293 4.023-.344.095-.707.145-1.08.145-.265 0-.522-.026-.773-.074.522 1.63 2.038 2.817 3.833 2.85-1.404 1.1-3.174 1.757-5.096 1.757-.332 0-.66-.02-.98-.057 1.816 1.164 3.973 1.843 6.29 1.843 7.547 0 11.675-6.252 11.675-11.675 0-.178-.004-.355-.012-.53.802-.578 1.497-1.3 2.047-2.124z" }))) }; var embedYouTubeIcon = { foreground: '#ff0000', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M21.8 8s-.195-1.377-.795-1.984c-.76-.797-1.613-.8-2.004-.847-2.798-.203-6.996-.203-6.996-.203h-.01s-4.197 0-6.996.202c-.39.046-1.242.05-2.003.846C2.395 6.623 2.2 8 2.2 8S2 9.62 2 11.24v1.517c0 1.618.2 3.237.2 3.237s.195 1.378.795 1.985c.76.797 1.76.77 2.205.855 1.6.153 6.8.2 6.8.2s4.203-.005 7-.208c.392-.047 1.244-.05 2.005-.847.6-.607.795-1.985.795-1.985s.2-1.618.2-3.237v-1.517C22 9.62 21.8 8 21.8 8zM9.935 14.595v-5.62l5.403 2.82-5.403 2.8z" })) }; var embedFacebookIcon = { foreground: '#3b5998', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M20 3H4c-.6 0-1 .4-1 1v16c0 .5.4 1 1 1h8.6v-7h-2.3v-2.7h2.3v-2c0-2.3 1.4-3.6 3.5-3.6 1 0 1.8.1 2.1.1v2.4h-1.4c-1.1 0-1.3.5-1.3 1.3v1.7h2.7l-.4 2.8h-2.3v7H20c.5 0 1-.4 1-1V4c0-.6-.4-1-1-1z" })) }; var embedInstagramIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["G"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M12 4.622c2.403 0 2.688.01 3.637.052.877.04 1.354.187 1.67.31.42.163.72.358 1.036.673.315.315.51.615.673 1.035.123.317.27.794.31 1.67.043.95.052 1.235.052 3.638s-.01 2.688-.052 3.637c-.04.877-.187 1.354-.31 1.67-.163.42-.358.72-.673 1.036-.315.315-.615.51-1.035.673-.317.123-.794.27-1.67.31-.95.043-1.234.052-3.638.052s-2.688-.01-3.637-.052c-.877-.04-1.354-.187-1.67-.31-.42-.163-.72-.358-1.036-.673-.315-.315-.51-.615-.673-1.035-.123-.317-.27-.794-.31-1.67-.043-.95-.052-1.235-.052-3.638s.01-2.688.052-3.637c.04-.877.187-1.354.31-1.67.163-.42.358-.72.673-1.036.315-.315.615-.51 1.035-.673.317-.123.794-.27 1.67-.31.95-.043 1.235-.052 3.638-.052M12 3c-2.444 0-2.75.01-3.71.054s-1.613.196-2.185.418c-.592.23-1.094.538-1.594 1.04-.5.5-.807 1-1.037 1.593-.223.572-.375 1.226-.42 2.184C3.01 9.25 3 9.555 3 12s.01 2.75.054 3.71.196 1.613.418 2.186c.23.592.538 1.094 1.038 1.594s1.002.808 1.594 1.038c.572.222 1.227.375 2.185.418.96.044 1.266.054 3.71.054s2.75-.01 3.71-.054 1.613-.196 2.186-.418c.592-.23 1.094-.538 1.594-1.038s.808-1.002 1.038-1.594c.222-.572.375-1.227.418-2.185.044-.96.054-1.266.054-3.71s-.01-2.75-.054-3.71-.196-1.613-.418-2.186c-.23-.592-.538-1.094-1.038-1.594s-1.002-.808-1.594-1.038c-.572-.222-1.227-.375-2.185-.418C14.75 3.01 14.445 3 12 3zm0 4.378c-2.552 0-4.622 2.07-4.622 4.622s2.07 4.622 4.622 4.622 4.622-2.07 4.622-4.622S14.552 7.378 12 7.378zM12 15c-1.657 0-3-1.343-3-3s1.343-3 3-3 3 1.343 3 3-1.343 3-3 3zm4.804-8.884c-.596 0-1.08.484-1.08 1.08s.484 1.08 1.08 1.08c.596 0 1.08-.484 1.08-1.08s-.483-1.08-1.08-1.08z" }))); var embedWordPressIcon = { foreground: '#0073AA', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["G"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M12.158 12.786l-2.698 7.84c.806.236 1.657.365 2.54.365 1.047 0 2.05-.18 2.986-.51-.024-.037-.046-.078-.065-.123l-2.762-7.57zM3.008 12c0 3.56 2.07 6.634 5.068 8.092L3.788 8.342c-.5 1.117-.78 2.354-.78 3.658zm15.06-.454c0-1.112-.398-1.88-.74-2.48-.456-.74-.883-1.368-.883-2.11 0-.825.627-1.595 1.51-1.595.04 0 .078.006.116.008-1.598-1.464-3.73-2.36-6.07-2.36-3.14 0-5.904 1.613-7.512 4.053.21.008.41.012.58.012.94 0 2.395-.114 2.395-.114.484-.028.54.684.057.74 0 0-.487.058-1.03.086l3.275 9.74 1.968-5.902-1.4-3.838c-.485-.028-.944-.085-.944-.085-.486-.03-.43-.77.056-.742 0 0 1.484.114 2.368.114.94 0 2.397-.114 2.397-.114.486-.028.543.684.058.74 0 0-.488.058-1.03.086l3.25 9.665.897-2.997c.456-1.17.684-2.137.684-2.907zm1.82-3.86c.04.286.06.593.06.924 0 .912-.17 1.938-.683 3.22l-2.746 7.94c2.672-1.558 4.47-4.454 4.47-7.77 0-1.564-.4-3.033-1.1-4.314zM12 22C6.486 22 2 17.514 2 12S6.486 2 12 2s10 4.486 10 10-4.486 10-10 10z" }))) }; var embedSpotifyIcon = { foreground: '#1db954', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2m4.586 14.424c-.18.295-.563.387-.857.207-2.35-1.434-5.305-1.76-8.786-.963-.335.077-.67-.133-.746-.47-.077-.334.132-.67.47-.745 3.808-.87 7.076-.496 9.712 1.115.293.18.386.563.206.857M17.81 13.7c-.226.367-.706.482-1.072.257-2.687-1.652-6.785-2.13-9.965-1.166-.413.127-.848-.106-.973-.517-.125-.413.108-.848.52-.973 3.632-1.102 8.147-.568 11.234 1.328.366.226.48.707.256 1.072m.105-2.835C14.692 8.95 9.375 8.775 6.297 9.71c-.493.15-1.016-.13-1.166-.624-.148-.495.13-1.017.625-1.167 3.532-1.073 9.404-.866 13.115 1.337.445.264.59.838.327 1.282-.264.443-.838.59-1.282.325" })) }; var embedFlickrIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "m6.5 7c-2.75 0-5 2.25-5 5s2.25 5 5 5 5-2.25 5-5-2.25-5-5-5zm11 0c-2.75 0-5 2.25-5 5s2.25 5 5 5 5-2.25 5-5-2.25-5-5-5z" })); var embedVimeoIcon = { foreground: '#1ab7ea', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["G"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M22.396 7.164c-.093 2.026-1.507 4.8-4.245 8.32C15.323 19.16 12.93 21 10.97 21c-1.214 0-2.24-1.12-3.08-3.36-.56-2.052-1.118-4.105-1.68-6.158-.622-2.24-1.29-3.36-2.004-3.36-.156 0-.7.328-1.634.98l-.978-1.26c1.027-.903 2.04-1.806 3.037-2.71C6 3.95 7.03 3.328 7.716 3.265c1.62-.156 2.616.95 2.99 3.32.404 2.558.685 4.148.84 4.77.468 2.12.982 3.18 1.543 3.18.435 0 1.09-.687 1.963-2.064.872-1.376 1.34-2.422 1.402-3.142.125-1.187-.343-1.782-1.4-1.782-.5 0-1.013.115-1.542.34 1.023-3.35 2.977-4.976 5.862-4.883 2.14.063 3.148 1.45 3.024 4.16z" }))) }; var embedRedditIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M22 11.816c0-1.256-1.02-2.277-2.277-2.277-.593 0-1.122.24-1.526.613-1.48-.965-3.455-1.594-5.647-1.69l1.17-3.702 3.18.75c.01 1.027.847 1.86 1.877 1.86 1.035 0 1.877-.84 1.877-1.877 0-1.035-.842-1.877-1.877-1.877-.77 0-1.43.466-1.72 1.13L13.55 3.92c-.204-.047-.4.067-.46.26l-1.35 4.27c-2.317.037-4.412.67-5.97 1.67-.402-.355-.917-.58-1.493-.58C3.02 9.54 2 10.56 2 11.815c0 .814.433 1.523 1.078 1.925-.037.222-.06.445-.06.673 0 3.292 4.01 5.97 8.94 5.97s8.94-2.678 8.94-5.97c0-.214-.02-.424-.052-.632.687-.39 1.154-1.12 1.154-1.964zm-3.224-7.422c.606 0 1.1.493 1.1 1.1s-.493 1.1-1.1 1.1-1.1-.494-1.1-1.1.493-1.1 1.1-1.1zm-16 7.422c0-.827.673-1.5 1.5-1.5.313 0 .598.103.838.27-.85.675-1.477 1.478-1.812 2.36-.32-.274-.525-.676-.525-1.13zm9.183 7.79c-4.502 0-8.165-2.33-8.165-5.193S7.457 9.22 11.96 9.22s8.163 2.33 8.163 5.193-3.663 5.193-8.164 5.193zM20.635 13c-.326-.89-.948-1.7-1.797-2.383.247-.186.55-.3.882-.3.827 0 1.5.672 1.5 1.5 0 .482-.23.91-.586 1.184zm-11.64 1.704c-.76 0-1.397-.616-1.397-1.376 0-.76.636-1.397 1.396-1.397.76 0 1.376.638 1.376 1.398 0 .76-.616 1.376-1.376 1.376zm7.405-1.376c0 .76-.615 1.376-1.375 1.376s-1.4-.616-1.4-1.376c0-.76.64-1.397 1.4-1.397.76 0 1.376.638 1.376 1.398zm-1.17 3.38c.15.152.15.398 0 .55-.675.674-1.728 1.002-3.22 1.002l-.01-.002-.012.002c-1.492 0-2.544-.328-3.218-1.002-.152-.152-.152-.398 0-.55.152-.152.4-.15.55 0 .52.52 1.394.775 2.67.775l.01.002.01-.002c1.276 0 2.15-.253 2.67-.775.15-.152.398-.152.55 0z" })); var embedTumblrIcon = { foreground: '#35465c', src: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M19 3H5c-1.105 0-2 .895-2 2v14c0 1.105.895 2 2 2h14c1.105 0 2-.895 2-2V5c0-1.105-.895-2-2-2zm-5.57 14.265c-2.445.042-3.37-1.742-3.37-2.998V10.6H8.922V9.15c1.703-.615 2.113-2.15 2.21-3.026.006-.06.053-.084.08-.084h1.645V8.9h2.246v1.7H12.85v3.495c.008.476.182 1.13 1.08 1.107.3-.008.698-.094.907-.194l.54 1.6c-.205.297-1.12.642-1.946.657z" })) }; var embedAmazonIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M18.42 14.58c-.51-.66-1.05-1.23-1.05-2.5V7.87c0-1.8.15-3.45-1.2-4.68-1.05-1.02-2.79-1.35-4.14-1.35-2.6 0-5.52.96-6.12 4.14-.06.36.18.54.4.57l2.66.3c.24-.03.42-.27.48-.5.24-1.12 1.17-1.63 2.2-1.63.56 0 1.22.21 1.55.7.4.56.33 1.31.33 1.97v.36c-1.59.18-3.66.27-5.16.93a4.63 4.63 0 0 0-2.93 4.44c0 2.82 1.8 4.23 4.1 4.23 1.95 0 3.03-.45 4.53-1.98.51.72.66 1.08 1.59 1.83.18.09.45.09.63-.1v.04l2.1-1.8c.24-.21.2-.48.03-.75zm-5.4-1.2c-.45.75-1.14 1.23-1.92 1.23-1.05 0-1.65-.81-1.65-1.98 0-2.31 2.1-2.73 4.08-2.73v.6c0 1.05.03 1.92-.5 2.88z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M21.69 19.2a17.62 17.62 0 0 1-21.6-1.57c-.23-.2 0-.5.28-.33a23.88 23.88 0 0 0 20.93 1.3c.45-.19.84.3.39.6z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M22.8 17.96c-.36-.45-2.22-.2-3.1-.12-.23.03-.3-.18-.05-.36 1.5-1.05 3.96-.75 4.26-.39.3.36-.1 2.82-1.5 4.02-.21.18-.42.1-.3-.15.3-.8 1.02-2.58.69-3z" })); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/core-embeds.js /** * Internal dependencies */ /** * WordPress dependencies */ var common = [{ name: 'core-embed/twitter', settings: { title: 'Twitter', icon: embedTwitterIcon, keywords: ['tweet'], description: Object(external_this_wp_i18n_["__"])('Embed a tweet.') }, patterns: [/^https?:\/\/(www\.)?twitter\.com\/.+/i] }, { name: 'core-embed/youtube', settings: { title: 'YouTube', icon: embedYouTubeIcon, keywords: [Object(external_this_wp_i18n_["__"])('music'), Object(external_this_wp_i18n_["__"])('video')], description: Object(external_this_wp_i18n_["__"])('Embed a YouTube video.') }, patterns: [/^https?:\/\/((m|www)\.)?youtube\.com\/.+/i, /^https?:\/\/youtu\.be\/.+/i] }, { name: 'core-embed/facebook', settings: { title: 'Facebook', icon: embedFacebookIcon, description: Object(external_this_wp_i18n_["__"])('Embed a Facebook post.') }, patterns: [/^https?:\/\/www\.facebook.com\/.+/i] }, { name: 'core-embed/instagram', settings: { title: 'Instagram', icon: embedInstagramIcon, keywords: [Object(external_this_wp_i18n_["__"])('image')], description: Object(external_this_wp_i18n_["__"])('Embed an Instagram post.') }, patterns: [/^https?:\/\/(www\.)?instagr(\.am|am\.com)\/.+/i] }, { name: 'core-embed/wordpress', settings: { title: 'WordPress', icon: embedWordPressIcon, keywords: [Object(external_this_wp_i18n_["__"])('post'), Object(external_this_wp_i18n_["__"])('blog')], responsive: false, description: Object(external_this_wp_i18n_["__"])('Embed a WordPress post.') } }, { name: 'core-embed/soundcloud', settings: { title: 'SoundCloud', icon: embedAudioIcon, keywords: [Object(external_this_wp_i18n_["__"])('music'), Object(external_this_wp_i18n_["__"])('audio')], description: Object(external_this_wp_i18n_["__"])('Embed SoundCloud content.') }, patterns: [/^https?:\/\/(www\.)?soundcloud\.com\/.+/i] }, { name: 'core-embed/spotify', settings: { title: 'Spotify', icon: embedSpotifyIcon, keywords: [Object(external_this_wp_i18n_["__"])('music'), Object(external_this_wp_i18n_["__"])('audio')], description: Object(external_this_wp_i18n_["__"])('Embed Spotify content.') }, patterns: [/^https?:\/\/(open|play)\.spotify\.com\/.+/i] }, { name: 'core-embed/flickr', settings: { title: 'Flickr', icon: embedFlickrIcon, keywords: [Object(external_this_wp_i18n_["__"])('image')], description: Object(external_this_wp_i18n_["__"])('Embed Flickr content.') }, patterns: [/^https?:\/\/(www\.)?flickr\.com\/.+/i, /^https?:\/\/flic\.kr\/.+/i] }, { name: 'core-embed/vimeo', settings: { title: 'Vimeo', icon: embedVimeoIcon, keywords: [Object(external_this_wp_i18n_["__"])('video')], description: Object(external_this_wp_i18n_["__"])('Embed a Vimeo video.') }, patterns: [/^https?:\/\/(www\.)?vimeo\.com\/.+/i] }]; var others = [{ name: 'core-embed/animoto', settings: { title: 'Animoto', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed an Animoto video.') }, patterns: [/^https?:\/\/(www\.)?(animoto|video214)\.com\/.+/i] }, { name: 'core-embed/cloudup', settings: { title: 'Cloudup', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Cloudup content.') }, patterns: [/^https?:\/\/cloudup\.com\/.+/i] }, { // Deprecated since CollegeHumor content is now powered by YouTube name: 'core-embed/collegehumor', settings: { title: 'CollegeHumor', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed CollegeHumor content.'), supports: { inserter: false } }, patterns: [] }, { name: 'core-embed/crowdsignal', settings: { title: 'Crowdsignal', icon: embedContentIcon, keywords: ['polldaddy'], transform: [{ type: 'block', blocks: ['core-embed/polldaddy'], transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])('core-embed/crowdsignal', { content: content }); } }], description: Object(external_this_wp_i18n_["__"])('Embed Crowdsignal (formerly Polldaddy) content.') }, patterns: [/^https?:\/\/((.+\.)?polldaddy\.com|poll\.fm|.+\.survey\.fm)\/.+/i] }, { name: 'core-embed/dailymotion', settings: { title: 'Dailymotion', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed a Dailymotion video.') }, patterns: [/^https?:\/\/(www\.)?dailymotion\.com\/.+/i] }, { name: 'core-embed/hulu', settings: { title: 'Hulu', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed Hulu content.') }, patterns: [/^https?:\/\/(www\.)?hulu\.com\/.+/i] }, { name: 'core-embed/imgur', settings: { title: 'Imgur', icon: embedPhotoIcon, description: Object(external_this_wp_i18n_["__"])('Embed Imgur content.') }, patterns: [/^https?:\/\/(.+\.)?imgur\.com\/.+/i] }, { name: 'core-embed/issuu', settings: { title: 'Issuu', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Issuu content.') }, patterns: [/^https?:\/\/(www\.)?issuu\.com\/.+/i] }, { name: 'core-embed/kickstarter', settings: { title: 'Kickstarter', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Kickstarter content.') }, patterns: [/^https?:\/\/(www\.)?kickstarter\.com\/.+/i, /^https?:\/\/kck\.st\/.+/i] }, { name: 'core-embed/meetup-com', settings: { title: 'Meetup.com', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Meetup.com content.') }, patterns: [/^https?:\/\/(www\.)?meetu(\.ps|p\.com)\/.+/i] }, { name: 'core-embed/mixcloud', settings: { title: 'Mixcloud', icon: embedAudioIcon, keywords: [Object(external_this_wp_i18n_["__"])('music'), Object(external_this_wp_i18n_["__"])('audio')], description: Object(external_this_wp_i18n_["__"])('Embed Mixcloud content.') }, patterns: [/^https?:\/\/(www\.)?mixcloud\.com\/.+/i] }, { // Deprecated in favour of the core-embed/crowdsignal block name: 'core-embed/polldaddy', settings: { title: 'Polldaddy', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Polldaddy content.'), supports: { inserter: false } }, patterns: [] }, { name: 'core-embed/reddit', settings: { title: 'Reddit', icon: embedRedditIcon, description: Object(external_this_wp_i18n_["__"])('Embed a Reddit thread.') }, patterns: [/^https?:\/\/(www\.)?reddit\.com\/.+/i] }, { name: 'core-embed/reverbnation', settings: { title: 'ReverbNation', icon: embedAudioIcon, description: Object(external_this_wp_i18n_["__"])('Embed ReverbNation content.') }, patterns: [/^https?:\/\/(www\.)?reverbnation\.com\/.+/i] }, { name: 'core-embed/screencast', settings: { title: 'Screencast', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed Screencast content.') }, patterns: [/^https?:\/\/(www\.)?screencast\.com\/.+/i] }, { name: 'core-embed/scribd', settings: { title: 'Scribd', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Scribd content.') }, patterns: [/^https?:\/\/(www\.)?scribd\.com\/.+/i] }, { name: 'core-embed/slideshare', settings: { title: 'Slideshare', icon: embedContentIcon, description: Object(external_this_wp_i18n_["__"])('Embed Slideshare content.') }, patterns: [/^https?:\/\/(.+?\.)?slideshare\.net\/.+/i] }, { name: 'core-embed/smugmug', settings: { title: 'SmugMug', icon: embedPhotoIcon, description: Object(external_this_wp_i18n_["__"])('Embed SmugMug content.') }, patterns: [/^https?:\/\/(www\.)?smugmug\.com\/.+/i] }, { // Deprecated in favour of the core-embed/speaker-deck block. name: 'core-embed/speaker', settings: { title: 'Speaker', icon: embedAudioIcon, supports: { inserter: false } }, patterns: [] }, { name: 'core-embed/speaker-deck', settings: { title: 'Speaker Deck', icon: embedContentIcon, transform: [{ type: 'block', blocks: ['core-embed/speaker'], transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])('core-embed/speaker-deck', { content: content }); } }], description: Object(external_this_wp_i18n_["__"])('Embed Speaker Deck content.') }, patterns: [/^https?:\/\/(www\.)?speakerdeck\.com\/.+/i] }, { name: 'core-embed/tiktok', settings: { title: 'TikTok', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed a TikTok video.') }, patterns: [/^https?:\/\/(www\.)?tiktok\.com\/.+/i] }, { name: 'core-embed/ted', settings: { title: 'TED', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed a TED video.') }, patterns: [/^https?:\/\/(www\.|embed\.)?ted\.com\/.+/i] }, { name: 'core-embed/tumblr', settings: { title: 'Tumblr', icon: embedTumblrIcon, description: Object(external_this_wp_i18n_["__"])('Embed a Tumblr post.') }, patterns: [/^https?:\/\/(www\.)?tumblr\.com\/.+/i] }, { name: 'core-embed/videopress', settings: { title: 'VideoPress', icon: embedVideoIcon, keywords: [Object(external_this_wp_i18n_["__"])('video')], description: Object(external_this_wp_i18n_["__"])('Embed a VideoPress video.') }, patterns: [/^https?:\/\/videopress\.com\/.+/i] }, { name: 'core-embed/wordpress-tv', settings: { title: 'WordPress.tv', icon: embedVideoIcon, description: Object(external_this_wp_i18n_["__"])('Embed a WordPress.tv video.') }, patterns: [/^https?:\/\/wordpress\.tv\/.+/i] }, { name: 'core-embed/amazon-kindle', settings: { title: 'Amazon Kindle', icon: embedAmazonIcon, keywords: [Object(external_this_wp_i18n_["__"])('ebook')], responsive: false, description: Object(external_this_wp_i18n_["__"])('Embed Amazon Kindle content.') }, patterns: [/^https?:\/\/([a-z0-9-]+\.)?(amazon|amzn)(\.[a-z]{2,4})+\/.+/i, /^https?:\/\/(www\.)?(a\.co|z\.cn)\/.+/i] }]; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/constants.js // These embeds do not work in sandboxes due to the iframe's security restrictions. var HOSTS_NO_PREVIEWS = ['facebook.com', 'smugmug.com']; var ASPECT_RATIOS = [// Common video resolutions. { ratio: '2.33', className: 'wp-embed-aspect-21-9' }, { ratio: '2.00', className: 'wp-embed-aspect-18-9' }, { ratio: '1.78', className: 'wp-embed-aspect-16-9' }, { ratio: '1.33', className: 'wp-embed-aspect-4-3' }, // Vertical video and instagram square video support. { ratio: '1.00', className: 'wp-embed-aspect-1-1' }, { ratio: '0.56', className: 'wp-embed-aspect-9-16' }, { ratio: '0.50', className: 'wp-embed-aspect-1-2' }]; var DEFAULT_EMBED_BLOCK = 'core/embed'; var WORDPRESS_EMBED_BLOCK = 'core-embed/wordpress'; // EXTERNAL MODULE: ./node_modules/classnames/dedupe.js var dedupe = __webpack_require__("A/WM"); var dedupe_default = /*#__PURE__*/__webpack_require__.n(dedupe); // EXTERNAL MODULE: ./node_modules/memize/index.js var memize = __webpack_require__("4eJC"); var memize_default = /*#__PURE__*/__webpack_require__.n(memize); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/util.js function util_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function util_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { util_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { util_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Internal dependencies */ /** * External dependencies */ /** * WordPress dependencies */ /** * Returns true if any of the regular expressions match the URL. * * @param {string} url The URL to test. * @param {Array} patterns The list of regular expressions to test agains. * @return {boolean} True if any of the regular expressions match the URL. */ var matchesPatterns = function matchesPatterns(url) { var patterns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return patterns.some(function (pattern) { return url.match(pattern); }); }; /** * Finds the block name that should be used for the URL, based on the * structure of the URL. * * @param {string} url The URL to test. * @return {string} The name of the block that should be used for this URL, e.g. core-embed/twitter */ var util_findBlock = function findBlock(url) { for (var _i = 0, _arr = [].concat(Object(toConsumableArray["a" /* default */])(common), Object(toConsumableArray["a" /* default */])(others)); _i < _arr.length; _i++) { var block = _arr[_i]; if (matchesPatterns(url, block.patterns)) { return block.name; } } return DEFAULT_EMBED_BLOCK; }; var util_isFromWordPress = function isFromWordPress(html) { return Object(external_this_lodash_["includes"])(html, 'class="wp-embedded-content"'); }; var util_getPhotoHtml = function getPhotoHtml(photo) { // 100% width for the preview so it fits nicely into the document, some "thumbnails" are // actually the full size photo. If thumbnails not found, use full image. var imageUrl = photo.thumbnail_url ? photo.thumbnail_url : photo.url; var photoPreview = Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_element_["createElement"])("img", { src: imageUrl, alt: photo.title, width: "100%" })); return Object(external_this_wp_element_["renderToString"])(photoPreview); }; /** * Creates a more suitable embed block based on the passed in props * and attributes generated from an embed block's preview. * * We require `attributesFromPreview` to be generated from the latest attributes * and preview, and because of the way the react lifecycle operates, we can't * guarantee that the attributes contained in the block's props are the latest * versions, so we require that these are generated separately. * See `getAttributesFromPreview` in the generated embed edit component. * * @param {Object} props The block's props. * @param {Object} attributesFromPreview Attributes generated from the block's most up to date preview. * @return {Object|undefined} A more suitable embed block if one exists. */ var util_createUpgradedEmbedBlock = function createUpgradedEmbedBlock(props, attributesFromPreview) { var preview = props.preview, name = props.name; var url = props.attributes.url; if (!url) { return; } var matchingBlock = util_findBlock(url); if (!Object(external_this_wp_blocks_["getBlockType"])(matchingBlock)) { return; } // WordPress blocks can work on multiple sites, and so don't have patterns, // so if we're in a WordPress block, assume the user has chosen it for a WordPress URL. if (WORDPRESS_EMBED_BLOCK !== name && DEFAULT_EMBED_BLOCK !== matchingBlock) { // At this point, we have discovered a more suitable block for this url, so transform it. if (name !== matchingBlock) { return Object(external_this_wp_blocks_["createBlock"])(matchingBlock, { url: url }); } } if (preview) { var html = preview.html; // We can't match the URL for WordPress embeds, we have to check the HTML instead. if (util_isFromWordPress(html)) { // If this is not the WordPress embed block, transform it into one. if (WORDPRESS_EMBED_BLOCK !== name) { return Object(external_this_wp_blocks_["createBlock"])(WORDPRESS_EMBED_BLOCK, util_objectSpread({ url: url }, attributesFromPreview)); } } } }; /** * Returns class names with any relevant responsive aspect ratio names. * * @param {string} html The preview HTML that possibly contains an iframe with width and height set. * @param {string} existingClassNames Any existing class names. * @param {boolean} allowResponsive If the responsive class names should be added, or removed. * @return {string} Deduped class names. */ function getClassNames(html) { var existingClassNames = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; var allowResponsive = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; if (!allowResponsive) { // Remove all of the aspect ratio related class names. var aspectRatioClassNames = { 'wp-has-aspect-ratio': false }; for (var ratioIndex = 0; ratioIndex < ASPECT_RATIOS.length; ratioIndex++) { var aspectRatioToRemove = ASPECT_RATIOS[ratioIndex]; aspectRatioClassNames[aspectRatioToRemove.className] = false; } return dedupe_default()(existingClassNames, aspectRatioClassNames); } var previewDocument = document.implementation.createHTMLDocument(''); previewDocument.body.innerHTML = html; var iframe = previewDocument.body.querySelector('iframe'); // If we have a fixed aspect iframe, and it's a responsive embed block. if (iframe && iframe.height && iframe.width) { var aspectRatio = (iframe.width / iframe.height).toFixed(2); // Given the actual aspect ratio, find the widest ratio to support it. for (var _ratioIndex = 0; _ratioIndex < ASPECT_RATIOS.length; _ratioIndex++) { var potentialRatio = ASPECT_RATIOS[_ratioIndex]; if (aspectRatio >= potentialRatio.ratio) { var _classnames; return dedupe_default()(existingClassNames, (_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, potentialRatio.className, allowResponsive), Object(defineProperty["a" /* default */])(_classnames, 'wp-has-aspect-ratio', allowResponsive), _classnames)); } } } return existingClassNames; } /** * Fallback behaviour for unembeddable URLs. * Creates a paragraph block containing a link to the URL, and calls `onReplace`. * * @param {string} url The URL that could not be embedded. * @param {Function} onReplace Function to call with the created fallback block. */ function util_fallback(url, onReplace) { var link = Object(external_this_wp_element_["createElement"])("a", { href: url }, url); onReplace(Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: Object(external_this_wp_element_["renderToString"])(link) })); } /*** * Gets block attributes based on the preview and responsive state. * * @param {Object} preview The preview data. * @param {string} title The block's title, e.g. Twitter. * @param {Object} currentClassNames The block's current class names. * @param {boolean} isResponsive Boolean indicating if the block supports responsive content. * @param {boolean} allowResponsive Apply responsive classes to fixed size content. * @return {Object} Attributes and values. */ var getAttributesFromPreview = memize_default()(function (preview, title, currentClassNames, isResponsive) { var allowResponsive = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true; if (!preview) { return {}; } var attributes = {}; // Some plugins only return HTML with no type info, so default this to 'rich'. var _preview$type = preview.type, type = _preview$type === void 0 ? 'rich' : _preview$type; // If we got a provider name from the API, use it for the slug, otherwise we use the title, // because not all embed code gives us a provider name. var html = preview.html, providerName = preview.provider_name; var providerNameSlug = Object(external_this_lodash_["kebabCase"])(Object(external_this_lodash_["toLower"])('' !== providerName ? providerName : title)); if (util_isFromWordPress(html)) { type = 'wp-embed'; } if (html || 'photo' === type) { attributes.type = type; attributes.providerNameSlug = providerNameSlug; } attributes.className = getClassNames(html, currentClassNames, isResponsive && allowResponsive); return attributes; }); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/constants.js var MIN_SIZE = 20; var LINK_DESTINATION_NONE = 'none'; var LINK_DESTINATION_MEDIA = 'media'; var LINK_DESTINATION_ATTACHMENT = 'attachment'; var LINK_DESTINATION_CUSTOM = 'custom'; var NEW_TAB_REL = ['noreferrer', 'noopener']; var ALLOWED_MEDIA_TYPES = ['image']; var DEFAULT_SIZE_SLUG = 'large'; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/utils.js /** * External dependencies */ /** * Internal dependencies */ function calculatePreferedImageSize(image, container) { var maxWidth = container.clientWidth; var exceedMaxWidth = image.width > maxWidth; var ratio = image.height / image.width; var width = exceedMaxWidth ? maxWidth : image.width; var height = exceedMaxWidth ? maxWidth * ratio : image.height; return { width: width, height: height }; } function removeNewTabRel(currentRel) { var newRel = currentRel; if (currentRel !== undefined && !Object(external_this_lodash_["isEmpty"])(newRel)) { if (!Object(external_this_lodash_["isEmpty"])(newRel)) { Object(external_this_lodash_["each"])(NEW_TAB_REL, function (relVal) { var regExp = new RegExp('\\b' + relVal + '\\b', 'gi'); newRel = newRel.replace(regExp, ''); }); // Only trim if NEW_TAB_REL values was replaced. if (newRel !== currentRel) { newRel = newRel.trim(); } if (Object(external_this_lodash_["isEmpty"])(newRel)) { newRel = undefined; } } } return newRel; } /** * Helper to get the link target settings to be stored. * * @param {boolean} value The new link target value. * @param {Object} attributes Block attributes. * @param {Object} attributes.rel Image block's rel attribute. * * @return {Object} Updated link target settings. */ function getUpdatedLinkTargetSettings(value, _ref) { var rel = _ref.rel; var linkTarget = value ? '_blank' : undefined; var updatedRel; if (!linkTarget && !rel) { updatedRel = undefined; } else { updatedRel = removeNewTabRel(rel); } return { linkTarget: linkTarget, rel: updatedRel }; } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-size.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var image_size_ImageSize = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ImageSize, _Component); function ImageSize() { var _this; Object(classCallCheck["a" /* default */])(this, ImageSize); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ImageSize).apply(this, arguments)); _this.state = { width: undefined, height: undefined }; _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.calculateSize = _this.calculateSize.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(ImageSize, [{ key: "bindContainer", value: function bindContainer(ref) { this.container = ref; } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (this.props.src !== prevProps.src) { this.setState({ width: undefined, height: undefined }); this.fetchImageSize(); } if (this.props.dirtynessTrigger !== prevProps.dirtynessTrigger) { this.calculateSize(); } } }, { key: "componentDidMount", value: function componentDidMount() { this.fetchImageSize(); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { if (this.image) { this.image.onload = external_this_lodash_["noop"]; } } }, { key: "fetchImageSize", value: function fetchImageSize() { this.image = new window.Image(); this.image.onload = this.calculateSize; this.image.src = this.props.src; } }, { key: "calculateSize", value: function calculateSize() { var _calculatePreferedIma = calculatePreferedImageSize(this.image, this.container), width = _calculatePreferedIma.width, height = _calculatePreferedIma.height; this.setState({ width: width, height: height }); } }, { key: "render", value: function render() { var sizes = { imageWidth: this.image && this.image.width, imageHeight: this.image && this.image.height, containerWidth: this.container && this.container.clientWidth, containerHeight: this.container && this.container.clientHeight, imageWidthWithinContainer: this.state.width, imageHeightWithinContainer: this.state.height }; return Object(external_this_wp_element_["createElement"])("div", { ref: this.bindContainer }, this.props.children(sizes)); } }]); return ImageSize; }(external_this_wp_element_["Component"]); /* harmony default export */ var image_size = (Object(external_this_wp_compose_["withGlobalEvents"])({ resize: 'calculateSize' })(image_size_ImageSize)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/edit.js function image_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function image_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { image_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { image_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Module constants */ var edit_pickRelevantMediaFiles = function pickRelevantMediaFiles(image) { var imageProps = Object(external_this_lodash_["pick"])(image, ['alt', 'id', 'link', 'caption']); imageProps.url = Object(external_this_lodash_["get"])(image, ['sizes', 'large', 'url']) || Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', 'large', 'source_url']) || image.url; return imageProps; }; /** * Is the URL a temporary blob URL? A blob URL is one that is used temporarily * while the image is being uploaded and will not have an id yet allocated. * * @param {number=} id The id of the image. * @param {string=} url The url of the image. * * @return {boolean} Is the URL a Blob URL */ var edit_isTemporaryImage = function isTemporaryImage(id, url) { return !id && Object(external_this_wp_blob_["isBlobURL"])(url); }; /** * Is the url for the image hosted externally. An externally hosted image has no id * and is not a blob url. * * @param {number=} id The id of the image. * @param {string=} url The url of the image. * * @return {boolean} Is the url an externally hosted url? */ var edit_isExternalImage = function isExternalImage(id, url) { return url && !id && !Object(external_this_wp_blob_["isBlobURL"])(url); }; var edit_ImageEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ImageEdit, _Component); function ImageEdit() { var _this; Object(classCallCheck["a" /* default */])(this, ImageEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ImageEdit).apply(this, arguments)); _this.updateAlt = _this.updateAlt.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.updateAlignment = _this.updateAlignment.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onFocusCaption = _this.onFocusCaption.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onImageClick = _this.onImageClick.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectImage = _this.onSelectImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectURL = _this.onSelectURL.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.updateImage = _this.updateImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSetHref = _this.onSetHref.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSetTitle = _this.onSetTitle.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getFilename = _this.getFilename.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onImageError = _this.onImageError.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { captionFocused: false }; return _this; } Object(createClass["a" /* default */])(ImageEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; var _this$props = this.props, attributes = _this$props.attributes, mediaUpload = _this$props.mediaUpload, noticeOperations = _this$props.noticeOperations; var id = attributes.id, _attributes$url = attributes.url, url = _attributes$url === void 0 ? '' : _attributes$url; if (edit_isTemporaryImage(id, url)) { var file = Object(external_this_wp_blob_["getBlobByURL"])(url); if (file) { mediaUpload({ filesList: [file], onFileChange: function onFileChange(_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 1), image = _ref2[0]; _this2.onSelectImage(image); }, allowedTypes: ALLOWED_MEDIA_TYPES, onError: function onError(message) { noticeOperations.createErrorNotice(message); } }); } } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _prevProps$attributes = prevProps.attributes, prevID = _prevProps$attributes.id, _prevProps$attributes2 = _prevProps$attributes.url, prevURL = _prevProps$attributes2 === void 0 ? '' : _prevProps$attributes2; var _this$props$attribute = this.props.attributes, id = _this$props$attribute.id, _this$props$attribute2 = _this$props$attribute.url, url = _this$props$attribute2 === void 0 ? '' : _this$props$attribute2; if (edit_isTemporaryImage(prevID, prevURL) && !edit_isTemporaryImage(id, url)) { Object(external_this_wp_blob_["revokeBlobURL"])(url); } if (!this.props.isSelected && prevProps.isSelected && this.state.captionFocused) { this.setState({ captionFocused: false }); } } }, { key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "onSelectImage", value: function onSelectImage(media) { if (!media || !media.url) { this.props.setAttributes({ url: undefined, alt: undefined, id: undefined, title: undefined, caption: undefined }); return; } var _this$props$attribute3 = this.props.attributes, id = _this$props$attribute3.id, url = _this$props$attribute3.url, alt = _this$props$attribute3.alt, caption = _this$props$attribute3.caption, linkDestination = _this$props$attribute3.linkDestination; var mediaAttributes = edit_pickRelevantMediaFiles(media); // If the current image is temporary but an alt text was meanwhile written by the user, // make sure the text is not overwritten. if (edit_isTemporaryImage(id, url)) { if (alt) { mediaAttributes = Object(external_this_lodash_["omit"])(mediaAttributes, ['alt']); } } // If a caption text was meanwhile written by the user, // make sure the text is not overwritten by empty captions if (caption && !Object(external_this_lodash_["get"])(mediaAttributes, ['caption'])) { mediaAttributes = Object(external_this_lodash_["omit"])(mediaAttributes, ['caption']); } var additionalAttributes; // Reset the dimension attributes if changing to a different image. if (!media.id || media.id !== id) { additionalAttributes = { width: undefined, height: undefined, sizeSlug: DEFAULT_SIZE_SLUG }; } else { // Keep the same url when selecting the same file, so "Image Size" option is not changed. additionalAttributes = { url: url }; } // Check if the image is linked to it's media. if (linkDestination === LINK_DESTINATION_MEDIA) { // Update the media link. mediaAttributes.href = media.url; } // Check if the image is linked to the attachment page. if (linkDestination === LINK_DESTINATION_ATTACHMENT) { // Update the media link. mediaAttributes.href = media.link; } this.props.setAttributes(image_edit_objectSpread({}, mediaAttributes, {}, additionalAttributes)); } }, { key: "onSelectURL", value: function onSelectURL(newURL) { var url = this.props.attributes.url; if (newURL !== url) { this.props.setAttributes({ url: newURL, id: undefined, sizeSlug: DEFAULT_SIZE_SLUG }); } } }, { key: "onImageError", value: function onImageError(url) { // Check if there's an embed block that handles this URL. var embedBlock = util_createUpgradedEmbedBlock({ attributes: { url: url } }); if (undefined !== embedBlock) { this.props.onReplace(embedBlock); } } }, { key: "onSetHref", value: function onSetHref(props) { this.props.setAttributes(props); } }, { key: "onSetTitle", value: function onSetTitle(value) { // This is the HTML title attribute, separate from the media object title this.props.setAttributes({ title: value }); } }, { key: "onFocusCaption", value: function onFocusCaption() { if (!this.state.captionFocused) { this.setState({ captionFocused: true }); } } }, { key: "onImageClick", value: function onImageClick() { if (this.state.captionFocused) { this.setState({ captionFocused: false }); } } }, { key: "updateAlt", value: function updateAlt(newAlt) { this.props.setAttributes({ alt: newAlt }); } }, { key: "updateAlignment", value: function updateAlignment(nextAlign) { var extraUpdatedAttributes = ['wide', 'full'].indexOf(nextAlign) !== -1 ? { width: undefined, height: undefined } : {}; this.props.setAttributes(image_edit_objectSpread({}, extraUpdatedAttributes, { align: nextAlign })); } }, { key: "updateImage", value: function updateImage(sizeSlug) { var image = this.props.image; var url = Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', sizeSlug, 'source_url']); if (!url) { return null; } this.props.setAttributes({ url: url, width: undefined, height: undefined, sizeSlug: sizeSlug }); } }, { key: "getFilename", value: function getFilename(url) { var path = Object(external_this_wp_url_["getPath"])(url); if (path) { return Object(external_this_lodash_["last"])(path.split('/')); } } }, { key: "getImageSizeOptions", value: function getImageSizeOptions() { var _this$props2 = this.props, imageSizes = _this$props2.imageSizes, image = _this$props2.image; return Object(external_this_lodash_["map"])(Object(external_this_lodash_["filter"])(imageSizes, function (_ref3) { var slug = _ref3.slug; return Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', slug, 'source_url']); }), function (_ref4) { var name = _ref4.name, slug = _ref4.slug; return { value: slug, label: name }; }); } }, { key: "render", value: function render() { var _this3 = this; var _this$props3 = this.props, attributes = _this$props3.attributes, setAttributes = _this$props3.setAttributes, isLargeViewport = _this$props3.isLargeViewport, isSelected = _this$props3.isSelected, className = _this$props3.className, maxWidth = _this$props3.maxWidth, noticeUI = _this$props3.noticeUI, isRTL = _this$props3.isRTL, onResizeStart = _this$props3.onResizeStart, _onResizeStop = _this$props3.onResizeStop; var url = attributes.url, alt = attributes.alt, caption = attributes.caption, align = attributes.align, id = attributes.id, href = attributes.href, rel = attributes.rel, linkClass = attributes.linkClass, linkDestination = attributes.linkDestination, title = attributes.title, width = attributes.width, height = attributes.height, linkTarget = attributes.linkTarget, sizeSlug = attributes.sizeSlug; var isExternal = edit_isExternalImage(id, url); var controls = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockAlignmentToolbar"], { value: align, onChange: this.updateAlignment }), url && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: id, mediaURL: url, allowedTypes: ALLOWED_MEDIA_TYPES, accept: "image/*", onSelect: this.onSelectImage, onSelectURL: this.onSelectURL, onError: this.onUploadError }), url && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalImageURLInputUI"], { url: href || '', onChangeUrl: this.onSetHref, linkDestination: linkDestination, mediaUrl: this.props.image && this.props.image.source_url, mediaLink: this.props.image && this.props.image.link, linkTarget: linkTarget, linkClass: linkClass, rel: rel }))); var src = isExternal ? url : undefined; var labels = { title: !url ? Object(external_this_wp_i18n_["__"])('Image') : Object(external_this_wp_i18n_["__"])('Edit image'), instructions: Object(external_this_wp_i18n_["__"])('Upload an image file, pick one from your media library, or add one with a URL.') }; var mediaPreview = !!url && Object(external_this_wp_element_["createElement"])("img", { alt: Object(external_this_wp_i18n_["__"])('Edit image'), title: Object(external_this_wp_i18n_["__"])('Edit image'), className: 'edit-image-preview', src: url }); var mediaPlaceholder = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_image }), className: className, labels: labels, onSelect: this.onSelectImage, onSelectURL: this.onSelectURL, notices: noticeUI, onError: this.onUploadError, accept: "image/*", allowedTypes: ALLOWED_MEDIA_TYPES, value: { id: id, src: src }, mediaPreview: mediaPreview, disableMediaButtons: url }); if (!url) { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, controls, mediaPlaceholder); } var classes = classnames_default()(className, Object(defineProperty["a" /* default */])({ 'is-transient': Object(external_this_wp_blob_["isBlobURL"])(url), 'is-resized': !!width || !!height, 'is-focused': isSelected }, "size-".concat(sizeSlug), sizeSlug)); var isResizable = ['wide', 'full'].indexOf(align) === -1 && isLargeViewport; var imageSizeOptions = this.getImageSizeOptions(); var getInspectorControls = function getInspectorControls(imageWidth, imageHeight) { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Image settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextareaControl"], { label: Object(external_this_wp_i18n_["__"])('Alt text (alternative text)'), value: alt, onChange: _this3.updateAlt, help: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { href: "https://www.w3.org/WAI/tutorials/images/decision-tree" }, Object(external_this_wp_i18n_["__"])('Describe the purpose of the image')), Object(external_this_wp_i18n_["__"])('Leave empty if the image is purely decorative.')) }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalImageSizeControl"], { onChangeImage: _this3.updateImage, onChange: function onChange(value) { return setAttributes(value); }, slug: sizeSlug, width: width, height: height, imageSizeOptions: imageSizeOptions, isResizable: isResizable, imageWidth: imageWidth, imageHeight: imageHeight }))), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorAdvancedControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { label: Object(external_this_wp_i18n_["__"])('Title attribute'), value: title || '', onChange: _this3.onSetTitle, help: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_i18n_["__"])('Describe the role of this image on the page.'), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { href: "https://www.w3.org/TR/html52/dom.html#the-title-attribute" }, Object(external_this_wp_i18n_["__"])('(Note: many devices and browsers do not display this text.)'))) }))); }; // Disable reason: Each block can be selected by clicking on it /* eslint-disable jsx-a11y/click-events-have-key-events */ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, controls, Object(external_this_wp_element_["createElement"])("figure", { className: classes }, Object(external_this_wp_element_["createElement"])(image_size, { src: url, dirtynessTrigger: align }, function (sizes) { var imageWidthWithinContainer = sizes.imageWidthWithinContainer, imageHeightWithinContainer = sizes.imageHeightWithinContainer, imageWidth = sizes.imageWidth, imageHeight = sizes.imageHeight; var filename = _this3.getFilename(url); var defaultedAlt; if (alt) { defaultedAlt = alt; } else if (filename) { defaultedAlt = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('This image has an empty alt attribute; its file name is %s'), filename); } else { defaultedAlt = Object(external_this_wp_i18n_["__"])('This image has an empty alt attribute'); } var img = // Disable reason: Image itself is not meant to be interactive, but // should direct focus to block. /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */ Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("img", { src: url, alt: defaultedAlt, onClick: _this3.onImageClick, onError: function onError() { return _this3.onImageError(url); } }), Object(external_this_wp_blob_["isBlobURL"])(url) && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null)) /* eslint-enable jsx-a11y/no-noninteractive-element-interactions */ ; if (!isResizable || !imageWidthWithinContainer) { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, getInspectorControls(imageWidth, imageHeight), Object(external_this_wp_element_["createElement"])("div", { style: { width: width, height: height } }, img)); } var currentWidth = width || imageWidthWithinContainer; var currentHeight = height || imageHeightWithinContainer; var ratio = imageWidth / imageHeight; var minWidth = imageWidth < imageHeight ? MIN_SIZE : MIN_SIZE * ratio; var minHeight = imageHeight < imageWidth ? MIN_SIZE : MIN_SIZE / ratio; // With the current implementation of ResizableBox, an image needs an explicit pixel value for the max-width. // In absence of being able to set the content-width, this max-width is currently dictated by the vanilla editor style. // The following variable adds a buffer to this vanilla style, so 3rd party themes have some wiggleroom. // This does, in most cases, allow you to scale the image beyond the width of the main column, though not infinitely. // @todo It would be good to revisit this once a content-width variable becomes available. var maxWidthBuffer = maxWidth * 2.5; var showRightHandle = false; var showLeftHandle = false; /* eslint-disable no-lonely-if */ // See https://github.com/WordPress/gutenberg/issues/7584. if (align === 'center') { // When the image is centered, show both handles. showRightHandle = true; showLeftHandle = true; } else if (isRTL) { // In RTL mode the image is on the right by default. // Show the right handle and hide the left handle only when it is aligned left. // Otherwise always show the left handle. if (align === 'left') { showRightHandle = true; } else { showLeftHandle = true; } } else { // Show the left handle and hide the right handle only when the image is aligned right. // Otherwise always show the right handle. if (align === 'right') { showLeftHandle = true; } else { showRightHandle = true; } } /* eslint-enable no-lonely-if */ return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, getInspectorControls(imageWidth, imageHeight), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ResizableBox"], { size: { width: width, height: height }, minWidth: minWidth, maxWidth: maxWidthBuffer, minHeight: minHeight, maxHeight: maxWidthBuffer / ratio, lockAspectRatio: true, enable: { top: false, right: showRightHandle, bottom: true, left: showLeftHandle }, onResizeStart: onResizeStart, onResizeStop: function onResizeStop(event, direction, elt, delta) { _onResizeStop(); setAttributes({ width: parseInt(currentWidth + delta.width, 10), height: parseInt(currentHeight + delta.height, 10) }); } }, img)); }), (!external_this_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: Object(external_this_wp_i18n_["__"])('Write caption…'), value: caption, unstableOnFocus: this.onFocusCaption, onChange: function onChange(value) { return setAttributes({ caption: value }); }, isSelected: this.state.captionFocused, inlineToolbar: true })), mediaPlaceholder); /* eslint-enable jsx-a11y/click-events-have-key-events */ } }]); return ImageEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var image_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), toggleSelection = _dispatch.toggleSelection; return { onResizeStart: function onResizeStart() { return toggleSelection(false); }, onResizeStop: function onResizeStop() { return toggleSelection(true); } }; }), Object(external_this_wp_data_["withSelect"])(function (select, props) { var _select = select('core'), getMedia = _select.getMedia; var _select2 = select('core/block-editor'), getSettings = _select2.getSettings; var id = props.attributes.id, isSelected = props.isSelected; var _getSettings = getSettings(), mediaUpload = _getSettings.mediaUpload, imageSizes = _getSettings.imageSizes, isRTL = _getSettings.isRTL, maxWidth = _getSettings.maxWidth; return { image: id && isSelected ? getMedia(id) : null, maxWidth: maxWidth, isRTL: isRTL, imageSizes: imageSizes, mediaUpload: mediaUpload }; }), Object(external_this_wp_viewport_["withViewportMatch"])({ isLargeViewport: 'medium' }), external_this_wp_components_["withNotices"]])(edit_ImageEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/save.js /** * External dependencies */ /** * WordPress dependencies */ function image_save_save(_ref) { var _classnames; var attributes = _ref.attributes; var url = attributes.url, alt = attributes.alt, caption = attributes.caption, align = attributes.align, href = attributes.href, rel = attributes.rel, linkClass = attributes.linkClass, width = attributes.width, height = attributes.height, id = attributes.id, linkTarget = attributes.linkTarget, sizeSlug = attributes.sizeSlug, title = attributes.title; var newRel = Object(external_this_lodash_["isEmpty"])(rel) ? undefined : rel; var classes = classnames_default()((_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, "align".concat(align), align), Object(defineProperty["a" /* default */])(_classnames, "size-".concat(sizeSlug), sizeSlug), Object(defineProperty["a" /* default */])(_classnames, 'is-resized', width || height), _classnames)); var image = Object(external_this_wp_element_["createElement"])("img", { src: url, alt: alt, className: id ? "wp-image-".concat(id) : null, width: width, height: height, title: title }); var figure = Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, href ? Object(external_this_wp_element_["createElement"])("a", { className: linkClass, href: href, target: linkTarget, rel: newRel }, image) : image, !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); if ('left' === align || 'right' === align || 'center' === align) { return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])("figure", { className: classes }, figure)); } return Object(external_this_wp_element_["createElement"])("figure", { className: classes }, figure); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/transforms.js function transforms_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function transforms_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { transforms_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { transforms_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ function stripFirstImage(attributes, _ref) { var shortcode = _ref.shortcode; var _document$implementat = document.implementation.createHTMLDocument(''), body = _document$implementat.body; body.innerHTML = shortcode.content; var nodeToRemove = body.querySelector('img'); // if an image has parents, find the topmost node to remove while (nodeToRemove && nodeToRemove.parentNode && nodeToRemove.parentNode !== body) { nodeToRemove = nodeToRemove.parentNode; } if (nodeToRemove) { nodeToRemove.parentNode.removeChild(nodeToRemove); } return body.innerHTML.trim(); } function getFirstAnchorAttributeFormHTML(html, attributeName) { var _document$implementat2 = document.implementation.createHTMLDocument(''), body = _document$implementat2.body; body.innerHTML = html; var firstElementChild = body.firstElementChild; if (firstElementChild && firstElementChild.nodeName === 'A') { return firstElementChild.getAttribute(attributeName) || undefined; } } var imageSchema = { img: { attributes: ['src', 'alt', 'title'], classes: ['alignleft', 'aligncenter', 'alignright', 'alignnone', /^wp-image-\d+$/] } }; var schema = function schema(_ref2) { var phrasingContentSchema = _ref2.phrasingContentSchema; return { figure: { require: ['img'], children: transforms_objectSpread({}, imageSchema, { a: { attributes: ['href', 'rel', 'target'], children: imageSchema }, figcaption: { children: phrasingContentSchema } }) } }; }; var image_transforms_transforms = { from: [{ type: 'raw', isMatch: function isMatch(node) { return node.nodeName === 'FIGURE' && !!node.querySelector('img'); }, schema: schema, transform: function transform(node) { // Search both figure and image classes. Alignment could be // set on either. ID is set on the image. var className = node.className + ' ' + node.querySelector('img').className; var alignMatches = /(?:^|\s)align(left|center|right)(?:$|\s)/.exec(className); var align = alignMatches ? alignMatches[1] : undefined; var idMatches = /(?:^|\s)wp-image-(\d+)(?:$|\s)/.exec(className); var id = idMatches ? Number(idMatches[1]) : undefined; var anchorElement = node.querySelector('a'); var linkDestination = anchorElement && anchorElement.href ? 'custom' : undefined; var href = anchorElement && anchorElement.href ? anchorElement.href : undefined; var rel = anchorElement && anchorElement.rel ? anchorElement.rel : undefined; var linkClass = anchorElement && anchorElement.className ? anchorElement.className : undefined; var attributes = Object(external_this_wp_blocks_["getBlockAttributes"])('core/image', node.outerHTML, { align: align, id: id, linkDestination: linkDestination, href: href, rel: rel, linkClass: linkClass }); return Object(external_this_wp_blocks_["createBlock"])('core/image', attributes); } }, { type: 'files', isMatch: function isMatch(files) { return files.length === 1 && files[0].type.indexOf('image/') === 0; }, transform: function transform(files) { var file = files[0]; // We don't need to upload the media directly here // It's already done as part of the `componentDidMount` // int the image block return Object(external_this_wp_blocks_["createBlock"])('core/image', { url: Object(external_this_wp_blob_["createBlobURL"])(file) }); } }, { type: 'shortcode', tag: 'caption', attributes: { url: { type: 'string', source: 'attribute', attribute: 'src', selector: 'img' }, alt: { type: 'string', source: 'attribute', attribute: 'alt', selector: 'img' }, caption: { shortcode: stripFirstImage }, href: { shortcode: function shortcode(attributes, _ref3) { var _shortcode = _ref3.shortcode; return getFirstAnchorAttributeFormHTML(_shortcode.content, 'href'); } }, rel: { shortcode: function shortcode(attributes, _ref4) { var _shortcode2 = _ref4.shortcode; return getFirstAnchorAttributeFormHTML(_shortcode2.content, 'rel'); } }, linkClass: { shortcode: function shortcode(attributes, _ref5) { var _shortcode3 = _ref5.shortcode; return getFirstAnchorAttributeFormHTML(_shortcode3.content, 'class'); } }, id: { type: 'number', shortcode: function shortcode(_ref6) { var id = _ref6.named.id; if (!id) { return; } return parseInt(id.replace('attachment_', ''), 10); } }, align: { type: 'string', shortcode: function shortcode(_ref7) { var _ref7$named$align = _ref7.named.align, align = _ref7$named$align === void 0 ? 'alignnone' : _ref7$named$align; return align.replace('align', ''); } } } }] }; /* harmony default export */ var image_transforms = (image_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var image_metadata = { name: "core/image", category: "common", attributes: { align: { type: "string" }, url: { type: "string", source: "attribute", selector: "img", attribute: "src" }, alt: { type: "string", source: "attribute", selector: "img", attribute: "alt", "default": "" }, caption: { type: "string", source: "html", selector: "figcaption" }, title: { type: "string", source: "attribute", selector: "img", attribute: "title" }, href: { type: "string", source: "attribute", selector: "figure > a", attribute: "href" }, rel: { type: "string", source: "attribute", selector: "figure > a", attribute: "rel" }, linkClass: { type: "string", source: "attribute", selector: "figure > a", attribute: "class" }, id: { type: "number" }, width: { type: "number" }, height: { type: "number" }, sizeSlug: { type: "string" }, linkDestination: { type: "string", "default": "none" }, linkTarget: { type: "string", source: "attribute", selector: "figure > a", attribute: "target" } } }; var image_name = image_metadata.name; var image_settings = { title: Object(external_this_wp_i18n_["__"])('Image'), description: Object(external_this_wp_i18n_["__"])('Insert an image to make a visual statement.'), icon: library_image, keywords: ['img', // "img" is not translated as it is intended to reflect the HTML tag. Object(external_this_wp_i18n_["__"])('photo')], example: { attributes: { sizeSlug: 'large', url: 'https://s.w.org/images/core/5.3/MtBlanc1.jpg', // translators: Caption accompanying an image of the Mont Blanc, which serves as an example for the Image block. caption: Object(external_this_wp_i18n_["__"])('Mont Blanc appears—still, snowy, and serene.') } }, styles: [{ name: 'default', label: Object(external_this_wp_i18n_["_x"])('Default', 'block style'), isDefault: true }, { name: 'rounded', label: Object(external_this_wp_i18n_["_x"])('Rounded', 'block style') }], __experimentalLabel: function __experimentalLabel(attributes, _ref) { var context = _ref.context; if (context === 'accessibility') { var caption = attributes.caption, alt = attributes.alt, url = attributes.url; if (!url) { return Object(external_this_wp_i18n_["__"])('Empty'); } if (!alt) { return caption || ''; } // This is intended to be read by a screen reader. // A period simply means a pause, no need to translate it. return alt + (caption ? '. ' + caption : ''); } }, transforms: image_transforms, getEditWrapperProps: function getEditWrapperProps(attributes) { var align = attributes.align, width = attributes.width; if ('left' === align || 'center' === align || 'right' === align || 'wide' === align || 'full' === align) { return { 'data-align': align, 'data-resized': !!width }; } }, edit: image_edit, save: image_save_save, deprecated: image_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/heading.js /** * WordPress dependencies */ var heading = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.5 4v5.2h-5V4H5v13h2.5v-5.2h5V17H15V4" })); /* harmony default export */ var library_heading = (heading); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ var blockSupports = { className: false, anchor: true }; var heading_deprecated_blockAttributes = { align: { type: 'string' }, content: { type: 'string', source: 'html', selector: 'h1,h2,h3,h4,h5,h6', default: '' }, level: { type: 'number', default: 2 }, placeholder: { type: 'string' }, textColor: { type: 'string' }, customTextColor: { type: 'string' } }; var heading_deprecated_deprecated = [{ attributes: heading_deprecated_blockAttributes, save: function save(_ref) { var _classnames; var attributes = _ref.attributes; var align = attributes.align, content = attributes.content, customTextColor = attributes.customTextColor, level = attributes.level, textColor = attributes.textColor; var tagName = 'h' + level; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()((_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, "has-text-align-".concat(align), align), _classnames)); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { className: className ? className : undefined, tagName: tagName, style: { color: textClass ? undefined : customTextColor }, value: content }); }, supports: blockSupports }, { supports: blockSupports, attributes: heading_deprecated_blockAttributes, save: function save(_ref2) { var attributes = _ref2.attributes; var align = attributes.align, level = attributes.level, content = attributes.content, textColor = attributes.textColor, customTextColor = attributes.customTextColor; var tagName = 'h' + level; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()(Object(defineProperty["a" /* default */])({}, textClass, textClass)); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { className: className ? className : undefined, tagName: tagName, style: { textAlign: align, color: textClass ? undefined : customTextColor }, value: content }); } }]; /* harmony default export */ var heading_deprecated = (heading_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/heading-level-icon.js /** * WordPress dependencies */ function HeadingLevelIcon(_ref) { var level = _ref.level, _ref$isPressed = _ref.isPressed, isPressed = _ref$isPressed === void 0 ? false : _ref$isPressed; var levelToPath = { 1: 'M9 5h2v10H9v-4H5v4H3V5h2v4h4V5zm6.6 0c-.6.9-1.5 1.7-2.6 2v1h2v7h2V5h-1.4z', 2: 'M7 5h2v10H7v-4H3v4H1V5h2v4h4V5zm8 8c.5-.4.6-.6 1.1-1.1.4-.4.8-.8 1.2-1.3.3-.4.6-.8.9-1.3.2-.4.3-.8.3-1.3 0-.4-.1-.9-.3-1.3-.2-.4-.4-.7-.8-1-.3-.3-.7-.5-1.2-.6-.5-.2-1-.2-1.5-.2-.4 0-.7 0-1.1.1-.3.1-.7.2-1 .3-.3.1-.6.3-.9.5-.3.2-.6.4-.8.7l1.2 1.2c.3-.3.6-.5 1-.7.4-.2.7-.3 1.2-.3s.9.1 1.3.4c.3.3.5.7.5 1.1 0 .4-.1.8-.4 1.1-.3.5-.6.9-1 1.2-.4.4-1 .9-1.6 1.4-.6.5-1.4 1.1-2.2 1.6V15h8v-2H15z', 3: 'M12.1 12.2c.4.3.8.5 1.2.7.4.2.9.3 1.4.3.5 0 1-.1 1.4-.3.3-.1.5-.5.5-.8 0-.2 0-.4-.1-.6-.1-.2-.3-.3-.5-.4-.3-.1-.7-.2-1-.3-.5-.1-1-.1-1.5-.1V9.1c.7.1 1.5-.1 2.2-.4.4-.2.6-.5.6-.9 0-.3-.1-.6-.4-.8-.3-.2-.7-.3-1.1-.3-.4 0-.8.1-1.1.3-.4.2-.7.4-1.1.6l-1.2-1.4c.5-.4 1.1-.7 1.6-.9.5-.2 1.2-.3 1.8-.3.5 0 1 .1 1.6.2.4.1.8.3 1.2.5.3.2.6.5.8.8.2.3.3.7.3 1.1 0 .5-.2.9-.5 1.3-.4.4-.9.7-1.5.9v.1c.6.1 1.2.4 1.6.8.4.4.7.9.7 1.5 0 .4-.1.8-.3 1.2-.2.4-.5.7-.9.9-.4.3-.9.4-1.3.5-.5.1-1 .2-1.6.2-.8 0-1.6-.1-2.3-.4-.6-.2-1.1-.6-1.6-1l1.1-1.4zM7 9H3V5H1v10h2v-4h4v4h2V5H7v4z', 4: 'M9 15H7v-4H3v4H1V5h2v4h4V5h2v10zm10-2h-1v2h-2v-2h-5v-2l4-6h3v6h1v2zm-3-2V7l-2.8 4H16z', 5: 'M12.1 12.2c.4.3.7.5 1.1.7.4.2.9.3 1.3.3.5 0 1-.1 1.4-.4.4-.3.6-.7.6-1.1 0-.4-.2-.9-.6-1.1-.4-.3-.9-.4-1.4-.4H14c-.1 0-.3 0-.4.1l-.4.1-.5.2-1-.6.3-5h6.4v1.9h-4.3L14 8.8c.2-.1.5-.1.7-.2.2 0 .5-.1.7-.1.5 0 .9.1 1.4.2.4.1.8.3 1.1.6.3.2.6.6.8.9.2.4.3.9.3 1.4 0 .5-.1 1-.3 1.4-.2.4-.5.8-.9 1.1-.4.3-.8.5-1.3.7-.5.2-1 .3-1.5.3-.8 0-1.6-.1-2.3-.4-.6-.2-1.1-.6-1.6-1-.1-.1 1-1.5 1-1.5zM9 15H7v-4H3v4H1V5h2v4h4V5h2v10z', 6: 'M9 15H7v-4H3v4H1V5h2v4h4V5h2v10zm8.6-7.5c-.2-.2-.5-.4-.8-.5-.6-.2-1.3-.2-1.9 0-.3.1-.6.3-.8.5l-.6.9c-.2.5-.2.9-.2 1.4.4-.3.8-.6 1.2-.8.4-.2.8-.3 1.3-.3.4 0 .8 0 1.2.2.4.1.7.3 1 .6.3.3.5.6.7.9.2.4.3.8.3 1.3s-.1.9-.3 1.4c-.2.4-.5.7-.8 1-.4.3-.8.5-1.2.6-1 .3-2 .3-3 0-.5-.2-1-.5-1.4-.9-.4-.4-.8-.9-1-1.5-.2-.6-.3-1.3-.3-2.1s.1-1.6.4-2.3c.2-.6.6-1.2 1-1.6.4-.4.9-.7 1.4-.9.6-.3 1.1-.4 1.7-.4.7 0 1.4.1 2 .3.5.2 1 .5 1.4.8 0 .1-1.3 1.4-1.3 1.4zm-2.4 5.8c.2 0 .4 0 .6-.1.2 0 .4-.1.5-.2.1-.1.3-.3.4-.5.1-.2.1-.5.1-.7 0-.4-.1-.8-.4-1.1-.3-.2-.7-.3-1.1-.3-.3 0-.7.1-1 .2-.4.2-.7.4-1 .7 0 .3.1.7.3 1 .1.2.3.4.4.6.2.1.3.3.5.3.2.1.5.2.7.1z' }; if (!levelToPath.hasOwnProperty(level)) { return null; } return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "20", height: "20", viewBox: "0 0 20 20", xmlns: "http://www.w3.org/2000/svg", isPressed: isPressed }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: levelToPath[level] })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/heading-toolbar.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var heading_toolbar_HeadingToolbar = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(HeadingToolbar, _Component); function HeadingToolbar() { Object(classCallCheck["a" /* default */])(this, HeadingToolbar); return Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(HeadingToolbar).apply(this, arguments)); } Object(createClass["a" /* default */])(HeadingToolbar, [{ key: "createLevelControl", value: function createLevelControl(targetLevel, selectedLevel, onChange) { var isActive = targetLevel === selectedLevel; return { icon: Object(external_this_wp_element_["createElement"])(HeadingLevelIcon, { level: targetLevel, isPressed: isActive }), // translators: %s: heading level e.g: "1", "2", "3" title: Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Heading %d'), targetLevel), isActive: isActive, onClick: function onClick() { return onChange(targetLevel); } }; } }, { key: "render", value: function render() { var _this = this; var _this$props = this.props, _this$props$isCollaps = _this$props.isCollapsed, isCollapsed = _this$props$isCollaps === void 0 ? true : _this$props$isCollaps, minLevel = _this$props.minLevel, maxLevel = _this$props.maxLevel, selectedLevel = _this$props.selectedLevel, onChange = _this$props.onChange; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { isCollapsed: isCollapsed, icon: Object(external_this_wp_element_["createElement"])(HeadingLevelIcon, { level: selectedLevel }), controls: Object(external_this_lodash_["range"])(minLevel, maxLevel).map(function (index) { return _this.createLevelControl(index, selectedLevel, onChange); }), label: Object(external_this_wp_i18n_["__"])('Change heading level') }); } }]); return HeadingToolbar; }(external_this_wp_element_["Component"]); /* harmony default export */ var heading_toolbar = (heading_toolbar_HeadingToolbar); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/edit.js function heading_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function heading_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { heading_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { heading_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Internal dependencies */ /** * WordPress dependencies */ function HeadingEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, mergeBlocks = _ref.mergeBlocks, onReplace = _ref.onReplace, className = _ref.className; var ref = Object(external_this_wp_element_["useRef"])(); var _experimentalUseColo = Object(external_this_wp_blockEditor_["__experimentalUseColors"])([{ name: 'textColor', property: 'color' }], { contrastCheckers: { backgroundColor: true, textColor: true }, colorDetector: { targetRef: ref } }, []), TextColor = _experimentalUseColo.TextColor, InspectorControlsColorPanel = _experimentalUseColo.InspectorControlsColorPanel; var align = attributes.align, content = attributes.content, level = attributes.level, placeholder = attributes.placeholder; var tagName = 'h' + level; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(heading_toolbar, { minLevel: 2, maxLevel: 5, selectedLevel: level, onChange: function onChange(newLevel) { return setAttributes({ level: newLevel }); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { value: align, onChange: function onChange(nextAlign) { setAttributes({ align: nextAlign }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Heading settings') }, Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('Level')), Object(external_this_wp_element_["createElement"])(heading_toolbar, { isCollapsed: false, minLevel: 1, maxLevel: 7, selectedLevel: level, onChange: function onChange(newLevel) { return setAttributes({ level: newLevel }); } }))), InspectorControlsColorPanel, Object(external_this_wp_element_["createElement"])(TextColor, null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { ref: ref, identifier: "content", tagName: tagName, value: content, onChange: function onChange(value) { return setAttributes({ content: value }); }, onMerge: mergeBlocks, onSplit: function onSplit(value) { if (!value) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph'); } return Object(external_this_wp_blocks_["createBlock"])('core/heading', heading_edit_objectSpread({}, attributes, { content: value })); }, onReplace: onReplace, onRemove: function onRemove() { return onReplace([]); }, className: classnames_default()(className, Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(align), align)), placeholder: placeholder || Object(external_this_wp_i18n_["__"])('Write heading…') }))); } /* harmony default export */ var heading_edit = (HeadingEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/save.js /** * External dependencies */ /** * WordPress dependencies */ function heading_save_save(_ref) { var _classnames; var attributes = _ref.attributes; var align = attributes.align, content = attributes.content, customTextColor = attributes.customTextColor, level = attributes.level, textColor = attributes.textColor; var tagName = 'h' + level; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()((_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, 'has-text-color', textColor || customTextColor), Object(defineProperty["a" /* default */])(_classnames, "has-text-align-".concat(align), align), _classnames)); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { className: className ? className : undefined, tagName: tagName, style: { color: textClass ? undefined : customTextColor }, value: content }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/shared.js /** * Given a node name string for a heading node, returns its numeric level. * * @param {string} nodeName Heading node name. * * @return {number} Heading level. */ function getLevelFromHeadingNodeName(nodeName) { return Number(nodeName.substr(1)); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/transforms.js /** * WordPress dependencies */ /** * Internal dependencies */ var transforms_name$category$attrib = { name: "core/heading", category: "common", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "h1,h2,h3,h4,h5,h6", "default": "" }, level: { type: "number", "default": 2 }, placeholder: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" } } }, heading_transforms_name = transforms_name$category$attrib.name; var heading_transforms_transforms = { from: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(_ref) { var content = _ref.content; return Object(external_this_wp_blocks_["createBlock"])(heading_transforms_name, { content: content }); } }, { type: 'raw', selector: 'h1,h2,h3,h4,h5,h6', schema: function schema(_ref2) { var phrasingContentSchema = _ref2.phrasingContentSchema, isPaste = _ref2.isPaste; var schema = { children: phrasingContentSchema, attributes: isPaste ? [] : ['style'] }; return { h1: schema, h2: schema, h3: schema, h4: schema, h5: schema, h6: schema }; }, transform: function transform(node) { var attributes = Object(external_this_wp_blocks_["getBlockAttributes"])(heading_transforms_name, node.outerHTML); var _ref3 = node.style || {}, textAlign = _ref3.textAlign; attributes.level = getLevelFromHeadingNodeName(node.nodeName); if (textAlign === 'left' || textAlign === 'center' || textAlign === 'right') { attributes.align = textAlign; } return Object(external_this_wp_blocks_["createBlock"])(heading_transforms_name, attributes); } }].concat(Object(toConsumableArray["a" /* default */])([2, 3, 4, 5, 6].map(function (level) { return { type: 'prefix', prefix: Array(level + 1).join('#'), transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])(heading_transforms_name, { level: level, content: content }); } }; }))), to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(_ref4) { var content = _ref4.content; return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: content }); } }] }; /* harmony default export */ var heading_transforms = (heading_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var heading_metadata = { name: "core/heading", category: "common", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "h1,h2,h3,h4,h5,h6", "default": "" }, level: { type: "number", "default": 2 }, placeholder: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" } } }; var heading_name = heading_metadata.name; var heading_settings = { title: Object(external_this_wp_i18n_["__"])('Heading'), description: Object(external_this_wp_i18n_["__"])('Introduce new sections and organize content to help visitors (and search engines) understand the structure of your content.'), icon: library_heading, keywords: [Object(external_this_wp_i18n_["__"])('title'), Object(external_this_wp_i18n_["__"])('subtitle')], supports: { className: false, anchor: true, __unstablePasteTextInline: true }, example: { attributes: { content: Object(external_this_wp_i18n_["__"])('Code is Poetry'), level: 2 } }, __experimentalLabel: function __experimentalLabel(attributes, _ref) { var context = _ref.context; if (context === 'accessibility') { var content = attributes.content, level = attributes.level; return Object(external_this_lodash_["isEmpty"])(content) ? Object(external_this_wp_i18n_["sprintf"])( /* translators: accessibility text. %s: heading level. */ Object(external_this_wp_i18n_["__"])('Level %s. Empty.'), level) : Object(external_this_wp_i18n_["sprintf"])( /* translators: accessibility text. 1: heading level. 2: heading content. */ Object(external_this_wp_i18n_["__"])('Level %1$s. %2$s'), level, content); } }, transforms: heading_transforms, deprecated: heading_deprecated, merge: function merge(attributes, attributesToMerge) { return { content: (attributes.content || '') + (attributesToMerge.content || '') }; }, edit: heading_edit, save: heading_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/quote.js /** * WordPress dependencies */ var quote = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M18.62 18h-5.24l2-4H13V6h8v7.24L18.62 18zm-2-2h.76L19 12.76V8h-4v4h3.62l-2 4zm-8 2H3.38l2-4H3V6h8v7.24L8.62 18zm-2-2h.76L9 12.76V8H5v4h3.62l-2 4z" })); /* harmony default export */ var library_quote = (quote); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/deprecated.js function deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ var quote_deprecated_blockAttributes = { value: { type: 'string', source: 'html', selector: 'blockquote', multiline: 'p', default: '' }, citation: { type: 'string', source: 'html', selector: 'cite', default: '' }, align: { type: 'string' } }; var quote_deprecated_deprecated = [{ attributes: quote_deprecated_blockAttributes, save: function save(_ref) { var attributes = _ref.attributes; var align = attributes.align, value = attributes.value, citation = attributes.citation; return Object(external_this_wp_element_["createElement"])("blockquote", { style: { textAlign: align ? align : null } }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { multiline: true, value: value }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation })); } }, { attributes: deprecated_objectSpread({}, quote_deprecated_blockAttributes, { style: { type: 'number', default: 1 } }), migrate: function migrate(attributes) { if (attributes.style === 2) { return deprecated_objectSpread({}, Object(external_this_lodash_["omit"])(attributes, ['style']), { className: attributes.className ? attributes.className + ' is-style-large' : 'is-style-large' }); } return attributes; }, save: function save(_ref2) { var attributes = _ref2.attributes; var align = attributes.align, value = attributes.value, citation = attributes.citation, style = attributes.style; return Object(external_this_wp_element_["createElement"])("blockquote", { className: style === 2 ? 'is-large' : '', style: { textAlign: align ? align : null } }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { multiline: true, value: value }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation })); } }, { attributes: deprecated_objectSpread({}, quote_deprecated_blockAttributes, { citation: { type: 'string', source: 'html', selector: 'footer', default: '' }, style: { type: 'number', default: 1 } }), save: function save(_ref3) { var attributes = _ref3.attributes; var align = attributes.align, value = attributes.value, citation = attributes.citation, style = attributes.style; return Object(external_this_wp_element_["createElement"])("blockquote", { className: "blocks-quote-style-".concat(style), style: { textAlign: align ? align : null } }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { multiline: true, value: value }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "footer", value: citation })); } }]; /* harmony default export */ var quote_deprecated = (quote_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/edit.js function quote_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function quote_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { quote_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { quote_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ function QuoteEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, isSelected = _ref.isSelected, mergeBlocks = _ref.mergeBlocks, onReplace = _ref.onReplace, className = _ref.className; var align = attributes.align, value = attributes.value, citation = attributes.citation; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { value: align, onChange: function onChange(nextAlign) { setAttributes({ align: nextAlign }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BlockQuotation"], { className: classnames_default()(className, Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(align), align)) }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { identifier: "value", multiline: true, value: value, onChange: function onChange(nextValue) { return setAttributes({ value: nextValue }); }, onMerge: mergeBlocks, onRemove: function onRemove(forward) { var hasEmptyCitation = !citation || citation.length === 0; if (!forward && hasEmptyCitation) { onReplace([]); } }, placeholder: // translators: placeholder text used for the quote Object(external_this_wp_i18n_["__"])('Write quote…'), onReplace: onReplace, onSplit: function onSplit(piece) { return Object(external_this_wp_blocks_["createBlock"])('core/quote', quote_edit_objectSpread({}, attributes, { value: piece })); }, __unstableOnSplitMiddle: function __unstableOnSplitMiddle() { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph'); } }), (!external_this_wp_blockEditor_["RichText"].isEmpty(citation) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { identifier: "citation", value: citation, onChange: function onChange(nextCitation) { return setAttributes({ citation: nextCitation }); }, __unstableMobileNoFocusOnMount: true, placeholder: // translators: placeholder text used for the citation Object(external_this_wp_i18n_["__"])('Write citation…'), className: "wp-block-quote__citation" }))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/save.js /** * External dependencies */ /** * WordPress dependencies */ function quote_save_save(_ref) { var attributes = _ref.attributes; var align = attributes.align, value = attributes.value, citation = attributes.citation; var className = classnames_default()(Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(align), align)); return Object(external_this_wp_element_["createElement"])("blockquote", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { multiline: true, value: value }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation })); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__("Ff2n"); // EXTERNAL MODULE: external {"this":["wp","richText"]} var external_this_wp_richText_ = __webpack_require__("qRz9"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/transforms.js function quote_transforms_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function quote_transforms_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { quote_transforms_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { quote_transforms_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ var quote_transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['core/paragraph'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/quote', { value: Object(external_this_wp_richText_["toHTMLString"])({ value: Object(external_this_wp_richText_["join"])(attributes.map(function (_ref) { var content = _ref.content; return Object(external_this_wp_richText_["create"])({ html: content }); }), "\u2028"), multilineTag: 'p' }) }); } }, { type: 'block', blocks: ['core/heading'], transform: function transform(_ref2) { var content = _ref2.content; return Object(external_this_wp_blocks_["createBlock"])('core/quote', { value: "

    ".concat(content, "

    ") }); } }, { type: 'block', blocks: ['core/pullquote'], transform: function transform(_ref3) { var value = _ref3.value, citation = _ref3.citation; return Object(external_this_wp_blocks_["createBlock"])('core/quote', { value: value, citation: citation }); } }, { type: 'prefix', prefix: '>', transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])('core/quote', { value: "

    ".concat(content, "

    ") }); } }, { type: 'raw', isMatch: function isMatch(node) { var isParagraphOrSingleCite = function () { var hasCitation = false; return function (child) { // Child is a paragraph. if (child.nodeName === 'P') { return true; } // Child is a cite and no other cite child exists before it. if (!hasCitation && child.nodeName === 'CITE') { hasCitation = true; return true; } }; }(); return node.nodeName === 'BLOCKQUOTE' && // The quote block can only handle multiline paragraph // content with an optional cite child. Array.from(node.childNodes).every(isParagraphOrSingleCite); }, schema: function schema(_ref4) { var phrasingContentSchema = _ref4.phrasingContentSchema; return { blockquote: { children: { p: { children: phrasingContentSchema }, cite: { children: phrasingContentSchema } } } }; } }], to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(_ref5) { var value = _ref5.value, citation = _ref5.citation; var paragraphs = []; if (value && value !== '

    ') { paragraphs.push.apply(paragraphs, Object(toConsumableArray["a" /* default */])(Object(external_this_wp_richText_["split"])(Object(external_this_wp_richText_["create"])({ html: value, multilineTag: 'p' }), "\u2028").map(function (piece) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: Object(external_this_wp_richText_["toHTMLString"])({ value: piece }) }); }))); } if (citation && citation !== '

    ') { paragraphs.push(Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: citation })); } if (paragraphs.length === 0) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: '' }); } return paragraphs; } }, { type: 'block', blocks: ['core/heading'], transform: function transform(_ref6) { var value = _ref6.value, citation = _ref6.citation, attrs = Object(objectWithoutProperties["a" /* default */])(_ref6, ["value", "citation"]); // If there is no quote content, use the citation as the // content of the resulting heading. A nonexistent citation // will result in an empty heading. if (value === '

    ') { return Object(external_this_wp_blocks_["createBlock"])('core/heading', { content: citation }); } var pieces = Object(external_this_wp_richText_["split"])(Object(external_this_wp_richText_["create"])({ html: value, multilineTag: 'p' }), "\u2028"); var headingBlock = Object(external_this_wp_blocks_["createBlock"])('core/heading', { content: Object(external_this_wp_richText_["toHTMLString"])({ value: pieces[0] }) }); if (!citation && pieces.length === 1) { return headingBlock; } var quotePieces = pieces.slice(1); var quoteBlock = Object(external_this_wp_blocks_["createBlock"])('core/quote', quote_transforms_objectSpread({}, attrs, { citation: citation, value: Object(external_this_wp_richText_["toHTMLString"])({ value: quotePieces.length ? Object(external_this_wp_richText_["join"])(pieces.slice(1), "\u2028") : Object(external_this_wp_richText_["create"])(), multilineTag: 'p' }) })); return [headingBlock, quoteBlock]; } }, { type: 'block', blocks: ['core/pullquote'], transform: function transform(_ref7) { var value = _ref7.value, citation = _ref7.citation; return Object(external_this_wp_blocks_["createBlock"])('core/pullquote', { value: value, citation: citation }); } }] }; /* harmony default export */ var quote_transforms = (quote_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/index.js function quote_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function quote_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { quote_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { quote_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ var quote_metadata = { name: "core/quote", category: "common", attributes: { value: { type: "string", source: "html", selector: "blockquote", multiline: "p", "default": "" }, citation: { type: "string", source: "html", selector: "cite", "default": "" }, align: { type: "string" } } }; var quote_name = quote_metadata.name; var quote_settings = { title: Object(external_this_wp_i18n_["__"])('Quote'), description: Object(external_this_wp_i18n_["__"])('Give quoted text visual emphasis. "In quoting others, we cite ourselves." — Julio Cortázar'), icon: library_quote, keywords: [Object(external_this_wp_i18n_["__"])('blockquote'), Object(external_this_wp_i18n_["__"])('cite')], example: { attributes: { value: '

    ' + Object(external_this_wp_i18n_["__"])('In quoting others, we cite ourselves.') + '

    ', citation: 'Julio Cortázar', className: 'is-style-large' } }, styles: [{ name: 'default', label: Object(external_this_wp_i18n_["_x"])('Default', 'block style'), isDefault: true }, { name: 'large', label: Object(external_this_wp_i18n_["_x"])('Large', 'block style') }], transforms: quote_transforms, edit: QuoteEdit, save: quote_save_save, merge: function merge(attributes, _ref) { var value = _ref.value, citation = _ref.citation; // Quote citations cannot be merged. Pick the second one unless it's // empty. if (!citation) { citation = attributes.citation; } if (!value || value === '

    ') { return quote_objectSpread({}, attributes, { citation: citation }); } return quote_objectSpread({}, attributes, { value: attributes.value + value, citation: citation }); }, deprecated: quote_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/gallery.js /** * WordPress dependencies */ var gallery = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20 4v12H8V4h12m0-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm-8.5 9.67l1.69 2.26 2.48-3.1L19 15H9zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z" })); /* harmony default export */ var library_gallery = (gallery); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/shared.js /** * External dependencies */ function defaultColumnsNumber(attributes) { return Math.min(3, attributes.images.length); } var shared_pickRelevantMediaFiles = function pickRelevantMediaFiles(image) { var sizeSlug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'large'; var imageProps = Object(external_this_lodash_["pick"])(image, ['alt', 'id', 'link', 'caption']); imageProps.url = Object(external_this_lodash_["get"])(image, ['sizes', sizeSlug, 'url']) || Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', sizeSlug, 'source_url']) || image.url; var fullUrl = Object(external_this_lodash_["get"])(image, ['sizes', 'full', 'url']) || Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', 'full', 'source_url']); if (fullUrl) { imageProps.fullUrl = fullUrl; } return imageProps; }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/deprecated.js function gallery_deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function gallery_deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { gallery_deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { gallery_deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var gallery_deprecated_deprecated = [{ attributes: { images: { type: 'array', default: [], source: 'query', selector: '.blocks-gallery-item', query: { url: { source: 'attribute', selector: 'img', attribute: 'src' }, fullUrl: { source: 'attribute', selector: 'img', attribute: 'data-full-url' }, link: { source: 'attribute', selector: 'img', attribute: 'data-link' }, alt: { source: 'attribute', selector: 'img', attribute: 'alt', default: '' }, id: { source: 'attribute', selector: 'img', attribute: 'data-id' }, caption: { type: 'string', source: 'html', selector: '.blocks-gallery-item__caption' } } }, ids: { type: 'array', default: [] }, columns: { type: 'number' }, caption: { type: 'string', source: 'html', selector: '.blocks-gallery-caption' }, imageCrop: { type: 'boolean', default: true }, linkTo: { type: 'string', default: 'none' } }, supports: { align: true }, isEligible: function isEligible(_ref) { var ids = _ref.ids; return ids && ids.some(function (id) { return typeof id === 'string'; }); }, migrate: function migrate(attributes) { return gallery_deprecated_objectSpread({}, attributes, { ids: Object(external_this_lodash_["map"])(attributes.ids, function (id) { var parsedId = parseInt(id, 10); return Number.isInteger(parsedId) ? parsedId : null; }) }); }, save: function save(_ref2) { var attributes = _ref2.attributes; var images = attributes.images, _attributes$columns = attributes.columns, columns = _attributes$columns === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns, imageCrop = attributes.imageCrop, caption = attributes.caption, linkTo = attributes.linkTo; return Object(external_this_wp_element_["createElement"])("figure", { className: "columns-".concat(columns, " ").concat(imageCrop ? 'is-cropped' : '') }, Object(external_this_wp_element_["createElement"])("ul", { className: "blocks-gallery-grid" }, images.map(function (image) { var href; switch (linkTo) { case 'media': href = image.fullUrl || image.url; break; case 'attachment': href = image.link; break; } var img = Object(external_this_wp_element_["createElement"])("img", { src: image.url, alt: image.alt, "data-id": image.id, "data-full-url": image.fullUrl, "data-link": image.link, className: image.id ? "wp-image-".concat(image.id) : null }); return Object(external_this_wp_element_["createElement"])("li", { key: image.id || image.url, className: "blocks-gallery-item" }, Object(external_this_wp_element_["createElement"])("figure", null, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img, !external_this_wp_blockEditor_["RichText"].isEmpty(image.caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", className: "blocks-gallery-item__caption", value: image.caption }))); })), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", className: "blocks-gallery-caption", value: caption })); } }, { attributes: { images: { type: 'array', default: [], source: 'query', selector: 'ul.wp-block-gallery .blocks-gallery-item', query: { url: { source: 'attribute', selector: 'img', attribute: 'src' }, fullUrl: { source: 'attribute', selector: 'img', attribute: 'data-full-url' }, alt: { source: 'attribute', selector: 'img', attribute: 'alt', default: '' }, id: { source: 'attribute', selector: 'img', attribute: 'data-id' }, link: { source: 'attribute', selector: 'img', attribute: 'data-link' }, caption: { type: 'array', source: 'children', selector: 'figcaption' } } }, ids: { type: 'array', default: [] }, columns: { type: 'number' }, imageCrop: { type: 'boolean', default: true }, linkTo: { type: 'string', default: 'none' } }, supports: { align: true }, save: function save(_ref3) { var attributes = _ref3.attributes; var images = attributes.images, _attributes$columns2 = attributes.columns, columns = _attributes$columns2 === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns2, imageCrop = attributes.imageCrop, linkTo = attributes.linkTo; return Object(external_this_wp_element_["createElement"])("ul", { className: "columns-".concat(columns, " ").concat(imageCrop ? 'is-cropped' : '') }, images.map(function (image) { var href; switch (linkTo) { case 'media': href = image.fullUrl || image.url; break; case 'attachment': href = image.link; break; } var img = Object(external_this_wp_element_["createElement"])("img", { src: image.url, alt: image.alt, "data-id": image.id, "data-full-url": image.fullUrl, "data-link": image.link, className: image.id ? "wp-image-".concat(image.id) : null }); return Object(external_this_wp_element_["createElement"])("li", { key: image.id || image.url, className: "blocks-gallery-item" }, Object(external_this_wp_element_["createElement"])("figure", null, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img, image.caption && image.caption.length > 0 && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: image.caption }))); })); } }, { attributes: { images: { type: 'array', default: [], source: 'query', selector: 'ul.wp-block-gallery .blocks-gallery-item', query: { url: { source: 'attribute', selector: 'img', attribute: 'src' }, alt: { source: 'attribute', selector: 'img', attribute: 'alt', default: '' }, id: { source: 'attribute', selector: 'img', attribute: 'data-id' }, link: { source: 'attribute', selector: 'img', attribute: 'data-link' }, caption: { type: 'array', source: 'children', selector: 'figcaption' } } }, columns: { type: 'number' }, imageCrop: { type: 'boolean', default: true }, linkTo: { type: 'string', default: 'none' } }, isEligible: function isEligible(_ref4) { var images = _ref4.images, ids = _ref4.ids; return images && images.length > 0 && (!ids && images || ids && images && ids.length !== images.length || Object(external_this_lodash_["some"])(images, function (id, index) { if (!id && ids[index] !== null) { return true; } return parseInt(id, 10) !== ids[index]; })); }, migrate: function migrate(attributes) { return gallery_deprecated_objectSpread({}, attributes, { ids: Object(external_this_lodash_["map"])(attributes.images, function (_ref5) { var id = _ref5.id; if (!id) { return null; } return parseInt(id, 10); }) }); }, supports: { align: true }, save: function save(_ref6) { var attributes = _ref6.attributes; var images = attributes.images, _attributes$columns3 = attributes.columns, columns = _attributes$columns3 === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns3, imageCrop = attributes.imageCrop, linkTo = attributes.linkTo; return Object(external_this_wp_element_["createElement"])("ul", { className: "columns-".concat(columns, " ").concat(imageCrop ? 'is-cropped' : '') }, images.map(function (image) { var href; switch (linkTo) { case 'media': href = image.url; break; case 'attachment': href = image.link; break; } var img = Object(external_this_wp_element_["createElement"])("img", { src: image.url, alt: image.alt, "data-id": image.id, "data-link": image.link, className: image.id ? "wp-image-".concat(image.id) : null }); return Object(external_this_wp_element_["createElement"])("li", { key: image.id || image.url, className: "blocks-gallery-item" }, Object(external_this_wp_element_["createElement"])("figure", null, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img, image.caption && image.caption.length > 0 && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: image.caption }))); })); } }, { attributes: { images: { type: 'array', default: [], source: 'query', selector: 'div.wp-block-gallery figure.blocks-gallery-image img', query: { url: { source: 'attribute', attribute: 'src' }, alt: { source: 'attribute', attribute: 'alt', default: '' }, id: { source: 'attribute', attribute: 'data-id' } } }, columns: { type: 'number' }, imageCrop: { type: 'boolean', default: true }, linkTo: { type: 'string', default: 'none' }, align: { type: 'string', default: 'none' } }, supports: { align: true }, save: function save(_ref7) { var attributes = _ref7.attributes; var images = attributes.images, _attributes$columns4 = attributes.columns, columns = _attributes$columns4 === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns4, align = attributes.align, imageCrop = attributes.imageCrop, linkTo = attributes.linkTo; var className = classnames_default()("columns-".concat(columns), { alignnone: align === 'none', 'is-cropped': imageCrop }); return Object(external_this_wp_element_["createElement"])("div", { className: className }, images.map(function (image) { var href; switch (linkTo) { case 'media': href = image.url; break; case 'attachment': href = image.link; break; } var img = Object(external_this_wp_element_["createElement"])("img", { src: image.url, alt: image.alt, "data-id": image.id }); return Object(external_this_wp_element_["createElement"])("figure", { key: image.id || image.url, className: "blocks-gallery-image" }, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img); })); } }]; /* harmony default export */ var gallery_deprecated = (gallery_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/shared-icon.js /** * WordPress dependencies */ var sharedIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_gallery }); // EXTERNAL MODULE: external {"this":["wp","keycodes"]} var external_this_wp_keycodes_ = __webpack_require__("RxS6"); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close.js var library_close = __webpack_require__("w95h"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/icons.js /** * WordPress dependencies */ var leftArrow = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "18", height: "18", viewBox: "0 0 18 18", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M5 8.70002L10.6 14.4L12 12.9L7.8 8.70002L12 4.50002L10.6 3.00002L5 8.70002Z" })); var rightArrow = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "18", height: "18", viewBox: "0 0 18 18", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M13 8.7L7.4 3L6 4.5L10.2 8.7L6 12.9L7.4 14.4L13 8.7Z" })); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/gallery-image.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var gallery_image_GalleryImage = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(GalleryImage, _Component); function GalleryImage() { var _this; Object(classCallCheck["a" /* default */])(this, GalleryImage); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(GalleryImage).apply(this, arguments)); _this.onSelectImage = _this.onSelectImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectCaption = _this.onSelectCaption.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onRemoveImage = _this.onRemoveImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { captionSelected: false }; return _this; } Object(createClass["a" /* default */])(GalleryImage, [{ key: "bindContainer", value: function bindContainer(ref) { this.container = ref; } }, { key: "onSelectCaption", value: function onSelectCaption() { if (!this.state.captionSelected) { this.setState({ captionSelected: true }); } if (!this.props.isSelected) { this.props.onSelect(); } } }, { key: "onSelectImage", value: function onSelectImage() { if (!this.props.isSelected) { this.props.onSelect(); } if (this.state.captionSelected) { this.setState({ captionSelected: false }); } } }, { key: "onRemoveImage", value: function onRemoveImage(event) { if (this.container === document.activeElement && this.props.isSelected && [external_this_wp_keycodes_["BACKSPACE"], external_this_wp_keycodes_["DELETE"]].indexOf(event.keyCode) !== -1) { event.stopPropagation(); event.preventDefault(); this.props.onRemove(); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _this$props = this.props, isSelected = _this$props.isSelected, image = _this$props.image, url = _this$props.url, __unstableMarkNextChangeAsNotPersistent = _this$props.__unstableMarkNextChangeAsNotPersistent; if (image && !url) { __unstableMarkNextChangeAsNotPersistent(); this.props.setAttributes({ url: image.source_url, alt: image.alt_text }); } // unselect the caption so when the user selects other image and comeback // the caption is not immediately selected if (this.state.captionSelected && !isSelected && prevProps.isSelected) { this.setState({ captionSelected: false }); } } }, { key: "render", value: function render() { var _this$props2 = this.props, url = _this$props2.url, alt = _this$props2.alt, id = _this$props2.id, linkTo = _this$props2.linkTo, link = _this$props2.link, isFirstItem = _this$props2.isFirstItem, isLastItem = _this$props2.isLastItem, isSelected = _this$props2.isSelected, caption = _this$props2.caption, onRemove = _this$props2.onRemove, onMoveForward = _this$props2.onMoveForward, onMoveBackward = _this$props2.onMoveBackward, setAttributes = _this$props2.setAttributes, ariaLabel = _this$props2['aria-label']; var href; switch (linkTo) { case 'media': href = url; break; case 'attachment': href = link; break; } var img = // Disable reason: Image itself is not meant to be interactive, but should // direct image selection and unfocus caption fields. /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */ Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("img", { src: url, alt: alt, "data-id": id, onClick: this.onSelectImage, onFocus: this.onSelectImage, onKeyDown: this.onRemoveImage, tabIndex: "0", "aria-label": ariaLabel, ref: this.bindContainer }), Object(external_this_wp_blob_["isBlobURL"])(url) && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null)) /* eslint-enable jsx-a11y/no-noninteractive-element-interactions */ ; var className = classnames_default()({ 'is-selected': isSelected, 'is-transient': Object(external_this_wp_blob_["isBlobURL"])(url) }); return Object(external_this_wp_element_["createElement"])("figure", { className: className }, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img, Object(external_this_wp_element_["createElement"])("div", { className: "block-library-gallery-item__move-menu" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: leftArrow, onClick: isFirstItem ? undefined : onMoveBackward, className: "blocks-gallery-item__move-backward", label: Object(external_this_wp_i18n_["__"])('Move image backward'), "aria-disabled": isFirstItem, disabled: !isSelected }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: rightArrow, onClick: isLastItem ? undefined : onMoveForward, className: "blocks-gallery-item__move-forward", label: Object(external_this_wp_i18n_["__"])('Move image forward'), "aria-disabled": isLastItem, disabled: !isSelected })), Object(external_this_wp_element_["createElement"])("div", { className: "block-library-gallery-item__inline-menu" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: library_close["a" /* default */], onClick: onRemove, className: "blocks-gallery-item__remove", label: Object(external_this_wp_i18n_["__"])('Remove image'), disabled: !isSelected })), (isSelected || caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: isSelected ? Object(external_this_wp_i18n_["__"])('Write caption…') : null, value: caption, isSelected: this.state.captionSelected, onChange: function onChange(newCaption) { return setAttributes({ caption: newCaption }); }, unstableOnFocus: this.onSelectCaption, inlineToolbar: true })); } }]); return GalleryImage; }(external_this_wp_element_["Component"]); /* harmony default export */ var gallery_image = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, ownProps) { var _select = select('core'), getMedia = _select.getMedia; var id = ownProps.id; return { image: id ? getMedia(id) : null }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), __unstableMarkNextChangeAsNotPersistent = _dispatch.__unstableMarkNextChangeAsNotPersistent; return { __unstableMarkNextChangeAsNotPersistent: __unstableMarkNextChangeAsNotPersistent }; })])(gallery_image_GalleryImage)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/gallery.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var gallery_Gallery = function Gallery(props) { var _classnames; var attributes = props.attributes, className = props.className, isSelected = props.isSelected, setAttributes = props.setAttributes, selectedImage = props.selectedImage, mediaPlaceholder = props.mediaPlaceholder, onMoveBackward = props.onMoveBackward, onMoveForward = props.onMoveForward, onRemoveImage = props.onRemoveImage, onSelectImage = props.onSelectImage, onSetImageAttributes = props.onSetImageAttributes, onFocusGalleryCaption = props.onFocusGalleryCaption; var align = attributes.align, _attributes$columns = attributes.columns, columns = _attributes$columns === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns, caption = attributes.caption, imageCrop = attributes.imageCrop, images = attributes.images; var captionClassNames = classnames_default()('blocks-gallery-caption', { 'screen-reader-text': !isSelected && external_this_wp_blockEditor_["RichText"].isEmpty(caption) }); return Object(external_this_wp_element_["createElement"])("figure", { className: classnames_default()(className, (_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, "align".concat(align), align), Object(defineProperty["a" /* default */])(_classnames, "columns-".concat(columns), columns), Object(defineProperty["a" /* default */])(_classnames, 'is-cropped', imageCrop), _classnames)) }, Object(external_this_wp_element_["createElement"])("ul", { className: "blocks-gallery-grid" }, images.map(function (img, index) { /* translators: %1$d is the order number of the image, %2$d is the total number of images. */ var ariaLabel = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('image %1$d of %2$d in gallery'), index + 1, images.length); return Object(external_this_wp_element_["createElement"])("li", { className: "blocks-gallery-item", key: img.id || img.url }, Object(external_this_wp_element_["createElement"])(gallery_image, { url: img.url, alt: img.alt, id: img.id, isFirstItem: index === 0, isLastItem: index + 1 === images.length, isSelected: isSelected && selectedImage === index, onMoveBackward: onMoveBackward(index), onMoveForward: onMoveForward(index), onRemove: onRemoveImage(index), onSelect: onSelectImage(index), setAttributes: function setAttributes(attrs) { return onSetImageAttributes(index, attrs); }, caption: img.caption, "aria-label": ariaLabel })); })), mediaPlaceholder, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", className: captionClassNames, placeholder: Object(external_this_wp_i18n_["__"])('Write gallery caption…'), value: caption, unstableOnFocus: onFocusGalleryCaption, onChange: function onChange(value) { return setAttributes({ caption: value }); }, inlineToolbar: true })); }; /* harmony default export */ var gallery_gallery = (gallery_Gallery); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/edit.js function gallery_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function gallery_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { gallery_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { gallery_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var MAX_COLUMNS = 8; var linkOptions = [{ value: 'attachment', label: Object(external_this_wp_i18n_["__"])('Attachment Page') }, { value: 'media', label: Object(external_this_wp_i18n_["__"])('Media File') }, { value: 'none', label: Object(external_this_wp_i18n_["__"])('None') }]; var edit_ALLOWED_MEDIA_TYPES = ['image']; var PLACEHOLDER_TEXT = external_this_wp_element_["Platform"].select({ web: Object(external_this_wp_i18n_["__"])('Drag images, upload new ones or select files from your library.'), native: Object(external_this_wp_i18n_["__"])('ADD MEDIA') }); // currently this is needed for consistent controls UI on mobile // this can be removed after control components settle on consistent defaults var MOBILE_CONTROL_PROPS = external_this_wp_element_["Platform"].select({ web: {}, native: { separatorType: 'fullWidth' } }); var MOBILE_CONTROL_PROPS_SEPARATOR_NONE = external_this_wp_element_["Platform"].select({ web: {}, native: { separatorType: 'none' } }); var edit_GalleryEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(GalleryEdit, _Component); function GalleryEdit() { var _this; Object(classCallCheck["a" /* default */])(this, GalleryEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(GalleryEdit).apply(this, arguments)); _this.onSelectImage = _this.onSelectImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectImages = _this.onSelectImages.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setLinkTo = _this.setLinkTo.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setColumnsNumber = _this.setColumnsNumber.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.toggleImageCrop = _this.toggleImageCrop.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onMove = _this.onMove.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onMoveForward = _this.onMoveForward.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onMoveBackward = _this.onMoveBackward.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onRemoveImage = _this.onRemoveImage.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setImageAttributes = _this.setImageAttributes.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setAttributes = _this.setAttributes.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onFocusGalleryCaption = _this.onFocusGalleryCaption.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getImagesSizeOptions = _this.getImagesSizeOptions.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.updateImagesSize = _this.updateImagesSize.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { selectedImage: null, attachmentCaptions: null }; return _this; } Object(createClass["a" /* default */])(GalleryEdit, [{ key: "setAttributes", value: function setAttributes(attributes) { if (attributes.ids) { throw new Error('The "ids" attribute should not be changed directly. It is managed automatically when "images" attribute changes'); } if (attributes.images) { attributes = gallery_edit_objectSpread({}, attributes, { ids: Object(external_this_lodash_["map"])(attributes.images, 'id') }); } this.props.setAttributes(attributes); } }, { key: "onSelectImage", value: function onSelectImage(index) { var _this2 = this; return function () { if (_this2.state.selectedImage !== index) { _this2.setState({ selectedImage: index }); } }; } }, { key: "onMove", value: function onMove(oldIndex, newIndex) { var images = Object(toConsumableArray["a" /* default */])(this.props.attributes.images); images.splice(newIndex, 1, this.props.attributes.images[oldIndex]); images.splice(oldIndex, 1, this.props.attributes.images[newIndex]); this.setState({ selectedImage: newIndex }); this.setAttributes({ images: images }); } }, { key: "onMoveForward", value: function onMoveForward(oldIndex) { var _this3 = this; return function () { if (oldIndex === _this3.props.attributes.images.length - 1) { return; } _this3.onMove(oldIndex, oldIndex + 1); }; } }, { key: "onMoveBackward", value: function onMoveBackward(oldIndex) { var _this4 = this; return function () { if (oldIndex === 0) { return; } _this4.onMove(oldIndex, oldIndex - 1); }; } }, { key: "onRemoveImage", value: function onRemoveImage(index) { var _this5 = this; return function () { var images = Object(external_this_lodash_["filter"])(_this5.props.attributes.images, function (img, i) { return index !== i; }); var columns = _this5.props.attributes.columns; _this5.setState({ selectedImage: null }); _this5.setAttributes({ images: images, columns: columns ? Math.min(images.length, columns) : columns }); }; } }, { key: "selectCaption", value: function selectCaption(newImage, images, attachmentCaptions) { var currentImage = Object(external_this_lodash_["find"])(images, { id: newImage.id }); var currentImageCaption = currentImage ? currentImage.caption : newImage.caption; if (!attachmentCaptions) { return currentImageCaption; } var attachment = Object(external_this_lodash_["find"])(attachmentCaptions, { id: newImage.id }); // if the attachment caption is updated if (attachment && attachment.caption !== newImage.caption) { return newImage.caption; } return currentImageCaption; } }, { key: "onSelectImages", value: function onSelectImages(newImages) { var _this6 = this; var _this$props$attribute = this.props.attributes, columns = _this$props$attribute.columns, images = _this$props$attribute.images, sizeSlug = _this$props$attribute.sizeSlug; var attachmentCaptions = this.state.attachmentCaptions; this.setState({ attachmentCaptions: newImages.map(function (newImage) { return { id: newImage.id, caption: newImage.caption }; }) }); this.setAttributes({ images: newImages.map(function (newImage) { return gallery_edit_objectSpread({}, shared_pickRelevantMediaFiles(newImage, sizeSlug), { caption: _this6.selectCaption(newImage, images, attachmentCaptions) }); }), columns: columns ? Math.min(newImages.length, columns) : columns }); } }, { key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "setLinkTo", value: function setLinkTo(value) { this.setAttributes({ linkTo: value }); } }, { key: "setColumnsNumber", value: function setColumnsNumber(value) { this.setAttributes({ columns: value }); } }, { key: "toggleImageCrop", value: function toggleImageCrop() { this.setAttributes({ imageCrop: !this.props.attributes.imageCrop }); } }, { key: "getImageCropHelp", value: function getImageCropHelp(checked) { return checked ? Object(external_this_wp_i18n_["__"])('Thumbnails are cropped to align.') : Object(external_this_wp_i18n_["__"])('Thumbnails are not cropped.'); } }, { key: "onFocusGalleryCaption", value: function onFocusGalleryCaption() { this.setState({ selectedImage: null }); } }, { key: "setImageAttributes", value: function setImageAttributes(index, attributes) { var images = this.props.attributes.images; var setAttributes = this.setAttributes; if (!images[index]) { return; } setAttributes({ images: [].concat(Object(toConsumableArray["a" /* default */])(images.slice(0, index)), [gallery_edit_objectSpread({}, images[index], {}, attributes)], Object(toConsumableArray["a" /* default */])(images.slice(index + 1))) }); } }, { key: "getImagesSizeOptions", value: function getImagesSizeOptions() { var _this$props = this.props, imageSizes = _this$props.imageSizes, resizedImages = _this$props.resizedImages; return Object(external_this_lodash_["map"])(Object(external_this_lodash_["filter"])(imageSizes, function (_ref) { var slug = _ref.slug; return Object(external_this_lodash_["some"])(resizedImages, function (sizes) { return sizes[slug]; }); }), function (_ref2) { var name = _ref2.name, slug = _ref2.slug; return { value: slug, label: name }; }); } }, { key: "updateImagesSize", value: function updateImagesSize(sizeSlug) { var _this$props2 = this.props, images = _this$props2.attributes.images, resizedImages = _this$props2.resizedImages; var updatedImages = Object(external_this_lodash_["map"])(images, function (image) { if (!image.id) { return image; } var url = Object(external_this_lodash_["get"])(resizedImages, [parseInt(image.id, 10), sizeSlug]); return gallery_edit_objectSpread({}, image, {}, url && { url: url }); }); this.setAttributes({ images: updatedImages, sizeSlug: sizeSlug }); } }, { key: "componentDidMount", value: function componentDidMount() { var _this$props3 = this.props, attributes = _this$props3.attributes, mediaUpload = _this$props3.mediaUpload; var images = attributes.images; if (external_this_wp_element_["Platform"].OS === 'web' && images && images.length > 0 && Object(external_this_lodash_["every"])(images, function (_ref3) { var url = _ref3.url; return Object(external_this_wp_blob_["isBlobURL"])(url); })) { var filesList = Object(external_this_lodash_["map"])(images, function (_ref4) { var url = _ref4.url; return Object(external_this_wp_blob_["getBlobByURL"])(url); }); Object(external_this_lodash_["forEach"])(images, function (_ref5) { var url = _ref5.url; return Object(external_this_wp_blob_["revokeBlobURL"])(url); }); mediaUpload({ filesList: filesList, onFileChange: this.onSelectImages, allowedTypes: ['image'] }); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { // Deselect images when deselecting the block if (!this.props.isSelected && prevProps.isSelected) { this.setState({ selectedImage: null, captionSelected: false }); } } }, { key: "render", value: function render() { var _this$props4 = this.props, attributes = _this$props4.attributes, className = _this$props4.className, isSelected = _this$props4.isSelected, noticeUI = _this$props4.noticeUI; var _attributes$columns = attributes.columns, columns = _attributes$columns === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns, imageCrop = attributes.imageCrop, images = attributes.images, linkTo = attributes.linkTo, sizeSlug = attributes.sizeSlug; var hasImages = !!images.length; var hasImagesWithId = hasImages && Object(external_this_lodash_["some"])(images, function (_ref6) { var id = _ref6.id; return id; }); var mediaPlaceholder = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { addToGallery: hasImagesWithId, isAppender: hasImages, className: className, disableMediaButtons: hasImages && !isSelected, icon: !hasImages && sharedIcon, labels: { title: !hasImages && Object(external_this_wp_i18n_["__"])('Gallery'), instructions: !hasImages && PLACEHOLDER_TEXT }, onSelect: this.onSelectImages, accept: "image/*", allowedTypes: edit_ALLOWED_MEDIA_TYPES, multiple: true, value: hasImagesWithId ? images : undefined, onError: this.onUploadError, notices: hasImages ? undefined : noticeUI, onFocus: this.props.onFocus }); if (!hasImages) { return mediaPlaceholder; } var imageSizeOptions = this.getImagesSizeOptions(); var shouldShowSizeOptions = hasImages && !Object(external_this_lodash_["isEmpty"])(imageSizeOptions); // This is needed to fix a separator fence-post issue on mobile. var mobileLinkToProps = shouldShowSizeOptions ? MOBILE_CONTROL_PROPS : MOBILE_CONTROL_PROPS_SEPARATOR_NONE; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Gallery settings') }, images.length > 1 && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], Object(esm_extends["a" /* default */])({ label: Object(external_this_wp_i18n_["__"])('Columns') }, MOBILE_CONTROL_PROPS, { value: columns, onChange: this.setColumnsNumber, min: 1, max: Math.min(MAX_COLUMNS, images.length), required: true })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], Object(esm_extends["a" /* default */])({ label: Object(external_this_wp_i18n_["__"])('Crop images') }, MOBILE_CONTROL_PROPS, { checked: !!imageCrop, onChange: this.toggleImageCrop, help: this.getImageCropHelp })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], Object(esm_extends["a" /* default */])({ label: Object(external_this_wp_i18n_["__"])('Link to') }, mobileLinkToProps, { value: linkTo, onChange: this.setLinkTo, options: linkOptions })), shouldShowSizeOptions && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], Object(esm_extends["a" /* default */])({ label: Object(external_this_wp_i18n_["__"])('Images size') }, MOBILE_CONTROL_PROPS_SEPARATOR_NONE, { value: sizeSlug, options: imageSizeOptions, onChange: this.updateImagesSize })))), noticeUI, Object(external_this_wp_element_["createElement"])(gallery_gallery, Object(esm_extends["a" /* default */])({}, this.props, { selectedImage: this.state.selectedImage, mediaPlaceholder: mediaPlaceholder, onMoveBackward: this.onMoveBackward, onMoveForward: this.onMoveForward, onRemoveImage: this.onRemoveImage, onSelectImage: this.onSelectImage, onSetImageAttributes: this.setImageAttributes, onFocusGalleryCaption: this.onFocusGalleryCaption }))); } }]); return GalleryEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var gallery_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref7) { var ids = _ref7.attributes.ids, isSelected = _ref7.isSelected; var _select = select('core'), getMedia = _select.getMedia; var _select2 = select('core/block-editor'), getSettings = _select2.getSettings; var _getSettings = getSettings(), imageSizes = _getSettings.imageSizes, mediaUpload = _getSettings.mediaUpload; var resizedImages = {}; if (isSelected) { resizedImages = Object(external_this_lodash_["reduce"])(ids, function (currentResizedImages, id) { if (!id) { return currentResizedImages; } var image = getMedia(id); var sizes = Object(external_this_lodash_["reduce"])(imageSizes, function (currentSizes, size) { var defaultUrl = Object(external_this_lodash_["get"])(image, ['sizes', size.slug, 'url']); var mediaDetailsUrl = Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', size.slug, 'source_url']); return gallery_edit_objectSpread({}, currentSizes, Object(defineProperty["a" /* default */])({}, size.slug, defaultUrl || mediaDetailsUrl)); }, {}); return gallery_edit_objectSpread({}, currentResizedImages, Object(defineProperty["a" /* default */])({}, parseInt(id, 10), sizes)); }, {}); } return { imageSizes: imageSizes, mediaUpload: mediaUpload, resizedImages: resizedImages }; }), external_this_wp_components_["withNotices"], Object(external_this_wp_viewport_["withViewportMatch"])({ isNarrow: '< small' })])(edit_GalleryEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/save.js /** * WordPress dependencies */ /** * Internal dependencies */ function gallery_save_save(_ref) { var attributes = _ref.attributes; var images = attributes.images, _attributes$columns = attributes.columns, columns = _attributes$columns === void 0 ? defaultColumnsNumber(attributes) : _attributes$columns, imageCrop = attributes.imageCrop, caption = attributes.caption, linkTo = attributes.linkTo; return Object(external_this_wp_element_["createElement"])("figure", { className: "columns-".concat(columns, " ").concat(imageCrop ? 'is-cropped' : '') }, Object(external_this_wp_element_["createElement"])("ul", { className: "blocks-gallery-grid" }, images.map(function (image) { var href; switch (linkTo) { case 'media': href = image.fullUrl || image.url; break; case 'attachment': href = image.link; break; } var img = Object(external_this_wp_element_["createElement"])("img", { src: image.url, alt: image.alt, "data-id": image.id, "data-full-url": image.fullUrl, "data-link": image.link, className: image.id ? "wp-image-".concat(image.id) : null }); return Object(external_this_wp_element_["createElement"])("li", { key: image.id || image.url, className: "blocks-gallery-item" }, Object(external_this_wp_element_["createElement"])("figure", null, href ? Object(external_this_wp_element_["createElement"])("a", { href: href }, img) : img, !external_this_wp_blockEditor_["RichText"].isEmpty(image.caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", className: "blocks-gallery-item__caption", value: image.caption }))); })), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", className: "blocks-gallery-caption", value: caption })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/transforms.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var parseShortcodeIds = function parseShortcodeIds(ids) { if (!ids) { return []; } return ids.split(',').map(function (id) { return parseInt(id, 10); }); }; var gallery_transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['core/image'], transform: function transform(attributes) { // Init the align and size from the first item which may be either the placeholder or an image. var _attributes$ = attributes[0], align = _attributes$.align, sizeSlug = _attributes$.sizeSlug; // Loop through all the images and check if they have the same align and size. align = Object(external_this_lodash_["every"])(attributes, ['align', align]) ? align : undefined; sizeSlug = Object(external_this_lodash_["every"])(attributes, ['sizeSlug', sizeSlug]) ? sizeSlug : undefined; var validImages = Object(external_this_lodash_["filter"])(attributes, function (_ref) { var url = _ref.url; return url; }); return Object(external_this_wp_blocks_["createBlock"])('core/gallery', { images: validImages.map(function (_ref2) { var id = _ref2.id, url = _ref2.url, alt = _ref2.alt, caption = _ref2.caption; return { id: id, url: url, alt: alt, caption: caption }; }), ids: validImages.map(function (_ref3) { var id = _ref3.id; return id; }), align: align, sizeSlug: sizeSlug }); } }, { type: 'shortcode', tag: 'gallery', attributes: { images: { type: 'array', shortcode: function shortcode(_ref4) { var ids = _ref4.named.ids; return parseShortcodeIds(ids).map(function (id) { return { id: id }; }); } }, ids: { type: 'array', shortcode: function shortcode(_ref5) { var ids = _ref5.named.ids; return parseShortcodeIds(ids); } }, columns: { type: 'number', shortcode: function shortcode(_ref6) { var _ref6$named$columns = _ref6.named.columns, columns = _ref6$named$columns === void 0 ? '3' : _ref6$named$columns; return parseInt(columns, 10); } }, linkTo: { type: 'string', shortcode: function shortcode(_ref7) { var _ref7$named$link = _ref7.named.link, link = _ref7$named$link === void 0 ? 'attachment' : _ref7$named$link; return link === 'file' ? 'media' : link; } } } }, { // When created by drag and dropping multiple files on an insertion point type: 'files', isMatch: function isMatch(files) { return files.length !== 1 && Object(external_this_lodash_["every"])(files, function (file) { return file.type.indexOf('image/') === 0; }); }, transform: function transform(files) { var block = Object(external_this_wp_blocks_["createBlock"])('core/gallery', { images: files.map(function (file) { return shared_pickRelevantMediaFiles({ url: Object(external_this_wp_blob_["createBlobURL"])(file) }); }) }); return block; } }], to: [{ type: 'block', blocks: ['core/image'], transform: function transform(_ref8) { var images = _ref8.images, align = _ref8.align, sizeSlug = _ref8.sizeSlug; if (images.length > 0) { return images.map(function (_ref9) { var id = _ref9.id, url = _ref9.url, alt = _ref9.alt, caption = _ref9.caption; return Object(external_this_wp_blocks_["createBlock"])('core/image', { id: id, url: url, alt: alt, caption: caption, align: align, sizeSlug: sizeSlug }); }); } return Object(external_this_wp_blocks_["createBlock"])('core/image', { align: align }); } }] }; /* harmony default export */ var gallery_transforms = (gallery_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var gallery_metadata = { name: "core/gallery", category: "common", attributes: { images: { type: "array", "default": [], source: "query", selector: ".blocks-gallery-item", query: { url: { source: "attribute", selector: "img", attribute: "src" }, fullUrl: { source: "attribute", selector: "img", attribute: "data-full-url" }, link: { source: "attribute", selector: "img", attribute: "data-link" }, alt: { source: "attribute", selector: "img", attribute: "alt", "default": "" }, id: { source: "attribute", selector: "img", attribute: "data-id" }, caption: { type: "string", source: "html", selector: ".blocks-gallery-item__caption" } } }, ids: { type: "array", items: { type: "number" }, "default": [] }, columns: { type: "number", minimum: 1, maximum: 8 }, caption: { type: "string", source: "html", selector: ".blocks-gallery-caption" }, imageCrop: { type: "boolean", "default": true }, linkTo: { type: "string", "default": "none" }, sizeSlug: { type: "string", "default": "large" } } }; var gallery_name = gallery_metadata.name; var gallery_settings = { title: Object(external_this_wp_i18n_["__"])('Gallery'), description: Object(external_this_wp_i18n_["__"])('Display multiple images in a rich gallery.'), icon: library_gallery, keywords: [Object(external_this_wp_i18n_["__"])('images'), Object(external_this_wp_i18n_["__"])('photos')], example: { attributes: { columns: 2, images: [{ url: 'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg' }, { url: 'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg' }] } }, supports: { align: true }, transforms: gallery_transforms, edit: gallery_edit, save: gallery_save_save, deprecated: gallery_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/archive.js /** * WordPress dependencies */ var archive = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M21 6V20C21 21.1 20.1 22 19 22H5C3.89 22 3 21.1 3 20L3.01 6C3.01 4.9 3.89 4 5 4H6V2H8V4H16V2H18V4H19C20.1 4 21 4.9 21 6ZM5 8H19V6H5V8ZM19 20V10H5V20H19ZM11 12H17V14H11V12ZM17 16H11V18H17V16ZM7 12H9V14H7V12ZM9 18V16H7V18H9Z" })); /* harmony default export */ var library_archive = (archive); // EXTERNAL MODULE: external {"this":["wp","serverSideRender"]} var external_this_wp_serverSideRender_ = __webpack_require__("JREk"); var external_this_wp_serverSideRender_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_serverSideRender_); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/edit.js /** * WordPress dependencies */ function ArchivesEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes; var showPostCounts = attributes.showPostCounts, displayAsDropdown = attributes.displayAsDropdown; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Archives settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display as dropdown'), checked: displayAsDropdown, onChange: function onChange() { return setAttributes({ displayAsDropdown: !displayAsDropdown }); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Show post counts'), checked: showPostCounts, onChange: function onChange() { return setAttributes({ showPostCounts: !showPostCounts }); } }))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_serverSideRender_default.a, { block: "core/archives", attributes: attributes }))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var archives_name = 'core/archives'; var archives_settings = { title: Object(external_this_wp_i18n_["__"])('Archives'), description: Object(external_this_wp_i18n_["__"])('Display a monthly archive of your posts.'), icon: library_archive, category: 'widgets', supports: { align: true, html: false }, edit: ArchivesEdit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/audio.js /** * WordPress dependencies */ var audio = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m12 3l0.01 10.55c-0.59-0.34-1.27-0.55-2-0.55-2.22 0-4.01 1.79-4.01 4s1.79 4 4.01 4 3.99-1.79 3.99-4v-10h4v-4h-6zm-1.99 16c-1.1 0-2-0.9-2-2s0.9-2 2-2 2 0.9 2 2-0.9 2-2 2z" })); /* harmony default export */ var library_audio = (audio); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/deprecated.js /** * WordPress dependencies */ /* harmony default export */ var audio_deprecated = ([{ attributes: { src: { type: 'string', source: 'attribute', selector: 'audio', attribute: 'src' }, caption: { type: 'string', source: 'html', selector: 'figcaption' }, id: { type: 'number' }, autoplay: { type: 'boolean', source: 'attribute', selector: 'audio', attribute: 'autoplay' }, loop: { type: 'boolean', source: 'attribute', selector: 'audio', attribute: 'loop' }, preload: { type: 'string', source: 'attribute', selector: 'audio', attribute: 'preload' } }, supports: { align: true }, save: function save(_ref) { var attributes = _ref.attributes; var autoplay = attributes.autoplay, caption = attributes.caption, loop = attributes.loop, preload = attributes.preload, src = attributes.src; return Object(external_this_wp_element_["createElement"])("figure", null, Object(external_this_wp_element_["createElement"])("audio", { controls: "controls", src: src, autoPlay: autoplay, loop: loop, preload: preload }), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } }]); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/edit.js /** * WordPress dependencies */ /** * Internal dependencies */ var audio_edit_ALLOWED_MEDIA_TYPES = ['audio']; var edit_AudioEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(AudioEdit, _Component); function AudioEdit() { var _this; Object(classCallCheck["a" /* default */])(this, AudioEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(AudioEdit).apply(this, arguments)); _this.toggleAttribute = _this.toggleAttribute.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectURL = _this.onSelectURL.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(AudioEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _this$props = this.props, attributes = _this$props.attributes, mediaUpload = _this$props.mediaUpload, noticeOperations = _this$props.noticeOperations, setAttributes = _this$props.setAttributes; var id = attributes.id, _attributes$src = attributes.src, src = _attributes$src === void 0 ? '' : _attributes$src; if (!id && Object(external_this_wp_blob_["isBlobURL"])(src)) { var file = Object(external_this_wp_blob_["getBlobByURL"])(src); if (file) { mediaUpload({ filesList: [file], onFileChange: function onFileChange(_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 1), _ref2$ = _ref2[0], mediaId = _ref2$.id, url = _ref2$.url; setAttributes({ id: mediaId, src: url }); }, onError: function onError(e) { setAttributes({ src: undefined, id: undefined }); noticeOperations.createErrorNotice(e); }, allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES }); } } } }, { key: "toggleAttribute", value: function toggleAttribute(attribute) { var _this2 = this; return function (newValue) { _this2.props.setAttributes(Object(defineProperty["a" /* default */])({}, attribute, newValue)); }; } }, { key: "onSelectURL", value: function onSelectURL(newSrc) { var _this$props2 = this.props, attributes = _this$props2.attributes, setAttributes = _this$props2.setAttributes; var src = attributes.src; // Set the block's src from the edit component's state, and switch off // the editing UI. if (newSrc !== src) { // Check if there's an embed block that handles this URL. var embedBlock = util_createUpgradedEmbedBlock({ attributes: { url: newSrc } }); if (undefined !== embedBlock) { this.props.onReplace(embedBlock); return; } setAttributes({ src: newSrc, id: undefined }); } } }, { key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "getAutoplayHelp", value: function getAutoplayHelp(checked) { return checked ? Object(external_this_wp_i18n_["__"])('Note: Autoplaying audio may cause usability issues for some visitors.') : null; } }, { key: "render", value: function render() { var _this$props$attribute = this.props.attributes, id = _this$props$attribute.id, autoplay = _this$props$attribute.autoplay, caption = _this$props$attribute.caption, loop = _this$props$attribute.loop, preload = _this$props$attribute.preload, src = _this$props$attribute.src; var _this$props3 = this.props, setAttributes = _this$props3.setAttributes, isSelected = _this$props3.isSelected, className = _this$props3.className, noticeUI = _this$props3.noticeUI; var onSelectAudio = function onSelectAudio(media) { if (!media || !media.url) { // in this case there was an error and we should continue in the editing state // previous attributes should be removed because they may be temporary blob urls setAttributes({ src: undefined, id: undefined }); return; } // sets the block's attribute and updates the edit component from the // selected media, then switches off the editing UI setAttributes({ src: media.url, id: media.id }); }; if (!src) { return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_audio }), className: className, onSelect: onSelectAudio, onSelectURL: this.onSelectURL, accept: "audio/*", allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES, value: this.props.attributes, notices: noticeUI, onError: this.onUploadError }); } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: id, mediaURL: src, allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES, accept: "audio/*", onSelect: onSelectAudio, onSelectURL: this.onSelectURL, onError: this.onUploadError })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Audio settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Autoplay'), onChange: this.toggleAttribute('autoplay'), checked: autoplay, help: this.getAutoplayHelp }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Loop'), onChange: this.toggleAttribute('loop'), checked: loop }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { label: Object(external_this_wp_i18n_["__"])('Preload'), value: undefined !== preload ? preload : 'none' // `undefined` is required for the preload attribute to be unset. , onChange: function onChange(value) { return setAttributes({ preload: 'none' !== value ? value : undefined }); }, options: [{ value: 'auto', label: Object(external_this_wp_i18n_["__"])('Auto') }, { value: 'metadata', label: Object(external_this_wp_i18n_["__"])('Metadata') }, { value: 'none', label: Object(external_this_wp_i18n_["__"])('None') }] }))), Object(external_this_wp_element_["createElement"])("figure", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])("audio", { controls: "controls", src: src })), (!external_this_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: Object(external_this_wp_i18n_["__"])('Write caption…'), value: caption, onChange: function onChange(value) { return setAttributes({ caption: value }); }, inlineToolbar: true }))); } }]); return AudioEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var audio_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getSettings = _select.getSettings; var _getSettings = getSettings(), mediaUpload = _getSettings.mediaUpload; return { mediaUpload: mediaUpload }; }), external_this_wp_components_["withNotices"]])(edit_AudioEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/save.js /** * WordPress dependencies */ function audio_save_save(_ref) { var attributes = _ref.attributes; var autoplay = attributes.autoplay, caption = attributes.caption, loop = attributes.loop, preload = attributes.preload, src = attributes.src; return src && Object(external_this_wp_element_["createElement"])("figure", null, Object(external_this_wp_element_["createElement"])("audio", { controls: "controls", src: src, autoPlay: autoplay, loop: loop, preload: preload }), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/transforms.js /** * WordPress dependencies */ var audio_transforms_transforms = { from: [{ type: 'files', isMatch: function isMatch(files) { return files.length === 1 && files[0].type.indexOf('audio/') === 0; }, transform: function transform(files) { var file = files[0]; // We don't need to upload the media directly here // It's already done as part of the `componentDidMount` // in the audio block var block = Object(external_this_wp_blocks_["createBlock"])('core/audio', { src: Object(external_this_wp_blob_["createBlobURL"])(file) }); return block; } }, { type: 'shortcode', tag: 'audio', attributes: { src: { type: 'string', shortcode: function shortcode(_ref) { var src = _ref.named.src; return src; } }, loop: { type: 'string', shortcode: function shortcode(_ref2) { var loop = _ref2.named.loop; return loop; } }, autoplay: { type: 'string', shortcode: function shortcode(_ref3) { var autoplay = _ref3.named.autoplay; return autoplay; } }, preload: { type: 'string', shortcode: function shortcode(_ref4) { var preload = _ref4.named.preload; return preload; } } } }] }; /* harmony default export */ var audio_transforms = (audio_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var audio_metadata = { name: "core/audio", category: "common", attributes: { src: { type: "string", source: "attribute", selector: "audio", attribute: "src" }, caption: { type: "string", source: "html", selector: "figcaption" }, id: { type: "number" }, autoplay: { type: "boolean", source: "attribute", selector: "audio", attribute: "autoplay" }, loop: { type: "boolean", source: "attribute", selector: "audio", attribute: "loop" }, preload: { type: "string", source: "attribute", selector: "audio", attribute: "preload" } } }; var audio_name = audio_metadata.name; var audio_settings = { title: Object(external_this_wp_i18n_["__"])('Audio'), description: Object(external_this_wp_i18n_["__"])('Embed a simple audio player.'), keywords: [Object(external_this_wp_i18n_["__"])('music'), Object(external_this_wp_i18n_["__"])('sound'), Object(external_this_wp_i18n_["__"])('podcast'), Object(external_this_wp_i18n_["__"])('recording')], icon: library_audio, transforms: audio_transforms, deprecated: audio_deprecated, supports: { align: true }, edit: audio_edit, save: audio_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/button.js /** * WordPress dependencies */ var button_button = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M19 6H5c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 10H5V8h14v8z" })); /* harmony default export */ var library_button = (button_button); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/transforms.js /** * WordPress dependencies */ /** * Internal dependencies */ var buttons_transforms_name$category$attrib = { name: "core/buttons", category: "layout", attributes: {} }, buttons_transforms_name = buttons_transforms_name$category$attrib.name; var buttons_transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['core/button'], transform: function transform(buttons) { return (// Creates the buttons block Object(external_this_wp_blocks_["createBlock"])(buttons_transforms_name, {}, // Loop the selected buttons buttons.map(function (attributes) { return (// Create singular button in the buttons block Object(external_this_wp_blocks_["createBlock"])('core/button', attributes) ); })) ); } }] }; /* harmony default export */ var buttons_transforms = (buttons_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/deprecated.js function button_deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function button_deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { button_deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { button_deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ var deprecated_colorsMigration = function colorsMigration(attributes) { return Object(external_this_lodash_["omit"])(button_deprecated_objectSpread({}, attributes, { customTextColor: attributes.textColor && '#' === attributes.textColor[0] ? attributes.textColor : undefined, customBackgroundColor: attributes.color && '#' === attributes.color[0] ? attributes.color : undefined }), ['color', 'textColor']); }; var button_deprecated_blockAttributes = { url: { type: 'string', source: 'attribute', selector: 'a', attribute: 'href' }, title: { type: 'string', source: 'attribute', selector: 'a', attribute: 'title' }, text: { type: 'string', source: 'html', selector: 'a' } }; var button_deprecated_deprecated = [{ attributes: button_deprecated_objectSpread({}, button_deprecated_blockAttributes, { align: { type: 'string', default: 'none' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' }, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' } }), isEligible: function isEligible(attribute) { return attribute.className && attribute.className.includes('is-style-squared'); }, migrate: function migrate(attributes) { var newClassName = attributes.className; if (newClassName) { newClassName = newClassName.replace(/is-style-squared[\s]?/, '').trim(); } return button_deprecated_objectSpread({}, attributes, { className: newClassName ? newClassName : undefined, borderRadius: 0 }); }, save: function save(_ref) { var _classnames; var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor, linkTarget = attributes.linkTarget, rel = attributes.rel, text = attributes.text, textColor = attributes.textColor, title = attributes.title, url = attributes.url; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var buttonClasses = classnames_default()('wp-block-button__link', (_classnames = { 'has-text-color': textColor || customTextColor }, Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, 'has-background', backgroundColor || customBackgroundColor), Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), _classnames)); var buttonStyle = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } }, { attributes: button_deprecated_objectSpread({}, button_deprecated_blockAttributes, { align: { type: 'string', default: 'none' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' } }), save: function save(_ref2) { var _classnames2; var attributes = _ref2.attributes; var url = attributes.url, text = attributes.text, title = attributes.title, backgroundColor = attributes.backgroundColor, textColor = attributes.textColor, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var buttonClasses = classnames_default()('wp-block-button__link', (_classnames2 = { 'has-text-color': textColor || customTextColor }, Object(defineProperty["a" /* default */])(_classnames2, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames2, 'has-background', backgroundColor || customBackgroundColor), Object(defineProperty["a" /* default */])(_classnames2, backgroundClass, backgroundClass), _classnames2)); var buttonStyle = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text })); }, migrate: deprecated_colorsMigration }, { attributes: button_deprecated_objectSpread({}, button_deprecated_blockAttributes, { color: { type: 'string' }, textColor: { type: 'string' }, align: { type: 'string', default: 'none' } }), save: function save(_ref3) { var attributes = _ref3.attributes; var url = attributes.url, text = attributes.text, title = attributes.title, align = attributes.align, color = attributes.color, textColor = attributes.textColor; var buttonStyle = { backgroundColor: color, color: textColor }; var linkClass = 'wp-block-button__link'; return Object(external_this_wp_element_["createElement"])("div", { className: "align".concat(align) }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "a", className: linkClass, href: url, title: title, style: buttonStyle, value: text })); }, migrate: deprecated_colorsMigration }, { attributes: button_deprecated_objectSpread({}, button_deprecated_blockAttributes, { color: { type: 'string' }, textColor: { type: 'string' }, align: { type: 'string', default: 'none' } }), save: function save(_ref4) { var attributes = _ref4.attributes; var url = attributes.url, text = attributes.text, title = attributes.title, align = attributes.align, color = attributes.color, textColor = attributes.textColor; return Object(external_this_wp_element_["createElement"])("div", { className: "align".concat(align), style: { backgroundColor: color } }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "a", href: url, title: title, style: { color: textColor }, value: text })); }, migrate: deprecated_colorsMigration }]; /* harmony default export */ var button_deprecated = (button_deprecated_deprecated); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link.js var library_link = __webpack_require__("Bpkj"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/edit.js function button_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function button_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { button_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { button_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ var edit_window = window, edit_getComputedStyle = edit_window.getComputedStyle; var applyFallbackStyles = Object(external_this_wp_components_["withFallbackStyles"])(function (node, ownProps) { var textColor = ownProps.textColor, backgroundColor = ownProps.backgroundColor; var backgroundColorValue = backgroundColor && backgroundColor.color; var textColorValue = textColor && textColor.color; //avoid the use of querySelector if textColor color is known and verify if node is available. var textNode = !textColorValue && node ? node.querySelector('[contenteditable="true"]') : null; return { fallbackBackgroundColor: backgroundColorValue || !node ? undefined : edit_getComputedStyle(node).backgroundColor, fallbackTextColor: textColorValue || !textNode ? undefined : edit_getComputedStyle(textNode).color }; }); var edit_NEW_TAB_REL = 'noreferrer noopener'; var MIN_BORDER_RADIUS_VALUE = 0; var MAX_BORDER_RADIUS_VALUE = 50; var INITIAL_BORDER_RADIUS_POSITION = 5; function BorderPanel(_ref) { var _ref$borderRadius = _ref.borderRadius, borderRadius = _ref$borderRadius === void 0 ? '' : _ref$borderRadius, setAttributes = _ref.setAttributes; var setBorderRadius = Object(external_this_wp_element_["useCallback"])(function (newBorderRadius) { setAttributes({ borderRadius: newBorderRadius }); }, [setAttributes]); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Border settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { value: borderRadius, label: Object(external_this_wp_i18n_["__"])('Border radius'), min: MIN_BORDER_RADIUS_VALUE, max: MAX_BORDER_RADIUS_VALUE, initialPosition: INITIAL_BORDER_RADIUS_POSITION, allowReset: true, onChange: setBorderRadius })); } function URLPicker(_ref2) { var isSelected = _ref2.isSelected, url = _ref2.url, setAttributes = _ref2.setAttributes, opensInNewTab = _ref2.opensInNewTab, onToggleOpenInNewTab = _ref2.onToggleOpenInNewTab; var _useState = Object(external_this_wp_element_["useState"])(false), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), isURLPickerOpen = _useState2[0], setIsURLPickerOpen = _useState2[1]; var openLinkControl = function openLinkControl() { setIsURLPickerOpen(true); }; var linkControl = isURLPickerOpen && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Popover"], { position: "bottom center", onClose: function onClose() { return setIsURLPickerOpen(false); } }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalLinkControl"], { className: "wp-block-navigation-link__inline-link-input", value: { url: url, opensInNewTab: opensInNewTab }, onChange: function onChange(_ref3) { var _ref3$url = _ref3.url, newURL = _ref3$url === void 0 ? '' : _ref3$url, newOpensInNewTab = _ref3.opensInNewTab; setAttributes({ url: newURL }); if (opensInNewTab !== newOpensInNewTab) { onToggleOpenInNewTab(newOpensInNewTab); } } })); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarButton"], { name: "link", icon: library_link["a" /* default */], title: Object(external_this_wp_i18n_["__"])('Link'), shortcut: external_this_wp_keycodes_["displayShortcut"].primary('k'), onClick: openLinkControl }))), isSelected && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["KeyboardShortcuts"], { bindGlobal: true, shortcuts: Object(defineProperty["a" /* default */])({}, external_this_wp_keycodes_["rawShortcut"].primary('k'), openLinkControl) }), linkControl); } function ButtonEdit(_ref5) { var _classnames; var attributes = _ref5.attributes, backgroundColor = _ref5.backgroundColor, textColor = _ref5.textColor, setBackgroundColor = _ref5.setBackgroundColor, setTextColor = _ref5.setTextColor, fallbackBackgroundColor = _ref5.fallbackBackgroundColor, fallbackTextColor = _ref5.fallbackTextColor, setAttributes = _ref5.setAttributes, className = _ref5.className, isSelected = _ref5.isSelected; var borderRadius = attributes.borderRadius, linkTarget = attributes.linkTarget, placeholder = attributes.placeholder, rel = attributes.rel, text = attributes.text, url = attributes.url; var onSetLinkRel = Object(external_this_wp_element_["useCallback"])(function (value) { setAttributes({ rel: value }); }, [setAttributes]); var onToggleOpenInNewTab = Object(external_this_wp_element_["useCallback"])(function (value) { var newLinkTarget = value ? '_blank' : undefined; var updatedRel = rel; if (newLinkTarget && !rel) { updatedRel = edit_NEW_TAB_REL; } else if (!newLinkTarget && rel === edit_NEW_TAB_REL) { updatedRel = undefined; } setAttributes({ linkTarget: newLinkTarget, rel: updatedRel }); }, [rel, setAttributes]); var _experimentalUseGrad = Object(external_this_wp_blockEditor_["__experimentalUseGradient"])(), gradientClass = _experimentalUseGrad.gradientClass, gradientValue = _experimentalUseGrad.gradientValue, setGradient = _experimentalUseGrad.setGradient; return Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { placeholder: placeholder || Object(external_this_wp_i18n_["__"])('Add text…'), value: text, onChange: function onChange(value) { return setAttributes({ text: value }); }, withoutInteractiveFormatting: true, className: classnames_default()('wp-block-button__link', (_classnames = { 'has-background': backgroundColor.color || gradientValue }, Object(defineProperty["a" /* default */])(_classnames, backgroundColor.class, !gradientValue && backgroundColor.class), Object(defineProperty["a" /* default */])(_classnames, 'has-text-color', textColor.color), Object(defineProperty["a" /* default */])(_classnames, textColor.class, textColor.class), Object(defineProperty["a" /* default */])(_classnames, gradientClass, gradientClass), Object(defineProperty["a" /* default */])(_classnames, 'no-border-radius', borderRadius === 0), _classnames)), style: button_edit_objectSpread({}, !backgroundColor.color && gradientValue ? { background: gradientValue } : { backgroundColor: backgroundColor.color }, { color: textColor.color, borderRadius: borderRadius ? borderRadius + 'px' : undefined }) }), Object(external_this_wp_element_["createElement"])(URLPicker, { url: url, setAttributes: setAttributes, isSelected: isSelected, opensInNewTab: linkTarget === '_blank', onToggleOpenInNewTab: onToggleOpenInNewTab }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalPanelColorGradientSettings"], { title: Object(external_this_wp_i18n_["__"])('Background & Text Color'), settings: [{ colorValue: textColor.color, onColorChange: setTextColor, label: Object(external_this_wp_i18n_["__"])('Text color') }, { colorValue: backgroundColor.color, onColorChange: setBackgroundColor, gradientValue: gradientValue, onGradientChange: setGradient, label: Object(external_this_wp_i18n_["__"])('Background') }] }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["ContrastChecker"], { // Text is considered large if font size is greater or equal to 18pt or 24px, // currently that's not the case for button. isLargeText: false, textColor: textColor.color, backgroundColor: backgroundColor.color, fallbackBackgroundColor: fallbackBackgroundColor, fallbackTextColor: fallbackTextColor })), Object(external_this_wp_element_["createElement"])(BorderPanel, { borderRadius: borderRadius, setAttributes: setAttributes }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Link settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Open in new tab'), onChange: onToggleOpenInNewTab, checked: linkTarget === '_blank' }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { label: Object(external_this_wp_i18n_["__"])('Link rel'), value: rel || '', onChange: onSetLinkRel })))); } /* harmony default export */ var button_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_blockEditor_["withColors"])('backgroundColor', { textColor: 'color' }), applyFallbackStyles])(ButtonEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/save.js /** * External dependencies */ /** * WordPress dependencies */ function button_save_save(_ref) { var _classnames; var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, borderRadius = attributes.borderRadius, customBackgroundColor = attributes.customBackgroundColor, customTextColor = attributes.customTextColor, customGradient = attributes.customGradient, linkTarget = attributes.linkTarget, gradient = attributes.gradient, rel = attributes.rel, text = attributes.text, textColor = attributes.textColor, title = attributes.title, url = attributes.url; var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var backgroundClass = !customGradient && Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var gradientClass = Object(external_this_wp_blockEditor_["__experimentalGetGradientClass"])(gradient); var buttonClasses = classnames_default()('wp-block-button__link', (_classnames = { 'has-text-color': textColor || customTextColor }, Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, 'has-background', backgroundColor || customBackgroundColor || customGradient || gradient), Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames, 'no-border-radius', borderRadius === 0), Object(defineProperty["a" /* default */])(_classnames, gradientClass, gradientClass), _classnames)); var buttonStyle = { background: customGradient ? customGradient : undefined, backgroundColor: backgroundClass || customGradient || gradient ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor, borderRadius: borderRadius ? borderRadius + 'px' : undefined }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var button_metadata = { name: "core/button", category: "layout", attributes: { url: { type: "string", source: "attribute", selector: "a", attribute: "href" }, title: { type: "string", source: "attribute", selector: "a", attribute: "title" }, text: { type: "string", source: "html", selector: "a" }, backgroundColor: { type: "string" }, textColor: { type: "string" }, customBackgroundColor: { type: "string" }, customTextColor: { type: "string" }, linkTarget: { type: "string", source: "attribute", selector: "a", attribute: "target" }, rel: { type: "string", source: "attribute", selector: "a", attribute: "rel" }, placeholder: { type: "string" }, borderRadius: { type: "number" }, gradient: { type: "string" }, customGradient: { type: "string" } } }; var button_name = button_metadata.name; var button_settings = { title: Object(external_this_wp_i18n_["__"])('Button'), description: Object(external_this_wp_i18n_["__"])('Prompt visitors to take action with a button-style link.'), icon: library_button, keywords: [Object(external_this_wp_i18n_["__"])('link')], example: { attributes: { className: 'is-style-fill', backgroundColor: 'vivid-green-cyan', text: Object(external_this_wp_i18n_["__"])('Call to Action') } }, supports: { align: true, alignWide: false }, parent: ['core/buttons'], styles: [{ name: 'fill', label: Object(external_this_wp_i18n_["__"])('Fill'), isDefault: true }, { name: 'outline', label: Object(external_this_wp_i18n_["__"])('Outline') }], edit: button_edit, save: button_save_save, deprecated: button_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/edit.js /** * WordPress dependencies */ /** * Internal dependencies */ var ALLOWED_BLOCKS = [button_name]; var BUTTONS_TEMPLATE = [['core/button']]; var UI_PARTS = { hasSelectedUI: false }; // Inside buttons block alignment options are not supported. var alignmentHooksSetting = { isEmbedButton: true }; function ButtonsEdit(_ref) { var className = _ref.className; return Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalAlignmentHookSettingsProvider"], { value: alignmentHooksSetting }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { allowedBlocks: ALLOWED_BLOCKS, template: BUTTONS_TEMPLATE, __experimentalUIParts: UI_PARTS, __experimentalMoverDirection: "horizontal" }))); } /* harmony default export */ var buttons_edit = (ButtonsEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/save.js /** * WordPress dependencies */ function buttons_save_save() { return Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var buttons_metadata = { name: "core/buttons", category: "layout", attributes: {} }; var buttons_name = buttons_metadata.name; var buttons_settings = { title: Object(external_this_wp_i18n_["__"])('Buttons'), description: Object(external_this_wp_i18n_["__"])('Prompt visitors to take action with a group of button-style links.'), icon: library_button, keywords: [Object(external_this_wp_i18n_["__"])('link')], supports: { align: true, alignWide: false }, transforms: buttons_transforms, edit: buttons_edit, save: buttons_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/calendar.js /** * WordPress dependencies */ var calendar = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M7 11h2v2H7v-2zm14-5v14c0 1.1-.9 2-2 2H5c-1.11 0-2-.9-2-2l.01-14c0-1.1.88-2 1.99-2h1V2h2v2h8V2h2v2h1c1.1 0 2 .9 2 2zM5 8h14V6H5v2zm14 12V10H5v10h14zm-4-7h2v-2h-2v2zm-4 0h2v-2h-2v2z" })); /* harmony default export */ var library_calendar = (calendar); // EXTERNAL MODULE: external {"this":"moment"} var external_this_moment_ = __webpack_require__("wy2R"); var external_this_moment_default = /*#__PURE__*/__webpack_require__.n(external_this_moment_); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/edit.js function calendar_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function calendar_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { calendar_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { calendar_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ var edit_CalendarEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(CalendarEdit, _Component); function CalendarEdit() { var _this; Object(classCallCheck["a" /* default */])(this, CalendarEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(CalendarEdit).apply(this, arguments)); _this.getYearMonth = memize_default()(_this.getYearMonth.bind(Object(assertThisInitialized["a" /* default */])(_this)), { maxSize: 1 }); _this.getServerSideAttributes = memize_default()(_this.getServerSideAttributes.bind(Object(assertThisInitialized["a" /* default */])(_this)), { maxSize: 1 }); return _this; } Object(createClass["a" /* default */])(CalendarEdit, [{ key: "getYearMonth", value: function getYearMonth(date) { if (!date) { return {}; } var momentDate = external_this_moment_default()(date); return { year: momentDate.year(), month: momentDate.month() + 1 }; } }, { key: "getServerSideAttributes", value: function getServerSideAttributes(attributes, date) { return calendar_edit_objectSpread({}, attributes, {}, this.getYearMonth(date)); } }, { key: "render", value: function render() { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_serverSideRender_default.a, { block: "core/calendar", attributes: this.getServerSideAttributes(this.props.attributes, this.props.date) })); } }]); return CalendarEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var calendar_edit = (Object(external_this_wp_data_["withSelect"])(function (select) { var coreEditorSelect = select('core/editor'); if (!coreEditorSelect) { return; } var getEditedPostAttribute = coreEditorSelect.getEditedPostAttribute; var postType = getEditedPostAttribute('type'); // Dates are used to overwrite year and month used on the calendar. // This overwrite should only happen for 'post' post types. // For other post types the calendar always displays the current month. return { date: postType === 'post' ? getEditedPostAttribute('date') : undefined }; })(edit_CalendarEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var calendar_name = 'core/calendar'; var calendar_settings = { title: Object(external_this_wp_i18n_["__"])('Calendar'), description: Object(external_this_wp_i18n_["__"])('A calendar of your site’s posts.'), icon: library_calendar, category: 'widgets', keywords: [Object(external_this_wp_i18n_["__"])('posts'), Object(external_this_wp_i18n_["__"])('archive')], supports: { align: true }, example: {}, edit: calendar_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/category.js /** * WordPress dependencies */ var category_category = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,2l-5.5,9h11L12,2z M12,5.84L13.93,9h-3.87L12,5.84z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m17.5 13c-2.49 0-4.5 2.01-4.5 4.5s2.01 4.5 4.5 4.5 4.5-2.01 4.5-4.5-2.01-4.5-4.5-4.5zm0 7c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m3 21.5h8v-8h-8v8zm2-6h4v4h-4v-4z" })); /* harmony default export */ var library_category = (category_category); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/edit.js /** * External dependencies */ /** * WordPress dependencies */ var edit_CategoriesEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(CategoriesEdit, _Component); function CategoriesEdit() { var _this; Object(classCallCheck["a" /* default */])(this, CategoriesEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(CategoriesEdit).apply(this, arguments)); _this.toggleDisplayAsDropdown = _this.toggleDisplayAsDropdown.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.toggleShowPostCounts = _this.toggleShowPostCounts.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.toggleShowHierarchy = _this.toggleShowHierarchy.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(CategoriesEdit, [{ key: "toggleDisplayAsDropdown", value: function toggleDisplayAsDropdown() { var _this$props = this.props, attributes = _this$props.attributes, setAttributes = _this$props.setAttributes; var displayAsDropdown = attributes.displayAsDropdown; setAttributes({ displayAsDropdown: !displayAsDropdown }); } }, { key: "toggleShowPostCounts", value: function toggleShowPostCounts() { var _this$props2 = this.props, attributes = _this$props2.attributes, setAttributes = _this$props2.setAttributes; var showPostCounts = attributes.showPostCounts; setAttributes({ showPostCounts: !showPostCounts }); } }, { key: "toggleShowHierarchy", value: function toggleShowHierarchy() { var _this$props3 = this.props, attributes = _this$props3.attributes, setAttributes = _this$props3.setAttributes; var showHierarchy = attributes.showHierarchy; setAttributes({ showHierarchy: !showHierarchy }); } }, { key: "getCategories", value: function getCategories() { var parentId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var categories = this.props.categories; if (!categories || !categories.length) { return []; } if (parentId === null) { return categories; } return categories.filter(function (category) { return category.parent === parentId; }); } }, { key: "getCategoryListClassName", value: function getCategoryListClassName(level) { return "wp-block-categories__list wp-block-categories__list-level-".concat(level); } }, { key: "renderCategoryName", value: function renderCategoryName(category) { if (!category.name) { return Object(external_this_wp_i18n_["__"])('(Untitled)'); } return Object(external_this_lodash_["unescape"])(category.name).trim(); } }, { key: "renderCategoryList", value: function renderCategoryList() { var _this2 = this; var showHierarchy = this.props.attributes.showHierarchy; var parentId = showHierarchy ? 0 : null; var categories = this.getCategories(parentId); return Object(external_this_wp_element_["createElement"])("ul", { className: this.getCategoryListClassName(0) }, categories.map(function (category) { return _this2.renderCategoryListItem(category, 0); })); } }, { key: "renderCategoryListItem", value: function renderCategoryListItem(category, level) { var _this3 = this; var _this$props$attribute = this.props.attributes, showHierarchy = _this$props$attribute.showHierarchy, showPostCounts = _this$props$attribute.showPostCounts; var childCategories = this.getCategories(category.id); return Object(external_this_wp_element_["createElement"])("li", { key: category.id }, Object(external_this_wp_element_["createElement"])("a", { href: category.link, target: "_blank", rel: "noreferrer noopener" }, this.renderCategoryName(category)), showPostCounts && Object(external_this_wp_element_["createElement"])("span", { className: "wp-block-categories__post-count" }, ' ', "(", category.count, ")"), showHierarchy && !!childCategories.length && Object(external_this_wp_element_["createElement"])("ul", { className: this.getCategoryListClassName(level + 1) }, childCategories.map(function (childCategory) { return _this3.renderCategoryListItem(childCategory, level + 1); }))); } }, { key: "renderCategoryDropdown", value: function renderCategoryDropdown() { var _this4 = this; var instanceId = this.props.instanceId; var showHierarchy = this.props.attributes.showHierarchy; var parentId = showHierarchy ? 0 : null; var categories = this.getCategories(parentId); var selectId = "blocks-category-select-".concat(instanceId); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("label", { htmlFor: selectId, className: "screen-reader-text" }, Object(external_this_wp_i18n_["__"])('Categories')), Object(external_this_wp_element_["createElement"])("select", { id: selectId, className: "wp-block-categories__dropdown" }, categories.map(function (category) { return _this4.renderCategoryDropdownItem(category, 0); }))); } }, { key: "renderCategoryDropdownItem", value: function renderCategoryDropdownItem(category, level) { var _this5 = this; var _this$props$attribute2 = this.props.attributes, showHierarchy = _this$props$attribute2.showHierarchy, showPostCounts = _this$props$attribute2.showPostCounts; var childCategories = this.getCategories(category.id); return [Object(external_this_wp_element_["createElement"])("option", { key: category.id }, Object(external_this_lodash_["times"])(level * 3, function () { return '\xa0'; }), this.renderCategoryName(category), !!showPostCounts ? " (".concat(category.count, ")") : ''), showHierarchy && !!childCategories.length && childCategories.map(function (childCategory) { return _this5.renderCategoryDropdownItem(childCategory, level + 1); })]; } }, { key: "render", value: function render() { var _this$props4 = this.props, attributes = _this$props4.attributes, isRequesting = _this$props4.isRequesting; var displayAsDropdown = attributes.displayAsDropdown, showHierarchy = attributes.showHierarchy, showPostCounts = attributes.showPostCounts; var inspectorControls = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Categories settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display as dropdown'), checked: displayAsDropdown, onChange: this.toggleDisplayAsDropdown }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Show hierarchy'), checked: showHierarchy, onChange: this.toggleShowHierarchy }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Show post counts'), checked: showPostCounts, onChange: this.toggleShowPostCounts }))); if (isRequesting) { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, inspectorControls, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { icon: "admin-post", label: Object(external_this_wp_i18n_["__"])('Categories') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null))); } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, inspectorControls, Object(external_this_wp_element_["createElement"])("div", { className: this.props.className }, displayAsDropdown ? this.renderCategoryDropdown() : this.renderCategoryList())); } }]); return CategoriesEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var categories_edit = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core'), getEntityRecords = _select.getEntityRecords; var _select2 = select('core/data'), isResolving = _select2.isResolving; var query = { per_page: -1, hide_empty: true }; return { categories: getEntityRecords('taxonomy', 'category', query), isRequesting: isResolving('core', 'getEntityRecords', ['taxonomy', 'category', query]) }; }), external_this_wp_compose_["withInstanceId"])(edit_CategoriesEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var categories_name = 'core/categories'; var categories_settings = { title: Object(external_this_wp_i18n_["__"])('Categories'), description: Object(external_this_wp_i18n_["__"])('Display a list of all categories.'), icon: library_category, category: 'widgets', supports: { align: true, html: false }, edit: categories_edit }; // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/code.js var code = __webpack_require__("1Yn1"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/edit.js /** * WordPress dependencies */ /** * Internal dependencies */ function CodeEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, className = _ref.className; return Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PlainText"], { value: attributes.content, onChange: function onChange(content) { return setAttributes({ content: content }); }, placeholder: Object(external_this_wp_i18n_["__"])('Write code…'), "aria-label": Object(external_this_wp_i18n_["__"])('Code') })); } // EXTERNAL MODULE: external {"this":["wp","escapeHtml"]} var external_this_wp_escapeHtml_ = __webpack_require__("Vx3V"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/utils.js /** * External dependencies */ /** * WordPress dependencies */ /** * Escapes ampersands, shortcodes, and links. * * @param {string} content The content of a code block. * @return {string} The given content with some characters escaped. */ function utils_escape(content) { return Object(external_this_lodash_["flow"])(external_this_wp_escapeHtml_["escapeEditableHTML"], escapeOpeningSquareBrackets, escapeProtocolInIsolatedUrls)(content || ''); } /** * Returns the given content with all opening shortcode characters converted * into their HTML entity counterpart (i.e. [ => [). For instance, a * shortcode like [embed] becomes [embed] * * This function replicates the escaping of HTML tags, where a tag like * becomes <strong>. * * @param {string} content The content of a code block. * @return {string} The given content with its opening shortcode characters * converted into their HTML entity counterpart * (i.e. [ => [) */ function escapeOpeningSquareBrackets(content) { return content.replace(/\[/g, '['); } /** * Converts the first two forward slashes of any isolated URL into their HTML * counterparts (i.e. // => //). For instance, https://youtube.com/watch?x * becomes https://youtube.com/watch?x. * * An isolated URL is a URL that sits in its own line, surrounded only by spacing * characters. * * See https://github.com/WordPress/wordpress-develop/blob/5.1.1/src/wp-includes/class-wp-embed.php#L403 * * @param {string} content The content of a code block. * @return {string} The given content with its ampersands converted into * their HTML entity counterpart (i.e. & => &) */ function escapeProtocolInIsolatedUrls(content) { return content.replace(/^(\s*https?:)\/\/([^\s<>"]+\s*)$/m, '$1//$2'); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/save.js /** * Internal dependencies */ function code_save_save(_ref) { var attributes = _ref.attributes; return Object(external_this_wp_element_["createElement"])("pre", null, Object(external_this_wp_element_["createElement"])("code", null, utils_escape(attributes.content))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/transforms.js /** * WordPress dependencies */ var code_transforms_transforms = { from: [{ type: 'enter', regExp: /^```$/, transform: function transform() { return Object(external_this_wp_blocks_["createBlock"])('core/code'); } }, { type: 'raw', isMatch: function isMatch(node) { return node.nodeName === 'PRE' && node.children.length === 1 && node.firstChild.nodeName === 'CODE'; }, schema: { pre: { children: { code: { children: { '#text': {} } } } } } }] }; /* harmony default export */ var code_transforms = (code_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var code_metadata = { name: "core/code", category: "formatting", attributes: { content: { type: "string", source: "text", selector: "code" } } }; var code_name = code_metadata.name; var code_settings = { title: Object(external_this_wp_i18n_["__"])('Code'), description: Object(external_this_wp_i18n_["__"])('Display code snippets that respect your spacing and tabs.'), icon: code["a" /* default */], example: { attributes: { // translators: Preserve \n markers for line breaks content: Object(external_this_wp_i18n_["__"])('// A "block" is the abstract term used\n// to describe units of markup that\n// when composed together, form the\n// content or layout of a page.\nregisterBlockType( name, settings );') } }, supports: { html: false }, transforms: code_transforms, edit: CodeEdit, save: code_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/columns.js /** * WordPress dependencies */ var columns_columns = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M4,4H20a2,2,0,0,1,2,2V18a2,2,0,0,1-2,2H4a2,2,0,0,1-2-2V6A2,2,0,0,1,4,4ZM4 6V18H8V6Zm6 0V18h4V6Zm6 0V18h4V6Z" })); /* harmony default export */ var library_columns = (columns_columns); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ /** * Given an HTML string for a deprecated columns inner block, returns the * column index to which the migrated inner block should be assigned. Returns * undefined if the inner block was not assigned to a column. * * @param {string} originalContent Deprecated Columns inner block HTML. * * @return {?number} Column to which inner block is to be assigned. */ function getDeprecatedLayoutColumn(originalContent) { var doc = getDeprecatedLayoutColumn.doc; if (!doc) { doc = document.implementation.createHTMLDocument(''); getDeprecatedLayoutColumn.doc = doc; } var columnMatch; doc.body.innerHTML = originalContent; var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = doc.body.firstChild.classList[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var classListItem = _step.value; if (columnMatch = classListItem.match(/^layout-column-(\d+)$/)) { return Number(columnMatch[1]) - 1; } } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return != null) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } /* harmony default export */ var columns_deprecated = ([{ attributes: { columns: { type: 'number', default: 2 } }, isEligible: function isEligible(attributes, innerBlocks) { // Since isEligible is called on every valid instance of the // Columns block and a deprecation is the unlikely case due to // its subsequent migration, optimize for the `false` condition // by performing a naive, inaccurate pass at inner blocks. var isFastPassEligible = innerBlocks.some(function (innerBlock) { return /layout-column-\d+/.test(innerBlock.originalContent); }); if (!isFastPassEligible) { return false; } // Only if the fast pass is considered eligible is the more // accurate, durable, slower condition performed. return innerBlocks.some(function (innerBlock) { return getDeprecatedLayoutColumn(innerBlock.originalContent) !== undefined; }); }, migrate: function migrate(attributes, innerBlocks) { var columns = innerBlocks.reduce(function (accumulator, innerBlock) { var originalContent = innerBlock.originalContent; var columnIndex = getDeprecatedLayoutColumn(originalContent); if (columnIndex === undefined) { columnIndex = 0; } if (!accumulator[columnIndex]) { accumulator[columnIndex] = []; } accumulator[columnIndex].push(innerBlock); return accumulator; }, []); var migratedInnerBlocks = columns.map(function (columnBlocks) { return Object(external_this_wp_blocks_["createBlock"])('core/column', {}, columnBlocks); }); return [Object(external_this_lodash_["omit"])(attributes, ['columns']), migratedInnerBlocks]; }, save: function save(_ref) { var attributes = _ref.attributes; var columns = attributes.columns; return Object(external_this_wp_element_["createElement"])("div", { className: "has-".concat(columns, "-columns") }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } }, { attributes: { columns: { type: 'number', default: 2 } }, migrate: function migrate(attributes, innerBlocks) { attributes = Object(external_this_lodash_["omit"])(attributes, ['columns']); return [attributes, innerBlocks]; }, save: function save(_ref2) { var attributes = _ref2.attributes; var verticalAlignment = attributes.verticalAlignment, columns = attributes.columns; var wrapperClasses = classnames_default()("has-".concat(columns, "-columns"), Object(defineProperty["a" /* default */])({}, "are-vertically-aligned-".concat(verticalAlignment), verticalAlignment)); return Object(external_this_wp_element_["createElement"])("div", { className: wrapperClasses }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } }]); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/utils.js /** * External dependencies */ /** * Returns a column width attribute value rounded to standard precision. * Returns `undefined` if the value is not a valid finite number. * * @param {?number} value Raw value. * * @return {number} Value rounded to standard precision. */ var toWidthPrecision = function toWidthPrecision(value) { return Number.isFinite(value) ? parseFloat(value.toFixed(2)) : undefined; }; /** * Returns an effective width for a given block. An effective width is equal to * its attribute value if set, or a computed value assuming equal distribution. * * @param {WPBlock} block Block object. * @param {number} totalBlockCount Total number of blocks in Columns. * * @return {number} Effective column width. */ function getEffectiveColumnWidth(block, totalBlockCount) { var _block$attributes$wid = block.attributes.width, width = _block$attributes$wid === void 0 ? 100 / totalBlockCount : _block$attributes$wid; return toWidthPrecision(width); } /** * Returns the total width occupied by the given set of column blocks. * * @param {WPBlock[]} blocks Block objects. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {number} Total width occupied by blocks. */ function getTotalColumnsWidth(blocks) { var totalBlockCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : blocks.length; return Object(external_this_lodash_["sumBy"])(blocks, function (block) { return getEffectiveColumnWidth(block, totalBlockCount); }); } /** * Returns an object of `clientId` → `width` of effective column widths. * * @param {WPBlock[]} blocks Block objects. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {Object} Column widths. */ function getColumnWidths(blocks) { var totalBlockCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : blocks.length; return blocks.reduce(function (accumulator, block) { var width = getEffectiveColumnWidth(block, totalBlockCount); return Object.assign(accumulator, Object(defineProperty["a" /* default */])({}, block.clientId, width)); }, {}); } /** * Returns an object of `clientId` → `width` of column widths as redistributed * proportional to their current widths, constrained or expanded to fit within * the given available width. * * @param {WPBlock[]} blocks Block objects. * @param {number} availableWidth Maximum width to fit within. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {Object} Redistributed column widths. */ function getRedistributedColumnWidths(blocks, availableWidth) { var totalBlockCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : blocks.length; var totalWidth = getTotalColumnsWidth(blocks, totalBlockCount); var difference = availableWidth - totalWidth; var adjustment = difference / blocks.length; return Object(external_this_lodash_["mapValues"])(getColumnWidths(blocks, totalBlockCount), function (width) { return toWidthPrecision(width + adjustment); }); } /** * Returns true if column blocks within the provided set are assigned with * explicit widths, or false otherwise. * * @param {WPBlock[]} blocks Block objects. * * @return {boolean} Whether columns have explicit widths. */ function hasExplicitColumnWidths(blocks) { return blocks.every(function (block) { return Number.isFinite(block.attributes.width); }); } /** * Returns a copy of the given set of blocks with new widths assigned from the * provided object of redistributed column widths. * * @param {WPBlock[]} blocks Block objects. * @param {Object} widths Redistributed column widths. * * @return {WPBlock[]} blocks Mapped block objects. */ function getMappedColumnWidths(blocks, widths) { return blocks.map(function (block) { return Object(external_this_lodash_["merge"])({}, block, { attributes: { width: widths[block.clientId] } }); }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Allowed blocks constant is passed to InnerBlocks precisely as specified here. * The contents of the array should never change. * The array should contain the name of each block that is allowed. * In columns block, the only block we allow is 'core/column'. * * @constant * @type {string[]} */ var edit_ALLOWED_BLOCKS = ['core/column']; function ColumnsEditContainer(_ref) { var attributes = _ref.attributes, className = _ref.className, updateAlignment = _ref.updateAlignment, updateColumns = _ref.updateColumns, clientId = _ref.clientId; var verticalAlignment = attributes.verticalAlignment; var _useSelect = Object(external_this_wp_data_["useSelect"])(function (select) { return { count: select('core/block-editor').getBlockCount(clientId) }; }, [clientId]), count = _useSelect.count; var ref = Object(external_this_wp_element_["useRef"])(); var _experimentalUseColo = Object(external_this_wp_blockEditor_["__experimentalUseColors"])([{ name: 'textColor', property: 'color' }, { name: 'backgroundColor', className: 'has-background' }], { contrastCheckers: [{ backgroundColor: true, textColor: true }], colorDetector: { targetRef: ref } }), BackgroundColor = _experimentalUseColo.BackgroundColor, InspectorControlsColorPanel = _experimentalUseColo.InspectorControlsColorPanel, TextColor = _experimentalUseColo.TextColor; var classes = classnames_default()(className, Object(defineProperty["a" /* default */])({}, "are-vertically-aligned-".concat(verticalAlignment), verticalAlignment)); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockVerticalAlignmentToolbar"], { onChange: updateAlignment, value: verticalAlignment })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Columns'), value: count, onChange: function onChange(value) { return updateColumns(count, value); }, min: 2, max: 6 }))), InspectorControlsColorPanel, Object(external_this_wp_element_["createElement"])(BackgroundColor, null, Object(external_this_wp_element_["createElement"])(TextColor, null, Object(external_this_wp_element_["createElement"])("div", { className: classes, ref: ref }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { templateLock: "all", allowedBlocks: edit_ALLOWED_BLOCKS }))))); } var ColumnsEditContainerWrapper = Object(external_this_wp_data_["withDispatch"])(function (dispatch, ownProps, registry) { return { /** * Update all child Column blocks with a new vertical alignment setting * based on whatever alignment is passed in. This allows change to parent * to overide anything set on a individual column basis. * * @param {string} verticalAlignment the vertical alignment setting */ updateAlignment: function updateAlignment(verticalAlignment) { var clientId = ownProps.clientId, setAttributes = ownProps.setAttributes; var _dispatch = dispatch('core/block-editor'), updateBlockAttributes = _dispatch.updateBlockAttributes; var _registry$select = registry.select('core/block-editor'), getBlockOrder = _registry$select.getBlockOrder; // Update own alignment. setAttributes({ verticalAlignment: verticalAlignment }); // Update all child Column Blocks to match var innerBlockClientIds = getBlockOrder(clientId); innerBlockClientIds.forEach(function (innerBlockClientId) { updateBlockAttributes(innerBlockClientId, { verticalAlignment: verticalAlignment }); }); }, /** * Updates the column count, including necessary revisions to child Column * blocks to grant required or redistribute available space. * * @param {number} previousColumns Previous column count. * @param {number} newColumns New column count. */ updateColumns: function updateColumns(previousColumns, newColumns) { var clientId = ownProps.clientId; var _dispatch2 = dispatch('core/block-editor'), replaceInnerBlocks = _dispatch2.replaceInnerBlocks; var _registry$select2 = registry.select('core/block-editor'), getBlocks = _registry$select2.getBlocks; var innerBlocks = getBlocks(clientId); var hasExplicitWidths = hasExplicitColumnWidths(innerBlocks); // Redistribute available width for existing inner blocks. var isAddingColumn = newColumns > previousColumns; if (isAddingColumn && hasExplicitWidths) { // If adding a new column, assign width to the new column equal to // as if it were `1 / columns` of the total available space. var newColumnWidth = toWidthPrecision(100 / newColumns); // Redistribute in consideration of pending block insertion as // constraining the available working width. var widths = getRedistributedColumnWidths(innerBlocks, 100 - newColumnWidth); innerBlocks = [].concat(Object(toConsumableArray["a" /* default */])(getMappedColumnWidths(innerBlocks, widths)), Object(toConsumableArray["a" /* default */])(Object(external_this_lodash_["times"])(newColumns - previousColumns, function () { return Object(external_this_wp_blocks_["createBlock"])('core/column', { width: newColumnWidth }); }))); } else if (isAddingColumn) { innerBlocks = [].concat(Object(toConsumableArray["a" /* default */])(innerBlocks), Object(toConsumableArray["a" /* default */])(Object(external_this_lodash_["times"])(newColumns - previousColumns, function () { return Object(external_this_wp_blocks_["createBlock"])('core/column'); }))); } else { // The removed column will be the last of the inner blocks. innerBlocks = Object(external_this_lodash_["dropRight"])(innerBlocks, previousColumns - newColumns); if (hasExplicitWidths) { // Redistribute as if block is already removed. var _widths = getRedistributedColumnWidths(innerBlocks, 100); innerBlocks = getMappedColumnWidths(innerBlocks, _widths); } } replaceInnerBlocks(clientId, innerBlocks, false); } }; })(ColumnsEditContainer); var edit_createBlocksFromInnerBlocksTemplate = function createBlocksFromInnerBlocksTemplate(innerBlocksTemplate) { return Object(external_this_lodash_["map"])(innerBlocksTemplate, function (_ref2) { var _ref3 = Object(slicedToArray["a" /* default */])(_ref2, 3), name = _ref3[0], attributes = _ref3[1], _ref3$ = _ref3[2], innerBlocks = _ref3$ === void 0 ? [] : _ref3$; return Object(external_this_wp_blocks_["createBlock"])(name, attributes, createBlocksFromInnerBlocksTemplate(innerBlocks)); }); }; var edit_ColumnsEdit = function ColumnsEdit(props) { var clientId = props.clientId, name = props.name; var _useSelect2 = Object(external_this_wp_data_["useSelect"])(function (select) { var _select = select('core/blocks'), getBlockVariations = _select.getBlockVariations, getBlockType = _select.getBlockType, getDefaultBlockVariation = _select.getDefaultBlockVariation; return { blockType: getBlockType(name), defaultVariation: getDefaultBlockVariation(name, 'block'), hasInnerBlocks: select('core/block-editor').getBlocks(clientId).length > 0, variations: getBlockVariations(name, 'block') }; }, [clientId, name]), blockType = _useSelect2.blockType, defaultVariation = _useSelect2.defaultVariation, hasInnerBlocks = _useSelect2.hasInnerBlocks, variations = _useSelect2.variations; var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core/block-editor'), replaceInnerBlocks = _useDispatch.replaceInnerBlocks; if (hasInnerBlocks) { return Object(external_this_wp_element_["createElement"])(ColumnsEditContainerWrapper, props); } return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalBlockVariationPicker"], { icon: Object(external_this_lodash_["get"])(blockType, ['icon', 'src']), label: Object(external_this_lodash_["get"])(blockType, ['title']), variations: variations, onSelect: function onSelect() { var nextVariation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultVariation; if (nextVariation.attributes) { props.setAttributes(nextVariation.attributes); } if (nextVariation.innerBlocks) { replaceInnerBlocks(props.clientId, edit_createBlocksFromInnerBlocksTemplate(nextVariation.innerBlocks)); } }, allowSkip: true }); }; /* harmony default export */ var columns_edit = (edit_ColumnsEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/save.js /** * External dependencies */ /** * WordPress dependencies */ function columns_save_save(_ref) { var _classnames; var attributes = _ref.attributes; var verticalAlignment = attributes.verticalAlignment, backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()((_classnames = { 'has-background': backgroundColor || customBackgroundColor, 'has-text-color': textColor || customTextColor }, Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames, textClass, textClass), Object(defineProperty["a" /* default */])(_classnames, "are-vertically-aligned-".concat(verticalAlignment), verticalAlignment), _classnames)); var style = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return Object(external_this_wp_element_["createElement"])("div", { className: className ? className : undefined, style: style }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/variations.js /** * WordPress dependencies */ /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */ /** * Template option choices for predefined columns layouts. * * @type {WPBlockVariation[]} */ var variations_variations = [{ name: 'two-columns-equal', title: Object(external_this_wp_i18n_["__"])('Two columns; equal split'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H25V34H39ZM23 34H9V14H23V34Z" })), isDefault: true, innerBlocks: [['core/column'], ['core/column']], scope: ['block'] }, { name: 'two-columns-one-third-two-thirds', title: Object(external_this_wp_i18n_["__"])('Two columns; one-third, two-thirds split'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H20V34H39ZM18 34H9V14H18V34Z" })), innerBlocks: [['core/column', { width: 33.33 }], ['core/column', { width: 66.66 }]], scope: ['block'] }, { name: 'two-columns-two-thirds-one-third', title: Object(external_this_wp_i18n_["__"])('Two columns; two-thirds, one-third split'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H30V34H39ZM28 34H9V14H28V34Z" })), innerBlocks: [['core/column', { width: 66.66 }], ['core/column', { width: 33.33 }]], scope: ['block'] }, { name: 'three-columns-equal', title: Object(external_this_wp_i18n_["__"])('Three columns; equal split'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", d: "M41 14a2 2 0 0 0-2-2H9a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h30a2 2 0 0 0 2-2V14zM28.5 34h-9V14h9v20zm2 0V14H39v20h-8.5zm-13 0H9V14h8.5v20z" })), innerBlocks: [['core/column'], ['core/column'], ['core/column']], scope: ['block'] }, { name: 'three-columns-wider-center', title: Object(external_this_wp_i18n_["__"])('Three columns; wide center column'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", d: "M41 14a2 2 0 0 0-2-2H9a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h30a2 2 0 0 0 2-2V14zM31 34H17V14h14v20zm2 0V14h6v20h-6zm-18 0H9V14h6v20z" })), innerBlocks: [['core/column', { width: 25 }], ['core/column', { width: 50 }], ['core/column', { width: 25 }]], scope: ['block'] }]; /* harmony default export */ var columns_variations = (variations_variations); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var columns_metadata = { name: "core/columns", category: "layout", attributes: { verticalAlignment: { type: "string" }, backgroundColor: { type: "string" }, customBackgroundColor: { type: "string" }, customTextColor: { type: "string" }, textColor: { type: "string" } } }; var columns_name = columns_metadata.name; var columns_settings = { title: Object(external_this_wp_i18n_["__"])('Columns'), icon: library_columns, description: Object(external_this_wp_i18n_["__"])('Add a block that displays content in multiple columns, then add whatever content blocks you’d like.'), supports: { align: ['wide', 'full'], html: false }, variations: columns_variations, example: { innerBlocks: [{ name: 'core/column', innerBlocks: [{ name: 'core/paragraph', attributes: { /* translators: example text. */ content: Object(external_this_wp_i18n_["__"])('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et eros eu felis.') } }, { name: 'core/image', attributes: { url: 'https://s.w.org/images/core/5.3/Windbuchencom.jpg' } }, { name: 'core/paragraph', attributes: { /* translators: example text. */ content: Object(external_this_wp_i18n_["__"])('Suspendisse commodo neque lacus, a dictum orci interdum et.') } }] }, { name: 'core/column', innerBlocks: [{ name: 'core/paragraph', attributes: { /* translators: example text. */ content: Object(external_this_wp_i18n_["__"])('Etiam et egestas lorem. Vivamus sagittis sit amet dolor quis lobortis. Integer sed fermentum arcu, id vulputate lacus. Etiam fermentum sem eu quam hendrerit.') } }, { name: 'core/paragraph', attributes: { /* translators: example text. */ content: Object(external_this_wp_i18n_["__"])('Nam risus massa, ullamcorper consectetur eros fermentum, porta aliquet ligula. Sed vel mauris nec enim.') } }] }] }, deprecated: columns_deprecated, edit: columns_edit, save: columns_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/column.js /** * WordPress dependencies */ var column = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M11.99 18.54l-7.37-5.73L3 14.07l9 7 9-7-1.63-1.27zM12 16l7.36-5.73L21 9l-9-7-9 7 1.63 1.27L12 16zm0-11.47L17.74 9 12 13.47 6.26 9 12 4.53z" })); /* harmony default export */ var library_column = (column); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/edit.js /** * External dependencies */ /** * WordPress dependencies */ function ColumnEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, className = _ref.className, updateAlignment = _ref.updateAlignment, hasChildBlocks = _ref.hasChildBlocks; var verticalAlignment = attributes.verticalAlignment, width = attributes.width; var classes = classnames_default()(className, 'block-core-columns', Object(defineProperty["a" /* default */])({}, "is-vertically-aligned-".concat(verticalAlignment), verticalAlignment)); return Object(external_this_wp_element_["createElement"])("div", { className: classes }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockVerticalAlignmentToolbar"], { onChange: updateAlignment, value: verticalAlignment })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Column settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Percentage width'), value: width || '', onChange: function onChange(nextWidth) { setAttributes({ width: nextWidth }); }, min: 0, max: 100, step: 0.1, required: true, allowReset: true, placeholder: width === undefined ? Object(external_this_wp_i18n_["__"])('Auto') : undefined }))), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { templateLock: false, renderAppender: hasChildBlocks ? undefined : function () { return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].ButtonBlockAppender, null); } })); } /* harmony default export */ var column_edit = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select, ownProps) { var clientId = ownProps.clientId; var _select = select('core/block-editor'), getBlockOrder = _select.getBlockOrder; return { hasChildBlocks: getBlockOrder(clientId).length > 0 }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, ownProps, registry) { return { updateAlignment: function updateAlignment(verticalAlignment) { var clientId = ownProps.clientId, setAttributes = ownProps.setAttributes; var _dispatch = dispatch('core/block-editor'), updateBlockAttributes = _dispatch.updateBlockAttributes; var _registry$select = registry.select('core/block-editor'), getBlockRootClientId = _registry$select.getBlockRootClientId; // Update own alignment. setAttributes({ verticalAlignment: verticalAlignment }); // Reset Parent Columns Block var rootClientId = getBlockRootClientId(clientId); updateBlockAttributes(rootClientId, { verticalAlignment: null }); } }; }))(ColumnEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/save.js /** * External dependencies */ /** * WordPress dependencies */ function column_save_save(_ref) { var attributes = _ref.attributes; var verticalAlignment = attributes.verticalAlignment, width = attributes.width; var wrapperClasses = classnames_default()(Object(defineProperty["a" /* default */])({}, "is-vertically-aligned-".concat(verticalAlignment), verticalAlignment)); var style; if (Number.isFinite(width)) { style = { flexBasis: width + '%' }; } return Object(external_this_wp_element_["createElement"])("div", { className: wrapperClasses, style: style }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var column_metadata = { name: "core/column", category: "common", attributes: { verticalAlignment: { type: "string" }, width: { type: "number", min: 0, max: 100 } } }; var column_name = column_metadata.name; var column_settings = { title: Object(external_this_wp_i18n_["__"])('Column'), parent: ['core/columns'], icon: library_column, description: Object(external_this_wp_i18n_["__"])('A single column within a columns block.'), supports: { inserter: false, reusable: false, html: false }, getEditWrapperProps: function getEditWrapperProps(attributes) { var width = attributes.width; if (Number.isFinite(width)) { return { style: { flexBasis: width + '%' }, 'data-has-explicit-width': true }; } }, edit: column_edit, save: column_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/cover.js /** * WordPress dependencies */ var cover = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M4 4h7V2H4c-1.1 0-2 .9-2 2v7h2V4zm6 9l-4 5h12l-3-4-2.03 2.71L10 13zm7-4.5c0-.83-.67-1.5-1.5-1.5S14 7.67 14 8.5s.67 1.5 1.5 1.5S17 9.33 17 8.5zM20 2h-7v2h7v7h2V4c0-1.1-.9-2-2-2zm0 18h-7v2h7c1.1 0 2-.9 2-2v-7h-2v7zM4 13H2v7c0 1.1.9 2 2 2h7v-2H4v-7z" })); /* harmony default export */ var library_cover = (cover); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/shared.js var IMAGE_BACKGROUND_TYPE = 'image'; var VIDEO_BACKGROUND_TYPE = 'video'; var COVER_MIN_HEIGHT = 50; function backgroundImageStyles(url) { return url ? { backgroundImage: "url(".concat(url, ")") } : {}; } function dimRatioToClass(ratio) { return ratio === 0 || ratio === 50 || !ratio ? null : 'has-background-dim-' + 10 * Math.round(ratio / 10); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/deprecated.js function cover_deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function cover_deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { cover_deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { cover_deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var cover_deprecated_blockAttributes = { url: { type: 'string' }, id: { type: 'number' }, hasParallax: { type: 'boolean', default: false }, dimRatio: { type: 'number', default: 50 }, overlayColor: { type: 'string' }, customOverlayColor: { type: 'string' }, backgroundType: { type: 'string', default: 'image' }, focalPoint: { type: 'object' } }; var cover_deprecated_deprecated = [{ attributes: cover_deprecated_objectSpread({}, cover_deprecated_blockAttributes, { title: { type: 'string', source: 'html', selector: 'p' }, contentAlign: { type: 'string', default: 'center' }, minHeight: { type: 'number' }, gradient: { type: 'string' }, customGradient: { type: 'string' } }), save: function save(_ref) { var attributes = _ref.attributes; var backgroundType = attributes.backgroundType, gradient = attributes.gradient, customGradient = attributes.customGradient, customOverlayColor = attributes.customOverlayColor, dimRatio = attributes.dimRatio, focalPoint = attributes.focalPoint, hasParallax = attributes.hasParallax, overlayColor = attributes.overlayColor, url = attributes.url, minHeight = attributes.minHeight; var overlayColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', overlayColor); var gradientClass = Object(external_this_wp_blockEditor_["__experimentalGetGradientClass"])(gradient); var style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {}; if (!overlayColorClass) { style.backgroundColor = customOverlayColor; } if (focalPoint && !hasParallax) { style.backgroundPosition = "".concat(Math.round(focalPoint.x * 100), "% ").concat(Math.round(focalPoint.y * 100), "%"); } if (customGradient && !url) { style.background = customGradient; } style.minHeight = minHeight || undefined; var classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, Object(defineProperty["a" /* default */])({ 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax, 'has-background-gradient': customGradient }, gradientClass, !url && gradientClass)); return Object(external_this_wp_element_["createElement"])("div", { className: classes, style: style }, url && (gradient || customGradient) && dimRatio !== 0 && Object(external_this_wp_element_["createElement"])("span", { "aria-hidden": "true", className: classnames_default()('wp-block-cover__gradient-background', gradientClass), style: customGradient ? { background: customGradient } : undefined }), VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_this_wp_element_["createElement"])("video", { className: "wp-block-cover__video-background", autoPlay: true, muted: true, loop: true, src: url }), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-cover__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } }, { attributes: cover_deprecated_objectSpread({}, cover_deprecated_blockAttributes, { title: { type: 'string', source: 'html', selector: 'p' }, contentAlign: { type: 'string', default: 'center' }, minHeight: { type: 'number' }, gradient: { type: 'string' }, customGradient: { type: 'string' } }), save: function save(_ref2) { var attributes = _ref2.attributes; var backgroundType = attributes.backgroundType, gradient = attributes.gradient, customGradient = attributes.customGradient, customOverlayColor = attributes.customOverlayColor, dimRatio = attributes.dimRatio, focalPoint = attributes.focalPoint, hasParallax = attributes.hasParallax, overlayColor = attributes.overlayColor, url = attributes.url, minHeight = attributes.minHeight; var overlayColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', overlayColor); var gradientClass = Object(external_this_wp_blockEditor_["__experimentalGetGradientClass"])(gradient); var style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {}; if (!overlayColorClass) { style.backgroundColor = customOverlayColor; } if (focalPoint && !hasParallax) { style.backgroundPosition = "".concat(focalPoint.x * 100, "% ").concat(focalPoint.y * 100, "%"); } if (customGradient && !url) { style.background = customGradient; } style.minHeight = minHeight || undefined; var classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, Object(defineProperty["a" /* default */])({ 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax, 'has-background-gradient': customGradient }, gradientClass, !url && gradientClass)); return Object(external_this_wp_element_["createElement"])("div", { className: classes, style: style }, url && (gradient || customGradient) && dimRatio !== 0 && Object(external_this_wp_element_["createElement"])("span", { "aria-hidden": "true", className: classnames_default()('wp-block-cover__gradient-background', gradientClass), style: customGradient ? { background: customGradient } : undefined }), VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_this_wp_element_["createElement"])("video", { className: "wp-block-cover__video-background", autoPlay: true, muted: true, loop: true, src: url }), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-cover__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } }, { attributes: cover_deprecated_objectSpread({}, cover_deprecated_blockAttributes, { title: { type: 'string', source: 'html', selector: 'p' }, contentAlign: { type: 'string', default: 'center' } }), supports: { align: true }, save: function save(_ref3) { var attributes = _ref3.attributes; var backgroundType = attributes.backgroundType, contentAlign = attributes.contentAlign, customOverlayColor = attributes.customOverlayColor, dimRatio = attributes.dimRatio, focalPoint = attributes.focalPoint, hasParallax = attributes.hasParallax, overlayColor = attributes.overlayColor, title = attributes.title, url = attributes.url; var overlayColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', overlayColor); var style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {}; if (!overlayColorClass) { style.backgroundColor = customOverlayColor; } if (focalPoint && !hasParallax) { style.backgroundPosition = "".concat(focalPoint.x * 100, "% ").concat(focalPoint.y * 100, "%"); } var classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, Object(defineProperty["a" /* default */])({ 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax }, "has-".concat(contentAlign, "-content"), contentAlign !== 'center')); return Object(external_this_wp_element_["createElement"])("div", { className: classes, style: style }, VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_this_wp_element_["createElement"])("video", { className: "wp-block-cover__video-background", autoPlay: true, muted: true, loop: true, src: url }), !external_this_wp_blockEditor_["RichText"].isEmpty(title) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", className: "wp-block-cover-text", value: title })); }, migrate: function migrate(attributes) { return [Object(external_this_lodash_["omit"])(attributes, ['title', 'contentAlign']), [Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: attributes.title, align: attributes.contentAlign, fontSize: 'large', placeholder: Object(external_this_wp_i18n_["__"])('Write title…') })]]; } }, { attributes: cover_deprecated_objectSpread({}, cover_deprecated_blockAttributes, { title: { type: 'string', source: 'html', selector: 'p' }, contentAlign: { type: 'string', default: 'center' }, align: { type: 'string' } }), supports: { className: false }, save: function save(_ref4) { var attributes = _ref4.attributes; var url = attributes.url, title = attributes.title, hasParallax = attributes.hasParallax, dimRatio = attributes.dimRatio, align = attributes.align, contentAlign = attributes.contentAlign, overlayColor = attributes.overlayColor, customOverlayColor = attributes.customOverlayColor; var overlayColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', overlayColor); var style = backgroundImageStyles(url); if (!overlayColorClass) { style.backgroundColor = customOverlayColor; } var classes = classnames_default()('wp-block-cover-image', dimRatioToClass(dimRatio), overlayColorClass, Object(defineProperty["a" /* default */])({ 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax }, "has-".concat(contentAlign, "-content"), contentAlign !== 'center'), align ? "align".concat(align) : null); return Object(external_this_wp_element_["createElement"])("div", { className: classes, style: style }, !external_this_wp_blockEditor_["RichText"].isEmpty(title) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", className: "wp-block-cover-image-text", value: title })); }, migrate: function migrate(attributes) { return [Object(external_this_lodash_["omit"])(attributes, ['title', 'contentAlign', 'align']), [Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: attributes.title, align: attributes.contentAlign, fontSize: 'large', placeholder: Object(external_this_wp_i18n_["__"])('Write title…') })]]; } }, { attributes: cover_deprecated_objectSpread({}, cover_deprecated_blockAttributes, { title: { type: 'string', source: 'html', selector: 'h2' }, align: { type: 'string' }, contentAlign: { type: 'string', default: 'center' } }), supports: { className: false }, save: function save(_ref5) { var attributes = _ref5.attributes; var url = attributes.url, title = attributes.title, hasParallax = attributes.hasParallax, dimRatio = attributes.dimRatio, align = attributes.align; var style = backgroundImageStyles(url); var classes = classnames_default()('wp-block-cover-image', dimRatioToClass(dimRatio), { 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax }, align ? "align".concat(align) : null); return Object(external_this_wp_element_["createElement"])("section", { className: classes, style: style }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "h2", value: title })); }, migrate: function migrate(attributes) { return [Object(external_this_lodash_["omit"])(attributes, ['title', 'contentAlign', 'align']), [Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: attributes.title, align: attributes.contentAlign, fontSize: 'large', placeholder: Object(external_this_wp_i18n_["__"])('Write title…') })]]; } }]; /* harmony default export */ var cover_deprecated = (cover_deprecated_deprecated); // EXTERNAL MODULE: ./node_modules/fast-average-color/dist/index.js var dist = __webpack_require__("FEKF"); var dist_default = /*#__PURE__*/__webpack_require__.n(dist); // EXTERNAL MODULE: ./node_modules/tinycolor2/tinycolor.js var tinycolor = __webpack_require__("Zss7"); var tinycolor_default = /*#__PURE__*/__webpack_require__.n(tinycolor); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/edit.js function cover_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function cover_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { cover_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { cover_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Module Constants */ var cover_edit_ALLOWED_MEDIA_TYPES = ['image', 'video']; var INNER_BLOCKS_TEMPLATE = [['core/paragraph', { align: 'center', fontSize: 'large', placeholder: Object(external_this_wp_i18n_["__"])('Write title…') }]]; function retrieveFastAverageColor() { if (!retrieveFastAverageColor.fastAverageColor) { retrieveFastAverageColor.fastAverageColor = new dist_default.a(); } return retrieveFastAverageColor.fastAverageColor; } var CoverHeightInput = Object(external_this_wp_compose_["withInstanceId"])(function (_ref) { var _ref$value = _ref.value, value = _ref$value === void 0 ? '' : _ref$value, instanceId = _ref.instanceId, _onChange = _ref.onChange; var _useState = Object(external_this_wp_element_["useState"])(null), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), temporaryInput = _useState2[0], setTemporaryInput = _useState2[1]; var inputId = "block-cover-height-input-".concat(instanceId); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"], { label: Object(external_this_wp_i18n_["__"])('Minimum height in pixels'), id: inputId }, Object(external_this_wp_element_["createElement"])("input", { type: "number", id: inputId, onChange: function onChange(event) { var unprocessedValue = event.target.value; var inputValue = unprocessedValue !== '' ? parseInt(event.target.value, 10) : undefined; if ((isNaN(inputValue) || inputValue < COVER_MIN_HEIGHT) && inputValue !== undefined) { setTemporaryInput(event.target.value); return; } setTemporaryInput(null); _onChange(inputValue); }, onBlur: function onBlur() { if (temporaryInput !== null) { setTemporaryInput(null); } }, value: temporaryInput !== null ? temporaryInput : value, min: COVER_MIN_HEIGHT, step: "1" })); }); var RESIZABLE_BOX_ENABLE_OPTION = { top: false, right: false, bottom: true, left: false, topRight: false, bottomRight: false, bottomLeft: false, topLeft: false }; function ResizableCover(_ref2) { var className = _ref2.className, children = _ref2.children, _onResizeStart = _ref2.onResizeStart, _onResize = _ref2.onResize, _onResizeStop = _ref2.onResizeStop; var _useState3 = Object(external_this_wp_element_["useState"])(false), _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2), isResizing = _useState4[0], setIsResizing = _useState4[1]; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ResizableBox"], { className: classnames_default()(className, { 'is-resizing': isResizing }), enable: RESIZABLE_BOX_ENABLE_OPTION, onResizeStart: function onResizeStart(event, direction, elt) { _onResizeStart(elt.clientHeight); _onResize(elt.clientHeight); }, onResize: function onResize(event, direction, elt) { _onResize(elt.clientHeight); if (!isResizing) { setIsResizing(true); } }, onResizeStop: function onResizeStop(event, direction, elt) { _onResizeStop(elt.clientHeight); setIsResizing(false); }, minHeight: COVER_MIN_HEIGHT }, children); } function onCoverSelectMedia(setAttributes) { return function (media) { if (!media || !media.url) { setAttributes({ url: undefined, id: undefined }); return; } var mediaType; // for media selections originated from a file upload. if (media.media_type) { if (media.media_type === IMAGE_BACKGROUND_TYPE) { mediaType = IMAGE_BACKGROUND_TYPE; } else { // only images and videos are accepted so if the media_type is not an image we can assume it is a video. // Videos contain the media type of 'file' in the object returned from the rest api. mediaType = VIDEO_BACKGROUND_TYPE; } } else { // for media selections originated from existing files in the media library. if (media.type !== IMAGE_BACKGROUND_TYPE && media.type !== VIDEO_BACKGROUND_TYPE) { return; } mediaType = media.type; } setAttributes(cover_edit_objectSpread({ url: media.url, id: media.id, backgroundType: mediaType }, mediaType === VIDEO_BACKGROUND_TYPE ? { focalPoint: undefined, hasParallax: undefined } : {})); }; } /** * useCoverIsDark is a hook that returns a boolean variable specifying if the cover * background is dark or not. * * @param {?string} url Url of the media background. * @param {?number} dimRatio Transparency of the overlay color. If an image and * color are set, dimRatio is used to decide what is used * for background darkness checking purposes. * @param {?string} overlayColor String containing the overlay color value if one exists. * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a * dom element that renders that media. * * @return {boolean} True if the cover background is considered "dark" and false otherwise. */ function useCoverIsDark(url) { var dimRatio = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 50; var overlayColor = arguments.length > 2 ? arguments[2] : undefined; var elementRef = arguments.length > 3 ? arguments[3] : undefined; var _useState5 = Object(external_this_wp_element_["useState"])(false), _useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2), isDark = _useState6[0], setIsDark = _useState6[1]; Object(external_this_wp_element_["useEffect"])(function () { // If opacity is lower than 50 the dominant color is the image or video color, // so use that color for the dark mode computation. if (url && dimRatio <= 50 && elementRef.current) { retrieveFastAverageColor().getColorAsync(elementRef.current, function (color) { setIsDark(color.isDark); }); } }, [url, url && dimRatio <= 50 && elementRef.current, setIsDark]); Object(external_this_wp_element_["useEffect"])(function () { // If opacity is greater than 50 the dominant color is the overlay color, // so use that color for the dark mode computation. if (dimRatio > 50 || !url) { if (!overlayColor) { // If no overlay color exists the overlay color is black (isDark ) setIsDark(true); return; } setIsDark(tinycolor_default()(overlayColor).isDark()); } }, [overlayColor, dimRatio > 50 || !url, setIsDark]); Object(external_this_wp_element_["useEffect"])(function () { if (!url && !overlayColor) { // Reset isDark setIsDark(false); } }, [!url && !overlayColor, setIsDark]); return isDark; } function CoverEdit(_ref3) { var _classnames; var attributes = _ref3.attributes, setAttributes = _ref3.setAttributes, isSelected = _ref3.isSelected, className = _ref3.className, noticeUI = _ref3.noticeUI, overlayColor = _ref3.overlayColor, setOverlayColor = _ref3.setOverlayColor, toggleSelection = _ref3.toggleSelection, noticeOperations = _ref3.noticeOperations; var id = attributes.id, backgroundType = attributes.backgroundType, dimRatio = attributes.dimRatio, focalPoint = attributes.focalPoint, hasParallax = attributes.hasParallax, minHeight = attributes.minHeight, url = attributes.url; var _experimentalUseGrad = Object(external_this_wp_blockEditor_["__experimentalUseGradient"])(), gradientClass = _experimentalUseGrad.gradientClass, gradientValue = _experimentalUseGrad.gradientValue, setGradient = _experimentalUseGrad.setGradient; var onSelectMedia = onCoverSelectMedia(setAttributes); var toggleParallax = function toggleParallax() { setAttributes(cover_edit_objectSpread({ hasParallax: !hasParallax }, !hasParallax ? { focalPoint: undefined } : {})); }; var isDarkElement = Object(external_this_wp_element_["useRef"])(); var isDark = useCoverIsDark(url, dimRatio, overlayColor.color, isDarkElement); var _useState7 = Object(external_this_wp_element_["useState"])(null), _useState8 = Object(slicedToArray["a" /* default */])(_useState7, 2), temporaryMinHeight = _useState8[0], setTemporaryMinHeight = _useState8[1]; var removeAllNotices = noticeOperations.removeAllNotices, createErrorNotice = noticeOperations.createErrorNotice; var style = cover_edit_objectSpread({}, backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {}, { backgroundColor: overlayColor.color, minHeight: temporaryMinHeight || minHeight }); if (gradientValue && !url) { style.background = gradientValue; } if (focalPoint) { style.backgroundPosition = "".concat(focalPoint.x * 100, "% ").concat(focalPoint.y * 100, "%"); } var hasBackground = !!(url || overlayColor.color || gradientValue); var controls = Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, hasBackground && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: id, mediaURL: url, allowedTypes: cover_edit_ALLOWED_MEDIA_TYPES, accept: "image/*,video/*", onSelect: onSelectMedia })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, !!url && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Media settings') }, IMAGE_BACKGROUND_TYPE === backgroundType && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Fixed background'), checked: hasParallax, onChange: toggleParallax }), IMAGE_BACKGROUND_TYPE === backgroundType && !hasParallax && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["FocalPointPicker"], { label: Object(external_this_wp_i18n_["__"])('Focal point picker'), url: url, value: focalPoint, onChange: function onChange(newFocalPoint) { return setAttributes({ focalPoint: newFocalPoint }); } }), VIDEO_BACKGROUND_TYPE === backgroundType && Object(external_this_wp_element_["createElement"])("video", { autoPlay: true, muted: true, loop: true, src: url }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelRow"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, isSmall: true, className: "block-library-cover__reset-button", onClick: function onClick() { return setAttributes({ url: undefined, id: undefined, backgroundType: undefined, dimRatio: undefined, focalPoint: undefined, hasParallax: undefined }); } }, Object(external_this_wp_i18n_["__"])('Clear Media')))), hasBackground && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Dimensions') }, Object(external_this_wp_element_["createElement"])(CoverHeightInput, { value: temporaryMinHeight || minHeight, onChange: function onChange(newMinHeight) { return setAttributes({ minHeight: newMinHeight }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalPanelColorGradientSettings"], { title: Object(external_this_wp_i18n_["__"])('Overlay'), initialOpen: true, settings: [{ colorValue: overlayColor.color, gradientValue: gradientValue, onColorChange: setOverlayColor, onGradientChange: setGradient, label: Object(external_this_wp_i18n_["__"])('Color') }] }, !!url && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Background opacity'), value: dimRatio, onChange: function onChange(newDimRation) { return setAttributes({ dimRatio: newDimRation }); }, min: 0, max: 100, step: 10, required: true }))))); if (!hasBackground) { var placeholderIcon = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_cover }); var label = Object(external_this_wp_i18n_["__"])('Cover'); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, controls, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: placeholderIcon, className: className, labels: { title: label, instructions: Object(external_this_wp_i18n_["__"])('Upload an image or video file, or pick one from your media library.') }, onSelect: onSelectMedia, accept: "image/*,video/*", allowedTypes: cover_edit_ALLOWED_MEDIA_TYPES, notices: noticeUI, onError: function onError(message) { removeAllNotices(); createErrorNotice(message); } }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-cover__placeholder-background-options" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["ColorPalette"], { disableCustomColors: true, value: overlayColor.color, onChange: setOverlayColor, clearable: false })))); } var classes = classnames_default()(className, dimRatioToClass(dimRatio), (_classnames = { 'is-dark-theme': isDark, 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax }, Object(defineProperty["a" /* default */])(_classnames, overlayColor.class, overlayColor.class), Object(defineProperty["a" /* default */])(_classnames, 'has-background-gradient', gradientValue), Object(defineProperty["a" /* default */])(_classnames, gradientClass, !url && gradientClass), _classnames)); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, controls, Object(external_this_wp_element_["createElement"])(ResizableCover, { className: classnames_default()('block-library-cover__resize-container', { 'is-selected': isSelected }), onResizeStart: function onResizeStart() { return toggleSelection(false); }, onResize: setTemporaryMinHeight, onResizeStop: function onResizeStop(newMinHeight) { toggleSelection(true); setAttributes({ minHeight: newMinHeight }); setTemporaryMinHeight(null); } }, Object(external_this_wp_element_["createElement"])("div", { "data-url": url, style: style, className: classes }, IMAGE_BACKGROUND_TYPE === backgroundType && // Used only to programmatically check if the image is dark or not Object(external_this_wp_element_["createElement"])("img", { ref: isDarkElement, "aria-hidden": true, alt: "", style: { display: 'none' }, src: url }), url && gradientValue && dimRatio !== 0 && Object(external_this_wp_element_["createElement"])("span", { "aria-hidden": "true", className: classnames_default()('wp-block-cover__gradient-background', gradientClass), style: { background: gradientValue } }), VIDEO_BACKGROUND_TYPE === backgroundType && Object(external_this_wp_element_["createElement"])("video", { ref: isDarkElement, className: "wp-block-cover__video-background", autoPlay: true, muted: true, loop: true, src: url }), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-cover__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { template: INNER_BLOCKS_TEMPLATE }))))); } /* harmony default export */ var cover_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), toggleSelection = _dispatch.toggleSelection; return { toggleSelection: toggleSelection }; }), Object(external_this_wp_blockEditor_["withColors"])({ overlayColor: 'background-color' }), external_this_wp_components_["withNotices"], external_this_wp_compose_["withInstanceId"]])(CoverEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/save.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function cover_save_save(_ref) { var attributes = _ref.attributes; var backgroundType = attributes.backgroundType, gradient = attributes.gradient, customGradient = attributes.customGradient, customOverlayColor = attributes.customOverlayColor, dimRatio = attributes.dimRatio, focalPoint = attributes.focalPoint, hasParallax = attributes.hasParallax, overlayColor = attributes.overlayColor, url = attributes.url, minHeight = attributes.minHeight; var overlayColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', overlayColor); var gradientClass = Object(external_this_wp_blockEditor_["__experimentalGetGradientClass"])(gradient); var style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {}; if (!overlayColorClass) { style.backgroundColor = customOverlayColor; } if (focalPoint && !hasParallax) { style.backgroundPosition = "".concat(Math.round(focalPoint.x * 100), "% ").concat(Math.round(focalPoint.y * 100), "%"); } if (customGradient && !url) { style.background = customGradient; } style.minHeight = minHeight || undefined; var classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, Object(defineProperty["a" /* default */])({ 'has-background-dim': dimRatio !== 0, 'has-parallax': hasParallax, 'has-background-gradient': gradient || customGradient }, gradientClass, !url && gradientClass)); return Object(external_this_wp_element_["createElement"])("div", { className: classes, style: style }, url && (gradient || customGradient) && dimRatio !== 0 && Object(external_this_wp_element_["createElement"])("span", { "aria-hidden": "true", className: classnames_default()('wp-block-cover__gradient-background', gradientClass), style: customGradient ? { background: customGradient } : undefined }), VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_this_wp_element_["createElement"])("video", { className: "wp-block-cover__video-background", autoPlay: true, muted: true, loop: true, src: url }), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-cover__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/transforms.js /** * WordPress dependencies */ /** * Internal dependencies */ var cover_transforms_transforms = { from: [{ type: 'block', blocks: ['core/image'], transform: function transform(_ref) { var caption = _ref.caption, url = _ref.url, align = _ref.align, id = _ref.id; return Object(external_this_wp_blocks_["createBlock"])('core/cover', { title: caption, url: url, align: align, id: id }); } }, { type: 'block', blocks: ['core/video'], transform: function transform(_ref2) { var caption = _ref2.caption, src = _ref2.src, align = _ref2.align, id = _ref2.id; return Object(external_this_wp_blocks_["createBlock"])('core/cover', { title: caption, url: src, align: align, id: id, backgroundType: VIDEO_BACKGROUND_TYPE }); } }], to: [{ type: 'block', blocks: ['core/image'], isMatch: function isMatch(_ref3) { var backgroundType = _ref3.backgroundType, url = _ref3.url, overlayColor = _ref3.overlayColor, customOverlayColor = _ref3.customOverlayColor, gradient = _ref3.gradient, customGradient = _ref3.customGradient; if (url) { // If a url exists the transform could happen if that URL represents an image background. return backgroundType === IMAGE_BACKGROUND_TYPE; } // If a url is not set the transform could happen if the cover has no background color or gradient; return !overlayColor && !customOverlayColor && !gradient && !customGradient; }, transform: function transform(_ref4) { var title = _ref4.title, url = _ref4.url, align = _ref4.align, id = _ref4.id; return Object(external_this_wp_blocks_["createBlock"])('core/image', { caption: title, url: url, align: align, id: id }); } }, { type: 'block', blocks: ['core/video'], isMatch: function isMatch(_ref5) { var backgroundType = _ref5.backgroundType, url = _ref5.url, overlayColor = _ref5.overlayColor, customOverlayColor = _ref5.customOverlayColor, gradient = _ref5.gradient, customGradient = _ref5.customGradient; if (url) { // If a url exists the transform could happen if that URL represents a video background. return backgroundType === VIDEO_BACKGROUND_TYPE; } // If a url is not set the transform could happen if the cover has no background color or gradient; return !overlayColor && !customOverlayColor && !gradient && !customGradient; }, transform: function transform(_ref6) { var title = _ref6.title, url = _ref6.url, align = _ref6.align, id = _ref6.id; return Object(external_this_wp_blocks_["createBlock"])('core/video', { caption: title, src: url, id: id, align: align }); } }] }; /* harmony default export */ var cover_transforms = (cover_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var cover_metadata = { name: "core/cover", category: "common", attributes: { url: { type: "string" }, id: { type: "number" }, hasParallax: { type: "boolean", "default": false }, dimRatio: { type: "number", "default": 50 }, overlayColor: { type: "string" }, customOverlayColor: { type: "string" }, backgroundType: { type: "string", "default": "image" }, focalPoint: { type: "object" }, minHeight: { type: "number" }, gradient: { type: "string" }, customGradient: { type: "string" } } }; var cover_name = cover_metadata.name; var cover_settings = { title: Object(external_this_wp_i18n_["__"])('Cover'), description: Object(external_this_wp_i18n_["__"])('Add an image or video with a text overlay — great for headers.'), icon: library_cover, supports: { align: true, html: false }, example: { attributes: { customOverlayColor: '#065174', dimRatio: 40, url: 'https://s.w.org/images/core/5.3/Windbuchencom.jpg' }, innerBlocks: [{ name: 'core/paragraph', attributes: { customFontSize: 48, content: Object(external_this_wp_i18n_["__"])('Snow Patrol'), align: 'center' } }] }, transforms: cover_transforms, save: cover_save_save, edit: cover_edit, deprecated: cover_deprecated }; // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/pencil.js var pencil = __webpack_require__("L0kB"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-controls.js /** * WordPress dependencies */ var embed_controls_EmbedControls = function EmbedControls(props) { var blockSupportsResponsive = props.blockSupportsResponsive, showEditButton = props.showEditButton, themeSupportsResponsive = props.themeSupportsResponsive, allowResponsive = props.allowResponsive, getResponsiveHelp = props.getResponsiveHelp, toggleResponsive = props.toggleResponsive, switchBackToURLInput = props.switchBackToURLInput; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, showEditButton && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "components-toolbar__control", label: Object(external_this_wp_i18n_["__"])('Edit URL'), icon: pencil["a" /* default */], onClick: switchBackToURLInput }))), themeSupportsResponsive && blockSupportsResponsive && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Media settings'), className: "blocks-responsive" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Resize for smaller devices'), checked: allowResponsive, help: getResponsiveHelp, onChange: toggleResponsive })))); }; /* harmony default export */ var embed_controls = (embed_controls_EmbedControls); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-loading.js /** * WordPress dependencies */ var embed_loading_EmbedLoading = function EmbedLoading() { return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-embed is-loading" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null), Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('Embedding…'))); }; /* harmony default export */ var embed_loading = (embed_loading_EmbedLoading); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-placeholder.js /** * WordPress dependencies */ var embed_placeholder_EmbedPlaceholder = function EmbedPlaceholder(props) { var icon = props.icon, label = props.label, value = props.value, onSubmit = props.onSubmit, onChange = props.onChange, cannotEmbed = props.cannotEmbed, fallback = props.fallback, tryAgain = props.tryAgain; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: icon, showColors: true }), label: label, className: "wp-block-embed", instructions: Object(external_this_wp_i18n_["__"])('Paste a link to the content you want to display on your site.') }, Object(external_this_wp_element_["createElement"])("form", { onSubmit: onSubmit }, Object(external_this_wp_element_["createElement"])("input", { type: "url", value: value || '', className: "components-placeholder__input", "aria-label": label, placeholder: Object(external_this_wp_i18n_["__"])('Enter URL to embed here…'), onChange: onChange }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, type: "submit" }, Object(external_this_wp_i18n_["_x"])('Embed', 'button label'))), Object(external_this_wp_element_["createElement"])("div", { className: "components-placeholder__learn-more" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { href: Object(external_this_wp_i18n_["__"])('https://wordpress.org/support/article/embeds/') }, Object(external_this_wp_i18n_["__"])('Learn more about embeds'))), cannotEmbed && Object(external_this_wp_element_["createElement"])("div", { className: "components-placeholder__error" }, Object(external_this_wp_element_["createElement"])("div", { className: "components-placeholder__instructions" }, Object(external_this_wp_i18n_["__"])('Sorry, this content could not be embedded.')), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, onClick: tryAgain }, Object(external_this_wp_i18n_["_x"])('Try again', 'button label')), ' ', Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, onClick: fallback }, Object(external_this_wp_i18n_["_x"])('Convert to link', 'button label')))); }; /* harmony default export */ var embed_placeholder = (embed_placeholder_EmbedPlaceholder); // EXTERNAL MODULE: ./node_modules/url/url.js var url_url = __webpack_require__("CxY0"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/wp-embed-preview.js /** * WordPress dependencies */ /** * Browser dependencies */ var wp_embed_preview_window = window, FocusEvent = wp_embed_preview_window.FocusEvent; var wp_embed_preview_WpEmbedPreview = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(WpEmbedPreview, _Component); function WpEmbedPreview() { var _this; Object(classCallCheck["a" /* default */])(this, WpEmbedPreview); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(WpEmbedPreview).apply(this, arguments)); _this.checkFocus = _this.checkFocus.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.node = Object(external_this_wp_element_["createRef"])(); return _this; } /** * Checks whether the wp embed iframe is the activeElement, * if it is dispatch a focus event. */ Object(createClass["a" /* default */])(WpEmbedPreview, [{ key: "checkFocus", value: function checkFocus() { var _document = document, activeElement = _document.activeElement; if (activeElement.tagName !== 'IFRAME' || activeElement.parentNode !== this.node.current) { return; } var focusEvent = new FocusEvent('focus', { bubbles: true }); activeElement.dispatchEvent(focusEvent); } }, { key: "render", value: function render() { var html = this.props.html; return Object(external_this_wp_element_["createElement"])("div", { ref: this.node, className: "wp-block-embed__wrapper", dangerouslySetInnerHTML: { __html: html } }); } }]); return WpEmbedPreview; }(external_this_wp_element_["Component"]); /* harmony default export */ var wp_embed_preview = (Object(external_this_wp_compose_["withGlobalEvents"])({ blur: 'checkFocus' })(wp_embed_preview_WpEmbedPreview)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-preview.js /** * Internal dependencies */ /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var embed_preview_EmbedPreview = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(EmbedPreview, _Component); function EmbedPreview() { var _this; Object(classCallCheck["a" /* default */])(this, EmbedPreview); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(EmbedPreview).apply(this, arguments)); _this.hideOverlay = _this.hideOverlay.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { interactive: false }; return _this; } Object(createClass["a" /* default */])(EmbedPreview, [{ key: "hideOverlay", value: function hideOverlay() { // This is called onMouseUp on the overlay. We can't respond to the `isSelected` prop // changing, because that happens on mouse down, and the overlay immediately disappears, // and the mouse event can end up in the preview content. We can't use onClick on // the overlay to hide it either, because then the editor misses the mouseup event, and // thinks we're multi-selecting blocks. this.setState({ interactive: true }); } }, { key: "render", value: function render() { var _this$props = this.props, preview = _this$props.preview, url = _this$props.url, type = _this$props.type, caption = _this$props.caption, onCaptionChange = _this$props.onCaptionChange, isSelected = _this$props.isSelected, className = _this$props.className, icon = _this$props.icon, label = _this$props.label; var scripts = preview.scripts; var interactive = this.state.interactive; var html = 'photo' === type ? util_getPhotoHtml(preview) : preview.html; var parsedHost = Object(url_url["parse"])(url).host.split('.'); var parsedHostBaseUrl = parsedHost.splice(parsedHost.length - 2, parsedHost.length - 1).join('.'); var cannotPreview = Object(external_this_lodash_["includes"])(HOSTS_NO_PREVIEWS, parsedHostBaseUrl); // translators: %s: host providing embed content e.g: www.youtube.com var iframeTitle = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Embedded content from %s'), parsedHostBaseUrl); var sandboxClassnames = dedupe_default()(type, className, 'wp-block-embed__wrapper'); // Disabled because the overlay div doesn't actually have a role or functionality // as far as the user is concerned. We're just catching the first click so that // the block can be selected without interacting with the embed preview that the overlay covers. /* eslint-disable jsx-a11y/no-static-element-interactions */ var embedWrapper = 'wp-embed' === type ? Object(external_this_wp_element_["createElement"])(wp_embed_preview, { html: html }) : Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-embed__wrapper" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SandBox"], { html: html, scripts: scripts, title: iframeTitle, type: sandboxClassnames, onFocus: this.hideOverlay }), !interactive && Object(external_this_wp_element_["createElement"])("div", { className: "block-library-embed__interactive-overlay", onMouseUp: this.hideOverlay })); /* eslint-enable jsx-a11y/no-static-element-interactions */ return Object(external_this_wp_element_["createElement"])("figure", { className: dedupe_default()(className, 'wp-block-embed', { 'is-type-video': 'video' === type }) }, cannotPreview ? Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: icon, showColors: true }), label: label }, Object(external_this_wp_element_["createElement"])("p", { className: "components-placeholder__error" }, Object(external_this_wp_element_["createElement"])("a", { href: url }, url)), Object(external_this_wp_element_["createElement"])("p", { className: "components-placeholder__error" }, /* translators: %s: host providing embed content e.g: www.youtube.com */ Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])("Embedded content from %s can't be previewed in the editor."), parsedHostBaseUrl))) : embedWrapper, (!external_this_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: Object(external_this_wp_i18n_["__"])('Write caption…'), value: caption, onChange: onCaptionChange, inlineToolbar: true })); } }], [{ key: "getDerivedStateFromProps", value: function getDerivedStateFromProps(nextProps, state) { if (!nextProps.isSelected && state.interactive) { // We only want to change this when the block is not selected, because changing it when // the block becomes selected makes the overlap disappear too early. Hiding the overlay // happens on mouseup when the overlay is clicked. return { interactive: false }; } return null; } }]); return EmbedPreview; }(external_this_wp_element_["Component"]); /* harmony default export */ var embed_preview = (embed_preview_EmbedPreview); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/edit.js function embed_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function embed_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { embed_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { embed_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Internal dependencies */ /** * External dependencies */ /** * WordPress dependencies */ function getEmbedEditComponent(title, icon) { var responsive = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; return ( /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(_class, _Component); function _class() { var _this; Object(classCallCheck["a" /* default */])(this, _class); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments)); _this.switchBackToURLInput = _this.switchBackToURLInput.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setUrl = _this.setUrl.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getMergedAttributes = _this.getMergedAttributes.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setMergedAttributes = _this.setMergedAttributes.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getResponsiveHelp = _this.getResponsiveHelp.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.toggleResponsive = _this.toggleResponsive.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.handleIncomingPreview = _this.handleIncomingPreview.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { editingURL: false, url: _this.props.attributes.url }; if (_this.props.preview) { _this.handleIncomingPreview(); } return _this; } Object(createClass["a" /* default */])(_class, [{ key: "handleIncomingPreview", value: function handleIncomingPreview() { this.setMergedAttributes(); if (this.props.onReplace) { var upgradedBlock = util_createUpgradedEmbedBlock(this.props, this.getMergedAttributes()); if (upgradedBlock) { this.props.onReplace(upgradedBlock); } } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var hasPreview = undefined !== this.props.preview; var hadPreview = undefined !== prevProps.preview; var previewChanged = prevProps.preview && this.props.preview && this.props.preview.html !== prevProps.preview.html; var switchedPreview = previewChanged || hasPreview && !hadPreview; var switchedURL = this.props.attributes.url !== prevProps.attributes.url; if (switchedPreview || switchedURL) { if (this.props.cannotEmbed) { // We either have a new preview or a new URL, but we can't embed it. if (!this.props.fetching) { // If we're not fetching the preview, then we know it can't be embedded, so try // removing any trailing slash, and resubmit. this.resubmitWithoutTrailingSlash(); } return; } this.handleIncomingPreview(); } } }, { key: "resubmitWithoutTrailingSlash", value: function resubmitWithoutTrailingSlash() { this.setState(function (prevState) { return { url: prevState.url.replace(/\/$/, '') }; }, this.setUrl); } }, { key: "setUrl", value: function setUrl(event) { if (event) { event.preventDefault(); } var url = this.state.url; var setAttributes = this.props.setAttributes; this.setState({ editingURL: false }); setAttributes({ url: url }); } /*** * @return {Object} Attributes derived from the preview, merged with the current attributes. */ }, { key: "getMergedAttributes", value: function getMergedAttributes() { var preview = this.props.preview; var _this$props$attribute = this.props.attributes, className = _this$props$attribute.className, allowResponsive = _this$props$attribute.allowResponsive; return embed_edit_objectSpread({}, this.props.attributes, {}, getAttributesFromPreview(preview, title, className, responsive, allowResponsive)); } /*** * Sets block attributes based on the current attributes and preview data. */ }, { key: "setMergedAttributes", value: function setMergedAttributes() { var setAttributes = this.props.setAttributes; setAttributes(this.getMergedAttributes()); } }, { key: "switchBackToURLInput", value: function switchBackToURLInput() { this.setState({ editingURL: true }); } }, { key: "getResponsiveHelp", value: function getResponsiveHelp(checked) { return checked ? Object(external_this_wp_i18n_["__"])('This embed will preserve its aspect ratio when the browser is resized.') : Object(external_this_wp_i18n_["__"])('This embed may not preserve its aspect ratio when the browser is resized.'); } }, { key: "toggleResponsive", value: function toggleResponsive() { var _this$props$attribute2 = this.props.attributes, allowResponsive = _this$props$attribute2.allowResponsive, className = _this$props$attribute2.className; var html = this.props.preview.html; var newAllowResponsive = !allowResponsive; this.props.setAttributes({ allowResponsive: newAllowResponsive, className: getClassNames(html, className, responsive && newAllowResponsive) }); } }, { key: "render", value: function render() { var _this2 = this; var _this$state = this.state, url = _this$state.url, editingURL = _this$state.editingURL; var _this$props = this.props, fetching = _this$props.fetching, setAttributes = _this$props.setAttributes, isSelected = _this$props.isSelected, preview = _this$props.preview, cannotEmbed = _this$props.cannotEmbed, themeSupportsResponsive = _this$props.themeSupportsResponsive, tryAgain = _this$props.tryAgain; if (fetching) { return Object(external_this_wp_element_["createElement"])(embed_loading, null); } // translators: %s: type of embed e.g: "YouTube", "Twitter", etc. "Embed" is used when no specific type exists var label = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('%s URL'), title); // No preview, or we can't embed the current URL, or we've clicked the edit button. if (!preview || cannotEmbed || editingURL) { return Object(external_this_wp_element_["createElement"])(embed_placeholder, { icon: icon, label: label, onSubmit: this.setUrl, value: url, cannotEmbed: cannotEmbed, onChange: function onChange(event) { return _this2.setState({ url: event.target.value }); }, fallback: function fallback() { return util_fallback(url, _this2.props.onReplace); }, tryAgain: tryAgain }); } // Even though we set attributes that get derived from the preview, // we don't access them directly because for the initial render, // the `setAttributes` call will not have taken effect. If we're // rendering responsive content, setting the responsive classes // after the preview has been rendered can result in unwanted // clipping or scrollbars. The `getAttributesFromPreview` function // that `getMergedAttributes` uses is memoized so that we're not // calculating them on every render. var previewAttributes = this.getMergedAttributes(); var caption = previewAttributes.caption, type = previewAttributes.type, allowResponsive = previewAttributes.allowResponsive; var className = classnames_default()(previewAttributes.className, this.props.className); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(embed_controls, { showEditButton: preview && !cannotEmbed, themeSupportsResponsive: themeSupportsResponsive, blockSupportsResponsive: responsive, allowResponsive: allowResponsive, getResponsiveHelp: this.getResponsiveHelp, toggleResponsive: this.toggleResponsive, switchBackToURLInput: this.switchBackToURLInput }), Object(external_this_wp_element_["createElement"])(embed_preview, { preview: preview, className: className, url: url, type: type, caption: caption, onCaptionChange: function onCaptionChange(value) { return setAttributes({ caption: value }); }, isSelected: isSelected, icon: icon, label: label })); } }]); return _class; }(external_this_wp_element_["Component"]) ); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/settings.js function settings_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function settings_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { settings_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { settings_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Internal dependencies */ /** * External dependencies */ /** * WordPress dependencies */ var embedAttributes = { url: { type: 'string' }, caption: { type: 'string', source: 'html', selector: 'figcaption' }, type: { type: 'string' }, providerNameSlug: { type: 'string' }, allowResponsive: { type: 'boolean', default: true } }; function getEmbedBlockSettings(_ref) { var title = _ref.title, description = _ref.description, icon = _ref.icon, _ref$category = _ref.category, category = _ref$category === void 0 ? 'embed' : _ref$category, transforms = _ref.transforms, _ref$keywords = _ref.keywords, keywords = _ref$keywords === void 0 ? [] : _ref$keywords, _ref$supports = _ref.supports, supports = _ref$supports === void 0 ? {} : _ref$supports, _ref$responsive = _ref.responsive, responsive = _ref$responsive === void 0 ? true : _ref$responsive; var blockDescription = description || Object(external_this_wp_i18n_["__"])('Add a block that displays content pulled from other sites, like Twitter, Instagram or YouTube.'); var edit = getEmbedEditComponent(title, icon, responsive); return { title: title, description: blockDescription, icon: icon, category: category, keywords: keywords, attributes: embedAttributes, supports: settings_objectSpread({ align: true }, supports), transforms: transforms, edit: Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select, ownProps) { var url = ownProps.attributes.url; var core = select('core'); var getEmbedPreview = core.getEmbedPreview, isPreviewEmbedFallback = core.isPreviewEmbedFallback, isRequestingEmbedPreview = core.isRequestingEmbedPreview, getThemeSupports = core.getThemeSupports; var preview = undefined !== url && getEmbedPreview(url); var previewIsFallback = undefined !== url && isPreviewEmbedFallback(url); var fetching = undefined !== url && isRequestingEmbedPreview(url); var themeSupports = getThemeSupports(); // The external oEmbed provider does not exist. We got no type info and no html. var badEmbedProvider = !!preview && undefined === preview.type && false === preview.html; // Some WordPress URLs that can't be embedded will cause the API to return // a valid JSON response with no HTML and `data.status` set to 404, rather // than generating a fallback response as other embeds do. var wordpressCantEmbed = !!preview && preview.data && preview.data.status === 404; var validPreview = !!preview && !badEmbedProvider && !wordpressCantEmbed; var cannotEmbed = undefined !== url && (!validPreview || previewIsFallback); return { preview: validPreview ? preview : undefined, fetching: fetching, themeSupportsResponsive: themeSupports['responsive-embeds'], cannotEmbed: cannotEmbed }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, ownProps) { var url = ownProps.attributes.url; var coreData = dispatch('core/data'); var tryAgain = function tryAgain() { coreData.invalidateResolution('core', 'getEmbedPreview', [url]); }; return { tryAgain: tryAgain }; }))(edit), save: function save(_ref2) { var _classnames; var attributes = _ref2.attributes; var url = attributes.url, caption = attributes.caption, type = attributes.type, providerNameSlug = attributes.providerNameSlug; if (!url) { return null; } var embedClassName = dedupe_default()('wp-block-embed', (_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, "is-type-".concat(type), type), Object(defineProperty["a" /* default */])(_classnames, "is-provider-".concat(providerNameSlug), providerNameSlug), _classnames)); return Object(external_this_wp_element_["createElement"])("figure", { className: embedClassName }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-embed__wrapper" }, "\n".concat(url, "\n") /* URL needs to be on its own line. */ ), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); }, deprecated: [{ attributes: embedAttributes, save: function save(_ref3) { var _classnames2; var attributes = _ref3.attributes; var url = attributes.url, caption = attributes.caption, type = attributes.type, providerNameSlug = attributes.providerNameSlug; if (!url) { return null; } var embedClassName = dedupe_default()('wp-block-embed', (_classnames2 = {}, Object(defineProperty["a" /* default */])(_classnames2, "is-type-".concat(type), type), Object(defineProperty["a" /* default */])(_classnames2, "is-provider-".concat(providerNameSlug), providerNameSlug), _classnames2)); return Object(external_this_wp_element_["createElement"])("figure", { className: embedClassName }, "\n".concat(url, "\n") /* URL needs to be on its own line. */ , !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } }] }; } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/index.js function embed_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function embed_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { embed_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { embed_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Internal dependencies */ /** * WordPress dependencies */ var embed_name = 'core/embed'; var embed_settings = getEmbedBlockSettings({ title: Object(external_this_wp_i18n_["_x"])('Embed', 'block title'), description: Object(external_this_wp_i18n_["__"])('Embed videos, images, tweets, audio, and other content from external sources.'), icon: embedContentIcon, // Unknown embeds should not be responsive by default. responsive: false, transforms: { from: [{ type: 'raw', isMatch: function isMatch(node) { return node.nodeName === 'P' && /^\s*(https?:\/\/\S+)\s*$/i.test(node.textContent); }, transform: function transform(node) { return Object(external_this_wp_blocks_["createBlock"])('core/embed', { url: node.textContent.trim() }); } }] } }); var embed_common = common.map(function (embedDefinition) { return embed_objectSpread({}, embedDefinition, { settings: getEmbedBlockSettings(embedDefinition.settings) }); }); var embed_others = others.map(function (embedDefinition) { return embed_objectSpread({}, embedDefinition, { settings: getEmbedBlockSettings(embedDefinition.settings) }); }); // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/file.js /** * WordPress dependencies */ var file_file = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M9.17 6l2 2H20v10H4V6h5.17M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z" })); /* harmony default export */ var library_file = (file_file); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/inspector.js /** * WordPress dependencies */ function FileBlockInspector(_ref) { var hrefs = _ref.hrefs, openInNewWindow = _ref.openInNewWindow, showDownloadButton = _ref.showDownloadButton, changeLinkDestinationOption = _ref.changeLinkDestinationOption, changeOpenInNewWindow = _ref.changeOpenInNewWindow, changeShowDownloadButton = _ref.changeShowDownloadButton; var href = hrefs.href, textLinkHref = hrefs.textLinkHref, attachmentPage = hrefs.attachmentPage; var linkDestinationOptions = [{ value: href, label: Object(external_this_wp_i18n_["__"])('URL') }]; if (attachmentPage) { linkDestinationOptions = [{ value: href, label: Object(external_this_wp_i18n_["__"])('Media file') }, { value: attachmentPage, label: Object(external_this_wp_i18n_["__"])('Attachment page') }]; } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Text link settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { label: Object(external_this_wp_i18n_["__"])('Link to'), value: textLinkHref, options: linkDestinationOptions, onChange: changeLinkDestinationOption }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Open in new tab'), checked: openInNewWindow, onChange: changeOpenInNewWindow })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Download button settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Show download button'), checked: showDownloadButton, onChange: changeShowDownloadButton })))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var edit_FileEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(FileEdit, _Component); function FileEdit() { var _this; Object(classCallCheck["a" /* default */])(this, FileEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FileEdit).apply(this, arguments)); _this.onSelectFile = _this.onSelectFile.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.confirmCopyURL = _this.confirmCopyURL.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.resetCopyConfirmation = _this.resetCopyConfirmation.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.changeLinkDestinationOption = _this.changeLinkDestinationOption.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.changeOpenInNewWindow = _this.changeOpenInNewWindow.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.changeShowDownloadButton = _this.changeShowDownloadButton.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { hasError: false, showCopyConfirmation: false }; return _this; } Object(createClass["a" /* default */])(FileEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; var _this$props = this.props, attributes = _this$props.attributes, mediaUpload = _this$props.mediaUpload, noticeOperations = _this$props.noticeOperations, setAttributes = _this$props.setAttributes; var downloadButtonText = attributes.downloadButtonText, href = attributes.href; // Upload a file drag-and-dropped into the editor if (Object(external_this_wp_blob_["isBlobURL"])(href)) { var file = Object(external_this_wp_blob_["getBlobByURL"])(href); mediaUpload({ filesList: [file], onFileChange: function onFileChange(_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 1), media = _ref2[0]; return _this2.onSelectFile(media); }, onError: function onError(message) { _this2.setState({ hasError: true }); noticeOperations.createErrorNotice(message); } }); Object(external_this_wp_blob_["revokeBlobURL"])(href); } if (downloadButtonText === undefined) { setAttributes({ downloadButtonText: Object(external_this_wp_i18n_["_x"])('Download', 'button label') }); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { // Reset copy confirmation state when block is deselected if (prevProps.isSelected && !this.props.isSelected) { this.setState({ showCopyConfirmation: false }); } } }, { key: "onSelectFile", value: function onSelectFile(media) { if (media && media.url) { this.setState({ hasError: false }); this.props.setAttributes({ href: media.url, fileName: media.title, textLinkHref: media.url, id: media.id }); } } }, { key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "confirmCopyURL", value: function confirmCopyURL() { this.setState({ showCopyConfirmation: true }); } }, { key: "resetCopyConfirmation", value: function resetCopyConfirmation() { this.setState({ showCopyConfirmation: false }); } }, { key: "changeLinkDestinationOption", value: function changeLinkDestinationOption(newHref) { // Choose Media File or Attachment Page (when file is in Media Library) this.props.setAttributes({ textLinkHref: newHref }); } }, { key: "changeOpenInNewWindow", value: function changeOpenInNewWindow(newValue) { this.props.setAttributes({ textLinkTarget: newValue ? '_blank' : false }); } }, { key: "changeShowDownloadButton", value: function changeShowDownloadButton(newValue) { this.props.setAttributes({ showDownloadButton: newValue }); } }, { key: "render", value: function render() { var _this3 = this; var _this$props2 = this.props, className = _this$props2.className, isSelected = _this$props2.isSelected, attributes = _this$props2.attributes, setAttributes = _this$props2.setAttributes, noticeUI = _this$props2.noticeUI, media = _this$props2.media; var id = attributes.id, fileName = attributes.fileName, href = attributes.href, textLinkHref = attributes.textLinkHref, textLinkTarget = attributes.textLinkTarget, showDownloadButton = attributes.showDownloadButton, downloadButtonText = attributes.downloadButtonText; var _this$state = this.state, hasError = _this$state.hasError, showCopyConfirmation = _this$state.showCopyConfirmation; var attachmentPage = media && media.link; if (!href || hasError) { return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_file }), labels: { title: Object(external_this_wp_i18n_["__"])('File'), instructions: Object(external_this_wp_i18n_["__"])('Upload a file or pick one from your media library.') }, onSelect: this.onSelectFile, notices: noticeUI, onError: this.onUploadError, accept: "*" }); } var classes = classnames_default()(className, { 'is-transient': Object(external_this_wp_blob_["isBlobURL"])(href) }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(FileBlockInspector, Object(esm_extends["a" /* default */])({ hrefs: { href: href, textLinkHref: textLinkHref, attachmentPage: attachmentPage } }, { openInNewWindow: !!textLinkTarget, showDownloadButton: showDownloadButton, changeLinkDestinationOption: this.changeLinkDestinationOption, changeOpenInNewWindow: this.changeOpenInNewWindow, changeShowDownloadButton: this.changeShowDownloadButton })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: id, mediaURL: href, accept: "*", onSelect: this.onSelectFile, onError: this.onUploadError })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Animate"], { type: Object(external_this_wp_blob_["isBlobURL"])(href) ? 'loading' : null }, function (_ref3) { var animateClassName = _ref3.className; return Object(external_this_wp_element_["createElement"])("div", { className: classnames_default()(classes, animateClassName) }, Object(external_this_wp_element_["createElement"])("div", { className: 'wp-block-file__content-wrapper' }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-file__textlink" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "div" // must be block-level or else cursor disappears , value: fileName, placeholder: Object(external_this_wp_i18n_["__"])('Write file name…'), withoutInteractiveFormatting: true, onChange: function onChange(text) { return setAttributes({ fileName: text }); } })), showDownloadButton && Object(external_this_wp_element_["createElement"])("div", { className: 'wp-block-file__button-richtext-wrapper' }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "div" // must be block-level or else cursor disappears , className: 'wp-block-file__button', value: downloadButtonText, withoutInteractiveFormatting: true, placeholder: Object(external_this_wp_i18n_["__"])('Add text…'), onChange: function onChange(text) { return setAttributes({ downloadButtonText: text }); } }))), isSelected && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ClipboardButton"], { isSecondary: true, text: href, className: 'wp-block-file__copy-url-button', onCopy: _this3.confirmCopyURL, onFinishCopy: _this3.resetCopyConfirmation, disabled: Object(external_this_wp_blob_["isBlobURL"])(href) }, showCopyConfirmation ? Object(external_this_wp_i18n_["__"])('Copied!') : Object(external_this_wp_i18n_["__"])('Copy URL'))); })); } }]); return FileEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var file_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, props) { var _select = select('core'), getMedia = _select.getMedia; var _select2 = select('core/block-editor'), getSettings = _select2.getSettings; var _getSettings = getSettings(), mediaUpload = _getSettings.mediaUpload; var id = props.attributes.id; return { media: id === undefined ? undefined : getMedia(id), mediaUpload: mediaUpload }; }), external_this_wp_components_["withNotices"]])(edit_FileEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/save.js /** * WordPress dependencies */ function file_save_save(_ref) { var attributes = _ref.attributes; var href = attributes.href, fileName = attributes.fileName, textLinkHref = attributes.textLinkHref, textLinkTarget = attributes.textLinkTarget, showDownloadButton = attributes.showDownloadButton, downloadButtonText = attributes.downloadButtonText; return href && Object(external_this_wp_element_["createElement"])("div", null, !external_this_wp_blockEditor_["RichText"].isEmpty(fileName) && Object(external_this_wp_element_["createElement"])("a", { href: textLinkHref, target: textLinkTarget, rel: textLinkTarget ? 'noreferrer noopener' : false }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: fileName })), showDownloadButton && Object(external_this_wp_element_["createElement"])("a", { href: href, className: "wp-block-file__button", download: true }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: downloadButtonText }))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/transforms.js /** * External dependencies */ /** * WordPress dependencies */ var file_transforms_transforms = { from: [{ type: 'files', isMatch: function isMatch(files) { return files.length > 0; }, // We define a lower priorty (higher number) than the default of 10. This // ensures that the File block is only created as a fallback. priority: 15, transform: function transform(files) { var blocks = []; files.forEach(function (file) { var blobURL = Object(external_this_wp_blob_["createBlobURL"])(file); // File will be uploaded in componentDidMount() blocks.push(Object(external_this_wp_blocks_["createBlock"])('core/file', { href: blobURL, fileName: file.name, textLinkHref: blobURL })); }); return blocks; } }, { type: 'block', blocks: ['core/audio'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/file', { href: attributes.src, fileName: attributes.caption, textLinkHref: attributes.src, id: attributes.id }); } }, { type: 'block', blocks: ['core/video'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/file', { href: attributes.src, fileName: attributes.caption, textLinkHref: attributes.src, id: attributes.id }); } }, { type: 'block', blocks: ['core/image'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/file', { href: attributes.url, fileName: attributes.caption, textLinkHref: attributes.url, id: attributes.id }); } }], to: [{ type: 'block', blocks: ['core/audio'], isMatch: function isMatch(_ref) { var id = _ref.id; if (!id) { return false; } var _select = Object(external_this_wp_data_["select"])('core'), getMedia = _select.getMedia; var media = getMedia(id); return !!media && Object(external_this_lodash_["includes"])(media.mime_type, 'audio'); }, transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/audio', { src: attributes.href, caption: attributes.fileName, id: attributes.id }); } }, { type: 'block', blocks: ['core/video'], isMatch: function isMatch(_ref2) { var id = _ref2.id; if (!id) { return false; } var _select2 = Object(external_this_wp_data_["select"])('core'), getMedia = _select2.getMedia; var media = getMedia(id); return !!media && Object(external_this_lodash_["includes"])(media.mime_type, 'video'); }, transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/video', { src: attributes.href, caption: attributes.fileName, id: attributes.id }); } }, { type: 'block', blocks: ['core/image'], isMatch: function isMatch(_ref3) { var id = _ref3.id; if (!id) { return false; } var _select3 = Object(external_this_wp_data_["select"])('core'), getMedia = _select3.getMedia; var media = getMedia(id); return !!media && Object(external_this_lodash_["includes"])(media.mime_type, 'image'); }, transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/image', { url: attributes.href, caption: attributes.fileName, id: attributes.id }); } }] }; /* harmony default export */ var file_transforms = (file_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var file_metadata = { name: "core/file", category: "common", attributes: { id: { type: "number" }, href: { type: "string" }, fileName: { type: "string", source: "html", selector: "a:not([download])" }, textLinkHref: { type: "string", source: "attribute", selector: "a:not([download])", attribute: "href" }, textLinkTarget: { type: "string", source: "attribute", selector: "a:not([download])", attribute: "target" }, showDownloadButton: { type: "boolean", "default": true }, downloadButtonText: { type: "string", source: "html", selector: "a[download]" } } }; var file_name = file_metadata.name; var file_settings = { title: Object(external_this_wp_i18n_["__"])('File'), description: Object(external_this_wp_i18n_["__"])('Add a link to a downloadable file.'), icon: library_file, keywords: [Object(external_this_wp_i18n_["__"])('document'), Object(external_this_wp_i18n_["__"])('pdf'), Object(external_this_wp_i18n_["__"])('download')], supports: { align: true }, transforms: file_transforms, edit: file_edit, save: file_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/html.js /** * WordPress dependencies */ var html_html = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M4.5,11h-2V9H1v6h1.5v-2.5h2V15H6V9H4.5V11z M7,10.5h1.5V15H10v-4.5h1.5V9H7V10.5z M14.5,10l-1-1H12v6h1.5v-3.9 l1,1l1-1V15H17V9h-1.5L14.5,10z M19.5,13.5V9H18v6h5v-1.5H19.5z" })); /* harmony default export */ var library_html = (html_html); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/edit.js /** * WordPress dependencies */ var edit_HTMLEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(HTMLEdit, _Component); function HTMLEdit() { var _this; Object(classCallCheck["a" /* default */])(this, HTMLEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(HTMLEdit).apply(this, arguments)); _this.state = { isPreview: false, styles: [] }; _this.switchToHTML = _this.switchToHTML.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.switchToPreview = _this.switchToPreview.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(HTMLEdit, [{ key: "componentDidMount", value: function componentDidMount() { var styles = this.props.styles; // Default styles used to unset some of the styles // that might be inherited from the editor style. var defaultStyles = "\n\t\t\thtml,body,:root {\n\t\t\t\tmargin: 0 !important;\n\t\t\t\tpadding: 0 !important;\n\t\t\t\toverflow: visible !important;\n\t\t\t\tmin-height: auto !important;\n\t\t\t}\n\t\t"; this.setState({ styles: [defaultStyles].concat(Object(toConsumableArray["a" /* default */])(Object(external_this_wp_blockEditor_["transformStyles"])(styles))) }); } }, { key: "switchToPreview", value: function switchToPreview() { this.setState({ isPreview: true }); } }, { key: "switchToHTML", value: function switchToHTML() { this.setState({ isPreview: false }); } }, { key: "render", value: function render() { var _this$props = this.props, attributes = _this$props.attributes, setAttributes = _this$props.setAttributes; var _this$state = this.state, isPreview = _this$state.isPreview, styles = _this$state.styles; return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-html" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "components-tab-button", isPressed: !isPreview, onClick: this.switchToHTML }, Object(external_this_wp_element_["createElement"])("span", null, "HTML")), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "components-tab-button", isPressed: isPreview, onClick: this.switchToPreview }, Object(external_this_wp_element_["createElement"])("span", null, Object(external_this_wp_i18n_["__"])('Preview'))))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"].Consumer, null, function (isDisabled) { return isPreview || isDisabled ? Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SandBox"], { html: attributes.content, styles: styles }) : Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PlainText"], { value: attributes.content, onChange: function onChange(content) { return setAttributes({ content: content }); }, placeholder: Object(external_this_wp_i18n_["__"])('Write HTML…'), "aria-label": Object(external_this_wp_i18n_["__"])('HTML') }); })); } }]); return HTMLEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var html_edit = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getSettings = _select.getSettings; return { styles: getSettings().styles }; })(edit_HTMLEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/save.js /** * WordPress dependencies */ function html_save_save(_ref) { var attributes = _ref.attributes; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, attributes.content); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/transforms.js var html_transforms_transforms = { from: [{ type: 'raw', isMatch: function isMatch(node) { return node.nodeName === 'FIGURE' && !!node.querySelector('iframe'); }, schema: function schema(_ref) { var phrasingContentSchema = _ref.phrasingContentSchema; return { figure: { require: ['iframe'], children: { iframe: { attributes: ['src', 'allowfullscreen', 'height', 'width'] }, figcaption: { children: phrasingContentSchema } } } }; } }] }; /* harmony default export */ var html_transforms = (html_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var html_metadata = { name: "core/html", category: "formatting", attributes: { content: { type: "string", source: "html" } } }; var html_name = html_metadata.name; var html_settings = { title: Object(external_this_wp_i18n_["__"])('Custom HTML'), description: Object(external_this_wp_i18n_["__"])('Add custom HTML code and preview it as you edit.'), icon: library_html, keywords: [Object(external_this_wp_i18n_["__"])('embed')], example: { attributes: { content: '' + Object(external_this_wp_i18n_["__"])('Welcome to the wonderful world of blocks…') + '' } }, supports: { customClassName: false, className: false, html: false }, transforms: html_transforms, edit: html_edit, save: html_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/media-and-text.js /** * WordPress dependencies */ var mediaAndText = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M13 17h8v-2h-8v2zM3 19h8V5H3v14zM13 9h8V7h-8v2zm0 4h8v-2h-8v2z" })); /* harmony default export */ var media_and_text = (mediaAndText); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/media-container-icon.js /** * WordPress dependencies */ /* harmony default export */ var media_container_icon = (Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M18 2l2 4h-2l-2-4h-3l2 4h-2l-2-4h-1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V2zm2 12H10V4.4L11.8 8H20z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M14 20H4V10h3V8H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-3h-2z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M5 19h8l-1.59-2H9.24l-.84 1.1L7 16.3 5 19z" }))); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/media-container.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Constants */ var media_container_ALLOWED_MEDIA_TYPES = ['image', 'video']; function imageFillStyles(url, focalPoint) { return url ? { backgroundImage: "url(".concat(url, ")"), backgroundPosition: focalPoint ? "".concat(focalPoint.x * 100, "% ").concat(focalPoint.y * 100, "%") : "50% 50%" } : {}; } var media_container_MediaContainer = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(MediaContainer, _Component); function MediaContainer() { var _this; Object(classCallCheck["a" /* default */])(this, MediaContainer); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(MediaContainer).apply(this, arguments)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(MediaContainer, [{ key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "renderToolbarEditButton", value: function renderToolbarEditButton() { var _this$props = this.props, onSelectMedia = _this$props.onSelectMedia, mediaUrl = _this$props.mediaUrl, mediaId = _this$props.mediaId; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: mediaId, mediaURL: mediaUrl, allowedTypes: media_container_ALLOWED_MEDIA_TYPES, accept: "image/*,video/*", onSelect: onSelectMedia })); } }, { key: "renderImage", value: function renderImage() { var _this$props2 = this.props, mediaAlt = _this$props2.mediaAlt, mediaUrl = _this$props2.mediaUrl, className = _this$props2.className, imageFill = _this$props2.imageFill, focalPoint = _this$props2.focalPoint; var backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {}; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, this.renderToolbarEditButton(), Object(external_this_wp_element_["createElement"])("figure", { className: className, style: backgroundStyles }, Object(external_this_wp_element_["createElement"])("img", { src: mediaUrl, alt: mediaAlt }))); } }, { key: "renderVideo", value: function renderVideo() { var _this$props3 = this.props, mediaUrl = _this$props3.mediaUrl, className = _this$props3.className; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, this.renderToolbarEditButton(), Object(external_this_wp_element_["createElement"])("figure", { className: className }, Object(external_this_wp_element_["createElement"])("video", { controls: true, src: mediaUrl }))); } }, { key: "renderPlaceholder", value: function renderPlaceholder() { var _this$props4 = this.props, onSelectMedia = _this$props4.onSelectMedia, className = _this$props4.className, noticeUI = _this$props4.noticeUI; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: media_container_icon }), labels: { title: Object(external_this_wp_i18n_["__"])('Media area') }, className: className, onSelect: onSelectMedia, accept: "image/*,video/*", allowedTypes: media_container_ALLOWED_MEDIA_TYPES, notices: noticeUI, onError: this.onUploadError }); } }, { key: "render", value: function render() { var _this$props5 = this.props, mediaPosition = _this$props5.mediaPosition, mediaUrl = _this$props5.mediaUrl, mediaType = _this$props5.mediaType, mediaWidth = _this$props5.mediaWidth, commitWidthChange = _this$props5.commitWidthChange, onWidthChange = _this$props5.onWidthChange, toggleSelection = _this$props5.toggleSelection; if (mediaType && mediaUrl) { var onResizeStart = function onResizeStart() { toggleSelection(false); }; var onResize = function onResize(event, direction, elt) { onWidthChange(parseInt(elt.style.width)); }; var onResizeStop = function onResizeStop(event, direction, elt) { toggleSelection(true); commitWidthChange(parseInt(elt.style.width)); }; var enablePositions = { right: mediaPosition === 'left', left: mediaPosition === 'right' }; var mediaElement = null; switch (mediaType) { case 'image': mediaElement = this.renderImage(); break; case 'video': mediaElement = this.renderVideo(); break; } return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ResizableBox"], { className: "editor-media-container__resizer", size: { width: mediaWidth + '%' }, minWidth: "10%", maxWidth: "100%", enable: enablePositions, onResizeStart: onResizeStart, onResize: onResize, onResizeStop: onResizeStop, axis: "x" }, mediaElement); } return this.renderPlaceholder(); } }]); return MediaContainer; }(external_this_wp_element_["Component"]); /* harmony default export */ var media_container = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), toggleSelection = _dispatch.toggleSelection; return { toggleSelection: toggleSelection }; }), external_this_wp_components_["withNotices"]])(media_container_MediaContainer)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/deprecated.js function media_text_deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function media_text_deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { media_text_deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { media_text_deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var DEFAULT_MEDIA_WIDTH = 50; var baseAttributes = { align: { type: 'string', default: 'wide' }, backgroundColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, mediaAlt: { type: 'string', source: 'attribute', selector: 'figure img', attribute: 'alt', default: '' }, mediaPosition: { type: 'string', default: 'left' }, mediaId: { type: 'number' }, mediaUrl: { type: 'string', source: 'attribute', selector: 'figure video,figure img', attribute: 'src' }, mediaType: { type: 'string' }, mediaWidth: { type: 'number', default: 50 }, isStackedOnMobile: { type: 'boolean', default: false } }; /* harmony default export */ var media_text_deprecated = ([{ attributes: media_text_deprecated_objectSpread({}, baseAttributes, { verticalAlignment: { type: 'string' }, imageFill: { type: 'boolean' }, focalPoint: { type: 'object' } }), save: function save(_ref) { var _classnames; var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, isStackedOnMobile = attributes.isStackedOnMobile, mediaAlt = attributes.mediaAlt, mediaPosition = attributes.mediaPosition, mediaType = attributes.mediaType, mediaUrl = attributes.mediaUrl, mediaWidth = attributes.mediaWidth, mediaId = attributes.mediaId, verticalAlignment = attributes.verticalAlignment, imageFill = attributes.imageFill, focalPoint = attributes.focalPoint; var mediaTypeRenders = { image: function image() { return Object(external_this_wp_element_["createElement"])("img", { src: mediaUrl, alt: mediaAlt, className: mediaId && mediaType === 'image' ? "wp-image-".concat(mediaId) : null }); }, video: function video() { return Object(external_this_wp_element_["createElement"])("video", { controls: true, src: mediaUrl }); } }; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var className = classnames_default()((_classnames = { 'has-media-on-the-right': 'right' === mediaPosition }, Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames, 'is-stacked-on-mobile', isStackedOnMobile), Object(defineProperty["a" /* default */])(_classnames, "is-vertically-aligned-".concat(verticalAlignment), verticalAlignment), Object(defineProperty["a" /* default */])(_classnames, 'is-image-fill', imageFill), _classnames)); var backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {}; var gridTemplateColumns; if (mediaWidth !== DEFAULT_MEDIA_WIDTH) { gridTemplateColumns = 'right' === mediaPosition ? "auto ".concat(mediaWidth, "%") : "".concat(mediaWidth, "% auto"); } var style = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, gridTemplateColumns: gridTemplateColumns }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: style }, Object(external_this_wp_element_["createElement"])("figure", { className: "wp-block-media-text__media", style: backgroundStyles }, (mediaTypeRenders[mediaType] || external_this_lodash_["noop"])()), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-media-text__content" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } }, { attributes: baseAttributes, save: function save(_ref2) { var _classnames2; var attributes = _ref2.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, isStackedOnMobile = attributes.isStackedOnMobile, mediaAlt = attributes.mediaAlt, mediaPosition = attributes.mediaPosition, mediaType = attributes.mediaType, mediaUrl = attributes.mediaUrl, mediaWidth = attributes.mediaWidth; var mediaTypeRenders = { image: function image() { return Object(external_this_wp_element_["createElement"])("img", { src: mediaUrl, alt: mediaAlt }); }, video: function video() { return Object(external_this_wp_element_["createElement"])("video", { controls: true, src: mediaUrl }); } }; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var className = classnames_default()((_classnames2 = { 'has-media-on-the-right': 'right' === mediaPosition }, Object(defineProperty["a" /* default */])(_classnames2, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames2, 'is-stacked-on-mobile', isStackedOnMobile), _classnames2)); var gridTemplateColumns; if (mediaWidth !== DEFAULT_MEDIA_WIDTH) { gridTemplateColumns = 'right' === mediaPosition ? "auto ".concat(mediaWidth, "%") : "".concat(mediaWidth, "% auto"); } var style = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, gridTemplateColumns: gridTemplateColumns }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: style }, Object(external_this_wp_element_["createElement"])("figure", { className: "wp-block-media-text__media" }, (mediaTypeRenders[mediaType] || external_this_lodash_["noop"])()), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-media-text__content" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } }]); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Constants */ var TEMPLATE = [['core/paragraph', { fontSize: 'large', placeholder: Object(external_this_wp_i18n_["_x"])('Content…', 'content placeholder') }]]; // this limits the resize to a safe zone to avoid making broken layouts var WIDTH_CONSTRAINT_PERCENTAGE = 15; var applyWidthConstraints = function applyWidthConstraints(width) { return Math.max(WIDTH_CONSTRAINT_PERCENTAGE, Math.min(width, 100 - WIDTH_CONSTRAINT_PERCENTAGE)); }; var edit_LINK_DESTINATION_MEDIA = 'media'; var edit_LINK_DESTINATION_ATTACHMENT = 'attachment'; var edit_MediaTextEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(MediaTextEdit, _Component); function MediaTextEdit() { var _this; Object(classCallCheck["a" /* default */])(this, MediaTextEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(MediaTextEdit).apply(this, arguments)); _this.onSelectMedia = _this.onSelectMedia.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onWidthChange = _this.onWidthChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.commitWidthChange = _this.commitWidthChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { mediaWidth: null }; _this.onSetHref = _this.onSetHref.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(MediaTextEdit, [{ key: "onSelectMedia", value: function onSelectMedia(media) { var setAttributes = this.props.setAttributes; var _this$props$attribute = this.props.attributes, linkDestination = _this$props$attribute.linkDestination, href = _this$props$attribute.href; var mediaType; var src; // for media selections originated from a file upload. if (media.media_type) { if (media.media_type === 'image') { mediaType = 'image'; } else { // only images and videos are accepted so if the media_type is not an image we can assume it is a video. // video contain the media type of 'file' in the object returned from the rest api. mediaType = 'video'; } } else { // for media selections originated from existing files in the media library. mediaType = media.type; } if (mediaType === 'image') { // Try the "large" size URL, falling back to the "full" size URL below. src = Object(external_this_lodash_["get"])(media, ['sizes', 'large', 'url']) || Object(external_this_lodash_["get"])(media, ['media_details', 'sizes', 'large', 'source_url']); } var newHref = href; if (linkDestination === edit_LINK_DESTINATION_MEDIA) { // Update the media link. newHref = media.url; } // Check if the image is linked to the attachment page. if (linkDestination === edit_LINK_DESTINATION_ATTACHMENT) { // Update the media link. newHref = media.link; } setAttributes({ mediaAlt: media.alt, mediaId: media.id, mediaType: mediaType, mediaUrl: src || media.url, mediaLink: media.link || undefined, href: newHref, focalPoint: undefined }); } }, { key: "onWidthChange", value: function onWidthChange(width) { this.setState({ mediaWidth: applyWidthConstraints(width) }); } }, { key: "onSetHref", value: function onSetHref(props) { this.props.setAttributes(props); } }, { key: "commitWidthChange", value: function commitWidthChange(width) { var setAttributes = this.props.setAttributes; setAttributes({ mediaWidth: applyWidthConstraints(width) }); this.setState({ mediaWidth: null }); } }, { key: "renderMediaArea", value: function renderMediaArea() { var attributes = this.props.attributes; var mediaAlt = attributes.mediaAlt, mediaId = attributes.mediaId, mediaPosition = attributes.mediaPosition, mediaType = attributes.mediaType, mediaUrl = attributes.mediaUrl, mediaWidth = attributes.mediaWidth, imageFill = attributes.imageFill, focalPoint = attributes.focalPoint; return Object(external_this_wp_element_["createElement"])(media_container, Object(esm_extends["a" /* default */])({ className: "wp-block-media-text__media", onSelectMedia: this.onSelectMedia, onWidthChange: this.onWidthChange, commitWidthChange: this.commitWidthChange }, { mediaAlt: mediaAlt, mediaId: mediaId, mediaType: mediaType, mediaUrl: mediaUrl, mediaPosition: mediaPosition, mediaWidth: mediaWidth, imageFill: imageFill, focalPoint: focalPoint })); } }, { key: "render", value: function render() { var _classnames; var _this$props = this.props, attributes = _this$props.attributes, className = _this$props.className, backgroundColor = _this$props.backgroundColor, isSelected = _this$props.isSelected, setAttributes = _this$props.setAttributes, setBackgroundColor = _this$props.setBackgroundColor, image = _this$props.image; var isStackedOnMobile = attributes.isStackedOnMobile, mediaAlt = attributes.mediaAlt, mediaPosition = attributes.mediaPosition, mediaType = attributes.mediaType, mediaWidth = attributes.mediaWidth, verticalAlignment = attributes.verticalAlignment, mediaUrl = attributes.mediaUrl, imageFill = attributes.imageFill, focalPoint = attributes.focalPoint, rel = attributes.rel, href = attributes.href, linkTarget = attributes.linkTarget, linkClass = attributes.linkClass, linkDestination = attributes.linkDestination; var temporaryMediaWidth = this.state.mediaWidth; var classNames = classnames_default()(className, (_classnames = { 'has-media-on-the-right': 'right' === mediaPosition, 'is-selected': isSelected, 'has-background': backgroundColor.class || backgroundColor.color }, Object(defineProperty["a" /* default */])(_classnames, backgroundColor.class, backgroundColor.class), Object(defineProperty["a" /* default */])(_classnames, 'is-stacked-on-mobile', isStackedOnMobile), Object(defineProperty["a" /* default */])(_classnames, "is-vertically-aligned-".concat(verticalAlignment), verticalAlignment), Object(defineProperty["a" /* default */])(_classnames, 'is-image-fill', imageFill), _classnames)); var widthString = "".concat(temporaryMediaWidth || mediaWidth, "%"); var gridTemplateColumns = 'right' === mediaPosition ? "1fr ".concat(widthString) : "".concat(widthString, " 1fr"); var style = { gridTemplateColumns: gridTemplateColumns, msGridColumns: gridTemplateColumns, backgroundColor: backgroundColor.color }; var colorSettings = [{ value: backgroundColor.color, onChange: setBackgroundColor, label: Object(external_this_wp_i18n_["__"])('Background color') }]; var toolbarControls = [{ icon: 'align-pull-left', title: Object(external_this_wp_i18n_["__"])('Show media on left'), isActive: mediaPosition === 'left', onClick: function onClick() { return setAttributes({ mediaPosition: 'left' }); } }, { icon: 'align-pull-right', title: Object(external_this_wp_i18n_["__"])('Show media on right'), isActive: mediaPosition === 'right', onClick: function onClick() { return setAttributes({ mediaPosition: 'right' }); } }]; var onMediaAltChange = function onMediaAltChange(newMediaAlt) { setAttributes({ mediaAlt: newMediaAlt }); }; var onVerticalAlignmentChange = function onVerticalAlignmentChange(alignment) { setAttributes({ verticalAlignment: alignment }); }; var mediaTextGeneralSettings = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Media & Text settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Stack on mobile'), checked: isStackedOnMobile, onChange: function onChange() { return setAttributes({ isStackedOnMobile: !isStackedOnMobile }); } }), mediaType === 'image' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Crop image to fill entire column'), checked: imageFill, onChange: function onChange() { return setAttributes({ imageFill: !imageFill }); } }), imageFill && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["FocalPointPicker"], { label: Object(external_this_wp_i18n_["__"])('Focal point picker'), url: mediaUrl, value: focalPoint, onChange: function onChange(value) { return setAttributes({ focalPoint: value }); } }), mediaType === 'image' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextareaControl"], { label: Object(external_this_wp_i18n_["__"])('Alt text (alternative text)'), value: mediaAlt, onChange: onMediaAltChange, help: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { href: "https://www.w3.org/WAI/tutorials/images/decision-tree" }, Object(external_this_wp_i18n_["__"])('Describe the purpose of the image')), Object(external_this_wp_i18n_["__"])('Leave empty if the image is purely decorative.')) })); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, mediaTextGeneralSettings, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PanelColorSettings"], { title: Object(external_this_wp_i18n_["__"])('Color settings'), initialOpen: false, colorSettings: colorSettings })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { controls: toolbarControls }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockVerticalAlignmentToolbar"], { onChange: onVerticalAlignmentChange, value: verticalAlignment }), mediaType === 'image' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalImageURLInputUI"], { url: href || '', onChangeUrl: this.onSetHref, linkDestination: linkDestination, mediaType: mediaType, mediaUrl: image && image.source_url, mediaLink: image && image.link, linkTarget: linkTarget, linkClass: linkClass, rel: rel }))), Object(external_this_wp_element_["createElement"])("div", { className: classNames, style: style }, this.renderMediaArea(), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { template: TEMPLATE, templateInsertUpdatesSelection: false }))); } }]); return MediaTextEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var media_text_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_blockEditor_["withColors"])('backgroundColor'), Object(external_this_wp_data_["withSelect"])(function (select, props) { var _select = select('core'), getMedia = _select.getMedia; var mediaId = props.attributes.mediaId, isSelected = props.isSelected; return { image: mediaId && isSelected ? getMedia(mediaId) : null }; })])(edit_MediaTextEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/save.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var save_DEFAULT_MEDIA_WIDTH = 50; function media_text_save_save(_ref) { var _classnames; var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, isStackedOnMobile = attributes.isStackedOnMobile, mediaAlt = attributes.mediaAlt, mediaPosition = attributes.mediaPosition, mediaType = attributes.mediaType, mediaUrl = attributes.mediaUrl, mediaWidth = attributes.mediaWidth, mediaId = attributes.mediaId, verticalAlignment = attributes.verticalAlignment, imageFill = attributes.imageFill, focalPoint = attributes.focalPoint, linkClass = attributes.linkClass, href = attributes.href, linkTarget = attributes.linkTarget, rel = attributes.rel; var newRel = Object(external_this_lodash_["isEmpty"])(rel) ? undefined : rel; var _image = Object(external_this_wp_element_["createElement"])("img", { src: mediaUrl, alt: mediaAlt, className: mediaId && mediaType === 'image' ? "wp-image-".concat(mediaId) : null }); if (href) { _image = Object(external_this_wp_element_["createElement"])("a", { className: linkClass, href: href, target: linkTarget, rel: newRel }, _image); } var mediaTypeRenders = { image: function image() { return _image; }, video: function video() { return Object(external_this_wp_element_["createElement"])("video", { controls: true, src: mediaUrl }); } }; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var className = classnames_default()((_classnames = { 'has-media-on-the-right': 'right' === mediaPosition, 'has-background': backgroundClass || customBackgroundColor }, Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames, 'is-stacked-on-mobile', isStackedOnMobile), Object(defineProperty["a" /* default */])(_classnames, "is-vertically-aligned-".concat(verticalAlignment), verticalAlignment), Object(defineProperty["a" /* default */])(_classnames, 'is-image-fill', imageFill), _classnames)); var backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {}; var gridTemplateColumns; if (mediaWidth !== save_DEFAULT_MEDIA_WIDTH) { gridTemplateColumns = 'right' === mediaPosition ? "auto ".concat(mediaWidth, "%") : "".concat(mediaWidth, "% auto"); } var style = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, gridTemplateColumns: gridTemplateColumns }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: style }, Object(external_this_wp_element_["createElement"])("figure", { className: "wp-block-media-text__media", style: backgroundStyles }, (mediaTypeRenders[mediaType] || external_this_lodash_["noop"])()), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-media-text__content" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/transforms.js /** * WordPress dependencies */ var media_text_transforms_transforms = { from: [{ type: 'block', blocks: ['core/image'], transform: function transform(_ref) { var alt = _ref.alt, url = _ref.url, id = _ref.id; return Object(external_this_wp_blocks_["createBlock"])('core/media-text', { mediaAlt: alt, mediaId: id, mediaUrl: url, mediaType: 'image' }); } }, { type: 'block', blocks: ['core/video'], transform: function transform(_ref2) { var src = _ref2.src, id = _ref2.id; return Object(external_this_wp_blocks_["createBlock"])('core/media-text', { mediaId: id, mediaUrl: src, mediaType: 'video' }); } }], to: [{ type: 'block', blocks: ['core/image'], isMatch: function isMatch(_ref3) { var mediaType = _ref3.mediaType, mediaUrl = _ref3.mediaUrl; return !mediaUrl || mediaType === 'image'; }, transform: function transform(_ref4) { var mediaAlt = _ref4.mediaAlt, mediaId = _ref4.mediaId, mediaUrl = _ref4.mediaUrl; return Object(external_this_wp_blocks_["createBlock"])('core/image', { alt: mediaAlt, id: mediaId, url: mediaUrl }); } }, { type: 'block', blocks: ['core/video'], isMatch: function isMatch(_ref5) { var mediaType = _ref5.mediaType, mediaUrl = _ref5.mediaUrl; return !mediaUrl || mediaType === 'video'; }, transform: function transform(_ref6) { var mediaId = _ref6.mediaId, mediaUrl = _ref6.mediaUrl; return Object(external_this_wp_blocks_["createBlock"])('core/video', { id: mediaId, src: mediaUrl }); } }] }; /* harmony default export */ var media_text_transforms = (media_text_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var media_text_metadata = { name: "core/media-text", category: "layout", attributes: { align: { type: "string", "default": "wide" }, backgroundColor: { type: "string" }, customBackgroundColor: { type: "string" }, mediaAlt: { type: "string", source: "attribute", selector: "figure img", attribute: "alt", "default": "" }, mediaPosition: { type: "string", "default": "left" }, mediaId: { type: "number" }, mediaUrl: { type: "string", source: "attribute", selector: "figure video,figure img", attribute: "src" }, mediaLink: { type: "string" }, linkDestination: { type: "string" }, linkTarget: { type: "string", source: "attribute", selector: "figure a", attribute: "target" }, href: { type: "string", source: "attribute", selector: "figure a", attribute: "href" }, rel: { type: "string", source: "attribute", selector: "figure a", attribute: "rel" }, linkClass: { type: "string", source: "attribute", selector: "figure a", attribute: "class" }, mediaType: { type: "string" }, mediaWidth: { type: "number", "default": 50 }, isStackedOnMobile: { type: "boolean", "default": true }, verticalAlignment: { type: "string" }, imageFill: { type: "boolean" }, focalPoint: { type: "object" } } }; var media_text_name = media_text_metadata.name; var media_text_settings = { title: Object(external_this_wp_i18n_["__"])('Media & Text'), description: Object(external_this_wp_i18n_["__"])('Set media and words side-by-side for a richer layout.'), icon: media_and_text, keywords: [Object(external_this_wp_i18n_["__"])('image'), Object(external_this_wp_i18n_["__"])('video')], supports: { align: ['wide', 'full'], html: false }, example: { attributes: { mediaType: 'image', mediaUrl: 'https://s.w.org/images/core/5.3/Biologia_Centrali-Americana_-_Cantorchilus_semibadius_1902.jpg' }, innerBlocks: [{ name: 'core/paragraph', attributes: { content: Object(external_this_wp_i18n_["__"])('The wren
    Earns his living
    Noiselessly.') } }, { name: 'core/paragraph', attributes: { content: Object(external_this_wp_i18n_["__"])('— Kobayashi Issa (一茶)') } }] }, transforms: media_text_transforms, edit: media_text_edit, save: media_text_save_save, deprecated: media_text_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/comment.js /** * WordPress dependencies */ var comment = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M21.99 4c0-1.1-.89-2-1.99-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h14l4 4-.01-18zM20 4v13.17L18.83 16H4V4h16zM6 12h12v2H6zm0-3h12v2H6zm0-3h12v2H6z" })); /* harmony default export */ var library_comment = (comment); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-comments/edit.js /** * WordPress dependencies */ /** * Minimum number of comments a user can show using this block. * * @type {number} */ var MIN_COMMENTS = 1; /** * Maximum number of comments a user can show using this block. * * @type {number} */ var MAX_COMMENTS = 100; var edit_LatestComments = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(LatestComments, _Component); function LatestComments() { var _this; Object(classCallCheck["a" /* default */])(this, LatestComments); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(LatestComments).apply(this, arguments)); _this.setCommentsToShow = _this.setCommentsToShow.bind(Object(assertThisInitialized["a" /* default */])(_this)); // Create toggles for each attribute; we create them here rather than // passing `this.createToggleAttribute( 'displayAvatar' )` directly to // `onChange` to avoid re-renders. _this.toggleDisplayAvatar = _this.createToggleAttribute('displayAvatar'); _this.toggleDisplayDate = _this.createToggleAttribute('displayDate'); _this.toggleDisplayExcerpt = _this.createToggleAttribute('displayExcerpt'); return _this; } Object(createClass["a" /* default */])(LatestComments, [{ key: "createToggleAttribute", value: function createToggleAttribute(propName) { var _this2 = this; return function () { var value = _this2.props.attributes[propName]; var setAttributes = _this2.props.setAttributes; setAttributes(Object(defineProperty["a" /* default */])({}, propName, !value)); }; } }, { key: "setCommentsToShow", value: function setCommentsToShow(commentsToShow) { this.props.setAttributes({ commentsToShow: commentsToShow }); } }, { key: "render", value: function render() { var _this$props$attribute = this.props.attributes, commentsToShow = _this$props$attribute.commentsToShow, displayAvatar = _this$props$attribute.displayAvatar, displayDate = _this$props$attribute.displayDate, displayExcerpt = _this$props$attribute.displayExcerpt; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Latest comments settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display avatar'), checked: displayAvatar, onChange: this.toggleDisplayAvatar }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display date'), checked: displayDate, onChange: this.toggleDisplayDate }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display excerpt'), checked: displayExcerpt, onChange: this.toggleDisplayExcerpt }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Number of comments'), value: commentsToShow, onChange: this.setCommentsToShow, min: MIN_COMMENTS, max: MAX_COMMENTS, required: true }))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_serverSideRender_default.a, { block: "core/latest-comments", attributes: this.props.attributes }))); } }]); return LatestComments; }(external_this_wp_element_["Component"]); /* harmony default export */ var latest_comments_edit = (edit_LatestComments); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-comments/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var latest_comments_name = 'core/latest-comments'; var latest_comments_settings = { title: Object(external_this_wp_i18n_["__"])('Latest Comments'), description: Object(external_this_wp_i18n_["__"])('Display a list of your most recent comments.'), icon: library_comment, category: 'widgets', keywords: [Object(external_this_wp_i18n_["__"])('recent comments')], supports: { align: true, html: false }, edit: latest_comments_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-list.js /** * WordPress dependencies */ var postList = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "11", y: "7", width: "6", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "11", y: "11", width: "6", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "11", y: "15", width: "6", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "7", y: "7", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "7", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "7", y: "15", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20.1,3H3.9C3.4,3,3,3.4,3,3.9v16.2C3,20.5,3.4,21,3.9,21h16.2c0.4,0,0.9-0.5,0.9-0.9V3.9C21,3.4,20.5,3,20.1,3z M19,19H5V5h14V19z" })); /* harmony default export */ var post_list = (postList); // EXTERNAL MODULE: external {"this":["wp","apiFetch"]} var external_this_wp_apiFetch_ = __webpack_require__("ywyh"); var external_this_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_apiFetch_); // EXTERNAL MODULE: external {"this":["wp","date"]} var external_this_wp_date_ = __webpack_require__("FqII"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/edit.js function latest_posts_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function latest_posts_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { latest_posts_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { latest_posts_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Module Constants */ var CATEGORIES_LIST_QUERY = { per_page: -1 }; var MAX_POSTS_COLUMNS = 6; var edit_LatestPostsEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(LatestPostsEdit, _Component); function LatestPostsEdit() { var _this; Object(classCallCheck["a" /* default */])(this, LatestPostsEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(LatestPostsEdit).apply(this, arguments)); _this.state = { categoriesList: [] }; return _this; } Object(createClass["a" /* default */])(LatestPostsEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; this.isStillMounted = true; this.fetchRequest = external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/categories", CATEGORIES_LIST_QUERY) }).then(function (categoriesList) { if (_this2.isStillMounted) { _this2.setState({ categoriesList: categoriesList }); } }).catch(function () { if (_this2.isStillMounted) { _this2.setState({ categoriesList: [] }); } }); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { this.isStillMounted = false; } }, { key: "render", value: function render() { var _this$props = this.props, attributes = _this$props.attributes, setAttributes = _this$props.setAttributes, imageSizeOptions = _this$props.imageSizeOptions, latestPosts = _this$props.latestPosts, defaultImageWidth = _this$props.defaultImageWidth, defaultImageHeight = _this$props.defaultImageHeight; var categoriesList = this.state.categoriesList; var displayFeaturedImage = attributes.displayFeaturedImage, displayPostContentRadio = attributes.displayPostContentRadio, displayPostContent = attributes.displayPostContent, displayPostDate = attributes.displayPostDate, postLayout = attributes.postLayout, columns = attributes.columns, order = attributes.order, orderBy = attributes.orderBy, categories = attributes.categories, postsToShow = attributes.postsToShow, excerptLength = attributes.excerptLength, featuredImageAlign = attributes.featuredImageAlign, featuredImageSizeSlug = attributes.featuredImageSizeSlug, featuredImageSizeWidth = attributes.featuredImageSizeWidth, featuredImageSizeHeight = attributes.featuredImageSizeHeight; var inspectorControls = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Post content settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Post content'), checked: displayPostContent, onChange: function onChange(value) { return setAttributes({ displayPostContent: value }); } }), displayPostContent && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RadioControl"], { label: Object(external_this_wp_i18n_["__"])('Show:'), selected: displayPostContentRadio, options: [{ label: Object(external_this_wp_i18n_["__"])('Excerpt'), value: 'excerpt' }, { label: Object(external_this_wp_i18n_["__"])('Full post'), value: 'full_post' }], onChange: function onChange(value) { return setAttributes({ displayPostContentRadio: value }); } }), displayPostContent && displayPostContentRadio === 'excerpt' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Max number of words in excerpt'), value: excerptLength, onChange: function onChange(value) { return setAttributes({ excerptLength: value }); }, min: 10, max: 100 })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Post meta settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display post date'), checked: displayPostDate, onChange: function onChange(value) { return setAttributes({ displayPostDate: value }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Featured image settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display featured image'), checked: displayFeaturedImage, onChange: function onChange(value) { return setAttributes({ displayFeaturedImage: value }); } }), displayFeaturedImage && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalImageSizeControl"], { onChange: function onChange(value) { var newAttrs = {}; if (value.hasOwnProperty('width')) { newAttrs.featuredImageSizeWidth = value.width; } if (value.hasOwnProperty('height')) { newAttrs.featuredImageSizeHeight = value.height; } setAttributes(newAttrs); }, slug: featuredImageSizeSlug, width: featuredImageSizeWidth, height: featuredImageSizeHeight, imageWidth: defaultImageWidth, imageHeight: defaultImageHeight, imageSizeOptions: imageSizeOptions, onChangeImage: function onChangeImage(value) { return setAttributes({ featuredImageSizeSlug: value, featuredImageSizeWidth: undefined, featuredImageSizeHeight: undefined }); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"].VisualLabel, null, Object(external_this_wp_i18n_["__"])('Image alignment')), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockAlignmentToolbar"], { value: featuredImageAlign, onChange: function onChange(value) { return setAttributes({ featuredImageAlign: value }); }, controls: ['left', 'center', 'right'], isCollapsed: false })))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Sorting and filtering') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["QueryControls"], Object(esm_extends["a" /* default */])({ order: order, orderBy: orderBy }, { numberOfItems: postsToShow, categoriesList: categoriesList, selectedCategoryId: categories, onOrderChange: function onOrderChange(value) { return setAttributes({ order: value }); }, onOrderByChange: function onOrderByChange(value) { return setAttributes({ orderBy: value }); }, onCategoryChange: function onCategoryChange(value) { return setAttributes({ categories: '' !== value ? value : undefined }); }, onNumberOfItemsChange: function onNumberOfItemsChange(value) { return setAttributes({ postsToShow: value }); } })), postLayout === 'grid' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Columns'), value: columns, onChange: function onChange(value) { return setAttributes({ columns: value }); }, min: 2, max: !hasPosts ? MAX_POSTS_COLUMNS : Math.min(MAX_POSTS_COLUMNS, latestPosts.length), required: true }))); var hasPosts = Array.isArray(latestPosts) && latestPosts.length; if (!hasPosts) { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, inspectorControls, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { icon: "admin-post", label: Object(external_this_wp_i18n_["__"])('Latest Posts') }, !Array.isArray(latestPosts) ? Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null) : Object(external_this_wp_i18n_["__"])('No posts found.'))); } // Removing posts from display should be instant. var displayPosts = latestPosts.length > postsToShow ? latestPosts.slice(0, postsToShow) : latestPosts; var layoutControls = [{ icon: 'list-view', title: Object(external_this_wp_i18n_["__"])('List view'), onClick: function onClick() { return setAttributes({ postLayout: 'list' }); }, isActive: postLayout === 'list' }, { icon: 'grid-view', title: Object(external_this_wp_i18n_["__"])('Grid view'), onClick: function onClick() { return setAttributes({ postLayout: 'grid' }); }, isActive: postLayout === 'grid' }]; var dateFormat = Object(external_this_wp_date_["__experimentalGetSettings"])().formats.date; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, inspectorControls, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { controls: layoutControls })), Object(external_this_wp_element_["createElement"])("ul", { className: classnames_default()(this.props.className, Object(defineProperty["a" /* default */])({ 'wp-block-latest-posts__list': true, 'is-grid': postLayout === 'grid', 'has-dates': displayPostDate }, "columns-".concat(columns), postLayout === 'grid')) }, displayPosts.map(function (post, i) { var titleTrimmed = Object(external_this_lodash_["invoke"])(post, ['title', 'rendered', 'trim']); var excerpt = post.excerpt.rendered; var excerptElement = document.createElement('div'); excerptElement.innerHTML = excerpt; excerpt = excerptElement.textContent || excerptElement.innerText || ''; var imageSourceUrl = post.featuredImageSourceUrl; var imageClasses = classnames_default()(Object(defineProperty["a" /* default */])({ 'wp-block-latest-posts__featured-image': true }, "align".concat(featuredImageAlign), !!featuredImageAlign)); var postExcerpt = excerptLength < excerpt.trim().split(' ').length && post.excerpt.raw === '' ? excerpt.trim().split(' ', excerptLength).join(' ') + ' ... ' + Object(external_this_wp_i18n_["__"])('Read more') + '' : excerpt; return Object(external_this_wp_element_["createElement"])("li", { key: i }, displayFeaturedImage && Object(external_this_wp_element_["createElement"])("div", { className: imageClasses }, imageSourceUrl && Object(external_this_wp_element_["createElement"])("img", { src: imageSourceUrl, alt: "", style: { maxWidth: featuredImageSizeWidth, maxHeight: featuredImageSizeHeight } })), Object(external_this_wp_element_["createElement"])("a", { href: post.link, target: "_blank", rel: "noreferrer noopener" }, titleTrimmed ? Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, titleTrimmed) : Object(external_this_wp_i18n_["__"])('(no title)')), displayPostDate && post.date_gmt && Object(external_this_wp_element_["createElement"])("time", { dateTime: Object(external_this_wp_date_["format"])('c', post.date_gmt), className: "wp-block-latest-posts__post-date" }, Object(external_this_wp_date_["dateI18n"])(dateFormat, post.date_gmt)), displayPostContent && displayPostContentRadio === 'excerpt' && Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-latest-posts__post-excerpt" }, Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], { key: "html" }, postExcerpt)), displayPostContent && displayPostContentRadio === 'full_post' && Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-latest-posts__post-full-content" }, Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], { key: "html" }, post.content.raw.trim()))); }))); } }]); return LatestPostsEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var latest_posts_edit = (Object(external_this_wp_data_["withSelect"])(function (select, props) { var _props$attributes = props.attributes, featuredImageSizeSlug = _props$attributes.featuredImageSizeSlug, postsToShow = _props$attributes.postsToShow, order = _props$attributes.order, orderBy = _props$attributes.orderBy, categories = _props$attributes.categories; var _select = select('core'), getEntityRecords = _select.getEntityRecords, getMedia = _select.getMedia; var _select2 = select('core/block-editor'), getSettings = _select2.getSettings; var _getSettings = getSettings(), imageSizes = _getSettings.imageSizes, imageDimensions = _getSettings.imageDimensions; var latestPostsQuery = Object(external_this_lodash_["pickBy"])({ categories: categories, order: order, orderby: orderBy, per_page: postsToShow }, function (value) { return !Object(external_this_lodash_["isUndefined"])(value); }); var posts = getEntityRecords('postType', 'post', latestPostsQuery); var imageSizeOptions = imageSizes.filter(function (_ref) { var slug = _ref.slug; return slug !== 'full'; }).map(function (_ref2) { var name = _ref2.name, slug = _ref2.slug; return { value: slug, label: name }; }); return { defaultImageWidth: Object(external_this_lodash_["get"])(imageDimensions, [featuredImageSizeSlug, 'width'], 0), defaultImageHeight: Object(external_this_lodash_["get"])(imageDimensions, [featuredImageSizeSlug, 'height'], 0), imageSizeOptions: imageSizeOptions, latestPosts: !Array.isArray(posts) ? posts : posts.map(function (post) { if (post.featured_media) { var image = getMedia(post.featured_media); var url = Object(external_this_lodash_["get"])(image, ['media_details', 'sizes', featuredImageSizeSlug, 'source_url'], null); if (!url) { url = Object(external_this_lodash_["get"])(image, 'source_url', null); } return latest_posts_edit_objectSpread({}, post, { featuredImageSourceUrl: url }); } return post; }) }; })(edit_LatestPostsEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var latest_posts_name = 'core/latest-posts'; var latest_posts_settings = { title: Object(external_this_wp_i18n_["__"])('Latest Posts'), description: Object(external_this_wp_i18n_["__"])('Display a list of your most recent posts.'), icon: post_list, category: 'widgets', keywords: [Object(external_this_wp_i18n_["__"])('recent posts')], supports: { align: true, html: false }, edit: latest_posts_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/list.js /** * WordPress dependencies */ var list = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M9 19h12v-2H9v2zm0-6h12v-2H9v2zm0-8v2h12V5H9zm-4-.5c-.828 0-1.5.672-1.5 1.5S4.172 7.5 5 7.5 6.5 6.828 6.5 6 5.828 4.5 5 4.5zm0 6c-.828 0-1.5.672-1.5 1.5s.672 1.5 1.5 1.5 1.5-.672 1.5-1.5-.672-1.5-1.5-1.5zm0 6c-.828 0-1.5.672-1.5 1.5s.672 1.5 1.5 1.5 1.5-.672 1.5-1.5-.672-1.5-1.5-1.5z" })); /* harmony default export */ var library_list = (list); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/ordered-list-settings.js /** * WordPress dependencies */ var ordered_list_settings_OrderedListSettings = function OrderedListSettings(_ref) { var setAttributes = _ref.setAttributes, reversed = _ref.reversed, start = _ref.start; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Ordered list settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { label: Object(external_this_wp_i18n_["__"])('Start value'), type: "number", onChange: function onChange(value) { var int = parseInt(value, 10); setAttributes({ // It should be possible to unset the value, // e.g. with an empty string. start: isNaN(int) ? undefined : int }); }, value: Number.isInteger(start) ? start.toString(10) : '', step: "1" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Reverse list numbering'), checked: reversed || false, onChange: function onChange(value) { setAttributes({ // Unset the attribute if not reversed. reversed: value || undefined }); } }))); }; /* harmony default export */ var ordered_list_settings = (ordered_list_settings_OrderedListSettings); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/edit.js function list_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function list_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { list_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { list_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ function ListEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, mergeBlocks = _ref.mergeBlocks, onReplace = _ref.onReplace, className = _ref.className, isSelected = _ref.isSelected; var ordered = attributes.ordered, values = attributes.values, type = attributes.type, reversed = attributes.reversed, start = attributes.start; var tagName = ordered ? 'ol' : 'ul'; var controls = function controls(_ref2) { var value = _ref2.value, onChange = _ref2.onChange, onFocus = _ref2.onFocus; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, isSelected && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichTextShortcut"], { type: "primary", character: "[", onUse: function onUse() { onChange(Object(external_this_wp_richText_["__unstableOutdentListItems"])(value)); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichTextShortcut"], { type: "primary", character: "]", onUse: function onUse() { onChange(Object(external_this_wp_richText_["__unstableIndentListItems"])(value, { type: tagName })); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichTextShortcut"], { type: "primary", character: "m", onUse: function onUse() { onChange(Object(external_this_wp_richText_["__unstableIndentListItems"])(value, { type: tagName })); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichTextShortcut"], { type: "primaryShift", character: "m", onUse: function onUse() { onChange(Object(external_this_wp_richText_["__unstableOutdentListItems"])(value)); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { controls: [{ icon: 'editor-ul', title: Object(external_this_wp_i18n_["__"])('Convert to unordered list'), isActive: Object(external_this_wp_richText_["__unstableIsActiveListType"])(value, 'ul', tagName), onClick: function onClick() { onChange(Object(external_this_wp_richText_["__unstableChangeListType"])(value, { type: 'ul' })); onFocus(); if (Object(external_this_wp_richText_["__unstableIsListRootSelected"])(value)) { setAttributes({ ordered: false }); } } }, { icon: 'editor-ol', title: Object(external_this_wp_i18n_["__"])('Convert to ordered list'), isActive: Object(external_this_wp_richText_["__unstableIsActiveListType"])(value, 'ol', tagName), onClick: function onClick() { onChange(Object(external_this_wp_richText_["__unstableChangeListType"])(value, { type: 'ol' })); onFocus(); if (Object(external_this_wp_richText_["__unstableIsListRootSelected"])(value)) { setAttributes({ ordered: true }); } } }, { icon: 'editor-outdent', title: Object(external_this_wp_i18n_["__"])('Outdent list item'), shortcut: Object(external_this_wp_i18n_["_x"])('Backspace', 'keyboard key'), isDisabled: !Object(external_this_wp_richText_["__unstableCanOutdentListItems"])(value), onClick: function onClick() { onChange(Object(external_this_wp_richText_["__unstableOutdentListItems"])(value)); onFocus(); } }, { icon: 'editor-indent', title: Object(external_this_wp_i18n_["__"])('Indent list item'), shortcut: Object(external_this_wp_i18n_["_x"])('Space', 'keyboard key'), isDisabled: !Object(external_this_wp_richText_["__unstableCanIndentListItems"])(value), onClick: function onClick() { onChange(Object(external_this_wp_richText_["__unstableIndentListItems"])(value, { type: tagName })); onFocus(); } }] }))); }; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { identifier: "values", multiline: "li", tagName: tagName, onChange: function onChange(nextValues) { return setAttributes({ values: nextValues }); }, value: values, className: className, placeholder: Object(external_this_wp_i18n_["__"])('Write list…'), onMerge: mergeBlocks, onSplit: function onSplit(value) { return Object(external_this_wp_blocks_["createBlock"])(list_name, list_edit_objectSpread({}, attributes, { values: value })); }, __unstableOnSplitMiddle: function __unstableOnSplitMiddle() { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph'); }, onReplace: onReplace, onRemove: function onRemove() { return onReplace([]); }, start: start, reversed: reversed, type: type }, controls), ordered && Object(external_this_wp_element_["createElement"])(ordered_list_settings, { setAttributes: setAttributes, ordered: ordered, reversed: reversed, start: start })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/save.js /** * WordPress dependencies */ function list_save_save(_ref) { var attributes = _ref.attributes; var ordered = attributes.ordered, values = attributes.values, type = attributes.type, reversed = attributes.reversed, start = attributes.start; var tagName = ordered ? 'ol' : 'ul'; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: tagName, value: values, type: type, reversed: reversed, start: start, multiline: "li" }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/transforms.js function list_transforms_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function list_transforms_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { list_transforms_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { list_transforms_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ function getListContentSchema(_ref) { var phrasingContentSchema = _ref.phrasingContentSchema; var listContentSchema = list_transforms_objectSpread({}, phrasingContentSchema, { ul: {}, ol: { attributes: ['type', 'start', 'reversed'] } }); // Recursion is needed. // Possible: ul > li > ul. // Impossible: ul > ul. ['ul', 'ol'].forEach(function (tag) { listContentSchema[tag].children = { li: { children: listContentSchema } }; }); return listContentSchema; } var list_transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['core/paragraph'], transform: function transform(blockAttributes) { return Object(external_this_wp_blocks_["createBlock"])('core/list', { values: Object(external_this_wp_richText_["toHTMLString"])({ value: Object(external_this_wp_richText_["join"])(blockAttributes.map(function (_ref2) { var content = _ref2.content; var value = Object(external_this_wp_richText_["create"])({ html: content }); if (blockAttributes.length > 1) { return value; } // When converting only one block, transform // every line to a list item. return Object(external_this_wp_richText_["replace"])(value, /\n/g, external_this_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]); }), external_this_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]), multilineTag: 'li' }) }); } }, { type: 'block', blocks: ['core/quote'], transform: function transform(_ref3) { var value = _ref3.value; return Object(external_this_wp_blocks_["createBlock"])('core/list', { values: Object(external_this_wp_richText_["toHTMLString"])({ value: Object(external_this_wp_richText_["create"])({ html: value, multilineTag: 'p' }), multilineTag: 'li' }) }); } }, { type: 'raw', selector: 'ol,ul', schema: function schema(args) { return { ol: getListContentSchema(args).ol, ul: getListContentSchema(args).ul }; }, transform: function transform(node) { var attributes = { ordered: node.nodeName === 'OL' }; if (attributes.ordered) { var type = node.getAttribute('type'); if (type) { attributes.type = type; } if (node.getAttribute('reversed') !== null) { attributes.reversed = true; } var start = parseInt(node.getAttribute('start'), 10); if (!isNaN(start) && ( // start=1 only makes sense if the list is reversed. start !== 1 || attributes.reversed)) { attributes.start = start; } } return Object(external_this_wp_blocks_["createBlock"])('core/list', list_transforms_objectSpread({}, Object(external_this_wp_blocks_["getBlockAttributes"])('core/list', node.outerHTML), {}, attributes)); } }].concat(Object(toConsumableArray["a" /* default */])(['*', '-'].map(function (prefix) { return { type: 'prefix', prefix: prefix, transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])('core/list', { values: "
  • ".concat(content, "
  • ") }); } }; })), Object(toConsumableArray["a" /* default */])(['1.', '1)'].map(function (prefix) { return { type: 'prefix', prefix: prefix, transform: function transform(content) { return Object(external_this_wp_blocks_["createBlock"])('core/list', { ordered: true, values: "
  • ".concat(content, "
  • ") }); } }; }))), to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(_ref4) { var values = _ref4.values; return Object(external_this_wp_richText_["split"])(Object(external_this_wp_richText_["create"])({ html: values, multilineTag: 'li', multilineWrapperTags: ['ul', 'ol'] }), external_this_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]).map(function (piece) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: Object(external_this_wp_richText_["toHTMLString"])({ value: piece }) }); }); } }, { type: 'block', blocks: ['core/quote'], transform: function transform(_ref5) { var values = _ref5.values; return Object(external_this_wp_blocks_["createBlock"])('core/quote', { value: Object(external_this_wp_richText_["toHTMLString"])({ value: Object(external_this_wp_richText_["create"])({ html: values, multilineTag: 'li', multilineWrapperTags: ['ul', 'ol'] }), multilineTag: 'p' }) }); } }] }; /* harmony default export */ var list_transforms = (list_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/index.js function list_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function list_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { list_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { list_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ var list_metadata = { name: "core/list", category: "common", attributes: { ordered: { type: "boolean", "default": false }, values: { type: "string", source: "html", selector: "ol,ul", multiline: "li", __unstableMultilineWrapperTags: ["ol", "ul"], "default": "" }, type: { type: "string" }, start: { type: "number" }, reversed: { type: "boolean" } } }; var list_name = list_metadata.name; var list_settings = { title: Object(external_this_wp_i18n_["__"])('List'), description: Object(external_this_wp_i18n_["__"])('Create a bulleted or numbered list.'), icon: library_list, keywords: [Object(external_this_wp_i18n_["__"])('bullet list'), Object(external_this_wp_i18n_["__"])('ordered list'), Object(external_this_wp_i18n_["__"])('numbered list')], supports: { className: false, __unstablePasteTextInline: true }, example: { attributes: { values: '
  • Alice.
  • The White Rabbit.
  • The Cheshire Cat.
  • The Mad Hatter.
  • The Queen of Hearts.
  • ' } }, transforms: list_transforms, merge: function merge(attributes, attributesToMerge) { var values = attributesToMerge.values; if (!values || values === '
  • ') { return attributes; } return list_objectSpread({}, attributes, { values: attributes.values + values }); }, edit: ListEdit, save: list_save_save }; // EXTERNAL MODULE: external {"this":["wp","dom"]} var external_this_wp_dom_ = __webpack_require__("1CF3"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/edit.js /** * WordPress dependencies */ function MissingBlockWarning(_ref) { var attributes = _ref.attributes, convertToHTML = _ref.convertToHTML; var originalName = attributes.originalName, originalUndelimitedContent = attributes.originalUndelimitedContent; var hasContent = !!originalUndelimitedContent; var hasHTMLBlock = Object(external_this_wp_blocks_["getBlockType"])('core/html'); var actions = []; var messageHTML; if (hasContent && hasHTMLBlock) { messageHTML = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Your site doesn’t include support for the "%s" block. You can leave this block intact, convert its content to a Custom HTML block, or remove it entirely.'), originalName); actions.push(Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { key: "convert", onClick: convertToHTML, isLarge: true, isPrimary: true }, Object(external_this_wp_i18n_["__"])('Keep as HTML'))); } else { messageHTML = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Your site doesn’t include support for the "%s" block. You can leave this block intact or remove it entirely.'), originalName); } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["Warning"], { actions: actions }, messageHTML), Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, Object(external_this_wp_dom_["safeHTML"])(originalUndelimitedContent))); } var MissingEdit = Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref2) { var clientId = _ref2.clientId, attributes = _ref2.attributes; var _dispatch = dispatch('core/block-editor'), replaceBlock = _dispatch.replaceBlock; return { convertToHTML: function convertToHTML() { replaceBlock(clientId, Object(external_this_wp_blocks_["createBlock"])('core/html', { content: attributes.originalUndelimitedContent })); } }; })(MissingBlockWarning); /* harmony default export */ var missing_edit = (MissingEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/save.js /** * WordPress dependencies */ function missing_save_save(_ref) { var attributes = _ref.attributes; // Preserve the missing block's content. return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, attributes.originalContent); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var missing_metadata = { name: "core/missing", category: "common", attributes: { originalName: { type: "string" }, originalUndelimitedContent: { type: "string" }, originalContent: { type: "string", source: "html" } } }; var missing_name = missing_metadata.name; var missing_settings = { name: missing_name, title: Object(external_this_wp_i18n_["__"])('Unsupported'), description: Object(external_this_wp_i18n_["__"])('Your site doesn’t include support for this block.'), supports: { className: false, customClassName: false, inserter: false, html: false, reusable: false }, __experimentalLabel: function __experimentalLabel(attributes, _ref) { var context = _ref.context; if (context === 'accessibility') { var originalName = attributes.originalName; var originalBlockType = originalName ? Object(external_this_wp_blocks_["getBlockType"])(originalName) : undefined; if (originalBlockType) { return originalBlockType.settings.title || originalName; } return ''; } }, edit: missing_edit, save: missing_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/more.js /** * WordPress dependencies */ var more = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M2 9v2h19V9H2zm0 6h5v-2H2v2zm7 0h5v-2H9v2zm7 0h5v-2h-5v2z" })); /* harmony default export */ var library_more = (more); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/edit.js /** * WordPress dependencies */ var edit_MoreEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(MoreEdit, _Component); function MoreEdit() { var _this; Object(classCallCheck["a" /* default */])(this, MoreEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(MoreEdit).apply(this, arguments)); _this.onChangeInput = _this.onChangeInput.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { defaultText: Object(external_this_wp_i18n_["__"])('Read more') }; return _this; } Object(createClass["a" /* default */])(MoreEdit, [{ key: "onChangeInput", value: function onChangeInput(event) { // Set defaultText to an empty string, allowing the user to clear/replace the input field's text this.setState({ defaultText: '' }); var value = event.target.value.length === 0 ? undefined : event.target.value; this.props.setAttributes({ customText: value }); } }, { key: "onKeyDown", value: function onKeyDown(event) { var keyCode = event.keyCode; var insertBlocksAfter = this.props.insertBlocksAfter; if (keyCode === external_this_wp_keycodes_["ENTER"]) { insertBlocksAfter([Object(external_this_wp_blocks_["createBlock"])(Object(external_this_wp_blocks_["getDefaultBlockName"])())]); } } }, { key: "getHideExcerptHelp", value: function getHideExcerptHelp(checked) { return checked ? Object(external_this_wp_i18n_["__"])('The excerpt is hidden.') : Object(external_this_wp_i18n_["__"])('The excerpt is visible.'); } }, { key: "render", value: function render() { var _this$props$attribute = this.props.attributes, customText = _this$props$attribute.customText, noTeaser = _this$props$attribute.noTeaser; var setAttributes = this.props.setAttributes; var toggleHideExcerpt = function toggleHideExcerpt() { return setAttributes({ noTeaser: !noTeaser }); }; var defaultText = this.state.defaultText; var value = customText !== undefined ? customText : defaultText; var inputLength = value.length + 1.2; var currentWidth = { width: inputLength + 'em' }; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Hide the excerpt on the full content page'), checked: !!noTeaser, onChange: toggleHideExcerpt, help: this.getHideExcerptHelp }))), Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-more" }, Object(external_this_wp_element_["createElement"])("input", { type: "text", value: value, onChange: this.onChangeInput, onKeyDown: this.onKeyDown, style: currentWidth }))); } }]); return MoreEdit; }(external_this_wp_element_["Component"]); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/save.js /** * External dependencies */ /** * WordPress dependencies */ function more_save_save(_ref) { var attributes = _ref.attributes; var customText = attributes.customText, noTeaser = attributes.noTeaser; var moreTag = customText ? "") : ''; var noTeaserTag = noTeaser ? '' : ''; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, Object(external_this_lodash_["compact"])([moreTag, noTeaserTag]).join('\n')); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/transforms.js /** * WordPress dependencies */ var more_transforms_transforms = { from: [{ type: 'raw', schema: { 'wp-block': { attributes: ['data-block'] } }, isMatch: function isMatch(node) { return node.dataset && node.dataset.block === 'core/more'; }, transform: function transform(node) { var _node$dataset = node.dataset, customText = _node$dataset.customText, noTeaser = _node$dataset.noTeaser; var attrs = {}; // Don't copy unless defined and not an empty string if (customText) { attrs.customText = customText; } // Special handling for boolean if (noTeaser === '') { attrs.noTeaser = true; } return Object(external_this_wp_blocks_["createBlock"])('core/more', attrs); } }] }; /* harmony default export */ var more_transforms = (more_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var more_metadata = { name: "core/more", category: "layout", attributes: { customText: { type: "string" }, noTeaser: { type: "boolean", "default": false } } }; var more_name = more_metadata.name; var more_settings = { title: Object(external_this_wp_i18n_["_x"])('More', 'block name'), description: Object(external_this_wp_i18n_["__"])('Content before this block will be shown in the excerpt on your archives page.'), icon: library_more, supports: { customClassName: false, className: false, html: false, multiple: false }, example: {}, __experimentalLabel: function __experimentalLabel(attributes, _ref) { var context = _ref.context; if (context === 'accessibility') { return attributes.customText; } }, transforms: more_transforms, edit: edit_MoreEdit, save: more_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/page-break.js /** * WordPress dependencies */ var pageBreak = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M9 11h6v2H9zM2 11h5v2H2zM17 11h5v2h-5zM6 4h7v5h7V8l-6-6H6a2 2 0 0 0-2 2v5h2zM18 20H6v-5H4v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5h-2z" })); /* harmony default export */ var page_break = (pageBreak); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/edit.js /** * WordPress dependencies */ function NextPageEdit() { return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-nextpage" }, Object(external_this_wp_element_["createElement"])("span", null, Object(external_this_wp_i18n_["__"])('Page break'))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/save.js /** * WordPress dependencies */ function nextpage_save_save() { return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, ''); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/transforms.js /** * WordPress dependencies */ var nextpage_transforms_transforms = { from: [{ type: 'raw', schema: { 'wp-block': { attributes: ['data-block'] } }, isMatch: function isMatch(node) { return node.dataset && node.dataset.block === 'core/nextpage'; }, transform: function transform() { return Object(external_this_wp_blocks_["createBlock"])('core/nextpage', {}); } }] }; /* harmony default export */ var nextpage_transforms = (nextpage_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var nextpage_metadata = { name: "core/nextpage", category: "layout" }; var nextpage_name = nextpage_metadata.name; var nextpage_settings = { title: Object(external_this_wp_i18n_["__"])('Page Break'), parent: ['core/post-content'], description: Object(external_this_wp_i18n_["__"])('Separate your content into a multi-page experience.'), icon: page_break, keywords: [Object(external_this_wp_i18n_["__"])('next page'), Object(external_this_wp_i18n_["__"])('pagination')], supports: { customClassName: false, className: false, html: false }, example: {}, transforms: nextpage_transforms, edit: NextPageEdit, save: nextpage_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/preformatted.js /** * WordPress dependencies */ var preformatted = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20,4H4C2.9,4,2,4.9,2,6v12c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V6C22,4.9,21.1,4,20,4z M20,18H4V6h16V18z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "6", y: "10", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "6", y: "14", width: "8", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "16", y: "14", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "10", y: "10", width: "8", height: "2" })); /* harmony default export */ var library_preformatted = (preformatted); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/edit.js /** * WordPress dependencies */ function PreformattedEdit(_ref) { var attributes = _ref.attributes, mergeBlocks = _ref.mergeBlocks, setAttributes = _ref.setAttributes, className = _ref.className, style = _ref.style; var content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "pre", identifier: "content", preserveWhiteSpace: true, value: content, onChange: function onChange(nextContent) { setAttributes({ content: nextContent }); }, placeholder: Object(external_this_wp_i18n_["__"])('Write preformatted text…'), className: className, style: style, onMerge: mergeBlocks }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/save.js /** * WordPress dependencies */ function preformatted_save_save(_ref) { var attributes = _ref.attributes; var content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "pre", value: content }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/transforms.js /** * WordPress dependencies */ var preformatted_transforms_transforms = { from: [{ type: 'block', blocks: ['core/code', 'core/paragraph'], transform: function transform(_ref) { var content = _ref.content; return Object(external_this_wp_blocks_["createBlock"])('core/preformatted', { content: content }); } }, { type: 'raw', isMatch: function isMatch(node) { return node.nodeName === 'PRE' && !(node.children.length === 1 && node.firstChild.nodeName === 'CODE'); }, schema: function schema(_ref2) { var phrasingContentSchema = _ref2.phrasingContentSchema; return { pre: { children: phrasingContentSchema } }; } }], to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', attributes); } }] }; /* harmony default export */ var preformatted_transforms = (preformatted_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var preformatted_metadata = { name: "core/preformatted", category: "formatting", attributes: { content: { type: "string", source: "html", selector: "pre", "default": "", __unstablePreserveWhiteSpace: true } } }; var preformatted_name = preformatted_metadata.name; var preformatted_settings = { title: Object(external_this_wp_i18n_["__"])('Preformatted'), description: Object(external_this_wp_i18n_["__"])('Add text that respects your spacing and tabs, and also allows styling.'), icon: library_preformatted, example: { attributes: { // translators: Sample content for the Preformatted block. Can be replaced with a more locale-adequate work. content: Object(external_this_wp_i18n_["__"])('EXT. XANADU - FAINT DAWN - 1940 (MINIATURE)\nWindow, very small in the distance, illuminated.\nAll around this is an almost totally black screen. Now, as the camera moves slowly towards the window which is almost a postage stamp in the frame, other forms appear;') } }, transforms: preformatted_transforms, edit: PreformattedEdit, save: preformatted_save_save, merge: function merge(attributes, attributesToMerge) { return { content: attributes.content + attributesToMerge.content }; } }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pullquote.js /** * WordPress dependencies */ var pullquote = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Polygon"], { points: "21 18 2 18 2 20 21 20" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m19 10v4h-15v-4h15m1-2h-17c-0.55 0-1 0.45-1 1v6c0 0.55 0.45 1 1 1h17c0.55 0 1-0.45 1-1v-6c0-0.55-0.45-1-1-1z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Polygon"], { points: "21 4 2 4 2 6 21 6" })); /* harmony default export */ var library_pullquote = (pullquote); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/shared.js var SOLID_COLOR_STYLE_NAME = 'solid-color'; var SOLID_COLOR_CLASS = "is-style-".concat(SOLID_COLOR_STYLE_NAME); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/deprecated.js function pullquote_deprecated_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function pullquote_deprecated_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { pullquote_deprecated_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { pullquote_deprecated_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var pullquote_deprecated_blockAttributes = { value: { type: 'string', source: 'html', selector: 'blockquote', multiline: 'p' }, citation: { type: 'string', source: 'html', selector: 'cite', default: '' }, mainColor: { type: 'string' }, customMainColor: { type: 'string' }, textColor: { type: 'string' }, customTextColor: { type: 'string' } }; function parseBorderColor(styleString) { if (!styleString) { return; } var matches = styleString.match(/border-color:([^;]+)[;]?/); if (matches && matches[1]) { return matches[1]; } } var pullquote_deprecated_deprecated = [{ attributes: pullquote_deprecated_objectSpread({}, pullquote_deprecated_blockAttributes, { // figureStyle is an attribute that never existed. // We are using it as a way to access the styles previously applied to the figure. figureStyle: { source: 'attribute', selector: 'figure', attribute: 'style' } }), save: function save(_ref) { var attributes = _ref.attributes; var mainColor = attributes.mainColor, customMainColor = attributes.customMainColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor, value = attributes.value, citation = attributes.citation, className = attributes.className, figureStyle = attributes.figureStyle; var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); var figureClasses, figureStyles; // Is solid color style if (isSolidColorStyle) { var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', mainColor); figureClasses = classnames_default()(Object(defineProperty["a" /* default */])({ 'has-background': backgroundClass || customMainColor }, backgroundClass, backgroundClass)); figureStyles = { backgroundColor: backgroundClass ? undefined : customMainColor }; // Is normal style and a custom color is being used ( we can set a style directly with its value) } else if (customMainColor) { figureStyles = { borderColor: customMainColor }; // If normal style and a named color are being used, we need to retrieve the color value to set the style, // as there is no expectation that themes create classes that set border colors. } else if (mainColor) { // Previously here we queried the color settings to know the color value // of a named color. This made the save function impure and the block was refactored, // because meanwhile a change in the editor made it impossible to query color settings in the save function. // Here instead of querying the color settings to know the color value, we retrieve the value // directly from the style previously serialized. var borderColor = parseBorderColor(figureStyle); figureStyles = { borderColor: borderColor }; } var blockquoteTextColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var blockquoteClasses = (textColor || customTextColor) && classnames_default()('has-text-color', Object(defineProperty["a" /* default */])({}, blockquoteTextColorClass, blockquoteTextColorClass)); var blockquoteStyles = blockquoteTextColorClass ? undefined : { color: customTextColor }; return Object(external_this_wp_element_["createElement"])("figure", { className: figureClasses, style: figureStyles }, Object(external_this_wp_element_["createElement"])("blockquote", { className: blockquoteClasses, style: blockquoteStyles }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: value, multiline: true }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation }))); }, migrate: function migrate(_ref2) { var className = _ref2.className, figureStyle = _ref2.figureStyle, mainColor = _ref2.mainColor, attributes = Object(objectWithoutProperties["a" /* default */])(_ref2, ["className", "figureStyle", "mainColor"]); var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); // If is the default style, and a main color is set, // migrate the main color value into a custom color. // The custom color value is retrived by parsing the figure styles. if (!isSolidColorStyle && mainColor && figureStyle) { var borderColor = parseBorderColor(figureStyle); if (borderColor) { return pullquote_deprecated_objectSpread({}, attributes, { className: className, customMainColor: borderColor }); } } return pullquote_deprecated_objectSpread({ className: className, mainColor: mainColor }, attributes); } }, { attributes: pullquote_deprecated_blockAttributes, save: function save(_ref3) { var attributes = _ref3.attributes; var mainColor = attributes.mainColor, customMainColor = attributes.customMainColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor, value = attributes.value, citation = attributes.citation, className = attributes.className; var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); var figureClass, figureStyles; // Is solid color style if (isSolidColorStyle) { figureClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', mainColor); if (!figureClass) { figureStyles = { backgroundColor: customMainColor }; } // Is normal style and a custom color is being used ( we can set a style directly with its value) } else if (customMainColor) { figureStyles = { borderColor: customMainColor }; // Is normal style and a named color is being used, we need to retrieve the color value to set the style, // as there is no expectation that themes create classes that set border colors. } else if (mainColor) { var colors = Object(external_this_lodash_["get"])(Object(external_this_wp_data_["select"])('core/block-editor').getSettings(), ['colors'], []); var colorObject = Object(external_this_wp_blockEditor_["getColorObjectByAttributeValues"])(colors, mainColor); figureStyles = { borderColor: colorObject.color }; } var blockquoteTextColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var blockquoteClasses = textColor || customTextColor ? classnames_default()('has-text-color', Object(defineProperty["a" /* default */])({}, blockquoteTextColorClass, blockquoteTextColorClass)) : undefined; var blockquoteStyle = blockquoteTextColorClass ? undefined : { color: customTextColor }; return Object(external_this_wp_element_["createElement"])("figure", { className: figureClass, style: figureStyles }, Object(external_this_wp_element_["createElement"])("blockquote", { className: blockquoteClasses, style: blockquoteStyle }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: value, multiline: true }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation }))); } }, { attributes: pullquote_deprecated_objectSpread({}, pullquote_deprecated_blockAttributes), save: function save(_ref4) { var attributes = _ref4.attributes; var value = attributes.value, citation = attributes.citation; return Object(external_this_wp_element_["createElement"])("blockquote", null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: value, multiline: true }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation })); } }, { attributes: pullquote_deprecated_objectSpread({}, pullquote_deprecated_blockAttributes, { citation: { type: 'string', source: 'html', selector: 'footer' }, align: { type: 'string', default: 'none' } }), save: function save(_ref5) { var attributes = _ref5.attributes; var value = attributes.value, citation = attributes.citation, align = attributes.align; return Object(external_this_wp_element_["createElement"])("blockquote", { className: "align".concat(align) }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: value, multiline: true }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "footer", value: citation })); } }]; /* harmony default export */ var pullquote_deprecated = (pullquote_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var edit_PullQuoteEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PullQuoteEdit, _Component); function PullQuoteEdit(props) { var _this; Object(classCallCheck["a" /* default */])(this, PullQuoteEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PullQuoteEdit).call(this, props)); _this.wasTextColorAutomaticallyComputed = false; _this.pullQuoteMainColorSetter = _this.pullQuoteMainColorSetter.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.pullQuoteTextColorSetter = _this.pullQuoteTextColorSetter.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PullQuoteEdit, [{ key: "pullQuoteMainColorSetter", value: function pullQuoteMainColorSetter(colorValue) { var _this$props = this.props, colorUtils = _this$props.colorUtils, textColor = _this$props.textColor, setAttributes = _this$props.setAttributes, setTextColor = _this$props.setTextColor, setMainColor = _this$props.setMainColor, className = _this$props.className; var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); var needTextColor = !textColor.color || this.wasTextColorAutomaticallyComputed; var shouldSetTextColor = isSolidColorStyle && needTextColor && colorValue; if (isSolidColorStyle) { // If we use the solid color style, set the color using the normal mechanism. setMainColor(colorValue); } else { // If we use the default style, set the color as a custom color to force the usage of an inline style. // Default style uses a border color for which classes are not available. setAttributes({ customMainColor: colorValue }); } if (shouldSetTextColor) { this.wasTextColorAutomaticallyComputed = true; setTextColor(colorUtils.getMostReadableColor(colorValue)); } } }, { key: "pullQuoteTextColorSetter", value: function pullQuoteTextColorSetter(colorValue) { var setTextColor = this.props.setTextColor; setTextColor(colorValue); this.wasTextColorAutomaticallyComputed = false; } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _this$props2 = this.props, attributes = _this$props2.attributes, className = _this$props2.className, mainColor = _this$props2.mainColor, setAttributes = _this$props2.setAttributes; // If the block includes a named color and we switched from the // solid color style to the default style. if (attributes.mainColor && !Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS) && Object(external_this_lodash_["includes"])(prevProps.className, SOLID_COLOR_CLASS)) { // Remove the named color, and set the color as a custom color. // This is done because named colors use classes, in the default style we use a border color, // and themes don't set classes for border colors. setAttributes({ mainColor: undefined, customMainColor: mainColor.color }); } } }, { key: "render", value: function render() { var _this$props3 = this.props, attributes = _this$props3.attributes, mainColor = _this$props3.mainColor, textColor = _this$props3.textColor, setAttributes = _this$props3.setAttributes, isSelected = _this$props3.isSelected, className = _this$props3.className; var value = attributes.value, citation = attributes.citation; var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); var figureStyles = isSolidColorStyle ? { backgroundColor: mainColor.color } : { borderColor: mainColor.color }; var figureClasses = classnames_default()(className, Object(defineProperty["a" /* default */])({ 'has-background': isSolidColorStyle && mainColor.color }, mainColor.class, isSolidColorStyle && mainColor.class)); var blockquoteStyles = { color: textColor.color }; var blockquoteClasses = textColor.color && classnames_default()('has-text-color', Object(defineProperty["a" /* default */])({}, textColor.class, textColor.class)); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("figure", { style: figureStyles, className: figureClasses }, Object(external_this_wp_element_["createElement"])("blockquote", { style: blockquoteStyles, className: blockquoteClasses }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { multiline: true, value: value, onChange: function onChange(nextValue) { return setAttributes({ value: nextValue }); }, placeholder: // translators: placeholder text used for the quote Object(external_this_wp_i18n_["__"])('Write quote…') }), (!external_this_wp_blockEditor_["RichText"].isEmpty(citation) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { value: citation, placeholder: // translators: placeholder text used for the citation Object(external_this_wp_i18n_["__"])('Write citation…'), onChange: function onChange(nextCitation) { return setAttributes({ citation: nextCitation }); }, className: "wp-block-pullquote__citation" }))), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PanelColorSettings"], { title: Object(external_this_wp_i18n_["__"])('Color settings'), colorSettings: [{ value: mainColor.color, onChange: this.pullQuoteMainColorSetter, label: Object(external_this_wp_i18n_["__"])('Main color') }, { value: textColor.color, onChange: this.pullQuoteTextColorSetter, label: Object(external_this_wp_i18n_["__"])('Text color') }] }, isSolidColorStyle && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["ContrastChecker"], Object(esm_extends["a" /* default */])({ textColor: textColor.color, backgroundColor: mainColor.color }, { isLargeText: false }))))); } }]); return PullQuoteEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var pullquote_edit = (Object(external_this_wp_blockEditor_["withColors"])({ mainColor: 'background-color', textColor: 'color' })(edit_PullQuoteEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/save.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function pullquote_save_save(_ref) { var attributes = _ref.attributes; var mainColor = attributes.mainColor, customMainColor = attributes.customMainColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor, value = attributes.value, citation = attributes.citation, className = attributes.className; var isSolidColorStyle = Object(external_this_lodash_["includes"])(className, SOLID_COLOR_CLASS); var figureClasses, figureStyles; // Is solid color style if (isSolidColorStyle) { var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', mainColor); figureClasses = classnames_default()(Object(defineProperty["a" /* default */])({ 'has-background': backgroundClass || customMainColor }, backgroundClass, backgroundClass)); figureStyles = { backgroundColor: backgroundClass ? undefined : customMainColor }; // Is normal style and a custom color is being used ( we can set a style directly with its value) } else if (customMainColor) { figureStyles = { borderColor: customMainColor }; } var blockquoteTextColorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var blockquoteClasses = (textColor || customTextColor) && classnames_default()('has-text-color', Object(defineProperty["a" /* default */])({}, blockquoteTextColorClass, blockquoteTextColorClass)); var blockquoteStyles = blockquoteTextColorClass ? undefined : { color: customTextColor }; return Object(external_this_wp_element_["createElement"])("figure", { className: figureClasses, style: figureStyles }, Object(external_this_wp_element_["createElement"])("blockquote", { className: blockquoteClasses, style: blockquoteStyles }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { value: value, multiline: true }), !external_this_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "cite", value: citation }))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var pullquote_metadata = { name: "core/pullquote", category: "formatting", attributes: { value: { type: "string", source: "html", selector: "blockquote", multiline: "p" }, citation: { type: "string", source: "html", selector: "cite", "default": "" }, mainColor: { type: "string" }, customMainColor: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" } } }; var pullquote_name = pullquote_metadata.name; var pullquote_settings = { title: Object(external_this_wp_i18n_["__"])('Pullquote'), description: Object(external_this_wp_i18n_["__"])('Give special visual emphasis to a quote from your text.'), icon: library_pullquote, example: { attributes: { value: '

    ' + // translators: Quote serving as example for the Pullquote block. Attributed to Matt Mullenweg. Object(external_this_wp_i18n_["__"])('One of the hardest things to do in technology is disrupt yourself.') + '

    ', citation: Object(external_this_wp_i18n_["__"])('Matt Mullenweg') } }, styles: [{ name: 'default', label: Object(external_this_wp_i18n_["_x"])('Default', 'block style'), isDefault: true }, { name: SOLID_COLOR_STYLE_NAME, label: Object(external_this_wp_i18n_["__"])('Solid color') }], supports: { align: ['left', 'right', 'wide', 'full'] }, edit: pullquote_edit, save: pullquote_save_save, deprecated: pullquote_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/block/edit-panel/index.js /** * WordPress dependencies */ var edit_panel_ReusableBlockEditPanel = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ReusableBlockEditPanel, _Component); function ReusableBlockEditPanel() { var _this; Object(classCallCheck["a" /* default */])(this, ReusableBlockEditPanel); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ReusableBlockEditPanel).apply(this, arguments)); _this.titleField = Object(external_this_wp_element_["createRef"])(); _this.editButton = Object(external_this_wp_element_["createRef"])(); _this.handleFormSubmit = _this.handleFormSubmit.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.handleTitleChange = _this.handleTitleChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.handleTitleKeyDown = _this.handleTitleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(ReusableBlockEditPanel, [{ key: "componentDidMount", value: function componentDidMount() { // Select the input text when the form opens. if (this.props.isEditing && this.titleField.current) { this.titleField.current.select(); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { // Select the input text only once when the form opens. if (!prevProps.isEditing && this.props.isEditing) { this.titleField.current.select(); } // Move focus back to the Edit button after pressing the Escape key or Save. if ((prevProps.isEditing || prevProps.isSaving) && !this.props.isEditing && !this.props.isSaving) { this.editButton.current.focus(); } } }, { key: "handleFormSubmit", value: function handleFormSubmit(event) { event.preventDefault(); this.props.onSave(); } }, { key: "handleTitleChange", value: function handleTitleChange(event) { this.props.onChangeTitle(event.target.value); } }, { key: "handleTitleKeyDown", value: function handleTitleKeyDown(event) { if (event.keyCode === external_this_wp_keycodes_["ESCAPE"]) { event.stopPropagation(); this.props.onCancel(); } } }, { key: "render", value: function render() { var _this$props = this.props, isEditing = _this$props.isEditing, title = _this$props.title, isSaving = _this$props.isSaving, isEditDisabled = _this$props.isEditDisabled, onEdit = _this$props.onEdit, instanceId = _this$props.instanceId; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, !isEditing && !isSaving && Object(external_this_wp_element_["createElement"])("div", { className: "reusable-block-edit-panel" }, Object(external_this_wp_element_["createElement"])("b", { className: "reusable-block-edit-panel__info" }, title), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { ref: this.editButton, isSecondary: true, className: "reusable-block-edit-panel__button", disabled: isEditDisabled, onClick: onEdit }, Object(external_this_wp_i18n_["__"])('Edit'))), (isEditing || isSaving) && Object(external_this_wp_element_["createElement"])("form", { className: "reusable-block-edit-panel", onSubmit: this.handleFormSubmit }, Object(external_this_wp_element_["createElement"])("label", { htmlFor: "reusable-block-edit-panel__title-".concat(instanceId), className: "reusable-block-edit-panel__label" }, Object(external_this_wp_i18n_["__"])('Name:')), Object(external_this_wp_element_["createElement"])("input", { ref: this.titleField, type: "text", disabled: isSaving, className: "reusable-block-edit-panel__title", value: title, onChange: this.handleTitleChange, onKeyDown: this.handleTitleKeyDown, id: "reusable-block-edit-panel__title-".concat(instanceId) }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { type: "submit", isSecondary: true, isBusy: isSaving, disabled: !title || isSaving, className: "reusable-block-edit-panel__button" }, Object(external_this_wp_i18n_["__"])('Save')))); } }]); return ReusableBlockEditPanel; }(external_this_wp_element_["Component"]); /* harmony default export */ var edit_panel = (Object(external_this_wp_compose_["withInstanceId"])(edit_panel_ReusableBlockEditPanel)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/block/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var edit_ReusableBlockEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ReusableBlockEdit, _Component); function ReusableBlockEdit(_ref) { var _this; var reusableBlock = _ref.reusableBlock; Object(classCallCheck["a" /* default */])(this, ReusableBlockEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ReusableBlockEdit).apply(this, arguments)); _this.startEditing = _this.startEditing.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.stopEditing = _this.stopEditing.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setBlocks = _this.setBlocks.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setTitle = _this.setTitle.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.save = _this.save.bind(Object(assertThisInitialized["a" /* default */])(_this)); if (reusableBlock) { // Start in edit mode when we're working with a newly created reusable block _this.state = { isEditing: reusableBlock.isTemporary, title: reusableBlock.title, blocks: Object(external_this_wp_blocks_["parse"])(reusableBlock.content) }; } else { // Start in preview mode when we're working with an existing reusable block _this.state = { isEditing: false, title: null, blocks: [] }; } return _this; } Object(createClass["a" /* default */])(ReusableBlockEdit, [{ key: "componentDidMount", value: function componentDidMount() { if (!this.props.reusableBlock) { this.props.fetchReusableBlock(); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (prevProps.reusableBlock !== this.props.reusableBlock && this.state.title === null) { this.setState({ title: this.props.reusableBlock.title, blocks: Object(external_this_wp_blocks_["parse"])(this.props.reusableBlock.content) }); } } }, { key: "startEditing", value: function startEditing() { var reusableBlock = this.props.reusableBlock; this.setState({ isEditing: true, title: reusableBlock.title, blocks: Object(external_this_wp_blocks_["parse"])(reusableBlock.content) }); } }, { key: "stopEditing", value: function stopEditing() { this.setState({ isEditing: false, title: null, blocks: [] }); } }, { key: "setBlocks", value: function setBlocks(blocks) { this.setState({ blocks: blocks }); } }, { key: "setTitle", value: function setTitle(title) { this.setState({ title: title }); } }, { key: "save", value: function save() { var _this$props = this.props, onChange = _this$props.onChange, onSave = _this$props.onSave; var _this$state = this.state, blocks = _this$state.blocks, title = _this$state.title; var content = Object(external_this_wp_blocks_["serialize"])(blocks); onChange({ title: title, content: content }); onSave(); this.stopEditing(); } }, { key: "render", value: function render() { var _this$props2 = this.props, isSelected = _this$props2.isSelected, reusableBlock = _this$props2.reusableBlock, isFetching = _this$props2.isFetching, isSaving = _this$props2.isSaving, canUpdateBlock = _this$props2.canUpdateBlock, settings = _this$props2.settings; var _this$state2 = this.state, isEditing = _this$state2.isEditing, title = _this$state2.title, blocks = _this$state2.blocks; if (!reusableBlock && isFetching) { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null)); } if (!reusableBlock) { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], null, Object(external_this_wp_i18n_["__"])('Block has been deleted or is unavailable.')); } var element = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockEditorProvider"], { settings: settings, value: blocks, onChange: this.setBlocks, onInput: this.setBlocks }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["WritingFlow"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockList"], null))); if (!isEditing) { element = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, element); } return Object(external_this_wp_element_["createElement"])("div", { className: "block-library-block__reusable-block-container" }, (isSelected || isEditing) && Object(external_this_wp_element_["createElement"])(edit_panel, { isEditing: isEditing, title: title !== null ? title : reusableBlock.title, isSaving: isSaving && !reusableBlock.isTemporary, isEditDisabled: !canUpdateBlock, onEdit: this.startEditing, onChangeTitle: this.setTitle, onSave: this.save, onCancel: this.stopEditing }), element); } }]); return ReusableBlockEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var block_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, ownProps) { var _select = select('core/editor'), getReusableBlock = _select.__experimentalGetReusableBlock, isFetchingReusableBlock = _select.__experimentalIsFetchingReusableBlock, isSavingReusableBlock = _select.__experimentalIsSavingReusableBlock; var _select2 = select('core'), canUser = _select2.canUser; var _select3 = select('core/block-editor'), __experimentalGetParsedReusableBlock = _select3.__experimentalGetParsedReusableBlock, getSettings = _select3.getSettings; var ref = ownProps.attributes.ref; var reusableBlock = getReusableBlock(ref); return { reusableBlock: reusableBlock, isFetching: isFetchingReusableBlock(ref), isSaving: isSavingReusableBlock(ref), blocks: reusableBlock ? __experimentalGetParsedReusableBlock(reusableBlock.id) : null, canUpdateBlock: !!reusableBlock && !reusableBlock.isTemporary && !!canUser('update', 'blocks', ref), settings: getSettings() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, ownProps) { var _dispatch = dispatch('core/editor'), fetchReusableBlocks = _dispatch.__experimentalFetchReusableBlocks, updateReusableBlock = _dispatch.__experimentalUpdateReusableBlock, saveReusableBlock = _dispatch.__experimentalSaveReusableBlock; var ref = ownProps.attributes.ref; return { fetchReusableBlock: Object(external_this_lodash_["partial"])(fetchReusableBlocks, ref), onChange: Object(external_this_lodash_["partial"])(updateReusableBlock, ref), onSave: Object(external_this_lodash_["partial"])(saveReusableBlock, ref) }; })])(edit_ReusableBlockEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/block/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var block_name = 'core/block'; var block_settings = { title: Object(external_this_wp_i18n_["__"])('Reusable Block'), category: 'reusable', description: Object(external_this_wp_i18n_["__"])('Create content, and save it for you and other contributors to reuse across your site. Update the block, and the changes apply everywhere it’s used.'), supports: { customClassName: false, html: false, inserter: false }, edit: block_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/rss.js /** * WordPress dependencies */ var rss = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M14.92 18H18C18 9.32 10.82 2.25 2 2.25v3.02c7.12 0 12.92 5.71 12.92 12.73zm-5.44 0h3.08C12.56 12.27 7.82 7.6 2 7.6v3.02c2 0 3.87.77 5.29 2.16C8.7 14.17 9.48 16.03 9.48 18zm-5.35-.02c1.17 0 2.13-.93 2.13-2.09 0-1.15-.96-2.09-2.13-2.09-1.18 0-2.13.94-2.13 2.09 0 1.16.95 2.09 2.13 2.09z" })); /* harmony default export */ var library_rss = (rss); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/rss/edit.js /** * WordPress dependencies */ var DEFAULT_MIN_ITEMS = 1; var DEFAULT_MAX_ITEMS = 10; var edit_RSSEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(RSSEdit, _Component); function RSSEdit() { var _this; Object(classCallCheck["a" /* default */])(this, RSSEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(RSSEdit).apply(this, arguments)); _this.state = { editing: !_this.props.attributes.feedURL }; _this.toggleAttribute = _this.toggleAttribute.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSubmitURL = _this.onSubmitURL.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(RSSEdit, [{ key: "toggleAttribute", value: function toggleAttribute(propName) { var _this2 = this; return function () { var value = _this2.props.attributes[propName]; var setAttributes = _this2.props.setAttributes; setAttributes(Object(defineProperty["a" /* default */])({}, propName, !value)); }; } }, { key: "onSubmitURL", value: function onSubmitURL(event) { event.preventDefault(); var feedURL = this.props.attributes.feedURL; if (feedURL) { this.setState({ editing: false }); } } }, { key: "render", value: function render() { var _this3 = this; var _this$props$attribute = this.props.attributes, blockLayout = _this$props$attribute.blockLayout, columns = _this$props$attribute.columns, displayAuthor = _this$props$attribute.displayAuthor, displayExcerpt = _this$props$attribute.displayExcerpt, displayDate = _this$props$attribute.displayDate, excerptLength = _this$props$attribute.excerptLength, feedURL = _this$props$attribute.feedURL, itemsToShow = _this$props$attribute.itemsToShow; var setAttributes = this.props.setAttributes; if (this.state.editing) { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { icon: library_rss, label: "RSS" }, Object(external_this_wp_element_["createElement"])("form", { onSubmit: this.onSubmitURL }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { placeholder: Object(external_this_wp_i18n_["__"])('Enter URL here…'), value: feedURL, onChange: function onChange(value) { return setAttributes({ feedURL: value }); }, className: 'components-placeholder__input' }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, type: "submit" }, Object(external_this_wp_i18n_["__"])('Use URL')))); } var toolbarControls = [{ icon: pencil["a" /* default */], title: Object(external_this_wp_i18n_["__"])('Edit RSS URL'), onClick: function onClick() { return _this3.setState({ editing: true }); } }, { icon: 'list-view', title: Object(external_this_wp_i18n_["__"])('List view'), onClick: function onClick() { return setAttributes({ blockLayout: 'list' }); }, isActive: blockLayout === 'list' }, { icon: 'grid-view', title: Object(external_this_wp_i18n_["__"])('Grid view'), onClick: function onClick() { return setAttributes({ blockLayout: 'grid' }); }, isActive: blockLayout === 'grid' }]; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], { controls: toolbarControls })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('RSS settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Number of items'), value: itemsToShow, onChange: function onChange(value) { return setAttributes({ itemsToShow: value }); }, min: DEFAULT_MIN_ITEMS, max: DEFAULT_MAX_ITEMS, required: true }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display author'), checked: displayAuthor, onChange: this.toggleAttribute('displayAuthor') }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display date'), checked: displayDate, onChange: this.toggleAttribute('displayDate') }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Display excerpt'), checked: displayExcerpt, onChange: this.toggleAttribute('displayExcerpt') }), displayExcerpt && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Max number of words in excerpt'), value: excerptLength, onChange: function onChange(value) { return setAttributes({ excerptLength: value }); }, min: 10, max: 100, required: true }), blockLayout === 'grid' && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Columns'), value: columns, onChange: function onChange(value) { return setAttributes({ columns: value }); }, min: 2, max: 6, required: true }))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_serverSideRender_default.a, { block: "core/rss", attributes: this.props.attributes }))); } }]); return RSSEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var rss_edit = (edit_RSSEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/rss/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var rss_name = 'core/rss'; var rss_settings = { title: Object(external_this_wp_i18n_["__"])('RSS'), description: Object(external_this_wp_i18n_["__"])('Display entries from any RSS or Atom feed.'), icon: library_rss, category: 'widgets', keywords: [Object(external_this_wp_i18n_["__"])('atom'), Object(external_this_wp_i18n_["__"])('feed')], supports: { align: true, html: false }, example: { attributes: { feedURL: 'https://wordpress.org' } }, edit: rss_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/search.js /** * WordPress dependencies */ var search = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.14 4.18c1.87 1.87 2.11 4.75.72 6.89.12.1.22.21.36.31.2.16.47.36.81.59.34.24.56.39.66.47.42.31.73.57.94.78.32.32.6.65.84 1 .25.35.44.69.59 1.04.14.35.21.68.18 1-.02.32-.14.59-.36.81s-.49.34-.81.36c-.31.02-.65-.04-.99-.19-.35-.14-.7-.34-1.04-.59-.35-.24-.68-.52-1-.84-.21-.21-.47-.52-.77-.93-.1-.13-.25-.35-.47-.66-.22-.32-.4-.57-.56-.78-.16-.2-.29-.35-.44-.5-2.07 1.09-4.69.76-6.44-.98-2.14-2.15-2.14-5.64 0-7.78 2.15-2.15 5.63-2.15 7.78 0zm-1.41 6.36c1.36-1.37 1.36-3.58 0-4.95-1.37-1.37-3.59-1.37-4.95 0-1.37 1.37-1.37 3.58 0 4.95 1.36 1.37 3.58 1.37 4.95 0z" })); /* harmony default export */ var library_search = (search); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/edit.js /** * WordPress dependencies */ function SearchEdit(_ref) { var className = _ref.className, attributes = _ref.attributes, setAttributes = _ref.setAttributes; var label = attributes.label, placeholder = attributes.placeholder, buttonText = attributes.buttonText; return Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { className: "wp-block-search__label", "aria-label": Object(external_this_wp_i18n_["__"])('Label text'), placeholder: Object(external_this_wp_i18n_["__"])('Add label…'), withoutInteractiveFormatting: true, value: label, onChange: function onChange(html) { return setAttributes({ label: html }); } }), Object(external_this_wp_element_["createElement"])("input", { className: "wp-block-search__input", "aria-label": Object(external_this_wp_i18n_["__"])('Optional placeholder text') // We hide the placeholder field's placeholder when there is a value. This // stops screen readers from reading the placeholder field's placeholder // which is confusing. , placeholder: placeholder ? undefined : Object(external_this_wp_i18n_["__"])('Optional placeholder…'), value: placeholder, onChange: function onChange(event) { return setAttributes({ placeholder: event.target.value }); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { className: "wp-block-search__button", "aria-label": Object(external_this_wp_i18n_["__"])('Button text'), placeholder: Object(external_this_wp_i18n_["__"])('Add button text…'), withoutInteractiveFormatting: true, value: buttonText, onChange: function onChange(html) { return setAttributes({ buttonText: html }); } })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var search_name = 'core/search'; var search_settings = { title: Object(external_this_wp_i18n_["__"])('Search'), description: Object(external_this_wp_i18n_["__"])('Help visitors find your content.'), icon: library_search, category: 'widgets', keywords: [Object(external_this_wp_i18n_["__"])('find')], supports: { align: true }, example: {}, edit: SearchEdit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/group.js /** * WordPress dependencies */ var group = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M9 8a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-1v3a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h1V8zm2 3h4V9h-4v2zm2 2H9v2h4v-2z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M2 4.732A2 2 0 1 1 4.732 2h14.536A2 2 0 1 1 22 4.732v14.536A2 2 0 1 1 19.268 22H4.732A2 2 0 1 1 2 19.268V4.732zM4.732 4h14.536c.175.304.428.557.732.732v14.536a2.01 2.01 0 0 0-.732.732H4.732A2.01 2.01 0 0 0 4 19.268V4.732A2.01 2.01 0 0 0 4.732 4z" })); /* harmony default export */ var library_group = (group); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ var group_deprecated_deprecated = [// Version of the group block with a bug that made text color class not applied. { attributes: { backgroundColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, textColor: { type: 'string' }, customTextColor: { type: 'string' } }, supports: { align: ['wide', 'full'], anchor: true, html: false }, save: function save(_ref) { var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()(backgroundClass, { 'has-text-color': textColor || customTextColor, 'has-background': backgroundColor || customBackgroundColor }); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: styles }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-group__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } }, // v1 of group block. Deprecated to add an inner-container div around `InnerBlocks.Content`. { attributes: { backgroundColor: { type: 'string' }, customBackgroundColor: { type: 'string' } }, supports: { align: ['wide', 'full'], anchor: true, html: false }, save: function save(_ref2) { var attributes = _ref2.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var className = classnames_default()(backgroundClass, { 'has-background': backgroundColor || customBackgroundColor }); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: styles }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } }]; /* harmony default export */ var group_deprecated = (group_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/edit.js /** * WordPress dependencies */ function GroupEdit(_ref) { var hasInnerBlocks = _ref.hasInnerBlocks, className = _ref.className; var ref = Object(external_this_wp_element_["useRef"])(); var _experimentalUseColo = Object(external_this_wp_blockEditor_["__experimentalUseColors"])([{ name: 'textColor', property: 'color' }, { name: 'backgroundColor', className: 'has-background' }], { contrastCheckers: [{ backgroundColor: true, textColor: true }], colorDetector: { targetRef: ref } }), TextColor = _experimentalUseColo.TextColor, BackgroundColor = _experimentalUseColo.BackgroundColor, InspectorControlsColorPanel = _experimentalUseColo.InspectorControlsColorPanel; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, InspectorControlsColorPanel, Object(external_this_wp_element_["createElement"])(BackgroundColor, null, Object(external_this_wp_element_["createElement"])(TextColor, null, Object(external_this_wp_element_["createElement"])("div", { className: className, ref: ref }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-group__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { renderAppender: !hasInnerBlocks && external_this_wp_blockEditor_["InnerBlocks"].ButtonBlockAppender })))))); } /* harmony default export */ var group_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var clientId = _ref2.clientId; var _select = select('core/block-editor'), getBlock = _select.getBlock; var block = getBlock(clientId); return { hasInnerBlocks: !!(block && block.innerBlocks.length) }; })])(GroupEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/save.js /** * External dependencies */ /** * WordPress dependencies */ function group_save_save(_ref) { var attributes = _ref.attributes; var backgroundColor = attributes.backgroundColor, customBackgroundColor = attributes.customBackgroundColor, textColor = attributes.textColor, customTextColor = attributes.customTextColor; var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var textClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', textColor); var className = classnames_default()(backgroundClass, textClass, { 'has-text-color': textColor || customTextColor, 'has-background': backgroundColor || customBackgroundColor }); var styles = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return Object(external_this_wp_element_["createElement"])("div", { className: className, style: styles }, Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-group__inner-container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var group_metadata = { name: "core/group", category: "layout", attributes: { backgroundColor: { type: "string" }, customBackgroundColor: { type: "string" }, textColor: { type: "string" }, customTextColor: { type: "string" } } }; var group_name = group_metadata.name; var group_settings = { title: Object(external_this_wp_i18n_["__"])('Group'), icon: library_group, description: Object(external_this_wp_i18n_["__"])('A block that groups other blocks.'), keywords: [Object(external_this_wp_i18n_["__"])('container'), Object(external_this_wp_i18n_["__"])('wrapper'), Object(external_this_wp_i18n_["__"])('row'), Object(external_this_wp_i18n_["__"])('section')], example: { attributes: { customBackgroundColor: '#ffffff', customTextColor: '#000000' }, innerBlocks: [{ name: 'core/paragraph', attributes: { customTextColor: '#cf2e2e', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('One.') } }, { name: 'core/paragraph', attributes: { customTextColor: '#ff6900', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('Two.') } }, { name: 'core/paragraph', attributes: { customTextColor: '#fcb900', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('Three.') } }, { name: 'core/paragraph', attributes: { customTextColor: '#00d084', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('Four.') } }, { name: 'core/paragraph', attributes: { customTextColor: '#0693e3', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('Five.') } }, { name: 'core/paragraph', attributes: { customTextColor: '#9b51e0', fontSize: 'large', content: Object(external_this_wp_i18n_["__"])('Six.') } }] }, supports: { align: ['wide', 'full'], anchor: true, html: false }, transforms: { from: [{ type: 'block', isMultiBlock: true, blocks: ['*'], __experimentalConvert: function __experimentalConvert(blocks) { // Avoid transforming a single `core/group` Block if (blocks.length === 1 && blocks[0].name === 'core/group') { return; } var alignments = ['wide', 'full']; // Determine the widest setting of all the blocks to be grouped var widestAlignment = blocks.reduce(function (accumulator, block) { var align = block.attributes.align; return alignments.indexOf(align) > alignments.indexOf(accumulator) ? align : accumulator; }, undefined); // Clone the Blocks to be Grouped // Failing to create new block references causes the original blocks // to be replaced in the switchToBlockType call thereby meaning they // are removed both from their original location and within the // new group block. var groupInnerBlocks = blocks.map(function (block) { return Object(external_this_wp_blocks_["createBlock"])(block.name, block.attributes, block.innerBlocks); }); return Object(external_this_wp_blocks_["createBlock"])('core/group', { align: widestAlignment }, groupInnerBlocks); } }] }, edit: group_edit, save: group_save_save, deprecated: group_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/separator.js /** * WordPress dependencies */ var separator = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M19 13H5v-2h14v2z" })); /* harmony default export */ var library_separator = (separator); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/separator-settings.js /** * WordPress dependencies */ var separator_settings_SeparatorSettings = function SeparatorSettings(_ref) { var color = _ref.color, setColor = _ref.setColor; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PanelColorSettings"], { title: Object(external_this_wp_i18n_["__"])('Color settings'), colorSettings: [{ value: color.color, onChange: setColor, label: Object(external_this_wp_i18n_["__"])('Color') }] })); }; /* harmony default export */ var separator_settings = (separator_settings_SeparatorSettings); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function SeparatorEdit(_ref) { var color = _ref.color, setColor = _ref.setColor, className = _ref.className; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["HorizontalRule"], { className: classnames_default()(className, Object(defineProperty["a" /* default */])({ 'has-background': color.color }, color.class, color.class)), style: { backgroundColor: color.color, color: color.color } }), Object(external_this_wp_element_["createElement"])(separator_settings, { color: color, setColor: setColor })); } /* harmony default export */ var separator_edit = (Object(external_this_wp_blockEditor_["withColors"])('color', { textColor: 'color' })(SeparatorEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/save.js /** * External dependencies */ /** * WordPress dependencies */ function separatorSave(_ref) { var _classnames; var attributes = _ref.attributes; var color = attributes.color, customColor = attributes.customColor; // the hr support changing color using border-color, since border-color // is not yet supported in the color palette, we use background-color var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', color); // the dots styles uses text for the dots, to change those dots color is // using color, not backgroundColor var colorClass = Object(external_this_wp_blockEditor_["getColorClassName"])('color', color); var separatorClasses = classnames_default()((_classnames = { 'has-text-color has-background': color || customColor }, Object(defineProperty["a" /* default */])(_classnames, backgroundClass, backgroundClass), Object(defineProperty["a" /* default */])(_classnames, colorClass, colorClass), _classnames)); var separatorStyle = { backgroundColor: backgroundClass ? undefined : customColor, color: colorClass ? undefined : customColor }; return Object(external_this_wp_element_["createElement"])("hr", { className: separatorClasses, style: separatorStyle }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/transforms.js /** * WordPress dependencies */ var separator_transforms_transforms = { from: [{ type: 'enter', regExp: /^-{3,}$/, transform: function transform() { return Object(external_this_wp_blocks_["createBlock"])('core/separator'); } }, { type: 'raw', selector: 'hr', schema: { hr: {} } }] }; /* harmony default export */ var separator_transforms = (separator_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var separator_metadata = { name: "core/separator", category: "layout", attributes: { color: { type: "string" }, customColor: { type: "string" } } }; var separator_name = separator_metadata.name; var build_module_separator_settings = { title: Object(external_this_wp_i18n_["__"])('Separator'), description: Object(external_this_wp_i18n_["__"])('Create a break between ideas or sections with a horizontal separator.'), icon: library_separator, keywords: [Object(external_this_wp_i18n_["__"])('horizontal-line'), 'hr', Object(external_this_wp_i18n_["__"])('divider')], example: { attributes: { customColor: '#065174', className: 'is-style-wide' } }, styles: [{ name: 'default', label: Object(external_this_wp_i18n_["__"])('Default'), isDefault: true }, { name: 'wide', label: Object(external_this_wp_i18n_["__"])('Wide Line') }, { name: 'dots', label: Object(external_this_wp_i18n_["__"])('Dots') }], transforms: separator_transforms, edit: separator_edit, save: separatorSave }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/shortcode.js /** * WordPress dependencies */ var shortcode_shortcode = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M8.5,21.4l1.9,0.5l5.2-19.3l-1.9-0.5L8.5,21.4z M3,19h4v-2H5V7h2V5H3V19z M17,5v2h2v10h-2v2h4V5H17z" })); /* harmony default export */ var library_shortcode = (shortcode_shortcode); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/edit.js /** * WordPress dependencies */ function ShortcodeEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes; var instanceId = Object(external_this_wp_compose_["useInstanceId"])(ShortcodeEdit); var inputId = "blocks-shortcode-input-".concat(instanceId); return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-shortcode components-placeholder" }, Object(external_this_wp_element_["createElement"])("label", { htmlFor: inputId, className: "components-placeholder__label" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Dashicon"], { icon: "shortcode" }), Object(external_this_wp_i18n_["__"])('Shortcode')), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PlainText"], { className: "input-control", id: inputId, value: attributes.text, placeholder: Object(external_this_wp_i18n_["__"])('Write shortcode here…'), onChange: function onChange(text) { return setAttributes({ text: text }); } })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/save.js /** * WordPress dependencies */ function shortcode_save_save(_ref) { var attributes = _ref.attributes; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, attributes.text); } // EXTERNAL MODULE: external {"this":["wp","autop"]} var external_this_wp_autop_ = __webpack_require__("UuzZ"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/transforms.js /** * WordPress dependencies */ var shortcode_transforms_transforms = { from: [{ type: 'shortcode', // Per "Shortcode names should be all lowercase and use all // letters, but numbers and underscores should work fine too. // Be wary of using hyphens (dashes), you'll be better off not // using them." in https://codex.wordpress.org/Shortcode_API // Require that the first character be a letter. This notably // prevents footnote markings ([1]) from being caught as // shortcodes. tag: '[a-z][a-z0-9_-]*', attributes: { text: { type: 'string', shortcode: function shortcode(attrs, _ref) { var content = _ref.content; return Object(external_this_wp_autop_["removep"])(Object(external_this_wp_autop_["autop"])(content)); } } }, priority: 20 }] }; /* harmony default export */ var shortcode_transforms = (shortcode_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var shortcode_metadata = { name: "core/shortcode", category: "widgets", attributes: { text: { type: "string", source: "html" } } }; var shortcode_name = shortcode_metadata.name; var shortcode_settings = { title: Object(external_this_wp_i18n_["__"])('Shortcode'), description: Object(external_this_wp_i18n_["__"])('Insert additional custom elements with a WordPress shortcode.'), icon: library_shortcode, transforms: shortcode_transforms, supports: { customClassName: false, className: false, html: false }, edit: ShortcodeEdit, save: shortcode_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/resize-corner-n-e.js /** * WordPress dependencies */ var resizeCornerNE = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M13 4v2h3.59L6 16.59V13H4v7h7v-2H7.41L18 7.41V11h2V4h-7" })); /* harmony default export */ var resize_corner_n_e = (resizeCornerNE); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/edit.js /** * External dependencies */ /** * WordPress dependencies */ var edit_SpacerEdit = function SpacerEdit(_ref) { var attributes = _ref.attributes, isSelected = _ref.isSelected, setAttributes = _ref.setAttributes, instanceId = _ref.instanceId, onResizeStart = _ref.onResizeStart, _onResizeStop = _ref.onResizeStop; var height = attributes.height; var id = "block-spacer-height-input-".concat(instanceId); var _useState = Object(external_this_wp_element_["useState"])(height), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), inputHeightValue = _useState2[0], setInputHeightValue = _useState2[1]; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ResizableBox"], { className: classnames_default()('block-library-spacer__resize-container', { 'is-selected': isSelected }), size: { height: height }, minHeight: "20", enable: { top: false, right: false, bottom: true, left: false, topRight: false, bottomRight: false, bottomLeft: false, topLeft: false }, onResizeStart: onResizeStart, onResizeStop: function onResizeStop(event, direction, elt, delta) { _onResizeStop(); var spacerHeight = parseInt(height + delta.height, 10); setAttributes({ height: spacerHeight }); setInputHeightValue(spacerHeight); } }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Spacer settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"], { label: Object(external_this_wp_i18n_["__"])('Height in pixels'), id: id }, Object(external_this_wp_element_["createElement"])("input", { type: "number", id: id, onChange: function onChange(event) { var spacerHeight = parseInt(event.target.value, 10); setInputHeightValue(spacerHeight); if (isNaN(spacerHeight)) { // Set spacer height to default size and input box to empty string setInputHeightValue(''); spacerHeight = 100; } else if (spacerHeight < 20) { // Set spacer height to minimum size spacerHeight = 20; } setAttributes({ height: spacerHeight }); }, value: inputHeightValue, min: "20", step: "10" }))))); }; /* harmony default export */ var spacer_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), toggleSelection = _dispatch.toggleSelection; return { onResizeStart: function onResizeStart() { return toggleSelection(false); }, onResizeStop: function onResizeStop() { return toggleSelection(true); } }; }), external_this_wp_compose_["withInstanceId"]])(edit_SpacerEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/save.js function spacer_save_save(_ref) { var attributes = _ref.attributes; return Object(external_this_wp_element_["createElement"])("div", { style: { height: attributes.height }, "aria-hidden": true }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var spacer_metadata = { name: "core/spacer", category: "layout", attributes: { height: { type: "number", "default": 100 } } }; var spacer_name = spacer_metadata.name; var spacer_settings = { title: Object(external_this_wp_i18n_["__"])('Spacer'), description: Object(external_this_wp_i18n_["__"])('Add white space between blocks and customize its height.'), icon: resize_corner_n_e, edit: spacer_edit, save: spacer_save_save }; // EXTERNAL MODULE: external {"this":["wp","deprecated"]} var external_this_wp_deprecated_ = __webpack_require__("NMb1"); var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/subhead/edit.js /** * WordPress dependencies */ function SubheadEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, className = _ref.className; var align = attributes.align, content = attributes.content, placeholder = attributes.placeholder; external_this_wp_deprecated_default()('The Subheading block', { alternative: 'the Paragraph block', plugin: 'Gutenberg' }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { value: align, onChange: function onChange(nextAlign) { setAttributes({ align: nextAlign }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "p", value: content, onChange: function onChange(nextContent) { setAttributes({ content: nextContent }); }, style: { textAlign: align }, className: className, placeholder: placeholder || Object(external_this_wp_i18n_["__"])('Write subheading…') })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/subhead/save.js /** * WordPress dependencies */ function subhead_save_save(_ref) { var attributes = _ref.attributes; var align = attributes.align, content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", style: { textAlign: align }, value: content }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/subhead/transforms.js /** * WordPress dependencies */ var subhead_transforms_transforms = { to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', attributes); } }] }; /* harmony default export */ var subhead_transforms = (subhead_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/subhead/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var subhead_metadata = { name: "core/subhead", category: "common", attributes: { align: { type: "string" }, content: { type: "string", source: "html", selector: "p" } } }; var subhead_name = subhead_metadata.name; var subhead_settings = { title: Object(external_this_wp_i18n_["__"])('Subheading (deprecated)'), description: Object(external_this_wp_i18n_["__"])('This block is deprecated. Please use the Paragraph block instead.'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { d: "M7.1 6l-.5 3h4.5L9.4 19h3l1.8-10h4.5l.5-3H7.1z" })), supports: { // Hide from inserter as this block is deprecated. inserter: false, multiple: false }, transforms: subhead_transforms, edit: SubheadEdit, save: subhead_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table.js /** * WordPress dependencies */ var table = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v3H5V5h15zm-5 14h-5v-9h5v9zM5 10h3v9H5v-9zm12 9v-9h3v9h-3z" })); /* harmony default export */ var library_table = (table); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ var table_deprecated_supports = { align: true }; var table_deprecated_deprecated = [{ attributes: { hasFixedLayout: { type: 'boolean', default: false }, backgroundColor: { type: 'string' }, head: { type: 'array', default: [], source: 'query', selector: 'thead tr', query: { cells: { type: 'array', default: [], source: 'query', selector: 'td,th', query: { content: { type: 'string', source: 'html' }, tag: { type: 'string', default: 'td', source: 'tag' }, scope: { type: 'string', source: 'attribute', attribute: 'scope' } } } } }, body: { type: 'array', default: [], source: 'query', selector: 'tbody tr', query: { cells: { type: 'array', default: [], source: 'query', selector: 'td,th', query: { content: { type: 'string', source: 'html' }, tag: { type: 'string', default: 'td', source: 'tag' }, scope: { type: 'string', source: 'attribute', attribute: 'scope' } } } } }, foot: { type: 'array', default: [], source: 'query', selector: 'tfoot tr', query: { cells: { type: 'array', default: [], source: 'query', selector: 'td,th', query: { content: { type: 'string', source: 'html' }, tag: { type: 'string', default: 'td', source: 'tag' }, scope: { type: 'string', source: 'attribute', attribute: 'scope' } } } } } }, supports: table_deprecated_supports, save: function save(_ref) { var attributes = _ref.attributes; var hasFixedLayout = attributes.hasFixedLayout, head = attributes.head, body = attributes.body, foot = attributes.foot, backgroundColor = attributes.backgroundColor; var isEmpty = !head.length && !body.length && !foot.length; if (isEmpty) { return null; } var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var classes = classnames_default()(backgroundClass, { 'has-fixed-layout': hasFixedLayout, 'has-background': !!backgroundClass }); var Section = function Section(_ref2) { var type = _ref2.type, rows = _ref2.rows; if (!rows.length) { return null; } var Tag = "t".concat(type); return Object(external_this_wp_element_["createElement"])(Tag, null, rows.map(function (_ref3, rowIndex) { var cells = _ref3.cells; return Object(external_this_wp_element_["createElement"])("tr", { key: rowIndex }, cells.map(function (_ref4, cellIndex) { var content = _ref4.content, tag = _ref4.tag, scope = _ref4.scope; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: tag, value: content, key: cellIndex, scope: tag === 'th' ? scope : undefined }); })); })); }; return Object(external_this_wp_element_["createElement"])("table", { className: classes }, Object(external_this_wp_element_["createElement"])(Section, { type: "head", rows: head }), Object(external_this_wp_element_["createElement"])(Section, { type: "body", rows: body }), Object(external_this_wp_element_["createElement"])(Section, { type: "foot", rows: foot })); } }]; /* harmony default export */ var table_deprecated = (table_deprecated_deprecated); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-left.js var align_left = __webpack_require__("fPbg"); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-center.js var align_center = __webpack_require__("plpT"); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-right.js var align_right = __webpack_require__("ziDm"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/state.js function state_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function state_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { state_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { state_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ var INHERITED_COLUMN_ATTRIBUTES = ['align']; /** * Creates a table state. * * @param {Object} options * @param {number} options.rowCount Row count for the table to create. * @param {number} options.columnCount Column count for the table to create. * * @return {Object} New table state. */ function createTable(_ref) { var rowCount = _ref.rowCount, columnCount = _ref.columnCount; return { body: Object(external_this_lodash_["times"])(rowCount, function () { return { cells: Object(external_this_lodash_["times"])(columnCount, function () { return { content: '', tag: 'td' }; }) }; }) }; } /** * Returns the first row in the table. * * @param {Object} state Current table state. * * @return {Object} The first table row. */ function getFirstRow(state) { if (!isEmptyTableSection(state.head)) { return state.head[0]; } if (!isEmptyTableSection(state.body)) { return state.body[0]; } if (!isEmptyTableSection(state.foot)) { return state.foot[0]; } } /** * Gets an attribute for a cell. * * @param {Object} state Current table state. * @param {Object} cellLocation The location of the cell * @param {string} attributeName The name of the attribute to get the value of. * * @return {*} The attribute value. */ function getCellAttribute(state, cellLocation, attributeName) { var sectionName = cellLocation.sectionName, rowIndex = cellLocation.rowIndex, columnIndex = cellLocation.columnIndex; return Object(external_this_lodash_["get"])(state, [sectionName, rowIndex, 'cells', columnIndex, attributeName]); } /** * Returns updated cell attributes after applying the `updateCell` function to the selection. * * @param {Object} state The block attributes. * @param {Object} selection The selection of cells to update. * @param {Function} updateCell A function to update the selected cell attributes. * * @return {Object} New table state including the updated cells. */ function updateSelectedCell(state, selection, updateCell) { if (!selection) { return state; } var tableSections = Object(external_this_lodash_["pick"])(state, ['head', 'body', 'foot']); var selectionSectionName = selection.sectionName, selectionRowIndex = selection.rowIndex; return Object(external_this_lodash_["mapValues"])(tableSections, function (section, sectionName) { if (selectionSectionName && selectionSectionName !== sectionName) { return section; } return section.map(function (row, rowIndex) { if (selectionRowIndex && selectionRowIndex !== rowIndex) { return row; } return { cells: row.cells.map(function (cellAttributes, columnIndex) { var cellLocation = { sectionName: sectionName, columnIndex: columnIndex, rowIndex: rowIndex }; if (!isCellSelected(cellLocation, selection)) { return cellAttributes; } return updateCell(cellAttributes); }) }; }); }); } /** * Returns whether the cell at `cellLocation` is included in the selection `selection`. * * @param {Object} cellLocation An object containing cell location properties. * @param {Object} selection An object containing selection properties. * * @return {boolean} True if the cell is selected, false otherwise. */ function isCellSelected(cellLocation, selection) { if (!cellLocation || !selection) { return false; } switch (selection.type) { case 'column': return selection.type === 'column' && cellLocation.columnIndex === selection.columnIndex; case 'cell': return selection.type === 'cell' && cellLocation.sectionName === selection.sectionName && cellLocation.columnIndex === selection.columnIndex && cellLocation.rowIndex === selection.rowIndex; } } /** * Inserts a row in the table state. * * @param {Object} state Current table state. * @param {Object} options * @param {string} options.sectionName Section in which to insert the row. * @param {number} options.rowIndex Row index at which to insert the row. * * @return {Object} New table state. */ function insertRow(state, _ref2) { var sectionName = _ref2.sectionName, rowIndex = _ref2.rowIndex, columnCount = _ref2.columnCount; var firstRow = getFirstRow(state); var cellCount = columnCount === undefined ? Object(external_this_lodash_["get"])(firstRow, ['cells', 'length']) : columnCount; // Bail early if the function cannot determine how many cells to add. if (!cellCount) { return state; } return Object(defineProperty["a" /* default */])({}, sectionName, [].concat(Object(toConsumableArray["a" /* default */])(state[sectionName].slice(0, rowIndex)), [{ cells: Object(external_this_lodash_["times"])(cellCount, function (index) { var firstCellInColumn = Object(external_this_lodash_["get"])(firstRow, ['cells', index], {}); var inheritedAttributes = Object(external_this_lodash_["pick"])(firstCellInColumn, INHERITED_COLUMN_ATTRIBUTES); return state_objectSpread({}, inheritedAttributes, { content: '', tag: sectionName === 'head' ? 'th' : 'td' }); }) }], Object(toConsumableArray["a" /* default */])(state[sectionName].slice(rowIndex)))); } /** * Deletes a row from the table state. * * @param {Object} state Current table state. * @param {Object} options * @param {string} options.sectionName Section in which to delete the row. * @param {number} options.rowIndex Row index to delete. * * @return {Object} New table state. */ function deleteRow(state, _ref4) { var sectionName = _ref4.sectionName, rowIndex = _ref4.rowIndex; return Object(defineProperty["a" /* default */])({}, sectionName, state[sectionName].filter(function (row, index) { return index !== rowIndex; })); } /** * Inserts a column in the table state. * * @param {Object} state Current table state. * @param {Object} options * @param {number} options.columnIndex Column index at which to insert the column. * * @return {Object} New table state. */ function insertColumn(state, _ref6) { var columnIndex = _ref6.columnIndex; var tableSections = Object(external_this_lodash_["pick"])(state, ['head', 'body', 'foot']); return Object(external_this_lodash_["mapValues"])(tableSections, function (section, sectionName) { // Bail early if the table section is empty. if (isEmptyTableSection(section)) { return section; } return section.map(function (row) { // Bail early if the row is empty or it's an attempt to insert past // the last possible index of the array. if (isEmptyRow(row) || row.cells.length < columnIndex) { return row; } return { cells: [].concat(Object(toConsumableArray["a" /* default */])(row.cells.slice(0, columnIndex)), [{ content: '', tag: sectionName === 'head' ? 'th' : 'td' }], Object(toConsumableArray["a" /* default */])(row.cells.slice(columnIndex))) }; }); }); } /** * Deletes a column from the table state. * * @param {Object} state Current table state. * @param {Object} options * @param {number} options.columnIndex Column index to delete. * * @return {Object} New table state. */ function deleteColumn(state, _ref7) { var columnIndex = _ref7.columnIndex; var tableSections = Object(external_this_lodash_["pick"])(state, ['head', 'body', 'foot']); return Object(external_this_lodash_["mapValues"])(tableSections, function (section) { // Bail early if the table section is empty. if (isEmptyTableSection(section)) { return section; } return section.map(function (row) { return { cells: row.cells.length >= columnIndex ? row.cells.filter(function (cell, index) { return index !== columnIndex; }) : row.cells }; }).filter(function (row) { return row.cells.length; }); }); } /** * Toggles the existance of a section. * * @param {Object} state Current table state. * @param {string} sectionName Name of the section to toggle. * * @return {Object} New table state. */ function toggleSection(state, sectionName) { // Section exists, replace it with an empty row to remove it. if (!isEmptyTableSection(state[sectionName])) { return Object(defineProperty["a" /* default */])({}, sectionName, []); } // Get the length of the first row of the body to use when creating the header. var columnCount = Object(external_this_lodash_["get"])(state, ['body', 0, 'cells', 'length'], 1); // Section doesn't exist, insert an empty row to create the section. return insertRow(state, { sectionName: sectionName, rowIndex: 0, columnCount: columnCount }); } /** * Determines whether a table section is empty. * * @param {Object} section Table section state. * * @return {boolean} True if the table section is empty, false otherwise. */ function isEmptyTableSection(section) { return !section || !section.length || Object(external_this_lodash_["every"])(section, isEmptyRow); } /** * Determines whether a table row is empty. * * @param {Object} row Table row state. * * @return {boolean} True if the table section is empty, false otherwise. */ function isEmptyRow(row) { return !(row.cells && row.cells.length); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/edit.js function table_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function table_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { table_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { table_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var BACKGROUND_COLORS = [{ color: '#f3f4f5', name: 'Subtle light gray', slug: 'subtle-light-gray' }, { color: '#e9fbe5', name: 'Subtle pale green', slug: 'subtle-pale-green' }, { color: '#e7f5fe', name: 'Subtle pale blue', slug: 'subtle-pale-blue' }, { color: '#fcf0ef', name: 'Subtle pale pink', slug: 'subtle-pale-pink' }]; var ALIGNMENT_CONTROLS = [{ icon: align_left["a" /* default */], title: Object(external_this_wp_i18n_["__"])('Align Column Left'), align: 'left' }, { icon: align_center["a" /* default */], title: Object(external_this_wp_i18n_["__"])('Align Column Center'), align: 'center' }, { icon: align_right["a" /* default */], title: Object(external_this_wp_i18n_["__"])('Align Column Right'), align: 'right' }]; var withCustomBackgroundColors = Object(external_this_wp_blockEditor_["createCustomColorsHOC"])(BACKGROUND_COLORS); var edit_TableEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(TableEdit, _Component); function TableEdit() { var _this; Object(classCallCheck["a" /* default */])(this, TableEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(TableEdit).apply(this, arguments)); _this.onCreateTable = _this.onCreateTable.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeFixedLayout = _this.onChangeFixedLayout.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeInitialColumnCount = _this.onChangeInitialColumnCount.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeInitialRowCount = _this.onChangeInitialRowCount.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.renderSection = _this.renderSection.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getTableControls = _this.getTableControls.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertRow = _this.onInsertRow.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertRowBefore = _this.onInsertRowBefore.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertRowAfter = _this.onInsertRowAfter.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onDeleteRow = _this.onDeleteRow.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertColumn = _this.onInsertColumn.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertColumnBefore = _this.onInsertColumnBefore.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onInsertColumnAfter = _this.onInsertColumnAfter.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onDeleteColumn = _this.onDeleteColumn.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onToggleHeaderSection = _this.onToggleHeaderSection.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onToggleFooterSection = _this.onToggleFooterSection.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeColumnAlignment = _this.onChangeColumnAlignment.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getCellAlignment = _this.getCellAlignment.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { initialRowCount: 2, initialColumnCount: 2, selectedCell: null }; return _this; } /** * Updates the initial column count used for table creation. * * @param {number} initialColumnCount New initial column count. */ Object(createClass["a" /* default */])(TableEdit, [{ key: "onChangeInitialColumnCount", value: function onChangeInitialColumnCount(initialColumnCount) { this.setState({ initialColumnCount: initialColumnCount }); } /** * Updates the initial row count used for table creation. * * @param {number} initialRowCount New initial row count. */ }, { key: "onChangeInitialRowCount", value: function onChangeInitialRowCount(initialRowCount) { this.setState({ initialRowCount: initialRowCount }); } /** * Creates a table based on dimensions in local state. * * @param {Object} event Form submit event. */ }, { key: "onCreateTable", value: function onCreateTable(event) { event.preventDefault(); var setAttributes = this.props.setAttributes; var _this$state = this.state, initialRowCount = _this$state.initialRowCount, initialColumnCount = _this$state.initialColumnCount; initialRowCount = parseInt(initialRowCount, 10) || 2; initialColumnCount = parseInt(initialColumnCount, 10) || 2; setAttributes(createTable({ rowCount: initialRowCount, columnCount: initialColumnCount })); } /** * Toggles whether the table has a fixed layout or not. */ }, { key: "onChangeFixedLayout", value: function onChangeFixedLayout() { var _this$props = this.props, attributes = _this$props.attributes, setAttributes = _this$props.setAttributes; var hasFixedLayout = attributes.hasFixedLayout; setAttributes({ hasFixedLayout: !hasFixedLayout }); } /** * Changes the content of the currently selected cell. * * @param {Array} content A RichText content value. */ }, { key: "onChange", value: function onChange(content) { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var _this$props2 = this.props, attributes = _this$props2.attributes, setAttributes = _this$props2.setAttributes; setAttributes(updateSelectedCell(attributes, selectedCell, function (cellAttributes) { return table_edit_objectSpread({}, cellAttributes, { content: content }); })); } /** * Align text within the a column. * * @param {string} align The new alignment to apply to the column. */ }, { key: "onChangeColumnAlignment", value: function onChangeColumnAlignment(align) { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } // Convert the cell selection to a column selection so that alignment // is applied to the entire column. var columnSelection = { type: 'column', columnIndex: selectedCell.columnIndex }; var _this$props3 = this.props, attributes = _this$props3.attributes, setAttributes = _this$props3.setAttributes; var newAttributes = updateSelectedCell(attributes, columnSelection, function (cellAttributes) { return table_edit_objectSpread({}, cellAttributes, { align: align }); }); setAttributes(newAttributes); } /** * Get the alignment of the currently selected cell. * * @return {string} The new alignment to apply to the column. */ }, { key: "getCellAlignment", value: function getCellAlignment() { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var attributes = this.props.attributes; return getCellAttribute(attributes, selectedCell, 'align'); } /** * Add or remove a `head` table section. */ }, { key: "onToggleHeaderSection", value: function onToggleHeaderSection() { var _this$props4 = this.props, attributes = _this$props4.attributes, setAttributes = _this$props4.setAttributes; setAttributes(toggleSection(attributes, 'head')); } /** * Add or remove a `foot` table section. */ }, { key: "onToggleFooterSection", value: function onToggleFooterSection() { var _this$props5 = this.props, attributes = _this$props5.attributes, setAttributes = _this$props5.setAttributes; setAttributes(toggleSection(attributes, 'foot')); } /** * Inserts a row at the currently selected row index, plus `delta`. * * @param {number} delta Offset for selected row index at which to insert. */ }, { key: "onInsertRow", value: function onInsertRow(delta) { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var _this$props6 = this.props, attributes = _this$props6.attributes, setAttributes = _this$props6.setAttributes; var sectionName = selectedCell.sectionName, rowIndex = selectedCell.rowIndex; this.setState({ selectedCell: null }); setAttributes(insertRow(attributes, { sectionName: sectionName, rowIndex: rowIndex + delta })); } /** * Inserts a row before the currently selected row. */ }, { key: "onInsertRowBefore", value: function onInsertRowBefore() { this.onInsertRow(0); } /** * Inserts a row after the currently selected row. */ }, { key: "onInsertRowAfter", value: function onInsertRowAfter() { this.onInsertRow(1); } /** * Deletes the currently selected row. */ }, { key: "onDeleteRow", value: function onDeleteRow() { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var _this$props7 = this.props, attributes = _this$props7.attributes, setAttributes = _this$props7.setAttributes; var sectionName = selectedCell.sectionName, rowIndex = selectedCell.rowIndex; this.setState({ selectedCell: null }); setAttributes(deleteRow(attributes, { sectionName: sectionName, rowIndex: rowIndex })); } /** * Inserts a column at the currently selected column index, plus `delta`. * * @param {number} delta Offset for selected column index at which to insert. */ }, { key: "onInsertColumn", value: function onInsertColumn() { var delta = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var _this$props8 = this.props, attributes = _this$props8.attributes, setAttributes = _this$props8.setAttributes; var columnIndex = selectedCell.columnIndex; this.setState({ selectedCell: null }); setAttributes(insertColumn(attributes, { columnIndex: columnIndex + delta })); } /** * Inserts a column before the currently selected column. */ }, { key: "onInsertColumnBefore", value: function onInsertColumnBefore() { this.onInsertColumn(0); } /** * Inserts a column after the currently selected column. */ }, { key: "onInsertColumnAfter", value: function onInsertColumnAfter() { this.onInsertColumn(1); } /** * Deletes the currently selected column. */ }, { key: "onDeleteColumn", value: function onDeleteColumn() { var selectedCell = this.state.selectedCell; if (!selectedCell) { return; } var _this$props9 = this.props, attributes = _this$props9.attributes, setAttributes = _this$props9.setAttributes; var sectionName = selectedCell.sectionName, columnIndex = selectedCell.columnIndex; this.setState({ selectedCell: null }); setAttributes(deleteColumn(attributes, { sectionName: sectionName, columnIndex: columnIndex })); } /** * Creates an onFocus handler for a specified cell. * * @param {Object} cellLocation Object with `section`, `rowIndex`, and * `columnIndex` properties. * * @return {Function} Function to call on focus. */ }, { key: "createOnFocus", value: function createOnFocus(cellLocation) { var _this2 = this; return function () { _this2.setState({ selectedCell: table_edit_objectSpread({}, cellLocation, { type: 'cell' }) }); }; } /** * Gets the table controls to display in the block toolbar. * * @return {Array} Table controls. */ }, { key: "getTableControls", value: function getTableControls() { var selectedCell = this.state.selectedCell; return [{ icon: 'table-row-before', title: Object(external_this_wp_i18n_["__"])('Add Row Before'), isDisabled: !selectedCell, onClick: this.onInsertRowBefore }, { icon: 'table-row-after', title: Object(external_this_wp_i18n_["__"])('Add Row After'), isDisabled: !selectedCell, onClick: this.onInsertRowAfter }, { icon: 'table-row-delete', title: Object(external_this_wp_i18n_["__"])('Delete Row'), isDisabled: !selectedCell, onClick: this.onDeleteRow }, { icon: 'table-col-before', title: Object(external_this_wp_i18n_["__"])('Add Column Before'), isDisabled: !selectedCell, onClick: this.onInsertColumnBefore }, { icon: 'table-col-after', title: Object(external_this_wp_i18n_["__"])('Add Column After'), isDisabled: !selectedCell, onClick: this.onInsertColumnAfter }, { icon: 'table-col-delete', title: Object(external_this_wp_i18n_["__"])('Delete Column'), isDisabled: !selectedCell, onClick: this.onDeleteColumn }]; } /** * Renders a table section. * * @param {Object} options * @param {string} options.type Section type: head, body, or foot. * @param {Array} options.rows The rows to render. * * @return {Object} React element for the section. */ }, { key: "renderSection", value: function renderSection(_ref) { var _this3 = this; var name = _ref.name, rows = _ref.rows; if (isEmptyTableSection(rows)) { return null; } var Tag = "t".concat(name); return Object(external_this_wp_element_["createElement"])(Tag, null, rows.map(function (_ref2, rowIndex) { var cells = _ref2.cells; return Object(external_this_wp_element_["createElement"])("tr", { key: rowIndex }, cells.map(function (_ref3, columnIndex) { var content = _ref3.content, CellTag = _ref3.tag, scope = _ref3.scope, align = _ref3.align; var cellLocation = { sectionName: name, rowIndex: rowIndex, columnIndex: columnIndex }; var cellClasses = classnames_default()(Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(align), align), 'wp-block-table__cell-content'); var placeholder = ''; if (name === 'head') { placeholder = Object(external_this_wp_i18n_["__"])('Header label'); } else if (name === 'foot') { placeholder = Object(external_this_wp_i18n_["__"])('Footer label'); } return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: CellTag, key: columnIndex, className: cellClasses, scope: CellTag === 'th' ? scope : undefined, value: content, onChange: _this3.onChange, unstableOnFocus: _this3.createOnFocus(cellLocation), placeholder: placeholder }); })); })); } }, { key: "componentDidUpdate", value: function componentDidUpdate() { var isSelected = this.props.isSelected; var selectedCell = this.state.selectedCell; if (!isSelected && selectedCell) { this.setState({ selectedCell: null }); } } }, { key: "render", value: function render() { var _this4 = this; var _this$props10 = this.props, attributes = _this$props10.attributes, className = _this$props10.className, backgroundColor = _this$props10.backgroundColor, setBackgroundColor = _this$props10.setBackgroundColor, setAttributes = _this$props10.setAttributes; var _this$state2 = this.state, initialRowCount = _this$state2.initialRowCount, initialColumnCount = _this$state2.initialColumnCount; var hasFixedLayout = attributes.hasFixedLayout, caption = attributes.caption, head = attributes.head, body = attributes.body, foot = attributes.foot; var isEmpty = isEmptyTableSection(head) && isEmptyTableSection(body) && isEmptyTableSection(foot); var Section = this.renderSection; if (isEmpty) { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { label: Object(external_this_wp_i18n_["__"])('Table'), icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_table, showColors: true }), instructions: Object(external_this_wp_i18n_["__"])('Insert a table for sharing data.') }, Object(external_this_wp_element_["createElement"])("form", { className: "wp-block-table__placeholder-form", onSubmit: this.onCreateTable }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { type: "number", label: Object(external_this_wp_i18n_["__"])('Column Count'), value: initialColumnCount, onChange: this.onChangeInitialColumnCount, min: "1", className: "wp-block-table__placeholder-input" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { type: "number", label: Object(external_this_wp_i18n_["__"])('Row Count'), value: initialRowCount, onChange: this.onChangeInitialRowCount, min: "1", className: "wp-block-table__placeholder-input" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "wp-block-table__placeholder-button", isSecondary: true, type: "submit" }, Object(external_this_wp_i18n_["__"])('Create Table')))); } var tableClasses = classnames_default()(backgroundColor.class, { 'has-fixed-layout': hasFixedLayout, 'has-background': !!backgroundColor.color }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToolbarGroup"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["DropdownMenu"], { hasArrowIndicator: true, icon: "editor-table", label: Object(external_this_wp_i18n_["__"])('Edit table'), controls: this.getTableControls() })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { label: Object(external_this_wp_i18n_["__"])('Change column alignment'), alignmentControls: ALIGNMENT_CONTROLS, value: this.getCellAlignment(), onChange: function onChange(nextAlign) { return _this4.onChangeColumnAlignment(nextAlign); }, onHover: this.onHoverAlignment })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Table settings'), className: "blocks-table-settings" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Fixed width table cells'), checked: !!hasFixedLayout, onChange: this.onChangeFixedLayout }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Header section'), checked: !!(head && head.length), onChange: this.onToggleHeaderSection }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Footer section'), checked: !!(foot && foot.length), onChange: this.onToggleFooterSection })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["PanelColorSettings"], { title: Object(external_this_wp_i18n_["__"])('Color settings'), initialOpen: false, colorSettings: [{ value: backgroundColor.color, onChange: setBackgroundColor, label: Object(external_this_wp_i18n_["__"])('Background color'), disableCustomColors: true, colors: BACKGROUND_COLORS }] })), Object(external_this_wp_element_["createElement"])("figure", { className: className }, Object(external_this_wp_element_["createElement"])("table", { className: tableClasses }, Object(external_this_wp_element_["createElement"])(Section, { name: "head", rows: head }), Object(external_this_wp_element_["createElement"])(Section, { name: "body", rows: body }), Object(external_this_wp_element_["createElement"])(Section, { name: "foot", rows: foot })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: Object(external_this_wp_i18n_["__"])('Write caption…'), value: caption, onChange: function onChange(value) { return setAttributes({ caption: value }); } // Deselect the selected table cell when the caption is focused. , unstableOnFocus: function unstableOnFocus() { return _this4.setState({ selectedCell: null }); } }))); } }]); return TableEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var table_edit = (withCustomBackgroundColors('backgroundColor')(edit_TableEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/save.js /** * External dependencies */ /** * WordPress dependencies */ function table_save_save(_ref) { var attributes = _ref.attributes; var hasFixedLayout = attributes.hasFixedLayout, head = attributes.head, body = attributes.body, foot = attributes.foot, backgroundColor = attributes.backgroundColor, caption = attributes.caption; var isEmpty = !head.length && !body.length && !foot.length; if (isEmpty) { return null; } var backgroundClass = Object(external_this_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor); var classes = classnames_default()(backgroundClass, { 'has-fixed-layout': hasFixedLayout, 'has-background': !!backgroundClass }); var hasCaption = !external_this_wp_blockEditor_["RichText"].isEmpty(caption); var Section = function Section(_ref2) { var type = _ref2.type, rows = _ref2.rows; if (!rows.length) { return null; } var Tag = "t".concat(type); return Object(external_this_wp_element_["createElement"])(Tag, null, rows.map(function (_ref3, rowIndex) { var cells = _ref3.cells; return Object(external_this_wp_element_["createElement"])("tr", { key: rowIndex }, cells.map(function (_ref4, cellIndex) { var content = _ref4.content, tag = _ref4.tag, scope = _ref4.scope, align = _ref4.align; var cellClasses = classnames_default()(Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(align), align)); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { className: cellClasses ? cellClasses : undefined, "data-align": align, tagName: tag, value: content, key: cellIndex, scope: tag === 'th' ? scope : undefined }); })); })); }; return Object(external_this_wp_element_["createElement"])("figure", null, Object(external_this_wp_element_["createElement"])("table", { className: classes === '' ? undefined : classes }, Object(external_this_wp_element_["createElement"])(Section, { type: "head", rows: head }), Object(external_this_wp_element_["createElement"])(Section, { type: "body", rows: body }), Object(external_this_wp_element_["createElement"])(Section, { type: "foot", rows: foot })), hasCaption && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/transforms.js var tableContentPasteSchema = function tableContentPasteSchema(_ref) { var phrasingContentSchema = _ref.phrasingContentSchema; return { tr: { allowEmpty: true, children: { th: { allowEmpty: true, children: phrasingContentSchema, attributes: ['scope'] }, td: { allowEmpty: true, children: phrasingContentSchema } } } }; }; var tablePasteSchema = function tablePasteSchema(args) { return { table: { children: { thead: { allowEmpty: true, children: tableContentPasteSchema(args) }, tfoot: { allowEmpty: true, children: tableContentPasteSchema(args) }, tbody: { allowEmpty: true, children: tableContentPasteSchema(args) } } } }; }; var table_transforms_transforms = { from: [{ type: 'raw', selector: 'table', schema: tablePasteSchema }] }; /* harmony default export */ var table_transforms = (table_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var table_metadata = { name: "core/table", category: "formatting", attributes: { hasFixedLayout: { type: "boolean", "default": false }, backgroundColor: { type: "string" }, caption: { type: "string", source: "html", selector: "figcaption", "default": "" }, head: { type: "array", "default": [], source: "query", selector: "thead tr", query: { cells: { type: "array", "default": [], source: "query", selector: "td,th", query: { content: { type: "string", source: "html" }, tag: { type: "string", "default": "td", source: "tag" }, scope: { type: "string", source: "attribute", attribute: "scope" }, align: { type: "string", source: "attribute", attribute: "data-align" } } } } }, body: { type: "array", "default": [], source: "query", selector: "tbody tr", query: { cells: { type: "array", "default": [], source: "query", selector: "td,th", query: { content: { type: "string", source: "html" }, tag: { type: "string", "default": "td", source: "tag" }, scope: { type: "string", source: "attribute", attribute: "scope" }, align: { type: "string", source: "attribute", attribute: "data-align" } } } } }, foot: { type: "array", "default": [], source: "query", selector: "tfoot tr", query: { cells: { type: "array", "default": [], source: "query", selector: "td,th", query: { content: { type: "string", source: "html" }, tag: { type: "string", "default": "td", source: "tag" }, scope: { type: "string", source: "attribute", attribute: "scope" }, align: { type: "string", source: "attribute", attribute: "data-align" } } } } } } }; var table_name = table_metadata.name; var table_settings = { title: Object(external_this_wp_i18n_["__"])('Table'), description: Object(external_this_wp_i18n_["__"])('Insert a table — perfect for sharing charts and data.'), icon: library_table, example: { attributes: { head: [{ cells: [{ content: Object(external_this_wp_i18n_["__"])('Version'), tag: 'th' }, { content: Object(external_this_wp_i18n_["__"])('Jazz Musician'), tag: 'th' }, { content: Object(external_this_wp_i18n_["__"])('Release Date'), tag: 'th' }] }], body: [{ cells: [{ content: '5.2', tag: 'td' }, { content: 'Jaco Pastorius', tag: 'td' }, { content: Object(external_this_wp_i18n_["__"])('May 7, 2019'), tag: 'td' }] }, { cells: [{ content: '5.1', tag: 'td' }, { content: 'Betty Carter', tag: 'td' }, { content: Object(external_this_wp_i18n_["__"])('February 21, 2019'), tag: 'td' }] }, { cells: [{ content: '5.0', tag: 'td' }, { content: 'Bebo Valdés', tag: 'td' }, { content: Object(external_this_wp_i18n_["__"])('December 6, 2018'), tag: 'td' }] }] } }, styles: [{ name: 'regular', label: Object(external_this_wp_i18n_["_x"])('Default', 'block style'), isDefault: true }, { name: 'stripes', label: Object(external_this_wp_i18n_["__"])('Stripes') }], supports: { align: true }, transforms: table_transforms, edit: table_edit, save: table_save_save, deprecated: table_deprecated }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/edit.js /** * External dependencies */ /** * WordPress dependencies */ function TextColumnsEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, className = _ref.className; var width = attributes.width, content = attributes.content, columns = attributes.columns; external_this_wp_deprecated_default()('The Text Columns block', { alternative: 'the Columns block', plugin: 'Gutenberg' }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockAlignmentToolbar"], { value: width, onChange: function onChange(nextWidth) { return setAttributes({ width: nextWidth }); }, controls: ['center', 'wide', 'full'] })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["RangeControl"], { label: Object(external_this_wp_i18n_["__"])('Columns'), value: columns, onChange: function onChange(value) { return setAttributes({ columns: value }); }, min: 2, max: 4, required: true }))), Object(external_this_wp_element_["createElement"])("div", { className: "".concat(className, " align").concat(width, " columns-").concat(columns) }, Object(external_this_lodash_["times"])(columns, function (index) { return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-column", key: "column-".concat(index) }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "p", value: Object(external_this_lodash_["get"])(content, [index, 'children']), onChange: function onChange(nextContent) { setAttributes({ content: [].concat(Object(toConsumableArray["a" /* default */])(content.slice(0, index)), [{ children: nextContent }], Object(toConsumableArray["a" /* default */])(content.slice(index + 1))) }); }, placeholder: Object(external_this_wp_i18n_["__"])('New Column') })); }))); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/save.js /** * External dependencies */ /** * WordPress dependencies */ function text_columns_save_save(_ref) { var attributes = _ref.attributes; var width = attributes.width, content = attributes.content, columns = attributes.columns; return Object(external_this_wp_element_["createElement"])("div", { className: "align".concat(width, " columns-").concat(columns) }, Object(external_this_lodash_["times"])(columns, function (index) { return Object(external_this_wp_element_["createElement"])("div", { className: "wp-block-column", key: "column-".concat(index) }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "p", value: Object(external_this_lodash_["get"])(content, [index, 'children']) })); })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/transforms.js /** * WordPress dependencies */ var text_columns_transforms_transforms = { to: [{ type: 'block', blocks: ['core/columns'], transform: function transform(_ref) { var className = _ref.className, columns = _ref.columns, content = _ref.content, width = _ref.width; return Object(external_this_wp_blocks_["createBlock"])('core/columns', { align: 'wide' === width || 'full' === width ? width : undefined, className: className, columns: columns }, content.map(function (_ref2) { var children = _ref2.children; return Object(external_this_wp_blocks_["createBlock"])('core/column', {}, [Object(external_this_wp_blocks_["createBlock"])('core/paragraph', { content: children })]); })); } }] }; /* harmony default export */ var text_columns_transforms = (text_columns_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var text_columns_metadata = { name: "core/text-columns", icon: "columns", category: "layout", attributes: { content: { type: "array", source: "query", selector: "p", query: { children: { type: "string", source: "html" } }, "default": [{}, {}] }, columns: { type: "number", "default": 2 }, width: { type: "string" } } }; var text_columns_name = text_columns_metadata.name; var text_columns_settings = { // Disable insertion as this block is deprecated and ultimately replaced by the Columns block. supports: { inserter: false }, title: Object(external_this_wp_i18n_["__"])('Text Columns (deprecated)'), description: Object(external_this_wp_i18n_["__"])('This block is deprecated. Please use the Columns block instead.'), transforms: text_columns_transforms, getEditWrapperProps: function getEditWrapperProps(attributes) { var width = attributes.width; if ('wide' === width || 'full' === width) { return { 'data-align': width }; } }, edit: TextColumnsEdit, save: text_columns_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/verse.js /** * WordPress dependencies */ var verse = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M21 11.01L3 11V13H21V11.01ZM3 16H17V18H3V16ZM15 6H3V8.01L15 8V6Z" })); /* harmony default export */ var library_verse = (verse); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/deprecated.js /** * WordPress dependencies */ var verse_deprecated_blockAttributes = { content: { type: 'string', source: 'html', selector: 'pre', default: '' }, textAlign: { type: 'string' } }; var verse_deprecated_deprecated = [{ attributes: verse_deprecated_blockAttributes, save: function save(_ref) { var attributes = _ref.attributes; var textAlign = attributes.textAlign, content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "pre", style: { textAlign: textAlign }, value: content }); } }]; /* harmony default export */ var verse_deprecated = (verse_deprecated_deprecated); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/edit.js /** * External dependencies */ /** * WordPress dependencies */ function VerseEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, className = _ref.className, mergeBlocks = _ref.mergeBlocks; var textAlign = attributes.textAlign, content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["AlignmentToolbar"], { value: textAlign, onChange: function onChange(nextAlign) { setAttributes({ textAlign: nextAlign }); } })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "pre", preserveWhiteSpace: true, value: content, onChange: function onChange(nextContent) { setAttributes({ content: nextContent }); }, placeholder: Object(external_this_wp_i18n_["__"])('Write…'), className: classnames_default()(className, Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(textAlign), textAlign)), onMerge: mergeBlocks })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/save.js /** * External dependencies */ /** * WordPress dependencies */ function verse_save_save(_ref) { var attributes = _ref.attributes; var textAlign = attributes.textAlign, content = attributes.content; var className = classnames_default()(Object(defineProperty["a" /* default */])({}, "has-text-align-".concat(textAlign), textAlign)); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "pre", className: className, value: content }); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/transforms.js /** * WordPress dependencies */ var verse_transforms_transforms = { from: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/verse', attributes); } }], to: [{ type: 'block', blocks: ['core/paragraph'], transform: function transform(attributes) { return Object(external_this_wp_blocks_["createBlock"])('core/paragraph', attributes); } }] }; /* harmony default export */ var verse_transforms = (verse_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var verse_metadata = { name: "core/verse", category: "formatting", attributes: { content: { type: "string", source: "html", selector: "pre", "default": "", __unstablePreserveWhiteSpace: true }, textAlign: { type: "string" } } }; var verse_name = verse_metadata.name; var verse_settings = { title: Object(external_this_wp_i18n_["__"])('Verse'), description: Object(external_this_wp_i18n_["__"])('Insert poetry. Use special spacing formats. Or quote song lyrics.'), icon: library_verse, example: { attributes: { // translators: Sample content for the Verse block. Can be replaced with a more locale-adequate work. content: Object(external_this_wp_i18n_["__"])('WHAT was he doing, the great god Pan,\n Down in the reeds by the river?\nSpreading ruin and scattering ban,\nSplashing and paddling with hoofs of a goat,\nAnd breaking the golden lilies afloat\n With the dragon-fly on the river.') } }, keywords: [Object(external_this_wp_i18n_["__"])('poetry'), Object(external_this_wp_i18n_["__"])('poem')], transforms: verse_transforms, deprecated: verse_deprecated, merge: function merge(attributes, attributesToMerge) { return { content: attributes.content + attributesToMerge.content }; }, edit: VerseEdit, save: verse_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/video.js /** * WordPress dependencies */ var video_video = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M4 6.47L5.76 10H20v8H4V6.47M22 4h-4l2 4h-3l-2-4h-2l2 4h-3l-2-4H8l2 4H7L5 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4z" })); /* harmony default export */ var library_video = (video_video); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/edit-common-settings.js /** * WordPress dependencies */ var edit_common_settings_VideoSettings = function VideoSettings(_ref) { var setAttributes = _ref.setAttributes, attributes = _ref.attributes; var autoplay = attributes.autoplay, controls = attributes.controls, loop = attributes.loop, muted = attributes.muted, playsInline = attributes.playsInline, preload = attributes.preload; var getAutoplayHelp = function getAutoplayHelp(checked) { return checked ? Object(external_this_wp_i18n_["__"])('Note: Autoplaying videos may cause usability issues for some visitors.') : null; }; var toggleAttribute = function toggleAttribute(attribute) { return function (newValue) { setAttributes(Object(defineProperty["a" /* default */])({}, attribute, newValue)); }; }; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Autoplay'), onChange: toggleAttribute('autoplay'), checked: autoplay, help: getAutoplayHelp }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Loop'), onChange: toggleAttribute('loop'), checked: loop }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Muted'), onChange: toggleAttribute('muted'), checked: muted }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Playback controls'), onChange: toggleAttribute('controls'), checked: controls }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Play inline'), onChange: toggleAttribute('playsInline'), checked: playsInline }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { label: Object(external_this_wp_i18n_["__"])('Preload'), value: preload, onChange: function onChange(value) { return setAttributes({ preload: value }); }, options: [{ value: 'auto', label: Object(external_this_wp_i18n_["__"])('Auto') }, { value: 'metadata', label: Object(external_this_wp_i18n_["__"])('Metadata') }, { value: 'none', label: Object(external_this_wp_i18n_["__"])('None') }] })); }; /* harmony default export */ var edit_common_settings = (edit_common_settings_VideoSettings); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/edit.js /** * WordPress dependencies */ /** * Internal dependencies */ var video_edit_ALLOWED_MEDIA_TYPES = ['video']; var VIDEO_POSTER_ALLOWED_MEDIA_TYPES = ['image']; var edit_VideoEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(VideoEdit, _Component); function VideoEdit() { var _this; Object(classCallCheck["a" /* default */])(this, VideoEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(VideoEdit).apply(this, arguments)); _this.videoPlayer = Object(external_this_wp_element_["createRef"])(); _this.posterImageButton = Object(external_this_wp_element_["createRef"])(); _this.onSelectURL = _this.onSelectURL.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectPoster = _this.onSelectPoster.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onRemovePoster = _this.onRemovePoster.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUploadError = _this.onUploadError.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(VideoEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _this$props = this.props, attributes = _this$props.attributes, mediaUpload = _this$props.mediaUpload, noticeOperations = _this$props.noticeOperations, setAttributes = _this$props.setAttributes; var id = attributes.id, _attributes$src = attributes.src, src = _attributes$src === void 0 ? '' : _attributes$src; if (!id && Object(external_this_wp_blob_["isBlobURL"])(src)) { var file = Object(external_this_wp_blob_["getBlobByURL"])(src); if (file) { mediaUpload({ filesList: [file], onFileChange: function onFileChange(_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 1), url = _ref2[0].url; setAttributes({ src: url }); }, onError: function onError(message) { noticeOperations.createErrorNotice(message); }, allowedTypes: video_edit_ALLOWED_MEDIA_TYPES }); } } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (this.props.attributes.poster !== prevProps.attributes.poster) { this.videoPlayer.current.load(); } } }, { key: "onSelectURL", value: function onSelectURL(newSrc) { var _this$props2 = this.props, attributes = _this$props2.attributes, setAttributes = _this$props2.setAttributes; var src = attributes.src; if (newSrc !== src) { // Check if there's an embed block that handles this URL. var embedBlock = util_createUpgradedEmbedBlock({ attributes: { url: newSrc } }); if (undefined !== embedBlock) { this.props.onReplace(embedBlock); return; } setAttributes({ src: newSrc, id: undefined }); } } }, { key: "onSelectPoster", value: function onSelectPoster(image) { var setAttributes = this.props.setAttributes; setAttributes({ poster: image.url }); } }, { key: "onRemovePoster", value: function onRemovePoster() { var setAttributes = this.props.setAttributes; setAttributes({ poster: '' }); // Move focus back to the Media Upload button. this.posterImageButton.current.focus(); } }, { key: "onUploadError", value: function onUploadError(message) { var noticeOperations = this.props.noticeOperations; noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }, { key: "render", value: function render() { var _this2 = this; var _this$props$attribute = this.props.attributes, id = _this$props$attribute.id, caption = _this$props$attribute.caption, controls = _this$props$attribute.controls, poster = _this$props$attribute.poster, src = _this$props$attribute.src; var _this$props3 = this.props, className = _this$props3.className, instanceId = _this$props3.instanceId, isSelected = _this$props3.isSelected, noticeUI = _this$props3.noticeUI, attributes = _this$props3.attributes, setAttributes = _this$props3.setAttributes; var onSelectVideo = function onSelectVideo(media) { if (!media || !media.url) { // in this case there was an error // previous attributes should be removed // because they may be temporary blob urls setAttributes({ src: undefined, id: undefined }); return; } // sets the block's attribute and updates the edit component from the // selected media setAttributes({ src: media.url, id: media.id }); }; if (!src) { return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaPlaceholder"], { icon: Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { icon: library_video }), className: className, onSelect: onSelectVideo, onSelectURL: this.onSelectURL, accept: "video/*", allowedTypes: video_edit_ALLOWED_MEDIA_TYPES, value: this.props.attributes, notices: noticeUI, onError: this.onUploadError }); } var videoPosterDescription = "video-block__poster-image-description-".concat(instanceId); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaReplaceFlow"], { mediaId: id, mediaURL: src, allowedTypes: video_edit_ALLOWED_MEDIA_TYPES, accept: "video/*", onSelect: onSelectVideo, onSelectURL: this.onSelectURL, onError: this.onUploadError })), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Video settings') }, Object(external_this_wp_element_["createElement"])(edit_common_settings, { setAttributes: setAttributes, attributes: attributes }), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUploadCheck"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"], { className: "editor-video-poster-control" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["BaseControl"].VisualLabel, null, Object(external_this_wp_i18n_["__"])('Poster image')), Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUpload"], { title: Object(external_this_wp_i18n_["__"])('Select poster image'), onSelect: this.onSelectPoster, allowedTypes: VIDEO_POSTER_ALLOWED_MEDIA_TYPES, render: function render(_ref3) { var open = _ref3.open; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, onClick: open, ref: _this2.posterImageButton, "aria-describedby": videoPosterDescription }, !_this2.props.attributes.poster ? Object(external_this_wp_i18n_["__"])('Select Poster Image') : Object(external_this_wp_i18n_["__"])('Replace image')); } }), Object(external_this_wp_element_["createElement"])("p", { id: videoPosterDescription, hidden: true }, this.props.attributes.poster ? Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('The current poster image url is %s'), this.props.attributes.poster) : Object(external_this_wp_i18n_["__"])('There is no poster image currently selected')), !!this.props.attributes.poster && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { onClick: this.onRemovePoster, isLink: true, isDestructive: true }, Object(external_this_wp_i18n_["__"])('Remove Poster Image')))))), Object(external_this_wp_element_["createElement"])("figure", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Disabled"], null, Object(external_this_wp_element_["createElement"])("video", { controls: controls, poster: poster, src: src, ref: this.videoPlayer })), (!external_this_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"], { tagName: "figcaption", placeholder: Object(external_this_wp_i18n_["__"])('Write caption…'), value: caption, onChange: function onChange(value) { return setAttributes({ caption: value }); }, inlineToolbar: true }))); } }]); return VideoEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var video_edit = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getSettings = _select.getSettings; var _getSettings = getSettings(), mediaUpload = _getSettings.mediaUpload; return { mediaUpload: mediaUpload }; }), external_this_wp_components_["withNotices"], external_this_wp_compose_["withInstanceId"]])(edit_VideoEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/save.js /** * WordPress dependencies */ function video_save_save(_ref) { var attributes = _ref.attributes; var autoplay = attributes.autoplay, caption = attributes.caption, controls = attributes.controls, loop = attributes.loop, muted = attributes.muted, poster = attributes.poster, preload = attributes.preload, src = attributes.src, playsInline = attributes.playsInline; return Object(external_this_wp_element_["createElement"])("figure", null, src && Object(external_this_wp_element_["createElement"])("video", { autoPlay: autoplay, controls: controls, loop: loop, muted: muted, poster: poster, preload: preload !== 'metadata' ? preload : undefined, src: src, playsInline: playsInline }), !external_this_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["RichText"].Content, { tagName: "figcaption", value: caption })); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/transforms.js /** * WordPress dependencies */ var video_transforms_transforms = { from: [{ type: 'files', isMatch: function isMatch(files) { return files.length === 1 && files[0].type.indexOf('video/') === 0; }, transform: function transform(files) { var file = files[0]; // We don't need to upload the media directly here // It's already done as part of the `componentDidMount` // in the video block var block = Object(external_this_wp_blocks_["createBlock"])('core/video', { src: Object(external_this_wp_blob_["createBlobURL"])(file) }); return block; } }, { type: 'shortcode', tag: 'video', attributes: { src: { type: 'string', shortcode: function shortcode(_ref) { var _ref$named = _ref.named, src = _ref$named.src, mp4 = _ref$named.mp4, m4v = _ref$named.m4v, webm = _ref$named.webm, ogv = _ref$named.ogv, flv = _ref$named.flv; return src || mp4 || m4v || webm || ogv || flv; } }, poster: { type: 'string', shortcode: function shortcode(_ref2) { var poster = _ref2.named.poster; return poster; } }, loop: { type: 'string', shortcode: function shortcode(_ref3) { var loop = _ref3.named.loop; return loop; } }, autoplay: { type: 'string', shortcode: function shortcode(_ref4) { var autoplay = _ref4.named.autoplay; return autoplay; } }, preload: { type: 'string', shortcode: function shortcode(_ref5) { var preload = _ref5.named.preload; return preload; } } } }] }; /* harmony default export */ var video_transforms = (video_transforms_transforms); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var video_metadata = { name: "core/video", category: "common", attributes: { autoplay: { type: "boolean", source: "attribute", selector: "video", attribute: "autoplay" }, caption: { type: "string", source: "html", selector: "figcaption" }, controls: { type: "boolean", source: "attribute", selector: "video", attribute: "controls", "default": true }, id: { type: "number" }, loop: { type: "boolean", source: "attribute", selector: "video", attribute: "loop" }, muted: { type: "boolean", source: "attribute", selector: "video", attribute: "muted" }, poster: { type: "string", source: "attribute", selector: "video", attribute: "poster" }, preload: { type: "string", source: "attribute", selector: "video", attribute: "preload", "default": "metadata" }, src: { type: "string", source: "attribute", selector: "video", attribute: "src" }, playsInline: { type: "boolean", source: "attribute", selector: "video", attribute: "playsinline" } } }; var video_name = video_metadata.name; var video_settings = { title: Object(external_this_wp_i18n_["__"])('Video'), description: Object(external_this_wp_i18n_["__"])('Embed a video from your media library or upload a new one.'), icon: library_video, keywords: [Object(external_this_wp_i18n_["__"])('movie')], transforms: video_transforms, supports: { align: true }, edit: video_edit, save: video_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/tag.js /** * WordPress dependencies */ var tag_tag = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M11 2h7v7L8 19l-7-7zm3 6c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z" })); /* harmony default export */ var library_tag = (tag_tag); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/tag-cloud/edit.js /** * External dependencies */ /** * WordPress dependencies */ var edit_TagCloudEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(TagCloudEdit, _Component); function TagCloudEdit() { var _this; Object(classCallCheck["a" /* default */])(this, TagCloudEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(TagCloudEdit).apply(this, arguments)); _this.state = { editing: !_this.props.attributes.taxonomy }; _this.setTaxonomy = _this.setTaxonomy.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.toggleShowTagCounts = _this.toggleShowTagCounts.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(TagCloudEdit, [{ key: "getTaxonomyOptions", value: function getTaxonomyOptions() { var taxonomies = Object(external_this_lodash_["filter"])(this.props.taxonomies, 'show_cloud'); var selectOption = { label: Object(external_this_wp_i18n_["__"])('- Select -'), value: '', disabled: true }; var taxonomyOptions = Object(external_this_lodash_["map"])(taxonomies, function (taxonomy) { return { value: taxonomy.slug, label: taxonomy.name }; }); return [selectOption].concat(Object(toConsumableArray["a" /* default */])(taxonomyOptions)); } }, { key: "setTaxonomy", value: function setTaxonomy(taxonomy) { var setAttributes = this.props.setAttributes; setAttributes({ taxonomy: taxonomy }); } }, { key: "toggleShowTagCounts", value: function toggleShowTagCounts() { var _this$props = this.props, attributes = _this$props.attributes, setAttributes = _this$props.setAttributes; var showTagCounts = attributes.showTagCounts; setAttributes({ showTagCounts: !showTagCounts }); } }, { key: "render", value: function render() { var attributes = this.props.attributes; var taxonomy = attributes.taxonomy, showTagCounts = attributes.showTagCounts; var taxonomyOptions = this.getTaxonomyOptions(); var inspectorControls = Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["__"])('Tag Cloud settings') }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { label: Object(external_this_wp_i18n_["__"])('Taxonomy'), options: taxonomyOptions, value: taxonomy, onChange: this.setTaxonomy }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ToggleControl"], { label: Object(external_this_wp_i18n_["__"])('Show post counts'), checked: showTagCounts, onChange: this.toggleShowTagCounts }))); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, inspectorControls, Object(external_this_wp_element_["createElement"])(external_this_wp_serverSideRender_default.a, { key: "tag-cloud", block: "core/tag-cloud", attributes: attributes })); } }]); return TagCloudEdit; }(external_this_wp_element_["Component"]); /* harmony default export */ var tag_cloud_edit = (Object(external_this_wp_data_["withSelect"])(function (select) { return { taxonomies: select('core').getTaxonomies() }; })(edit_TagCloudEdit)); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/tag-cloud/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var tag_cloud_name = 'core/tag-cloud'; var tag_cloud_settings = { title: Object(external_this_wp_i18n_["__"])('Tag Cloud'), description: Object(external_this_wp_i18n_["__"])('A cloud of your most used tags.'), icon: library_tag, category: 'widgets', supports: { html: false, align: true }, edit: tag_cloud_edit }; // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/classic.js /** * WordPress dependencies */ var classic = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "m20 7v10h-16v-10h16m0-2h-16c-1.1 0-1.99 0.9-1.99 2l-0.01 10c0 1.1 0.9 2 2 2h16c1.1 0 2-0.9 2-2v-10c0-1.1-0.9-2-2-2z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "11", y: "8", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "11", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "8", y: "8", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "8", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "5", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "5", y: "8", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "8", y: "14", width: "8", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "14", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "14", y: "8", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "17", y: "11", width: "2", height: "2" }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Rect"], { x: "17", y: "8", width: "2", height: "2" })); /* harmony default export */ var library_classic = (classic); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/classic/edit.js function classic_edit_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function classic_edit_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { classic_edit_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { classic_edit_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ var classic_edit_window = window, wp = classic_edit_window.wp; function isTmceEmpty(editor) { // When tinyMce is empty the content seems to be: //


    // avoid expensive checks for large documents var body = editor.getBody(); if (body.childNodes.length > 1) { return false; } else if (body.childNodes.length === 0) { return true; } if (body.childNodes[0].childNodes.length > 1) { return false; } return /^\n?$/.test(body.innerText || body.textContent); } var edit_ClassicEdit = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ClassicEdit, _Component); function ClassicEdit(props) { var _this; Object(classCallCheck["a" /* default */])(this, ClassicEdit); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ClassicEdit).call(this, props)); _this.initialize = _this.initialize.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSetup = _this.onSetup.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.focus = _this.focus.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(ClassicEdit, [{ key: "componentDidMount", value: function componentDidMount() { var _window$wpEditorL10n$ = window.wpEditorL10n.tinymce, baseURL = _window$wpEditorL10n$.baseURL, suffix = _window$wpEditorL10n$.suffix; window.tinymce.EditorManager.overrideDefaults({ base_url: baseURL, suffix: suffix }); if (document.readyState === 'complete') { this.initialize(); } else { window.addEventListener('DOMContentLoaded', this.initialize); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { window.addEventListener('DOMContentLoaded', this.initialize); wp.oldEditor.remove("editor-".concat(this.props.clientId)); } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _this$props = this.props, clientId = _this$props.clientId, content = _this$props.attributes.content; var editor = window.tinymce.get("editor-".concat(clientId)); if (prevProps.attributes.content !== content) { editor.setContent(content || ''); } } }, { key: "initialize", value: function initialize() { var clientId = this.props.clientId; var settings = window.wpEditorL10n.tinymce.settings; wp.oldEditor.initialize("editor-".concat(clientId), { tinymce: classic_edit_objectSpread({}, settings, { inline: true, content_css: false, fixed_toolbar_container: "#toolbar-".concat(clientId), setup: this.onSetup }) }); } }, { key: "onSetup", value: function onSetup(editor) { var _this2 = this; var _this$props2 = this.props, content = _this$props2.attributes.content, setAttributes = _this$props2.setAttributes; var ref = this.ref; var bookmark; this.editor = editor; if (content) { editor.on('loadContent', function () { return editor.setContent(content); }); } editor.on('blur', function () { bookmark = editor.selection.getBookmark(2, true); setAttributes({ content: editor.getContent() }); editor.once('focus', function () { if (bookmark) { editor.selection.moveToBookmark(bookmark); } }); return false; }); editor.on('mousedown touchstart', function () { bookmark = null; }); editor.on('keydown', function (event) { if ((event.keyCode === external_this_wp_keycodes_["BACKSPACE"] || event.keyCode === external_this_wp_keycodes_["DELETE"]) && isTmceEmpty(editor)) { // delete the block _this2.props.onReplace([]); event.preventDefault(); event.stopImmediatePropagation(); } var altKey = event.altKey; /* * Prevent Mousetrap from kicking in: TinyMCE already uses its own * `alt+f10` shortcut to focus its toolbar. */ if (altKey && event.keyCode === external_this_wp_keycodes_["F10"]) { event.stopPropagation(); } }); // TODO: the following is for back-compat with WP 4.9, not needed in WP 5.0. Remove it after the release. editor.addButton('kitchensink', { tooltip: Object(external_this_wp_i18n_["_x"])('More', 'button to expand options'), icon: 'dashicon dashicons-editor-kitchensink', onClick: function onClick() { var button = this; var active = !button.active(); button.active(active); editor.dom.toggleClass(ref, 'has-advanced-toolbar', active); } }); // Show the second, third, etc. toolbars when the `kitchensink` button is removed by a plugin. editor.on('init', function () { if (editor.settings.toolbar1 && editor.settings.toolbar1.indexOf('kitchensink') === -1) { editor.dom.addClass(ref, 'has-advanced-toolbar'); } }); editor.addButton('wp_add_media', { tooltip: Object(external_this_wp_i18n_["__"])('Insert Media'), icon: 'dashicon dashicons-admin-media', cmd: 'WP_Medialib' }); // End TODO. editor.on('init', function () { var rootNode = _this2.editor.getBody(); // Create the toolbar by refocussing the editor. if (document.activeElement === rootNode) { rootNode.blur(); _this2.editor.focus(); } }); } }, { key: "focus", value: function focus() { if (this.editor) { this.editor.focus(); } } }, { key: "onToolbarKeyDown", value: function onToolbarKeyDown(event) { // Prevent WritingFlow from kicking in and allow arrows navigation on the toolbar. event.stopPropagation(); // Prevent Mousetrap from moving focus to the top toolbar when pressing `alt+f10` on this block toolbar. event.nativeEvent.stopImmediatePropagation(); } }, { key: "render", value: function render() { var _this3 = this; var clientId = this.props.clientId; // Disable reasons: // // jsx-a11y/no-static-element-interactions // - the toolbar itself is non-interactive, but must capture events // from the KeyboardShortcuts component to stop their propagation. /* eslint-disable jsx-a11y/no-static-element-interactions */ return [Object(external_this_wp_element_["createElement"])("div", { key: "toolbar", id: "toolbar-".concat(clientId), ref: function ref(_ref) { return _this3.ref = _ref; }, className: "block-library-classic__toolbar", onClick: this.focus, "data-placeholder": Object(external_this_wp_i18n_["__"])('Classic'), onKeyDown: this.onToolbarKeyDown }), Object(external_this_wp_element_["createElement"])("div", { key: "editor", id: "editor-".concat(clientId), className: "wp-block-freeform block-library-rich-text__tinymce" })]; /* eslint-enable jsx-a11y/no-static-element-interactions */ } }]); return ClassicEdit; }(external_this_wp_element_["Component"]); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/classic/save.js /** * WordPress dependencies */ function classic_save_save(_ref) { var attributes = _ref.attributes; var content = attributes.content; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], null, content); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/classic/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var classic_metadata = { name: "core/freeform", category: "formatting", attributes: { content: { type: "string", source: "html" } } }; var classic_name = classic_metadata.name; var classic_settings = { title: Object(external_this_wp_i18n_["_x"])('Classic', 'block title'), description: Object(external_this_wp_i18n_["__"])('Use the classic WordPress editor.'), icon: library_classic, supports: { className: false, customClassName: false, // Hide 'Add to Reusable blocks' on Classic blocks. Showing it causes a // confusing UX, because of its similarity to the 'Convert to Blocks' button. reusable: false }, edit: edit_ClassicEdit, save: classic_save_save }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/edit.js /** * WordPress dependencies */ var social_links_edit_ALLOWED_BLOCKS = ['core/social-link']; // Template contains the links that show when start. var edit_TEMPLATE = [['core/social-link', { service: 'wordpress', url: 'https://wordpress.org' }], ['core/social-link', { service: 'facebook' }], ['core/social-link', { service: 'twitter' }], ['core/social-link', { service: 'instagram' }], ['core/social-link', { service: 'linkedin' }], ['core/social-link', { service: 'youtube' }]]; var edit_SocialLinksEdit = function SocialLinksEdit(_ref) { var className = _ref.className; return Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"], { allowedBlocks: social_links_edit_ALLOWED_BLOCKS, templateLock: false, template: edit_TEMPLATE, __experimentalMoverDirection: 'horizontal' })); }; /* harmony default export */ var social_links_edit = (edit_SocialLinksEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/save.js /** * WordPress dependencies */ function social_links_save_save(_ref) { var className = _ref.className; return Object(external_this_wp_element_["createElement"])("ul", { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InnerBlocks"].Content, null)); } // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var social_links_metadata = { name: "core/social-links", category: "widgets", icon: "share", attributes: {} }; var social_links_name = social_links_metadata.name; var social_links_settings = { title: Object(external_this_wp_i18n_["__"])('Social Icons'), description: Object(external_this_wp_i18n_["__"])('Display icons linking to your social media profiles or websites.'), keywords: [Object(external_this_wp_i18n_["_x"])('links', 'block keywords')], supports: { align: ['left', 'center', 'right'] }, example: { innerBlocks: [{ name: 'core/social-link', attributes: { service: 'wordpress', url: 'https://wordpress.org' } }, { name: 'core/social-link', attributes: { service: 'facebook', url: 'https://www.facebook.com/WordPress/' } }, { name: 'core/social-link', attributes: { service: 'twitter', url: 'https://twitter.com/WordPress' } }] }, styles: [{ name: 'default', label: Object(external_this_wp_i18n_["__"])('Default'), isDefault: true }, { name: 'logos-only', label: Object(external_this_wp_i18n_["__"])('Logos Only') }, { name: 'pill-shape', label: Object(external_this_wp_i18n_["__"])('Pill Shape') }], edit: social_links_edit, save: social_links_save_save }; // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/keyboard-return.js var keyboard_return = __webpack_require__("btIw"); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/wordpress.js /** * WordPress dependencies */ var wordpress_WordPressIcon = function WordPressIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.158,12.786L9.46,20.625c0.806,0.237,1.657,0.366,2.54,0.366c1.047,0,2.051-0.181,2.986-0.51 c-0.024-0.038-0.046-0.079-0.065-0.124L12.158,12.786z M3.009,12c0,3.559,2.068,6.634,5.067,8.092L3.788,8.341 C3.289,9.459,3.009,10.696,3.009,12z M18.069,11.546c0-1.112-0.399-1.881-0.741-2.48c-0.456-0.741-0.883-1.368-0.883-2.109 c0-0.826,0.627-1.596,1.51-1.596c0.04,0,0.078,0.005,0.116,0.007C16.472,3.904,14.34,3.009,12,3.009 c-3.141,0-5.904,1.612-7.512,4.052c0.211,0.007,0.41,0.011,0.579,0.011c0.94,0,2.396-0.114,2.396-0.114 C7.947,6.93,8.004,7.642,7.52,7.699c0,0-0.487,0.057-1.029,0.085l3.274,9.739l1.968-5.901l-1.401-3.838 C9.848,7.756,9.389,7.699,9.389,7.699C8.904,7.67,8.961,6.93,9.446,6.958c0,0,1.484,0.114,2.368,0.114 c0.94,0,2.397-0.114,2.397-0.114c0.485-0.028,0.542,0.684,0.057,0.741c0,0-0.488,0.057-1.029,0.085l3.249,9.665l0.897-2.996 C17.841,13.284,18.069,12.316,18.069,11.546z M19.889,7.686c0.039,0.286,0.06,0.593,0.06,0.924c0,0.912-0.171,1.938-0.684,3.22 l-2.746,7.94c2.673-1.558,4.47-4.454,4.47-7.771C20.991,10.436,20.591,8.967,19.889,7.686z M12,22C6.486,22,2,17.514,2,12 C2,6.486,6.486,2,12,2c5.514,0,10,4.486,10,10C22,17.514,17.514,22,12,22z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/fivehundredpx.js /** * WordPress dependencies */ var fivehundredpx_FivehundredpxIcon = function FivehundredpxIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M6.94026,15.1412c.00437.01213.108.29862.168.44064a6.55008,6.55008,0,1,0,6.03191-9.09557,6.68654,6.68654,0,0,0-2.58357.51467A8.53914,8.53914,0,0,0,8.21268,8.61344L8.209,8.61725V3.22948l9.0504-.00008c.32934-.0036.32934-.46353.32934-.61466s0-.61091-.33035-.61467L7.47248,2a.43.43,0,0,0-.43131.42692v7.58355c0,.24466.30476.42131.58793.4819.553.11812.68074-.05864.81617-.2457l.018-.02481A10.52673,10.52673,0,0,1,9.32258,9.258a5.35268,5.35268,0,1,1,7.58985,7.54976,5.417,5.417,0,0,1-3.80867,1.56365,5.17483,5.17483,0,0,1-2.69822-.74478l.00342-4.61111a2.79372,2.79372,0,0,1,.71372-1.78792,2.61611,2.61611,0,0,1,1.98282-.89477,2.75683,2.75683,0,0,1,1.95525.79477,2.66867,2.66867,0,0,1,.79656,1.909,2.724,2.724,0,0,1-2.75849,2.748,4.94651,4.94651,0,0,1-.86254-.13719c-.31234-.093-.44519.34058-.48892.48349-.16811.54966.08453.65862.13687.67489a3.75751,3.75751,0,0,0,1.25234.18375,3.94634,3.94634,0,1,0-2.82444-6.742,3.67478,3.67478,0,0,0-1.13028,2.584l-.00041.02323c-.0035.11667-.00579,2.881-.00644,3.78811l-.00407-.00451a6.18521,6.18521,0,0,1-1.0851-1.86092c-.10544-.27856-.34358-.22925-.66857-.12917-.14192.04372-.57386.17677-.47833.489Zm4.65165-1.08338a.51346.51346,0,0,0,.19513.31818l.02276.022a.52945.52945,0,0,0,.3517.18416.24242.24242,0,0,0,.16577-.0611c.05473-.05082.67382-.67812.73287-.738l.69041.68819a.28978.28978,0,0,0,.21437.11032.53239.53239,0,0,0,.35708-.19486c.29792-.30419.14885-.46821.07676-.54751l-.69954-.69975.72952-.73469c.16-.17311.01874-.35708-.12218-.498-.20461-.20461-.402-.25742-.52855-.14083l-.7254.72665-.73354-.73375a.20128.20128,0,0,0-.14179-.05695.54135.54135,0,0,0-.34379.19648c-.22561.22555-.274.38149-.15656.5059l.73374.7315-.72942.73072A.26589.26589,0,0,0,11.59191,14.05782Zm1.59866-9.915A8.86081,8.86081,0,0,0,9.854,4.776a.26169.26169,0,0,0-.16938.22759.92978.92978,0,0,0,.08619.42094c.05682.14524.20779.531.50006.41955a8.40969,8.40969,0,0,1,2.91968-.55484,7.87875,7.87875,0,0,1,3.086.62286,8.61817,8.61817,0,0,1,2.30562,1.49315.2781.2781,0,0,0,.18318.07586c.15529,0,.30425-.15253.43167-.29551.21268-.23861.35873-.4369.1492-.63538a8.50425,8.50425,0,0,0-2.62312-1.694A9.0177,9.0177,0,0,0,13.19058,4.14283ZM19.50945,18.6236h0a.93171.93171,0,0,0-.36642-.25406.26589.26589,0,0,0-.27613.06613l-.06943.06929A7.90606,7.90606,0,0,1,7.60639,18.505a7.57284,7.57284,0,0,1-1.696-2.51537,8.58715,8.58715,0,0,1-.5147-1.77754l-.00871-.04864c-.04939-.25873-.28755-.27684-.62981-.22448-.14234.02178-.5755.088-.53426.39969l.001.00712a9.08807,9.08807,0,0,0,15.406,4.99094c.00193-.00192.04753-.04718.0725-.07436C19.79425,19.16234,19.87422,18.98728,19.50945,18.6236Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/amazon.js /** * WordPress dependencies */ var amazon_AmazonIcon = function AmazonIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M13.582,8.182C11.934,8.367,9.78,8.49,8.238,9.166c-1.781,0.769-3.03,2.337-3.03,4.644 c0,2.953,1.86,4.429,4.253,4.429c2.02,0,3.125-0.477,4.685-2.065c0.516,0.747,0.685,1.109,1.629,1.894 c0.212,0.114,0.483,0.103,0.672-0.066l0.006,0.006c0.567-0.505,1.599-1.401,2.18-1.888c0.231-0.188,0.19-0.496,0.009-0.754 c-0.52-0.718-1.072-1.303-1.072-2.634V8.305c0-1.876,0.133-3.599-1.249-4.891C15.23,2.369,13.422,2,12.04,2 C9.336,2,6.318,3.01,5.686,6.351C5.618,6.706,5.877,6.893,6.109,6.945l2.754,0.298C9.121,7.23,9.308,6.977,9.357,6.72 c0.236-1.151,1.2-1.706,2.284-1.706c0.584,0,1.249,0.215,1.595,0.738c0.398,0.584,0.346,1.384,0.346,2.061V8.182z M13.049,14.088 c-0.451,0.8-1.169,1.291-1.967,1.291c-1.09,0-1.728-0.83-1.728-2.061c0-2.42,2.171-2.86,4.227-2.86v0.615 C13.582,12.181,13.608,13.104,13.049,14.088z M20.683,19.339C18.329,21.076,14.917,22,11.979,22c-4.118,0-7.826-1.522-10.632-4.057 c-0.22-0.199-0.024-0.471,0.241-0.317c3.027,1.762,6.771,2.823,10.639,2.823c2.608,0,5.476-0.541,8.115-1.66 C20.739,18.62,21.072,19.051,20.683,19.339z M21.336,21.043c-0.194,0.163-0.379,0.076-0.293-0.139 c0.284-0.71,0.92-2.298,0.619-2.684c-0.301-0.386-1.99-0.183-2.749-0.092c-0.23,0.027-0.266-0.173-0.059-0.319 c1.348-0.946,3.555-0.673,3.811-0.356C22.925,17.773,22.599,19.986,21.336,21.043z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/bandcamp.js /** * WordPress dependencies */ var bandcamp_BandcampIcon = function BandcampIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M15.27 17.289 3 17.289 8.73 6.711 21 6.711 15.27 17.289" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/behance.js /** * WordPress dependencies */ var behance_BehanceIcon = function BehanceIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M7.799,5.698c0.589,0,1.12,0.051,1.606,0.156c0.482,0.102,0.894,0.273,1.241,0.507c0.344,0.235,0.612,0.546,0.804,0.938 c0.188,0.387,0.281,0.871,0.281,1.443c0,0.619-0.141,1.137-0.421,1.551c-0.284,0.413-0.7,0.751-1.255,1.014 c0.756,0.218,1.317,0.601,1.689,1.146c0.374,0.549,0.557,1.205,0.557,1.975c0,0.623-0.12,1.161-0.359,1.612 c-0.241,0.457-0.569,0.828-0.973,1.114c-0.408,0.288-0.876,0.5-1.399,0.637C9.052,17.931,8.514,18,7.963,18H2V5.698H7.799 M7.449,10.668c0.481,0,0.878-0.114,1.192-0.345c0.311-0.228,0.463-0.603,0.463-1.119c0-0.286-0.051-0.523-0.152-0.707 C8.848,8.315,8.711,8.171,8.536,8.07C8.362,7.966,8.166,7.894,7.94,7.854c-0.224-0.044-0.457-0.06-0.697-0.06H4.709v2.874H7.449z M7.6,15.905c0.267,0,0.521-0.024,0.759-0.077c0.243-0.053,0.457-0.137,0.637-0.261c0.182-0.12,0.332-0.283,0.441-0.491 C9.547,14.87,9.6,14.602,9.6,14.278c0-0.633-0.18-1.084-0.533-1.357c-0.356-0.27-0.83-0.404-1.413-0.404H4.709v3.388L7.6,15.905z M16.162,15.864c0.367,0.358,0.897,0.538,1.583,0.538c0.493,0,0.92-0.125,1.277-0.374c0.354-0.248,0.571-0.514,0.654-0.79h2.155 c-0.347,1.072-0.872,1.838-1.589,2.299C19.534,18,18.67,18.23,17.662,18.23c-0.701,0-1.332-0.113-1.899-0.337 c-0.567-0.227-1.041-0.544-1.439-0.958c-0.389-0.415-0.689-0.907-0.904-1.484c-0.213-0.574-0.32-1.21-0.32-1.899 c0-0.666,0.11-1.288,0.329-1.863c0.222-0.577,0.529-1.075,0.933-1.492c0.406-0.42,0.885-0.751,1.444-0.994 c0.558-0.241,1.175-0.363,1.857-0.363c0.754,0,1.414,0.145,1.98,0.44c0.563,0.291,1.026,0.686,1.389,1.181 c0.363,0.493,0.622,1.057,0.783,1.69c0.16,0.632,0.217,1.292,0.171,1.983h-6.428C15.557,14.84,15.795,15.506,16.162,15.864 M18.973,11.184c-0.291-0.321-0.783-0.496-1.384-0.496c-0.39,0-0.714,0.066-0.973,0.2c-0.254,0.132-0.461,0.297-0.621,0.491 c-0.157,0.197-0.265,0.405-0.328,0.628c-0.063,0.217-0.101,0.413-0.111,0.587h3.98C19.478,11.969,19.265,11.509,18.973,11.184z M15.057,7.738h4.985V6.524h-4.985L15.057,7.738z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/chain.js /** * WordPress dependencies */ var chain_ChainIcon = function ChainIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M19.647,16.706a1.134,1.134,0,0,0-.343-.833l-2.549-2.549a1.134,1.134,0,0,0-.833-.343,1.168,1.168,0,0,0-.883.392l.233.226q.2.189.264.264a2.922,2.922,0,0,1,.184.233.986.986,0,0,1,.159.312,1.242,1.242,0,0,1,.043.337,1.172,1.172,0,0,1-1.176,1.176,1.237,1.237,0,0,1-.337-.043,1,1,0,0,1-.312-.159,2.76,2.76,0,0,1-.233-.184q-.073-.068-.264-.264l-.226-.233a1.19,1.19,0,0,0-.4.895,1.134,1.134,0,0,0,.343.833L15.837,19.3a1.13,1.13,0,0,0,.833.331,1.18,1.18,0,0,0,.833-.318l1.8-1.789a1.12,1.12,0,0,0,.343-.821Zm-8.615-8.64a1.134,1.134,0,0,0-.343-.833L8.163,4.7a1.134,1.134,0,0,0-.833-.343,1.184,1.184,0,0,0-.833.331L4.7,6.473a1.12,1.12,0,0,0-.343.821,1.134,1.134,0,0,0,.343.833l2.549,2.549a1.13,1.13,0,0,0,.833.331,1.184,1.184,0,0,0,.883-.38L8.728,10.4q-.2-.189-.264-.264A2.922,2.922,0,0,1,8.28,9.9a.986.986,0,0,1-.159-.312,1.242,1.242,0,0,1-.043-.337A1.172,1.172,0,0,1,9.254,8.079a1.237,1.237,0,0,1,.337.043,1,1,0,0,1,.312.159,2.761,2.761,0,0,1,.233.184q.073.068.264.264l.226.233a1.19,1.19,0,0,0,.4-.895ZM22,16.706a3.343,3.343,0,0,1-1.042,2.488l-1.8,1.789a3.536,3.536,0,0,1-4.988-.025l-2.525-2.537a3.384,3.384,0,0,1-1.017-2.488,3.448,3.448,0,0,1,1.078-2.561l-1.078-1.078a3.434,3.434,0,0,1-2.549,1.078,3.4,3.4,0,0,1-2.5-1.029L3.029,9.794A3.4,3.4,0,0,1,2,7.294,3.343,3.343,0,0,1,3.042,4.806l1.8-1.789A3.384,3.384,0,0,1,7.331,2a3.357,3.357,0,0,1,2.5,1.042l2.525,2.537a3.384,3.384,0,0,1,1.017,2.488,3.448,3.448,0,0,1-1.078,2.561l1.078,1.078a3.551,3.551,0,0,1,5.049-.049l2.549,2.549A3.4,3.4,0,0,1,22,16.706Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/codepen.js /** * WordPress dependencies */ var codepen_CodepenIcon = function CodepenIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M22.016,8.84c-0.002-0.013-0.005-0.025-0.007-0.037c-0.005-0.025-0.008-0.048-0.015-0.072 c-0.003-0.015-0.01-0.028-0.013-0.042c-0.008-0.02-0.015-0.04-0.023-0.062c-0.007-0.015-0.013-0.028-0.02-0.042 c-0.008-0.02-0.018-0.037-0.03-0.057c-0.007-0.013-0.017-0.027-0.025-0.038c-0.012-0.018-0.023-0.035-0.035-0.052 c-0.01-0.013-0.02-0.025-0.03-0.037c-0.015-0.017-0.028-0.032-0.043-0.045c-0.01-0.012-0.022-0.023-0.035-0.035 c-0.015-0.015-0.032-0.028-0.048-0.04c-0.012-0.01-0.025-0.02-0.037-0.03c-0.005-0.003-0.01-0.008-0.015-0.012l-9.161-6.096 c-0.289-0.192-0.666-0.192-0.955,0L2.359,8.237C2.354,8.24,2.349,8.245,2.344,8.249L2.306,8.277 c-0.017,0.013-0.033,0.027-0.048,0.04C2.246,8.331,2.234,8.342,2.222,8.352c-0.015,0.015-0.028,0.03-0.042,0.047 c-0.012,0.013-0.022,0.023-0.03,0.037C2.139,8.453,2.125,8.471,2.115,8.488C2.107,8.501,2.099,8.514,2.09,8.526 C2.079,8.548,2.069,8.565,2.06,8.585C2.054,8.6,2.047,8.613,2.04,8.626C2.032,8.648,2.025,8.67,2.019,8.69 c-0.005,0.013-0.01,0.027-0.013,0.042C1.999,8.755,1.995,8.778,1.99,8.803C1.989,8.817,1.985,8.828,1.984,8.84 C1.978,8.879,1.975,8.915,1.975,8.954v6.093c0,0.037,0.003,0.075,0.008,0.112c0.002,0.012,0.005,0.025,0.007,0.038 c0.005,0.023,0.008,0.047,0.015,0.072c0.003,0.015,0.008,0.028,0.013,0.04c0.007,0.022,0.013,0.042,0.022,0.063 c0.007,0.015,0.013,0.028,0.02,0.04c0.008,0.02,0.018,0.038,0.03,0.058c0.007,0.013,0.015,0.027,0.025,0.038 c0.012,0.018,0.023,0.035,0.035,0.052c0.01,0.013,0.02,0.025,0.03,0.037c0.013,0.015,0.028,0.032,0.042,0.045 c0.012,0.012,0.023,0.023,0.035,0.035c0.015,0.013,0.032,0.028,0.048,0.04l0.038,0.03c0.005,0.003,0.01,0.007,0.013,0.01 l9.163,6.095C11.668,21.953,11.833,22,12,22c0.167,0,0.332-0.047,0.478-0.144l9.163-6.095l0.015-0.01 c0.013-0.01,0.027-0.02,0.037-0.03c0.018-0.013,0.035-0.028,0.048-0.04c0.013-0.012,0.025-0.023,0.035-0.035 c0.017-0.015,0.03-0.032,0.043-0.045c0.01-0.013,0.02-0.025,0.03-0.037c0.013-0.018,0.025-0.035,0.035-0.052 c0.008-0.013,0.018-0.027,0.025-0.038c0.012-0.02,0.022-0.038,0.03-0.058c0.007-0.013,0.013-0.027,0.02-0.04 c0.008-0.022,0.015-0.042,0.023-0.063c0.003-0.013,0.01-0.027,0.013-0.04c0.007-0.025,0.01-0.048,0.015-0.072 c0.002-0.013,0.005-0.027,0.007-0.037c0.003-0.042,0.007-0.079,0.007-0.117V8.954C22.025,8.915,22.022,8.879,22.016,8.84z M12.862,4.464l6.751,4.49l-3.016,2.013l-3.735-2.492V4.464z M11.138,4.464v4.009l-3.735,2.494L4.389,8.954L11.138,4.464z M3.699,10.562L5.853,12l-2.155,1.438V10.562z M11.138,19.536l-6.749-4.491l3.015-2.011l3.735,2.492V19.536z M12,14.035L8.953,12 L12,9.966L15.047,12L12,14.035z M12.862,19.536v-4.009l3.735-2.492l3.016,2.011L12.862,19.536z M20.303,13.438L18.147,12 l2.156-1.438L20.303,13.438z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/deviantart.js /** * WordPress dependencies */ var deviantart_DeviantArtIcon = function DeviantArtIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M 18.19 5.636 18.19 2 18.188 2 14.553 2 14.19 2.366 12.474 5.636 11.935 6 5.81 6 5.81 10.994 9.177 10.994 9.477 11.357 5.81 18.363 5.81 22 5.811 22 9.447 22 9.81 21.634 11.526 18.364 12.065 18 18.19 18 18.19 13.006 14.823 13.006 14.523 12.641 18.19 5.636z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/dribbble.js /** * WordPress dependencies */ var dribbble_DribbbleIcon = function DribbbleIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,22C6.486,22,2,17.514,2,12S6.486,2,12,2c5.514,0,10,4.486,10,10S17.514,22,12,22z M20.434,13.369 c-0.292-0.092-2.644-0.794-5.32-0.365c1.117,3.07,1.572,5.57,1.659,6.09C18.689,17.798,20.053,15.745,20.434,13.369z M15.336,19.876c-0.127-0.749-0.623-3.361-1.822-6.477c-0.019,0.006-0.038,0.013-0.056,0.019c-4.818,1.679-6.547,5.02-6.701,5.334 c1.448,1.129,3.268,1.803,5.243,1.803C13.183,20.555,14.311,20.313,15.336,19.876z M5.654,17.724 c0.193-0.331,2.538-4.213,6.943-5.637c0.111-0.036,0.224-0.07,0.337-0.102c-0.214-0.485-0.448-0.971-0.692-1.45 c-4.266,1.277-8.405,1.223-8.778,1.216c-0.003,0.087-0.004,0.174-0.004,0.261C3.458,14.207,4.29,16.21,5.654,17.724z M3.639,10.264 c0.382,0.005,3.901,0.02,7.897-1.041c-1.415-2.516-2.942-4.631-3.167-4.94C5.979,5.41,4.193,7.613,3.639,10.264z M9.998,3.709 c0.236,0.316,1.787,2.429,3.187,5c3.037-1.138,4.323-2.867,4.477-3.085C16.154,4.286,14.17,3.471,12,3.471 C11.311,3.471,10.641,3.554,9.998,3.709z M18.612,6.612C18.432,6.855,17,8.69,13.842,9.979c0.199,0.407,0.389,0.821,0.567,1.237 c0.063,0.148,0.124,0.295,0.184,0.441c2.842-0.357,5.666,0.215,5.948,0.275C20.522,9.916,19.801,8.065,18.612,6.612z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/dropbox.js /** * WordPress dependencies */ var dropbox_DropboxIcon = function DropboxIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,6.134L6.069,9.797L2,6.54l5.883-3.843L12,6.134z M2,13.054l5.883,3.843L12,13.459L6.069,9.797L2,13.054z M12,13.459 l4.116,3.439L22,13.054l-4.069-3.257L12,13.459z M22,6.54l-5.884-3.843L12,6.134l5.931,3.663L22,6.54z M12.011,14.2l-4.129,3.426 l-1.767-1.153v1.291l5.896,3.539l5.897-3.539v-1.291l-1.769,1.153L12.011,14.2z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/etsy.js /** * WordPress dependencies */ var etsy_EtsyIcon = function EtsyIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M9.16033,4.038c0-.27174.02717-.43478.48913-.43478h6.22283c1.087,0,1.68478.92391,2.11957,2.663l.35326,1.38587h1.05978C19.59511,3.712,19.75815,2,19.75815,2s-2.663.29891-4.23913.29891h-7.962L3.29076,2.163v1.1413L4.731,3.57609c1.00543.19022,1.25.40761,1.33152,1.33152,0,0,.08152,2.71739.08152,7.20109s-.08152,7.17391-.08152,7.17391c0,.81522-.32609,1.11413-1.33152,1.30435l-1.44022.27174V22l4.2663-.13587h7.11957c1.60326,0,5.32609.13587,5.32609.13587.08152-.97826.625-5.40761.70652-5.89674H19.7038L18.644,18.52174c-.84239,1.90217-2.06522,2.038-3.42391,2.038H11.1712c-1.3587,0-2.01087-.54348-2.01087-1.712V12.65217s3.0163,0,3.99457.08152c.76087.05435,1.22283.27174,1.46739,1.33152l.32609,1.413h1.16848l-.08152-3.55978.163-3.587H15.02989l-.38043,1.57609c-.24457,1.03261-.40761,1.22283-1.46739,1.33152-1.38587.13587-4.02174.1087-4.02174.1087Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/facebook.js /** * WordPress dependencies */ var facebook_FacebookIcon = function FacebookIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/feed.js /** * WordPress dependencies */ var feed_FeedIcon = function FeedIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M2,8.667V12c5.515,0,10,4.485,10,10h3.333C15.333,14.637,9.363,8.667,2,8.667z M2,2v3.333 c9.19,0,16.667,7.477,16.667,16.667H22C22,10.955,13.045,2,2,2z M4.5,17C3.118,17,2,18.12,2,19.5S3.118,22,4.5,22S7,20.88,7,19.5 S5.882,17,4.5,17z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/flickr.js /** * WordPress dependencies */ var flickr_FlickrIcon = function FlickrIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M6.5,7c-2.75,0-5,2.25-5,5s2.25,5,5,5s5-2.25,5-5S9.25,7,6.5,7z M17.5,7c-2.75,0-5,2.25-5,5s2.25,5,5,5s5-2.25,5-5 S20.25,7,17.5,7z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/foursquare.js /** * WordPress dependencies */ var foursquare_FoursquareIcon = function FoursquareIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M17.573,2c0,0-9.197,0-10.668,0S5,3.107,5,3.805s0,16.948,0,16.948c0,0.785,0.422,1.077,0.66,1.172 c0.238,0.097,0.892,0.177,1.285-0.275c0,0,5.035-5.843,5.122-5.93c0.132-0.132,0.132-0.132,0.262-0.132h3.26 c1.368,0,1.588-0.977,1.732-1.552c0.078-0.318,0.692-3.428,1.225-6.122l0.675-3.368C19.56,2.893,19.14,2,17.573,2z M16.495,7.22 c-0.053,0.252-0.372,0.518-0.665,0.518c-0.293,0-4.157,0-4.157,0c-0.467,0-0.802,0.318-0.802,0.787v0.508 c0,0.467,0.337,0.798,0.805,0.798c0,0,3.197,0,3.528,0s0.655,0.362,0.583,0.715c-0.072,0.353-0.407,2.102-0.448,2.295 c-0.04,0.193-0.262,0.523-0.655,0.523c-0.33,0-2.88,0-2.88,0c-0.523,0-0.683,0.068-1.033,0.503 c-0.35,0.437-3.505,4.223-3.505,4.223c-0.032,0.035-0.063,0.027-0.063-0.015V4.852c0-0.298,0.26-0.648,0.648-0.648 c0,0,8.228,0,8.562,0c0.315,0,0.61,0.297,0.528,0.683L16.495,7.22z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/goodreads.js /** * WordPress dependencies */ var goodreads_GoodreadsIcon = function GoodreadsIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M17.3,17.5c-0.2,0.8-0.5,1.4-1,1.9c-0.4,0.5-1,0.9-1.7,1.2C13.9,20.9,13.1,21,12,21c-0.6,0-1.3-0.1-1.9-0.2 c-0.6-0.1-1.1-0.4-1.6-0.7c-0.5-0.3-0.9-0.7-1.2-1.2c-0.3-0.5-0.5-1.1-0.5-1.7h1.5c0.1,0.5,0.2,0.9,0.5,1.2 c0.2,0.3,0.5,0.6,0.9,0.8c0.3,0.2,0.7,0.3,1.1,0.4c0.4,0.1,0.8,0.1,1.2,0.1c1.4,0,2.5-0.4,3.1-1.2c0.6-0.8,1-2,1-3.5v-1.7h0 c-0.4,0.8-0.9,1.4-1.6,1.9c-0.7,0.5-1.5,0.7-2.4,0.7c-1,0-1.9-0.2-2.6-0.5C8.7,15,8.1,14.5,7.7,14c-0.5-0.6-0.8-1.3-1-2.1 c-0.2-0.8-0.3-1.6-0.3-2.5c0-0.9,0.1-1.7,0.4-2.5c0.3-0.8,0.6-1.5,1.1-2c0.5-0.6,1.1-1,1.8-1.4C10.3,3.2,11.1,3,12,3 c0.5,0,0.9,0.1,1.3,0.2c0.4,0.1,0.8,0.3,1.1,0.5c0.3,0.2,0.6,0.5,0.9,0.8c0.3,0.3,0.5,0.6,0.6,1h0V3.4h1.5V15 C17.6,15.9,17.5,16.7,17.3,17.5z M13.8,14.1c0.5-0.3,0.9-0.7,1.3-1.1c0.3-0.5,0.6-1,0.8-1.6c0.2-0.6,0.3-1.2,0.3-1.9 c0-0.6-0.1-1.2-0.2-1.9c-0.1-0.6-0.4-1.2-0.7-1.7c-0.3-0.5-0.7-0.9-1.3-1.2c-0.5-0.3-1.1-0.5-1.9-0.5s-1.4,0.2-1.9,0.5 c-0.5,0.3-1,0.7-1.3,1.2C8.5,6.4,8.3,7,8.1,7.6C8,8.2,7.9,8.9,7.9,9.5c0,0.6,0.1,1.3,0.2,1.9C8.3,12,8.6,12.5,8.9,13 c0.3,0.5,0.8,0.8,1.3,1.1c0.5,0.3,1.1,0.4,1.9,0.4C12.7,14.5,13.3,14.4,13.8,14.1z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/google.js /** * WordPress dependencies */ var google_GoogleIcon = function GoogleIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.02,10.18v3.72v0.01h5.51c-0.26,1.57-1.67,4.22-5.5,4.22c-3.31,0-6.01-2.75-6.01-6.12s2.7-6.12,6.01-6.12 c1.87,0,3.13,0.8,3.85,1.48l2.84-2.76C16.99,2.99,14.73,2,12.03,2c-5.52,0-10,4.48-10,10s4.48,10,10,10c5.77,0,9.6-4.06,9.6-9.77 c0-0.83-0.11-1.42-0.25-2.05H12.02z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/github.js /** * WordPress dependencies */ var github_GitHubIcon = function GitHubIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,2C6.477,2,2,6.477,2,12c0,4.419,2.865,8.166,6.839,9.489c0.5,0.09,0.682-0.218,0.682-0.484 c0-0.236-0.009-0.866-0.014-1.699c-2.782,0.602-3.369-1.34-3.369-1.34c-0.455-1.157-1.11-1.465-1.11-1.465 c-0.909-0.62,0.069-0.608,0.069-0.608c1.004,0.071,1.532,1.03,1.532,1.03c0.891,1.529,2.341,1.089,2.91,0.833 c0.091-0.647,0.349-1.086,0.635-1.337c-2.22-0.251-4.555-1.111-4.555-4.943c0-1.091,0.39-1.984,1.03-2.682 C6.546,8.54,6.202,7.524,6.746,6.148c0,0,0.84-0.269,2.75,1.025C10.295,6.95,11.15,6.84,12,6.836 c0.85,0.004,1.705,0.114,2.504,0.336c1.909-1.294,2.748-1.025,2.748-1.025c0.546,1.376,0.202,2.394,0.1,2.646 c0.64,0.699,1.026,1.591,1.026,2.682c0,3.841-2.337,4.687-4.565,4.935c0.359,0.307,0.679,0.917,0.679,1.852 c0,1.335-0.012,2.415-0.012,2.741c0,0.269,0.18,0.579,0.688,0.481C19.138,20.161,22,16.416,22,12C22,6.477,17.523,2,12,2z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/instagram.js /** * WordPress dependencies */ var instagram_InstagramIcon = function InstagramIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/lastfm.js /** * WordPress dependencies */ var lastfm_LastfmIcon = function LastfmIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M10.5002,0 C4.7006,0 0,4.70109753 0,10.4998496 C0,16.2989526 4.7006,21 10.5002,21 C16.299,21 21,16.2989526 21,10.4998496 C21,4.70109753 16.299,0 10.5002,0 Z M14.69735,14.7204413 C13.3164,14.7151781 12.4346,14.0870017 11.83445,12.6859357 L11.6816001,12.3451305 L10.35405,9.31011397 C9.92709997,8.26875064 8.85260001,7.57120012 7.68010001,7.57120012 C6.06945001,7.57120012 4.75925001,8.88509738 4.75925001,10.5009524 C4.75925001,12.1164565 6.06945001,13.4303036 7.68010001,13.4303036 C8.77200001,13.4303036 9.76514999,12.827541 10.2719501,11.8567047 C10.2893,11.8235214 10.3239,11.8019673 10.36305,11.8038219 C10.4007,11.8053759 10.43535,11.8287847 10.4504,11.8631709 L10.98655,13.1045863 C11.0016,13.1389726 10.9956,13.17782 10.97225,13.2068931 C10.1605001,14.1995341 8.96020001,14.7683115 7.68010001,14.7683115 C5.33305,14.7683115 3.42340001,12.8535563 3.42340001,10.5009524 C3.42340001,8.14679459 5.33300001,6.23203946 7.68010001,6.23203946 C9.45720002,6.23203946 10.8909,7.19074535 11.6138,8.86359341 C11.6205501,8.88018505 12.3412,10.5707777 12.97445,12.0190621 C13.34865,12.8739575 13.64615,13.3959676 14.6288,13.4291508 C15.5663001,13.4612814 16.25375,12.9121534 16.25375,12.1484869 C16.25375,11.4691321 15.8320501,11.3003585 14.8803,10.98216 C13.2365,10.4397989 12.34495,9.88605929 12.34495,8.51817658 C12.34495,7.1809207 13.26665,6.31615054 14.692,6.31615054 C15.62875,6.31615054 16.3155,6.7286858 16.79215,7.5768142 C16.80495,7.60062396 16.8079001,7.62814302 16.8004001,7.65420843 C16.7929,7.68027384 16.7748,7.70212868 16.7507001,7.713808 L15.86145,8.16900031 C15.8178001,8.19200805 15.7643,8.17807308 15.73565,8.13847371 C15.43295,7.71345711 15.0956,7.52513451 14.6423,7.52513451 C14.05125,7.52513451 13.6220001,7.92899802 13.6220001,8.48649708 C13.6220001,9.17382194 14.1529001,9.34144259 15.0339,9.61923972 C15.14915,9.65578139 15.26955,9.69397731 15.39385,9.73432853 C16.7763,10.1865133 17.57675,10.7311301 17.57675,12.1836251 C17.57685,13.629654 16.3389,14.7204413 14.69735,14.7204413 Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/linkedin.js /** * WordPress dependencies */ var linkedin_LinkedInIcon = function LinkedInIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/mail.js /** * WordPress dependencies */ var mail_MailIcon = function MailIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20,4H4C2.895,4,2,4.895,2,6v12c0,1.105,0.895,2,2,2h16c1.105,0,2-0.895,2-2V6C22,4.895,21.105,4,20,4z M20,8.236l-8,4.882 L4,8.236V6h16V8.236z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/mastodon.js /** * WordPress dependencies */ var mastodon_MastodonIcon = function MastodonIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M23.193 7.879c0-5.206-3.411-6.732-3.411-6.732C18.062.357 15.108.025 12.041 0h-.076c-3.068.025-6.02.357-7.74 1.147 0 0-3.411 1.526-3.411 6.732 0 1.192-.023 2.618.015 4.129.124 5.092.934 10.109 5.641 11.355 2.17.574 4.034.695 5.535.612 2.722-.15 4.25-.972 4.25-.972l-.09-1.975s-1.945.613-4.129.539c-2.165-.074-4.449-.233-4.799-2.891a5.499 5.499 0 0 1-.048-.745s2.125.52 4.817.643c1.646.075 3.19-.097 4.758-.283 3.007-.359 5.625-2.212 5.954-3.905.517-2.665.475-6.507.475-6.507zm-4.024 6.709h-2.497V8.469c0-1.29-.543-1.944-1.628-1.944-1.2 0-1.802.776-1.802 2.312v3.349h-2.483v-3.35c0-1.536-.602-2.312-1.802-2.312-1.085 0-1.628.655-1.628 1.944v6.119H4.832V8.284c0-1.289.328-2.313.987-3.07.68-.758 1.569-1.146 2.674-1.146 1.278 0 2.246.491 2.886 1.474L12 6.585l.622-1.043c.64-.983 1.608-1.474 2.886-1.474 1.104 0 1.994.388 2.674 1.146.658.757.986 1.781.986 3.07v6.304z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/meetup.js /** * WordPress dependencies */ var meetup_MeetupIcon = function MeetupIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M19.24775,14.722a3.57032,3.57032,0,0,1-2.94457,3.52073,3.61886,3.61886,0,0,1-.64652.05634c-.07314-.0008-.10187.02846-.12507.09547A2.38881,2.38881,0,0,1,13.49453,20.094a2.33092,2.33092,0,0,1-1.827-.50716.13635.13635,0,0,0-.19878-.00408,3.191,3.191,0,0,1-2.104.60248,3.26309,3.26309,0,0,1-3.00324-2.71993,2.19076,2.19076,0,0,1-.03512-.30865c-.00156-.08579-.03413-.1189-.11608-.13493a2.86421,2.86421,0,0,1-1.23189-.56111,2.945,2.945,0,0,1-1.166-2.05749,2.97484,2.97484,0,0,1,.87524-2.50774.112.112,0,0,0,.02091-.16107,2.7213,2.7213,0,0,1-.36648-1.48A2.81256,2.81256,0,0,1,6.57673,7.58838a.35764.35764,0,0,0,.28869-.22819,4.2208,4.2208,0,0,1,6.02892-1.90111.25161.25161,0,0,0,.22023.0243,3.65608,3.65608,0,0,1,3.76031.90678A3.57244,3.57244,0,0,1,17.95918,8.626a2.97339,2.97339,0,0,1,.01829.57356.10637.10637,0,0,0,.0853.12792,1.97669,1.97669,0,0,1,1.27939,1.33733,2.00266,2.00266,0,0,1-.57112,2.12652c-.05284.05166-.04168.08328-.01173.13489A3.51189,3.51189,0,0,1,19.24775,14.722Zm-6.35959-.27836a1.6984,1.6984,0,0,0,1.14556,1.61113,3.82039,3.82039,0,0,0,1.036.17935,1.46888,1.46888,0,0,0,.73509-.12255.44082.44082,0,0,0,.26057-.44274.45312.45312,0,0,0-.29211-.43375.97191.97191,0,0,0-.20678-.063c-.21326-.03806-.42754-.0701-.63973-.11215a.54787.54787,0,0,1-.50172-.60926,2.75864,2.75864,0,0,1,.1773-.901c.1763-.535.414-1.045.64183-1.55913A12.686,12.686,0,0,0,15.85,10.47863a1.58461,1.58461,0,0,0,.04861-.87208,1.04531,1.04531,0,0,0-.85432-.83981,1.60658,1.60658,0,0,0-1.23654.16594.27593.27593,0,0,1-.36286-.03413c-.085-.0747-.16594-.15379-.24918-.23055a.98682.98682,0,0,0-1.33577-.04933,6.1468,6.1468,0,0,1-.4989.41615.47762.47762,0,0,1-.51535.03566c-.17448-.09307-.35512-.175-.53531-.25665a1.74949,1.74949,0,0,0-.56476-.2016,1.69943,1.69943,0,0,0-1.61654.91787,8.05815,8.05815,0,0,0-.32952.80126c-.45471,1.2557-.82507,2.53825-1.20838,3.81639a1.24151,1.24151,0,0,0,.51532,1.44389,1.42659,1.42659,0,0,0,1.22008.17166,1.09728,1.09728,0,0,0,.66994-.69764c.44145-1.04111.839-2.09989,1.25981-3.14926.11581-.28876.22792-.57874.35078-.86438a.44548.44548,0,0,1,.69189-.19539.50521.50521,0,0,1,.15044.43836,1.75625,1.75625,0,0,1-.14731.50453c-.27379.69219-.55265,1.38236-.82766,2.074a2.0836,2.0836,0,0,0-.14038.42876.50719.50719,0,0,0,.27082.57722.87236.87236,0,0,0,.66145.02739.99137.99137,0,0,0,.53406-.532q.61571-1.20914,1.228-2.42031.28423-.55863.57585-1.1133a.87189.87189,0,0,1,.29055-.35253.34987.34987,0,0,1,.37634-.01265.30291.30291,0,0,1,.12434.31459.56716.56716,0,0,1-.04655.1915c-.05318.12739-.10286.25669-.16183.38156-.34118.71775-.68754,1.43273-1.02568,2.152A2.00213,2.00213,0,0,0,12.88816,14.44366Zm4.78568,5.28972a.88573.88573,0,0,0-1.77139.00465.8857.8857,0,0,0,1.77139-.00465Zm-14.83838-7.296a.84329.84329,0,1,0,.00827-1.68655.8433.8433,0,0,0-.00827,1.68655Zm10.366-9.43673a.83506.83506,0,1,0-.0091,1.67.83505.83505,0,0,0,.0091-1.67Zm6.85014,5.22a.71651.71651,0,0,0-1.433.0093.71656.71656,0,0,0,1.433-.0093ZM5.37528,6.17908A.63823.63823,0,1,0,6.015,5.54483.62292.62292,0,0,0,5.37528,6.17908Zm6.68214,14.80843a.54949.54949,0,1,0-.55052.541A.54556.54556,0,0,0,12.05742,20.98752Zm8.53235-8.49689a.54777.54777,0,0,0-.54027.54023.53327.53327,0,0,0,.532.52293.51548.51548,0,0,0,.53272-.5237A.53187.53187,0,0,0,20.58977,12.49063ZM7.82846,2.4715a.44927.44927,0,1,0,.44484.44766A.43821.43821,0,0,0,7.82846,2.4715Zm13.775,7.60492a.41186.41186,0,0,0-.40065.39623.40178.40178,0,0,0,.40168.40168A.38994.38994,0,0,0,22,10.48172.39946.39946,0,0,0,21.60349,10.07642ZM5.79193,17.96207a.40469.40469,0,0,0-.397-.39646.399.399,0,0,0-.396.405.39234.39234,0,0,0,.39939.389A.39857.39857,0,0,0,5.79193,17.96207Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/medium.js /** * WordPress dependencies */ var medium_MediumIcon = function MediumIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M20.962,7.257l-5.457,8.867l-3.923-6.375l3.126-5.08c0.112-0.182,0.319-0.286,0.527-0.286c0.05,0,0.1,0.008,0.149,0.02 c0.039,0.01,0.078,0.023,0.114,0.041l5.43,2.715l0.006,0.003c0.004,0.002,0.007,0.006,0.011,0.008 C20.971,7.191,20.98,7.227,20.962,7.257z M9.86,8.592v5.783l5.14,2.57L9.86,8.592z M15.772,17.331l4.231,2.115 C20.554,19.721,21,19.529,21,19.016V8.835L15.772,17.331z M8.968,7.178L3.665,4.527C3.569,4.479,3.478,4.456,3.395,4.456 C3.163,4.456,3,4.636,3,4.938v11.45c0,0.306,0.224,0.669,0.498,0.806l4.671,2.335c0.12,0.06,0.234,0.088,0.337,0.088 c0.29,0,0.494-0.225,0.494-0.602V7.231C9,7.208,8.988,7.188,8.968,7.178z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/pinterest.js /** * WordPress dependencies */ var pinterest_PinterestIcon = function PinterestIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.289,2C6.617,2,3.606,5.648,3.606,9.622c0,1.846,1.025,4.146,2.666,4.878c0.25,0.111,0.381,0.063,0.439-0.169 c0.044-0.175,0.267-1.029,0.365-1.428c0.032-0.128,0.017-0.237-0.091-0.362C6.445,11.911,6.01,10.75,6.01,9.668 c0-2.777,2.194-5.464,5.933-5.464c3.23,0,5.49,2.108,5.49,5.122c0,3.407-1.794,5.768-4.13,5.768c-1.291,0-2.257-1.021-1.948-2.277 c0.372-1.495,1.089-3.112,1.089-4.191c0-0.967-0.542-1.775-1.663-1.775c-1.319,0-2.379,1.309-2.379,3.059 c0,1.115,0.394,1.869,0.394,1.869s-1.302,5.279-1.54,6.261c-0.405,1.666,0.053,4.368,0.094,4.604 c0.021,0.126,0.167,0.169,0.25,0.063c0.129-0.165,1.699-2.419,2.142-4.051c0.158-0.59,0.817-2.995,0.817-2.995 c0.43,0.784,1.681,1.446,3.013,1.446c3.963,0,6.822-3.494,6.822-7.833C20.394,5.112,16.849,2,12.289,2" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/pocket.js /** * WordPress dependencies */ var pocket_PocketIcon = function PocketIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M21.927,4.194C21.667,3.48,20.982,3,20.222,3h-0.01h-1.721H3.839C3.092,3,2.411,3.47,2.145,4.17 C2.066,4.378,2.026,4.594,2.026,4.814v6.035l0.069,1.2c0.29,2.73,1.707,5.115,3.899,6.778c0.039,0.03,0.079,0.059,0.119,0.089 l0.025,0.018c1.175,0.859,2.491,1.441,3.91,1.727c0.655,0.132,1.325,0.2,1.991,0.2c0.615,0,1.232-0.057,1.839-0.17 c0.073-0.014,0.145-0.028,0.219-0.044c0.02-0.004,0.042-0.012,0.064-0.023c1.359-0.297,2.621-0.864,3.753-1.691l0.025-0.018 c0.04-0.029,0.08-0.058,0.119-0.089c2.192-1.664,3.609-4.049,3.898-6.778l0.069-1.2V4.814C22.026,4.605,22,4.398,21.927,4.194z M17.692,10.481l-4.704,4.512c-0.266,0.254-0.608,0.382-0.949,0.382c-0.342,0-0.684-0.128-0.949-0.382l-4.705-4.512 C5.838,9.957,5.82,9.089,6.344,8.542c0.524-0.547,1.392-0.565,1.939-0.04l3.756,3.601l3.755-3.601 c0.547-0.524,1.415-0.506,1.939,0.04C18.256,9.089,18.238,9.956,17.692,10.481z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/reddit.js /** * WordPress dependencies */ var reddit_RedditIcon = function RedditIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M22,11.816c0-1.256-1.021-2.277-2.277-2.277c-0.593,0-1.122,0.24-1.526,0.614c-1.481-0.965-3.455-1.594-5.647-1.69 l1.171-3.702l3.18,0.748c0.008,1.028,0.846,1.862,1.876,1.862c1.035,0,1.877-0.842,1.877-1.878c0-1.035-0.842-1.877-1.877-1.877 c-0.769,0-1.431,0.466-1.72,1.13l-3.508-0.826c-0.203-0.047-0.399,0.067-0.46,0.261l-1.35,4.268 c-2.316,0.038-4.411,0.67-5.97,1.671C5.368,9.765,4.853,9.539,4.277,9.539C3.021,9.539,2,10.56,2,11.816 c0,0.814,0.433,1.523,1.078,1.925c-0.037,0.221-0.061,0.444-0.061,0.672c0,3.292,4.011,5.97,8.941,5.97s8.941-2.678,8.941-5.97 c0-0.214-0.02-0.424-0.053-0.632C21.533,13.39,22,12.661,22,11.816z M18.776,4.394c0.606,0,1.1,0.493,1.1,1.1s-0.493,1.1-1.1,1.1 s-1.1-0.494-1.1-1.1S18.169,4.394,18.776,4.394z M2.777,11.816c0-0.827,0.672-1.5,1.499-1.5c0.313,0,0.598,0.103,0.838,0.269 c-0.851,0.676-1.477,1.479-1.812,2.36C2.983,12.672,2.777,12.27,2.777,11.816z M11.959,19.606c-4.501,0-8.164-2.329-8.164-5.193 S7.457,9.22,11.959,9.22s8.164,2.329,8.164,5.193S16.46,19.606,11.959,19.606z M20.636,13.001c-0.326-0.89-0.948-1.701-1.797-2.384 c0.248-0.186,0.55-0.301,0.883-0.301c0.827,0,1.5,0.673,1.5,1.5C21.223,12.299,20.992,12.727,20.636,13.001z M8.996,14.704 c-0.76,0-1.397-0.616-1.397-1.376c0-0.76,0.637-1.397,1.397-1.397c0.76,0,1.376,0.637,1.376,1.397 C10.372,14.088,9.756,14.704,8.996,14.704z M16.401,13.328c0,0.76-0.616,1.376-1.376,1.376c-0.76,0-1.399-0.616-1.399-1.376 c0-0.76,0.639-1.397,1.399-1.397C15.785,11.931,16.401,12.568,16.401,13.328z M15.229,16.708c0.152,0.152,0.152,0.398,0,0.55 c-0.674,0.674-1.727,1.002-3.219,1.002c-0.004,0-0.007-0.002-0.011-0.002c-0.004,0-0.007,0.002-0.011,0.002 c-1.492,0-2.544-0.328-3.218-1.002c-0.152-0.152-0.152-0.398,0-0.55c0.152-0.152,0.399-0.151,0.55,0 c0.521,0.521,1.394,0.775,2.669,0.775c0.004,0,0.007,0.002,0.011,0.002c0.004,0,0.007-0.002,0.011-0.002 c1.275,0,2.148-0.253,2.669-0.775C14.831,16.556,15.078,16.556,15.229,16.708z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/skype.js /** * WordPress dependencies */ var skype_SkypeIcon = function SkypeIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M10.113,2.699c0.033-0.006,0.067-0.013,0.1-0.02c0.033,0.017,0.066,0.033,0.098,0.051L10.113,2.699z M2.72,10.223 c-0.006,0.034-0.011,0.069-0.017,0.103c0.018,0.032,0.033,0.064,0.051,0.095L2.72,10.223z M21.275,13.771 c0.007-0.035,0.011-0.071,0.018-0.106c-0.018-0.031-0.033-0.064-0.052-0.095L21.275,13.771z M13.563,21.199 c0.032,0.019,0.065,0.035,0.096,0.053c0.036-0.006,0.071-0.011,0.105-0.017L13.563,21.199z M22,16.386 c0,1.494-0.581,2.898-1.637,3.953c-1.056,1.057-2.459,1.637-3.953,1.637c-0.967,0-1.914-0.251-2.75-0.725 c0.036-0.006,0.071-0.011,0.105-0.017l-0.202-0.035c0.032,0.019,0.065,0.035,0.096,0.053c-0.543,0.096-1.099,0.147-1.654,0.147 c-1.275,0-2.512-0.25-3.676-0.743c-1.125-0.474-2.135-1.156-3.002-2.023c-0.867-0.867-1.548-1.877-2.023-3.002 c-0.493-1.164-0.743-2.401-0.743-3.676c0-0.546,0.049-1.093,0.142-1.628c0.018,0.032,0.033,0.064,0.051,0.095L2.72,10.223 c-0.006,0.034-0.011,0.069-0.017,0.103C2.244,9.5,2,8.566,2,7.615c0-1.493,0.582-2.898,1.637-3.953 c1.056-1.056,2.46-1.638,3.953-1.638c0.915,0,1.818,0.228,2.622,0.655c-0.033,0.007-0.067,0.013-0.1,0.02l0.199,0.031 c-0.032-0.018-0.066-0.034-0.098-0.051c0.002,0,0.003-0.001,0.004-0.001c0.586-0.112,1.187-0.169,1.788-0.169 c1.275,0,2.512,0.249,3.676,0.742c1.124,0.476,2.135,1.156,3.002,2.024c0.868,0.867,1.548,1.877,2.024,3.002 c0.493,1.164,0.743,2.401,0.743,3.676c0,0.575-0.054,1.15-0.157,1.712c-0.018-0.031-0.033-0.064-0.052-0.095l0.034,0.201 c0.007-0.035,0.011-0.071,0.018-0.106C21.754,14.494,22,15.432,22,16.386z M16.817,14.138c0-1.331-0.613-2.743-3.033-3.282 l-2.209-0.49c-0.84-0.192-1.807-0.444-1.807-1.237c0-0.794,0.679-1.348,1.903-1.348c2.468,0,2.243,1.696,3.468,1.696 c0.645,0,1.209-0.379,1.209-1.031c0-1.521-2.435-2.663-4.5-2.663c-2.242,0-4.63,0.952-4.63,3.488c0,1.221,0.436,2.521,2.839,3.123 l2.984,0.745c0.903,0.223,1.129,0.731,1.129,1.189c0,0.762-0.758,1.507-2.129,1.507c-2.679,0-2.307-2.062-3.743-2.062 c-0.645,0-1.113,0.444-1.113,1.078c0,1.236,1.501,2.886,4.856,2.886C15.236,17.737,16.817,16.199,16.817,14.138z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/snapchat.js /** * WordPress dependencies */ var snapchat_SnapchatIcon = function SnapchatIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.065,2a5.526,5.526,0,0,1,3.132.892A5.854,5.854,0,0,1,17.326,5.4a5.821,5.821,0,0,1,.351,2.33q0,.612-.117,2.487a.809.809,0,0,0,.365.091,1.93,1.93,0,0,0,.664-.176,1.93,1.93,0,0,1,.664-.176,1.3,1.3,0,0,1,.729.234.7.7,0,0,1,.351.6.839.839,0,0,1-.41.7,2.732,2.732,0,0,1-.9.41,3.192,3.192,0,0,0-.9.378.728.728,0,0,0-.41.618,1.575,1.575,0,0,0,.156.56,6.9,6.9,0,0,0,1.334,1.953,5.6,5.6,0,0,0,1.881,1.315,5.875,5.875,0,0,0,1.042.3.42.42,0,0,1,.365.456q0,.911-2.852,1.341a1.379,1.379,0,0,0-.143.507,1.8,1.8,0,0,1-.182.605.451.451,0,0,1-.429.241,5.878,5.878,0,0,1-.807-.085,5.917,5.917,0,0,0-.833-.085,4.217,4.217,0,0,0-.807.065,2.42,2.42,0,0,0-.82.293,6.682,6.682,0,0,0-.755.5q-.351.267-.755.527a3.886,3.886,0,0,1-.989.436A4.471,4.471,0,0,1,11.831,22a4.307,4.307,0,0,1-1.256-.176,3.784,3.784,0,0,1-.976-.436q-.4-.26-.749-.527a6.682,6.682,0,0,0-.755-.5,2.422,2.422,0,0,0-.807-.293,4.432,4.432,0,0,0-.82-.065,5.089,5.089,0,0,0-.853.1,5,5,0,0,1-.762.1.474.474,0,0,1-.456-.241,1.819,1.819,0,0,1-.182-.618,1.411,1.411,0,0,0-.143-.521q-2.852-.429-2.852-1.341a.42.42,0,0,1,.365-.456,5.793,5.793,0,0,0,1.042-.3,5.524,5.524,0,0,0,1.881-1.315,6.789,6.789,0,0,0,1.334-1.953A1.575,1.575,0,0,0,6,12.9a.728.728,0,0,0-.41-.618,3.323,3.323,0,0,0-.9-.384,2.912,2.912,0,0,1-.9-.41.814.814,0,0,1-.41-.684.71.71,0,0,1,.338-.593,1.208,1.208,0,0,1,.716-.241,1.976,1.976,0,0,1,.625.169,2.008,2.008,0,0,0,.69.169.919.919,0,0,0,.416-.091q-.117-1.849-.117-2.474A5.861,5.861,0,0,1,6.385,5.4,5.516,5.516,0,0,1,8.625,2.819,7.075,7.075,0,0,1,12.062,2Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/soundcloud.js /** * WordPress dependencies */ var soundcloud_SoundCloudIcon = function SoundCloudIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M8.9,16.1L9,14L8.9,9.5c0-0.1,0-0.1-0.1-0.1c0,0-0.1-0.1-0.1-0.1c-0.1,0-0.1,0-0.1,0.1c0,0-0.1,0.1-0.1,0.1L8.3,14l0.1,2.1 c0,0.1,0,0.1,0.1,0.1c0,0,0.1,0.1,0.1,0.1C8.8,16.3,8.9,16.3,8.9,16.1z M11.4,15.9l0.1-1.8L11.4,9c0-0.1,0-0.2-0.1-0.2 c0,0-0.1,0-0.1,0s-0.1,0-0.1,0c-0.1,0-0.1,0.1-0.1,0.2l0,0.1l-0.1,5c0,0,0,0.7,0.1,2v0c0,0.1,0,0.1,0.1,0.1c0.1,0.1,0.1,0.1,0.2,0.1 c0.1,0,0.1,0,0.2-0.1c0.1,0,0.1-0.1,0.1-0.2L11.4,15.9z M2.4,12.9L2.5,14l-0.2,1.1c0,0.1,0,0.1-0.1,0.1c0,0-0.1,0-0.1-0.1L2.1,14 l0.1-1.1C2.2,12.9,2.3,12.9,2.4,12.9C2.3,12.9,2.4,12.9,2.4,12.9z M3.1,12.2L3.3,14l-0.2,1.8c0,0.1,0,0.1-0.1,0.1 c-0.1,0-0.1,0-0.1-0.1L2.8,14L3,12.2C3,12.2,3,12.2,3.1,12.2C3.1,12.2,3.1,12.2,3.1,12.2z M3.9,11.9L4.1,14l-0.2,2.1 c0,0.1,0,0.1-0.1,0.1c-0.1,0-0.1,0-0.1-0.1L3.5,14l0.2-2.1c0-0.1,0-0.1,0.1-0.1C3.9,11.8,3.9,11.8,3.9,11.9z M4.7,11.9L4.9,14 l-0.2,2.1c0,0.1-0.1,0.1-0.1,0.1c-0.1,0-0.1,0-0.1-0.1L4.3,14l0.2-2.2c0-0.1,0-0.1,0.1-0.1C4.7,11.7,4.7,11.8,4.7,11.9z M5.6,12 l0.2,2l-0.2,2.1c0,0.1-0.1,0.1-0.1,0.1c0,0-0.1,0-0.1,0c0,0,0-0.1,0-0.1L5.1,14l0.2-2c0,0,0-0.1,0-0.1s0.1,0,0.1,0 C5.5,11.9,5.5,11.9,5.6,12L5.6,12z M6.4,10.7L6.6,14l-0.2,2.1c0,0,0,0.1,0,0.1c0,0-0.1,0-0.1,0c-0.1,0-0.1-0.1-0.2-0.2L5.9,14 l0.2-3.3c0-0.1,0.1-0.2,0.2-0.2c0,0,0.1,0,0.1,0C6.4,10.7,6.4,10.7,6.4,10.7z M7.2,10l0.2,4.1l-0.2,2.1c0,0,0,0.1,0,0.1 c0,0-0.1,0-0.1,0c-0.1,0-0.2-0.1-0.2-0.2l-0.1-2.1L6.8,10c0-0.1,0.1-0.2,0.2-0.2c0,0,0.1,0,0.1,0S7.2,9.9,7.2,10z M8,9.6L8.2,14 L8,16.1c0,0.1-0.1,0.2-0.2,0.2c-0.1,0-0.2-0.1-0.2-0.2L7.5,14l0.1-4.4c0-0.1,0-0.1,0.1-0.1c0,0,0.1-0.1,0.1-0.1c0.1,0,0.1,0,0.1,0.1 C8,9.6,8,9.6,8,9.6z M11.4,16.1L11.4,16.1L11.4,16.1z M9.7,9.6L9.8,14l-0.1,2.1c0,0.1,0,0.1-0.1,0.2s-0.1,0.1-0.2,0.1 c-0.1,0-0.1,0-0.1-0.1s-0.1-0.1-0.1-0.2L9.2,14l0.1-4.4c0-0.1,0-0.1,0.1-0.2s0.1-0.1,0.2-0.1c0.1,0,0.1,0,0.2,0.1S9.7,9.5,9.7,9.6 L9.7,9.6z M10.6,9.8l0.1,4.3l-0.1,2c0,0.1,0,0.1-0.1,0.2c0,0-0.1,0.1-0.2,0.1c-0.1,0-0.1,0-0.2-0.1c0,0-0.1-0.1-0.1-0.2L10,14 l0.1-4.3c0-0.1,0-0.1,0.1-0.2c0,0,0.1-0.1,0.2-0.1c0.1,0,0.1,0,0.2,0.1S10.6,9.7,10.6,9.8z M12.4,14l-0.1,2c0,0.1,0,0.1-0.1,0.2 c-0.1,0.1-0.1,0.1-0.2,0.1c-0.1,0-0.1,0-0.2-0.1c-0.1-0.1-0.1-0.1-0.1-0.2l-0.1-1l-0.1-1l0.1-5.5v0c0-0.1,0-0.2,0.1-0.2 c0.1,0,0.1-0.1,0.2-0.1c0,0,0.1,0,0.1,0c0.1,0,0.1,0.1,0.1,0.2L12.4,14z M22.1,13.9c0,0.7-0.2,1.3-0.7,1.7c-0.5,0.5-1.1,0.7-1.7,0.7 h-6.8c-0.1,0-0.1,0-0.2-0.1c-0.1-0.1-0.1-0.1-0.1-0.2V8.2c0-0.1,0.1-0.2,0.2-0.3c0.5-0.2,1-0.3,1.6-0.3c1.1,0,2.1,0.4,2.9,1.1 c0.8,0.8,1.3,1.7,1.4,2.8c0.3-0.1,0.6-0.2,1-0.2c0.7,0,1.3,0.2,1.7,0.7C21.8,12.6,22.1,13.2,22.1,13.9L22.1,13.9z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/spotify.js /** * WordPress dependencies */ var spotify_SpotifyIcon = function SpotifyIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12,2C6.477,2,2,6.477,2,12c0,5.523,4.477,10,10,10c5.523,0,10-4.477,10-10C22,6.477,17.523,2,12,2 M16.586,16.424 c-0.18,0.295-0.563,0.387-0.857,0.207c-2.348-1.435-5.304-1.76-8.785-0.964c-0.335,0.077-0.67-0.133-0.746-0.469 c-0.077-0.335,0.132-0.67,0.469-0.746c3.809-0.871,7.077-0.496,9.713,1.115C16.673,15.746,16.766,16.13,16.586,16.424 M17.81,13.7 c-0.226,0.367-0.706,0.482-1.072,0.257c-2.687-1.652-6.785-2.131-9.965-1.166C6.36,12.917,5.925,12.684,5.8,12.273 C5.675,11.86,5.908,11.425,6.32,11.3c3.632-1.102,8.147-0.568,11.234,1.328C17.92,12.854,18.035,13.335,17.81,13.7 M17.915,10.865 c-3.223-1.914-8.54-2.09-11.618-1.156C5.804,9.859,5.281,9.58,5.131,9.086C4.982,8.591,5.26,8.069,5.755,7.919 c3.532-1.072,9.404-0.865,13.115,1.338c0.445,0.264,0.59,0.838,0.327,1.282C18.933,10.983,18.359,11.129,17.915,10.865" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/tumblr.js /** * WordPress dependencies */ var tumblr_TumblrIcon = function TumblrIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M16.749,17.396c-0.357,0.17-1.041,0.319-1.551,0.332c-1.539,0.041-1.837-1.081-1.85-1.896V9.847h3.861V6.937h-3.847V2.039 c0,0-2.77,0-2.817,0c-0.046,0-0.127,0.041-0.138,0.144c-0.165,1.499-0.867,4.13-3.783,5.181v2.484h1.945v6.282 c0,2.151,1.587,5.206,5.775,5.135c1.413-0.024,2.982-0.616,3.329-1.126L16.749,17.396z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/twitch.js /** * WordPress dependencies */ var twitch_TwitchIcon = function TwitchIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M16.499,8.089h-1.636v4.91h1.636V8.089z M12,8.089h-1.637v4.91H12V8.089z M4.228,3.178L3,6.451v13.092h4.499V22h2.456 l2.454-2.456h3.681L21,14.636V3.178H4.228z M19.364,13.816l-2.864,2.865H12l-2.453,2.453V16.68H5.863V4.814h13.501V13.816z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/twitter.js /** * WordPress dependencies */ var twitter_TwitterIcon = function TwitterIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M22.23,5.924c-0.736,0.326-1.527,0.547-2.357,0.646c0.847-0.508,1.498-1.312,1.804-2.27 c-0.793,0.47-1.671,0.812-2.606,0.996C18.324,4.498,17.257,4,16.077,4c-2.266,0-4.103,1.837-4.103,4.103 c0,0.322,0.036,0.635,0.106,0.935C8.67,8.867,5.647,7.234,3.623,4.751C3.27,5.357,3.067,6.062,3.067,6.814 c0,1.424,0.724,2.679,1.825,3.415c-0.673-0.021-1.305-0.206-1.859-0.513c0,0.017,0,0.034,0,0.052c0,1.988,1.414,3.647,3.292,4.023 c-0.344,0.094-0.707,0.144-1.081,0.144c-0.264,0-0.521-0.026-0.772-0.074c0.522,1.63,2.038,2.816,3.833,2.85 c-1.404,1.1-3.174,1.756-5.096,1.756c-0.331,0-0.658-0.019-0.979-0.057c1.816,1.164,3.973,1.843,6.29,1.843 c7.547,0,11.675-6.252,11.675-11.675c0-0.178-0.004-0.355-0.012-0.531C20.985,7.47,21.68,6.747,22.23,5.924z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/vimeo.js /** * WordPress dependencies */ var vimeo_VimeoIcon = function VimeoIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M22.396,7.164c-0.093,2.026-1.507,4.799-4.245,8.32C15.322,19.161,12.928,21,10.97,21c-1.214,0-2.24-1.119-3.079-3.359 c-0.56-2.053-1.119-4.106-1.68-6.159C5.588,9.243,4.921,8.122,4.206,8.122c-0.156,0-0.701,0.328-1.634,0.98L1.594,7.841 c1.027-0.902,2.04-1.805,3.037-2.708C6.001,3.95,7.03,3.327,7.715,3.264c1.619-0.156,2.616,0.951,2.99,3.321 c0.404,2.557,0.685,4.147,0.841,4.769c0.467,2.121,0.981,3.181,1.542,3.181c0.435,0,1.09-0.688,1.963-2.065 c0.871-1.376,1.338-2.422,1.401-3.142c0.125-1.187-0.343-1.782-1.401-1.782c-0.498,0-1.012,0.115-1.541,0.341 c1.023-3.35,2.977-4.977,5.862-4.884C21.511,3.066,22.52,4.453,22.396,7.164z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/vk.js /** * WordPress dependencies */ var vk_VkIcon = function VkIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M22,7.1c0.2,0.4-0.4,1.5-1.6,3.1c-0.2,0.2-0.4,0.5-0.7,0.9c-0.5,0.7-0.9,1.1-0.9,1.4c-0.1,0.3-0.1,0.6,0.1,0.8 c0.1,0.1,0.4,0.4,0.8,0.9h0l0,0c1,0.9,1.6,1.7,2,2.3c0,0,0,0.1,0.1,0.1c0,0.1,0,0.1,0.1,0.3c0,0.1,0,0.2,0,0.4 c0,0.1-0.1,0.2-0.3,0.3c-0.1,0.1-0.4,0.1-0.6,0.1l-2.7,0c-0.2,0-0.4,0-0.6-0.1c-0.2-0.1-0.4-0.1-0.5-0.2l-0.2-0.1 c-0.2-0.1-0.5-0.4-0.7-0.7s-0.5-0.6-0.7-0.8c-0.2-0.2-0.4-0.4-0.6-0.6C14.8,15,14.6,15,14.4,15c0,0,0,0-0.1,0c0,0-0.1,0.1-0.2,0.2 c-0.1,0.1-0.2,0.2-0.2,0.3c-0.1,0.1-0.1,0.3-0.2,0.5c-0.1,0.2-0.1,0.5-0.1,0.8c0,0.1,0,0.2,0,0.3c0,0.1-0.1,0.2-0.1,0.2l0,0.1 c-0.1,0.1-0.3,0.2-0.6,0.2h-1.2c-0.5,0-1,0-1.5-0.2c-0.5-0.1-1-0.3-1.4-0.6s-0.7-0.5-1.1-0.7s-0.6-0.4-0.7-0.6l-0.3-0.3 c-0.1-0.1-0.2-0.2-0.3-0.3s-0.4-0.5-0.7-0.9s-0.7-1-1.1-1.6c-0.4-0.6-0.8-1.3-1.3-2.2C2.9,9.4,2.5,8.5,2.1,7.5C2,7.4,2,7.3,2,7.2 c0-0.1,0-0.1,0-0.2l0-0.1c0.1-0.1,0.3-0.2,0.6-0.2l2.9,0c0.1,0,0.2,0,0.2,0.1S5.9,6.9,5.9,7L6,7c0.1,0.1,0.2,0.2,0.3,0.3 C6.4,7.7,6.5,8,6.7,8.4C6.9,8.8,7,9,7.1,9.2l0.2,0.3c0.2,0.4,0.4,0.8,0.6,1.1c0.2,0.3,0.4,0.5,0.5,0.7s0.3,0.3,0.4,0.4 c0.1,0.1,0.3,0.1,0.4,0.1c0.1,0,0.2,0,0.3-0.1c0,0,0,0,0.1-0.1c0,0,0.1-0.1,0.1-0.2c0.1-0.1,0.1-0.3,0.1-0.5c0-0.2,0.1-0.5,0.1-0.8 c0-0.4,0-0.8,0-1.3c0-0.3,0-0.5-0.1-0.8c0-0.2-0.1-0.4-0.1-0.5L9.6,7.6C9.4,7.3,9.1,7.2,8.7,7.1C8.6,7.1,8.6,7,8.7,6.9 C8.9,6.7,9,6.6,9.1,6.5c0.4-0.2,1.2-0.3,2.5-0.3c0.6,0,1,0.1,1.4,0.1c0.1,0,0.3,0.1,0.3,0.1c0.1,0.1,0.2,0.1,0.2,0.3 c0,0.1,0.1,0.2,0.1,0.3s0,0.3,0,0.5c0,0.2,0,0.4,0,0.6c0,0.2,0,0.4,0,0.7c0,0.3,0,0.6,0,0.9c0,0.1,0,0.2,0,0.4c0,0.2,0,0.4,0,0.5 c0,0.1,0,0.3,0,0.4s0.1,0.3,0.1,0.4c0.1,0.1,0.1,0.2,0.2,0.3c0.1,0,0.1,0,0.2,0c0.1,0,0.2,0,0.3-0.1c0.1-0.1,0.2-0.2,0.4-0.4 s0.3-0.4,0.5-0.7c0.2-0.3,0.5-0.7,0.7-1.1c0.4-0.7,0.8-1.5,1.1-2.3c0-0.1,0.1-0.1,0.1-0.2c0-0.1,0.1-0.1,0.1-0.1l0,0l0.1,0 c0,0,0,0,0.1,0s0.2,0,0.2,0l3,0c0.3,0,0.5,0,0.7,0S21.9,7,21.9,7L22,7.1z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/yelp.js /** * WordPress dependencies */ var yelp_YelpIcon = function YelpIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12.271,16.718v1.417q-.011,3.257-.067,3.4a.707.707,0,0,1-.569.446,4.637,4.637,0,0,1-2.024-.424A4.609,4.609,0,0,1,7.8,20.565a.844.844,0,0,1-.19-.4.692.692,0,0,1,.044-.29,3.181,3.181,0,0,1,.379-.524q.335-.412,2.019-2.409.011,0,.669-.781a.757.757,0,0,1,.44-.274.965.965,0,0,1,.552.039.945.945,0,0,1,.418.324.732.732,0,0,1,.139.468Zm-1.662-2.8a.783.783,0,0,1-.58.781l-1.339.435q-3.067.981-3.257.981a.711.711,0,0,1-.6-.4,2.636,2.636,0,0,1-.19-.836,9.134,9.134,0,0,1,.011-1.857,3.559,3.559,0,0,1,.335-1.389.659.659,0,0,1,.625-.357,22.629,22.629,0,0,1,2.253.859q.781.324,1.283.524l.937.379a.771.771,0,0,1,.4.34A.982.982,0,0,1,10.609,13.917Zm9.213,3.313a4.467,4.467,0,0,1-1.021,1.8,4.559,4.559,0,0,1-1.512,1.417.671.671,0,0,1-.7-.078q-.156-.112-2.052-3.2l-.524-.859a.761.761,0,0,1-.128-.513.957.957,0,0,1,.217-.513.774.774,0,0,1,.926-.29q.011.011,1.327.446,2.264.736,2.7.887a2.082,2.082,0,0,1,.524.229.673.673,0,0,1,.245.68Zm-7.5-7.049q.056,1.137-.6,1.361-.647.19-1.272-.792L6.237,4.08a.7.7,0,0,1,.212-.691,5.788,5.788,0,0,1,2.314-1,5.928,5.928,0,0,1,2.5-.352.681.681,0,0,1,.547.5q.034.2.245,3.407T12.327,10.181Zm7.384,1.2a.679.679,0,0,1-.29.658q-.167.112-3.67.959-.747.167-1.015.257l.011-.022a.769.769,0,0,1-.513-.044.914.914,0,0,1-.413-.357.786.786,0,0,1,0-.971q.011-.011.836-1.137,1.394-1.908,1.673-2.275a2.423,2.423,0,0,1,.379-.435A.7.7,0,0,1,17.435,8a4.482,4.482,0,0,1,1.372,1.489,4.81,4.81,0,0,1,.9,1.868v.034Z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/youtube.js /** * WordPress dependencies */ var youtube_YouTubeIcon = function YouTubeIcon() { return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { width: "24", height: "24", viewBox: "0 0 24 24", version: "1.1" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z" })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/variations.js /** * Internal dependencies */ var social_link_variations_variations = [{ isDefault: true, name: 'wordpress', attributes: { service: 'wordpress' }, title: 'WordPress', icon: wordpress_WordPressIcon }, { name: 'fivehundredpx', attributes: { service: 'fivehundredpx' }, title: '500px', icon: fivehundredpx_FivehundredpxIcon }, { name: 'amazon', attributes: { service: 'amazon' }, title: 'Amazon', icon: amazon_AmazonIcon }, { name: 'bandcamp', attributes: { service: 'bandcamp' }, title: 'Bandcamp', icon: bandcamp_BandcampIcon }, { name: 'behance', attributes: { service: 'behance' }, title: 'Behance', icon: behance_BehanceIcon }, { name: 'chain', attributes: { service: 'chain' }, title: 'Link', icon: chain_ChainIcon }, { name: 'codepen', attributes: { service: 'codepen' }, title: 'CodePen', icon: codepen_CodepenIcon }, { name: 'deviantart', attributes: { service: 'deviantart' }, title: 'DeviantArt', icon: deviantart_DeviantArtIcon }, { name: 'dribbble', attributes: { service: 'dribbble' }, title: 'Dribbble', icon: dribbble_DribbbleIcon }, { name: 'dropbox', attributes: { service: 'dropbox' }, title: 'Dropbox', icon: dropbox_DropboxIcon }, { name: 'etsy', attributes: { service: 'etsy' }, title: 'Etsy', icon: etsy_EtsyIcon }, { name: 'facebook', attributes: { service: 'facebook' }, title: 'Facebook', icon: facebook_FacebookIcon }, { name: 'feed', attributes: { service: 'feed' }, title: 'RSS Feed', icon: feed_FeedIcon }, { name: 'flickr', attributes: { service: 'flickr' }, title: 'Flickr', icon: flickr_FlickrIcon }, { name: 'foursquare', attributes: { service: 'foursquare' }, title: 'Foursquare', icon: foursquare_FoursquareIcon }, { name: 'goodreads', attributes: { service: 'goodreads' }, title: 'Goodreads', icon: goodreads_GoodreadsIcon }, { name: 'google', attributes: { service: 'google' }, title: 'Google', icon: google_GoogleIcon }, { name: 'github', attributes: { service: 'github' }, title: 'GitHub', icon: github_GitHubIcon }, { name: 'instagram', attributes: { service: 'instagram' }, title: 'Instagram', icon: instagram_InstagramIcon }, { name: 'lastfm', attributes: { service: 'lastfm' }, title: 'Last.fm', icon: lastfm_LastfmIcon }, { name: 'linkedin', attributes: { service: 'linkedin' }, title: 'LinkedIn', icon: linkedin_LinkedInIcon }, { name: 'mail', attributes: { service: 'mail' }, title: 'Mail', icon: mail_MailIcon }, { name: 'mastodon', attributes: { service: 'mastodon' }, title: 'Mastodon', icon: mastodon_MastodonIcon }, { name: 'meetup', attributes: { service: 'meetup' }, title: 'Meetup', icon: meetup_MeetupIcon }, { name: 'medium', attributes: { service: 'medium' }, title: 'Medium', icon: medium_MediumIcon }, { name: 'pinterest', attributes: { service: 'pinterest' }, title: 'Pinterest', icon: pinterest_PinterestIcon }, { name: 'pocket', attributes: { service: 'pocket' }, title: 'Pocket', icon: pocket_PocketIcon }, { name: 'reddit', attributes: { service: 'reddit' }, title: 'Reddit', icon: reddit_RedditIcon }, { name: 'skype', attributes: { service: 'skype' }, title: 'Skype', icon: skype_SkypeIcon }, { name: 'snapchat', attributes: { service: 'snapchat' }, title: 'Snapchat', icon: snapchat_SnapchatIcon }, { name: 'soundcloud', attributes: { service: 'soundcloud' }, title: 'SoundCloud', icon: soundcloud_SoundCloudIcon }, { name: 'spotify', attributes: { service: 'spotify' }, title: 'Spotify', icon: spotify_SpotifyIcon }, { name: 'tumblr', attributes: { service: 'tumblr' }, title: 'Tumblr', icon: tumblr_TumblrIcon }, { name: 'twitch', attributes: { service: 'twitch' }, title: 'Twitch', icon: twitch_TwitchIcon }, { name: 'twitter', attributes: { service: 'twitter' }, title: 'Twitter', icon: twitter_TwitterIcon }, { name: 'vimeo', attributes: { service: 'vimeo' }, title: 'Vimeo', icon: vimeo_VimeoIcon }, { name: 'vk', attributes: { service: 'vk' }, title: 'VK', icon: vk_VkIcon }, { name: 'yelp', attributes: { service: 'yelp' }, title: 'Yelp', icon: yelp_YelpIcon }, { name: 'youtube', attributes: { service: 'youtube' }, title: 'YouTube', icon: youtube_YouTubeIcon }]; /* harmony default export */ var social_link_variations = (social_link_variations_variations); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/social-list.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Retrieves the social service's icon component. * * @param {string} name key for a social service (lowercase slug) * * @return {WPComponent} Icon component for social service. */ var social_list_getIconBySite = function getIconBySite(name) { var variation = Object(external_this_lodash_["find"])(social_link_variations, { name: name }); return variation ? variation.icon : chain_ChainIcon; }; /** * Retrieves the display name for the social service. * * @param {string} name key for a social service (lowercase slug) * * @return {string} Display name for social service */ var social_list_getNameBySite = function getNameBySite(name) { var variation = Object(external_this_lodash_["find"])(social_link_variations, { name: name }); return variation ? variation.title : Object(external_this_wp_i18n_["__"])('Social Icon'); }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var edit_SocialLinkEdit = function SocialLinkEdit(_ref) { var attributes = _ref.attributes, setAttributes = _ref.setAttributes, isSelected = _ref.isSelected; var url = attributes.url, service = attributes.service, label = attributes.label; var _useState = Object(external_this_wp_element_["useState"])(false), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), showURLPopover = _useState2[0], setPopover = _useState2[1]; var classes = classnames_default()('wp-social-link', 'wp-social-link-' + service, { 'wp-social-link__is-incomplete': !url }); // Import icon. var IconComponent = social_list_getIconBySite(service); var socialLinkName = social_list_getNameBySite(service); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["InspectorControls"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { title: Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('%s label'), socialLinkName), initialOpen: false }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelRow"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { label: Object(external_this_wp_i18n_["__"])('Link label'), help: Object(external_this_wp_i18n_["__"])('Briefly describe the link to help screen reader users.'), value: label, onChange: function onChange(value) { return setAttributes({ label: value }); } })))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: classes, onClick: function onClick() { return setPopover(true); } }, Object(external_this_wp_element_["createElement"])(IconComponent, null), isSelected && showURLPopover && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["URLPopover"], { onClose: function onClose() { return setPopover(false); } }, Object(external_this_wp_element_["createElement"])("form", { className: "block-editor-url-popover__link-editor", onSubmit: function onSubmit(event) { event.preventDefault(); setPopover(false); } }, Object(external_this_wp_element_["createElement"])("div", { className: "block-editor-url-input" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["URLInput"], { value: url, onChange: function onChange(nextURL) { return setAttributes({ url: nextURL }); }, placeholder: Object(external_this_wp_i18n_["__"])('Enter address'), disableSuggestions: true })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: keyboard_return["a" /* default */], label: Object(external_this_wp_i18n_["__"])('Apply'), type: "submit" }))))); }; /* harmony default export */ var social_link_edit = (edit_SocialLinkEdit); // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var social_link_metadata = { name: "core/social-link", category: "widgets", icon: "share", attributes: { url: { type: "string" }, service: { type: "string" }, label: { type: "string" } } }; var social_link_name = social_link_metadata.name; var social_link_settings = { title: Object(external_this_wp_i18n_["__"])('Social Icon'), parent: ['core/social-links'], supports: { reusable: false, html: false }, edit: social_link_edit, description: Object(external_this_wp_i18n_["__"])('Display an icon linking to a social media profile or website.'), variations: social_link_variations }; // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/index.js /** * WordPress dependencies */ /** * Internal dependencies */ // Full Site Editing Blocks /** * Function to register an individual block. * * @param {Object} block The block to be registered. * */ var build_module_registerBlock = function registerBlock(block) { if (!block) { return; } var metadata = block.metadata, settings = block.settings, name = block.name; if (metadata) { Object(external_this_wp_blocks_["unstable__bootstrapServerSideBlockDefinitions"])(Object(defineProperty["a" /* default */])({}, name, metadata)); } Object(external_this_wp_blocks_["registerBlockType"])(name, settings); }; /** * Function to register core blocks provided by the block editor. * * @example * ```js * import { registerCoreBlocks } from '@wordpress/block-library'; * * registerCoreBlocks(); * ``` */ var build_module_registerCoreBlocks = function registerCoreBlocks() { [// Common blocks are grouped at the top to prioritize their display // in various contexts — like the inserter and auto-complete components. build_module_paragraph_namespaceObject, build_module_image_namespaceObject, build_module_heading_namespaceObject, build_module_gallery_namespaceObject, build_module_list_namespaceObject, build_module_quote_namespaceObject, // Register all remaining core blocks. build_module_shortcode_namespaceObject, archives_namespaceObject, build_module_audio_namespaceObject, build_module_button_namespaceObject, buttons_namespaceObject, build_module_calendar_namespaceObject, categories_namespaceObject, code_namespaceObject, build_module_columns_namespaceObject, build_module_column_namespaceObject, build_module_cover_namespaceObject, embed_namespaceObject].concat(Object(toConsumableArray["a" /* default */])(embed_common), Object(toConsumableArray["a" /* default */])(embed_others), [build_module_file_namespaceObject, build_module_group_namespaceObject, window.wp && window.wp.oldEditor ? build_module_classic_namespaceObject : null, // Only add the classic block in WP Context build_module_html_namespaceObject, media_text_namespaceObject, latest_comments_namespaceObject, latest_posts_namespaceObject, missing_namespaceObject, build_module_more_namespaceObject, nextpage_namespaceObject, build_module_preformatted_namespaceObject, build_module_pullquote_namespaceObject, build_module_rss_namespaceObject, build_module_search_namespaceObject, build_module_separator_namespaceObject, block_namespaceObject, social_links_namespaceObject, social_link_namespaceObject, spacer_namespaceObject, subhead_namespaceObject, build_module_table_namespaceObject, tag_cloud_namespaceObject, text_columns_namespaceObject, build_module_verse_namespaceObject, build_module_video_namespaceObject]).forEach(build_module_registerBlock); Object(external_this_wp_blocks_["setDefaultBlockName"])(paragraph_name); if (window.wp && window.wp.oldEditor) { Object(external_this_wp_blocks_["setFreeformContentHandlerName"])(classic_name); } Object(external_this_wp_blocks_["setUnregisteredTypeHandlerName"])(missing_name); if (build_module_group_namespaceObject) { Object(external_this_wp_blocks_["setGroupingBlockName"])(group_name); } }; /** * Function to register experimental core blocks depending on editor settings. * * @param {Object} settings Editor settings. * * @example * ```js * import { __experimentalRegisterExperimentalCoreBlocks } from '@wordpress/block-library'; * * __experimentalRegisterExperimentalCoreBlocks( settings ); * ``` */ var __experimentalRegisterExperimentalCoreBlocks = false ? undefined : undefined; /***/ }), /***/ "K9lf": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["compose"]; }()); /***/ }), /***/ "KEfo": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["viewport"]; }()); /***/ }), /***/ "KQm4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js var arrayLikeToArray = __webpack_require__("a3WO"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js var iterableToArray = __webpack_require__("25BE"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread(); } /***/ }), /***/ "L0kB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var pencil = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6zM13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6z" })); /* harmony default export */ __webpack_exports__["a"] = (pencil); /***/ }), /***/ "Mmq9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["url"]; }()); /***/ }), /***/ "NMb1": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["deprecated"]; }()); /***/ }), /***/ "Nehr": /***/ (function(module, exports, __webpack_require__) { "use strict"; module.exports = { isString: function(arg) { return typeof(arg) === 'string'; }, isObject: function(arg) { return typeof(arg) === 'object' && arg !== null; }, isNull: function(arg) { return arg === null; }, isNullOrUndefined: function(arg) { return arg == null; } }; /***/ }), /***/ "ODXe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js var arrayWithHoles = __webpack_require__("DSFK"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js var nonIterableRest = __webpack_require__("PYwp"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])(); } /***/ }), /***/ "PYwp": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; }); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } /***/ }), /***/ "RxS6": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["keycodes"]; }()); /***/ }), /***/ "TSYQ": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! Copyright (c) 2017 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /* global define */ (function () { 'use strict'; var hasOwn = {}.hasOwnProperty; function classNames () { var classes = []; for (var i = 0; i < arguments.length; i++) { var arg = arguments[i]; if (!arg) continue; var argType = typeof arg; if (argType === 'string' || argType === 'number') { classes.push(arg); } else if (Array.isArray(arg) && arg.length) { var inner = classNames.apply(null, arg); if (inner) { classes.push(inner); } } else if (argType === 'object') { for (var key in arg) { if (hasOwn.call(arg, key) && arg[key]) { classes.push(key); } } } } return classes.join(' '); } if ( true && module.exports) { classNames.default = classNames; module.exports = classNames; } else if (true) { // register as 'classnames', consistent with npm package name !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return classNames; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }()); /***/ }), /***/ "Tqx9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["primitives"]; }()); /***/ }), /***/ "U8pU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; }); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } /***/ }), /***/ "UuzZ": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["autop"]; }()); /***/ }), /***/ "Vx3V": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["escapeHtml"]; }()); /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "YuTi": /***/ (function(module, exports) { module.exports = function(module) { if (!module.webpackPolyfill) { module.deprecate = function() {}; module.paths = []; // module.parent = undefined by default if (!module.children) module.children = []; Object.defineProperty(module, "loaded", { enumerable: true, get: function() { return module.l; } }); Object.defineProperty(module, "id", { enumerable: true, get: function() { return module.i; } }); module.webpackPolyfill = 1; } return module; }; /***/ }), /***/ "Zss7": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_RESULT__;// TinyColor v1.4.2 // https://github.com/bgrins/TinyColor // Brian Grinstead, MIT License (function(Math) { var trimLeft = /^\s+/, trimRight = /\s+$/, tinyCounter = 0, mathRound = Math.round, mathMin = Math.min, mathMax = Math.max, mathRandom = Math.random; function tinycolor (color, opts) { color = (color) ? color : ''; opts = opts || { }; // If input is already a tinycolor, return itself if (color instanceof tinycolor) { return color; } // If we are called as a function, call using new instead if (!(this instanceof tinycolor)) { return new tinycolor(color, opts); } var rgb = inputToRGB(color); this._originalInput = color, this._r = rgb.r, this._g = rgb.g, this._b = rgb.b, this._a = rgb.a, this._roundA = mathRound(100*this._a) / 100, this._format = opts.format || rgb.format; this._gradientType = opts.gradientType; // Don't let the range of [0,255] come back in [0,1]. // Potentially lose a little bit of precision here, but will fix issues where // .5 gets interpreted as half of the total, instead of half of 1 // If it was supposed to be 128, this was already taken care of by `inputToRgb` if (this._r < 1) { this._r = mathRound(this._r); } if (this._g < 1) { this._g = mathRound(this._g); } if (this._b < 1) { this._b = mathRound(this._b); } this._ok = rgb.ok; this._tc_id = tinyCounter++; } tinycolor.prototype = { isDark: function() { return this.getBrightness() < 128; }, isLight: function() { return !this.isDark(); }, isValid: function() { return this._ok; }, getOriginalInput: function() { return this._originalInput; }, getFormat: function() { return this._format; }, getAlpha: function() { return this._a; }, getBrightness: function() { //http://www.w3.org/TR/AERT#color-contrast var rgb = this.toRgb(); return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000; }, getLuminance: function() { //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef var rgb = this.toRgb(); var RsRGB, GsRGB, BsRGB, R, G, B; RsRGB = rgb.r/255; GsRGB = rgb.g/255; BsRGB = rgb.b/255; if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);} if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);} if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);} return (0.2126 * R) + (0.7152 * G) + (0.0722 * B); }, setAlpha: function(value) { this._a = boundAlpha(value); this._roundA = mathRound(100*this._a) / 100; return this; }, toHsv: function() { var hsv = rgbToHsv(this._r, this._g, this._b); return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a }; }, toHsvString: function() { var hsv = rgbToHsv(this._r, this._g, this._b); var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100); return (this._a == 1) ? "hsv(" + h + ", " + s + "%, " + v + "%)" : "hsva(" + h + ", " + s + "%, " + v + "%, "+ this._roundA + ")"; }, toHsl: function() { var hsl = rgbToHsl(this._r, this._g, this._b); return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a }; }, toHslString: function() { var hsl = rgbToHsl(this._r, this._g, this._b); var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100); return (this._a == 1) ? "hsl(" + h + ", " + s + "%, " + l + "%)" : "hsla(" + h + ", " + s + "%, " + l + "%, "+ this._roundA + ")"; }, toHex: function(allow3Char) { return rgbToHex(this._r, this._g, this._b, allow3Char); }, toHexString: function(allow3Char) { return '#' + this.toHex(allow3Char); }, toHex8: function(allow4Char) { return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char); }, toHex8String: function(allow4Char) { return '#' + this.toHex8(allow4Char); }, toRgb: function() { return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a }; }, toRgbString: function() { return (this._a == 1) ? "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" : "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")"; }, toPercentageRgb: function() { return { r: mathRound(bound01(this._r, 255) * 100) + "%", g: mathRound(bound01(this._g, 255) * 100) + "%", b: mathRound(bound01(this._b, 255) * 100) + "%", a: this._a }; }, toPercentageRgbString: function() { return (this._a == 1) ? "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" : "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")"; }, toName: function() { if (this._a === 0) { return "transparent"; } if (this._a < 1) { return false; } return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false; }, toFilter: function(secondColor) { var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a); var secondHex8String = hex8String; var gradientType = this._gradientType ? "GradientType = 1, " : ""; if (secondColor) { var s = tinycolor(secondColor); secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a); } return "progid:DXImageTransform.Microsoft.gradient("+gradientType+"startColorstr="+hex8String+",endColorstr="+secondHex8String+")"; }, toString: function(format) { var formatSet = !!format; format = format || this._format; var formattedString = false; var hasAlpha = this._a < 1 && this._a >= 0; var needsAlphaFormat = !formatSet && hasAlpha && (format === "hex" || format === "hex6" || format === "hex3" || format === "hex4" || format === "hex8" || format === "name"); if (needsAlphaFormat) { // Special case for "transparent", all other non-alpha formats // will return rgba when there is transparency. if (format === "name" && this._a === 0) { return this.toName(); } return this.toRgbString(); } if (format === "rgb") { formattedString = this.toRgbString(); } if (format === "prgb") { formattedString = this.toPercentageRgbString(); } if (format === "hex" || format === "hex6") { formattedString = this.toHexString(); } if (format === "hex3") { formattedString = this.toHexString(true); } if (format === "hex4") { formattedString = this.toHex8String(true); } if (format === "hex8") { formattedString = this.toHex8String(); } if (format === "name") { formattedString = this.toName(); } if (format === "hsl") { formattedString = this.toHslString(); } if (format === "hsv") { formattedString = this.toHsvString(); } return formattedString || this.toHexString(); }, clone: function() { return tinycolor(this.toString()); }, _applyModification: function(fn, args) { var color = fn.apply(null, [this].concat([].slice.call(args))); this._r = color._r; this._g = color._g; this._b = color._b; this.setAlpha(color._a); return this; }, lighten: function() { return this._applyModification(lighten, arguments); }, brighten: function() { return this._applyModification(brighten, arguments); }, darken: function() { return this._applyModification(darken, arguments); }, desaturate: function() { return this._applyModification(desaturate, arguments); }, saturate: function() { return this._applyModification(saturate, arguments); }, greyscale: function() { return this._applyModification(greyscale, arguments); }, spin: function() { return this._applyModification(spin, arguments); }, _applyCombination: function(fn, args) { return fn.apply(null, [this].concat([].slice.call(args))); }, analogous: function() { return this._applyCombination(analogous, arguments); }, complement: function() { return this._applyCombination(complement, arguments); }, monochromatic: function() { return this._applyCombination(monochromatic, arguments); }, splitcomplement: function() { return this._applyCombination(splitcomplement, arguments); }, triad: function() { return this._applyCombination(triad, arguments); }, tetrad: function() { return this._applyCombination(tetrad, arguments); } }; // If input is an object, force 1 into "1.0" to handle ratios properly // String input requires "1.0" as input, so 1 will be treated as 1 tinycolor.fromRatio = function(color, opts) { if (typeof color == "object") { var newColor = {}; for (var i in color) { if (color.hasOwnProperty(i)) { if (i === "a") { newColor[i] = color[i]; } else { newColor[i] = convertToPercentage(color[i]); } } } color = newColor; } return tinycolor(color, opts); }; // Given a string or object, convert that input to RGB // Possible string inputs: // // "red" // "#f00" or "f00" // "#ff0000" or "ff0000" // "#ff000000" or "ff000000" // "rgb 255 0 0" or "rgb (255, 0, 0)" // "rgb 1.0 0 0" or "rgb (1, 0, 0)" // "rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1" // "rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1" // "hsl(0, 100%, 50%)" or "hsl 0 100% 50%" // "hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1" // "hsv(0, 100%, 100%)" or "hsv 0 100% 100%" // function inputToRGB(color) { var rgb = { r: 0, g: 0, b: 0 }; var a = 1; var s = null; var v = null; var l = null; var ok = false; var format = false; if (typeof color == "string") { color = stringInputToObject(color); } if (typeof color == "object") { if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) { rgb = rgbToRgb(color.r, color.g, color.b); ok = true; format = String(color.r).substr(-1) === "%" ? "prgb" : "rgb"; } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) { s = convertToPercentage(color.s); v = convertToPercentage(color.v); rgb = hsvToRgb(color.h, s, v); ok = true; format = "hsv"; } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) { s = convertToPercentage(color.s); l = convertToPercentage(color.l); rgb = hslToRgb(color.h, s, l); ok = true; format = "hsl"; } if (color.hasOwnProperty("a")) { a = color.a; } } a = boundAlpha(a); return { ok: ok, format: color.format || format, r: mathMin(255, mathMax(rgb.r, 0)), g: mathMin(255, mathMax(rgb.g, 0)), b: mathMin(255, mathMax(rgb.b, 0)), a: a }; } // Conversion Functions // -------------------- // `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from: // // `rgbToRgb` // Handle bounds / percentage checking to conform to CSS color spec // // *Assumes:* r, g, b in [0, 255] or [0, 1] // *Returns:* { r, g, b } in [0, 255] function rgbToRgb(r, g, b){ return { r: bound01(r, 255) * 255, g: bound01(g, 255) * 255, b: bound01(b, 255) * 255 }; } // `rgbToHsl` // Converts an RGB color value to HSL. // *Assumes:* r, g, and b are contained in [0, 255] or [0, 1] // *Returns:* { h, s, l } in [0,1] function rgbToHsl(r, g, b) { r = bound01(r, 255); g = bound01(g, 255); b = bound01(b, 255); var max = mathMax(r, g, b), min = mathMin(r, g, b); var h, s, l = (max + min) / 2; if(max == min) { h = s = 0; // achromatic } else { var d = max - min; s = l > 0.5 ? d / (2 - max - min) : d / (max + min); switch(max) { case r: h = (g - b) / d + (g < b ? 6 : 0); break; case g: h = (b - r) / d + 2; break; case b: h = (r - g) / d + 4; break; } h /= 6; } return { h: h, s: s, l: l }; } // `hslToRgb` // Converts an HSL color value to RGB. // *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100] // *Returns:* { r, g, b } in the set [0, 255] function hslToRgb(h, s, l) { var r, g, b; h = bound01(h, 360); s = bound01(s, 100); l = bound01(l, 100); function hue2rgb(p, q, t) { if(t < 0) t += 1; if(t > 1) t -= 1; if(t < 1/6) return p + (q - p) * 6 * t; if(t < 1/2) return q; if(t < 2/3) return p + (q - p) * (2/3 - t) * 6; return p; } if(s === 0) { r = g = b = l; // achromatic } else { var q = l < 0.5 ? l * (1 + s) : l + s - l * s; var p = 2 * l - q; r = hue2rgb(p, q, h + 1/3); g = hue2rgb(p, q, h); b = hue2rgb(p, q, h - 1/3); } return { r: r * 255, g: g * 255, b: b * 255 }; } // `rgbToHsv` // Converts an RGB color value to HSV // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1] // *Returns:* { h, s, v } in [0,1] function rgbToHsv(r, g, b) { r = bound01(r, 255); g = bound01(g, 255); b = bound01(b, 255); var max = mathMax(r, g, b), min = mathMin(r, g, b); var h, s, v = max; var d = max - min; s = max === 0 ? 0 : d / max; if(max == min) { h = 0; // achromatic } else { switch(max) { case r: h = (g - b) / d + (g < b ? 6 : 0); break; case g: h = (b - r) / d + 2; break; case b: h = (r - g) / d + 4; break; } h /= 6; } return { h: h, s: s, v: v }; } // `hsvToRgb` // Converts an HSV color value to RGB. // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100] // *Returns:* { r, g, b } in the set [0, 255] function hsvToRgb(h, s, v) { h = bound01(h, 360) * 6; s = bound01(s, 100); v = bound01(v, 100); var i = Math.floor(h), f = h - i, p = v * (1 - s), q = v * (1 - f * s), t = v * (1 - (1 - f) * s), mod = i % 6, r = [v, q, p, p, t, v][mod], g = [t, v, v, q, p, p][mod], b = [p, p, t, v, v, q][mod]; return { r: r * 255, g: g * 255, b: b * 255 }; } // `rgbToHex` // Converts an RGB color to hex // Assumes r, g, and b are contained in the set [0, 255] // Returns a 3 or 6 character hex function rgbToHex(r, g, b, allow3Char) { var hex = [ pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)) ]; // Return a 3 character hex if possible if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) { return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0); } return hex.join(""); } // `rgbaToHex` // Converts an RGBA color plus alpha transparency to hex // Assumes r, g, b are contained in the set [0, 255] and // a in [0, 1]. Returns a 4 or 8 character rgba hex function rgbaToHex(r, g, b, a, allow4Char) { var hex = [ pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)), pad2(convertDecimalToHex(a)) ]; // Return a 4 character hex if possible if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) { return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0); } return hex.join(""); } // `rgbaToArgbHex` // Converts an RGBA color to an ARGB Hex8 string // Rarely used, but required for "toFilter()" function rgbaToArgbHex(r, g, b, a) { var hex = [ pad2(convertDecimalToHex(a)), pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)) ]; return hex.join(""); } // `equals` // Can be called with any tinycolor input tinycolor.equals = function (color1, color2) { if (!color1 || !color2) { return false; } return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString(); }; tinycolor.random = function() { return tinycolor.fromRatio({ r: mathRandom(), g: mathRandom(), b: mathRandom() }); }; // Modification Functions // ---------------------- // Thanks to less.js for some of the basics here // function desaturate(color, amount) { amount = (amount === 0) ? 0 : (amount || 10); var hsl = tinycolor(color).toHsl(); hsl.s -= amount / 100; hsl.s = clamp01(hsl.s); return tinycolor(hsl); } function saturate(color, amount) { amount = (amount === 0) ? 0 : (amount || 10); var hsl = tinycolor(color).toHsl(); hsl.s += amount / 100; hsl.s = clamp01(hsl.s); return tinycolor(hsl); } function greyscale(color) { return tinycolor(color).desaturate(100); } function lighten (color, amount) { amount = (amount === 0) ? 0 : (amount || 10); var hsl = tinycolor(color).toHsl(); hsl.l += amount / 100; hsl.l = clamp01(hsl.l); return tinycolor(hsl); } function brighten(color, amount) { amount = (amount === 0) ? 0 : (amount || 10); var rgb = tinycolor(color).toRgb(); rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100)))); rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100)))); rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100)))); return tinycolor(rgb); } function darken (color, amount) { amount = (amount === 0) ? 0 : (amount || 10); var hsl = tinycolor(color).toHsl(); hsl.l -= amount / 100; hsl.l = clamp01(hsl.l); return tinycolor(hsl); } // Spin takes a positive or negative amount within [-360, 360] indicating the change of hue. // Values outside of this range will be wrapped into this range. function spin(color, amount) { var hsl = tinycolor(color).toHsl(); var hue = (hsl.h + amount) % 360; hsl.h = hue < 0 ? 360 + hue : hue; return tinycolor(hsl); } // Combination Functions // --------------------- // Thanks to jQuery xColor for some of the ideas behind these // function complement(color) { var hsl = tinycolor(color).toHsl(); hsl.h = (hsl.h + 180) % 360; return tinycolor(hsl); } function triad(color) { var hsl = tinycolor(color).toHsl(); var h = hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l }) ]; } function tetrad(color) { var hsl = tinycolor(color).toHsl(); var h = hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l }) ]; } function splitcomplement(color) { var hsl = tinycolor(color).toHsl(); var h = hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}), tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l}) ]; } function analogous(color, results, slices) { results = results || 6; slices = slices || 30; var hsl = tinycolor(color).toHsl(); var part = 360 / slices; var ret = [tinycolor(color)]; for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) { hsl.h = (hsl.h + part) % 360; ret.push(tinycolor(hsl)); } return ret; } function monochromatic(color, results) { results = results || 6; var hsv = tinycolor(color).toHsv(); var h = hsv.h, s = hsv.s, v = hsv.v; var ret = []; var modification = 1 / results; while (results--) { ret.push(tinycolor({ h: h, s: s, v: v})); v = (v + modification) % 1; } return ret; } // Utility Functions // --------------------- tinycolor.mix = function(color1, color2, amount) { amount = (amount === 0) ? 0 : (amount || 50); var rgb1 = tinycolor(color1).toRgb(); var rgb2 = tinycolor(color2).toRgb(); var p = amount / 100; var rgba = { r: ((rgb2.r - rgb1.r) * p) + rgb1.r, g: ((rgb2.g - rgb1.g) * p) + rgb1.g, b: ((rgb2.b - rgb1.b) * p) + rgb1.b, a: ((rgb2.a - rgb1.a) * p) + rgb1.a }; return tinycolor(rgba); }; // Readability Functions // --------------------- // false // tinycolor.isReadable("#000", "#111",{level:"AA",size:"large"}) => false tinycolor.isReadable = function(color1, color2, wcag2) { var readability = tinycolor.readability(color1, color2); var wcag2Parms, out; out = false; wcag2Parms = validateWCAG2Parms(wcag2); switch (wcag2Parms.level + wcag2Parms.size) { case "AAsmall": case "AAAlarge": out = readability >= 4.5; break; case "AAlarge": out = readability >= 3; break; case "AAAsmall": out = readability >= 7; break; } return out; }; // `mostReadable` // Given a base color and a list of possible foreground or background // colors for that base, returns the most readable color. // Optionally returns Black or White if the most readable color is unreadable. // *Example* // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:false}).toHexString(); // "#112255" // tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:true}).toHexString(); // "#ffffff" // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"large"}).toHexString(); // "#faf3f3" // tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"small"}).toHexString(); // "#ffffff" tinycolor.mostReadable = function(baseColor, colorList, args) { var bestColor = null; var bestScore = 0; var readability; var includeFallbackColors, level, size ; args = args || {}; includeFallbackColors = args.includeFallbackColors ; level = args.level; size = args.size; for (var i= 0; i < colorList.length ; i++) { readability = tinycolor.readability(baseColor, colorList[i]); if (readability > bestScore) { bestScore = readability; bestColor = tinycolor(colorList[i]); } } if (tinycolor.isReadable(baseColor, bestColor, {"level":level,"size":size}) || !includeFallbackColors) { return bestColor; } else { args.includeFallbackColors=false; return tinycolor.mostReadable(baseColor,["#fff", "#000"],args); } }; // Big List of Colors // ------------------ // var names = tinycolor.names = { aliceblue: "f0f8ff", antiquewhite: "faebd7", aqua: "0ff", aquamarine: "7fffd4", azure: "f0ffff", beige: "f5f5dc", bisque: "ffe4c4", black: "000", blanchedalmond: "ffebcd", blue: "00f", blueviolet: "8a2be2", brown: "a52a2a", burlywood: "deb887", burntsienna: "ea7e5d", cadetblue: "5f9ea0", chartreuse: "7fff00", chocolate: "d2691e", coral: "ff7f50", cornflowerblue: "6495ed", cornsilk: "fff8dc", crimson: "dc143c", cyan: "0ff", darkblue: "00008b", darkcyan: "008b8b", darkgoldenrod: "b8860b", darkgray: "a9a9a9", darkgreen: "006400", darkgrey: "a9a9a9", darkkhaki: "bdb76b", darkmagenta: "8b008b", darkolivegreen: "556b2f", darkorange: "ff8c00", darkorchid: "9932cc", darkred: "8b0000", darksalmon: "e9967a", darkseagreen: "8fbc8f", darkslateblue: "483d8b", darkslategray: "2f4f4f", darkslategrey: "2f4f4f", darkturquoise: "00ced1", darkviolet: "9400d3", deeppink: "ff1493", deepskyblue: "00bfff", dimgray: "696969", dimgrey: "696969", dodgerblue: "1e90ff", firebrick: "b22222", floralwhite: "fffaf0", forestgreen: "228b22", fuchsia: "f0f", gainsboro: "dcdcdc", ghostwhite: "f8f8ff", gold: "ffd700", goldenrod: "daa520", gray: "808080", green: "008000", greenyellow: "adff2f", grey: "808080", honeydew: "f0fff0", hotpink: "ff69b4", indianred: "cd5c5c", indigo: "4b0082", ivory: "fffff0", khaki: "f0e68c", lavender: "e6e6fa", lavenderblush: "fff0f5", lawngreen: "7cfc00", lemonchiffon: "fffacd", lightblue: "add8e6", lightcoral: "f08080", lightcyan: "e0ffff", lightgoldenrodyellow: "fafad2", lightgray: "d3d3d3", lightgreen: "90ee90", lightgrey: "d3d3d3", lightpink: "ffb6c1", lightsalmon: "ffa07a", lightseagreen: "20b2aa", lightskyblue: "87cefa", lightslategray: "789", lightslategrey: "789", lightsteelblue: "b0c4de", lightyellow: "ffffe0", lime: "0f0", limegreen: "32cd32", linen: "faf0e6", magenta: "f0f", maroon: "800000", mediumaquamarine: "66cdaa", mediumblue: "0000cd", mediumorchid: "ba55d3", mediumpurple: "9370db", mediumseagreen: "3cb371", mediumslateblue: "7b68ee", mediumspringgreen: "00fa9a", mediumturquoise: "48d1cc", mediumvioletred: "c71585", midnightblue: "191970", mintcream: "f5fffa", mistyrose: "ffe4e1", moccasin: "ffe4b5", navajowhite: "ffdead", navy: "000080", oldlace: "fdf5e6", olive: "808000", olivedrab: "6b8e23", orange: "ffa500", orangered: "ff4500", orchid: "da70d6", palegoldenrod: "eee8aa", palegreen: "98fb98", paleturquoise: "afeeee", palevioletred: "db7093", papayawhip: "ffefd5", peachpuff: "ffdab9", peru: "cd853f", pink: "ffc0cb", plum: "dda0dd", powderblue: "b0e0e6", purple: "800080", rebeccapurple: "663399", red: "f00", rosybrown: "bc8f8f", royalblue: "4169e1", saddlebrown: "8b4513", salmon: "fa8072", sandybrown: "f4a460", seagreen: "2e8b57", seashell: "fff5ee", sienna: "a0522d", silver: "c0c0c0", skyblue: "87ceeb", slateblue: "6a5acd", slategray: "708090", slategrey: "708090", snow: "fffafa", springgreen: "00ff7f", steelblue: "4682b4", tan: "d2b48c", teal: "008080", thistle: "d8bfd8", tomato: "ff6347", turquoise: "40e0d0", violet: "ee82ee", wheat: "f5deb3", white: "fff", whitesmoke: "f5f5f5", yellow: "ff0", yellowgreen: "9acd32" }; // Make it easy to access colors via `hexNames[hex]` var hexNames = tinycolor.hexNames = flip(names); // Utilities // --------- // `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }` function flip(o) { var flipped = { }; for (var i in o) { if (o.hasOwnProperty(i)) { flipped[o[i]] = i; } } return flipped; } // Return a valid alpha value [0,1] with all invalid values being set to 1 function boundAlpha(a) { a = parseFloat(a); if (isNaN(a) || a < 0 || a > 1) { a = 1; } return a; } // Take input from [0, n] and return it as [0, 1] function bound01(n, max) { if (isOnePointZero(n)) { n = "100%"; } var processPercent = isPercentage(n); n = mathMin(max, mathMax(0, parseFloat(n))); // Automatically convert percentage into number if (processPercent) { n = parseInt(n * max, 10) / 100; } // Handle floating point rounding errors if ((Math.abs(n - max) < 0.000001)) { return 1; } // Convert into [0, 1] range if it isn't already return (n % max) / parseFloat(max); } // Force a number between 0 and 1 function clamp01(val) { return mathMin(1, mathMax(0, val)); } // Parse a base-16 hex value into a base-10 integer function parseIntFromHex(val) { return parseInt(val, 16); } // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1 // function isOnePointZero(n) { return typeof n == "string" && n.indexOf('.') != -1 && parseFloat(n) === 1; } // Check to see if string passed in is a percentage function isPercentage(n) { return typeof n === "string" && n.indexOf('%') != -1; } // Force a hex value to have 2 characters function pad2(c) { return c.length == 1 ? '0' + c : '' + c; } // Replace a decimal with it's percentage value function convertToPercentage(n) { if (n <= 1) { n = (n * 100) + "%"; } return n; } // Converts a decimal to a hex value function convertDecimalToHex(d) { return Math.round(parseFloat(d) * 255).toString(16); } // Converts a hex value to a decimal function convertHexToDecimal(h) { return (parseIntFromHex(h) / 255); } var matchers = (function() { // var CSS_INTEGER = "[-\\+]?\\d+%?"; // var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?"; // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome. var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")"; // Actual matching. // Parentheses and commas are optional, but not required. // Whitespace can take the place of commas or opening paren var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?"; var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?"; return { CSS_UNIT: new RegExp(CSS_UNIT), rgb: new RegExp("rgb" + PERMISSIVE_MATCH3), rgba: new RegExp("rgba" + PERMISSIVE_MATCH4), hsl: new RegExp("hsl" + PERMISSIVE_MATCH3), hsla: new RegExp("hsla" + PERMISSIVE_MATCH4), hsv: new RegExp("hsv" + PERMISSIVE_MATCH3), hsva: new RegExp("hsva" + PERMISSIVE_MATCH4), hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/, hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/ }; })(); // `isValidCSSUnit` // Take in a single string / number and check to see if it looks like a CSS unit // (see `matchers` above for definition). function isValidCSSUnit(color) { return !!matchers.CSS_UNIT.exec(color); } // `stringInputToObject` // Permissive string parsing. Take in a number of formats, and output an object // based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}` function stringInputToObject(color) { color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase(); var named = false; if (names[color]) { color = names[color]; named = true; } else if (color == 'transparent') { return { r: 0, g: 0, b: 0, a: 0, format: "name" }; } // Try to match string input using regular expressions. // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360] // Just return an object and let the conversion functions handle that. // This way the result will be the same whether the tinycolor is initialized with string or object. var match; if ((match = matchers.rgb.exec(color))) { return { r: match[1], g: match[2], b: match[3] }; } if ((match = matchers.rgba.exec(color))) { return { r: match[1], g: match[2], b: match[3], a: match[4] }; } if ((match = matchers.hsl.exec(color))) { return { h: match[1], s: match[2], l: match[3] }; } if ((match = matchers.hsla.exec(color))) { return { h: match[1], s: match[2], l: match[3], a: match[4] }; } if ((match = matchers.hsv.exec(color))) { return { h: match[1], s: match[2], v: match[3] }; } if ((match = matchers.hsva.exec(color))) { return { h: match[1], s: match[2], v: match[3], a: match[4] }; } if ((match = matchers.hex8.exec(color))) { return { r: parseIntFromHex(match[1]), g: parseIntFromHex(match[2]), b: parseIntFromHex(match[3]), a: convertHexToDecimal(match[4]), format: named ? "name" : "hex8" }; } if ((match = matchers.hex6.exec(color))) { return { r: parseIntFromHex(match[1]), g: parseIntFromHex(match[2]), b: parseIntFromHex(match[3]), format: named ? "name" : "hex" }; } if ((match = matchers.hex4.exec(color))) { return { r: parseIntFromHex(match[1] + '' + match[1]), g: parseIntFromHex(match[2] + '' + match[2]), b: parseIntFromHex(match[3] + '' + match[3]), a: convertHexToDecimal(match[4] + '' + match[4]), format: named ? "name" : "hex8" }; } if ((match = matchers.hex3.exec(color))) { return { r: parseIntFromHex(match[1] + '' + match[1]), g: parseIntFromHex(match[2] + '' + match[2]), b: parseIntFromHex(match[3] + '' + match[3]), format: named ? "name" : "hex" }; } return false; } function validateWCAG2Parms(parms) { // return valid WCAG2 parms for isReadable. // If input parms are invalid, return {"level":"AA", "size":"small"} var level, size; parms = parms || {"level":"AA", "size":"small"}; level = (parms.level || "AA").toUpperCase(); size = (parms.size || "small").toLowerCase(); if (level !== "AA" && level !== "AAA") { level = "AA"; } if (size !== "small" && size !== "large") { size = "small"; } return {"level":level, "size":size}; } // Node: Export function if ( true && module.exports) { module.exports = tinycolor; } // AMD/requirejs: Define the module else if (true) { !(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {return tinycolor;}).call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } // Browser: Expose to window else {} })(Math); /***/ }), /***/ "a3WO": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; }); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "axFQ": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blockEditor"]; }()); /***/ }), /***/ "btIw": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var keyboardReturn = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M16 4h2v9H7v3l-5-4 5-4v3h9V4z" })); /* harmony default export */ __webpack_exports__["a"] = (keyboardReturn); /***/ }), /***/ "fPbg": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var alignLeft = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M12 5V3H3v2h9zm5 4V7H3v2h14zm-5 4v-2H3v2h9zm5 4v-2H3v2h14z" })); /* harmony default export */ __webpack_exports__["a"] = (alignLeft); /***/ }), /***/ "foSv": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; }); function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } /***/ }), /***/ "jZUy": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["coreData"]; }()); /***/ }), /***/ "kd2E": /***/ (function(module, exports, __webpack_require__) { "use strict"; // Copyright Joyent, Inc. and other Node contributors. // // Permission is hereby granted, free of charge, to any person obtaining a // copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to permit // persons to whom the Software is furnished to do so, subject to the // following conditions: // // The above copyright notice and this permission notice shall be included // in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. // If obj.hasOwnProperty has been overridden, then calling // obj.hasOwnProperty(prop) will break. // See: https://github.com/joyent/node/issues/1707 function hasOwnProperty(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } module.exports = function(qs, sep, eq, options) { sep = sep || '&'; eq = eq || '='; var obj = {}; if (typeof qs !== 'string' || qs.length === 0) { return obj; } var regexp = /\+/g; qs = qs.split(sep); var maxKeys = 1000; if (options && typeof options.maxKeys === 'number') { maxKeys = options.maxKeys; } var len = qs.length; // maxKeys <= 0 means that we should not limit keys count if (maxKeys > 0 && len > maxKeys) { len = maxKeys; } for (var i = 0; i < len; ++i) { var x = qs[i].replace(regexp, '%20'), idx = x.indexOf(eq), kstr, vstr, k, v; if (idx >= 0) { kstr = x.substr(0, idx); vstr = x.substr(idx + 1); } else { kstr = x; vstr = ''; } k = decodeURIComponent(kstr); v = decodeURIComponent(vstr); if (!hasOwnProperty(obj, k)) { obj[k] = v; } else if (isArray(obj[k])) { obj[k].push(v); } else { obj[k] = [obj[k], v]; } } return obj; }; var isArray = Array.isArray || function (xs) { return Object.prototype.toString.call(xs) === '[object Array]'; }; /***/ }), /***/ "l3Sj": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["i18n"]; }()); /***/ }), /***/ "md7G": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; }); /* harmony import */ var _helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("U8pU"); /* harmony import */ var _assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JX7q"); function _possibleConstructorReturn(self, call) { if (call && (Object(_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) { return call; } return Object(_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self); } /***/ }), /***/ "nYho": /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(module, global) {var __WEBPACK_AMD_DEFINE_RESULT__;/*! https://mths.be/punycode v1.3.2 by @mathias */ ;(function(root) { /** Detect free variables */ var freeExports = true && exports && !exports.nodeType && exports; var freeModule = true && module && !module.nodeType && module; var freeGlobal = typeof global == 'object' && global; if ( freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal || freeGlobal.self === freeGlobal ) { root = freeGlobal; } /** * The `punycode` object. * @name punycode * @type Object */ var punycode, /** Highest positive signed 32-bit float value */ maxInt = 2147483647, // aka. 0x7FFFFFFF or 2^31-1 /** Bootstring parameters */ base = 36, tMin = 1, tMax = 26, skew = 38, damp = 700, initialBias = 72, initialN = 128, // 0x80 delimiter = '-', // '\x2D' /** Regular expressions */ regexPunycode = /^xn--/, regexNonASCII = /[^\x20-\x7E]/, // unprintable ASCII chars + non-ASCII chars regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g, // RFC 3490 separators /** Error messages */ errors = { 'overflow': 'Overflow: input needs wider integers to process', 'not-basic': 'Illegal input >= 0x80 (not a basic code point)', 'invalid-input': 'Invalid input' }, /** Convenience shortcuts */ baseMinusTMin = base - tMin, floor = Math.floor, stringFromCharCode = String.fromCharCode, /** Temporary variable */ key; /*--------------------------------------------------------------------------*/ /** * A generic error utility function. * @private * @param {String} type The error type. * @returns {Error} Throws a `RangeError` with the applicable error message. */ function error(type) { throw RangeError(errors[type]); } /** * A generic `Array#map` utility function. * @private * @param {Array} array The array to iterate over. * @param {Function} callback The function that gets called for every array * item. * @returns {Array} A new array of values returned by the callback function. */ function map(array, fn) { var length = array.length; var result = []; while (length--) { result[length] = fn(array[length]); } return result; } /** * A simple `Array#map`-like wrapper to work with domain name strings or email * addresses. * @private * @param {String} domain The domain name or email address. * @param {Function} callback The function that gets called for every * character. * @returns {Array} A new string of characters returned by the callback * function. */ function mapDomain(string, fn) { var parts = string.split('@'); var result = ''; if (parts.length > 1) { // In email addresses, only the domain name should be punycoded. Leave // the local part (i.e. everything up to `@`) intact. result = parts[0] + '@'; string = parts[1]; } // Avoid `split(regex)` for IE8 compatibility. See #17. string = string.replace(regexSeparators, '\x2E'); var labels = string.split('.'); var encoded = map(labels, fn).join('.'); return result + encoded; } /** * Creates an array containing the numeric code points of each Unicode * character in the string. While JavaScript uses UCS-2 internally, * this function will convert a pair of surrogate halves (each of which * UCS-2 exposes as separate characters) into a single code point, * matching UTF-16. * @see `punycode.ucs2.encode` * @see * @memberOf punycode.ucs2 * @name decode * @param {String} string The Unicode input string (UCS-2). * @returns {Array} The new array of code points. */ function ucs2decode(string) { var output = [], counter = 0, length = string.length, value, extra; while (counter < length) { value = string.charCodeAt(counter++); if (value >= 0xD800 && value <= 0xDBFF && counter < length) { // high surrogate, and there is a next character extra = string.charCodeAt(counter++); if ((extra & 0xFC00) == 0xDC00) { // low surrogate output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); } else { // unmatched surrogate; only append this code unit, in case the next // code unit is the high surrogate of a surrogate pair output.push(value); counter--; } } else { output.push(value); } } return output; } /** * Creates a string based on an array of numeric code points. * @see `punycode.ucs2.decode` * @memberOf punycode.ucs2 * @name encode * @param {Array} codePoints The array of numeric code points. * @returns {String} The new Unicode string (UCS-2). */ function ucs2encode(array) { return map(array, function(value) { var output = ''; if (value > 0xFFFF) { value -= 0x10000; output += stringFromCharCode(value >>> 10 & 0x3FF | 0xD800); value = 0xDC00 | value & 0x3FF; } output += stringFromCharCode(value); return output; }).join(''); } /** * Converts a basic code point into a digit/integer. * @see `digitToBasic()` * @private * @param {Number} codePoint The basic numeric code point value. * @returns {Number} The numeric value of a basic code point (for use in * representing integers) in the range `0` to `base - 1`, or `base` if * the code point does not represent a value. */ function basicToDigit(codePoint) { if (codePoint - 48 < 10) { return codePoint - 22; } if (codePoint - 65 < 26) { return codePoint - 65; } if (codePoint - 97 < 26) { return codePoint - 97; } return base; } /** * Converts a digit/integer into a basic code point. * @see `basicToDigit()` * @private * @param {Number} digit The numeric value of a basic code point. * @returns {Number} The basic code point whose value (when used for * representing integers) is `digit`, which needs to be in the range * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is * used; else, the lowercase form is used. The behavior is undefined * if `flag` is non-zero and `digit` has no uppercase form. */ function digitToBasic(digit, flag) { // 0..25 map to ASCII a..z or A..Z // 26..35 map to ASCII 0..9 return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); } /** * Bias adaptation function as per section 3.4 of RFC 3492. * http://tools.ietf.org/html/rfc3492#section-3.4 * @private */ function adapt(delta, numPoints, firstTime) { var k = 0; delta = firstTime ? floor(delta / damp) : delta >> 1; delta += floor(delta / numPoints); for (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) { delta = floor(delta / baseMinusTMin); } return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); } /** * Converts a Punycode string of ASCII-only symbols to a string of Unicode * symbols. * @memberOf punycode * @param {String} input The Punycode string of ASCII-only symbols. * @returns {String} The resulting string of Unicode symbols. */ function decode(input) { // Don't use UCS-2 var output = [], inputLength = input.length, out, i = 0, n = initialN, bias = initialBias, basic, j, index, oldi, w, k, digit, t, /** Cached calculation results */ baseMinusT; // Handle the basic code points: let `basic` be the number of input code // points before the last delimiter, or `0` if there is none, then copy // the first basic code points to the output. basic = input.lastIndexOf(delimiter); if (basic < 0) { basic = 0; } for (j = 0; j < basic; ++j) { // if it's not a basic code point if (input.charCodeAt(j) >= 0x80) { error('not-basic'); } output.push(input.charCodeAt(j)); } // Main decoding loop: start just after the last delimiter if any basic code // points were copied; start at the beginning otherwise. for (index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) { // `index` is the index of the next character to be consumed. // Decode a generalized variable-length integer into `delta`, // which gets added to `i`. The overflow checking is easier // if we increase `i` as we go, then subtract off its starting // value at the end to obtain `delta`. for (oldi = i, w = 1, k = base; /* no condition */; k += base) { if (index >= inputLength) { error('invalid-input'); } digit = basicToDigit(input.charCodeAt(index++)); if (digit >= base || digit > floor((maxInt - i) / w)) { error('overflow'); } i += digit * w; t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); if (digit < t) { break; } baseMinusT = base - t; if (w > floor(maxInt / baseMinusT)) { error('overflow'); } w *= baseMinusT; } out = output.length + 1; bias = adapt(i - oldi, out, oldi == 0); // `i` was supposed to wrap around from `out` to `0`, // incrementing `n` each time, so we'll fix that now: if (floor(i / out) > maxInt - n) { error('overflow'); } n += floor(i / out); i %= out; // Insert `n` at position `i` of the output output.splice(i++, 0, n); } return ucs2encode(output); } /** * Converts a string of Unicode symbols (e.g. a domain name label) to a * Punycode string of ASCII-only symbols. * @memberOf punycode * @param {String} input The string of Unicode symbols. * @returns {String} The resulting Punycode string of ASCII-only symbols. */ function encode(input) { var n, delta, handledCPCount, basicLength, bias, j, m, q, k, t, currentValue, output = [], /** `inputLength` will hold the number of code points in `input`. */ inputLength, /** Cached calculation results */ handledCPCountPlusOne, baseMinusT, qMinusT; // Convert the input in UCS-2 to Unicode input = ucs2decode(input); // Cache the length inputLength = input.length; // Initialize the state n = initialN; delta = 0; bias = initialBias; // Handle the basic code points for (j = 0; j < inputLength; ++j) { currentValue = input[j]; if (currentValue < 0x80) { output.push(stringFromCharCode(currentValue)); } } handledCPCount = basicLength = output.length; // `handledCPCount` is the number of code points that have been handled; // `basicLength` is the number of basic code points. // Finish the basic string - if it is not empty - with a delimiter if (basicLength) { output.push(delimiter); } // Main encoding loop: while (handledCPCount < inputLength) { // All non-basic code points < n have been handled already. Find the next // larger one: for (m = maxInt, j = 0; j < inputLength; ++j) { currentValue = input[j]; if (currentValue >= n && currentValue < m) { m = currentValue; } } // Increase `delta` enough to advance the decoder's state to , // but guard against overflow handledCPCountPlusOne = handledCPCount + 1; if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { error('overflow'); } delta += (m - n) * handledCPCountPlusOne; n = m; for (j = 0; j < inputLength; ++j) { currentValue = input[j]; if (currentValue < n && ++delta > maxInt) { error('overflow'); } if (currentValue == n) { // Represent delta as a generalized variable-length integer for (q = delta, k = base; /* no condition */; k += base) { t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); if (q < t) { break; } qMinusT = q - t; baseMinusT = base - t; output.push( stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)) ); q = floor(qMinusT / baseMinusT); } output.push(stringFromCharCode(digitToBasic(q, 0))); bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); delta = 0; ++handledCPCount; } } ++delta; ++n; } return output.join(''); } /** * Converts a Punycode string representing a domain name or an email address * to Unicode. Only the Punycoded parts of the input will be converted, i.e. * it doesn't matter if you call it on a string that has already been * converted to Unicode. * @memberOf punycode * @param {String} input The Punycoded domain name or email address to * convert to Unicode. * @returns {String} The Unicode representation of the given Punycode * string. */ function toUnicode(input) { return mapDomain(input, function(string) { return regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string; }); } /** * Converts a Unicode string representing a domain name or an email address to * Punycode. Only the non-ASCII parts of the domain name will be converted, * i.e. it doesn't matter if you call it with a domain that's already in * ASCII. * @memberOf punycode * @param {String} input The domain name or email address to convert, as a * Unicode string. * @returns {String} The Punycode representation of the given domain name or * email address. */ function toASCII(input) { return mapDomain(input, function(string) { return regexNonASCII.test(string) ? 'xn--' + encode(string) : string; }); } /*--------------------------------------------------------------------------*/ /** Define the public API */ punycode = { /** * A string representing the current Punycode.js version number. * @memberOf punycode * @type String */ 'version': '1.3.2', /** * An object of methods to convert from JavaScript's internal character * representation (UCS-2) to Unicode code points, and back. * @see * @memberOf punycode * @type Object */ 'ucs2': { 'decode': ucs2decode, 'encode': ucs2encode }, 'decode': decode, 'encode': encode, 'toASCII': toASCII, 'toUnicode': toUnicode }; /** Expose `punycode` */ // Some AMD build optimizers, like r.js, check for specific condition patterns // like the following: if ( true ) { !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() { return punycode; }).call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }(this)); /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("YuTi")(module), __webpack_require__("yLpj"))) /***/ }), /***/ "plpT": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var alignCenter = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M14 5V3H6v2h8zm3 4V7H3v2h14zm-3 4v-2H6v2h8zm3 4v-2H3v2h14z" })); /* harmony default export */ __webpack_exports__["a"] = (alignCenter); /***/ }), /***/ "qRz9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["richText"]; }()); /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "s4NR": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.decode = exports.parse = __webpack_require__("kd2E"); exports.encode = exports.stringify = __webpack_require__("4JlD"); /***/ }), /***/ "tI+e": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["components"]; }()); /***/ }), /***/ "vuIU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; }); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /***/ }), /***/ "w95h": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var close = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M14.95 6.46L11.41 10l3.54 3.54-1.41 1.41L10 11.42l-3.53 3.53-1.42-1.42L8.58 10 5.05 6.47l1.42-1.42L10 8.58l3.54-3.53z" })); /* harmony default export */ __webpack_exports__["a"] = (close); /***/ }), /***/ "wx14": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; }); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /***/ }), /***/ "wy2R": /***/ (function(module, exports) { (function() { module.exports = this["moment"]; }()); /***/ }), /***/ "xTGt": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blob"]; }()); /***/ }), /***/ "yLpj": /***/ (function(module, exports) { var g; // This works in non-strict mode g = (function() { return this; })(); try { // This works if eval is allowed (see CSP) g = g || new Function("return this")(); } catch (e) { // This works if the window reference is available if (typeof window === "object") g = window; } // g can still be undefined, but nothing to do about it... // We return undefined, instead of nothing here, so it's // easier to handle this case. if(!global) { ...} module.exports = g; /***/ }), /***/ "ywyh": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["apiFetch"]; }()); /***/ }), /***/ "zLVn": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; }); function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } /***/ }), /***/ "ziDm": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var alignRight = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M17 5V3H8v2h9zm0 4V7H3v2h14zm0 4v-2H8v2h9zm0 4v-2H3v2h14z" })); /* harmony default export */ __webpack_exports__["a"] = (alignRight); /***/ }) /******/ });PKv\\AA dist/data.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["data"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "pfJ3"); /******/ }) /************************************************************************/ /******/ ({ /***/ "25BE": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; }); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } /***/ }), /***/ "3UD+": /***/ (function(module, exports) { module.exports = function(originalModule) { if (!originalModule.webpackPolyfill) { var module = Object.create(originalModule); // module.parent = undefined by default if (!module.children) module.children = []; Object.defineProperty(module, "loaded", { enumerable: true, get: function() { return module.l; } }); Object.defineProperty(module, "id", { enumerable: true, get: function() { return module.i; } }); Object.defineProperty(module, "exports", { enumerable: true }); module.webpackPolyfill = 1; } return module; }; /***/ }), /***/ "4eJC": /***/ (function(module, exports, __webpack_require__) { /** * Memize options object. * * @typedef MemizeOptions * * @property {number} [maxSize] Maximum size of the cache. */ /** * Internal cache entry. * * @typedef MemizeCacheNode * * @property {?MemizeCacheNode|undefined} [prev] Previous node. * @property {?MemizeCacheNode|undefined} [next] Next node. * @property {Array<*>} args Function arguments for cache * entry. * @property {*} val Function result. */ /** * Properties of the enhanced function for controlling cache. * * @typedef MemizeMemoizedFunction * * @property {()=>void} clear Clear the cache. */ /** * Accepts a function to be memoized, and returns a new memoized function, with * optional options. * * @template {Function} F * * @param {F} fn Function to memoize. * @param {MemizeOptions} [options] Options object. * * @return {F & MemizeMemoizedFunction} Memoized function. */ function memize( fn, options ) { var size = 0; /** @type {?MemizeCacheNode|undefined} */ var head; /** @type {?MemizeCacheNode|undefined} */ var tail; options = options || {}; function memoized( /* ...args */ ) { var node = head, len = arguments.length, args, i; searchCache: while ( node ) { // Perform a shallow equality test to confirm that whether the node // under test is a candidate for the arguments passed. Two arrays // are shallowly equal if their length matches and each entry is // strictly equal between the two sets. Avoid abstracting to a // function which could incur an arguments leaking deoptimization. // Check whether node arguments match arguments length if ( node.args.length !== arguments.length ) { node = node.next; continue; } // Check whether node arguments match arguments values for ( i = 0; i < len; i++ ) { if ( node.args[ i ] !== arguments[ i ] ) { node = node.next; continue searchCache; } } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== head ) { // As tail, shift to previous. Must only shift if not also // head, since if both head and tail, there is no previous. if ( node === tail ) { tail = node.prev; } // Adjust siblings to point to each other. If node was tail, // this also handles new tail's empty `next` assignment. /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = head; node.prev = null; /** @type {MemizeCacheNode} */ ( head ).prev = node; head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: // Create a copy of arguments (avoid leaking deoptimization) args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } node = { args: args, // Generate the result from original function val: fn.apply( null, args ), }; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( head ) { head.prev = node; node.next = head; } else { // If no head, follows that there's no tail (at initial or reset) tail = node; } // Trim tail if we're reached max size and are pending cache insertion if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { tail = /** @type {MemizeCacheNode} */ ( tail ).prev; /** @type {MemizeCacheNode} */ ( tail ).next = null; } else { size++; } head = node; return node.val; } memoized.clear = function() { head = null; tail = null; size = 0; }; if ( false ) {} // Ignore reason: There's not a clear solution to create an intersection of // the function with additional properties, where the goal is to retain the // function signature of the incoming argument and add control properties // on the return value. // @ts-ignore return memoized; } module.exports = memize; /***/ }), /***/ "8mpt": /***/ (function(module, exports) { function combineReducers( reducers ) { var keys = Object.keys( reducers ), getNextState; getNextState = ( function() { var fn, i, key; fn = 'return {'; for ( i = 0; i < keys.length; i++ ) { // Rely on Quoted escaping of JSON.stringify with guarantee that // each member of Object.keys is a string. // // "If Type(value) is String, then return the result of calling the // abstract operation Quote with argument value. [...] The abstract // operation Quote(value) wraps a String value in double quotes and // escapes characters within it." // // https://www.ecma-international.org/ecma-262/5.1/#sec-15.12.3 key = JSON.stringify( keys[ i ] ); fn += key + ':r[' + key + '](s[' + key + '],a),'; } fn += '}'; return new Function( 'r,s,a', fn ); } )(); return function combinedReducer( state, action ) { var nextState, i, key; // Assumed changed if initial state. if ( state === undefined ) { return getNextState( reducers, {}, action ); } nextState = getNextState( reducers, state, action ); // Determine whether state has changed. i = keys.length; while ( i-- ) { key = keys[ i ]; if ( state[ key ] !== nextState[ key ] ) { // Return immediately if a changed value is encountered. return nextState; } } return state; }; } module.exports = combineReducers; /***/ }), /***/ "BsWD": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; }); /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a3WO"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); } /***/ }), /***/ "DSFK": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; }); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /***/ }), /***/ "FtRg": /***/ (function(module, exports, __webpack_require__) { "use strict"; function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function (obj) { return typeof obj; }; } else { _typeof = function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /** * Given an instance of EquivalentKeyMap, returns its internal value pair tuple * for a key, if one exists. The tuple members consist of the last reference * value for the key (used in efficient subsequent lookups) and the value * assigned for the key at the leaf node. * * @param {EquivalentKeyMap} instance EquivalentKeyMap instance. * @param {*} key The key for which to return value pair. * * @return {?Array} Value pair, if exists. */ function getValuePair(instance, key) { var _map = instance._map, _arrayTreeMap = instance._arrayTreeMap, _objectTreeMap = instance._objectTreeMap; // Map keeps a reference to the last object-like key used to set the // value, which can be used to shortcut immediately to the value. if (_map.has(key)) { return _map.get(key); } // Sort keys to ensure stable retrieval from tree. var properties = Object.keys(key).sort(); // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? _arrayTreeMap : _objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; map = map.get(property); if (map === undefined) { return; } var propertyValue = key[property]; map = map.get(propertyValue); if (map === undefined) { return; } } var valuePair = map.get('_ekm_value'); if (!valuePair) { return; } // If reached, it implies that an object-like key was set with another // reference, so delete the reference and replace with the current. _map.delete(valuePair[0]); valuePair[0] = key; map.set('_ekm_value', valuePair); _map.set(key, valuePair); return valuePair; } /** * Variant of a Map object which enables lookup by equivalent (deeply equal) * object and array keys. */ var EquivalentKeyMap = /*#__PURE__*/ function () { /** * Constructs a new instance of EquivalentKeyMap. * * @param {Iterable.<*>} iterable Initial pair of key, value for map. */ function EquivalentKeyMap(iterable) { _classCallCheck(this, EquivalentKeyMap); this.clear(); if (iterable instanceof EquivalentKeyMap) { // Map#forEach is only means of iterating with support for IE11. var iterablePairs = []; iterable.forEach(function (value, key) { iterablePairs.push([key, value]); }); iterable = iterablePairs; } if (iterable != null) { for (var i = 0; i < iterable.length; i++) { this.set(iterable[i][0], iterable[i][1]); } } } /** * Accessor property returning the number of elements. * * @return {number} Number of elements. */ _createClass(EquivalentKeyMap, [{ key: "set", /** * Add or update an element with a specified key and value. * * @param {*} key The key of the element to add. * @param {*} value The value of the element to add. * * @return {EquivalentKeyMap} Map instance. */ value: function set(key, value) { // Shortcut non-object-like to set on internal Map. if (key === null || _typeof(key) !== 'object') { this._map.set(key, value); return this; } // Sort keys to ensure stable assignment into tree. var properties = Object.keys(key).sort(); var valuePair = [key, value]; // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? this._arrayTreeMap : this._objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; if (!map.has(property)) { map.set(property, new EquivalentKeyMap()); } map = map.get(property); var propertyValue = key[property]; if (!map.has(propertyValue)) { map.set(propertyValue, new EquivalentKeyMap()); } map = map.get(propertyValue); } // If an _ekm_value exists, there was already an equivalent key. Before // overriding, ensure that the old key reference is removed from map to // avoid memory leak of accumulating equivalent keys. This is, in a // sense, a poor man's WeakMap, while still enabling iterability. var previousValuePair = map.get('_ekm_value'); if (previousValuePair) { this._map.delete(previousValuePair[0]); } map.set('_ekm_value', valuePair); this._map.set(key, valuePair); return this; } /** * Returns a specified element. * * @param {*} key The key of the element to return. * * @return {?*} The element associated with the specified key or undefined * if the key can't be found. */ }, { key: "get", value: function get(key) { // Shortcut non-object-like to get from internal Map. if (key === null || _typeof(key) !== 'object') { return this._map.get(key); } var valuePair = getValuePair(this, key); if (valuePair) { return valuePair[1]; } } /** * Returns a boolean indicating whether an element with the specified key * exists or not. * * @param {*} key The key of the element to test for presence. * * @return {boolean} Whether an element with the specified key exists. */ }, { key: "has", value: function has(key) { if (key === null || _typeof(key) !== 'object') { return this._map.has(key); } // Test on the _presence_ of the pair, not its value, as even undefined // can be a valid member value for a key. return getValuePair(this, key) !== undefined; } /** * Removes the specified element. * * @param {*} key The key of the element to remove. * * @return {boolean} Returns true if an element existed and has been * removed, or false if the element does not exist. */ }, { key: "delete", value: function _delete(key) { if (!this.has(key)) { return false; } // This naive implementation will leave orphaned child trees. A better // implementation should traverse and remove orphans. this.set(key, undefined); return true; } /** * Executes a provided function once per each key/value pair, in insertion * order. * * @param {Function} callback Function to execute for each element. * @param {*} thisArg Value to use as `this` when executing * `callback`. */ }, { key: "forEach", value: function forEach(callback) { var _this = this; var thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this; this._map.forEach(function (value, key) { // Unwrap value from object-like value pair. if (key !== null && _typeof(key) === 'object') { value = value[1]; } callback.call(thisArg, value, key, _this); }); } /** * Removes all elements. */ }, { key: "clear", value: function clear() { this._map = new Map(); this._arrayTreeMap = new Map(); this._objectTreeMap = new Map(); } }, { key: "size", get: function get() { return this._map.size; } }]); return EquivalentKeyMap; }(); module.exports = EquivalentKeyMap; /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "HaE+": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _asyncToGenerator; }); function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } /***/ }), /***/ "JlUD": /***/ (function(module, exports) { module.exports = isPromise; function isPromise(obj) { return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'; } /***/ }), /***/ "K9lf": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["compose"]; }()); /***/ }), /***/ "KQm4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js var arrayLikeToArray = __webpack_require__("a3WO"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js var iterableToArray = __webpack_require__("25BE"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread(); } /***/ }), /***/ "NMb1": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["deprecated"]; }()); /***/ }), /***/ "ODXe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js var arrayWithHoles = __webpack_require__("DSFK"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js var nonIterableRest = __webpack_require__("PYwp"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])(); } /***/ }), /***/ "PYwp": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; }); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } /***/ }), /***/ "SLVX": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return symbolObservablePonyfill; }); function symbolObservablePonyfill(root) { var result; var Symbol = root.Symbol; if (typeof Symbol === 'function') { if (Symbol.observable) { result = Symbol.observable; } else { result = Symbol('observable'); Symbol.observable = result; } } else { result = '@@observable'; } return result; }; /***/ }), /***/ "XI5e": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["priorityQueue"]; }()); /***/ }), /***/ "XIDh": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["reduxRoutine"]; }()); /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "a3WO": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; }); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "bCCX": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(global, module) {/* harmony import */ var _ponyfill_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("SLVX"); /* global window */ var root; if (typeof self !== 'undefined') { root = self; } else if (typeof window !== 'undefined') { root = window; } else if (typeof global !== 'undefined') { root = global; } else if (true) { root = module; } else {} var result = Object(_ponyfill_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(root); /* harmony default export */ __webpack_exports__["a"] = (result); /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("yLpj"), __webpack_require__("3UD+")(module))) /***/ }), /***/ "cDcd": /***/ (function(module, exports) { (function() { module.exports = this["React"]; }()); /***/ }), /***/ "dvlR": /***/ (function(module, exports) { (function() { module.exports = this["regeneratorRuntime"]; }()); /***/ }), /***/ "pfJ3": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "withSelect", function() { return /* reexport */ with_select; }); __webpack_require__.d(__webpack_exports__, "withDispatch", function() { return /* reexport */ with_dispatch; }); __webpack_require__.d(__webpack_exports__, "withRegistry", function() { return /* reexport */ with_registry; }); __webpack_require__.d(__webpack_exports__, "RegistryProvider", function() { return /* reexport */ context; }); __webpack_require__.d(__webpack_exports__, "RegistryConsumer", function() { return /* reexport */ RegistryConsumer; }); __webpack_require__.d(__webpack_exports__, "useRegistry", function() { return /* reexport */ useRegistry; }); __webpack_require__.d(__webpack_exports__, "useSelect", function() { return /* reexport */ useSelect; }); __webpack_require__.d(__webpack_exports__, "useDispatch", function() { return /* reexport */ use_dispatch; }); __webpack_require__.d(__webpack_exports__, "__unstableUseDispatchWithMap", function() { return /* reexport */ use_dispatch_with_map; }); __webpack_require__.d(__webpack_exports__, "AsyncModeProvider", function() { return /* reexport */ async_mode_provider_context; }); __webpack_require__.d(__webpack_exports__, "createRegistry", function() { return /* reexport */ createRegistry; }); __webpack_require__.d(__webpack_exports__, "createRegistrySelector", function() { return /* reexport */ createRegistrySelector; }); __webpack_require__.d(__webpack_exports__, "createRegistryControl", function() { return /* reexport */ createRegistryControl; }); __webpack_require__.d(__webpack_exports__, "plugins", function() { return /* reexport */ plugins_namespaceObject; }); __webpack_require__.d(__webpack_exports__, "combineReducers", function() { return /* reexport */ turbo_combine_reducers_default.a; }); __webpack_require__.d(__webpack_exports__, "select", function() { return /* binding */ build_module_select; }); __webpack_require__.d(__webpack_exports__, "__experimentalResolveSelect", function() { return /* binding */ build_module_experimentalResolveSelect; }); __webpack_require__.d(__webpack_exports__, "dispatch", function() { return /* binding */ build_module_dispatch; }); __webpack_require__.d(__webpack_exports__, "subscribe", function() { return /* binding */ build_module_subscribe; }); __webpack_require__.d(__webpack_exports__, "registerGenericStore", function() { return /* binding */ build_module_registerGenericStore; }); __webpack_require__.d(__webpack_exports__, "registerStore", function() { return /* binding */ build_module_registerStore; }); __webpack_require__.d(__webpack_exports__, "use", function() { return /* binding */ build_module_use; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/selectors.js var selectors_namespaceObject = {}; __webpack_require__.r(selectors_namespaceObject); __webpack_require__.d(selectors_namespaceObject, "getIsResolving", function() { return getIsResolving; }); __webpack_require__.d(selectors_namespaceObject, "hasStartedResolution", function() { return hasStartedResolution; }); __webpack_require__.d(selectors_namespaceObject, "hasFinishedResolution", function() { return hasFinishedResolution; }); __webpack_require__.d(selectors_namespaceObject, "isResolving", function() { return isResolving; }); __webpack_require__.d(selectors_namespaceObject, "getCachedResolvers", function() { return getCachedResolvers; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/actions.js var actions_namespaceObject = {}; __webpack_require__.r(actions_namespaceObject); __webpack_require__.d(actions_namespaceObject, "startResolution", function() { return startResolution; }); __webpack_require__.d(actions_namespaceObject, "finishResolution", function() { return finishResolution; }); __webpack_require__.d(actions_namespaceObject, "invalidateResolution", function() { return invalidateResolution; }); __webpack_require__.d(actions_namespaceObject, "invalidateResolutionForStore", function() { return invalidateResolutionForStore; }); __webpack_require__.d(actions_namespaceObject, "invalidateResolutionForStoreSelector", function() { return invalidateResolutionForStoreSelector; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/data/build-module/plugins/index.js var plugins_namespaceObject = {}; __webpack_require__.r(plugins_namespaceObject); __webpack_require__.d(plugins_namespaceObject, "controls", function() { return controls; }); __webpack_require__.d(plugins_namespaceObject, "persistence", function() { return plugins_persistence; }); // EXTERNAL MODULE: ./node_modules/turbo-combine-reducers/index.js var turbo_combine_reducers = __webpack_require__("8mpt"); var turbo_combine_reducers_default = /*#__PURE__*/__webpack_require__.n(turbo_combine_reducers); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__("ODXe"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // EXTERNAL MODULE: ./node_modules/memize/index.js var memize = __webpack_require__("4eJC"); var memize_default = /*#__PURE__*/__webpack_require__.n(memize); // EXTERNAL MODULE: external {"this":"regeneratorRuntime"} var external_this_regeneratorRuntime_ = __webpack_require__("dvlR"); var external_this_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_this_regeneratorRuntime_); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js var asyncToGenerator = __webpack_require__("HaE+"); // EXTERNAL MODULE: ./node_modules/symbol-observable/es/index.js var es = __webpack_require__("bCCX"); // CONCATENATED MODULE: ./node_modules/redux/es/redux.js /** * These are private action types reserved by Redux. * For any unknown actions, you must return the current state. * If the current state is undefined, you must return the initial state. * Do not reference these action types directly in your code. */ var randomString = function randomString() { return Math.random().toString(36).substring(7).split('').join('.'); }; var ActionTypes = { INIT: "@@redux/INIT" + randomString(), REPLACE: "@@redux/REPLACE" + randomString(), PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() { return "@@redux/PROBE_UNKNOWN_ACTION" + randomString(); } }; /** * @param {any} obj The object to inspect. * @returns {boolean} True if the argument appears to be a plain object. */ function isPlainObject(obj) { if (typeof obj !== 'object' || obj === null) return false; var proto = obj; while (Object.getPrototypeOf(proto) !== null) { proto = Object.getPrototypeOf(proto); } return Object.getPrototypeOf(obj) === proto; } /** * Creates a Redux store that holds the state tree. * The only way to change the data in the store is to call `dispatch()` on it. * * There should only be a single store in your app. To specify how different * parts of the state tree respond to actions, you may combine several reducers * into a single reducer function by using `combineReducers`. * * @param {Function} reducer A function that returns the next state tree, given * the current state tree and the action to handle. * * @param {any} [preloadedState] The initial state. You may optionally specify it * to hydrate the state from the server in universal apps, or to restore a * previously serialized user session. * If you use `combineReducers` to produce the root reducer function, this must be * an object with the same shape as `combineReducers` keys. * * @param {Function} [enhancer] The store enhancer. You may optionally specify it * to enhance the store with third-party capabilities such as middleware, * time travel, persistence, etc. The only store enhancer that ships with Redux * is `applyMiddleware()`. * * @returns {Store} A Redux store that lets you read the state, dispatch actions * and subscribe to changes. */ function createStore(reducer, preloadedState, enhancer) { var _ref2; if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') { throw new Error('It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function.'); } if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') { enhancer = preloadedState; preloadedState = undefined; } if (typeof enhancer !== 'undefined') { if (typeof enhancer !== 'function') { throw new Error('Expected the enhancer to be a function.'); } return enhancer(createStore)(reducer, preloadedState); } if (typeof reducer !== 'function') { throw new Error('Expected the reducer to be a function.'); } var currentReducer = reducer; var currentState = preloadedState; var currentListeners = []; var nextListeners = currentListeners; var isDispatching = false; /** * This makes a shallow copy of currentListeners so we can use * nextListeners as a temporary list while dispatching. * * This prevents any bugs around consumers calling * subscribe/unsubscribe in the middle of a dispatch. */ function ensureCanMutateNextListeners() { if (nextListeners === currentListeners) { nextListeners = currentListeners.slice(); } } /** * Reads the state tree managed by the store. * * @returns {any} The current state tree of your application. */ function getState() { if (isDispatching) { throw new Error('You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.'); } return currentState; } /** * Adds a change listener. It will be called any time an action is dispatched, * and some part of the state tree may potentially have changed. You may then * call `getState()` to read the current state tree inside the callback. * * You may call `dispatch()` from a change listener, with the following * caveats: * * 1. The subscriptions are snapshotted just before every `dispatch()` call. * If you subscribe or unsubscribe while the listeners are being invoked, this * will not have any effect on the `dispatch()` that is currently in progress. * However, the next `dispatch()` call, whether nested or not, will use a more * recent snapshot of the subscription list. * * 2. The listener should not expect to see all state changes, as the state * might have been updated multiple times during a nested `dispatch()` before * the listener is called. It is, however, guaranteed that all subscribers * registered before the `dispatch()` started will be called with the latest * state by the time it exits. * * @param {Function} listener A callback to be invoked on every dispatch. * @returns {Function} A function to remove this change listener. */ function subscribe(listener) { if (typeof listener !== 'function') { throw new Error('Expected the listener to be a function.'); } if (isDispatching) { throw new Error('You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.'); } var isSubscribed = true; ensureCanMutateNextListeners(); nextListeners.push(listener); return function unsubscribe() { if (!isSubscribed) { return; } if (isDispatching) { throw new Error('You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api-reference/store#subscribelistener for more details.'); } isSubscribed = false; ensureCanMutateNextListeners(); var index = nextListeners.indexOf(listener); nextListeners.splice(index, 1); currentListeners = null; }; } /** * Dispatches an action. It is the only way to trigger a state change. * * The `reducer` function, used to create the store, will be called with the * current state tree and the given `action`. Its return value will * be considered the **next** state of the tree, and the change listeners * will be notified. * * The base implementation only supports plain object actions. If you want to * dispatch a Promise, an Observable, a thunk, or something else, you need to * wrap your store creating function into the corresponding middleware. For * example, see the documentation for the `redux-thunk` package. Even the * middleware will eventually dispatch plain object actions using this method. * * @param {Object} action A plain object representing “what changed”. It is * a good idea to keep actions serializable so you can record and replay user * sessions, or use the time travelling `redux-devtools`. An action must have * a `type` property which may not be `undefined`. It is a good idea to use * string constants for action types. * * @returns {Object} For convenience, the same action object you dispatched. * * Note that, if you use a custom middleware, it may wrap `dispatch()` to * return something else (for example, a Promise you can await). */ function dispatch(action) { if (!isPlainObject(action)) { throw new Error('Actions must be plain objects. ' + 'Use custom middleware for async actions.'); } if (typeof action.type === 'undefined') { throw new Error('Actions may not have an undefined "type" property. ' + 'Have you misspelled a constant?'); } if (isDispatching) { throw new Error('Reducers may not dispatch actions.'); } try { isDispatching = true; currentState = currentReducer(currentState, action); } finally { isDispatching = false; } var listeners = currentListeners = nextListeners; for (var i = 0; i < listeners.length; i++) { var listener = listeners[i]; listener(); } return action; } /** * Replaces the reducer currently used by the store to calculate the state. * * You might need this if your app implements code splitting and you want to * load some of the reducers dynamically. You might also need this if you * implement a hot reloading mechanism for Redux. * * @param {Function} nextReducer The reducer for the store to use instead. * @returns {void} */ function replaceReducer(nextReducer) { if (typeof nextReducer !== 'function') { throw new Error('Expected the nextReducer to be a function.'); } currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT. // Any reducers that existed in both the new and old rootReducer // will receive the previous state. This effectively populates // the new state tree with any relevant data from the old one. dispatch({ type: ActionTypes.REPLACE }); } /** * Interoperability point for observable/reactive libraries. * @returns {observable} A minimal observable of state changes. * For more information, see the observable proposal: * https://github.com/tc39/proposal-observable */ function observable() { var _ref; var outerSubscribe = subscribe; return _ref = { /** * The minimal observable subscription method. * @param {Object} observer Any object that can be used as an observer. * The observer object should have a `next` method. * @returns {subscription} An object with an `unsubscribe` method that can * be used to unsubscribe the observable from the store, and prevent further * emission of values from the observable. */ subscribe: function subscribe(observer) { if (typeof observer !== 'object' || observer === null) { throw new TypeError('Expected the observer to be an object.'); } function observeState() { if (observer.next) { observer.next(getState()); } } observeState(); var unsubscribe = outerSubscribe(observeState); return { unsubscribe: unsubscribe }; } }, _ref[es["a" /* default */]] = function () { return this; }, _ref; } // When a store is created, an "INIT" action is dispatched so that every // reducer returns their initial state. This effectively populates // the initial state tree. dispatch({ type: ActionTypes.INIT }); return _ref2 = { dispatch: dispatch, subscribe: subscribe, getState: getState, replaceReducer: replaceReducer }, _ref2[es["a" /* default */]] = observable, _ref2; } /** * Prints a warning in the console if it exists. * * @param {String} message The warning message. * @returns {void} */ function warning(message) { /* eslint-disable no-console */ if (typeof console !== 'undefined' && typeof console.error === 'function') { console.error(message); } /* eslint-enable no-console */ try { // This error was thrown as a convenience so that if you enable // "break on all exceptions" in your console, // it would pause the execution at this line. throw new Error(message); } catch (e) {} // eslint-disable-line no-empty } function getUndefinedStateErrorMessage(key, action) { var actionType = action && action.type; var actionDescription = actionType && "action \"" + String(actionType) + "\"" || 'an action'; return "Given " + actionDescription + ", reducer \"" + key + "\" returned undefined. " + "To ignore an action, you must explicitly return the previous state. " + "If you want this reducer to hold no value, you can return null instead of undefined."; } function getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) { var reducerKeys = Object.keys(reducers); var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer'; if (reducerKeys.length === 0) { return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.'; } if (!isPlainObject(inputState)) { return "The " + argumentName + " has unexpected type of \"" + {}.toString.call(inputState).match(/\s([a-z|A-Z]+)/)[1] + "\". Expected argument to be an object with the following " + ("keys: \"" + reducerKeys.join('", "') + "\""); } var unexpectedKeys = Object.keys(inputState).filter(function (key) { return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key]; }); unexpectedKeys.forEach(function (key) { unexpectedKeyCache[key] = true; }); if (action && action.type === ActionTypes.REPLACE) return; if (unexpectedKeys.length > 0) { return "Unexpected " + (unexpectedKeys.length > 1 ? 'keys' : 'key') + " " + ("\"" + unexpectedKeys.join('", "') + "\" found in " + argumentName + ". ") + "Expected to find one of the known reducer keys instead: " + ("\"" + reducerKeys.join('", "') + "\". Unexpected keys will be ignored."); } } function assertReducerShape(reducers) { Object.keys(reducers).forEach(function (key) { var reducer = reducers[key]; var initialState = reducer(undefined, { type: ActionTypes.INIT }); if (typeof initialState === 'undefined') { throw new Error("Reducer \"" + key + "\" returned undefined during initialization. " + "If the state passed to the reducer is undefined, you must " + "explicitly return the initial state. The initial state may " + "not be undefined. If you don't want to set a value for this reducer, " + "you can use null instead of undefined."); } if (typeof reducer(undefined, { type: ActionTypes.PROBE_UNKNOWN_ACTION() }) === 'undefined') { throw new Error("Reducer \"" + key + "\" returned undefined when probed with a random type. " + ("Don't try to handle " + ActionTypes.INIT + " or other actions in \"redux/*\" ") + "namespace. They are considered private. Instead, you must return the " + "current state for any unknown actions, unless it is undefined, " + "in which case you must return the initial state, regardless of the " + "action type. The initial state may not be undefined, but can be null."); } }); } /** * Turns an object whose values are different reducer functions, into a single * reducer function. It will call every child reducer, and gather their results * into a single state object, whose keys correspond to the keys of the passed * reducer functions. * * @param {Object} reducers An object whose values correspond to different * reducer functions that need to be combined into one. One handy way to obtain * it is to use ES6 `import * as reducers` syntax. The reducers may never return * undefined for any action. Instead, they should return their initial state * if the state passed to them was undefined, and the current state for any * unrecognized action. * * @returns {Function} A reducer function that invokes every reducer inside the * passed object, and builds a state object with the same shape. */ function combineReducers(reducers) { var reducerKeys = Object.keys(reducers); var finalReducers = {}; for (var i = 0; i < reducerKeys.length; i++) { var key = reducerKeys[i]; if (false) {} if (typeof reducers[key] === 'function') { finalReducers[key] = reducers[key]; } } var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same // keys multiple times. var unexpectedKeyCache; if (false) {} var shapeAssertionError; try { assertReducerShape(finalReducers); } catch (e) { shapeAssertionError = e; } return function combination(state, action) { if (state === void 0) { state = {}; } if (shapeAssertionError) { throw shapeAssertionError; } if (false) { var warningMessage; } var hasChanged = false; var nextState = {}; for (var _i = 0; _i < finalReducerKeys.length; _i++) { var _key = finalReducerKeys[_i]; var reducer = finalReducers[_key]; var previousStateForKey = state[_key]; var nextStateForKey = reducer(previousStateForKey, action); if (typeof nextStateForKey === 'undefined') { var errorMessage = getUndefinedStateErrorMessage(_key, action); throw new Error(errorMessage); } nextState[_key] = nextStateForKey; hasChanged = hasChanged || nextStateForKey !== previousStateForKey; } hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length; return hasChanged ? nextState : state; }; } function bindActionCreator(actionCreator, dispatch) { return function () { return dispatch(actionCreator.apply(this, arguments)); }; } /** * Turns an object whose values are action creators, into an object with the * same keys, but with every function wrapped into a `dispatch` call so they * may be invoked directly. This is just a convenience method, as you can call * `store.dispatch(MyActionCreators.doSomething())` yourself just fine. * * For convenience, you can also pass an action creator as the first argument, * and get a dispatch wrapped function in return. * * @param {Function|Object} actionCreators An object whose values are action * creator functions. One handy way to obtain it is to use ES6 `import * as` * syntax. You may also pass a single function. * * @param {Function} dispatch The `dispatch` function available on your Redux * store. * * @returns {Function|Object} The object mimicking the original object, but with * every action creator wrapped into the `dispatch` call. If you passed a * function as `actionCreators`, the return value will also be a single * function. */ function bindActionCreators(actionCreators, dispatch) { if (typeof actionCreators === 'function') { return bindActionCreator(actionCreators, dispatch); } if (typeof actionCreators !== 'object' || actionCreators === null) { throw new Error("bindActionCreators expected an object or a function, instead received " + (actionCreators === null ? 'null' : typeof actionCreators) + ". " + "Did you write \"import ActionCreators from\" instead of \"import * as ActionCreators from\"?"); } var boundActionCreators = {}; for (var key in actionCreators) { var actionCreator = actionCreators[key]; if (typeof actionCreator === 'function') { boundActionCreators[key] = bindActionCreator(actionCreator, dispatch); } } return boundActionCreators; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { keys.push.apply(keys, Object.getOwnPropertySymbols(object)); } if (enumerableOnly) keys = keys.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); return keys; } function _objectSpread2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Composes single-argument functions from right to left. The rightmost * function can take multiple arguments as it provides the signature for * the resulting composite function. * * @param {...Function} funcs The functions to compose. * @returns {Function} A function obtained by composing the argument functions * from right to left. For example, compose(f, g, h) is identical to doing * (...args) => f(g(h(...args))). */ function compose() { for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) { funcs[_key] = arguments[_key]; } if (funcs.length === 0) { return function (arg) { return arg; }; } if (funcs.length === 1) { return funcs[0]; } return funcs.reduce(function (a, b) { return function () { return a(b.apply(void 0, arguments)); }; }); } /** * Creates a store enhancer that applies middleware to the dispatch method * of the Redux store. This is handy for a variety of tasks, such as expressing * asynchronous actions in a concise manner, or logging every action payload. * * See `redux-thunk` package as an example of the Redux middleware. * * Because middleware is potentially asynchronous, this should be the first * store enhancer in the composition chain. * * Note that each middleware will be given the `dispatch` and `getState` functions * as named arguments. * * @param {...Function} middlewares The middleware chain to be applied. * @returns {Function} A store enhancer applying the middleware. */ function applyMiddleware() { for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) { middlewares[_key] = arguments[_key]; } return function (createStore) { return function () { var store = createStore.apply(void 0, arguments); var _dispatch = function dispatch() { throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.'); }; var middlewareAPI = { getState: store.getState, dispatch: function dispatch() { return _dispatch.apply(void 0, arguments); } }; var chain = middlewares.map(function (middleware) { return middleware(middlewareAPI); }); _dispatch = compose.apply(void 0, chain)(store.dispatch); return _objectSpread2({}, store, { dispatch: _dispatch }); }; }; } /* * This is a dummy function to check if the function name has been altered by minification. * If the function has been minified and NODE_ENV !== 'production', warn the user. */ function isCrushed() {} if (false) {} // EXTERNAL MODULE: external {"this":["wp","reduxRoutine"]} var external_this_wp_reduxRoutine_ = __webpack_require__("XIDh"); var external_this_wp_reduxRoutine_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_reduxRoutine_); // EXTERNAL MODULE: ./node_modules/is-promise/index.js var is_promise = __webpack_require__("JlUD"); var is_promise_default = /*#__PURE__*/__webpack_require__.n(is_promise); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/promise-middleware.js /** * External dependencies */ /** * Simplest possible promise redux middleware. * * @return {Function} middleware. */ var promise_middleware_promiseMiddleware = function promiseMiddleware() { return function (next) { return function (action) { if (is_promise_default()(action)) { return action.then(function (resolvedAction) { if (resolvedAction) { return next(resolvedAction); } }); } return next(action); }; }; }; /* harmony default export */ var promise_middleware = (promise_middleware_promiseMiddleware); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules var toConsumableArray = __webpack_require__("KQm4"); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/resolvers-cache-middleware.js /** * External dependencies */ /** @typedef {import('./registry').WPDataRegistry} WPDataRegistry */ /** * Creates a middleware handling resolvers cache invalidation. * * @param {WPDataRegistry} registry The registry reference for which to create * the middleware. * @param {string} reducerKey The namespace for which to create the * middleware. * * @return {Function} Middleware function. */ var resolvers_cache_middleware_createResolversCacheMiddleware = function createResolversCacheMiddleware(registry, reducerKey) { return function () { return function (next) { return function (action) { var resolvers = registry.select('core/data').getCachedResolvers(reducerKey); Object.entries(resolvers).forEach(function (_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 2), selectorName = _ref2[0], resolversByArgs = _ref2[1]; var resolver = Object(external_this_lodash_["get"])(registry.stores, [reducerKey, 'resolvers', selectorName]); if (!resolver || !resolver.shouldInvalidate) { return; } resolversByArgs.forEach(function (value, args) { // resolversByArgs is the map Map([ args ] => boolean) storing the cache resolution status for a given selector. // If the value is false it means this resolver has finished its resolution which means we need to invalidate it, // if it's true it means it's inflight and the invalidation is not necessary. if (value !== false || !resolver.shouldInvalidate.apply(resolver, [action].concat(Object(toConsumableArray["a" /* default */])(args)))) { return; } // Trigger cache invalidation registry.dispatch('core/data').invalidateResolution(reducerKey, selectorName, args); }); }); return next(action); }; }; }; }; /* harmony default export */ var resolvers_cache_middleware = (resolvers_cache_middleware_createResolversCacheMiddleware); // EXTERNAL MODULE: ./node_modules/equivalent-key-map/equivalent-key-map.js var equivalent_key_map = __webpack_require__("FtRg"); var equivalent_key_map_default = /*#__PURE__*/__webpack_require__.n(equivalent_key_map); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/utils.js function utils_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { utils_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { utils_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Higher-order reducer creator which creates a combined reducer object, keyed * by a property on the action object. * * @param {string} actionProperty Action property by which to key object. * * @return {Function} Higher-order reducer. */ var utils_onSubKey = function onSubKey(actionProperty) { return function (reducer) { return function () { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; // Retrieve subkey from action. Do not track if undefined; useful for cases // where reducer is scoped by action shape. var key = action[actionProperty]; if (key === undefined) { return state; } // Avoid updating state if unchanged. Note that this also accounts for a // reducer which returns undefined on a key which is not yet tracked. var nextKeyState = reducer(state[key], action); if (nextKeyState === state[key]) { return state; } return _objectSpread({}, state, Object(defineProperty["a" /* default */])({}, key, nextKeyState)); }; }; }; // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/reducer.js /** * External dependencies */ /** * Internal dependencies */ /** * Reducer function returning next state for selector resolution of * subkeys, object form: * * selectorName -> EquivalentKeyMap * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Next state. */ var subKeysIsResolved = Object(external_this_lodash_["flowRight"])([utils_onSubKey('selectorName')])(function () { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new equivalent_key_map_default.a(); var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'START_RESOLUTION': case 'FINISH_RESOLUTION': { var isStarting = action.type === 'START_RESOLUTION'; var nextState = new equivalent_key_map_default.a(state); nextState.set(action.args, isStarting); return nextState; } case 'INVALIDATE_RESOLUTION': { var _nextState = new equivalent_key_map_default.a(state); _nextState.delete(action.args); return _nextState; } } return state; }); /** * Reducer function returning next state for selector resolution, object form: * * selectorName -> EquivalentKeyMap * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Next state. */ var reducer_isResolved = function isResolved() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'INVALIDATE_RESOLUTION_FOR_STORE': return {}; case 'INVALIDATE_RESOLUTION_FOR_STORE_SELECTOR': return Object(external_this_lodash_["has"])(state, [action.selectorName]) ? Object(external_this_lodash_["omit"])(state, [action.selectorName]) : state; case 'START_RESOLUTION': case 'FINISH_RESOLUTION': case 'INVALIDATE_RESOLUTION': return subKeysIsResolved(state, action); } return state; }; /* harmony default export */ var metadata_reducer = (reducer_isResolved); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/selectors.js /** * External dependencies */ /** * Returns the raw `isResolving` value for a given selector name, * and arguments set. May be undefined if the selector has never been resolved * or not resolved for the given set of arguments, otherwise true or false for * resolution started and completed respectively. * * @param {Object} state Data state. * @param {string} selectorName Selector name. * @param {Array} args Arguments passed to selector. * * @return {?boolean} isResolving value. */ function getIsResolving(state, selectorName, args) { var map = Object(external_this_lodash_["get"])(state, [selectorName]); if (!map) { return; } return map.get(args); } /** * Returns true if resolution has already been triggered for a given * selector name, and arguments set. * * @param {Object} state Data state. * @param {string} selectorName Selector name. * @param {?Array} args Arguments passed to selector (default `[]`). * * @return {boolean} Whether resolution has been triggered. */ function hasStartedResolution(state, selectorName) { var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; return getIsResolving(state, selectorName, args) !== undefined; } /** * Returns true if resolution has completed for a given selector * name, and arguments set. * * @param {Object} state Data state. * @param {string} selectorName Selector name. * @param {?Array} args Arguments passed to selector. * * @return {boolean} Whether resolution has completed. */ function hasFinishedResolution(state, selectorName) { var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; return getIsResolving(state, selectorName, args) === false; } /** * Returns true if resolution has been triggered but has not yet completed for * a given selector name, and arguments set. * * @param {Object} state Data state. * @param {string} selectorName Selector name. * @param {?Array} args Arguments passed to selector. * * @return {boolean} Whether resolution is in progress. */ function isResolving(state, selectorName) { var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; return getIsResolving(state, selectorName, args) === true; } /** * Returns the list of the cached resolvers. * * @param {Object} state Data state. * * @return {Object} Resolvers mapped by args and selectorName. */ function getCachedResolvers(state) { return state; } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/namespace-store/metadata/actions.js /** * Returns an action object used in signalling that selector resolution has * started. * * @param {string} selectorName Name of selector for which resolver triggered. * @param {...*} args Arguments to associate for uniqueness. * * @return {Object} Action object. */ function startResolution(selectorName, args) { return { type: 'START_RESOLUTION', selectorName: selectorName, args: args }; } /** * Returns an action object used in signalling that selector resolution has * completed. * * @param {string} selectorName Name of selector for which resolver triggered. * @param {...*} args Arguments to associate for uniqueness. * * @return {Object} Action object. */ function finishResolution(selectorName, args) { return { type: 'FINISH_RESOLUTION', selectorName: selectorName, args: args }; } /** * Returns an action object used in signalling that we should invalidate the resolution cache. * * @param {string} selectorName Name of selector for which resolver should be invalidated. * @param {Array} args Arguments to associate for uniqueness. * * @return {Object} Action object. */ function invalidateResolution(selectorName, args) { return { type: 'INVALIDATE_RESOLUTION', selectorName: selectorName, args: args }; } /** * Returns an action object used in signalling that the resolution * should be invalidated. * * @return {Object} Action object. */ function invalidateResolutionForStore() { return { type: 'INVALIDATE_RESOLUTION_FOR_STORE' }; } /** * Returns an action object used in signalling that the resolution cache for a * given selectorName should be invalidated. * * @param {string} selectorName Name of selector for which all resolvers should * be invalidated. * * @return {Object} Action object. */ function invalidateResolutionForStoreSelector(selectorName) { return { type: 'INVALIDATE_RESOLUTION_FOR_STORE_SELECTOR', selectorName: selectorName }; } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/namespace-store/index.js function namespace_store_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function namespace_store_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { namespace_store_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { namespace_store_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * @typedef {WPDataRegistry} WPDataRegistry */ /** * Creates a namespace object with a store derived from the reducer given. * * @param {string} key Unique namespace identifier. * @param {Object} options Registered store options, with properties * describing reducer, actions, selectors, and * resolvers. * @param {WPDataRegistry} registry Registry reference. * * @return {Object} Store Object. */ function createNamespace(key, options, registry) { var reducer = options.reducer; var store = createReduxStore(key, options, registry); var resolvers; var actions = mapActions(namespace_store_objectSpread({}, actions_namespaceObject, {}, options.actions), store); var selectors = mapSelectors(namespace_store_objectSpread({}, Object(external_this_lodash_["mapValues"])(selectors_namespaceObject, function (selector) { return function (state) { for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return selector.apply(void 0, [state.metadata].concat(args)); }; }), {}, Object(external_this_lodash_["mapValues"])(options.selectors, function (selector) { if (selector.isRegistrySelector) { selector.registry = registry; } return function (state) { for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } return selector.apply(void 0, [state.root].concat(args)); }; })), store); if (options.resolvers) { var result = mapResolvers(options.resolvers, selectors, store); resolvers = result.resolvers; selectors = result.selectors; } var getSelectors = function getSelectors() { return selectors; }; var getActions = function getActions() { return actions; }; // We have some modules monkey-patching the store object // It's wrong to do so but until we refactor all of our effects to controls // We need to keep the same "store" instance here. store.__unstableOriginalGetState = store.getState; store.getState = function () { return store.__unstableOriginalGetState().root; }; // Customize subscribe behavior to call listeners only on effective change, // not on every dispatch. var subscribe = store && function (listener) { var lastState = store.__unstableOriginalGetState(); store.subscribe(function () { var state = store.__unstableOriginalGetState(); var hasChanged = state !== lastState; lastState = state; if (hasChanged) { listener(); } }); }; // This can be simplified to just { subscribe, getSelectors, getActions } // Once we remove the use function. return { reducer: reducer, store: store, actions: actions, selectors: selectors, resolvers: resolvers, getSelectors: getSelectors, getActions: getActions, subscribe: subscribe }; } /** * Creates a redux store for a namespace. * * @param {string} key Unique namespace identifier. * @param {Object} options Registered store options, with properties * describing reducer, actions, selectors, and * resolvers. * @param {WPDataRegistry} registry Registry reference. * * @return {Object} Newly created redux store. */ function createReduxStore(key, options, registry) { var middlewares = [resolvers_cache_middleware(registry, key), promise_middleware]; if (options.controls) { var normalizedControls = Object(external_this_lodash_["mapValues"])(options.controls, function (control) { return control.isRegistryControl ? control(registry) : control; }); middlewares.push(external_this_wp_reduxRoutine_default()(normalizedControls)); } var enhancers = [applyMiddleware.apply(void 0, middlewares)]; if (typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__) { enhancers.push(window.__REDUX_DEVTOOLS_EXTENSION__({ name: key, instanceId: key })); } var reducer = options.reducer, initialState = options.initialState; var enhancedReducer = turbo_combine_reducers_default()({ metadata: metadata_reducer, root: reducer }); return createStore(enhancedReducer, { root: initialState }, Object(external_this_lodash_["flowRight"])(enhancers)); } /** * Maps selectors to a store. * * @param {Object} selectors Selectors to register. Keys will be used as the * public facing API. Selectors will get passed the * state as first argument. * @param {Object} store The store to which the selectors should be mapped. * * @return {Object} Selectors mapped to the provided store. */ function mapSelectors(selectors, store) { var createStateSelector = function createStateSelector(registrySelector) { var selector = function runSelector() { // This function is an optimized implementation of: // // selector( store.getState(), ...arguments ) // // Where the above would incur an `Array#concat` in its application, // the logic here instead efficiently constructs an arguments array via // direct assignment. var argsLength = arguments.length; var args = new Array(argsLength + 1); args[0] = store.__unstableOriginalGetState(); for (var i = 0; i < argsLength; i++) { args[i + 1] = arguments[i]; } return registrySelector.apply(void 0, args); }; selector.hasResolver = false; return selector; }; return Object(external_this_lodash_["mapValues"])(selectors, createStateSelector); } /** * Maps actions to dispatch from a given store. * * @param {Object} actions Actions to register. * @param {Object} store The redux store to which the actions should be mapped. * @return {Object} Actions mapped to the redux store provided. */ function mapActions(actions, store) { var createBoundAction = function createBoundAction(action) { return function () { return Promise.resolve(store.dispatch(action.apply(void 0, arguments))); }; }; return Object(external_this_lodash_["mapValues"])(actions, createBoundAction); } /** * Returns resolvers with matched selectors for a given namespace. * Resolvers are side effects invoked once per argument set of a given selector call, * used in ensuring that the data needs for the selector are satisfied. * * @param {Object} resolvers Resolvers to register. * @param {Object} selectors The current selectors to be modified. * @param {Object} store The redux store to which the resolvers should be mapped. * @return {Object} An object containing updated selectors and resolvers. */ function mapResolvers(resolvers, selectors, store) { var mappedResolvers = Object(external_this_lodash_["mapValues"])(resolvers, function (resolver) { var _resolver$fulfill = resolver.fulfill, resolverFulfill = _resolver$fulfill === void 0 ? resolver : _resolver$fulfill; return namespace_store_objectSpread({}, resolver, { fulfill: resolverFulfill }); }); var mapSelector = function mapSelector(selector, selectorName) { var resolver = resolvers[selectorName]; if (!resolver) { selector.hasResolver = false; return selector; } var selectorResolver = function selectorResolver() { for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } function fulfillSelector() { return _fulfillSelector.apply(this, arguments); } function _fulfillSelector() { _fulfillSelector = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee() { var state, _store$__unstableOrig, metadata; return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: state = store.getState(); if (!(typeof resolver.isFulfilled === 'function' && resolver.isFulfilled.apply(resolver, [state].concat(args)))) { _context.next = 3; break; } return _context.abrupt("return"); case 3: _store$__unstableOrig = store.__unstableOriginalGetState(), metadata = _store$__unstableOrig.metadata; if (!hasStartedResolution(metadata, selectorName, args)) { _context.next = 6; break; } return _context.abrupt("return"); case 6: store.dispatch(startResolution(selectorName, args)); _context.next = 9; return fulfillResolver.apply(void 0, [store, mappedResolvers, selectorName].concat(args)); case 9: store.dispatch(finishResolution(selectorName, args)); case 10: case "end": return _context.stop(); } } }, _callee); })); return _fulfillSelector.apply(this, arguments); } fulfillSelector.apply(void 0, args); return selector.apply(void 0, args); }; selectorResolver.hasResolver = true; return selectorResolver; }; return { resolvers: mappedResolvers, selectors: Object(external_this_lodash_["mapValues"])(selectors, mapSelector) }; } /** * Calls a resolver given arguments * * @param {Object} store Store reference, for fulfilling via resolvers * @param {Object} resolvers Store Resolvers * @param {string} selectorName Selector name to fulfill. * @param {Array} args Selector Arguments. */ function fulfillResolver(_x, _x2, _x3) { return _fulfillResolver.apply(this, arguments); } function _fulfillResolver() { _fulfillResolver = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee2(store, resolvers, selectorName) { var resolver, _len4, args, _key4, action, _args2 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: resolver = Object(external_this_lodash_["get"])(resolvers, [selectorName]); if (resolver) { _context2.next = 3; break; } return _context2.abrupt("return"); case 3: for (_len4 = _args2.length, args = new Array(_len4 > 3 ? _len4 - 3 : 0), _key4 = 3; _key4 < _len4; _key4++) { args[_key4 - 3] = _args2[_key4]; } action = resolver.fulfill.apply(resolver, args); if (!action) { _context2.next = 8; break; } _context2.next = 8; return store.dispatch(action); case 8: case "end": return _context2.stop(); } } }, _callee2); })); return _fulfillResolver.apply(this, arguments); } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/store/index.js function store_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function store_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { store_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { store_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function createCoreDataStore(registry) { var getCoreDataSelector = function getCoreDataSelector(selectorName) { return function (reducerKey) { var _registry$select; for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return (_registry$select = registry.select(reducerKey))[selectorName].apply(_registry$select, args); }; }; var getCoreDataAction = function getCoreDataAction(actionName) { return function (reducerKey) { var _registry$dispatch; for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } return (_registry$dispatch = registry.dispatch(reducerKey))[actionName].apply(_registry$dispatch, args); }; }; return { getSelectors: function getSelectors() { return ['getIsResolving', 'hasStartedResolution', 'hasFinishedResolution', 'isResolving', 'getCachedResolvers'].reduce(function (memo, selectorName) { return store_objectSpread({}, memo, Object(defineProperty["a" /* default */])({}, selectorName, getCoreDataSelector(selectorName))); }, {}); }, getActions: function getActions() { return ['startResolution', 'finishResolution', 'invalidateResolution', 'invalidateResolutionForStore', 'invalidateResolutionForStoreSelector'].reduce(function (memo, actionName) { return store_objectSpread({}, memo, Object(defineProperty["a" /* default */])({}, actionName, getCoreDataAction(actionName))); }, {}); }, subscribe: function subscribe() { // There's no reasons to trigger any listener when we subscribe to this store // because there's no state stored in this store that need to retrigger selectors // if a change happens, the corresponding store where the tracking stated live // would have already triggered a "subscribe" call. return function () {}; } }; } /* harmony default export */ var build_module_store = (createCoreDataStore); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/registry.js function registry_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function registry_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { registry_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { registry_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Internal dependencies */ /** * @typedef {Object} WPDataRegistry An isolated orchestrator of store registrations. * * @property {Function} registerGenericStore Given a namespace key and settings * object, registers a new generic * store. * @property {Function} registerStore Given a namespace key and settings * object, registers a new namespace * store. * @property {Function} subscribe Given a function callback, invokes * the callback on any change to state * within any registered store. * @property {Function} select Given a namespace key, returns an * object of the store's registered * selectors. * @property {Function} dispatch Given a namespace key, returns an * object of the store's registered * action dispatchers. */ /** * @typedef {Object} WPDataPlugin An object of registry function overrides. */ /** * Creates a new store registry, given an optional object of initial store * configurations. * * @param {Object} storeConfigs Initial store configurations. * @param {Object?} parent Parent registry. * * @return {WPDataRegistry} Data registry. */ function createRegistry() { var storeConfigs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; var stores = {}; var listeners = []; /** * Global listener called for each store's update. */ function globalListener() { listeners.forEach(function (listener) { return listener(); }); } /** * Subscribe to changes to any data. * * @param {Function} listener Listener function. * * @return {Function} Unsubscribe function. */ var subscribe = function subscribe(listener) { listeners.push(listener); return function () { listeners = Object(external_this_lodash_["without"])(listeners, listener); }; }; /** * Calls a selector given the current state and extra arguments. * * @param {string} reducerKey Part of the state shape to register the * selectors for. * * @return {*} The selector's returned value. */ function select(reducerKey) { var store = stores[reducerKey]; if (store) { return store.getSelectors(); } return parent && parent.select(reducerKey); } var getResolveSelectors = memize_default()(function (selectors) { return Object(external_this_lodash_["mapValues"])(Object(external_this_lodash_["omit"])(selectors, ['getIsResolving', 'hasStartedResolution', 'hasFinishedResolution', 'isResolving', 'getCachedResolvers']), function (selector, selectorName) { return function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return new Promise(function (resolve) { var hasFinished = function hasFinished() { return selectors.hasFinishedResolution(selectorName, args); }; var getResult = function getResult() { return selector.apply(null, args); }; // trigger the selector (to trigger the resolver) var result = getResult(); if (hasFinished()) { return resolve(result); } var unsubscribe = subscribe(function () { if (hasFinished()) { unsubscribe(); resolve(getResult()); } }); }); }; }); }, { maxSize: 1 }); /** * Given the name of a registered store, returns an object containing the store's * selectors pre-bound to state so that you only need to supply additional arguments, * and modified so that they return promises that resolve to their eventual values, * after any resolvers have ran. * * @param {string} reducerKey Part of the state shape to register the * selectors for. * * @return {Object} Each key of the object matches the name of a selector. */ function __experimentalResolveSelect(reducerKey) { return getResolveSelectors(select(reducerKey)); } /** * Returns the available actions for a part of the state. * * @param {string} reducerKey Part of the state shape to dispatch the * action for. * * @return {*} The action's returned value. */ function dispatch(reducerKey) { var store = stores[reducerKey]; if (store) { return store.getActions(); } return parent && parent.dispatch(reducerKey); } // // Deprecated // TODO: Remove this after `use()` is removed. // function withPlugins(attributes) { return Object(external_this_lodash_["mapValues"])(attributes, function (attribute, key) { if (typeof attribute !== 'function') { return attribute; } return function () { return registry[key].apply(null, arguments); }; }); } /** * Registers a generic store. * * @param {string} key Store registry key. * @param {Object} config Configuration (getSelectors, getActions, subscribe). */ function registerGenericStore(key, config) { if (typeof config.getSelectors !== 'function') { throw new TypeError('config.getSelectors must be a function'); } if (typeof config.getActions !== 'function') { throw new TypeError('config.getActions must be a function'); } if (typeof config.subscribe !== 'function') { throw new TypeError('config.subscribe must be a function'); } stores[key] = config; config.subscribe(globalListener); } var registry = { registerGenericStore: registerGenericStore, stores: stores, namespaces: stores, // TODO: Deprecate/remove this. subscribe: subscribe, select: select, __experimentalResolveSelect: __experimentalResolveSelect, dispatch: dispatch, use: use }; /** * Registers a standard `@wordpress/data` store. * * @param {string} reducerKey Reducer key. * @param {Object} options Store description (reducer, actions, selectors, resolvers). * * @return {Object} Registered store object. */ registry.registerStore = function (reducerKey, options) { if (!options.reducer) { throw new TypeError('Must specify store reducer'); } var namespace = createNamespace(reducerKey, options, registry); registerGenericStore(reducerKey, namespace); return namespace.store; }; // // TODO: // This function will be deprecated as soon as it is no longer internally referenced. // function use(plugin, options) { registry = registry_objectSpread({}, registry, {}, plugin(registry, options)); return registry; } registerGenericStore('core/data', build_module_store(registry)); Object.entries(storeConfigs).forEach(function (_ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 2), name = _ref2[0], config = _ref2[1]; return registry.registerStore(name, config); }); if (parent) { parent.subscribe(globalListener); } return withPlugins(registry); } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/default-registry.js /** * Internal dependencies */ /* harmony default export */ var default_registry = (createRegistry()); // EXTERNAL MODULE: external {"this":["wp","deprecated"]} var external_this_wp_deprecated_ = __webpack_require__("NMb1"); var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/plugins/controls/index.js /** * WordPress dependencies */ /* harmony default export */ var controls = (function (registry) { external_this_wp_deprecated_default()('wp.data.plugins.controls', { hint: 'The controls plugins is now baked-in.' }); return registry; }); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/plugins/persistence/storage/object.js var objectStorage; var object_storage = { getItem: function getItem(key) { if (!objectStorage || !objectStorage[key]) { return null; } return objectStorage[key]; }, setItem: function setItem(key, value) { if (!objectStorage) { object_storage.clear(); } objectStorage[key] = String(value); }, clear: function clear() { objectStorage = Object.create(null); } }; /* harmony default export */ var object = (object_storage); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/plugins/persistence/storage/default.js /** * Internal dependencies */ var default_storage; try { // Private Browsing in Safari 10 and earlier will throw an error when // attempting to set into localStorage. The test here is intentional in // causing a thrown error as condition for using fallback object storage. default_storage = window.localStorage; default_storage.setItem('__wpDataTestLocalStorage', ''); default_storage.removeItem('__wpDataTestLocalStorage'); } catch (error) { default_storage = object; } /* harmony default export */ var storage_default = (default_storage); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/plugins/persistence/index.js function persistence_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function persistence_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { persistence_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { persistence_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Internal dependencies */ /** @typedef {import('../../registry').WPDataRegistry} WPDataRegistry */ /** @typedef {import('../../registry').WPDataPlugin} WPDataPlugin */ /** * @typedef {Object} WPDataPersistencePluginOptions Persistence plugin options. * * @property {Storage} storage Persistent storage implementation. This must * at least implement `getItem` and `setItem` of * the Web Storage API. * @property {string} storageKey Key on which to set in persistent storage. * */ /** * Default plugin storage. * * @type {Storage} */ var DEFAULT_STORAGE = storage_default; /** * Default plugin storage key. * * @type {string} */ var DEFAULT_STORAGE_KEY = 'WP_DATA'; /** * Higher-order reducer which invokes the original reducer only if state is * inequal from that of the action's `nextState` property, otherwise returning * the original state reference. * * @param {Function} reducer Original reducer. * * @return {Function} Enhanced reducer. */ var withLazySameState = function withLazySameState(reducer) { return function (state, action) { if (action.nextState === state) { return state; } return reducer(state, action); }; }; /** * Creates a persistence interface, exposing getter and setter methods (`get` * and `set` respectively). * * @param {WPDataPersistencePluginOptions} options Plugin options. * * @return {Object} Persistence interface. */ function createPersistenceInterface(options) { var _options$storage = options.storage, storage = _options$storage === void 0 ? DEFAULT_STORAGE : _options$storage, _options$storageKey = options.storageKey, storageKey = _options$storageKey === void 0 ? DEFAULT_STORAGE_KEY : _options$storageKey; var data; /** * Returns the persisted data as an object, defaulting to an empty object. * * @return {Object} Persisted data. */ function getData() { if (data === undefined) { // If unset, getItem is expected to return null. Fall back to // empty object. var persisted = storage.getItem(storageKey); if (persisted === null) { data = {}; } else { try { data = JSON.parse(persisted); } catch (error) { // Similarly, should any error be thrown during parse of // the string (malformed JSON), fall back to empty object. data = {}; } } } return data; } /** * Merges an updated reducer state into the persisted data. * * @param {string} key Key to update. * @param {*} value Updated value. */ function setData(key, value) { data = persistence_objectSpread({}, data, Object(defineProperty["a" /* default */])({}, key, value)); storage.setItem(storageKey, JSON.stringify(data)); } return { get: getData, set: setData }; } /** * Data plugin to persist store state into a single storage key. * * @param {WPDataRegistry} registry Data registry. * @param {?WPDataPersistencePluginOptions} pluginOptions Plugin options. * * @return {WPDataPlugin} Data plugin. */ var persistence_persistencePlugin = function persistencePlugin(registry, pluginOptions) { var persistence = createPersistenceInterface(pluginOptions); /** * Creates an enhanced store dispatch function, triggering the state of the * given reducer key to be persisted when changed. * * @param {Function} getState Function which returns current state. * @param {string} reducerKey Reducer key. * @param {?Array} keys Optional subset of keys to save. * * @return {Function} Enhanced dispatch function. */ function createPersistOnChange(getState, reducerKey, keys) { var getPersistedState; if (Array.isArray(keys)) { // Given keys, the persisted state should by produced as an object // of the subset of keys. This implementation uses combineReducers // to leverage its behavior of returning the same object when none // of the property values changes. This allows a strict reference // equality to bypass a persistence set on an unchanging state. var reducers = keys.reduce(function (accumulator, key) { return Object.assign(accumulator, Object(defineProperty["a" /* default */])({}, key, function (state, action) { return action.nextState[key]; })); }, {}); getPersistedState = withLazySameState(turbo_combine_reducers_default()(reducers)); } else { getPersistedState = function getPersistedState(state, action) { return action.nextState; }; } var lastState = getPersistedState(undefined, { nextState: getState() }); return function () { var state = getPersistedState(lastState, { nextState: getState() }); if (state !== lastState) { persistence.set(reducerKey, state); lastState = state; } }; } return { registerStore: function registerStore(reducerKey, options) { if (!options.persist) { return registry.registerStore(reducerKey, options); } // Load from persistence to use as initial state. var persistedState = persistence.get()[reducerKey]; if (persistedState !== undefined) { var initialState = options.reducer(undefined, { type: '@@WP/PERSISTENCE_RESTORE' }); if (Object(external_this_lodash_["isPlainObject"])(initialState) && Object(external_this_lodash_["isPlainObject"])(persistedState)) { // If state is an object, ensure that: // - Other keys are left intact when persisting only a // subset of keys. // - New keys in what would otherwise be used as initial // state are deeply merged as base for persisted value. initialState = Object(external_this_lodash_["merge"])({}, initialState, persistedState); } else { // If there is a mismatch in object-likeness of default // initial or persisted state, defer to persisted value. initialState = persistedState; } options = persistence_objectSpread({}, options, { initialState: initialState }); } var store = registry.registerStore(reducerKey, options); store.subscribe(createPersistOnChange(store.getState, reducerKey, options.persist)); return store; } }; }; /** * Deprecated: Remove this function and the code in WordPress Core that calls * it once WordPress 5.4 is released. */ persistence_persistencePlugin.__unstableMigrate = function (pluginOptions) { var persistence = createPersistenceInterface(pluginOptions); var state = persistence.get(); // Migrate 'insertUsage' from 'core/editor' to 'core/block-editor' var insertUsage = Object(external_this_lodash_["get"])(state, ['core/editor', 'preferences', 'insertUsage']); if (insertUsage) { persistence.set('core/block-editor', { preferences: { insertUsage: insertUsage } }); } var editPostState = state['core/edit-post']; // Default `fullscreenMode` to `false` if any persisted state had existed // and the user hadn't made an explicit choice about fullscreen mode. This // is needed since `fullscreenMode` previously did not have a default value // and was implicitly false by its absence. It is now `true` by default, but // this change is not intended to affect upgrades from earlier versions. var hadPersistedState = Object.keys(state).length > 0; var hadFullscreenModePreference = Object(external_this_lodash_["has"])(state, ['core/edit-post', 'preferences', 'features', 'fullscreenMode']); if (hadPersistedState && !hadFullscreenModePreference) { editPostState = Object(external_this_lodash_["merge"])({}, editPostState, { preferences: { features: { fullscreenMode: false } } }); } // Migrate 'areTipsEnabled' from 'core/nux' to 'showWelcomeGuide' in 'core/edit-post' var areTipsEnabled = Object(external_this_lodash_["get"])(state, ['core/nux', 'preferences', 'areTipsEnabled']); var hasWelcomeGuide = Object(external_this_lodash_["has"])(state, ['core/edit-post', 'preferences', 'features', 'welcomeGuide']); if (areTipsEnabled !== undefined && !hasWelcomeGuide) { editPostState = Object(external_this_lodash_["merge"])({}, editPostState, { preferences: { features: { welcomeGuide: areTipsEnabled } } }); } if (editPostState !== state['core/edit-post']) { persistence.set('core/edit-post', editPostState); } }; /* harmony default export */ var plugins_persistence = (persistence_persistencePlugin); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/plugins/index.js // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__("wx14"); // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // EXTERNAL MODULE: external {"this":["wp","compose"]} var external_this_wp_compose_ = __webpack_require__("K9lf"); // EXTERNAL MODULE: external {"this":"React"} var external_this_React_ = __webpack_require__("cDcd"); // CONCATENATED MODULE: ./node_modules/use-memo-one/dist/use-memo-one.esm.js function areInputsEqual(newInputs, lastInputs) { if (newInputs.length !== lastInputs.length) { return false; } for (var i = 0; i < newInputs.length; i++) { if (newInputs[i] !== lastInputs[i]) { return false; } } return true; } function useMemoOne(getResult, inputs) { var initial = Object(external_this_React_["useState"])(function () { return { inputs: inputs, result: getResult() }; })[0]; var committed = Object(external_this_React_["useRef"])(initial); var isInputMatch = Boolean(inputs && committed.current.inputs && areInputsEqual(inputs, committed.current.inputs)); var cache = isInputMatch ? committed.current : { inputs: inputs, result: getResult() }; Object(external_this_React_["useEffect"])(function () { committed.current = cache; }, [cache]); return cache.result; } function useCallbackOne(callback, inputs) { return useMemoOne(function () { return callback; }, inputs); } var useMemo = useMemoOne; var useCallback = useCallbackOne; // EXTERNAL MODULE: external {"this":["wp","priorityQueue"]} var external_this_wp_priorityQueue_ = __webpack_require__("XI5e"); // EXTERNAL MODULE: external {"this":["wp","isShallowEqual"]} var external_this_wp_isShallowEqual_ = __webpack_require__("rl8x"); var external_this_wp_isShallowEqual_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_isShallowEqual_); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/registry-provider/context.js /** * WordPress dependencies */ /** * Internal dependencies */ var Context = Object(external_this_wp_element_["createContext"])(default_registry); var Consumer = Context.Consumer, Provider = Context.Provider; /** * A custom react Context consumer exposing the provided `registry` to * children components. Used along with the RegistryProvider. * * You can read more about the react context api here: * https://reactjs.org/docs/context.html#contextprovider * * @example * ```js * const { * RegistryProvider, * RegistryConsumer, * createRegistry * } = wp.data; * * const registry = createRegistry( {} ); * * const App = ( { props } ) => { * return *
    Hello There
    * * { ( registry ) => ( * *
    * } * ``` */ var RegistryConsumer = Consumer; /** * A custom Context provider for exposing the provided `registry` to children * components via a consumer. * * See RegistryConsumer documentation for * example. */ /* harmony default export */ var context = (Provider); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/registry-provider/use-registry.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * A custom react hook exposing the registry context for use. * * This exposes the `registry` value provided via the * Registry Provider to a component implementing * this hook. * * It acts similarly to the `useContext` react hook. * * Note: Generally speaking, `useRegistry` is a low level hook that in most cases * won't be needed for implementation. Most interactions with the wp.data api * can be performed via the `useSelect` hook, or the `withSelect` and * `withDispatch` higher order components. * * @example * ```js * const { * RegistryProvider, * createRegistry, * useRegistry, * } = wp.data * * const registry = createRegistry( {} ); * * const SomeChildUsingRegistry = ( props ) => { * const registry = useRegistry( registry ); * // ...logic implementing the registry in other react hooks. * }; * * * const ParentProvidingRegistry = ( props ) => { * return * * * }; * ``` * * @return {Function} A custom react hook exposing the registry context value. */ function useRegistry() { return Object(external_this_wp_element_["useContext"])(Context); } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/async-mode-provider/context.js /** * WordPress dependencies */ var context_Context = Object(external_this_wp_element_["createContext"])(false); var context_Consumer = context_Context.Consumer, context_Provider = context_Context.Provider; var AsyncModeConsumer = context_Consumer; /** * Context Provider Component used to switch the data module component rerendering * between Sync and Async modes. * * @example * * ```js * import { useSelect, AsyncModeProvider } from '@wordpress/data'; * * function BlockCount() { * const count = useSelect( ( select ) => { * return select( 'core/block-editor' ).getBlockCount() * }, [] ); * * return count; * } * * function App() { * return ( * * * * ); * } * ``` * * In this example, the BlockCount component is rerendered asynchronously. * It means if a more critical task is being performed (like typing in an input), * the rerendering is delayed until the browser becomes IDLE. * It is possible to nest multiple levels of AsyncModeProvider to fine-tune the rendering behavior. * * @param {boolean} props.value Enable Async Mode. * @return {WPComponent} The component to be rendered. */ /* harmony default export */ var async_mode_provider_context = (context_Provider); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/async-mode-provider/use-async-mode.js /** * WordPress dependencies */ /** * Internal dependencies */ function useAsyncMode() { return Object(external_this_wp_element_["useContext"])(context_Context); } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/use-select/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Favor useLayoutEffect to ensure the store subscription callback always has * the selector from the latest render. If a store update happens between render * and the effect, this could cause missed/stale updates or inconsistent state. * * Fallback to useEffect for server rendered components because currently React * throws a warning when using useLayoutEffect in that environment. */ var useIsomorphicLayoutEffect = typeof window !== 'undefined' ? external_this_wp_element_["useLayoutEffect"] : external_this_wp_element_["useEffect"]; var renderQueue = Object(external_this_wp_priorityQueue_["createQueue"])(); /** * Custom react hook for retrieving props from registered selectors. * * In general, this custom React hook follows the * [rules of hooks](https://reactjs.org/docs/hooks-rules.html). * * @param {Function} _mapSelect Function called on every state change. The * returned value is exposed to the component * implementing this hook. The function receives * the `registry.select` method on the first * argument and the `registry` on the second * argument. * @param {Array} deps If provided, this memoizes the mapSelect so the * same `mapSelect` is invoked on every state * change unless the dependencies change. * * @example * ```js * const { useSelect } = wp.data; * * function HammerPriceDisplay( { currency } ) { * const price = useSelect( ( select ) => { * return select( 'my-shop' ).getPrice( 'hammer', currency ) * }, [ currency ] ); * return new Intl.NumberFormat( 'en-US', { * style: 'currency', * currency, * } ).format( price ); * } * * // Rendered in the application: * // * ``` * * In the above example, when `HammerPriceDisplay` is rendered into an * application, the price will be retrieved from the store state using the * `mapSelect` callback on `useSelect`. If the currency prop changes then * any price in the state for that currency is retrieved. If the currency prop * doesn't change and other props are passed in that do change, the price will * not change because the dependency is just the currency. * * @return {Function} A custom react hook. */ function useSelect(_mapSelect, deps) { var mapSelect = Object(external_this_wp_element_["useCallback"])(_mapSelect, deps); var registry = useRegistry(); var isAsync = useAsyncMode(); // React can sometimes clear the `useMemo` cache. // We use the cache-stable `useMemoOne` to avoid // losing queues. var queueContext = useMemoOne(function () { return { queue: true }; }, [registry]); var _useReducer = Object(external_this_wp_element_["useReducer"])(function (s) { return s + 1; }, 0), _useReducer2 = Object(slicedToArray["a" /* default */])(_useReducer, 2), forceRender = _useReducer2[1]; var latestMapSelect = Object(external_this_wp_element_["useRef"])(); var latestIsAsync = Object(external_this_wp_element_["useRef"])(isAsync); var latestMapOutput = Object(external_this_wp_element_["useRef"])(); var latestMapOutputError = Object(external_this_wp_element_["useRef"])(); var isMountedAndNotUnsubscribing = Object(external_this_wp_element_["useRef"])(); var mapOutput; try { if (latestMapSelect.current !== mapSelect || latestMapOutputError.current) { mapOutput = mapSelect(registry.select, registry); } else { mapOutput = latestMapOutput.current; } } catch (error) { var errorMessage = "An error occurred while running 'mapSelect': ".concat(error.message); if (latestMapOutputError.current) { errorMessage += "\nThe error may be correlated with this previous error:\n"; errorMessage += "".concat(latestMapOutputError.current.stack, "\n\n"); errorMessage += 'Original stack trace:'; throw new Error(errorMessage); } else { // eslint-disable-next-line no-console console.error(errorMessage); } } useIsomorphicLayoutEffect(function () { latestMapSelect.current = mapSelect; latestMapOutput.current = mapOutput; latestMapOutputError.current = undefined; isMountedAndNotUnsubscribing.current = true; // This has to run after the other ref updates // to avoid using stale values in the flushed // callbacks or potentially overwriting a // changed `latestMapOutput.current`. if (latestIsAsync.current !== isAsync) { latestIsAsync.current = isAsync; renderQueue.flush(queueContext); } }); useIsomorphicLayoutEffect(function () { var onStoreChange = function onStoreChange() { if (isMountedAndNotUnsubscribing.current) { try { var newMapOutput = latestMapSelect.current(registry.select, registry); if (external_this_wp_isShallowEqual_default()(latestMapOutput.current, newMapOutput)) { return; } latestMapOutput.current = newMapOutput; } catch (error) { latestMapOutputError.current = error; } forceRender(); } }; // catch any possible state changes during mount before the subscription // could be set. if (latestIsAsync.current) { renderQueue.add(queueContext, onStoreChange); } else { onStoreChange(); } var unsubscribe = registry.subscribe(function () { if (latestIsAsync.current) { renderQueue.add(queueContext, onStoreChange); } else { onStoreChange(); } }); return function () { isMountedAndNotUnsubscribing.current = false; unsubscribe(); renderQueue.flush(queueContext); }; }, [registry]); return mapOutput; } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/with-select/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Higher-order component used to inject state-derived props using registered * selectors. * * @param {Function} mapSelectToProps Function called on every state change, * expected to return object of props to * merge with the component's own props. * * @example * ```js * function PriceDisplay( { price, currency } ) { * return new Intl.NumberFormat( 'en-US', { * style: 'currency', * currency, * } ).format( price ); * } * * const { withSelect } = wp.data; * * const HammerPriceDisplay = withSelect( ( select, ownProps ) => { * const { getPrice } = select( 'my-shop' ); * const { currency } = ownProps; * * return { * price: getPrice( 'hammer', currency ), * }; * } )( PriceDisplay ); * * // Rendered in the application: * // * // * ``` * In the above example, when `HammerPriceDisplay` is rendered into an * application, it will pass the price into the underlying `PriceDisplay` * component and update automatically if the price of a hammer ever changes in * the store. * * @return {WPComponent} Enhanced component with merged state data props. */ var with_select_withSelect = function withSelect(mapSelectToProps) { return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) { return Object(external_this_wp_compose_["pure"])(function (ownProps) { var mapSelect = function mapSelect(select, registry) { return mapSelectToProps(select, ownProps, registry); }; var mergeProps = useSelect(mapSelect); return Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, ownProps, mergeProps)); }); }, 'withSelect'); }; /* harmony default export */ var with_select = (with_select_withSelect); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/use-dispatch/use-dispatch.js /** * Internal dependencies */ /** * A custom react hook returning the current registry dispatch actions creators. * * Note: The component using this hook must be within the context of a * RegistryProvider. * * @param {string} [storeName] Optionally provide the name of the store from * which to retrieve action creators. If not * provided, the registry.dispatch function is * returned instead. * * @example * This illustrates a pattern where you may need to retrieve dynamic data from * the server via the `useSelect` hook to use in combination with the dispatch * action. * * ```jsx * const { useDispatch, useSelect } = wp.data; * const { useCallback } = wp.element; * * function Button( { onClick, children } ) { * return * } * * const SaleButton = ( { children } ) => { * const { stockNumber } = useSelect( * ( select ) => select( 'my-shop' ).getStockNumber(), * [] * ); * const { startSale } = useDispatch( 'my-shop' ); * const onClick = useCallback( () => { * const discountPercent = stockNumber > 50 ? 10: 20; * startSale( discountPercent ); * }, [ stockNumber ] ); * return * } * * // Rendered somewhere in the application: * // * // Start Sale! * ``` * @return {Function} A custom react hook. */ var use_dispatch_useDispatch = function useDispatch(storeName) { var _useRegistry = useRegistry(), dispatch = _useRegistry.dispatch; return storeName === void 0 ? dispatch : dispatch(storeName); }; /* harmony default export */ var use_dispatch = (use_dispatch_useDispatch); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/use-dispatch/use-dispatch-with-map.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Favor useLayoutEffect to ensure the store subscription callback always has * the dispatchMap from the latest render. If a store update happens between * render and the effect, this could cause missed/stale updates or * inconsistent state. * * Fallback to useEffect for server rendered components because currently React * throws a warning when using useLayoutEffect in that environment. */ var use_dispatch_with_map_useIsomorphicLayoutEffect = typeof window !== 'undefined' ? external_this_wp_element_["useLayoutEffect"] : external_this_wp_element_["useEffect"]; /** * Custom react hook for returning aggregate dispatch actions using the provided * dispatchMap. * * Currently this is an internal api only and is implemented by `withDispatch` * * @param {Function} dispatchMap Receives the `registry.dispatch` function as * the first argument and the `registry` object * as the second argument. Should return an * object mapping props to functions. * @param {Array} deps An array of dependencies for the hook. * @return {Object} An object mapping props to functions created by the passed * in dispatchMap. */ var use_dispatch_with_map_useDispatchWithMap = function useDispatchWithMap(dispatchMap, deps) { var registry = useRegistry(); var currentDispatchMap = Object(external_this_wp_element_["useRef"])(dispatchMap); use_dispatch_with_map_useIsomorphicLayoutEffect(function () { currentDispatchMap.current = dispatchMap; }); return Object(external_this_wp_element_["useMemo"])(function () { var currentDispatchProps = currentDispatchMap.current(registry.dispatch, registry); return Object(external_this_lodash_["mapValues"])(currentDispatchProps, function (dispatcher, propName) { if (typeof dispatcher !== 'function') { // eslint-disable-next-line no-console console.warn("Property ".concat(propName, " returned from dispatchMap in useDispatchWithMap must be a function.")); } return function () { var _currentDispatchMap$c; return (_currentDispatchMap$c = currentDispatchMap.current(registry.dispatch, registry))[propName].apply(_currentDispatchMap$c, arguments); }; }); }, [registry].concat(Object(toConsumableArray["a" /* default */])(deps))); }; /* harmony default export */ var use_dispatch_with_map = (use_dispatch_with_map_useDispatchWithMap); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/use-dispatch/index.js // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/with-dispatch/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Higher-order component used to add dispatch props using registered action * creators. * * @param {Function} mapDispatchToProps A function of returning an object of * prop names where value is a * dispatch-bound action creator, or a * function to be called with the * component's props and returning an * action creator. * * @example * ```jsx * function Button( { onClick, children } ) { * return ; * } * * const { withDispatch } = wp.data; * * const SaleButton = withDispatch( ( dispatch, ownProps ) => { * const { startSale } = dispatch( 'my-shop' ); * const { discountPercent } = ownProps; * * return { * onClick() { * startSale( discountPercent ); * }, * }; * } )( Button ); * * // Rendered in the application: * // * // Start Sale! * ``` * * @example * In the majority of cases, it will be sufficient to use only two first params * passed to `mapDispatchToProps` as illustrated in the previous example. * However, there might be some very advanced use cases where using the * `registry` object might be used as a tool to optimize the performance of * your component. Using `select` function from the registry might be useful * when you need to fetch some dynamic data from the store at the time when the * event is fired, but at the same time, you never use it to render your * component. In such scenario, you can avoid using the `withSelect` higher * order component to compute such prop, which might lead to unnecessary * re-renders of your component caused by its frequent value change. * Keep in mind, that `mapDispatchToProps` must return an object with functions * only. * * ```jsx * function Button( { onClick, children } ) { * return ; * } * * const { withDispatch } = wp.data; * * const SaleButton = withDispatch( ( dispatch, ownProps, { select } ) => { * // Stock number changes frequently. * const { getStockNumber } = select( 'my-shop' ); * const { startSale } = dispatch( 'my-shop' ); * return { * onClick() { * const discountPercent = getStockNumber() > 50 ? 10 : 20; * startSale( discountPercent ); * }, * }; * } )( Button ); * * // Rendered in the application: * // * // Start Sale! * ``` * * _Note:_ It is important that the `mapDispatchToProps` function always * returns an object with the same keys. For example, it should not contain * conditions under which a different value would be returned. * * @return {WPComponent} Enhanced component with merged dispatcher props. */ var with_dispatch_withDispatch = function withDispatch(mapDispatchToProps) { return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) { return function (ownProps) { var mapDispatch = function mapDispatch(dispatch, registry) { return mapDispatchToProps(dispatch, ownProps, registry); }; var dispatchProps = use_dispatch_with_map(mapDispatch, []); return Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, ownProps, dispatchProps)); }; }, 'withDispatch'); }; /* harmony default export */ var with_dispatch = (with_dispatch_withDispatch); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/registry-provider/index.js // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/with-registry/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Higher-order component which renders the original component with the current * registry context passed as its `registry` prop. * * @param {WPComponent} OriginalComponent Original component. * * @return {WPComponent} Enhanced component. */ var withRegistry = Object(external_this_wp_compose_["createHigherOrderComponent"])(function (OriginalComponent) { return function (props) { return Object(external_this_wp_element_["createElement"])(RegistryConsumer, null, function (registry) { return Object(external_this_wp_element_["createElement"])(OriginalComponent, Object(esm_extends["a" /* default */])({}, props, { registry: registry })); }); }; }, 'withRegistry'); /* harmony default export */ var with_registry = (withRegistry); // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/components/async-mode-provider/index.js // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/factory.js /** * Internal dependencies */ /** @typedef {import('./registry').WPDataRegistry} WPDataRegistry */ /** * Mark a selector as a registry selector. * * @param {Function} registrySelector Function receiving a registry object and returning a state selector. * * @return {Function} marked registry selector. */ function createRegistrySelector(registrySelector) { var selector = function selector() { return registrySelector(selector.registry.select).apply(void 0, arguments); }; /** * Flag indicating to selector registration mapping that the selector should * be mapped as a registry selector. * * @type {boolean} */ selector.isRegistrySelector = true; /** * Registry on which to call `select`, stubbed for non-standard usage to * use the default registry. * * @type {WPDataRegistry} */ selector.registry = default_registry; return selector; } /** * Mark a control as a registry control. * * @param {Function} registryControl Function receiving a registry object and returning a control. * * @return {Function} marked registry control. */ function createRegistryControl(registryControl) { registryControl.isRegistryControl = true; return registryControl; } // CONCATENATED MODULE: ./node_modules/@wordpress/data/build-module/index.js /** * External dependencies */ /** * Internal dependencies */ /** * Object of available plugins to use with a registry. * * @see [use](#use) * * @type {Object} */ /** * The combineReducers helper function turns an object whose values are different * reducing functions into a single reducing function you can pass to registerReducer. * * @param {Object} reducers An object whose values correspond to different reducing * functions that need to be combined into one. * * @example * ```js * const { combineReducers, registerStore } = wp.data; * * const prices = ( state = {}, action ) => { * return action.type === 'SET_PRICE' ? * { * ...state, * [ action.item ]: action.price, * } : * state; * }; * * const discountPercent = ( state = 0, action ) => { * return action.type === 'START_SALE' ? * action.discountPercent : * state; * }; * * registerStore( 'my-shop', { * reducer: combineReducers( { * prices, * discountPercent, * } ), * } ); * ``` * * @return {Function} A reducer that invokes every reducer inside the reducers * object, and constructs a state object with the same shape. */ /** * Given the name of a registered store, returns an object of the store's selectors. * The selector functions are been pre-bound to pass the current state automatically. * As a consumer, you need only pass arguments of the selector, if applicable. * * @param {string} name Store name. * * @example * ```js * const { select } = wp.data; * * select( 'my-shop' ).getPrice( 'hammer' ); * ``` * * @return {Object} Object containing the store's selectors. */ var build_module_select = default_registry.select; /** * Given the name of a registered store, returns an object containing the store's * selectors pre-bound to state so that you only need to supply additional arguments, * and modified so that they return promises that resolve to their eventual values, * after any resolvers have ran. * * @param {string} name Store name. * * @example * ```js * const { __experimentalResolveSelect } = wp.data; * * __experimentalResolveSelect( 'my-shop' ).getPrice( 'hammer' ).then(console.log) * ``` * * @return {Object} Object containing the store's promise-wrapped selectors. */ var build_module_experimentalResolveSelect = default_registry.__experimentalResolveSelect; /** * Given the name of a registered store, returns an object of the store's action creators. * Calling an action creator will cause it to be dispatched, updating the state value accordingly. * * Note: Action creators returned by the dispatch will return a promise when * they are called. * * @param {string} name Store name. * * @example * ```js * const { dispatch } = wp.data; * * dispatch( 'my-shop' ).setPrice( 'hammer', 9.75 ); * ``` * @return {Object} Object containing the action creators. */ var build_module_dispatch = default_registry.dispatch; /** * Given a listener function, the function will be called any time the state value * of one of the registered stores has changed. This function returns a `unsubscribe` * function used to stop the subscription. * * @param {Function} listener Callback function. * * @example * ```js * const { subscribe } = wp.data; * * const unsubscribe = subscribe( () => { * // You could use this opportunity to test whether the derived result of a * // selector has subsequently changed as the result of a state update. * } ); * * // Later, if necessary... * unsubscribe(); * ``` */ var build_module_subscribe = default_registry.subscribe; /** * Registers a generic store. * * @param {string} key Store registry key. * @param {Object} config Configuration (getSelectors, getActions, subscribe). */ var build_module_registerGenericStore = default_registry.registerGenericStore; /** * Registers a standard `@wordpress/data` store. * * @param {string} reducerKey Reducer key. * @param {Object} options Store description (reducer, actions, selectors, resolvers). * * @return {Object} Registered store object. */ var build_module_registerStore = default_registry.registerStore; /** * Extends a registry to inherit functionality provided by a given plugin. A * plugin is an object with properties aligning to that of a registry, merged * to extend the default registry behavior. * * @param {Object} plugin Plugin object. */ var build_module_use = default_registry.use; /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "rl8x": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["isShallowEqual"]; }()); /***/ }), /***/ "wx14": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; }); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /***/ }), /***/ "yLpj": /***/ (function(module, exports) { var g; // This works in non-strict mode g = (function() { return this; })(); try { // This works if eval is allowed (see CSP) g = g || new Function("return this")(); } catch (e) { // This works if the window reference is available if (typeof window === "object") g = window; } // g can still be undefined, but nothing to do about it... // We return undefined, instead of nothing here, so it's // easier to handle this case. if(!global) { ...} module.exports = g; /***/ }) /******/ });PKv\p?`]]dist/server-side-render.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["serverSideRender"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "4dqW"); /******/ }) /************************************************************************/ /******/ ({ /***/ "1OyB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; }); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /***/ }), /***/ "1ZqX": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["data"]; }()); /***/ }), /***/ "4dqW": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__("wx14"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__("Ff2n"); // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // EXTERNAL MODULE: external {"this":["wp","data"]} var external_this_wp_data_ = __webpack_require__("1ZqX"); // EXTERNAL MODULE: external {"this":["wp","deprecated"]} var external_this_wp_deprecated_ = __webpack_require__("NMb1"); var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js var classCallCheck = __webpack_require__("1OyB"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js var createClass = __webpack_require__("vuIU"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js var possibleConstructorReturn = __webpack_require__("md7G"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js var getPrototypeOf = __webpack_require__("foSv"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules var inherits = __webpack_require__("Ji7U"); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // EXTERNAL MODULE: external {"this":["wp","i18n"]} var external_this_wp_i18n_ = __webpack_require__("l3Sj"); // EXTERNAL MODULE: external {"this":["wp","apiFetch"]} var external_this_wp_apiFetch_ = __webpack_require__("ywyh"); var external_this_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_apiFetch_); // EXTERNAL MODULE: external {"this":["wp","url"]} var external_this_wp_url_ = __webpack_require__("Mmq9"); // EXTERNAL MODULE: external {"this":["wp","components"]} var external_this_wp_components_ = __webpack_require__("tI+e"); // CONCATENATED MODULE: ./node_modules/@wordpress/server-side-render/build-module/server-side-render.js function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ function rendererPath(block) { var attributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; var urlQueryArgs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; return Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/block-renderer/".concat(block), _objectSpread({ context: 'edit' }, null !== attributes ? { attributes: attributes } : {}, {}, urlQueryArgs)); } var server_side_render_ServerSideRender = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ServerSideRender, _Component); function ServerSideRender(props) { var _this; Object(classCallCheck["a" /* default */])(this, ServerSideRender); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ServerSideRender).call(this, props)); _this.state = { response: null }; return _this; } Object(createClass["a" /* default */])(ServerSideRender, [{ key: "componentDidMount", value: function componentDidMount() { this.isStillMounted = true; this.fetch(this.props); // Only debounce once the initial fetch occurs to ensure that the first // renders show data as soon as possible. this.fetch = Object(external_this_lodash_["debounce"])(this.fetch, 500); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { this.isStillMounted = false; } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (!Object(external_this_lodash_["isEqual"])(prevProps, this.props)) { this.fetch(this.props); } } }, { key: "fetch", value: function fetch(props) { var _this2 = this; if (!this.isStillMounted) { return; } if (null !== this.state.response) { this.setState({ response: null }); } var block = props.block, _props$attributes = props.attributes, attributes = _props$attributes === void 0 ? null : _props$attributes, _props$urlQueryArgs = props.urlQueryArgs, urlQueryArgs = _props$urlQueryArgs === void 0 ? {} : _props$urlQueryArgs; var path = rendererPath(block, attributes, urlQueryArgs); // Store the latest fetch request so that when we process it, we can // check if it is the current request, to avoid race conditions on slow networks. var fetchRequest = this.currentFetchRequest = external_this_wp_apiFetch_default()({ path: path }).then(function (response) { if (_this2.isStillMounted && fetchRequest === _this2.currentFetchRequest && response) { _this2.setState({ response: response.rendered }); } }).catch(function (error) { if (_this2.isStillMounted && fetchRequest === _this2.currentFetchRequest) { _this2.setState({ response: { error: true, errorMsg: error.message } }); } }); return fetchRequest; } }, { key: "render", value: function render() { var response = this.state.response; var _this$props = this.props, className = _this$props.className, EmptyResponsePlaceholder = _this$props.EmptyResponsePlaceholder, ErrorResponsePlaceholder = _this$props.ErrorResponsePlaceholder, LoadingResponsePlaceholder = _this$props.LoadingResponsePlaceholder; if (response === '') { return Object(external_this_wp_element_["createElement"])(EmptyResponsePlaceholder, Object(esm_extends["a" /* default */])({ response: response }, this.props)); } else if (!response) { return Object(external_this_wp_element_["createElement"])(LoadingResponsePlaceholder, Object(esm_extends["a" /* default */])({ response: response }, this.props)); } else if (response.error) { return Object(external_this_wp_element_["createElement"])(ErrorResponsePlaceholder, Object(esm_extends["a" /* default */])({ response: response }, this.props)); } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], { key: "html", className: className }, response); } }]); return ServerSideRender; }(external_this_wp_element_["Component"]); server_side_render_ServerSideRender.defaultProps = { EmptyResponsePlaceholder: function EmptyResponsePlaceholder(_ref) { var className = _ref.className; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { className: className }, Object(external_this_wp_i18n_["__"])('Block rendered as empty.')); }, ErrorResponsePlaceholder: function ErrorResponsePlaceholder(_ref2) { var response = _ref2.response, className = _ref2.className; // translators: %s: error message describing the problem var errorMessage = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Error loading block: %s'), response.errorMsg); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { className: className }, errorMessage); }, LoadingResponsePlaceholder: function LoadingResponsePlaceholder(_ref3) { var className = _ref3.className; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Placeholder"], { className: className }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null)); } }; /* harmony default export */ var server_side_render = (server_side_render_ServerSideRender); // CONCATENATED MODULE: ./node_modules/@wordpress/server-side-render/build-module/index.js function build_module_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function build_module_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { build_module_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { build_module_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ /** * Constants */ var EMPTY_OBJECT = {}; var ExportedServerSideRender = Object(external_this_wp_data_["withSelect"])(function (select) { var coreEditorSelect = select('core/editor'); if (coreEditorSelect) { var currentPostId = coreEditorSelect.getCurrentPostId(); if (currentPostId) { return { currentPostId: currentPostId }; } } return EMPTY_OBJECT; })(function (_ref) { var _ref$urlQueryArgs = _ref.urlQueryArgs, urlQueryArgs = _ref$urlQueryArgs === void 0 ? EMPTY_OBJECT : _ref$urlQueryArgs, currentPostId = _ref.currentPostId, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["urlQueryArgs", "currentPostId"]); var newUrlQueryArgs = Object(external_this_wp_element_["useMemo"])(function () { if (!currentPostId) { return urlQueryArgs; } return build_module_objectSpread({ post_id: currentPostId }, urlQueryArgs); }, [currentPostId, urlQueryArgs]); return Object(external_this_wp_element_["createElement"])(server_side_render, Object(esm_extends["a" /* default */])({ urlQueryArgs: newUrlQueryArgs }, props)); }); if (window && window.wp && window.wp.components) { window.wp.components.ServerSideRender = Object(external_this_wp_element_["forwardRef"])(function (props, ref) { external_this_wp_deprecated_default()('wp.components.ServerSideRender', { alternative: 'wp.serverSideRender' }); return Object(external_this_wp_element_["createElement"])(ExportedServerSideRender, Object(esm_extends["a" /* default */])({}, props, { ref: ref })); }); } /* harmony default export */ var build_module = __webpack_exports__["default"] = (ExportedServerSideRender); /***/ }), /***/ "Ff2n": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; }); /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zLVn"); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "JX7q": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; }); function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } /***/ }), /***/ "Ji7U": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inherits; }); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } /***/ }), /***/ "Mmq9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["url"]; }()); /***/ }), /***/ "NMb1": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["deprecated"]; }()); /***/ }), /***/ "U8pU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; }); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "foSv": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; }); function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } /***/ }), /***/ "l3Sj": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["i18n"]; }()); /***/ }), /***/ "md7G": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; }); /* harmony import */ var _helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("U8pU"); /* harmony import */ var _assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JX7q"); function _possibleConstructorReturn(self, call) { if (call && (Object(_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) { return call; } return Object(_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self); } /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "tI+e": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["components"]; }()); /***/ }), /***/ "vuIU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; }); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /***/ }), /***/ "wx14": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; }); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /***/ }), /***/ "ywyh": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["apiFetch"]; }()); /***/ }), /***/ "zLVn": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; }); function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } /***/ }) /******/ })["default"];PKv\>zLLdist/block-directory.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.blockDirectory=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="7f3f")}({"1ZqX":function(e,t){!function(){e.exports=this.wp.data}()},"25BE":function(e,t,n){"use strict";function r(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}n.d(t,"a",(function(){return r}))},"7f3f":function(e,t,n){"use strict";n.r(t);var r={};n.r(r),n.d(r,"isRequestingDownloadableBlocks",(function(){return b})),n.d(r,"getDownloadableBlocks",(function(){return d})),n.d(r,"hasInstallBlocksPermission",(function(){return f})),n.d(r,"getInstalledBlockTypes",(function(){return p}));var o={};n.r(o),n.d(o,"fetchDownloadableBlocks",(function(){return P})),n.d(o,"receiveDownloadableBlocks",(function(){return I})),n.d(o,"setInstallBlocksPermission",(function(){return C})),n.d(o,"downloadBlock",(function(){return T})),n.d(o,"installBlock",(function(){return L})),n.d(o,"uninstallBlock",(function(){return A})),n.d(o,"addInstalledBlockType",(function(){return R})),n.d(o,"removeInstalledBlockType",(function(){return M}));var c=n("1ZqX"),a=n("KQm4"),l=n("rePB");function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{results:{},filterValue:void 0,isRequestingDownloadableBlocks:!0},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"FETCH_DOWNLOADABLE_BLOCKS":return s({},e,{isRequestingDownloadableBlocks:!0});case"RECEIVE_DOWNLOADABLE_BLOCKS":return s({},e,{results:Object.assign({},e.results,Object(l.a)({},t.filterValue,t.downloadableBlocks)),isRequestingDownloadableBlocks:!1})}return e},blockManagement:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{installedBlockTypes:[]},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_INSTALLED_BLOCK_TYPE":return s({},e,{installedBlockTypes:[].concat(Object(a.a)(e.installedBlockTypes),[t.item])});case"REMOVE_INSTALLED_BLOCK_TYPE":return s({},e,{installedBlockTypes:e.installedBlockTypes.filter((function(e){return e.name!==t.item.name}))})}return e},hasPermission:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1?arguments[1]:void 0;return"SET_INSTALL_BLOCKS_PERMISSION"===t.type?t.hasPermission:e}});function b(e){return e.downloadableBlocks.isRequestingDownloadableBlocks}function d(e,t){return e.downloadableBlocks.results[t]?e.downloadableBlocks.results[t]:[]}function f(e){return e.hasPermission}function p(e){return e.blockManagement.installedBlockTypes}var m=n("dvlR"),O=n.n(m),k=n("HSyU"),y=n("YLtl"),j=n("ywyh"),h=n.n(j);function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var _=O.a.mark(B);function w(e){return{type:"API_FETCH",request:e}}var g=function(e,t,n){if(e){var r=document.querySelector('script[src="'.concat(e.src,'"]'));r&&r.parentNode.removeChild(r);var o=document.createElement("script");o.src="string"==typeof e?e:e.src,o.onload=t,o.onerror=n,document.body.appendChild(o)}},E=function(e){if(e){var t=document.createElement("link");t.rel="stylesheet",t.href="string"==typeof e?e:e.src,document.body.appendChild(t)}};function B(e){return O.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",{type:"LOAD_ASSETS",assets:e});case 1:case"end":return t.stop()}}),_)}var S={SELECT:Object(c.createRegistryControl)((function(e){return function(t){var n,r=t.storeName,o=t.selectorName,c=t.args;return(n=e.select(r))[o].apply(n,Object(a.a)(c))}})),DISPATCH:Object(c.createRegistryControl)((function(e){return function(t){var n,r=t.storeName,o=t.dispatcherName,c=t.args;return(n=e.dispatch(r))[o].apply(n,Object(a.a)(c))}})),API_FETCH:function(e){var t=e.request;return h()(function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n/g, '>'); } // CONCATENATED MODULE: ./node_modules/@wordpress/escape-html/build-module/index.js /** * Internal dependencies */ /** * Regular expression matching invalid attribute names. * * "Attribute names must consist of one or more characters other than controls, * U+0020 SPACE, U+0022 ("), U+0027 ('), U+003E (>), U+002F (/), U+003D (=), * and noncharacters." * * @see https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 * * @type {RegExp} */ var REGEXP_INVALID_ATTRIBUTE_NAME = /[\u007F-\u009F "'>/="\uFDD0-\uFDEF]/; /** * Returns a string with ampersands escaped. Note that this is an imperfect * implementation, where only ampersands which do not appear as a pattern of * named, decimal, or hexadecimal character references are escaped. Invalid * named references (i.e. ambiguous ampersand) are are still permitted. * * @see https://w3c.github.io/html/syntax.html#character-references * @see https://w3c.github.io/html/syntax.html#ambiguous-ampersand * @see https://w3c.github.io/html/syntax.html#named-character-references * * @param {string} value Original string. * * @return {string} Escaped string. */ function escapeAmpersand(value) { return value.replace(/&(?!([a-z0-9]+|#[0-9]+|#x[a-f0-9]+);)/gi, '&'); } /** * Returns a string with quotation marks replaced. * * @param {string} value Original string. * * @return {string} Escaped string. */ function escapeQuotationMark(value) { return value.replace(/"/g, '"'); } /** * Returns a string with less-than sign replaced. * * @param {string} value Original string. * * @return {string} Escaped string. */ function escapeLessThan(value) { return value.replace(/=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}},G8AQ:function(e,t,r){"use strict";r.r(t),r.d(t,"Circle",(function(){return a})),r.d(t,"G",(function(){return l})),r.d(t,"Path",(function(){return s})),r.d(t,"Polygon",(function(){return p})),r.d(t,"Rect",(function(){return b})),r.d(t,"Defs",(function(){return d})),r.d(t,"RadialGradient",(function(){return O})),r.d(t,"LinearGradient",(function(){return y})),r.d(t,"Stop",(function(){return j})),r.d(t,"SVG",(function(){return v})),r.d(t,"HorizontalRule",(function(){return m})),r.d(t,"BlockQuotation",(function(){return g}));var n=r("rePB"),u=r("Ff2n"),o=r("TSYQ"),c=r.n(o),i=r("GRId");function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var a=function(e){return Object(i.createElement)("circle",e)},l=function(e){return Object(i.createElement)("g",e)},s=function(e){return Object(i.createElement)("path",e)},p=function(e){return Object(i.createElement)("polygon",e)},b=function(e){return Object(i.createElement)("rect",e)},d=function(e){return Object(i.createElement)("defs",e)},O=function(e){return Object(i.createElement)("radialGradient",e)},y=function(e){return Object(i.createElement)("linearGradient",e)},j=function(e){return Object(i.createElement)("stop",e)},v=function(e){var t=e.className,r=e.isPressed,o=function(e){for(var t=1;t=0||(u[r]=e[r]);return u}r.d(t,"a",(function(){return n}))}});PKv\Ii33dist/date.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.date=function(c){var M={};function o(A){if(M[A])return M[A].exports;var z=M[A]={i:A,l:!1,exports:{}};return c[A].call(z.exports,z,z.exports,o),z.l=!0,z.exports}return o.m=c,o.c=M,o.d=function(c,M,A){o.o(c,M)||Object.defineProperty(c,M,{enumerable:!0,get:A})},o.r=function(c){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(c,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(c,"__esModule",{value:!0})},o.t=function(c,M){if(1&M&&(c=o(c)),8&M)return c;if(4&M&&"object"==typeof c&&c&&c.__esModule)return c;var A=Object.create(null);if(o.r(A),Object.defineProperty(A,"default",{enumerable:!0,value:c}),2&M&&"string"!=typeof c)for(var z in c)o.d(A,z,function(M){return c[M]}.bind(null,z));return A},o.n=function(c){var M=c&&c.__esModule?function(){return c.default}:function(){return c};return o.d(M,"a",M),M},o.o=function(c,M){return Object.prototype.hasOwnProperty.call(c,M)},o.p="",o(o.s="BWYS")}({"4CCe":function(c,M,o){var A,z,a;//! moment-timezone-utils.js //! version : 0.5.28 //! Copyright (c) JS Foundation and other contributors //! license : MIT //! github.com/moment/moment-timezone !function(b,p){"use strict";c.exports?c.exports=p(o("f0Wu")):(z=[o("wy2R")],void 0===(a="function"==typeof(A=p)?A.apply(M,z):A)||(c.exports=a))}(0,(function(c){"use strict";if(!c.tz)throw new Error("moment-timezone-utils.js must be loaded after moment-timezone.js");var M="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX";function o(c,o){for(var A="",z=Math.abs(c),a=Math.floor(z),b=function(c,o){for(var A,z=".",a="";o>0;)o-=1,c*=60,A=Math.floor(c+1e-6),z+=M[A],c-=A,A&&(a+=z,z="");return a}(z-a,Math.min(~~o,10));a>0;)A=M[a%60]+A,a=Math.floor(a/60);return c<0&&(A="-"+A),A&&b?A+b:(b||"-"!==A)&&(A||b)||"0"}function A(c){var M,A=[],z=0;for(M=0;Mp.population||b.population===p.population&&A&&A[b.name]?n.unshift(b):n.push(b),e=!0);e||r.push([b])}for(z=0;zo&&(z=M,M=o,o=z),z=0;zo&&(b=Math.min(b,z+1)));return[a,b]}(c.untils,M,o),a=A.apply(c.untils,z);return a[a.length-1]=null,{name:c.name,abbrs:A.apply(c.abbrs,z),untils:a,offsets:A.apply(c.offsets,z),population:c.population,countries:c.countries}}return c.tz.pack=b,c.tz.packBase60=o,c.tz.createLinks=e,c.tz.filterYears=r,c.tz.filterLinkPack=function(c,M,o,A){var z,a,n=c.zones,i=[];for(z=0;z1&&void 0!==arguments[1]?arguments[1]:new Date,a=[],b=z()(A);for(M=0;M1&&void 0!==arguments[1]?arguments[1]:new Date,o=60*a.timezone.offset,A=z()(M).utcOffset(o,!0);return e(c,A)}function O(c){var M=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Date,o=z()(M).utc();return e(c,o)}function L(c){var M=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Date,o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],A=o?0:60*a.timezone.offset,b=z()(M).utcOffset(A,!0);return b.locale(a.l10n.locale),e(c,b)}function q(c){var M=z.a.tz("WP");return z.a.tz(c,"WP").isAfter(M)}function N(c){return c?z.a.tz(c,"WP").toDate():z.a.tz("WP").toDate()}n()},Dvum:function(c,M,o){var A,z,a;//! moment-timezone.js //! version : 0.5.28 //! Copyright (c) JS Foundation and other contributors //! license : MIT //! github.com/moment/moment-timezone !function(b,p){"use strict";c.exports?c.exports=p(o("wy2R")):(z=[o("wy2R")],void 0===(a="function"==typeof(A=p)?A.apply(M,z):A)||(c.exports=a))}(0,(function(c){"use strict";var M,o={},A={},z={},a={},b={};c&&"string"==typeof c.version||S("Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/");var p=c.version.split("."),n=+p[0],i=+p[1];function e(c){return c>96?c-87:c>64?c-29:c-48}function r(c){var M=0,o=c.split("."),A=o[0],z=o[1]||"",a=1,b=0,p=1;for(45===c.charCodeAt(0)&&(M=1,p=-1);M3){var M=a[T(c)];if(M)return M;S("Moment Timezone found "+c+" from the Intl api, but did not have that data loaded.")}}catch(c){}var o,A,z,b=function(){var c,M,o,A=(new Date).getFullYear()-2,z=new f(new Date(A,0,1)),a=[z];for(o=1;o<48;o++)(M=new f(new Date(A,o,1))).offset!==z.offset&&(c=W(z,M),a.push(c),a.push(new f(new Date(c.at+6e4)))),z=M;for(o=0;o<4;o++)a.push(new f(new Date(A+o,0,1))),a.push(new f(new Date(A+o,6,1)));return a}(),p=b.length,n=l(b),i=[];for(A=0;A0?i[0].zone.name:void 0}function T(c){return(c||"").toLowerCase().replace(/\//g,"_")}function s(c){var M,A,z,b;for("string"==typeof c&&(c=[c]),M=0;M= 2.6.0. You are using Moment.js "+c.version+". See momentjs.com"),N.prototype={_set:function(c){this.name=c.name,this.abbrs=c.abbrs,this.untils=c.untils,this.offsets=c.offsets,this.population=c.population},_index:function(c){var M,o=+c,A=this.untils;for(M=0;MA&&R.moveInvalidForward&&(M=A),a0&&(this._z=null),g.apply(this,arguments)}),c.tz.setDefault=function(M){return(n<2||2===n&&i<9)&&S("Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js "+c.version+"."),c.defaultZone=M?m(M):null,c};var k=c.momentProperties;return"[object Array]"===Object.prototype.toString.call(k)?(k.push("_z"),k.push("_a")):k&&(k._z=null),c}))},bNI1:function(c){c.exports=JSON.parse('{"version":"2019c","zones":["Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q|48e5","Africa/Accra|LMT GMT +0020|.Q 0 -k|012121212121212121212121212121212121212121212121|-26BbX.8 6tzX.8 MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE 1BAk MnE 1C0k MnE 1BAk MnE 1BAk MnE|41e5","Africa/Nairobi|LMT EAT +0230 +0245|-2r.g -30 -2u -2J|01231|-1F3Cr.g 3Dzr.g okMu MFXJ|47e5","Africa/Algiers|PMT WET WEST CET CEST|-9.l 0 -10 -10 -20|0121212121212121343431312123431213|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 DA0 Imo0 rd0 De0 9Xz0 1fb0 1ap0 16K0 2yo0 mEp0 hwL0 jxA0 11A0 dDd0 17b0 11B0 1cN0 2Dy0 1cN0 1fB0 1cL0|26e5","Africa/Lagos|LMT WAT|-d.A -10|01|-22y0d.A|17e6","Africa/Bissau|LMT -01 GMT|12.k 10 0|012|-2ldX0 2xoo0|39e4","Africa/Maputo|LMT CAT|-2a.k -20|01|-2GJea.k|26e5","Africa/Cairo|EET EEST|-20 -30|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1bIO0 vb0 1ip0 11z0 1iN0 1nz0 12p0 1pz0 10N0 1pz0 16p0 1jz0 s3d0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1WL0 rd0 1Rz0 wp0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1qL0 Xd0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1ny0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 WL0 1qN0 Rb0 1wp0 On0 1zd0 Lz0 1EN0 Fb0 c10 8n0 8Nd0 gL0 e10 mn0|15e6","Africa/Casablanca|LMT +00 +01|u.k 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-2gMnt.E 130Lt.E rb0 Dd0 dVb0 b6p0 TX0 EoB0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4mn0 SyN0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|32e5","Africa/Ceuta|WET WEST CET CEST|0 -10 -10 -20|010101010101010101010232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-25KN0 11z0 drd0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1y7o0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4VB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|85e3","Africa/El_Aaiun|LMT -01 +00 +01|Q.M 10 0 -10|012323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1rDz7.c 1GVA7.c 6L0 AL0 1Nd0 XX0 1Cp0 pz0 1cBB0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|20e4","Africa/Johannesburg|SAST SAST SAST|-1u -20 -30|012121|-2GJdu 1Ajdu 1cL0 1cN0 1cL0|84e5","Africa/Juba|LMT CAT CAST EAT|-26.s -20 -30 -30|01212121212121212121212121212121213|-1yW26.s 1zK06.s 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0|","Africa/Khartoum|LMT CAT CAST EAT|-2a.8 -20 -30 -30|012121212121212121212121212121212131|-1yW2a.8 1zK0a.8 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 HjL0|51e5","Africa/Monrovia|MMT MMT GMT|H.8 I.u 0|012|-23Lzg.Q 28G01.m|11e5","Africa/Ndjamena|LMT WAT WAST|-10.c -10 -20|0121|-2le10.c 2J3c0.c Wn0|13e5","Africa/Sao_Tome|LMT GMT WAT|A.J 0 -10|0121|-2le00 4i6N0 2q00|","Africa/Tripoli|LMT CET CEST EET|-Q.I -10 -20 -20|012121213121212121212121213123123|-21JcQ.I 1hnBQ.I vx0 4iP0 xx0 4eN0 Bb0 7ip0 U0n0 A10 1db0 1cN0 1db0 1dd0 1db0 1eN0 1bb0 1e10 1cL0 1c10 1db0 1dd0 1db0 1cN0 1db0 1q10 fAn0 1ep0 1db0 AKq0 TA0 1o00|11e5","Africa/Tunis|PMT CET CEST|-9.l -10 -20|0121212121212121212121212121212121|-2nco9.l 18pa9.l 1qM0 DA0 3Tc0 11B0 1ze0 WM0 7z0 3d0 14L0 1cN0 1f90 1ar0 16J0 1gXB0 WM0 1rA0 11c0 nwo0 Ko0 1cM0 1cM0 1rA0 10M0 zuM0 10N0 1aN0 1qM0 WM0 1qM0 11A0 1o00|20e5","Africa/Windhoek|+0130 SAST SAST CAT WAT|-1u -20 -30 -20 -10|01213434343434343434343434343434343434343434343434343|-2GJdu 1Ajdu 1cL0 1SqL0 9Io0 16P0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0|32e4","America/Adak|NST NWT NPT BST BDT AHST HST HDT|b0 a0 a0 b0 a0 a0 a0 90|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|326","America/Anchorage|AST AWT APT AHST AHDT YST AKST AKDT|a0 90 90 a0 90 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T00 8wX0 iA0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|30e4","America/Port_of_Spain|LMT AST|46.4 40|01|-2kNvR.U|43e3","America/Araguaina|LMT -03 -02|3c.M 30 20|0121212121212121212121212121212121212121212121212121|-2glwL.c HdKL.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 ny10 Lz0|14e4","America/Argentina/Buenos_Aires|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 A4p0 uL0 1qN0 WL0|","America/Argentina/Catamarca|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Cordoba|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323132323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0 1qN0 WL0|","America/Argentina/Jujuy|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1ze0 TX0 1ld0 WK0 1wp0 TX0 A4p0 uL0|","America/Argentina/La_Rioja|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Mendoza|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232312121321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1u20 SL0 1vd0 Tb0 1wp0 TW0 ri10 Op0 7TX0 uL0|","America/Argentina/Rio_Gallegos|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|","America/Argentina/Salta|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231323232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0|","America/Argentina/San_Juan|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323231232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rld0 m10 8lb0 uL0|","America/Argentina/San_Luis|CMT -04 -03 -02|4g.M 40 30 20|012121212121212121212121212121212121212121232323121212321212|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 XX0 1q20 SL0 AN0 vDb0 m10 8lb0 8L0 jd0 1qN0 WL0 1qN0|","America/Argentina/Tucuman|CMT -04 -03 -02|4g.M 40 30 20|0121212121212121212121212121212121212121212323232313232123232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 4N0 8BX0 uL0 1qN0 WL0|","America/Argentina/Ushuaia|CMT -04 -03 -02|4g.M 40 30 20|01212121212121212121212121212121212121212123232323232321232|-20UHH.c pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rkN0 8p0 8zb0 uL0|","America/Curacao|LMT -0430 AST|4z.L 4u 40|012|-2kV7o.d 28KLS.d|15e4","America/Asuncion|AMT -04 -03|3O.E 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-1x589.k 1DKM9.k 3CL0 3Dd0 10L0 1pB0 10n0 1pB0 10n0 1pB0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1lB0 14n0 1dd0 1cL0 1fd0 WL0 1rd0 1aL0 1dB0 Xz0 1qp0 Xb0 1qN0 10L0 1rB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 WN0 1qL0 11B0 1nX0 1ip0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 TX0 1tB0 19X0 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0|28e5","America/Atikokan|CST CDT CWT CPT EST|60 50 50 50 50|0101234|-25TQ0 1in0 Rnb0 3je0 8x30 iw0|28e2","America/Bahia_Banderas|LMT MST CST PST MDT CDT|71 70 60 80 60 50|0121212131414141414141414141414141414152525252525252525252525252525252525252525252525252525252|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|84e3","America/Bahia|LMT -03 -02|2y.4 30 20|01212121212121212121212121212121212121212121212121212121212121|-2glxp.U HdLp.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 l5B0 Rb0|27e5","America/Barbados|LMT BMT AST ADT|3W.t 3W.t 40 30|01232323232|-1Q0I1.v jsM0 1ODC1.v IL0 1ip0 17b0 1ip0 17b0 1ld0 13b0|28e4","America/Belem|LMT -03 -02|3d.U 30 20|012121212121212121212121212121|-2glwK.4 HdKK.4 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|20e5","America/Belize|LMT CST -0530 CDT|5Q.M 60 5u 50|01212121212121212121212121212121212121212121212121213131|-2kBu7.c fPA7.c Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1f0Mu qn0 lxB0 mn0|57e3","America/Blanc-Sablon|AST ADT AWT APT|40 30 30 30|010230|-25TS0 1in0 UGp0 8x50 iu0|11e2","America/Boa_Vista|LMT -04 -03|42.E 40 30|0121212121212121212121212121212121|-2glvV.k HdKV.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 smp0 WL0 1tB0 2L0|62e2","America/Bogota|BMT -05 -04|4U.g 50 40|0121|-2eb73.I 38yo3.I 2en0|90e5","America/Boise|PST PDT MST MWT MPT MDT|80 70 70 60 60 60|0101023425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-261q0 1nX0 11B0 1nX0 8C10 JCL0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 Dd0 1Kn0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e4","America/Cambridge_Bay|-00 MST MWT MPT MDDT MDT CST CDT EST|0 70 60 60 50 60 60 50 50|0123141515151515151515151515151515151515151515678651515151515151515151515151515151515151515151515151515151515151515151515151|-21Jc0 RO90 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11A0 1nX0 2K0 WQ0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e2","America/Campo_Grande|LMT -04 -03|3C.s 40 30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwl.w HdLl.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|77e4","America/Cancun|LMT CST EST EDT CDT|5L.4 60 50 40 50|0123232341414141414141414141414141414141412|-1UQG0 2q2o0 yLB0 1lb0 14p0 1lb0 14p0 Lz0 xB0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0|63e4","America/Caracas|CMT -0430 -04|4r.E 4u 40|01212|-2kV7w.k 28KM2.k 1IwOu kqo0|29e5","America/Cayenne|LMT -04 -03|3t.k 40 30|012|-2mrwu.E 2gWou.E|58e3","America/Panama|CMT EST|5j.A 50|01|-2uduE.o|15e5","America/Chicago|CST CDT EST CWT CPT|60 50 50 50 50|01010101010101010101010101010101010102010101010103401010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 1wp0 TX0 WN0 1qL0 1cN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 11B0 1Hz0 14p0 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|92e5","America/Chihuahua|LMT MST CST CDT MDT|74.k 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|81e4","America/Costa_Rica|SJMT CST CDT|5A.d 60 50|0121212121|-1Xd6n.L 2lu0n.L Db0 1Kp0 Db0 pRB0 15b0 1kp0 mL0|12e5","America/Creston|MST PST|70 80|010|-29DR0 43B0|53e2","America/Cuiaba|LMT -04 -03|3I.k 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwf.E HdLf.E 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 4a10 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|54e4","America/Danmarkshavn|LMT -03 -02 GMT|1e.E 30 20 0|01212121212121212121212121212121213|-2a5WJ.k 2z5fJ.k 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 DC0|8","America/Dawson_Creek|PST PDT PWT PPT MST|80 70 70 70 70|0102301010101010101010101010101010101010101010101010101014|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 ML0|12e3","America/Dawson|YST YDT YWT YPT YDDT PST PDT|90 80 80 80 70 80 70|0101023040565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 jrA0 fNd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|13e2","America/Denver|MST MDT MWT MPT|70 60 60 60|01010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 11B0 1qL0 WN0 mn0 Ord0 8x20 ix0 LCN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e5","America/Detroit|LMT CST EST EWT EPT EDT|5w.b 60 50 40 40 40|0123425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2Cgir.N peqr.N 156L0 8x40 iv0 6fd0 11z0 JxX1 SMX 1cN0 1cL0 aW10 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e5","America/Edmonton|LMT MST MDT MWT MPT|7x.Q 70 60 60 60|0121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2yd4q.8 shdq.8 1in0 17d0 hz0 2dB0 1fz0 1a10 11z0 1qN0 WL0 1qN0 11z0 IGN0 8x20 ix0 3NB0 11z0 XQp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|10e5","America/Eirunepe|LMT -05 -04|4D.s 50 40|0121212121212121212121212121212121|-2glvk.w HdLk.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0 yTd0 d5X0|31e3","America/El_Salvador|LMT CST CDT|5U.M 60 50|012121|-1XiG3.c 2Fvc3.c WL0 1qN0 WL0|11e5","America/Tijuana|LMT MST PST PDT PWT PPT|7M.4 70 80 70 70 70|012123245232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQE0 4PX0 8mM0 8lc0 SN0 1cL0 pHB0 83r0 zI0 5O10 1Rz0 cOO0 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 BUp0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|20e5","America/Fort_Nelson|PST PDT PWT PPT MST|80 70 70 70 70|01023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010104|-25TO0 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0|39e2","America/Fort_Wayne|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010101023010101010101010101040454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 QI10 Db0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 5Tz0 1o10 qLb0 1cL0 1cN0 1cL0 1qhd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Fortaleza|LMT -03 -02|2y 30 20|0121212121212121212121212121212121212121|-2glxq HdLq 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 5z0 2mN0 On0|34e5","America/Glace_Bay|LMT AST ADT AWT APT|3X.M 40 30 30 30|012134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsI0.c CwO0.c 1in0 UGp0 8x50 iu0 iq10 11z0 Jg10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","America/Godthab|LMT -03 -02|3q.U 30 20|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5Ux.4 2z5dx.4 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e3","America/Goose_Bay|NST NDT NST NDT NWT NPT AST ADT ADDT|3u.Q 2u.Q 3u 2u 2u 2u 40 30 20|010232323232323245232323232323232323232323232323232323232326767676767676767676767676767676767676767676768676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-25TSt.8 1in0 DXb0 2HbX.8 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 S10 g0u 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|76e2","America/Grand_Turk|KMT EST EDT AST|57.a 50 40 40|01212121212121212121212121212121212121212121212121212121212121212121212121232121212121212121212121212121212121212121|-2l1uQ.O 2HHBQ.O 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 5Ip0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e2","America/Guatemala|LMT CST CDT|62.4 60 50|0121212121|-24KhV.U 2efXV.U An0 mtd0 Nz0 ifB0 17b0 zDB0 11z0|13e5","America/Guayaquil|QMT -05 -04|5e 50 40|0121|-1yVSK 2uILK rz0|27e5","America/Guyana|LMT -0345 -03 -04|3Q.E 3J 30 40|0123|-2dvU7.k 2r6LQ.k Bxbf|80e4","America/Halifax|LMT AST ADT AWT APT|4e.o 40 30 30 30|0121212121212121212121212121212121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsHJ.A xzzJ.A 1db0 3I30 1in0 3HX0 IL0 1E10 ML0 1yN0 Pb0 1Bd0 Mn0 1Bd0 Rz0 1w10 Xb0 1w10 LX0 1w10 Xb0 1w10 Lz0 1C10 Jz0 1E10 OL0 1yN0 Un0 1qp0 Xb0 1qp0 11X0 1w10 Lz0 1HB0 LX0 1C10 FX0 1w10 Xb0 1qp0 Xb0 1BB0 LX0 1td0 Xb0 1qp0 Xb0 Rf0 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 6i10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|39e4","America/Havana|HMT CST CDT|5t.A 50 40|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Meuu.o 72zu.o ML0 sld0 An0 1Nd0 Db0 1Nd0 An0 6Ep0 An0 1Nd0 An0 JDd0 Mn0 1Ap0 On0 1fd0 11X0 1qN0 WL0 1wp0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 14n0 1ld0 14L0 1kN0 15b0 1kp0 1cL0 1cN0 1fz0 1a10 1fz0 1fB0 11z0 14p0 1nX0 11B0 1nX0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 1a10 1in0 1a10 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 17c0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 11A0 6i00 Rc0 1wo0 U00 1tA0 Rc0 1wo0 U00 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0|21e5","America/Hermosillo|LMT MST CST PST MDT|7n.Q 70 60 80 60|0121212131414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0|64e4","America/Indiana/Knox|CST CDT CWT CPT EST|60 50 50 50 50|0101023010101010101010101010101010101040101010101010101010101010101010101010101010101010141010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 3Cn0 8wp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 z8o0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Marengo|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010104545454545414545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 dyN0 11z0 6fd0 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1e6p0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Petersburg|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010104010101010101010101010141014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 3Fb0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 19co0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Tell_City|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010401054541010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 8wn0 1cN0 1cL0 1cN0 1cK0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Vevay|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|010102304545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 kPB0 Awn0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1lnd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Vincennes|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010454541014545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 g0p0 11z0 1o10 11z0 1qL0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 caL0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Indiana/Winamac|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|01010230101010101010101010101010101010454541054545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1za0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Inuvik|-00 PST PDDT MST MDT|0 80 60 70 60|0121343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-FnA0 tWU0 1fA0 wPe0 2pz0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|35e2","America/Iqaluit|-00 EWT EPT EST EDDT EDT CST CDT|0 40 40 50 30 40 60 50|01234353535353535353535353535353535353535353567353535353535353535353535353535353535353535353535353535353535353535353535353|-16K00 7nX0 iv0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|67e2","America/Jamaica|KMT EST EDT|57.a 50 40|0121212121212121212121|-2l1uQ.O 2uM1Q.O 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0|94e4","America/Juneau|PST PWT PPT PDT YDT YST AKST AKDT|80 70 70 70 80 90 90 80|01203030303030303030303030403030356767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cM0 1cM0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|33e3","America/Kentucky/Louisville|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101010102301010101010101010101010101454545454545414545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 3Fd0 Nb0 LPd0 11z0 RB0 8x30 iw0 1nX1 e0X 9vd0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 xz0 gso0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Kentucky/Monticello|CST CDT CWT CPT EST EDT|60 50 50 50 50 40|0101023010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454545454|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 SWp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/La_Paz|CMT BST -04|4w.A 3w.A 40|012|-1x37r.o 13b0|19e5","America/Lima|LMT -05 -04|58.A 50 40|0121212121212121|-2tyGP.o 1bDzP.o zX0 1aN0 1cL0 1cN0 1cL0 1PrB0 zX0 1O10 zX0 6Gp0 zX0 98p0 zX0|11e6","America/Los_Angeles|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 5Wp1 1VaX 3dA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e6","America/Maceio|LMT -03 -02|2m.Q 30 20|012121212121212121212121212121212121212121|-2glxB.8 HdLB.8 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 8Q10 WL0 1tB0 5z0 2mN0 On0|93e4","America/Managua|MMT CST EST CDT|5J.c 60 50 50|0121313121213131|-1quie.M 1yAMe.M 4mn0 9Up0 Dz0 1K10 Dz0 s3F0 1KH0 DB0 9In0 k8p0 19X0 1o30 11y0|22e5","America/Manaus|LMT -04 -03|40.4 40 30|01212121212121212121212121212121|-2glvX.U HdKX.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0|19e5","America/Martinique|FFMT AST ADT|44.k 40 30|0121|-2mPTT.E 2LPbT.E 19X0|39e4","America/Matamoros|LMT CST CDT|6E 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|45e4","America/Mazatlan|LMT MST CST PST MDT|75.E 70 60 80 60|0121212131414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 otX0 gmN0 P2N0 13Vd0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|44e4","America/Menominee|CST CDT CWT CPT EST|60 50 50 50 50|01010230101041010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 LCN0 1fz0 6410 9Jb0 1cM0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|85e2","America/Merida|LMT CST EST CDT|5W.s 60 50 50|0121313131313131313131313131313131313131313131313131313131313131313131313131313131313131|-1UQG0 2q2o0 2hz0 wu30 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|11e5","America/Metlakatla|PST PWT PPT PDT AKST AKDT|80 70 70 70 90 80|01203030303030303030303030303030304545450454545454545454545454545454545454545454|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1hU10 Rd0 1zb0 Op0 1zb0 Op0 1zb0 uM0 jB0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Mexico_City|LMT MST CST CDT CWT|6A.A 70 60 50 50|012121232324232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 gEn0 TX0 3xd0 Jb0 6zB0 SL0 e5d0 17b0 1Pff0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|20e6","America/Miquelon|LMT AST -03 -02|3I.E 40 30 20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2mKkf.k 2LTAf.k gQ10 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|61e2","America/Moncton|EST AST ADT AWT APT|50 40 30 30 30|012121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsH0 CwN0 1in0 zAo0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1K10 Lz0 1zB0 NX0 1u10 Wn0 S20 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14n1 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 ReX 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|64e3","America/Monterrey|LMT CST CDT|6F.g 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0|41e5","America/Montevideo|LMT MMT -04 -03 -0330 -0230 -02 -0130|3I.P 3I.P 40 30 3u 2u 20 1u|012343434343434343434343435353636353636375363636363636363636363636363636363636363636363|-2tRUf.9 sVc0 8jcf.9 1db0 1dcu 1cLu 1dcu 1cLu ircu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu WLu 1fAu 1cLu 1o0u 11zu NAu 3jXu zXu Dq0u 19Xu pcu jz0 cm10 19X0 6tB0 1fbu 3o0u jX0 4vB0 xz0 3Cp0 mmu 1a10 IMu Db0 4c10 uL0 1Nd0 An0 1SN0 uL0 mp0 28L0 iPB0 un0 1SN0 xz0 1zd0 Lz0 1zd0 Rb0 1zd0 On0 1wp0 Rb0 s8p0 1fB0 1ip0 11z0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 11z0|17e5","America/Toronto|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101012301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 11Wu 1nzu 1fD0 WJ0 1wr0 Nb0 1Ap0 On0 1zd0 On0 1wp0 TX0 1tB0 TX0 1tB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 4kM0 8x40 iv0 1o10 11z0 1nX0 11z0 1o10 11z0 1o10 1qL0 11D0 1nX0 11B0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e5","America/Nassau|LMT EST EDT|59.u 50 40|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2kNuO.u 26XdO.u 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|24e4","America/New_York|EST EDT EWT EPT|50 40 40 40|01010101010101010101010101010101010101010101010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 11B0 1qL0 1a10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x40 iv0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e6","America/Nipigon|EST EDT EWT EPT|50 40 40 40|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TR0 1in0 Rnb0 3je0 8x40 iv0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|16e2","America/Nome|NST NWT NPT BST BDT YST AKST AKDT|b0 a0 a0 b0 a0 90 90 80|012034343434343434343434343434343456767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-17SX0 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cl0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|38e2","America/Noronha|LMT -02 -01|29.E 20 10|0121212121212121212121212121212121212121|-2glxO.k HdKO.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|30e2","America/North_Dakota/Beulah|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/North_Dakota/Center|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101014545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/North_Dakota/New_Salem|MST MDT MWT MPT CST CDT|70 60 60 60 60 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101454545454545454545454545454545454545454545454545454545454545454545454|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","America/Ojinaga|LMT MST CST CDT MDT|6V.E 70 60 50 60|0121212323241414141414141414141414141414141414141414141414141414141414141414141414141414141|-1UQF0 deL0 8lc0 17c0 10M0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3","America/Pangnirtung|-00 AST AWT APT ADDT ADT EDT EST CST CDT|0 40 30 30 20 30 40 50 60 50|012314151515151515151515151515151515167676767689767676767676767676767676767676767676767676767676767676767676767676767676767|-1XiM0 PnG0 8x50 iu0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1o00 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2","America/Paramaribo|LMT PMT PMT -0330 -03|3E.E 3E.Q 3E.A 3u 30|01234|-2nDUj.k Wqo0.c qanX.I 1yVXN.o|24e4","America/Phoenix|MST MDT MWT|70 60 60|01010202010|-261r0 1nX0 11B0 1nX0 SgN0 4Al1 Ap0 1db0 SWqX 1cL0|42e5","America/Port-au-Prince|PPMT EST EDT|4N 50 40|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-28RHb 2FnMb 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14q0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 i6n0 1nX0 11B0 1nX0 d430 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 3iN0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Rio_Branco|LMT -05 -04|4v.c 50 40|01212121212121212121212121212121|-2glvs.M HdLs.M 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0 d5X0|31e4","America/Porto_Velho|LMT -04 -03|4f.A 40 30|012121212121212121212121212121|-2glvI.o HdKI.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|37e4","America/Puerto_Rico|AST AWT APT|40 30 30|0120|-17lU0 7XT0 iu0|24e5","America/Punta_Arenas|SMT -05 -04 -03|4G.K 50 40 30|0102021212121212121232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 blz0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|","America/Rainy_River|CST CDT CWT CPT|60 50 50 50|010123010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TQ0 1in0 Rnb0 3je0 8x30 iw0 19yN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|842","America/Rankin_Inlet|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313131313131313131313131313131313131313131313131313131313131313131|-vDc0 keu0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e2","America/Recife|LMT -03 -02|2j.A 30 20|0121212121212121212121212121212121212121|-2glxE.o HdLE.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|33e5","America/Regina|LMT MST MDT MWT MPT CST|6W.A 70 60 60 60 60|012121212121212121212121341212121212121212121212121215|-2AD51.o uHe1.o 1in0 s2L0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 66N0 1cL0 1cN0 19X0 1fB0 1cL0 1fB0 1cL0 1cN0 1cL0 M30 8x20 ix0 1ip0 1cL0 1ip0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 3NB0 1cL0 1cN0|19e4","America/Resolute|-00 CST CDDT CDT EST|0 60 40 50 50|012131313131313131313131313131313131313131313431313131313431313131313131313131313131313131313131313131313131313131313131|-SnA0 GWS0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|229","America/Santarem|LMT -04 -03|3C.M 40 30|0121212121212121212121212121212|-2glwl.c HdLl.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0|21e4","America/Santiago|SMT -05 -04 -03|4G.K 50 40 30|010202121212121212321232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-2q2jh.e fJAh.e 5knG.K 1Vzh.e jRAG.K 1pbh.e 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 9Bz0 jb0 1oN0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|62e5","America/Santo_Domingo|SDMT EST EDT -0430 AST|4E 50 40 4u 40|01213131313131414|-1ttjk 1lJMk Mn0 6sp0 Lbu 1Cou yLu 1RAu wLu 1QMu xzu 1Q0u xXu 1PAu 13jB0 e00|29e5","America/Sao_Paulo|LMT -03 -02|36.s 30 20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwR.w HdKR.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 pTd0 PX0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|20e6","America/Scoresbysund|LMT -02 -01 +00|1r.Q 20 10 0|0121323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2a5Ww.8 2z5ew.8 1a00 1cK0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|452","America/Sitka|PST PWT PPT PDT YST AKST AKDT|80 70 70 70 90 90 80|01203030303030303030303030303030345656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-17T20 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|90e2","America/St_Johns|NST NDT NST NDT NWT NPT NDDT|3u.Q 2u.Q 3u 2u 2u 2u 1u|01010101010101010101010101010101010102323232323232324523232323232323232323232323232323232323232323232323232323232323232323232323232323232326232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-28oit.8 14L0 1nB0 1in0 1gm0 Dz0 1JB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1fB0 19X0 1fB0 19X0 10O0 eKX.8 19X0 1iq0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Swift_Current|LMT MST MDT MWT MPT CST|7b.k 70 60 60 60 60|012134121212121212121215|-2AD4M.E uHdM.E 1in0 UGp0 8x20 ix0 1o10 17b0 1ip0 11z0 1o10 11z0 1o10 11z0 isN0 1cL0 3Cp0 1cL0 1cN0 11z0 1qN0 WL0 pMp0|16e3","America/Tegucigalpa|LMT CST CDT|5M.Q 60 50|01212121|-1WGGb.8 2ETcb.8 WL0 1qN0 WL0 GRd0 AL0|11e5","America/Thule|LMT AST ADT|4z.8 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5To.Q 31NBo.Q 1cL0 1cN0 1cL0 1fB0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|656","America/Thunder_Bay|CST EST EWT EPT EDT|60 50 40 40 40|0123141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-2q5S0 1iaN0 8x40 iv0 XNB0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4","America/Vancouver|PST PDT PWT PPT|80 70 70 70|0102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-25TO0 1in0 UGp0 8x10 iy0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5","America/Whitehorse|YST YDT YWT YPT YDDT PST PDT|90 80 80 80 70 80 70|0101023040565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-25TN0 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 3NA0 vrd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3","America/Winnipeg|CST CDT CWT CPT|60 50 50 50|010101023010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aIi0 WL0 3ND0 1in0 Jap0 Rb0 aCN0 8x30 iw0 1tB0 11z0 1ip0 11z0 1o10 11z0 1o10 11z0 1rd0 10L0 1op0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 1cL0 1cN0 11z0 6i10 WL0 6i10 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|66e4","America/Yakutat|YST YWT YPT YDT AKST AKDT|90 80 80 80 90 80|01203030303030303030303030303030304545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-17T10 8x00 iz0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cn0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|642","America/Yellowknife|-00 MST MWT MPT MDDT MDT|0 70 60 60 50 60|012314151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151|-1pdA0 hix0 8x20 ix0 LCL0 1fA0 zgO0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3","Antarctica/Casey|-00 +08 +11|0 -80 -b0|01212121|-2q00 1DjS0 T90 40P0 KL0 blz0 3m10|10","Antarctica/Davis|-00 +07 +05|0 -70 -50|01012121|-vyo0 iXt0 alj0 1D7v0 VB0 3Wn0 KN0|70","Antarctica/DumontDUrville|-00 +10|0 -a0|0101|-U0o0 cfq0 bFm0|80","Antarctica/Macquarie|AEST AEDT -00 +11|-a0 -b0 0 -b0|0102010101010101010101010101010101010101010101010101010101010101010101010101010101010101013|-29E80 19X0 4SL0 1ayy0 Lvs0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0|1","Antarctica/Mawson|-00 +06 +05|0 -60 -50|012|-CEo0 2fyk0|60","Pacific/Auckland|NZMT NZST NZST NZDT|-bu -cu -c0 -d0|01020202020202020202020202023232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1GCVu Lz0 1tB0 11zu 1o0u 11zu 1o0u 11zu 1o0u 14nu 1lcu 14nu 1lcu 1lbu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1qLu WMu 1qLu 11Au 1n1bu IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|14e5","Antarctica/Palmer|-00 -03 -04 -02|0 30 40 20|0121212121213121212121212121212121212121212121212121212121212121212121212121212121|-cao0 nD0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 jsN0 14N0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|40","Antarctica/Rothera|-00 -03|0 30|01|gOo0|130","Antarctica/Syowa|-00 +03|0 -30|01|-vs00|20","Antarctica/Troll|-00 +00 +02|0 0 -20|01212121212121212121212121212121212121212121212121212121212121212121|1puo0 hd0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|40","Antarctica/Vostok|-00 +06|0 -60|01|-tjA0|25","Europe/Oslo|CET CEST|-10 -20|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2awM0 Qm0 W6o0 5pf0 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 wJc0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1qM0 WM0 zpc0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e4","Asia/Riyadh|LMT +03|-36.Q -30|01|-TvD6.Q|57e5","Asia/Almaty|LMT +05 +06 +07|-57.M -50 -60 -70|012323232323232323232321232323232323232323232323232|-1Pc57.M eUo7.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|15e5","Asia/Amman|LMT EET EEST|-2n.I -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1yW2n.I 1HiMn.I KL0 1oN0 11b0 1oN0 11b0 1pd0 1dz0 1cp0 11b0 1op0 11b0 fO10 1db0 1e10 1cL0 1cN0 1cL0 1cN0 1fz0 1pd0 10n0 1ld0 14n0 1hB0 15b0 1ip0 19X0 1cN0 1cL0 1cN0 17b0 1ld0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1So0 y00 1fc0 1dc0 1co0 1dc0 1cM0 1cM0 1cM0 1o00 11A0 1lc0 17c0 1cM0 1cM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 4bX0 Dd0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|25e5","Asia/Anadyr|LMT +12 +13 +14 +11|-bN.U -c0 -d0 -e0 -b0|01232121212121212121214121212121212121212121212121212121212141|-1PcbN.U eUnN.U 23CL0 1db0 2q10 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|13e3","Asia/Aqtau|LMT +04 +05 +06|-3l.4 -40 -50 -60|012323232323232323232123232312121212121212121212|-1Pc3l.4 eUnl.4 24PX0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|15e4","Asia/Aqtobe|LMT +04 +05 +06|-3M.E -40 -50 -60|0123232323232323232321232323232323232323232323232|-1Pc3M.E eUnM.E 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|27e4","Asia/Ashgabat|LMT +04 +05 +06|-3R.w -40 -50 -60|0123232323232323232323212|-1Pc3R.w eUnR.w 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0|41e4","Asia/Atyrau|LMT +03 +05 +06 +04|-3r.I -30 -50 -60 -40|01232323232323232323242323232323232324242424242|-1Pc3r.I eUor.I 24PW0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 2sp0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|","Asia/Baghdad|BMT +03 +04|-2V.A -30 -40|012121212121212121212121212121212121212121212121212121|-26BeV.A 2ACnV.A 11b0 1cp0 1dz0 1dd0 1db0 1cN0 1cp0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1de0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0|66e5","Asia/Qatar|LMT +04 +03|-3q.8 -40 -30|012|-21Jfq.8 27BXq.8|96e4","Asia/Baku|LMT +03 +04 +05|-3j.o -30 -40 -50|01232323232323232323232123232323232323232323232323232323232323232|-1Pc3j.o 1jUoj.o WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 9Je0 1o00 11z0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5","Asia/Bangkok|BMT +07|-6G.4 -70|01|-218SG.4|15e6","Asia/Barnaul|LMT +06 +07 +08|-5z -60 -70 -80|0123232323232323232323212323232321212121212121212121212121212121212|-21S5z pCnz 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 p90 LE0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|","Asia/Beirut|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-21aq0 1on0 1410 1db0 19B0 1in0 1ip0 WL0 1lQp0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 q6N0 En0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1op0 11b0 dA10 17b0 1iN0 17b0 1iN0 17b0 1iN0 17b0 1vB0 SL0 1mp0 13z0 1iN0 17b0 1iN0 17b0 1jd0 12n0 1a10 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0|22e5","Asia/Bishkek|LMT +05 +06 +07|-4W.o -50 -60 -70|012323232323232323232321212121212121212121212121212|-1Pc4W.o eUnW.o 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2e00 1tX0 17b0 1ip0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1cPu 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0|87e4","Asia/Brunei|LMT +0730 +08|-7D.E -7u -80|012|-1KITD.E gDc9.E|42e4","Asia/Kolkata|MMT IST +0630|-5l.a -5u -6u|012121|-2zOtl.a 1r2LP.a 1un0 HB0 7zX0|15e6","Asia/Chita|LMT +08 +09 +10|-7x.Q -80 -90 -a0|012323232323232323232321232323232323232323232323232323232323232312|-21Q7x.Q pAnx.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3re0|33e4","Asia/Choibalsan|LMT +07 +08 +10 +09|-7C -70 -80 -a0 -90|0123434343434343434343434343434343434343434343424242|-2APHC 2UkoC cKn0 1da0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 3Db0 h1f0 1cJ0 1cP0 1cJ0|38e3","Asia/Shanghai|CST CDT|-80 -90|010101010101010101010101010|-1c2w0 Rz0 11d0 1wL0 A10 8HX0 1G10 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 aL0 1tU30 Rb0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0|23e6","Asia/Colombo|MMT +0530 +06 +0630|-5j.w -5u -60 -6u|01231321|-2zOtj.w 1rFbN.w 1zzu 7Apu 23dz0 11zu n3cu|22e5","Asia/Dhaka|HMT +0630 +0530 +06 +07|-5R.k -6u -5u -60 -70|0121343|-18LFR.k 1unn.k HB0 m6n0 2kxbu 1i00|16e6","Asia/Damascus|LMT EET EEST|-2p.c -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-21Jep.c Hep.c 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1xRB0 11X0 1oN0 10L0 1pB0 11b0 1oN0 10L0 1mp0 13X0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 Nb0 1AN0 Nb0 bcp0 19X0 1gp0 19X0 3ld0 1xX0 Vd0 1Bz0 Sp0 1vX0 10p0 1dz0 1cN0 1cL0 1db0 1db0 1g10 1an0 1ap0 1db0 1fd0 1db0 1cN0 1db0 1dd0 1db0 1cp0 1dz0 1c10 1dX0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 19z0 1fB0 1qL0 11B0 1on0 Wp0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0|26e5","Asia/Dili|LMT +08 +09|-8m.k -80 -90|01212|-2le8m.k 1dnXm.k 1nfA0 Xld0|19e4","Asia/Dubai|LMT +04|-3F.c -40|01|-21JfF.c|39e5","Asia/Dushanbe|LMT +05 +06 +07|-4z.c -50 -60 -70|012323232323232323232321|-1Pc4z.c eUnz.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2hB0|76e4","Asia/Famagusta|LMT EET EEST +03|-2f.M -20 -30 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212312121212121212121212121212121212121212121|-1Vc2f.M 2a3cf.M 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 15U0 2Ks0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Asia/Gaza|EET EEST IST IDT|-20 -30 -20 -30|0101010101010101010101010101010123232323232323232323232323232320101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2q0 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 pBd0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 11z0 1o10 14o0 1lA1 SKX 1xd1 MKX 1AN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 WN0 1qL0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0|18e5","Asia/Hebron|EET EEST IST IDT|-20 -30 -20 -30|010101010101010101010101010101012323232323232323232323232323232010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-1c2q0 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 pBd0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 12L0 1mN0 14o0 1lc0 Tb0 1xd1 MKX bB0 cn0 1cN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nz0 1220 1qL0 WN0 1qL0 WN0 1qL0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0 Wo0 1rc0 11c0 1oo0 11c0 1oo0 11c0 1oo0 11c0 1rc0|25e4","Asia/Ho_Chi_Minh|LMT PLMT +07 +08 +09|-76.E -76.u -70 -80 -90|0123423232|-2yC76.E bK00.a 1h7b6.u 5lz0 18o0 3Oq0 k5b0 aW00 BAM0|90e5","Asia/Hong_Kong|LMT HKT HKST HKWT JST|-7A.G -80 -90 -8u -90|0123412121212121212121212121212121212121212121212121212121212121212121|-2CFH0 1taO0 Hc0 xUu 9tBu 11z0 1tDu Rc0 1wo0 11A0 1cM0 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1nX0 U10 1tz0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|73e5","Asia/Hovd|LMT +06 +07 +08|-66.A -60 -70 -80|012323232323232323232323232323232323232323232323232|-2APG6.A 2Uko6.A cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|81e3","Asia/Irkutsk|IMT +07 +08 +09|-6V.5 -70 -80 -90|01232323232323232323232123232323232323232323232323232323232323232|-21zGV.5 pjXV.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Europe/Istanbul|IMT EET EEST +03 +04|-1U.U -20 -30 -30 -40|0121212121212121212121212121212121212121212121234312121212121212121212121212121212121212121212121212121212121212123|-2ogNU.U dzzU.U 11b0 8tB0 1on0 1410 1db0 19B0 1in0 3Rd0 Un0 1oN0 11b0 zSN0 CL0 mp0 1Vz0 1gN0 8yn0 1yp0 ML0 1kp0 17b0 1ip0 17b0 1fB0 19X0 1ip0 19X0 1ip0 17b0 qdB0 38L0 1jd0 Tz0 l6O0 11A0 WN0 1qL0 TB0 1tX0 U10 1tz0 11B0 1in0 17d0 z90 cne0 pb0 2Cp0 1800 14o0 1dc0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1a00 1fA0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WO0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6","Asia/Jakarta|BMT +0720 +0730 +09 +08 WIB|-77.c -7k -7u -90 -80 -70|01232425|-1Q0Tk luM0 mPzO 8vWu 6kpu 4PXu xhcu|31e6","Asia/Jayapura|LMT +09 +0930 WIT|-9m.M -90 -9u -90|0123|-1uu9m.M sMMm.M L4nu|26e4","Asia/Jerusalem|JMT IST IDT IDDT|-2k.E -20 -30 -40|012121212121321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-26Bek.E SyMk.E 5Rb0 10r0 1px0 10N0 1pz0 16p0 1jB0 16p0 1jx0 3LB0 Em0 or0 1cn0 1dB0 16n0 10O0 1ja0 1tC0 14o0 1cM0 1a00 11A0 1Na0 An0 1MP0 AJ0 1Kp0 LC0 1oo0 Wl0 EQN0 Db0 1fB0 Rb0 bXd0 gM0 8Q00 IM0 1wM0 11z0 1C10 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 1hB0 1dX0 1ep0 1aL0 1eN0 17X0 1nf0 11z0 1tB0 19W0 1e10 17b0 1ep0 1gL0 18N0 1fz0 1eN0 17b0 1gq0 1gn0 19d0 1dz0 1c10 17X0 1hB0 1gn0 19d0 1dz0 1c10 17X0 1kp0 1dz0 1c10 1aL0 1eN0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0|81e4","Asia/Kabul|+04 +0430|-40 -4u|01|-10Qs0|46e5","Asia/Kamchatka|LMT +11 +12 +13|-ay.A -b0 -c0 -d0|012323232323232323232321232323232323232323232323232323232323212|-1SLKy.A ivXy.A 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|18e4","Asia/Karachi|LMT +0530 +0630 +05 PKT PKST|-4s.c -5u -6u -50 -50 -60|012134545454|-2xoss.c 1qOKW.c 7zX0 eup0 LqMu 1fy00 1cL0 dK10 11b0 1610 1jX0|24e6","Asia/Urumqi|LMT +06|-5O.k -60|01|-1GgtO.k|32e5","Asia/Kathmandu|LMT +0530 +0545|-5F.g -5u -5J|012|-21JhF.g 2EGMb.g|12e5","Asia/Khandyga|LMT +08 +09 +10 +11|-92.d -80 -90 -a0 -b0|0123232323232323232323212323232323232323232323232343434343434343432|-21Q92.d pAp2.d 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 qK0 yN0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|66e2","Asia/Krasnoyarsk|LMT +06 +07 +08|-6b.q -60 -70 -80|01232323232323232323232123232323232323232323232323232323232323232|-21Hib.q prAb.q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|10e5","Asia/Kuala_Lumpur|SMT +07 +0720 +0730 +09 +08|-6T.p -70 -7k -7u -90 -80|0123435|-2Bg6T.p 17anT.p l5XE 17bO 8Fyu 1so1u|71e5","Asia/Kuching|LMT +0730 +08 +0820 +09|-7l.k -7u -80 -8k -90|0123232323232323242|-1KITl.k gDbP.k 6ynu AnE 1O0k AnE 1NAk AnE 1NAk AnE 1NAk AnE 1O0k AnE 1NAk AnE pAk 8Fz0|13e4","Asia/Macau|LMT CST +09 +10 CDT|-7y.a -80 -90 -a0 -90|012323214141414141414141414141414141414141414141414141414141414141414141|-2CFHy.a 1uqKy.a PX0 1kn0 15B0 11b0 4Qq0 1oM0 11c0 1ko0 1u00 11A0 1cM0 11c0 1o00 11A0 1o00 11A0 1oo0 1400 1o00 11A0 1o00 U00 1tA0 U00 1wo0 Rc0 1wru U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cK0 1cO0 1cK0 1cO0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|57e4","Asia/Magadan|LMT +10 +11 +12|-a3.c -a0 -b0 -c0|012323232323232323232321232323232323232323232323232323232323232312|-1Pca3.c eUo3.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Cq0|95e3","Asia/Makassar|LMT MMT +08 +09 WITA|-7V.A -7V.A -80 -90 -80|01234|-21JjV.A vfc0 myLV.A 8ML0|15e5","Asia/Manila|PST PDT JST|-80 -90 -90|010201010|-1kJI0 AL0 cK10 65X0 mXB0 vX0 VK10 1db0|24e6","Asia/Nicosia|LMT EET EEST|-2d.s -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2d.s 2a3cd.s 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|32e4","Asia/Novokuznetsk|LMT +06 +07 +08|-5M.M -60 -70 -80|012323232323232323232321232323232323232323232323232323232323212|-1PctM.M eULM.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|55e4","Asia/Novosibirsk|LMT +06 +07 +08|-5v.E -60 -70 -80|0123232323232323232323212323212121212121212121212121212121212121212|-21Qnv.E pAFv.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 ml0 Os0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 4eN0|15e5","Asia/Omsk|LMT +05 +06 +07|-4R.u -50 -60 -70|01232323232323232323232123232323232323232323232323232323232323232|-224sR.u pMLR.u 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|12e5","Asia/Oral|LMT +03 +05 +06 +04|-3p.o -30 -50 -60 -40|01232323232323232424242424242424242424242424242|-1Pc3p.o eUop.o 23CK0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 1cM0 IM0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|27e4","Asia/Pontianak|LMT PMT +0730 +09 +08 WITA WIB|-7h.k -7h.k -7u -90 -80 -80 -70|012324256|-2ua7h.k XE00 munL.k 8Rau 6kpu 4PXu xhcu Wqnu|23e4","Asia/Pyongyang|LMT KST JST KST|-8n -8u -90 -90|012313|-2um8n 97XR 1lTzu 2Onc0 6BA0|29e5","Asia/Qostanay|LMT +04 +05 +06|-4e.s -40 -50 -60|012323232323232323232123232323232323232323232323|-1Pc4e.s eUoe.s 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|","Asia/Qyzylorda|LMT +04 +05 +06|-4l.Q -40 -50 -60|01232323232323232323232323232323232323232323232|-1Pc4l.Q eUol.Q 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 3ao0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 zQl0|73e4","Asia/Rangoon|RMT +0630 +09|-6o.L -6u -90|0121|-21Jio.L SmnS.L 7j9u|48e5","Asia/Sakhalin|LMT +09 +11 +12 +10|-9u.M -90 -b0 -c0 -a0|01232323232323232323232423232323232424242424242424242424242424242|-2AGVu.M 1BoMu.M 1qFa0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 2pB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|58e4","Asia/Samarkand|LMT +04 +05 +06|-4r.R -40 -50 -60|01232323232323232323232|-1Pc4r.R eUor.R 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0|36e4","Asia/Seoul|LMT KST JST KST KDT KDT|-8r.Q -8u -90 -90 -a0 -9u|012343434343151515151515134343|-2um8r.Q 97XV.Q 1m1zu 6CM0 Fz0 1kN0 14n0 1kN0 14L0 1zd0 On0 69B0 2I0u OL0 1FB0 Rb0 1qN0 TX0 1tB0 TX0 1tB0 TX0 1tB0 TX0 2ap0 12FBu 11A0 1o00 11A0|23e6","Asia/Srednekolymsk|LMT +10 +11 +12|-ae.Q -a0 -b0 -c0|01232323232323232323232123232323232323232323232323232323232323232|-1Pcae.Q eUoe.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|35e2","Asia/Taipei|CST JST CDT|-80 -90 -90|01020202020202020202020202020202020202020|-1iw80 joM0 1yo0 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 10N0 1BX0 10p0 1pz0 10p0 1pz0 10p0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1BB0 ML0 1Bd0 ML0 uq10 1db0 1cN0 1db0 97B0 AL0|74e5","Asia/Tashkent|LMT +05 +06 +07|-4B.b -50 -60 -70|012323232323232323232321|-1Pc4B.b eUnB.b 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0|23e5","Asia/Tbilisi|TBMT +03 +04 +05|-2X.b -30 -40 -50|0123232323232323232323212121232323232323232323212|-1Pc2X.b 1jUnX.b WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cK0 1cL0 1cN0 1cL0 1cN0 2pz0 1cL0 1fB0 3Nz0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 An0 Os0 WM0|11e5","Asia/Tehran|LMT TMT +0330 +04 +05 +0430|-3p.I -3p.I -3u -40 -50 -4u|01234325252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2btDp.I 1d3c0 1huLT.I TXu 1pz0 sN0 vAu 1cL0 1dB0 1en0 pNB0 UL0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 64p0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0|14e6","Asia/Thimphu|LMT +0530 +06|-5W.A -5u -60|012|-Su5W.A 1BGMs.A|79e3","Asia/Tokyo|JST JDT|-90 -a0|010101010|-QJJ0 Rc0 1lc0 14o0 1zc0 Oo0 1zc0 Oo0|38e6","Asia/Tomsk|LMT +06 +07 +08|-5D.P -60 -70 -80|0123232323232323232323212323232323232323232323212121212121212121212|-21NhD.P pxzD.P 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 co0 1bB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Qp0|10e5","Asia/Ulaanbaatar|LMT +07 +08 +09|-77.w -70 -80 -90|012323232323232323232323232323232323232323232323232|-2APH7.w 2Uko7.w cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|12e5","Asia/Ust-Nera|LMT +08 +09 +12 +11 +10|-9w.S -80 -90 -c0 -b0 -a0|012343434343434343434345434343434343434343434343434343434343434345|-21Q9w.S pApw.S 23CL0 1d90 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|65e2","Asia/Vladivostok|LMT +09 +10 +11|-8L.v -90 -a0 -b0|01232323232323232323232123232323232323232323232323232323232323232|-1SJIL.v itXL.v 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4","Asia/Yakutsk|LMT +08 +09 +10|-8C.W -80 -90 -a0|01232323232323232323232123232323232323232323232323232323232323232|-21Q8C.W pAoC.W 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|28e4","Asia/Yekaterinburg|LMT PMT +04 +05 +06|-42.x -3J.5 -40 -50 -60|012343434343434343434343234343434343434343434343434343434343434343|-2ag42.x 7mQh.s qBvJ.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|14e5","Asia/Yerevan|LMT +03 +04 +05|-2W -30 -40 -50|0123232323232323232323212121212323232323232323232323232323232|-1Pc2W 1jUnW WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 4RX0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|13e5","Atlantic/Azores|HMT -02 -01 +00 WET|1S.w 20 10 0 0|01212121212121212121212121212121212121212121232123212321232121212121212121212121212121212121212121232323232323232323232323232323234323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2ldW0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|25e4","Atlantic/Bermuda|LMT AST ADT|4j.i 40 30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1BnRE.G 1LTbE.G 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e3","Atlantic/Canary|LMT -01 WET WEST|11.A 10 0 -10|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UtaW.o XPAW.o 1lAK0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Atlantic/Cape_Verde|LMT -02 -01|1y.4 20 10|01212|-2ldW0 1eEo0 7zX0 1djf0|50e4","Atlantic/Faroe|LMT WET WEST|r.4 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2uSnw.U 2Wgow.U 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|49e3","Atlantic/Madeira|FMT -01 +00 +01 WET WEST|17.A 10 0 -10 0 -10|01212121212121212121212121212121212121212121232123212321232121212121212121212121212121212121212121454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2ldX0 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 qIl0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e4","Atlantic/Reykjavik|LMT -01 +00 GMT|1s 10 0 0|012121212121212121212121212121212121212121212121212121212121212121213|-2uWmw mfaw 1Bd0 ML0 1LB0 Cn0 1LB0 3fX0 C10 HrX0 1cO0 LB0 1EL0 LA0 1C00 Oo0 1wo0 Rc0 1wo0 Rc0 1wo0 Rc0 1zc0 Oo0 1zc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 14o0|12e4","Atlantic/South_Georgia|-02|20|0||30","Atlantic/Stanley|SMT -04 -03 -02|3P.o 40 30 20|012121212121212323212121212121212121212121212121212121212121212121212|-2kJw8.A 12bA8.A 19X0 1fB0 19X0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 Cn0 1Cc10 WL0 1qL0 U10 1tz0 2mN0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 U10 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qN0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 U10 1tz0 U10 1tz0 U10|21e2","Australia/Sydney|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|40e5","Australia/Adelaide|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 WM0 1qM0 Rc0 1zc0 U00 1tA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|11e5","Australia/Brisbane|AEST AEDT|-a0 -b0|01010101010101010|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0|20e5","Australia/Broken_Hill|ACST ACDT|-9u -au|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|18e3","Australia/Currie|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 19X0 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|746","Australia/Darwin|ACST ACDT|-9u -au|010101010|-293lt xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0|12e4","Australia/Eucla|+0845 +0945|-8J -9J|0101010101010101010|-293kI xcX 10jd0 yL0 1cN0 1cL0 1gSp0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|368","Australia/Hobart|AEST AEDT|-a0 -b0|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-29E80 19X0 10jd0 yL0 1cN0 1cL0 1fB0 19X0 VfB0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|21e4","Australia/Lord_Howe|AEST +1030 +1130 +11|-a0 -au -bu -b0|0121212121313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313|raC0 1zdu Rb0 1zd0 On0 1zd0 On0 1zd0 On0 1zd0 TXu 1qMu WLu 1tAu WLu 1tAu TXu 1tAu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 11Au 1nXu 1qMu 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu 11zu 1o0u WLu 1qMu 14nu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu|347","Australia/Lindeman|AEST AEDT|-a0 -b0|010101010101010101010|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0|10","Australia/Melbourne|AEST AEDT|-a0 -b0|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101|-293lX xcX 10jd0 yL0 1cN0 1cL0 1fB0 19X0 17c10 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1qM0 11A0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|39e5","Australia/Perth|AWST AWDT|-80 -90|0101010101010101010|-293jX xcX 10jd0 yL0 1cN0 1cL0 1gSp0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|18e5","CET|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Pacific/Easter|EMT -07 -06 -05|7h.s 70 60 50|012121212121212121212121212123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1uSgG.w 1s4IG.w WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 2pA0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0|30e2","CST6CDT|CST CDT CWT CPT|60 50 50 50|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261s0 1nX0 11B0 1nX0 SgN0 8x30 iw0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","EET|EET EEST|-20 -30|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","Europe/Dublin|DMT IST GMT BST IST|p.l -y.D 0 -10 -10|01232323232324242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242|-2ax9y.D Rc0 1fzy.D 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 g600 14o0 1wo0 17c0 1io0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","EST|EST|50|0||","EST5EDT|EST EDT EWT EPT|50 40 40 40|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261t0 1nX0 11B0 1nX0 SgN0 8x40 iv0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","Etc/GMT-0|GMT|0|0||","Etc/GMT-1|+01|-10|0||","Pacific/Port_Moresby|+10|-a0|0||25e4","Etc/GMT-11|+11|-b0|0||","Pacific/Tarawa|+12|-c0|0||29e3","Etc/GMT-13|+13|-d0|0||","Etc/GMT-14|+14|-e0|0||","Etc/GMT-2|+02|-20|0||","Etc/GMT-3|+03|-30|0||","Etc/GMT-4|+04|-40|0||","Etc/GMT-5|+05|-50|0||","Etc/GMT-6|+06|-60|0||","Indian/Christmas|+07|-70|0||21e2","Etc/GMT-8|+08|-80|0||","Pacific/Palau|+09|-90|0||21e3","Etc/GMT+1|-01|10|0||","Etc/GMT+10|-10|a0|0||","Etc/GMT+11|-11|b0|0||","Etc/GMT+12|-12|c0|0||","Etc/GMT+3|-03|30|0||","Etc/GMT+4|-04|40|0||","Etc/GMT+5|-05|50|0||","Etc/GMT+6|-06|60|0||","Etc/GMT+7|-07|70|0||","Etc/GMT+8|-08|80|0||","Etc/GMT+9|-09|90|0||","Etc/UTC|UTC|0|0||","Europe/Amsterdam|AMT NST +0120 +0020 CEST CET|-j.w -1j.w -1k -k -20 -10|010101010101010101010101010101010101010101012323234545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-2aFcj.w 11b0 1iP0 11A0 1io0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1co0 1io0 1yo0 Pc0 1a00 1fA0 1Bc0 Mo0 1tc0 Uo0 1tA0 U00 1uo0 W00 1s00 VA0 1so0 Vc0 1sM0 UM0 1wo0 Rc0 1u00 Wo0 1rA0 W00 1s00 VA0 1sM0 UM0 1w00 fV0 BCX.w 1tA0 U00 1u00 Wo0 1sm0 601k WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|16e5","Europe/Andorra|WET CET CEST|0 -10 -20|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-UBA0 1xIN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|79e3","Europe/Astrakhan|LMT +03 +04 +05|-3c.c -30 -40 -50|012323232323232323212121212121212121212121212121212121212121212|-1Pcrc.c eUMc.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|10e5","Europe/Athens|AMT EET EEST CEST CET|-1y.Q -20 -30 -20 -10|012123434121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a61x.Q CNbx.Q mn0 kU10 9b0 3Es0 Xa0 1fb0 1dd0 k3X0 Nz0 SCp0 1vc0 SO0 1cM0 1a00 1ao0 1fc0 1a10 1fG0 1cg0 1dX0 1bX0 1cQ0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|35e5","Europe/London|GMT BST BDST|0 -10 -20|0101010101010101010101010101010101010101010101010121212121210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|10e6","Europe/Belgrade|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19RC0 3IP0 WM0 1fA0 1cM0 1cM0 1rc0 Qo0 1vmo0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Berlin|CET CEST CEMT|-10 -20 -30|01010101010101210101210101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 kL0 Nc0 m10 WM0 1ao0 1cp0 dX0 jz0 Dd0 1io0 17c0 1fA0 1a00 1ehA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e5","Europe/Prague|CET CEST GMT|-10 -20 0|01010101010101010201010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 1qM0 11c0 mp0 xA0 mn0 17c0 1io0 17c0 1fc0 1ao0 1bNc0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|13e5","Europe/Brussels|WET CET CEST WEST|0 -10 -20 -10|0121212103030303030303030303030303030303030303030303212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ehc0 3zX0 11c0 1iO0 11A0 1o00 11A0 my0 Ic0 1qM0 Rc0 1EM0 UM0 1u00 10o0 1io0 1io0 17c0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a30 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 y00 5Wn0 WM0 1fA0 1cM0 16M0 1iM0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|21e5","Europe/Bucharest|BMT EET EEST|-1I.o -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1xApI.o 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Axc0 On0 1fA0 1a10 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|19e5","Europe/Budapest|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1ip0 17b0 1op0 1tb0 Q2m0 3Ne0 WM0 1fA0 1cM0 1cM0 1oJ0 1dc0 1030 1fA0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1iM0 1fA0 8Ha0 Rb0 1wN0 Rb0 1BB0 Lz0 1C20 LB0 SNX0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zurich|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-19Lc0 11A0 1o00 11A0 1xG10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e4","Europe/Chisinau|CMT BMT EET EEST CEST CET MSK MSD|-1T -1I.o -20 -30 -20 -10 -30 -40|012323232323232323234545467676767676767676767323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-26jdT wGMa.A 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 27A0 2en0 39g0 WM0 1fA0 1cM0 V90 1t7z0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 gL0 WO0 1cM0 1cM0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11D0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|67e4","Europe/Copenhagen|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 Tz0 VuO0 60q0 WM0 1fA0 1cM0 1cM0 1cM0 S00 1HA0 Nc0 1C00 Dc0 1Nc0 Ao0 1h5A0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Gibraltar|GMT BST BDST CET CEST|0 -10 -20 -10 -20|010101010101010101010101010101010101010101010101012121212121010121010101010101010101034343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-2axa0 Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 10Jz0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|30e3","Europe/Helsinki|HMT EET EEST|-1D.N -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1WuND.N OULD.N 1dA0 1xGq0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Kaliningrad|CET CEST EET EEST MSK MSD +03|-10 -20 -20 -30 -30 -40 -30|01010101010101232454545454545454543232323232323232323232323232323232323232323262|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 390 7A0 1en0 12N0 1pbb0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|44e4","Europe/Kiev|KMT EET MSK CEST CET MSD EEST|-22.4 -20 -30 -20 -10 -40 -30|0123434252525252525252525256161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc22.4 eUo2.4 rnz0 2Hg0 WM0 1fA0 da0 1v4m0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 Db0 3220 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|34e5","Europe/Kirov|LMT +03 +04 +05|-3i.M -30 -40 -50|01232323232323232321212121212121212121212121212121212121212121|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|48e4","Europe/Lisbon|LMT WET WEST WEMT CET CEST|A.J 0 -10 -20 -10 -20|012121212121212121212121212121212121212121212321232123212321212121212121212121212121212121212121214121212121212121212121212121212124545454212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2le00 aPX0 Sp0 LX0 1vc0 Tc0 1uM0 SM0 1vc0 Tc0 1vc0 SM0 1vc0 6600 1co0 3E00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1tA0 1cM0 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 3Co0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 pvy0 1cM0 1cM0 1fA0 1cM0 1cM0 1cN0 1cL0 1cN0 1cM0 1cM0 1cM0 1cM0 1cN0 1cL0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|27e5","Europe/Luxembourg|LMT CET CEST WET WEST WEST WET|-o.A -10 -20 0 -10 -20 -10|0121212134343434343434343434343434343434343434343434565651212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2DG0o.A t6mo.A TB0 1nX0 Up0 1o20 11A0 rW0 CM0 1qP0 R90 1EO0 UK0 1u20 10m0 1ip0 1in0 17e0 19W0 1fB0 1db0 1cp0 1in0 17d0 1fz0 1a10 1in0 1a10 1in0 17f0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 vA0 60L0 WM0 1fA0 1cM0 17c0 1io0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Madrid|WET WEST WEMT CET CEST|0 -10 -20 -10 -20|010101010101010101210343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-25Td0 19B0 1cL0 1dd0 b1z0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1in0 17d0 iIn0 Hd0 1cL0 bb0 1200 2s20 14n0 5aL0 Mp0 1vz0 17d0 1in0 17d0 1in0 17d0 1in0 17d0 6hX0 11B0 XHX0 1a10 1fz0 1a10 19X0 1cN0 1fz0 1a10 1fC0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|62e5","Europe/Malta|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1co0 17c0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1co0 1cM0 1lA0 Xc0 1qq0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1iN0 19z0 1fB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Minsk|MMT EET MSK CEST CET MSD EEST +03|-1O -20 -30 -20 -10 -40 -30 -30|01234343252525252525252525261616161616161616161616161616161616161617|-1Pc1O eUnO qNX0 3gQ0 WM0 1fA0 1cM0 Al0 1tsn0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 3Fc0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0|19e5","Europe/Monaco|PMT WET WEST WEMT CET CEST|-9.l 0 -10 -20 -10 -20|01212121212121212121212121212121212121212121212121232323232345454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2nco9.l cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 2RV0 11z0 11B0 1ze0 WM0 1fA0 1cM0 1fa0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|38e3","Europe/Moscow|MMT MMT MST MDST MSD MSK +05 EET EEST MSK|-2u.h -2v.j -3v.j -4v.j -40 -30 -50 -20 -30 -40|012132345464575454545454545454545458754545454545454545454545454545454545454595|-2ag2u.h 2pyW.W 1bA0 11X0 GN0 1Hb0 c4v.j ik0 3DA0 dz0 15A0 c10 2q10 iM10 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|16e6","Europe/Paris|PMT WET WEST CEST CET WEMT|-9.l 0 -10 -20 -10 -20|0121212121212121212121212121212121212121212121212123434352543434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-2nco8.l cNb8.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 Ik0 5M30 WM0 1fA0 1cM0 Vx0 hB0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e6","Europe/Riga|RMT LST EET MSK CEST CET MSD EEST|-1A.y -2A.y -20 -30 -20 -10 -40 -30|010102345454536363636363636363727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272|-25TzA.y 11A0 1iM0 ko0 gWm0 yDXA.y 2bX0 3fE0 WM0 1fA0 1cM0 1cM0 4m0 1sLy0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 1o00 11A0 1o00 11A0 1qM0 3oo0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|64e4","Europe/Rome|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2arB0 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1cM0 16M0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1C00 LA0 1zc0 Oo0 1C00 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1zc0 Oo0 1fC0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|39e5","Europe/Samara|LMT +03 +04 +05|-3k.k -30 -40 -50|0123232323232323232121232323232323232323232323232323232323212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2y10 14m0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|12e5","Europe/Saratov|LMT +03 +04 +05|-34.i -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 5810|","Europe/Simferopol|SMT EET MSK CEST CET MSD EEST MSK|-2g -20 -30 -20 -10 -40 -30 -40|012343432525252525252525252161616525252616161616161616161616161616161616172|-1Pc2g eUog rEn0 2qs0 WM0 1fA0 1cM0 3V0 1u0L0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 4eL0 1cL0 1cN0 1cL0 1cN0 dX0 WL0 1cN0 1cL0 1fB0 1o30 11B0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4","Europe/Sofia|EET CET CEST EEST|-20 -10 -20 -30|01212103030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030|-168L0 WM0 1fA0 1cM0 1cM0 1cN0 1mKH0 1dd0 1fb0 1ap0 1fb0 1a20 1fy0 1a30 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|12e5","Europe/Stockholm|CET CEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2azC0 TB0 2yDe0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|15e5","Europe/Tallinn|TMT CET CEST EET MSK MSD EEST|-1D -10 -20 -20 -30 -40 -30|012103421212454545454545454546363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363|-26oND teD 11A0 1Ta0 4rXl KSLD 2FX0 2Jg0 WM0 1fA0 1cM0 18J0 1sTX0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o10 11A0 1qM0 5QM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|41e4","Europe/Tirane|LMT CET CEST|-1j.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glBj.k 14pcj.k 5LC0 WM0 4M0 1fCK0 10n0 1op0 11z0 1pd0 11z0 1qN0 WL0 1qp0 Xb0 1qp0 Xb0 1qp0 11z0 1lB0 11z0 1qN0 11z0 1iN0 16n0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|42e4","Europe/Ulyanovsk|LMT +03 +04 +05 +02|-3d.A -30 -40 -50 -20|01232323232323232321214121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|13e5","Europe/Uzhgorod|CET CEST MSK MSD EET EEST|-10 -20 -30 -40 -20 -30|010101023232323232323232320454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-1cqL0 6i00 WM0 1fA0 1cM0 1ml0 1Cp0 1r3W0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 1Nf0 2pw0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|11e4","Europe/Vienna|CET CEST|-10 -20|0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 3KM0 14o0 LA00 6i00 WM0 1fA0 1cM0 1cM0 1cM0 400 2qM0 1ao0 1co0 1cM0 1io0 17c0 1gHa0 19X0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|18e5","Europe/Vilnius|WMT KMT CET EET MSK CEST MSD EEST|-1o -1z.A -10 -20 -30 -20 -40 -30|012324525254646464646464646473737373737373737352537373737373737373737373737373737373737373737373737373737373737373737373|-293do 6ILM.o 1Ooz.A zz0 Mfd0 29W0 3is0 WM0 1fA0 1cM0 LV0 1tgL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11B0 1o00 11A0 1qM0 8io0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|54e4","Europe/Volgograd|LMT +03 +04 +05|-2V.E -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-21IqV.E psLV.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 9Jd0|10e5","Europe/Warsaw|WMT CET CEST EET EEST|-1o -10 -20 -20 -30|012121234312121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2ctdo 1LXo 11d0 1iO0 11A0 1o00 11A0 1on0 11A0 6zy0 HWP0 5IM0 WM0 1fA0 1cM0 1dz0 1mL0 1en0 15B0 1aq0 1nA0 11A0 1io0 17c0 1fA0 1a00 iDX0 LA0 1cM0 1cM0 1C00 Oo0 1cM0 1cM0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1C00 LA0 uso0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|17e5","Europe/Zaporozhye|+0220 EET MSK CEST CET MSD EEST|-2k -20 -30 -20 -10 -40 -30|01234342525252525252525252526161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161|-1Pc2k eUok rdb0 2RE0 WM0 1fA0 8m0 1v9a0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cK0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cQ0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|77e4","HST|HST|a0|0||","Indian/Chagos|LMT +05 +06|-4N.E -50 -60|012|-2xosN.E 3AGLN.E|30e2","Indian/Cocos|+0630|-6u|0||596","Indian/Kerguelen|-00 +05|0 -50|01|-MG00|130","Indian/Mahe|LMT +04|-3F.M -40|01|-2yO3F.M|79e3","Indian/Maldives|MMT +05|-4S -50|01|-olgS|35e4","Indian/Mauritius|LMT +04 +05|-3O -40 -50|012121|-2xorO 34unO 14L0 12kr0 11z0|15e4","Indian/Reunion|LMT +04|-3F.Q -40|01|-2mDDF.Q|84e4","Pacific/Kwajalein|+11 +10 +09 -12 +12|-b0 -a0 -90 c0 -c0|012034|-1kln0 akp0 6Up0 12ry0 Wan0|14e3","MET|MET MEST|-10 -20|01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-2aFe0 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 16M0 1gMM0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|","MST|MST|70|0||","MST7MDT|MST MDT MWT MPT|70 60 60 60|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261r0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","Pacific/Chatham|+1215 +1245 +1345|-cf -cJ -dJ|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-WqAf 1adef IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|600","Pacific/Apia|LMT -1130 -11 -10 +14 +13|bq.U bu b0 a0 -e0 -d0|01232345454545454545454545454545454545454545454545454545454|-2nDMx.4 1yW03.4 2rRbu 1ff0 1a00 CI0 AQ0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00|37e3","Pacific/Bougainville|+10 +09 +11|-a0 -90 -b0|0102|-16Wy0 7CN0 2MQp0|18e4","Pacific/Chuuk|+10 +09|-a0 -90|01010|-2ewy0 axB0 RVX0 axd0|49e3","Pacific/Efate|LMT +11 +12|-bd.g -b0 -c0|0121212121212121212121|-2l9nd.g 2Szcd.g 1cL0 1oN0 10L0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 Lz0 1Nd0 An0|66e3","Pacific/Enderbury|-12 -11 +13|c0 b0 -d0|012|nIc0 B7X0|1","Pacific/Fakaofo|-11 +13|b0 -d0|01|1Gfn0|483","Pacific/Fiji|LMT +12 +13|-bT.I -c0 -d0|0121212121212121212121212121212121212121212121212121212121212121|-2bUzT.I 3m8NT.I LA0 1EM0 IM0 nJc0 LA0 1o00 Rc0 1wo0 Ao0 1Nc0 Ao0 1Q00 xz0 1SN0 uM0 1SM0 uM0 1VA0 s00 1VA0 s00 1VA0 s00 20o0 pc0 20o0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 20o0 pc0 20o0 pc0 20o0 pc0 20o0 pc0 20o0 s00 1VA0 s00|88e4","Pacific/Galapagos|LMT -05 -06|5W.o 50 60|01212|-1yVS1.A 2dTz1.A gNd0 rz0|25e3","Pacific/Gambier|LMT -09|8X.M 90|01|-2jof0.c|125","Pacific/Guadalcanal|LMT +11|-aD.M -b0|01|-2joyD.M|11e4","Pacific/Guam|GST +09 GDT ChST|-a0 -90 -b0 -a0|01020202020202020203|-18jK0 6pB0 AhB0 3QL0 g2p0 3p91 WOX rX0 1zd0 Rb0 1wp0 Rb0 5xd0 rX0 5sN0 zb1 1C0X On0 ULb0|17e4","Pacific/Honolulu|HST HDT HWT HPT HST|au 9u 9u 9u a0|0102304|-1thLu 8x0 lef0 8wWu iAu 46p0|37e4","Pacific/Kiritimati|-1040 -10 +14|aE a0 -e0|012|nIaE B7Xk|51e2","Pacific/Kosrae|+11 +09 +10 +12|-b0 -90 -a0 -c0|01021030|-2ewz0 axC0 HBy0 akp0 axd0 WOK0 1bdz0|66e2","Pacific/Majuro|+11 +09 +10 +12|-b0 -90 -a0 -c0|0102103|-2ewz0 axC0 HBy0 akp0 6RB0 12um0|28e3","Pacific/Marquesas|LMT -0930|9i 9u|01|-2joeG|86e2","Pacific/Pago_Pago|LMT SST|bm.M b0|01|-2nDMB.c|37e2","Pacific/Nauru|LMT +1130 +09 +12|-b7.E -bu -90 -c0|01213|-1Xdn7.E QCnB.E 7mqu 1lnbu|10e3","Pacific/Niue|-1120 -1130 -11|bk bu b0|012|-KfME 17y0a|12e2","Pacific/Norfolk|+1112 +1130 +1230 +11 +12|-bc -bu -cu -b0 -c0|012134343434343434343434343434343434343434|-Kgbc W01G Oo0 1COo0 9Jcu 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0|25e4","Pacific/Noumea|LMT +11 +12|-b5.M -b0 -c0|01212121|-2l9n5.M 2EqM5.M xX0 1PB0 yn0 HeP0 Ao0|98e3","Pacific/Pitcairn|-0830 -08|8u 80|01|18Vku|56","Pacific/Pohnpei|+11 +09 +10|-b0 -90 -a0|010210|-2ewz0 axC0 HBy0 akp0 axd0|34e3","Pacific/Rarotonga|-1030 -0930 -10|au 9u a0|012121212121212121212121212|lyWu IL0 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu|13e3","Pacific/Tahiti|LMT -10|9W.g a0|01|-2joe1.I|18e4","Pacific/Tongatapu|+1220 +13 +14|-ck -d0 -e0|0121212121|-1aB0k 2n5dk 15A0 1wo0 xz0 1Q10 xz0 zWN0 s00|75e3","PST8PDT|PST PDT PWT PPT|80 70 70 70|010102301010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|-261q0 1nX0 11B0 1nX0 SgN0 8x10 iy0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|","WET|WET WEST|0 -10|010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010|hDB0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00|"],"links":["Africa/Abidjan|Africa/Bamako","Africa/Abidjan|Africa/Banjul","Africa/Abidjan|Africa/Conakry","Africa/Abidjan|Africa/Dakar","Africa/Abidjan|Africa/Freetown","Africa/Abidjan|Africa/Lome","Africa/Abidjan|Africa/Nouakchott","Africa/Abidjan|Africa/Ouagadougou","Africa/Abidjan|Africa/Timbuktu","Africa/Abidjan|Atlantic/St_Helena","Africa/Cairo|Egypt","Africa/Johannesburg|Africa/Maseru","Africa/Johannesburg|Africa/Mbabane","Africa/Lagos|Africa/Bangui","Africa/Lagos|Africa/Brazzaville","Africa/Lagos|Africa/Douala","Africa/Lagos|Africa/Kinshasa","Africa/Lagos|Africa/Libreville","Africa/Lagos|Africa/Luanda","Africa/Lagos|Africa/Malabo","Africa/Lagos|Africa/Niamey","Africa/Lagos|Africa/Porto-Novo","Africa/Maputo|Africa/Blantyre","Africa/Maputo|Africa/Bujumbura","Africa/Maputo|Africa/Gaborone","Africa/Maputo|Africa/Harare","Africa/Maputo|Africa/Kigali","Africa/Maputo|Africa/Lubumbashi","Africa/Maputo|Africa/Lusaka","Africa/Nairobi|Africa/Addis_Ababa","Africa/Nairobi|Africa/Asmara","Africa/Nairobi|Africa/Asmera","Africa/Nairobi|Africa/Dar_es_Salaam","Africa/Nairobi|Africa/Djibouti","Africa/Nairobi|Africa/Kampala","Africa/Nairobi|Africa/Mogadishu","Africa/Nairobi|Indian/Antananarivo","Africa/Nairobi|Indian/Comoro","Africa/Nairobi|Indian/Mayotte","Africa/Tripoli|Libya","America/Adak|America/Atka","America/Adak|US/Aleutian","America/Anchorage|US/Alaska","America/Argentina/Buenos_Aires|America/Buenos_Aires","America/Argentina/Catamarca|America/Argentina/ComodRivadavia","America/Argentina/Catamarca|America/Catamarca","America/Argentina/Cordoba|America/Cordoba","America/Argentina/Cordoba|America/Rosario","America/Argentina/Jujuy|America/Jujuy","America/Argentina/Mendoza|America/Mendoza","America/Atikokan|America/Coral_Harbour","America/Chicago|US/Central","America/Curacao|America/Aruba","America/Curacao|America/Kralendijk","America/Curacao|America/Lower_Princes","America/Denver|America/Shiprock","America/Denver|Navajo","America/Denver|US/Mountain","America/Detroit|US/Michigan","America/Edmonton|Canada/Mountain","America/Fort_Wayne|America/Indiana/Indianapolis","America/Fort_Wayne|America/Indianapolis","America/Fort_Wayne|US/East-Indiana","America/Halifax|Canada/Atlantic","America/Havana|Cuba","America/Indiana/Knox|America/Knox_IN","America/Indiana/Knox|US/Indiana-Starke","America/Jamaica|Jamaica","America/Kentucky/Louisville|America/Louisville","America/Los_Angeles|US/Pacific","America/Los_Angeles|US/Pacific-New","America/Manaus|Brazil/West","America/Mazatlan|Mexico/BajaSur","America/Mexico_City|Mexico/General","America/New_York|US/Eastern","America/Noronha|Brazil/DeNoronha","America/Panama|America/Cayman","America/Phoenix|US/Arizona","America/Port_of_Spain|America/Anguilla","America/Port_of_Spain|America/Antigua","America/Port_of_Spain|America/Dominica","America/Port_of_Spain|America/Grenada","America/Port_of_Spain|America/Guadeloupe","America/Port_of_Spain|America/Marigot","America/Port_of_Spain|America/Montserrat","America/Port_of_Spain|America/St_Barthelemy","America/Port_of_Spain|America/St_Kitts","America/Port_of_Spain|America/St_Lucia","America/Port_of_Spain|America/St_Thomas","America/Port_of_Spain|America/St_Vincent","America/Port_of_Spain|America/Tortola","America/Port_of_Spain|America/Virgin","America/Regina|Canada/Saskatchewan","America/Rio_Branco|America/Porto_Acre","America/Rio_Branco|Brazil/Acre","America/Santiago|Chile/Continental","America/Sao_Paulo|Brazil/East","America/St_Johns|Canada/Newfoundland","America/Tijuana|America/Ensenada","America/Tijuana|America/Santa_Isabel","America/Tijuana|Mexico/BajaNorte","America/Toronto|America/Montreal","America/Toronto|Canada/Eastern","America/Vancouver|Canada/Pacific","America/Whitehorse|Canada/Yukon","America/Winnipeg|Canada/Central","Asia/Ashgabat|Asia/Ashkhabad","Asia/Bangkok|Asia/Phnom_Penh","Asia/Bangkok|Asia/Vientiane","Asia/Dhaka|Asia/Dacca","Asia/Dubai|Asia/Muscat","Asia/Ho_Chi_Minh|Asia/Saigon","Asia/Hong_Kong|Hongkong","Asia/Jerusalem|Asia/Tel_Aviv","Asia/Jerusalem|Israel","Asia/Kathmandu|Asia/Katmandu","Asia/Kolkata|Asia/Calcutta","Asia/Kuala_Lumpur|Asia/Singapore","Asia/Kuala_Lumpur|Singapore","Asia/Macau|Asia/Macao","Asia/Makassar|Asia/Ujung_Pandang","Asia/Nicosia|Europe/Nicosia","Asia/Qatar|Asia/Bahrain","Asia/Rangoon|Asia/Yangon","Asia/Riyadh|Asia/Aden","Asia/Riyadh|Asia/Kuwait","Asia/Seoul|ROK","Asia/Shanghai|Asia/Chongqing","Asia/Shanghai|Asia/Chungking","Asia/Shanghai|Asia/Harbin","Asia/Shanghai|PRC","Asia/Taipei|ROC","Asia/Tehran|Iran","Asia/Thimphu|Asia/Thimbu","Asia/Tokyo|Japan","Asia/Ulaanbaatar|Asia/Ulan_Bator","Asia/Urumqi|Asia/Kashgar","Atlantic/Faroe|Atlantic/Faeroe","Atlantic/Reykjavik|Iceland","Atlantic/South_Georgia|Etc/GMT+2","Australia/Adelaide|Australia/South","Australia/Brisbane|Australia/Queensland","Australia/Broken_Hill|Australia/Yancowinna","Australia/Darwin|Australia/North","Australia/Hobart|Australia/Tasmania","Australia/Lord_Howe|Australia/LHI","Australia/Melbourne|Australia/Victoria","Australia/Perth|Australia/West","Australia/Sydney|Australia/ACT","Australia/Sydney|Australia/Canberra","Australia/Sydney|Australia/NSW","Etc/GMT-0|Etc/GMT","Etc/GMT-0|Etc/GMT+0","Etc/GMT-0|Etc/GMT0","Etc/GMT-0|Etc/Greenwich","Etc/GMT-0|GMT","Etc/GMT-0|GMT+0","Etc/GMT-0|GMT-0","Etc/GMT-0|GMT0","Etc/GMT-0|Greenwich","Etc/UTC|Etc/UCT","Etc/UTC|Etc/Universal","Etc/UTC|Etc/Zulu","Etc/UTC|UCT","Etc/UTC|UTC","Etc/UTC|Universal","Etc/UTC|Zulu","Europe/Belgrade|Europe/Ljubljana","Europe/Belgrade|Europe/Podgorica","Europe/Belgrade|Europe/Sarajevo","Europe/Belgrade|Europe/Skopje","Europe/Belgrade|Europe/Zagreb","Europe/Chisinau|Europe/Tiraspol","Europe/Dublin|Eire","Europe/Helsinki|Europe/Mariehamn","Europe/Istanbul|Asia/Istanbul","Europe/Istanbul|Turkey","Europe/Lisbon|Portugal","Europe/London|Europe/Belfast","Europe/London|Europe/Guernsey","Europe/London|Europe/Isle_of_Man","Europe/London|Europe/Jersey","Europe/London|GB","Europe/London|GB-Eire","Europe/Moscow|W-SU","Europe/Oslo|Arctic/Longyearbyen","Europe/Oslo|Atlantic/Jan_Mayen","Europe/Prague|Europe/Bratislava","Europe/Rome|Europe/San_Marino","Europe/Rome|Europe/Vatican","Europe/Warsaw|Poland","Europe/Zurich|Europe/Busingen","Europe/Zurich|Europe/Vaduz","Indian/Christmas|Etc/GMT-7","Pacific/Auckland|Antarctica/McMurdo","Pacific/Auckland|Antarctica/South_Pole","Pacific/Auckland|NZ","Pacific/Chatham|NZ-CHAT","Pacific/Chuuk|Pacific/Truk","Pacific/Chuuk|Pacific/Yap","Pacific/Easter|Chile/EasterIsland","Pacific/Guam|Pacific/Saipan","Pacific/Honolulu|Pacific/Johnston","Pacific/Honolulu|US/Hawaii","Pacific/Kwajalein|Kwajalein","Pacific/Pago_Pago|Pacific/Midway","Pacific/Pago_Pago|Pacific/Samoa","Pacific/Pago_Pago|US/Samoa","Pacific/Palau|Etc/GMT-9","Pacific/Pohnpei|Pacific/Ponape","Pacific/Port_Moresby|Etc/GMT-10","Pacific/Tarawa|Etc/GMT-12","Pacific/Tarawa|Pacific/Funafuti","Pacific/Tarawa|Pacific/Wake","Pacific/Tarawa|Pacific/Wallis"],"countries":["AD|Europe/Andorra","AE|Asia/Dubai","AF|Asia/Kabul","AG|America/Port_of_Spain America/Antigua","AI|America/Port_of_Spain America/Anguilla","AL|Europe/Tirane","AM|Asia/Yerevan","AO|Africa/Lagos Africa/Luanda","AQ|Antarctica/Casey Antarctica/Davis Antarctica/DumontDUrville Antarctica/Mawson Antarctica/Palmer Antarctica/Rothera Antarctica/Syowa Antarctica/Troll Antarctica/Vostok Pacific/Auckland Antarctica/McMurdo","AR|America/Argentina/Buenos_Aires America/Argentina/Cordoba America/Argentina/Salta America/Argentina/Jujuy America/Argentina/Tucuman America/Argentina/Catamarca America/Argentina/La_Rioja America/Argentina/San_Juan America/Argentina/Mendoza America/Argentina/San_Luis America/Argentina/Rio_Gallegos America/Argentina/Ushuaia","AS|Pacific/Pago_Pago","AT|Europe/Vienna","AU|Australia/Lord_Howe Antarctica/Macquarie Australia/Hobart Australia/Currie Australia/Melbourne Australia/Sydney Australia/Broken_Hill Australia/Brisbane Australia/Lindeman Australia/Adelaide Australia/Darwin Australia/Perth Australia/Eucla","AW|America/Curacao America/Aruba","AX|Europe/Helsinki Europe/Mariehamn","AZ|Asia/Baku","BA|Europe/Belgrade Europe/Sarajevo","BB|America/Barbados","BD|Asia/Dhaka","BE|Europe/Brussels","BF|Africa/Abidjan Africa/Ouagadougou","BG|Europe/Sofia","BH|Asia/Qatar Asia/Bahrain","BI|Africa/Maputo Africa/Bujumbura","BJ|Africa/Lagos Africa/Porto-Novo","BL|America/Port_of_Spain America/St_Barthelemy","BM|Atlantic/Bermuda","BN|Asia/Brunei","BO|America/La_Paz","BQ|America/Curacao America/Kralendijk","BR|America/Noronha America/Belem America/Fortaleza America/Recife America/Araguaina America/Maceio America/Bahia America/Sao_Paulo America/Campo_Grande America/Cuiaba America/Santarem America/Porto_Velho America/Boa_Vista America/Manaus America/Eirunepe America/Rio_Branco","BS|America/Nassau","BT|Asia/Thimphu","BW|Africa/Maputo Africa/Gaborone","BY|Europe/Minsk","BZ|America/Belize","CA|America/St_Johns America/Halifax America/Glace_Bay America/Moncton America/Goose_Bay America/Blanc-Sablon America/Toronto America/Nipigon America/Thunder_Bay America/Iqaluit America/Pangnirtung America/Atikokan America/Winnipeg America/Rainy_River America/Resolute America/Rankin_Inlet America/Regina America/Swift_Current America/Edmonton America/Cambridge_Bay America/Yellowknife America/Inuvik America/Creston America/Dawson_Creek America/Fort_Nelson America/Vancouver America/Whitehorse America/Dawson","CC|Indian/Cocos","CD|Africa/Maputo Africa/Lagos Africa/Kinshasa Africa/Lubumbashi","CF|Africa/Lagos Africa/Bangui","CG|Africa/Lagos Africa/Brazzaville","CH|Europe/Zurich","CI|Africa/Abidjan","CK|Pacific/Rarotonga","CL|America/Santiago America/Punta_Arenas Pacific/Easter","CM|Africa/Lagos Africa/Douala","CN|Asia/Shanghai Asia/Urumqi","CO|America/Bogota","CR|America/Costa_Rica","CU|America/Havana","CV|Atlantic/Cape_Verde","CW|America/Curacao","CX|Indian/Christmas","CY|Asia/Nicosia Asia/Famagusta","CZ|Europe/Prague","DE|Europe/Zurich Europe/Berlin Europe/Busingen","DJ|Africa/Nairobi Africa/Djibouti","DK|Europe/Copenhagen","DM|America/Port_of_Spain America/Dominica","DO|America/Santo_Domingo","DZ|Africa/Algiers","EC|America/Guayaquil Pacific/Galapagos","EE|Europe/Tallinn","EG|Africa/Cairo","EH|Africa/El_Aaiun","ER|Africa/Nairobi Africa/Asmara","ES|Europe/Madrid Africa/Ceuta Atlantic/Canary","ET|Africa/Nairobi Africa/Addis_Ababa","FI|Europe/Helsinki","FJ|Pacific/Fiji","FK|Atlantic/Stanley","FM|Pacific/Chuuk Pacific/Pohnpei Pacific/Kosrae","FO|Atlantic/Faroe","FR|Europe/Paris","GA|Africa/Lagos Africa/Libreville","GB|Europe/London","GD|America/Port_of_Spain America/Grenada","GE|Asia/Tbilisi","GF|America/Cayenne","GG|Europe/London Europe/Guernsey","GH|Africa/Accra","GI|Europe/Gibraltar","GL|America/Godthab America/Danmarkshavn America/Scoresbysund America/Thule","GM|Africa/Abidjan Africa/Banjul","GN|Africa/Abidjan Africa/Conakry","GP|America/Port_of_Spain America/Guadeloupe","GQ|Africa/Lagos Africa/Malabo","GR|Europe/Athens","GS|Atlantic/South_Georgia","GT|America/Guatemala","GU|Pacific/Guam","GW|Africa/Bissau","GY|America/Guyana","HK|Asia/Hong_Kong","HN|America/Tegucigalpa","HR|Europe/Belgrade Europe/Zagreb","HT|America/Port-au-Prince","HU|Europe/Budapest","ID|Asia/Jakarta Asia/Pontianak Asia/Makassar Asia/Jayapura","IE|Europe/Dublin","IL|Asia/Jerusalem","IM|Europe/London Europe/Isle_of_Man","IN|Asia/Kolkata","IO|Indian/Chagos","IQ|Asia/Baghdad","IR|Asia/Tehran","IS|Atlantic/Reykjavik","IT|Europe/Rome","JE|Europe/London Europe/Jersey","JM|America/Jamaica","JO|Asia/Amman","JP|Asia/Tokyo","KE|Africa/Nairobi","KG|Asia/Bishkek","KH|Asia/Bangkok Asia/Phnom_Penh","KI|Pacific/Tarawa Pacific/Enderbury Pacific/Kiritimati","KM|Africa/Nairobi Indian/Comoro","KN|America/Port_of_Spain America/St_Kitts","KP|Asia/Pyongyang","KR|Asia/Seoul","KW|Asia/Riyadh Asia/Kuwait","KY|America/Panama America/Cayman","KZ|Asia/Almaty Asia/Qyzylorda Asia/Qostanay Asia/Aqtobe Asia/Aqtau Asia/Atyrau Asia/Oral","LA|Asia/Bangkok Asia/Vientiane","LB|Asia/Beirut","LC|America/Port_of_Spain America/St_Lucia","LI|Europe/Zurich Europe/Vaduz","LK|Asia/Colombo","LR|Africa/Monrovia","LS|Africa/Johannesburg Africa/Maseru","LT|Europe/Vilnius","LU|Europe/Luxembourg","LV|Europe/Riga","LY|Africa/Tripoli","MA|Africa/Casablanca","MC|Europe/Monaco","MD|Europe/Chisinau","ME|Europe/Belgrade Europe/Podgorica","MF|America/Port_of_Spain America/Marigot","MG|Africa/Nairobi Indian/Antananarivo","MH|Pacific/Majuro Pacific/Kwajalein","MK|Europe/Belgrade Europe/Skopje","ML|Africa/Abidjan Africa/Bamako","MM|Asia/Yangon","MN|Asia/Ulaanbaatar Asia/Hovd Asia/Choibalsan","MO|Asia/Macau","MP|Pacific/Guam Pacific/Saipan","MQ|America/Martinique","MR|Africa/Abidjan Africa/Nouakchott","MS|America/Port_of_Spain America/Montserrat","MT|Europe/Malta","MU|Indian/Mauritius","MV|Indian/Maldives","MW|Africa/Maputo Africa/Blantyre","MX|America/Mexico_City America/Cancun America/Merida America/Monterrey America/Matamoros America/Mazatlan America/Chihuahua America/Ojinaga America/Hermosillo America/Tijuana America/Bahia_Banderas","MY|Asia/Kuala_Lumpur Asia/Kuching","MZ|Africa/Maputo","NA|Africa/Windhoek","NC|Pacific/Noumea","NE|Africa/Lagos Africa/Niamey","NF|Pacific/Norfolk","NG|Africa/Lagos","NI|America/Managua","NL|Europe/Amsterdam","NO|Europe/Oslo","NP|Asia/Kathmandu","NR|Pacific/Nauru","NU|Pacific/Niue","NZ|Pacific/Auckland Pacific/Chatham","OM|Asia/Dubai Asia/Muscat","PA|America/Panama","PE|America/Lima","PF|Pacific/Tahiti Pacific/Marquesas Pacific/Gambier","PG|Pacific/Port_Moresby Pacific/Bougainville","PH|Asia/Manila","PK|Asia/Karachi","PL|Europe/Warsaw","PM|America/Miquelon","PN|Pacific/Pitcairn","PR|America/Puerto_Rico","PS|Asia/Gaza Asia/Hebron","PT|Europe/Lisbon Atlantic/Madeira Atlantic/Azores","PW|Pacific/Palau","PY|America/Asuncion","QA|Asia/Qatar","RE|Indian/Reunion","RO|Europe/Bucharest","RS|Europe/Belgrade","RU|Europe/Kaliningrad Europe/Moscow Europe/Simferopol Europe/Kirov Europe/Astrakhan Europe/Volgograd Europe/Saratov Europe/Ulyanovsk Europe/Samara Asia/Yekaterinburg Asia/Omsk Asia/Novosibirsk Asia/Barnaul Asia/Tomsk Asia/Novokuznetsk Asia/Krasnoyarsk Asia/Irkutsk Asia/Chita Asia/Yakutsk Asia/Khandyga Asia/Vladivostok Asia/Ust-Nera Asia/Magadan Asia/Sakhalin Asia/Srednekolymsk Asia/Kamchatka Asia/Anadyr","RW|Africa/Maputo Africa/Kigali","SA|Asia/Riyadh","SB|Pacific/Guadalcanal","SC|Indian/Mahe","SD|Africa/Khartoum","SE|Europe/Stockholm","SG|Asia/Singapore","SH|Africa/Abidjan Atlantic/St_Helena","SI|Europe/Belgrade Europe/Ljubljana","SJ|Europe/Oslo Arctic/Longyearbyen","SK|Europe/Prague Europe/Bratislava","SL|Africa/Abidjan Africa/Freetown","SM|Europe/Rome Europe/San_Marino","SN|Africa/Abidjan Africa/Dakar","SO|Africa/Nairobi Africa/Mogadishu","SR|America/Paramaribo","SS|Africa/Juba","ST|Africa/Sao_Tome","SV|America/El_Salvador","SX|America/Curacao America/Lower_Princes","SY|Asia/Damascus","SZ|Africa/Johannesburg Africa/Mbabane","TC|America/Grand_Turk","TD|Africa/Ndjamena","TF|Indian/Reunion Indian/Kerguelen","TG|Africa/Abidjan Africa/Lome","TH|Asia/Bangkok","TJ|Asia/Dushanbe","TK|Pacific/Fakaofo","TL|Asia/Dili","TM|Asia/Ashgabat","TN|Africa/Tunis","TO|Pacific/Tongatapu","TR|Europe/Istanbul","TT|America/Port_of_Spain","TV|Pacific/Funafuti","TW|Asia/Taipei","TZ|Africa/Nairobi Africa/Dar_es_Salaam","UA|Europe/Simferopol Europe/Kiev Europe/Uzhgorod Europe/Zaporozhye","UG|Africa/Nairobi Africa/Kampala","UM|Pacific/Pago_Pago Pacific/Wake Pacific/Honolulu Pacific/Midway","US|America/New_York America/Detroit America/Kentucky/Louisville America/Kentucky/Monticello America/Indiana/Indianapolis America/Indiana/Vincennes America/Indiana/Winamac America/Indiana/Marengo America/Indiana/Petersburg America/Indiana/Vevay America/Chicago America/Indiana/Tell_City America/Indiana/Knox America/Menominee America/North_Dakota/Center America/North_Dakota/New_Salem America/North_Dakota/Beulah America/Denver America/Boise America/Phoenix America/Los_Angeles America/Anchorage America/Juneau America/Sitka America/Metlakatla America/Yakutat America/Nome America/Adak Pacific/Honolulu","UY|America/Montevideo","UZ|Asia/Samarkand Asia/Tashkent","VA|Europe/Rome Europe/Vatican","VC|America/Port_of_Spain America/St_Vincent","VE|America/Caracas","VG|America/Port_of_Spain America/Tortola","VI|America/Port_of_Spain America/St_Thomas","VN|Asia/Bangkok Asia/Ho_Chi_Minh","VU|Pacific/Efate","WF|Pacific/Wallis","WS|Pacific/Apia","YE|Asia/Riyadh Asia/Aden","YT|Africa/Nairobi Indian/Mayotte","ZA|Africa/Johannesburg","ZM|Africa/Maputo Africa/Lusaka","ZW|Africa/Maputo Africa/Harare"]}')},f0Wu:function(c,M,o){(c.exports=o("Dvum")).tz.load(o("bNI1"))},wy2R:function(c,M){!function(){c.exports=this.moment}()}});PKv\dist/blocks.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.blocks=function(e){var t={};function r(n){if(t[n])return t[n].exports;var a=t[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.l=!0,a.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)r.d(n,a,function(t){return e[t]}.bind(null,a));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s="0ATp")}({"0ATp":function(e,t,r){"use strict";r.r(t),r.d(t,"createBlock",(function(){return Ue})),r.d(t,"cloneBlock",(function(){return Ge})),r.d(t,"getPossibleBlockTransformations",(function(){return Qe})),r.d(t,"switchToBlockType",(function(){return Je})),r.d(t,"getBlockTransforms",(function(){return Xe})),r.d(t,"findTransform",(function(){return Ze})),r.d(t,"getBlockFromExample",(function(){return et})),r.d(t,"parse",(function(){return Fr})),r.d(t,"getBlockAttributes",(function(){return zr})),r.d(t,"parseWithAttributeSchema",(function(){return Lr})),r.d(t,"pasteHandler",(function(){return Wn})),r.d(t,"rawHandler",(function(){return Zn})),r.d(t,"getPhrasingContentSchema",(function(){return Kr})),r.d(t,"serialize",(function(){return Gt})),r.d(t,"getBlockContent",(function(){return qt})),r.d(t,"getBlockDefaultClassName",(function(){return Ht})),r.d(t,"getBlockMenuDefaultClassName",(function(){return Vt})),r.d(t,"getSaveElement",(function(){return Rt})),r.d(t,"getSaveContent",(function(){return Ft})),r.d(t,"isValidBlockContent",(function(){return mr})),r.d(t,"getCategories",(function(){return Xn})),r.d(t,"setCategories",(function(){return Jn})),r.d(t,"updateCategory",(function(){return ea})),r.d(t,"registerBlockType",(function(){return ve})),r.d(t,"registerBlockCollection",(function(){return we})),r.d(t,"unregisterBlockType",(function(){return ke})),r.d(t,"setFreeformContentHandlerName",(function(){return Oe})),r.d(t,"getFreeformContentHandlerName",(function(){return je})),r.d(t,"setUnregisteredTypeHandlerName",(function(){return Ce})),r.d(t,"getUnregisteredTypeHandlerName",(function(){return Pe})),r.d(t,"setDefaultBlockName",(function(){return xe})),r.d(t,"getDefaultBlockName",(function(){return Ae})),r.d(t,"setGroupingBlockName",(function(){return Se})),r.d(t,"getGroupingBlockName",(function(){return Te})),r.d(t,"getBlockType",(function(){return Ee})),r.d(t,"getBlockTypes",(function(){return Ne})),r.d(t,"getBlockSupport",(function(){return Be})),r.d(t,"hasBlockSupport",(function(){return De})),r.d(t,"isReusableBlock",(function(){return Le})),r.d(t,"getChildBlockNames",(function(){return Me})),r.d(t,"hasChildBlocks",(function(){return ze})),r.d(t,"hasChildBlocksWithInserterSupport",(function(){return Ie})),r.d(t,"unstable__bootstrapServerSideBlockDefinitions",(function(){return ye})),r.d(t,"registerBlockStyle",(function(){return He})),r.d(t,"unregisterBlockStyle",(function(){return Ve})),r.d(t,"registerBlockVariation",(function(){return Re})),r.d(t,"unregisterBlockVariation",(function(){return Fe})),r.d(t,"isUnmodifiedDefaultBlock",(function(){return ce})),r.d(t,"normalizeIconObject",(function(){return le})),r.d(t,"isValidIcon",(function(){return ue})),r.d(t,"__experimentalGetBlockLabel",(function(){return fe})),r.d(t,"__experimentalGetAccessibleBlockLabel",(function(){return pe})),r.d(t,"doBlocksMatchTemplate",(function(){return na})),r.d(t,"synchronizeBlocksWithTemplate",(function(){return aa})),r.d(t,"children",(function(){return wr})),r.d(t,"node",(function(){return Ar})),r.d(t,"withBlockContentContext",(function(){return Lt}));var n={};r.r(n),r.d(n,"getBlockTypes",(function(){return k})),r.d(n,"getBlockType",(function(){return O})),r.d(n,"getBlockStyles",(function(){return j})),r.d(n,"getBlockVariations",(function(){return T})),r.d(n,"getDefaultBlockVariation",(function(){return C})),r.d(n,"getCategories",(function(){return P})),r.d(n,"getCollections",(function(){return x})),r.d(n,"getDefaultBlockName",(function(){return S})),r.d(n,"getFreeformFallbackBlockName",(function(){return A})),r.d(n,"getUnregisteredFallbackBlockName",(function(){return E})),r.d(n,"getGroupingBlockName",(function(){return N})),r.d(n,"getChildBlockNames",(function(){return B})),r.d(n,"getBlockSupport",(function(){return D})),r.d(n,"hasBlockSupport",(function(){return L})),r.d(n,"isMatchingSearchTerm",(function(){return M})),r.d(n,"hasChildBlocks",(function(){return z})),r.d(n,"hasChildBlocksWithInserterSupport",(function(){return I}));var a={};r.r(a),r.d(a,"addBlockTypes",(function(){return H})),r.d(a,"removeBlockTypes",(function(){return V})),r.d(a,"addBlockStyles",(function(){return R})),r.d(a,"removeBlockStyles",(function(){return F})),r.d(a,"addBlockVariations",(function(){return $})),r.d(a,"removeBlockVariations",(function(){return q})),r.d(a,"setDefaultBlockName",(function(){return U})),r.d(a,"setFreeformFallbackBlockName",(function(){return G})),r.d(a,"setUnregisteredFallbackBlockName",(function(){return K})),r.d(a,"setGroupingBlockName",(function(){return W})),r.d(a,"setCategories",(function(){return Y})),r.d(a,"updateCategory",(function(){return Q})),r.d(a,"addBlockCollection",(function(){return Z})),r.d(a,"removeBlockCollection",(function(){return X}));var o=r("1ZqX"),i=r("KQm4"),s=r("rePB"),c=r("YLtl"),u=r("l3Sj");function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function d(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case"REMOVE_BLOCK_TYPES":return-1!==r.names.indexOf(t)?null:t;case e:return r.name||null}return t}}var h=p("SET_DEFAULT_BLOCK_NAME"),b=p("SET_FREEFORM_FALLBACK_BLOCK_NAME"),g=p("SET_UNREGISTERED_FALLBACK_BLOCK_NAME"),m=p("SET_GROUPING_BLOCK_NAME");var _=Object(o.combineReducers)({blockTypes:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_BLOCK_TYPES":return d({},e,{},Object(c.keyBy)(Object(c.map)(t.blockTypes,(function(e){return Object(c.omit)(e,"styles ")})),"name"));case"REMOVE_BLOCK_TYPES":return Object(c.omit)(e,t.names)}return e},blockStyles:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_BLOCK_TYPES":return d({},e,{},Object(c.mapValues)(Object(c.keyBy)(t.blockTypes,"name"),(function(t){return Object(c.uniqBy)([].concat(Object(i.a)(Object(c.get)(t,["styles"],[])),Object(i.a)(Object(c.get)(e,[t.name],[]))),(function(e){return e.name}))})));case"ADD_BLOCK_STYLES":return d({},e,Object(s.a)({},t.blockName,Object(c.uniqBy)([].concat(Object(i.a)(Object(c.get)(e,[t.blockName],[])),Object(i.a)(t.styles)),(function(e){return e.name}))));case"REMOVE_BLOCK_STYLES":return d({},e,Object(s.a)({},t.blockName,Object(c.filter)(Object(c.get)(e,[t.blockName],[]),(function(e){return-1===t.styleNames.indexOf(e.name)}))))}return e},blockVariations:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_BLOCK_TYPES":return d({},e,{},Object(c.mapValues)(Object(c.keyBy)(t.blockTypes,"name"),(function(t){return Object(c.uniqBy)([].concat(Object(i.a)(Object(c.get)(t,["variations"],[])),Object(i.a)(Object(c.get)(e,[t.name],[]))),(function(e){return e.name}))})));case"ADD_BLOCK_VARIATIONS":return d({},e,Object(s.a)({},t.blockName,Object(c.uniqBy)([].concat(Object(i.a)(Object(c.get)(e,[t.blockName],[])),Object(i.a)(t.variations)),(function(e){return e.name}))));case"REMOVE_BLOCK_VARIATIONS":return d({},e,Object(s.a)({},t.blockName,Object(c.filter)(Object(c.get)(e,[t.blockName],[]),(function(e){return-1===t.variationNames.indexOf(e.name)}))))}return e},defaultBlockName:h,freeformFallbackBlockName:b,unregisteredFallbackBlockName:g,groupingBlockName:m,categories:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_CATEGORIES":return t.categories||[];case"UPDATE_CATEGORY":if(!t.category||Object(c.isEmpty)(t.category))return e;var r=Object(c.find)(e,["slug",t.slug]);if(r)return Object(c.map)(e,(function(e){return e.slug===t.slug?d({},e,{},t.category):e}))}return e},collections:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_BLOCK_COLLECTION":return d({},e,Object(s.a)({},t.namespace,{title:t.title,icon:t.icon}));case"REMOVE_BLOCK_COLLECTION":return Object(c.omit)(e,t.namespace)}return e}}),y=r("pPDe");function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var w=function(e,t){return"string"==typeof t?O(e,t):t},k=Object(y.a)((function(e){return Object.values(e.blockTypes).map((function(t){return function(e){for(var t=1;t0},I=function(e,t){return Object(c.some)(B(e,t),(function(t){return L(e,t,"inserter",!0)}))};function H(e){return{type:"ADD_BLOCK_TYPES",blockTypes:Object(c.castArray)(e)}}function V(e){return{type:"REMOVE_BLOCK_TYPES",names:Object(c.castArray)(e)}}function R(e,t){return{type:"ADD_BLOCK_STYLES",styles:Object(c.castArray)(t),blockName:e}}function F(e,t){return{type:"REMOVE_BLOCK_STYLES",styleNames:Object(c.castArray)(t),blockName:e}}function $(e,t){return{type:"ADD_BLOCK_VARIATIONS",variations:Object(c.castArray)(t),blockName:e}}function q(e,t){return{type:"REMOVE_BLOCK_VARIATIONS",variationNames:Object(c.castArray)(t),blockName:e}}function U(e){return{type:"SET_DEFAULT_BLOCK_NAME",name:e}}function G(e){return{type:"SET_FREEFORM_FALLBACK_BLOCK_NAME",name:e}}function K(e){return{type:"SET_UNREGISTERED_FALLBACK_BLOCK_NAME",name:e}}function W(e){return{type:"SET_GROUPING_BLOCK_NAME",name:e}}function Y(e){return{type:"SET_CATEGORIES",categories:e}}function Q(e,t){return{type:"UPDATE_CATEGORY",slug:e,category:t}}function Z(e,t,r){return{type:"ADD_BLOCK_COLLECTION",namespace:e,title:t,icon:r}}function X(e){return{type:"REMOVE_BLOCK_COLLECTION",namespace:e}}Object(o.registerStore)("core/blocks",{reducer:_,selectors:n,actions:a});var J=r("xk4V"),ee=r.n(J),te=r("g56x"),re=r("Zss7"),ne=r.n(re),ae=r("GRId"),oe=r("1CF3");function ie(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var se=["#191e23","#f8f9f9"];function ce(e){var t=Ae();if(e.name!==t)return!1;ce.block&&ce.block.name===t||(ce.block=Ue(t));var r=ce.block,n=Ee(t);return Object(c.every)(n.attributes,(function(t,n){return r.attributes[n]===e.attributes[n]}))}function ue(e){return!!e&&(Object(c.isString)(e)||Object(ae.isValidElement)(e)||Object(c.isFunction)(e)||e instanceof ae.Component)}function le(e){if(ue(e))return{src:e};if(Object(c.has)(e,["background"])){var t=ne()(e.background);return function(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:"visual",n=e.__experimentalLabel,a=e.title,o=n&&n(t,{context:r});return o?Object(oe.__unstableStripHTML)(o):a}function pe(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"vertical",a=e.title,o=fe(e,t,"accessibility"),i=void 0!==r,s=o&&o!==a;return i&&"vertical"===n?s?Object(u.sprintf)(Object(u.__)("%1$s Block. Row %2$d. %3$s"),a,r,o):Object(u.sprintf)(Object(u.__)("%s Block. Row %d"),a,r):i&&"horizontal"===n?s?Object(u.sprintf)(Object(u.__)("%1$s Block. Column %2$d. %3$s"),a,r,o):Object(u.sprintf)(Object(u.__)("%s Block. Column %d"),a,r):s?Object(u.sprintf)(Object(u.__)("%1$s Block. %2$s"),a,o):Object(u.sprintf)(Object(u.__)("%s Block"),a)}var he=["attributes","supports","save","migrate","isEligible"];function be(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ge(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=Ee(e),a=Object(c.reduce)(n.attributes,(function(e,r,n){var a=t[n];return void 0!==a?e[n]=a:r.hasOwnProperty("default")&&(e[n]=r.default),-1!==["node","children"].indexOf(r.source)&&("string"==typeof e[n]?e[n]=[e[n]]:Array.isArray(e[n])||(e[n]=[])),e}),{}),o=ee()();return{clientId:o,name:e,isValid:!0,attributes:a,innerBlocks:r}}function Ge(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,n=ee()();return qe({},e,{clientId:n,attributes:qe({},e.attributes,{},t),innerBlocks:r||e.innerBlocks.map((function(e){return Ge(e)}))})}var Ke=function(e,t,r){if(Object(c.isEmpty)(r))return!1;var n=r.length>1,a=Object(c.first)(r).name;if(!(We(e)||!n||e.isMultiBlock))return!1;if(!We(e)&&!Object(c.every)(r,{name:a}))return!1;if(!("block"===e.type))return!1;var o=Object(c.first)(r);if(!("from"!==t||-1!==e.blocks.indexOf(o.name)||We(e)))return!1;if(!n&&Ye(o.name)&&Ye(e.blockName))return!1;if(Object(c.isFunction)(e.isMatch)){var i=e.isMultiBlock?r.map((function(e){return e.attributes})):o.attributes;if(!e.isMatch(i))return!1}return!0},We=function(e){return e&&"block"===e.type&&Array.isArray(e.blocks)&&e.blocks.includes("*")},Ye=function(e){return e===Te()};function Qe(e){if(Object(c.isEmpty)(e))return[];var t=function(e){if(Object(c.isEmpty)(e))return[];var t=Ne();return Object(c.filter)(t,(function(t){return!!Ze(Xe("from",t.name),(function(t){return Ke(t,"from",e)}))}))}(e),r=function(e){if(Object(c.isEmpty)(e))return[];var t=Xe("to",Ee(Object(c.first)(e).name).name),r=Object(c.filter)(t,(function(t){return t&&Ke(t,"to",e)}));return Object(c.flatMap)(r,(function(e){return e.blocks})).map((function(e){return Ee(e)}))}(e);return Object(c.uniq)([].concat(Object(i.a)(t),Object(i.a)(r)))}function Ze(e,t){for(var r=Object(te.createHooks)(),n=function(n){var a=e[n];t(a)&&r.addFilter("transform","transform/"+n.toString(),(function(e){return e||a}),a.priority)},a=0;a1,a=r[0],o=a.name;if(!Ye(t)&&n&&!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(!e.length)return!1;var t=e[0].name;return Object(c.every)(e,["name",t])}(r))return null;var i,s=Xe("from",t),u=Ze(Xe("to",o),(function(e){return"block"===e.type&&(We(e)||-1!==e.blocks.indexOf(t))&&(!n||e.isMultiBlock)}))||Ze(s,(function(e){return"block"===e.type&&(We(e)||-1!==e.blocks.indexOf(o))&&(!n||e.isMultiBlock)}));if(!u)return null;if(i=u.isMultiBlock?Object(c.has)(u,"__experimentalConvert")?u.__experimentalConvert(r):u.transform(r.map((function(e){return e.attributes})),r.map((function(e){return e.innerBlocks}))):Object(c.has)(u,"__experimentalConvert")?u.__experimentalConvert(a):u.transform(a.attributes,a.innerBlocks),!Object(c.isObjectLike)(i))return null;if((i=Object(c.castArray)(i)).some((function(e){return!Ee(e.name)})))return null;var l=Object(c.findIndex)(i,(function(e){return e.name===t}));return l<0?null:i.map((function(t,r){var n=qe({},t,{clientId:r===l?a.clientId:t.clientId});return Object(te.applyFilters)("blocks.switchToBlockType.transformedBlock",n,e)}))}var et=function e(t,r){return Ue(t,r.attributes,Object(c.map)(r.innerBlocks,(function(t){return e(t.name,t)})))},tt=r("ODXe");function rt(e,t){for(var r,n=t.split(".");r=n.shift();){if(!(r in e))return;e=e[r]}return e}var nt,at=function(){return nt||(nt=document.implementation.createHTMLDocument("")),nt};function ot(e,t){if(t){if("string"==typeof e){var r=at();r.body.innerHTML=e,e=r.body}if("function"==typeof t)return t(e);if(Object===t.constructor)return Object.keys(t).reduce((function(r,n){return r[n]=ot(e,t[n]),r}),{})}}function it(e,t){return 1===arguments.length&&(t=e,e=void 0),function(r){var n=r;if(e&&(n=r.querySelector(e)),n)return rt(n,t)}}var st=r("UuzZ"),ct=r("ouCq"),ut=r("DSFK"),lt=r("25BE"),dt=r("BsWD"),ft=r("PYwp");var pt=r("1OyB"),ht=r("vuIU"),bt=/^#[xX]([A-Fa-f0-9]+)$/,gt=/^#([0-9]+)$/,mt=/^([A-Za-z0-9]+)$/,_t=(function(){function e(e){this.named=e}e.prototype.parse=function(e){if(e){var t=e.match(bt);return t?String.fromCharCode(parseInt(t[1],16)):(t=e.match(gt))?String.fromCharCode(parseInt(t[1],10)):(t=e.match(mt))?this.named[t[1]]:void 0}}}(),/[\t\n\f ]/),yt=/[A-Za-z]/,vt=/\r\n?/g;function wt(e){return _t.test(e)}function kt(e){return yt.test(e)}var Ot=function(){function e(e,t,r){void 0===r&&(r="precompile"),this.delegate=e,this.entityParser=t,this.mode=r,this.state="beforeData",this.line=-1,this.column=-1,this.input="",this.index=-1,this.tagNameBuffer="",this.states={beforeData:function(){var e=this.peek();if("<"!==e||this.isIgnoredEndTag()){if("precompile"===this.mode&&"\n"===e){var t=this.tagNameBuffer.toLowerCase();"pre"!==t&&"textarea"!==t||this.consume()}this.transitionTo("data"),this.delegate.beginData()}else this.transitionTo("tagOpen"),this.markTagStart(),this.consume()},data:function(){var e=this.peek(),t=this.tagNameBuffer;"<"!==e||this.isIgnoredEndTag()?"&"===e&&"script"!==t&&"style"!==t?(this.consume(),this.delegate.appendToData(this.consumeCharRef()||"&")):(this.consume(),this.delegate.appendToData(e)):(this.delegate.finishData(),this.transitionTo("tagOpen"),this.markTagStart(),this.consume())},tagOpen:function(){var e=this.consume();"!"===e?this.transitionTo("markupDeclarationOpen"):"/"===e?this.transitionTo("endTagOpen"):("@"===e||":"===e||kt(e))&&(this.transitionTo("tagName"),this.tagNameBuffer="",this.delegate.beginStartTag(),this.appendToTagName(e))},markupDeclarationOpen:function(){var e=this.consume();"-"===e&&"-"===this.peek()?(this.consume(),this.transitionTo("commentStart"),this.delegate.beginComment()):"DOCTYPE"===e.toUpperCase()+this.input.substring(this.index,this.index+6).toUpperCase()&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.transitionTo("doctype"),this.delegate.beginDoctype&&this.delegate.beginDoctype())},doctype:function(){wt(this.consume())&&this.transitionTo("beforeDoctypeName")},beforeDoctypeName:function(){var e=this.consume();wt(e)||(this.transitionTo("doctypeName"),this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(e.toLowerCase()))},doctypeName:function(){var e=this.consume();wt(e)?this.transitionTo("afterDoctypeName"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeName&&this.delegate.appendToDoctypeName(e.toLowerCase())},afterDoctypeName:function(){var e=this.consume();if(!wt(e))if(">"===e)this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData");else{var t=e.toUpperCase()+this.input.substring(this.index,this.index+5).toUpperCase(),r="PUBLIC"===t.toUpperCase(),n="SYSTEM"===t.toUpperCase();(r||n)&&(this.consume(),this.consume(),this.consume(),this.consume(),this.consume(),this.consume()),r?this.transitionTo("afterDoctypePublicKeyword"):n&&this.transitionTo("afterDoctypeSystemKeyword")}},afterDoctypePublicKeyword:function(){var e=this.peek();wt(e)?(this.transitionTo("beforeDoctypePublicIdentifier"),this.consume()):'"'===e?(this.transitionTo("doctypePublicIdentifierDoubleQuoted"),this.consume()):"'"===e?(this.transitionTo("doctypePublicIdentifierSingleQuoted"),this.consume()):">"===e&&(this.consume(),this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},doctypePublicIdentifierDoubleQuoted:function(){var e=this.consume();'"'===e?this.transitionTo("afterDoctypePublicIdentifier"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(e)},doctypePublicIdentifierSingleQuoted:function(){var e=this.consume();"'"===e?this.transitionTo("afterDoctypePublicIdentifier"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypePublicIdentifier&&this.delegate.appendToDoctypePublicIdentifier(e)},afterDoctypePublicIdentifier:function(){var e=this.consume();wt(e)?this.transitionTo("betweenDoctypePublicAndSystemIdentifiers"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):'"'===e?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):"'"===e&&this.transitionTo("doctypeSystemIdentifierSingleQuoted")},betweenDoctypePublicAndSystemIdentifiers:function(){var e=this.consume();wt(e)||(">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):'"'===e?this.transitionTo("doctypeSystemIdentifierDoubleQuoted"):"'"===e&&this.transitionTo("doctypeSystemIdentifierSingleQuoted"))},doctypeSystemIdentifierDoubleQuoted:function(){var e=this.consume();'"'===e?this.transitionTo("afterDoctypeSystemIdentifier"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(e)},doctypeSystemIdentifierSingleQuoted:function(){var e=this.consume();"'"===e?this.transitionTo("afterDoctypeSystemIdentifier"):">"===e?(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData")):this.delegate.appendToDoctypeSystemIdentifier&&this.delegate.appendToDoctypeSystemIdentifier(e)},afterDoctypeSystemIdentifier:function(){var e=this.consume();wt(e)||">"===e&&(this.delegate.endDoctype&&this.delegate.endDoctype(),this.transitionTo("beforeData"))},commentStart:function(){var e=this.consume();"-"===e?this.transitionTo("commentStartDash"):">"===e?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData(e),this.transitionTo("comment"))},commentStartDash:function(){var e=this.consume();"-"===e?this.transitionTo("commentEnd"):">"===e?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("-"),this.transitionTo("comment"))},comment:function(){var e=this.consume();"-"===e?this.transitionTo("commentEndDash"):this.delegate.appendToCommentData(e)},commentEndDash:function(){var e=this.consume();"-"===e?this.transitionTo("commentEnd"):(this.delegate.appendToCommentData("-"+e),this.transitionTo("comment"))},commentEnd:function(){var e=this.consume();">"===e?(this.delegate.finishComment(),this.transitionTo("beforeData")):(this.delegate.appendToCommentData("--"+e),this.transitionTo("comment"))},tagName:function(){var e=this.consume();wt(e)?this.transitionTo("beforeAttributeName"):"/"===e?this.transitionTo("selfClosingStartTag"):">"===e?(this.delegate.finishTag(),this.transitionTo("beforeData")):this.appendToTagName(e)},endTagName:function(){var e=this.consume();wt(e)?(this.transitionTo("beforeAttributeName"),this.tagNameBuffer=""):"/"===e?(this.transitionTo("selfClosingStartTag"),this.tagNameBuffer=""):">"===e?(this.delegate.finishTag(),this.transitionTo("beforeData"),this.tagNameBuffer=""):this.appendToTagName(e)},beforeAttributeName:function(){var e=this.peek();wt(e)?this.consume():"/"===e?(this.transitionTo("selfClosingStartTag"),this.consume()):">"===e?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):"="===e?(this.delegate.reportSyntaxError("attribute name cannot start with equals sign"),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(e)):(this.transitionTo("attributeName"),this.delegate.beginAttribute())},attributeName:function(){var e=this.peek();wt(e)?(this.transitionTo("afterAttributeName"),this.consume()):"/"===e?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"="===e?(this.transitionTo("beforeAttributeValue"),this.consume()):">"===e?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):'"'===e||"'"===e||"<"===e?(this.delegate.reportSyntaxError(e+" is not a valid character within attribute names"),this.consume(),this.delegate.appendToAttributeName(e)):(this.consume(),this.delegate.appendToAttributeName(e))},afterAttributeName:function(){var e=this.peek();wt(e)?this.consume():"/"===e?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"="===e?(this.consume(),this.transitionTo("beforeAttributeValue")):">"===e?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.transitionTo("attributeName"),this.delegate.beginAttribute(),this.consume(),this.delegate.appendToAttributeName(e))},beforeAttributeValue:function(){var e=this.peek();wt(e)?this.consume():'"'===e?(this.transitionTo("attributeValueDoubleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):"'"===e?(this.transitionTo("attributeValueSingleQuoted"),this.delegate.beginAttributeValue(!0),this.consume()):">"===e?(this.delegate.beginAttributeValue(!1),this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.transitionTo("attributeValueUnquoted"),this.delegate.beginAttributeValue(!1),this.consume(),this.delegate.appendToAttributeValue(e))},attributeValueDoubleQuoted:function(){var e=this.consume();'"'===e?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):"&"===e?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(e)},attributeValueSingleQuoted:function(){var e=this.consume();"'"===e?(this.delegate.finishAttributeValue(),this.transitionTo("afterAttributeValueQuoted")):"&"===e?this.delegate.appendToAttributeValue(this.consumeCharRef()||"&"):this.delegate.appendToAttributeValue(e)},attributeValueUnquoted:function(){var e=this.peek();wt(e)?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("beforeAttributeName")):"/"===e?(this.delegate.finishAttributeValue(),this.consume(),this.transitionTo("selfClosingStartTag")):"&"===e?(this.consume(),this.delegate.appendToAttributeValue(this.consumeCharRef()||"&")):">"===e?(this.delegate.finishAttributeValue(),this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):(this.consume(),this.delegate.appendToAttributeValue(e))},afterAttributeValueQuoted:function(){var e=this.peek();wt(e)?(this.consume(),this.transitionTo("beforeAttributeName")):"/"===e?(this.consume(),this.transitionTo("selfClosingStartTag")):">"===e?(this.consume(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},selfClosingStartTag:function(){">"===this.peek()?(this.consume(),this.delegate.markTagAsSelfClosing(),this.delegate.finishTag(),this.transitionTo("beforeData")):this.transitionTo("beforeAttributeName")},endTagOpen:function(){var e=this.consume();("@"===e||":"===e||kt(e))&&(this.transitionTo("endTagName"),this.tagNameBuffer="",this.delegate.beginEndTag(),this.appendToTagName(e))}},this.reset()}return e.prototype.reset=function(){this.transitionTo("beforeData"),this.input="",this.tagNameBuffer="",this.index=0,this.line=1,this.column=0,this.delegate.reset()},e.prototype.transitionTo=function(e){this.state=e},e.prototype.tokenize=function(e){this.reset(),this.tokenizePart(e),this.tokenizeEOF()},e.prototype.tokenizePart=function(e){for(this.input+=function(e){return e.replace(vt,"\n")}(e);this.index"!==this.input.substring(this.index,this.index+8)||"style"===e&&""!==this.input.substring(this.index,this.index+8)||"script"===e&&"<\/script>"!==this.input.substring(this.index,this.index+9)},e}(),jt=function(){function e(e,t){void 0===t&&(t={}),this.options=t,this.token=null,this.startLine=1,this.startColumn=0,this.tokens=[],this.tokenizer=new Ot(this,e,t.mode),this._currentAttribute=void 0}return e.prototype.tokenize=function(e){return this.tokens=[],this.tokenizer.tokenize(e),this.tokens},e.prototype.tokenizePart=function(e){return this.tokens=[],this.tokenizer.tokenizePart(e),this.tokens},e.prototype.tokenizeEOF=function(){return this.tokens=[],this.tokenizer.tokenizeEOF(),this.tokens[0]},e.prototype.reset=function(){this.token=null,this.startLine=1,this.startColumn=0},e.prototype.current=function(){var e=this.token;if(null===e)throw new Error("token was unexpectedly null");if(0===arguments.length)return e;for(var t=0;t1?r-1:0),a=1;a2&&void 0!==arguments[2]?arguments[2]:[],n=de(e),a=n.save;if(a.prototype instanceof ae.Component){var o=new a({attributes:t});a=o.render.bind(o)}var i=a({attributes:t,innerBlocks:r});if(Object(c.isObject)(i)&&Object(te.hasFilter)("blocks.getSaveContent.extraProps")){var s=Object(te.applyFilters)("blocks.getSaveContent.extraProps",It({},i.props),n,t);St()(s,i.props)||(i=Object(ae.cloneElement)(i,s))}return i=Object(te.applyFilters)("blocks.getSaveElement",i,n,t),Object(ae.createElement)(Mt,{innerBlocks:r},i)}function Ft(e,t,r){var n=de(e);return Object(ae.renderToString)(Rt(n,t,r))}function $t(e,t){return Object(c.reduce)(e.attributes,(function(e,r,n){var a=t[n];return void 0===a||void 0!==r.source||"default"in r&&r.default===a||(e[n]=a),e}),{})}function qt(e){var t=e.originalContent;if(e.isValid||e.innerBlocks.length)try{t=Ft(e.name,e.attributes,e.innerBlocks)}catch(e){}return t}function Ut(e,t,r){var n=Object(c.isEmpty)(t)?"":function(e){return JSON.stringify(e).replace(/--/g,"\\u002d\\u002d").replace(//g,"\\u003e").replace(/&/g,"\\u0026").replace(/\\"/g,"\\u0022")}(t)+" ",a=Object(c.startsWith)(e,"core/")?e.slice(5):e;return r?"\x3c!-- wp:".concat(a," ").concat(n,"--\x3e\n")+r+"\n\x3c!-- /wp:".concat(a," --\x3e"):"\x3c!-- wp:".concat(a," ").concat(n,"/--\x3e")}function Gt(e,t){return Object(c.castArray)(e).map((function(e){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.isInnerBlocks,n=void 0!==r&&r,a=e.name,o=qt(e);if(a===Pe()||!n&&a===je())return o;var i=Ee(a),s=$t(i,e.attributes);return Ut(a,s,o)}(e,t)})).join("\n\n")}function Kt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Wt=/[\t\n\r\v\f ]+/g,Yt=/^[\t\n\r\v\f ]*$/,Qt=/^url\s*\(['"\s]*(.*?)['"\s]*\)$/,Zt=["allowfullscreen","allowpaymentrequest","allowusermedia","async","autofocus","autoplay","checked","controls","default","defer","disabled","download","formnovalidate","hidden","ismap","itemscope","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","selected","typemustmatch"],Xt=[].concat(Zt,["autocapitalize","autocomplete","charset","contenteditable","crossorigin","decoding","dir","draggable","enctype","formenctype","formmethod","http-equiv","inputmode","kind","method","preload","scope","shape","spellcheck","translate","type","wrap"]),Jt=[c.identity,function(e){return ar(e).join(" ")}],er=/^[\da-z]+$/i,tr=/^#\d+$/,rr=/^#x[\da-f]+$/i;var nr=function(){function e(){Object(pt.a)(this,e)}return Object(ht.a)(e,[{key:"parse",value:function(e){if(t=e,er.test(t)||tr.test(t)||rr.test(t))return Object(Tt.decodeEntities)("&"+e+";");var t}}]),e}();function ar(e){return e.trim().split(Wt)}function or(e){return e.attributes.filter((function(e){var t=Object(tt.a)(e,2),r=t[0];return t[1]||0===r.indexOf("data-")||Object(c.includes)(Xt,r)}))}function ir(e,t){for(var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ct(),n=e.chars,a=t.chars,o=0;o2&&void 0!==arguments[2]?arguments[2]:Ct();if(e.length!==t.length)return r.warning("Expected attributes %o, instead saw %o.",t,e),!1;for(var n={},a=0;a2&&void 0!==arguments[2]?arguments[2]:Ct();return e.tagName!==t.tagName&&e.tagName.toLowerCase()!==t.tagName.toLowerCase()?(r.warning("Expected tag name `%s`, instead saw `%s`.",t.tagName,e.tagName),!1):lr.apply(void 0,Object(i.a)([e,t].map(or)).concat([r]))},Chars:ir,Comment:ir};function fr(e){for(var t;t=e.shift();){if("Chars"!==t.type)return t;if(!Yt.test(t.chars))return t}}function pr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ct();try{return new jt(new nr).tokenize(e)}catch(r){t.warning("Malformed HTML detected: %s",e)}return null}function hr(e,t){return!!e.selfClosing&&!(!t||t.tagName!==e.tagName||"EndTag"!==t.type)}function br(e,t){var r,n,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ct(),o=[e,t].map((function(e){return pr(e,a)})),i=Object(tt.a)(o,2),s=i[0],c=i[1];if(!s||!c)return!1;for(;r=fr(s);){if(!(n=fr(c)))return a.warning("Expected end of content, instead saw %o.",r),!1;if(r.type!==n.type)return a.warning("Expected token of type `%s` (%o), instead saw `%s` (%o).",n.type,n,r.type,r),!1;var u=dr[r.type];if(u&&!u(r,n,a))return!1;hr(r,c[0])?fr(c):hr(n,s[0])&&fr(s)}return!(n=fr(c))||(a.warning("Expected %o, instead saw end of content.",n),!1)}function gr(e,t,r){var n,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Pt(),o=de(e);try{n=Ft(o,t)}catch(e){return a.error("Block validation failed because an error occurred while generating block content:\n\n%s",e.toString()),{isValid:!1,validationIssues:a.getItems()}}var i=br(r,n,a);return i||a.error("Block validation failed for `%s` (%o).\n\nContent generated by `save` function:\n\n%s\n\nContent retrieved from post body:\n\n%s",o.name,o,n,r),{isValid:i,validationIssues:a.getItems()}}function mr(e,t,r){return gr(e,t,r,Ct()).isValid}function _r(e){for(var t=[],r=0;r2&&void 0!==arguments[2]?arguments[2]:{},n=de(e),a=Object(c.mapValues)(n.attributes,(function(e,n){return Mr(n,e,t,r)}));return Object(te.applyFilters)("blocks.getBlockAttributes",a,n,t,r)}function Ir(e){var t=e.blockName,r=e.attrs,n=e.innerBlocks,a=void 0===n?[]:n,o=e.innerHTML,s=e.innerContent,u=je(),l=Pe()||u;r=r||{},o=o.trim();var d=t||u;"core/cover-image"===d&&(d="core/cover"),"core/text"!==d&&"core/cover-text"!==d||(d="core/paragraph"),d&&0===d.indexOf("core/social-link-")&&(r.service=d.substring(17),d="core/social-link"),d===u&&(o=Object(st.autop)(o).trim());var f=Ee(d);if(!f){var p={attrs:r,blockName:t,innerBlocks:a,innerContent:s},h=Hr(p,{isCommentDelimited:!1}),b=Hr(p,{isCommentDelimited:!0});d&&(o=b),r={originalName:t,originalContent:b,originalUndelimitedContent:h},f=Ee(d=l)}a=(a=a.map(Ir)).filter((function(e){return e}));var g=d===u||d===l;if(f&&(o||!g)){var m=Ue(d,zr(f,o,r),a);if(!g){var _=gr(f,m.attributes,o),y=_.isValid,v=_.validationIssues;m.isValid=y,m.validationIssues=v}return m.originalContent=m.originalContent||o,(m=function(e,t){var r=Ee(e.name),n=r.deprecated;if(!n||!n.length)return e;for(var a=e,o=a.originalContent,s=a.innerBlocks,u=0;u0&&(m.isValid?console.info("Block successfully updated for `%s` (%o).\n\nNew content generated by `save` function:\n\n%s\n\nContent retrieved from post body:\n\n%s",f.name,f,Ft(f,m.attributes),m.originalContent):m.validationIssues.forEach((function(e){var t=e.log,r=e.args;return t.apply(void 0,Object(i.a)(r))}))),m}}function Hr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.isCommentDelimited,n=void 0===r||r,a=e.blockName,o=e.attrs,i=void 0===o?{}:o,s=e.innerBlocks,c=void 0===s?[]:s,u=e.innerContent,l=void 0===u?[]:u,d=0,f=l.map((function(e){return null!==e?e:Hr(c[d++],t)})).join("\n").replace(/\n+/g,"\n").trim();return n?Ut(a,i,f):f}var Vr,Rr=(Vr=ct.parse,function(e){return Vr(e).reduce((function(e,t){var r=Ir(t);return r&&e.push(r),e}),[])}),Fr=Rr;function $r(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qr(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0,n=document.implementation.createHTMLDocument("");return n.body.innerHTML=e,nn(n.body.childNodes,t,n,r),n.body.innerHTML}function on(e,t,r){var n=document.implementation.createHTMLDocument("");return n.body.innerHTML=e,function e(t,r,n,a){Array.from(t).forEach((function(t){var o=t.nodeName.toLowerCase();if(!n.hasOwnProperty(o)||n[o].isMatch&&!n[o].isMatch(t))e(t.childNodes,r,n,a),a&&!Wr(t)&&t.nextElementSibling&&Object(oe.insertAfter)(r.createElement("br"),t),Object(oe.unwrap)(t);else if(t.nodeType===Jr){var i=n[o],s=i.attributes,u=void 0===s?[]:s,l=i.classes,d=void 0===l?[]:l,f=i.children,p=i.require,h=void 0===p?[]:p,b=i.allowEmpty;if(f&&!b&&rn(t))return void Object(oe.remove)(t);if(t.hasAttributes()&&(Array.from(t.attributes).forEach((function(e){var r=e.name;"class"===r||Object(c.includes)(u,r)||t.removeAttribute(r)})),t.classList&&t.classList.length)){var g=d.map((function(e){return"string"==typeof e?function(t){return t===e}:e instanceof RegExp?function(t){return e.test(t)}:c.noop}));Array.from(t.classList).forEach((function(e){g.some((function(t){return t(e)}))||t.classList.remove(e)})),t.classList.length||t.removeAttribute("class")}if(t.hasChildNodes()){if("*"===f)return;if(f)h.length&&!t.querySelector(h.join(","))?(e(t.childNodes,r,n,a),Object(oe.unwrap)(t)):"BODY"===t.parentNode.nodeName&&Wr(t)?(e(t.childNodes,r,n,a),Array.from(t.childNodes).some((function(e){return!Wr(e)}))&&Object(oe.unwrap)(t)):e(t.childNodes,r,f,a);else for(;t.firstChild;)Object(oe.remove)(t.firstChild)}}}))}(n.body.childNodes,n,t,r),n.body.innerHTML}function sn(e,t){var r=e["".concat(t,"Sibling")];if(r&&Wr(r))return r;var n=e.parentNode;return n&&Wr(n)?sn(n,t):void 0}var cn=window.Node,un=cn.ELEMENT_NODE,ln=cn.TEXT_NODE,dn=function(e){var t=document.implementation.createHTMLDocument(""),r=document.implementation.createHTMLDocument(""),n=t.body,a=r.body;for(n.innerHTML=e;n.firstChild;){var o=n.firstChild;o.nodeType===ln?o.nodeValue.trim()?(a.lastChild&&"P"===a.lastChild.nodeName||a.appendChild(r.createElement("P")),a.lastChild.appendChild(o)):n.removeChild(o):o.nodeType===un?"BR"===o.nodeName?(o.nextSibling&&"BR"===o.nextSibling.nodeName&&(a.appendChild(r.createElement("P")),n.removeChild(o.nextSibling)),a.lastChild&&"P"===a.lastChild.nodeName&&a.lastChild.hasChildNodes()?a.lastChild.appendChild(o):n.removeChild(o)):"P"===o.nodeName?rn(o)?n.removeChild(o):a.appendChild(o):Wr(o)?(a.lastChild&&"P"===a.lastChild.nodeName||a.appendChild(r.createElement("P")),a.lastChild.appendChild(o)):a.appendChild(o):n.removeChild(o)}return a.innerHTML},fn=window.Node.COMMENT_NODE,pn=function(e,t){if(e.nodeType===fn)if("nextpage"!==e.nodeValue){if(0===e.nodeValue.indexOf("more")){for(var r=e.nodeValue.slice(4).trim(),n=e,a=!1;n=n.nextSibling;)if(n.nodeType===fn&&"noteaser"===n.nodeValue){a=!0,Object(oe.remove)(n);break}Object(oe.replace)(e,function(e,t,r){var n=r.createElement("wp-block");n.dataset.block="core/more",e&&(n.dataset.customText=e);t&&(n.dataset.noTeaser="");return n}(r,a,t))}}else Object(oe.replace)(e,function(e){var t=e.createElement("wp-block");return t.dataset.block="core/nextpage",t}(t))};function hn(e){return"OL"===e.nodeName||"UL"===e.nodeName}var bn=function(e){if(hn(e)){var t=e,r=e.previousElementSibling;if(r&&r.nodeName===e.nodeName&&1===t.children.length){for(;t.firstChild;)r.appendChild(t.firstChild);t.parentNode.removeChild(t)}var n,a=e.parentNode;if(a&&"LI"===a.nodeName&&1===a.children.length&&!/\S/.test((n=a,Array.from(n.childNodes).map((function(e){var t=e.nodeValue;return void 0===t?"":t})).join("")))){var o=a,i=o.previousElementSibling,s=o.parentNode;i?(i.appendChild(t),s.removeChild(o)):(s.parentNode.insertBefore(t,s),s.parentNode.removeChild(s))}if(a&&hn(a)){var c=e.previousElementSibling;c?c.appendChild(e):Object(oe.unwrap)(e)}}},gn=function(e){"BLOCKQUOTE"===e.nodeName&&(e.innerHTML=dn(e.innerHTML))};function mn(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,r=e.ownerDocument.createElement("figure");t.parentNode.insertBefore(r,t),r.appendChild(e)}var _n=function(e,t,r){if(function(e,t){var r=e.nodeName.toLowerCase();return"figcaption"!==r&&!Yr(e)&&Object(c.has)(t,["figure","children",r])}(e,r)){var n=e,a=e.parentNode;(function(e,t){var r=e.nodeName.toLowerCase();return Object(c.has)(t,["figure","children","a","children",r])})(e,r)&&"A"===a.nodeName&&1===a.childNodes.length&&(n=e.parentNode);var o=n.closest("p,div");o?(e.classList.contains("alignright")||e.classList.contains("alignleft")||e.classList.contains("aligncenter")||!o.textContent.trim())&&mn(n,o):"BODY"===n.parentNode.nodeName&&mn(n)}},yn=r("SVSp");function vn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function wn(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],a=Xe("from"),o=Ze(a,(function(e){return-1===n.indexOf(e.blockName)&&"shortcode"===e.type&&Object(c.some)(Object(c.castArray)(e.tag),(function(e){return Object(yn.regexp)(e).test(t)}))}));if(!o)return[t];var s,u=Object(c.castArray)(o.tag),l=Object(c.find)(u,(function(e){return Object(yn.regexp)(e).test(t)})),d=r;if(s=Object(yn.next)(l,t,r)){r=s.index+s.content.length;var f=t.substr(0,s.index),p=t.substr(r);if(!(Object(c.includes)(s.shortcode.content||"","<")||/(\n|

    )\s*$/.test(f)&&/^\s*(\n|<\/p>)/.test(p)))return e(t,r);if(o.isMatch&&!o.isMatch(s.shortcode.attrs))return e(t,d,[].concat(Object(i.a)(n),[o.blockName]));var h=Object(c.mapValues)(Object(c.pickBy)(o.attributes,(function(e){return e.shortcode})),(function(e){return e.shortcode(s.shortcode.attrs,s)})),b=Ue(o.blockName,zr(wn({},Ee(o.blockName),{attributes:o.attributes}),s.shortcode.content,h));return[f,b].concat(Object(i.a)(e(t.substr(r))))}return[t]},On=window.Node.COMMENT_NODE,jn=function(e){e.nodeType===On&&Object(oe.remove)(e)};function Tn(e,t){return e.every((function(e){return function(e,t){if(Yr(e))return!0;if(!t)return!1;var r=e.nodeName.toLowerCase();return[["ul","li","ol"],["h1","h2","h3","h4","h5","h6"]].some((function(e){return 0===Object(c.difference)([r,t],e).length}))}(e,t)&&Tn(Array.from(e.children),t)}))}function Cn(e){return"BR"===e.nodeName&&e.previousSibling&&"BR"===e.previousSibling.nodeName}var Pn=function(e,t){if("SPAN"===e.nodeName&&e.style){var r=e.style,n=r.fontWeight,a=r.fontStyle,o=r.textDecorationLine,i=r.textDecoration,s=r.verticalAlign;"bold"!==n&&"700"!==n||Object(oe.wrap)(t.createElement("strong"),e),"italic"===a&&Object(oe.wrap)(t.createElement("em"),e),("line-through"===o||Object(c.includes)(i,"line-through"))&&Object(oe.wrap)(t.createElement("s"),e),"super"===s?Object(oe.wrap)(t.createElement("sup"),e):"sub"===s&&Object(oe.wrap)(t.createElement("sub"),e)}else"B"===e.nodeName?e=Object(oe.replaceTag)(e,"strong"):"I"===e.nodeName?e=Object(oe.replaceTag)(e,"em"):"A"===e.nodeName&&(e.target&&"_blank"===e.target.toLowerCase()?e.rel="noreferrer noopener":(e.removeAttribute("target"),e.removeAttribute("rel")))},xn=function(e){"SCRIPT"!==e.nodeName&&"NOSCRIPT"!==e.nodeName&&"TEMPLATE"!==e.nodeName&&"STYLE"!==e.nodeName||e.parentNode.removeChild(e)},Sn=window.parseInt;function An(e){return"OL"===e.nodeName||"UL"===e.nodeName}var En=function(e,t){if("P"===e.nodeName){var r=e.getAttribute("style");if(r&&-1!==r.indexOf("mso-list")){var n=/mso-list\s*:[^;]+level([0-9]+)/i.exec(r);if(n){var a=Sn(n[1],10)-1||0,o=e.previousElementSibling;if(!o||!An(o)){var i=e.textContent.trim().slice(0,1),s=/[1iIaA]/.test(i),c=t.createElement(s?"ol":"ul");s&&c.setAttribute("type",i),e.parentNode.insertBefore(c,e)}var u=e.previousElementSibling,l=u.nodeName,d=t.createElement("li"),f=u;for(e.removeChild(e.firstElementChild);e.firstChild;)d.appendChild(e.firstChild);for(;a--;)An(f=f.lastElementChild||f)&&(f=f.lastElementChild||f);An(f)||(f=f.appendChild(t.createElement(l))),f.appendChild(d),e.parentNode.removeChild(e)}}}},Nn=r("xTGt"),Bn=window,Dn=Bn.atob,Ln=Bn.File,Mn=function(e){if("IMG"===e.nodeName){if(0===e.src.indexOf("file:")&&(e.src=""),0===e.src.indexOf("data:")){var t,r=e.src.split(","),n=Object(tt.a)(r,2),a=n[0],o=n[1],i=a.slice(5).split(";"),s=Object(tt.a)(i,1)[0];if(!o||!s)return void(e.src="");try{t=Dn(o)}catch(t){return void(e.src="")}for(var c=new Uint8Array(t.length),u=0;u]+>/g,"")).replace(/^\s*]*>\s*]*>(?:\s*)?/i,"")).replace(/(?:\s*)?<\/body>\s*<\/html>\s*$/i,""),"INLINE"!==s){var f=n||o;if(-1!==f.indexOf("\x3c!-- wp:"))return Rr(f)}if(String.prototype.normalize&&(n=n.normalize()),!o||n&&!function(e){return!/<(?!br[ />])/i.test(e)}(n)||(t=o,n=In.makeHtml(function(e){return e.replace(/((?:^|\n)```)([^\n`]+)(```(?:$|\n))/,(function(e,t,r,n){return"".concat(t,"\n").concat(r,"\n").concat(n)}))}(t)),"AUTO"===s&&-1===o.indexOf("\n")&&0!==o.indexOf("

    ")&&0===n.indexOf("

    ")&&(s="INLINE")),"INLINE"===s)return Kn(n);var p=kn(n),h=p.length>1;if("AUTO"===s&&!h&&function(e,t){var r=document.implementation.createHTMLDocument("");r.body.innerHTML=e;var n=Array.from(r.body.children);return!n.some(Cn)&&Tn(n,t)}(n,u))return Kn(n);var b=Object(c.filter)(Xe("from"),{type:"raw"}).map((function(e){return e.isMatch?e:Un({},e,{isMatch:function(t){return e.selector&&t.matches(e.selector)}})})),g=Kr("paste"),m=tn(b,g,!0),_=Object(c.compact)(Object(c.flatMap)(p,(function(e){if("string"!=typeof e)return e;var t=[Vn,En,xn,bn,Mn,Pn,pn,jn,_n,gn];d||t.unshift(Hn);var r=Un({},m,{},g);return e=on(e=an(e,t,m),r),e=an(e=dn(e),[Rn,Fn,$n],m),Gn.log("Processed HTML piece:\n\n",e),function(e){var t=e.html,r=e.rawTransforms,n=document.implementation.createHTMLDocument("");return n.body.innerHTML=t,Array.from(n.body.children).map((function(e){var t=Ze(r,(function(t){return(0,t.isMatch)(e)}));if(!t)return Ue("core/html",zr("core/html",e.outerHTML));var n=t.transform,a=t.blockName;return n?n(e):Ue(a,zr(a,e.outerHTML))}))}({html:e,rawTransforms:b})})));if("AUTO"===s&&1===_.length&&De(_[0].name,"__unstablePasteTextInline",!1)){var y=o.trim();if(""!==y&&-1===y.indexOf("\n"))return on(qt(_[0]),g)}return _}function Yn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Qn(){return Object(c.filter)(Xe("from"),{type:"raw"}).map((function(e){return e.isMatch?e:function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length===t.length&&Object(c.every)(t,(function(t,r){var n=Object(tt.a)(t,3),a=n[0],o=n[2],i=e[r];return a===i.name&&na(i.innerBlocks,o)}))}function aa(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;return t?Object(c.map)(t,(function(t,r){var n=Object(tt.a)(t,3),a=n[0],o=n[1],i=n[2],s=e[r];if(s&&s.name===a)return ra({},s,{innerBlocks:aa(s.innerBlocks,i)});var u=Ee(a),l=function(e,t){return Object(c.mapValues)(t,(function(t,r){return d(e[r],t)}))},d=function(e,t){return r=e,"html"===Object(c.get)(r,["source"])&&Object(c.isArray)(t)?Object(ae.renderToString)(t):function(e){return"query"===Object(c.get)(e,["source"])}(e)&&t?t.map((function(t){return l(e.query,t)})):t;var r};return Ue(a,l(Object(c.get)(u,["attributes"],{}),o),aa([],i))})):e}},"1CF3":function(e,t){!function(){e.exports=this.wp.dom}()},"1OyB":function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}r.d(t,"a",(function(){return n}))},"1ZqX":function(e,t){!function(){e.exports=this.wp.data}()},"25BE":function(e,t,r){"use strict";function n(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}r.d(t,"a",(function(){return n}))},"4fRq":function(e,t){var r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof window.msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto);if(r){var n=new Uint8Array(16);e.exports=function(){return r(n),n}}else{var a=new Array(16);e.exports=function(){for(var e,t=0;t<16;t++)0==(3&t)&&(e=4294967296*Math.random()),a[t]=e>>>((3&t)<<3)&255;return a}}},BsWD:function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r("a3WO");function a(e,t){if(e){if("string"==typeof e)return Object(n.a)(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Object(n.a)(e,t):void 0}}},DSFK:function(e,t,r){"use strict";function n(e){if(Array.isArray(e))return e}r.d(t,"a",(function(){return n}))},GRId:function(e,t){!function(){e.exports=this.wp.element}()},I2ZF:function(e,t){for(var r=[],n=0;n<256;++n)r[n]=(n+256).toString(16).substr(1);e.exports=function(e,t){var n=t||0,a=r;return[a[e[n++]],a[e[n++]],a[e[n++]],a[e[n++]],"-",a[e[n++]],a[e[n++]],"-",a[e[n++]],a[e[n++]],"-",a[e[n++]],a[e[n++]],"-",a[e[n++]],a[e[n++]],a[e[n++]],a[e[n++]],a[e[n++]],a[e[n++]]].join("")}},K9lf:function(e,t){!function(){e.exports=this.wp.compose}()},KQm4:function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r("a3WO");var a=r("25BE"),o=r("BsWD");function i(e){return function(e){if(Array.isArray(e))return Object(n.a)(e)}(e)||Object(a.a)(e)||Object(o.a)(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},M55E:function(e,t,r){var n;/*! showdown v 1.9.1 - 02-11-2019 */ (function(){function a(e){"use strict";var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,description:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,description:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,description:"Parses simple line breaks as
    (GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,description:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,description:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",description:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,description:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,description:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,description:"Support for HTML Tag escaping. ex:

    foo
    ",type:"boolean"},emoji:{defaultValue:!1,description:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,description:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},completeHTMLDocument:{defaultValue:!1,description:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,description:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,description:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]=t[n].defaultValue);return r}var o={},i={},s={},c=a(!0),u="vanilla",l={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:a(!0),allOn:function(){"use strict";var e=a(!0),t={};for(var r in e)e.hasOwnProperty(r)&&(t[r]=!0);return t}()};function d(e,t){"use strict";var r=t?"Error in "+t+" extension->":"Error in unnamed extension",n={valid:!0,error:""};o.helper.isArray(e)||(e=[e]);for(var a=0;a").replace(/&/g,"&")};var p=function(e,t,r,n){"use strict";var a,o,i,s,c,u=n||"",l=u.indexOf("g")>-1,d=new RegExp(t+"|"+r,"g"+u.replace(/g/g,"")),f=new RegExp(t,u.replace(/g/g,"")),p=[];do{for(a=0;i=d.exec(e);)if(f.test(i[0]))a++||(s=(o=d.lastIndex)-i[0].length);else if(a&&!--a){c=i.index+i[0].length;var h={left:{start:s,end:o},match:{start:o,end:i.index},right:{start:i.index,end:c},wholeMatch:{start:s,end:c}};if(p.push(h),!l)return p}}while(a&&(d.lastIndex=o));return p};o.helper.matchRecursiveRegExp=function(e,t,r,n){"use strict";for(var a=p(e,t,r,n),o=[],i=0;i0){var l=[];0!==s[0].wholeMatch.start&&l.push(e.slice(0,s[0].wholeMatch.start));for(var d=0;d=0?n+(r||0):n},o.helper.splitAtIndex=function(e,t){"use strict";if(!o.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,t),e.substring(t)]},o.helper.encodeEmailAddress=function(e){"use strict";var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e=e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var r=Math.random();e=r>.9?t[2](e):r>.45?t[1](e):t[0](e)}return e}))},o.helper.padEnd=function(e,t,r){"use strict";return t>>=0,r=String(r||" "),e.length>t?String(e):((t-=e.length)>r.length&&(r+=r.repeat(t/r.length)),String(e)+r.slice(0,t))},"undefined"==typeof console&&(console={warn:function(e){"use strict";alert(e)},log:function(e){"use strict";alert(e)},error:function(e){"use strict";throw e}}),o.helper.regexes={asteriskDashAndColon:/([*_:~])/g},o.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},o.Converter=function(e){"use strict";var t={},r=[],n=[],a={},i=u,f={parsed:{},raw:"",format:""};function p(e,t){if(t=t||null,o.helper.isString(e)){if(t=e=o.helper.stdExtName(e),o.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,t){"function"==typeof e&&(e=e(new o.Converter));o.helper.isArray(e)||(e=[e]);var a=d(e,t);if(!a.valid)throw Error(a.error);for(var i=0;i[ \t]+¨NBSP;<"),!t){if(!window||!window.document)throw new Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");t=window.document}var r=t.createElement("div");r.innerHTML=e;var n={preList:function(e){for(var t=e.querySelectorAll("pre"),r=[],n=0;n'}else r.push(t[n].innerHTML),t[n].innerHTML="",t[n].setAttribute("prenum",n.toString());return r}(r)};!function e(t){for(var r=0;r? ?(['"].*['"])?\)$/m)>-1)i="";else if(!i){if(a||(a=n.toLowerCase().replace(/ ?\n/g," ")),i="#"+a,o.helper.isUndefined(r.gUrls[a]))return e;i=r.gUrls[a],o.helper.isUndefined(r.gTitles[a])||(u=r.gTitles[a])}var l='"};return e=(e=(e=(e=(e=r.converter._dispatch("anchors.before",e,t,r)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[([^\[\]]+)]()()()()()/g,n),t.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,r,n,a,i){if("\\"===n)return r+a;if(!o.helper.isString(t.ghMentionsLink))throw new Error("ghMentionsLink option must be a string");var s=t.ghMentionsLink.replace(/\{u}/g,i),c="";return t.openLinksInNewWindow&&(c=' rel="noopener noreferrer" target="¨E95Eblank"'),r+'"+a+""}))),e=r.converter._dispatch("anchors.after",e,t,r)}));var h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,b=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,g=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,m=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,_=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,y=function(e){"use strict";return function(t,r,n,a,i,s,c){var u=n=n.replace(o.helper.regexes.asteriskDashAndColon,o.helper.escapeCharactersCallback),l="",d="",f=r||"",p=c||"";return/^www\./i.test(n)&&(n=n.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&s&&(l=s),e.openLinksInNewWindow&&(d=' rel="noopener noreferrer" target="¨E95Eblank"'),f+'"+u+""+l+p}},v=function(e,t){"use strict";return function(r,n,a){var i="mailto:";return n=n||"",a=o.subParser("unescapeSpecialChars")(a,e,t),e.encodeEmails?(i=o.helper.encodeEmailAddress(i+a),a=o.helper.encodeEmailAddress(a)):i+=a,n+''+a+""}};o.subParser("autoLinks",(function(e,t,r){"use strict";return e=(e=(e=r.converter._dispatch("autoLinks.before",e,t,r)).replace(g,y(t))).replace(_,v(t,r)),e=r.converter._dispatch("autoLinks.after",e,t,r)})),o.subParser("simplifiedAutoLinks",(function(e,t,r){"use strict";return t.simplifiedAutoLink?(e=r.converter._dispatch("simplifiedAutoLinks.before",e,t,r),e=(e=t.excludeTrailingPunctuationFromURLs?e.replace(b,y(t)):e.replace(h,y(t))).replace(m,v(t,r)),e=r.converter._dispatch("simplifiedAutoLinks.after",e,t,r)):e})),o.subParser("blockGamut",(function(e,t,r){"use strict";return e=r.converter._dispatch("blockGamut.before",e,t,r),e=o.subParser("blockQuotes")(e,t,r),e=o.subParser("headers")(e,t,r),e=o.subParser("horizontalRule")(e,t,r),e=o.subParser("lists")(e,t,r),e=o.subParser("codeBlocks")(e,t,r),e=o.subParser("tables")(e,t,r),e=o.subParser("hashHTMLBlocks")(e,t,r),e=o.subParser("paragraphs")(e,t,r),e=r.converter._dispatch("blockGamut.after",e,t,r)})),o.subParser("blockQuotes",(function(e,t,r){"use strict";e=r.converter._dispatch("blockQuotes.before",e,t,r),e+="\n\n";var n=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return t.splitAdjacentBlockquotes&&(n=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(n,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=o.subParser("githubCodeBlocks")(e,t,r),e=(e=(e=o.subParser("blockGamut")(e,t,r)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
    [^\r]+?<\/pre>)/gm,(function(e,t){var r=t;return r=(r=r.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),o.subParser("hashBlock")("
    \n"+e+"\n
    ",t,r)})),e=r.converter._dispatch("blockQuotes.after",e,t,r)})),o.subParser("codeBlocks",(function(e,t,r){"use strict";e=r.converter._dispatch("codeBlocks.before",e,t,r);return e=(e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,n,a){var i=n,s=a,c="\n";return i=o.subParser("outdent")(i,t,r),i=o.subParser("encodeCode")(i,t,r),i=(i=(i=o.subParser("detab")(i,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""),t.omitExtraWLInCodeBlocks&&(c=""),i="
    "+i+c+"
    ",o.subParser("hashBlock")(i,t,r)+s}))).replace(/¨0/,""),e=r.converter._dispatch("codeBlocks.after",e,t,r)})),o.subParser("codeSpans",(function(e,t,r){"use strict";return void 0===(e=r.converter._dispatch("codeSpans.before",e,t,r))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,n,a,i){var s=i;return s=(s=s.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),s=n+""+(s=o.subParser("encodeCode")(s,t,r))+"",s=o.subParser("hashHTMLSpans")(s,t,r)})),e=r.converter._dispatch("codeSpans.after",e,t,r)})),o.subParser("completeHTMLDocument",(function(e,t,r){"use strict";if(!t.completeHTMLDocument)return e;e=r.converter._dispatch("completeHTMLDocument.before",e,t,r);var n="html",a="\n",o="",i='\n',s="",c="";for(var u in void 0!==r.metadata.parsed.doctype&&(a="\n","html"!==(n=r.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==n||(i='')),r.metadata.parsed)if(r.metadata.parsed.hasOwnProperty(u))switch(u.toLowerCase()){case"doctype":break;case"title":o=""+r.metadata.parsed.title+"\n";break;case"charset":i="html"===n||"html5"===n?'\n':'\n';break;case"language":case"lang":s=' lang="'+r.metadata.parsed[u]+'"',c+='\n';break;default:c+='\n'}return e=a+"\n\n"+o+i+c+"\n\n"+e.trim()+"\n\n",e=r.converter._dispatch("completeHTMLDocument.after",e,t,r)})),o.subParser("detab",(function(e,t,r){"use strict";return e=(e=(e=(e=(e=(e=r.converter._dispatch("detab.before",e,t,r)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var r=t,n=4-r.length%4,a=0;a/g,">"),e=r.converter._dispatch("encodeAmpsAndAngles.after",e,t,r)})),o.subParser("encodeBackslashEscapes",(function(e,t,r){"use strict";return e=(e=(e=r.converter._dispatch("encodeBackslashEscapes.before",e,t,r)).replace(/\\(\\)/g,o.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|-])/g,o.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeBackslashEscapes.after",e,t,r)})),o.subParser("encodeCode",(function(e,t,r){"use strict";return e=(e=r.converter._dispatch("encodeCode.before",e,t,r)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,o.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeCode.after",e,t,r)})),o.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,t,r){"use strict";return e=(e=(e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,t,r)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,o.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,o.helper.escapeCharactersCallback)})),e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,t,r)})),o.subParser("githubCodeBlocks",(function(e,t,r){"use strict";return t.ghCodeBlocks?(e=r.converter._dispatch("githubCodeBlocks.before",e,t,r),e=(e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,n,a,i){var s=t.omitExtraWLInCodeBlocks?"":"\n";return i=o.subParser("encodeCode")(i,t,r),i="
    "+(i=(i=(i=o.subParser("detab")(i,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+s+"
    ",i=o.subParser("hashBlock")(i,t,r),"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:i})-1)+"G\n\n"}))).replace(/¨0/,""),r.converter._dispatch("githubCodeBlocks.after",e,t,r)):e})),o.subParser("hashBlock",(function(e,t,r){"use strict";return e=(e=r.converter._dispatch("hashBlock.before",e,t,r)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n",e=r.converter._dispatch("hashBlock.after",e,t,r)})),o.subParser("hashCodeTags",(function(e,t,r){"use strict";e=r.converter._dispatch("hashCodeTags.before",e,t,r);return e=o.helper.replaceRecursiveRegExp(e,(function(e,n,a,i){var s=a+o.subParser("encodeCode")(n,t,r)+i;return"¨C"+(r.gHtmlSpans.push(s)-1)+"C"}),"]*>","","gim"),e=r.converter._dispatch("hashCodeTags.after",e,t,r)})),o.subParser("hashElement",(function(e,t,r){"use strict";return function(e,t){var n=t;return n=(n=(n=n.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),n="\n\n¨K"+(r.gHtmlBlocks.push(n)-1)+"K\n\n"}})),o.subParser("hashHTMLBlocks",(function(e,t,r){"use strict";e=r.converter._dispatch("hashHTMLBlocks.before",e,t,r);var n=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],a=function(e,t,n,a){var o=e;return-1!==n.search(/\bmarkdown\b/)&&(o=n+r.converter.makeHtml(t)+a),"\n\n¨K"+(r.gHtmlBlocks.push(o)-1)+"K\n\n"};t.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var i=0;i]*>)","im"),u="<"+n[i]+"\\b[^>]*>",l="";-1!==(s=o.helper.regexIndexOf(e,c));){var d=o.helper.splitAtIndex(e,s),f=o.helper.replaceRecursiveRegExp(d[1],a,u,l,"im");if(f===d[1])break;e=d[0].concat(f)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,o.subParser("hashElement")(e,t,r)),e=(e=o.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,o.subParser("hashElement")(e,t,r)),e=r.converter._dispatch("hashHTMLBlocks.after",e,t,r)})),o.subParser("hashHTMLSpans",(function(e,t,r){"use strict";function n(e){return"¨C"+(r.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=r.converter._dispatch("hashHTMLSpans.before",e,t,r)).replace(/<[^>]+?\/>/gi,(function(e){return n(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return n(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return n(e)}))).replace(/<[^>]+?>/gi,(function(e){return n(e)})),e=r.converter._dispatch("hashHTMLSpans.after",e,t,r)})),o.subParser("unhashHTMLSpans",(function(e,t,r){"use strict";e=r.converter._dispatch("unhashHTMLSpans.before",e,t,r);for(var n=0;n]*>\\s*]*>","^ {0,3}\\s*
    ","gim"),e=r.converter._dispatch("hashPreCodeTags.after",e,t,r)})),o.subParser("headers",(function(e,t,r){"use strict";e=r.converter._dispatch("headers.before",e,t,r);var n=isNaN(parseInt(t.headerLevelStart))?1:parseInt(t.headerLevelStart),a=t.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,i=t.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;e=(e=e.replace(a,(function(e,a){var i=o.subParser("spanGamut")(a,t,r),s=t.noHeaderId?"":' id="'+c(a)+'"',u=""+i+"";return o.subParser("hashBlock")(u,t,r)}))).replace(i,(function(e,a){var i=o.subParser("spanGamut")(a,t,r),s=t.noHeaderId?"":' id="'+c(a)+'"',u=n+1,l=""+i+"";return o.subParser("hashBlock")(l,t,r)}));var s=t.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;function c(e){var n,a;if(t.customizedHeaderId){var i=e.match(/\{([^{]+?)}\s*$/);i&&i[1]&&(e=i[1])}return n=e,a=o.helper.isString(t.prefixHeaderId)?t.prefixHeaderId:!0===t.prefixHeaderId?"section-":"",t.rawPrefixHeaderId||(n=a+n),n=t.ghCompatibleHeaderId?n.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():t.rawHeaderId?n.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():n.replace(/[^\w]/g,"").toLowerCase(),t.rawPrefixHeaderId&&(n=a+n),r.hashLinkCounts[n]?n=n+"-"+r.hashLinkCounts[n]++:r.hashLinkCounts[n]=1,n}return e=e.replace(s,(function(e,a,i){var s=i;t.customizedHeaderId&&(s=i.replace(/\s?\{([^{]+?)}\s*$/,""));var u=o.subParser("spanGamut")(s,t,r),l=t.noHeaderId?"":' id="'+c(i)+'"',d=n-1+a.length,f=""+u+"";return o.subParser("hashBlock")(f,t,r)})),e=r.converter._dispatch("headers.after",e,t,r)})),o.subParser("horizontalRule",(function(e,t,r){"use strict";e=r.converter._dispatch("horizontalRule.before",e,t,r);var n=o.subParser("hashBlock")("
    ",t,r);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,n),e=r.converter._dispatch("horizontalRule.after",e,t,r)})),o.subParser("images",(function(e,t,r){"use strict";function n(e,t,n,a,i,s,c,u){var l=r.gUrls,d=r.gTitles,f=r.gDimensions;if(n=n.toLowerCase(),u||(u=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)a="";else if(""===a||null===a){if(""!==n&&null!==n||(n=t.toLowerCase().replace(/ ?\n/g," ")),a="#"+n,o.helper.isUndefined(l[n]))return e;a=l[n],o.helper.isUndefined(d[n])||(u=d[n]),o.helper.isUndefined(f[n])||(i=f[n].width,s=f[n].height)}t=t.replace(/"/g,""").replace(o.helper.regexes.asteriskDashAndColon,o.helper.escapeCharactersCallback);var p=''+t+'"}return e=(e=(e=(e=(e=(e=r.converter._dispatch("images.before",e,t,r)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,r,a,o,i,s,c){return n(e,t,r,a=a.replace(/\s/g,""),o,i,s,c)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,n)).replace(/!\[([^\[\]]+)]()()()()()/g,n),e=r.converter._dispatch("images.after",e,t,r)})),o.subParser("italicsAndBold",(function(e,t,r){"use strict";function n(e,t,r){return t+e+r}return e=r.converter._dispatch("italicsAndBold.before",e,t,r),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return n(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return n(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return n(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,r){return n(r,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,r){return n(r,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,r){return n(r,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?n(t,"",""):e})),e=r.converter._dispatch("italicsAndBold.after",e,t,r)})),o.subParser("lists",(function(e,t,r){"use strict";function n(e,n){r.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var a=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,i=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return t.disableForced4SpacesIndentedSublists&&(a=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(a,(function(e,n,a,s,c,u,l){l=l&&""!==l.trim();var d=o.subParser("outdent")(c,t,r),f="";return u&&t.tasklists&&(f=' class="task-list-item" style="list-style-type: none;"',d=d.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='-1?(d=o.subParser("githubCodeBlocks")(d,t,r),d=o.subParser("blockGamut")(d,t,r)):(d=(d=o.subParser("lists")(d,t,r)).replace(/\n$/,""),d=(d=o.subParser("hashHTMLBlocks")(d,t,r)).replace(/\n\n+/g,"\n\n"),d=i?o.subParser("paragraphs")(d,t,r):o.subParser("spanGamut")(d,t,r)),d=""+(d=d.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),r.gListLevel--,n&&(e=e.replace(/\s+$/,"")),e}function a(e,t){if("ol"===t){var r=e.match(/^ *(\d+)\./);if(r&&"1"!==r[1])return' start="'+r[1]+'"'}return""}function i(e,r,o){var i=t.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,s=t.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,c="ul"===r?i:s,u="";if(-1!==e.search(c))!function t(l){var d=l.search(c),f=a(e,r);-1!==d?(u+="\n\n<"+r+f+">\n"+n(l.slice(0,d),!!o)+"\n",c="ul"===(r="ul"===r?"ol":"ul")?i:s,t(l.slice(d))):u+="\n\n<"+r+f+">\n"+n(l,!!o)+"\n"}(e);else{var l=a(e,r);u="\n\n<"+r+l+">\n"+n(e,!!o)+"\n"}return u}return e=r.converter._dispatch("lists.before",e,t,r),e+="¨0",e=(e=r.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,r){return i(t,r.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,r,n){return i(r,n.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),e=r.converter._dispatch("lists.after",e,t,r)})),o.subParser("metadata",(function(e,t,r){"use strict";if(!t.metadata)return e;function n(e){r.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,n){return r.metadata.parsed[t]=n,""}))}return e=(e=(e=(e=r.converter._dispatch("metadata.before",e,t,r)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,r){return n(r),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,a){return t&&(r.metadata.format=t),n(a),"¨M"}))).replace(/¨M/g,""),e=r.converter._dispatch("metadata.after",e,t,r)})),o.subParser("outdent",(function(e,t,r){"use strict";return e=(e=(e=r.converter._dispatch("outdent.before",e,t,r)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),e=r.converter._dispatch("outdent.after",e,t,r)})),o.subParser("paragraphs",(function(e,t,r){"use strict";for(var n=(e=(e=(e=r.converter._dispatch("paragraphs.before",e,t,r)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),a=[],i=n.length,s=0;s=0?a.push(c):c.search(/\S/)>=0&&(c=(c=o.subParser("spanGamut")(c,t,r)).replace(/^([ \t]*)/g,"

    "),c+="

    ",a.push(c))}for(i=a.length,s=0;s]*>\s*]*>/.test(l)&&(d=!0)}a[s]=l}return e=(e=(e=a.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",e,t,r)})),o.subParser("runExtension",(function(e,t,r,n){"use strict";if(e.filter)t=e.filter(t,n.converter,r);else if(e.regex){var a=e.regex;a instanceof RegExp||(a=new RegExp(a,"g")),t=t.replace(a,e.replace)}return t})),o.subParser("spanGamut",(function(e,t,r){"use strict";return e=r.converter._dispatch("spanGamut.before",e,t,r),e=o.subParser("codeSpans")(e,t,r),e=o.subParser("escapeSpecialCharsWithinTagAttributes")(e,t,r),e=o.subParser("encodeBackslashEscapes")(e,t,r),e=o.subParser("images")(e,t,r),e=o.subParser("anchors")(e,t,r),e=o.subParser("autoLinks")(e,t,r),e=o.subParser("simplifiedAutoLinks")(e,t,r),e=o.subParser("emoji")(e,t,r),e=o.subParser("underline")(e,t,r),e=o.subParser("italicsAndBold")(e,t,r),e=o.subParser("strikethrough")(e,t,r),e=o.subParser("ellipsis")(e,t,r),e=o.subParser("hashHTMLSpans")(e,t,r),e=o.subParser("encodeAmpsAndAngles")(e,t,r),t.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
    \n")):e=e.replace(/ +\n/g,"
    \n"),e=r.converter._dispatch("spanGamut.after",e,t,r)})),o.subParser("strikethrough",(function(e,t,r){"use strict";return t.strikethrough&&(e=(e=r.converter._dispatch("strikethrough.before",e,t,r)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,n){return function(e){return t.simplifiedAutoLink&&(e=o.subParser("simplifiedAutoLinks")(e,t,r)),""+e+""}(n)})),e=r.converter._dispatch("strikethrough.after",e,t,r)),e})),o.subParser("stripLinkDefinitions",(function(e,t,r){"use strict";var n=function(e,n,a,i,s,c,u){return n=n.toLowerCase(),a.match(/^data:.+?\/.+?;base64,/)?r.gUrls[n]=a.replace(/\s/g,""):r.gUrls[n]=o.subParser("encodeAmpsAndAngles")(a,t,r),c?c+u:(u&&(r.gTitles[n]=u.replace(/"|'/g,""")),t.parseImgDimensions&&i&&s&&(r.gDimensions[n]={width:i,height:s}),"")};return e=(e=(e=(e+="¨0").replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,n)).replace(/^ {0,3}\[(.+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,n)).replace(/¨0/,"")})),o.subParser("tables",(function(e,t,r){"use strict";if(!t.tables)return e;function n(e,n){return""+o.subParser("spanGamut")(e,t,r)+"\n"}function a(e){var a,i=e.split("\n");for(a=0;a"+(c=o.subParser("spanGamut")(c,t,r))+"\n"));for(a=0;a\n\n\n",a=0;a\n";for(var o=0;o\n"}return r+="\n\n"}(h,g)}return e=(e=(e=(e=r.converter._dispatch("tables.before",e,t,r)).replace(/\\(\|)/g,o.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,a)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,a),e=r.converter._dispatch("tables.after",e,t,r)})),o.subParser("underline",(function(e,t,r){"use strict";return t.underline?(e=r.converter._dispatch("underline.before",e,t,r),e=(e=t.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,o.helper.escapeCharactersCallback),e=r.converter._dispatch("underline.after",e,t,r)):e})),o.subParser("unescapeSpecialChars",(function(e,t,r){"use strict";return e=(e=r.converter._dispatch("unescapeSpecialChars.before",e,t,r)).replace(/¨E(\d+)E/g,(function(e,t){var r=parseInt(t);return String.fromCharCode(r)})),e=r.converter._dispatch("unescapeSpecialChars.after",e,t,r)})),o.subParser("makeMarkdown.blockquote",(function(e,t){"use strict";var r="";if(e.hasChildNodes())for(var n=e.childNodes,a=n.length,i=0;i ")})),o.subParser("makeMarkdown.codeBlock",(function(e,t){"use strict";var r=e.getAttribute("language"),n=e.getAttribute("precodenum");return"```"+r+"\n"+t.preList[n]+"\n```"})),o.subParser("makeMarkdown.codeSpan",(function(e){"use strict";return"`"+e.innerHTML+"`"})),o.subParser("makeMarkdown.emphasis",(function(e,t){"use strict";var r="";if(e.hasChildNodes()){r+="*";for(var n=e.childNodes,a=n.length,i=0;i",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),o.subParser("makeMarkdown.links",(function(e,t){"use strict";var r="";if(e.hasChildNodes()&&e.hasAttribute("href")){var n=e.childNodes,a=n.length;r="[";for(var i=0;i",e.hasAttribute("title")&&(r+=' "'+e.getAttribute("title")+'"'),r+=")"}return r})),o.subParser("makeMarkdown.list",(function(e,t,r){"use strict";var n="";if(!e.hasChildNodes())return"";for(var a=e.childNodes,i=a.length,s=e.getAttribute("start")||1,c=0;c"+t.preList[r]+"
    "})),o.subParser("makeMarkdown.strikethrough",(function(e,t){"use strict";var r="";if(e.hasChildNodes()){r+="~~";for(var n=e.childNodes,a=n.length,i=0;itr>th"),c=e.querySelectorAll("tbody>tr");for(r=0;rh&&(h=b)}for(r=0;r/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")}));void 0===(n=function(){"use strict";return o}.call(t,r,t,e))||(e.exports=n)}).call(this)},ODXe:function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r("DSFK");var a=r("BsWD"),o=r("PYwp");function i(e,t){return Object(n.a)(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,o=void 0;try{for(var i,s=e[Symbol.iterator]();!(n=(i=s.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){a=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw o}}return r}}(e,t)||Object(a.a)(e,t)||Object(o.a)()}},PYwp:function(e,t,r){"use strict";function n(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}r.d(t,"a",(function(){return n}))},SVSp:function(e,t){!function(){e.exports=this.wp.shortcode}()},UuzZ:function(e,t){!function(){e.exports=this.wp.autop}()},YLtl:function(e,t){!function(){e.exports=this.lodash}()},Zss7:function(e,t,r){var n;!function(a){var o=/^\s+/,i=/\s+$/,s=0,c=a.round,u=a.min,l=a.max,d=a.random;function f(e,t){if(t=t||{},(e=e||"")instanceof f)return e;if(!(this instanceof f))return new f(e,t);var r=function(e){var t={r:0,g:0,b:0},r=1,n=null,s=null,c=null,d=!1,f=!1;"string"==typeof e&&(e=function(e){e=e.replace(o,"").replace(i,"").toLowerCase();var t,r=!1;if(A[e])e=A[e],r=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};if(t=$.rgb.exec(e))return{r:t[1],g:t[2],b:t[3]};if(t=$.rgba.exec(e))return{r:t[1],g:t[2],b:t[3],a:t[4]};if(t=$.hsl.exec(e))return{h:t[1],s:t[2],l:t[3]};if(t=$.hsla.exec(e))return{h:t[1],s:t[2],l:t[3],a:t[4]};if(t=$.hsv.exec(e))return{h:t[1],s:t[2],v:t[3]};if(t=$.hsva.exec(e))return{h:t[1],s:t[2],v:t[3],a:t[4]};if(t=$.hex8.exec(e))return{r:L(t[1]),g:L(t[2]),b:L(t[3]),a:H(t[4]),format:r?"name":"hex8"};if(t=$.hex6.exec(e))return{r:L(t[1]),g:L(t[2]),b:L(t[3]),format:r?"name":"hex"};if(t=$.hex4.exec(e))return{r:L(t[1]+""+t[1]),g:L(t[2]+""+t[2]),b:L(t[3]+""+t[3]),a:H(t[4]+""+t[4]),format:r?"name":"hex8"};if(t=$.hex3.exec(e))return{r:L(t[1]+""+t[1]),g:L(t[2]+""+t[2]),b:L(t[3]+""+t[3]),format:r?"name":"hex"};return!1}(e));"object"==typeof e&&(q(e.r)&&q(e.g)&&q(e.b)?(p=e.r,h=e.g,b=e.b,t={r:255*B(p,255),g:255*B(h,255),b:255*B(b,255)},d=!0,f="%"===String(e.r).substr(-1)?"prgb":"rgb"):q(e.h)&&q(e.s)&&q(e.v)?(n=z(e.s),s=z(e.v),t=function(e,t,r){e=6*B(e,360),t=B(t,100),r=B(r,100);var n=a.floor(e),o=e-n,i=r*(1-t),s=r*(1-o*t),c=r*(1-(1-o)*t),u=n%6;return{r:255*[r,s,i,i,c,r][u],g:255*[c,r,r,s,i,i][u],b:255*[i,i,c,r,r,s][u]}}(e.h,n,s),d=!0,f="hsv"):q(e.h)&&q(e.s)&&q(e.l)&&(n=z(e.s),c=z(e.l),t=function(e,t,r){var n,a,o;function i(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}if(e=B(e,360),t=B(t,100),r=B(r,100),0===t)n=a=o=r;else{var s=r<.5?r*(1+t):r+t-r*t,c=2*r-s;n=i(c,s,e+1/3),a=i(c,s,e),o=i(c,s,e-1/3)}return{r:255*n,g:255*a,b:255*o}}(e.h,n,c),d=!0,f="hsl"),e.hasOwnProperty("a")&&(r=e.a));var p,h,b;return r=N(r),{ok:d,format:e.format||f,r:u(255,l(t.r,0)),g:u(255,l(t.g,0)),b:u(255,l(t.b,0)),a:r}}(e);this._originalInput=e,this._r=r.r,this._g=r.g,this._b=r.b,this._a=r.a,this._roundA=c(100*this._a)/100,this._format=t.format||r.format,this._gradientType=t.gradientType,this._r<1&&(this._r=c(this._r)),this._g<1&&(this._g=c(this._g)),this._b<1&&(this._b=c(this._b)),this._ok=r.ok,this._tc_id=s++}function p(e,t,r){e=B(e,255),t=B(t,255),r=B(r,255);var n,a,o=l(e,t,r),i=u(e,t,r),s=(o+i)/2;if(o==i)n=a=0;else{var c=o-i;switch(a=s>.5?c/(2-o-i):c/(o+i),o){case e:n=(t-r)/c+(t>1)+720)%360;--t;)n.h=(n.h+a)%360,o.push(f(n));return o}function S(e,t){t=t||6;for(var r=f(e).toHsv(),n=r.h,a=r.s,o=r.v,i=[],s=1/t;t--;)i.push(f({h:n,s:a,v:o})),o=(o+s)%1;return i}f.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,r,n=this.toRgb();return e=n.r/255,t=n.g/255,r=n.b/255,.2126*(e<=.03928?e/12.92:a.pow((e+.055)/1.055,2.4))+.7152*(t<=.03928?t/12.92:a.pow((t+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:a.pow((r+.055)/1.055,2.4))},setAlpha:function(e){return this._a=N(e),this._roundA=c(100*this._a)/100,this},toHsv:function(){var e=h(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=h(this._r,this._g,this._b),t=c(360*e.h),r=c(100*e.s),n=c(100*e.v);return 1==this._a?"hsv("+t+", "+r+"%, "+n+"%)":"hsva("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var e=p(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=p(this._r,this._g,this._b),t=c(360*e.h),r=c(100*e.s),n=c(100*e.l);return 1==this._a?"hsl("+t+", "+r+"%, "+n+"%)":"hsla("+t+", "+r+"%, "+n+"%, "+this._roundA+")"},toHex:function(e){return b(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(e){return function(e,t,r,n,a){var o=[M(c(e).toString(16)),M(c(t).toString(16)),M(c(r).toString(16)),M(I(n))];if(a&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1))return o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0);return o.join("")}(this._r,this._g,this._b,this._a,e)},toHex8String:function(e){return"#"+this.toHex8(e)},toRgb:function(){return{r:c(this._r),g:c(this._g),b:c(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+c(this._r)+", "+c(this._g)+", "+c(this._b)+")":"rgba("+c(this._r)+", "+c(this._g)+", "+c(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:c(100*B(this._r,255))+"%",g:c(100*B(this._g,255))+"%",b:c(100*B(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+c(100*B(this._r,255))+"%, "+c(100*B(this._g,255))+"%, "+c(100*B(this._b,255))+"%)":"rgba("+c(100*B(this._r,255))+"%, "+c(100*B(this._g,255))+"%, "+c(100*B(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(E[b(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+g(this._r,this._g,this._b,this._a),r=t,n=this._gradientType?"GradientType = 1, ":"";if(e){var a=f(e);r="#"+g(a._r,a._g,a._b,a._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+t+",endColorstr="+r+")"},toString:function(e){var t=!!e;e=e||this._format;var r=!1,n=this._a<1&&this._a>=0;return t||!n||"hex"!==e&&"hex6"!==e&&"hex3"!==e&&"hex4"!==e&&"hex8"!==e&&"name"!==e?("rgb"===e&&(r=this.toRgbString()),"prgb"===e&&(r=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(r=this.toHexString()),"hex3"===e&&(r=this.toHexString(!0)),"hex4"===e&&(r=this.toHex8String(!0)),"hex8"===e&&(r=this.toHex8String()),"name"===e&&(r=this.toName()),"hsl"===e&&(r=this.toHslString()),"hsv"===e&&(r=this.toHsvString()),r||this.toHexString()):"name"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return f(this.toString())},_applyModification:function(e,t){var r=e.apply(null,[this].concat([].slice.call(t)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(v,arguments)},brighten:function(){return this._applyModification(w,arguments)},darken:function(){return this._applyModification(k,arguments)},desaturate:function(){return this._applyModification(m,arguments)},saturate:function(){return this._applyModification(_,arguments)},greyscale:function(){return this._applyModification(y,arguments)},spin:function(){return this._applyModification(O,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(x,arguments)},complement:function(){return this._applyCombination(j,arguments)},monochromatic:function(){return this._applyCombination(S,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(T,arguments)},tetrad:function(){return this._applyCombination(C,arguments)}},f.fromRatio=function(e,t){if("object"==typeof e){var r={};for(var n in e)e.hasOwnProperty(n)&&(r[n]="a"===n?e[n]:z(e[n]));e=r}return f(e,t)},f.equals=function(e,t){return!(!e||!t)&&f(e).toRgbString()==f(t).toRgbString()},f.random=function(){return f.fromRatio({r:d(),g:d(),b:d()})},f.mix=function(e,t,r){r=0===r?0:r||50;var n=f(e).toRgb(),a=f(t).toRgb(),o=r/100;return f({r:(a.r-n.r)*o+n.r,g:(a.g-n.g)*o+n.g,b:(a.b-n.b)*o+n.b,a:(a.a-n.a)*o+n.a})},f.readability=function(e,t){var r=f(e),n=f(t);return(a.max(r.getLuminance(),n.getLuminance())+.05)/(a.min(r.getLuminance(),n.getLuminance())+.05)},f.isReadable=function(e,t,r){var n,a,o=f.readability(e,t);switch(a=!1,(n=function(e){var t,r;t=((e=e||{level:"AA",size:"small"}).level||"AA").toUpperCase(),r=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA");"small"!==r&&"large"!==r&&(r="small");return{level:t,size:r}}(r)).level+n.size){case"AAsmall":case"AAAlarge":a=o>=4.5;break;case"AAlarge":a=o>=3;break;case"AAAsmall":a=o>=7}return a},f.mostReadable=function(e,t,r){var n,a,o,i,s=null,c=0;a=(r=r||{}).includeFallbackColors,o=r.level,i=r.size;for(var u=0;uc&&(c=n,s=f(t[u]));return f.isReadable(e,s,{level:o,size:i})||!a?s:(r.includeFallbackColors=!1,f.mostReadable(e,["#fff","#000"],r))};var A=f.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},E=f.hexNames=function(e){var t={};for(var r in e)e.hasOwnProperty(r)&&(t[e[r]]=r);return t}(A);function N(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function B(e,t){(function(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var r=function(e){return"string"==typeof e&&-1!=e.indexOf("%")}(e);return e=u(t,l(0,parseFloat(e))),r&&(e=parseInt(e*t,10)/100),a.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function D(e){return u(1,l(0,e))}function L(e){return parseInt(e,16)}function M(e){return 1==e.length?"0"+e:""+e}function z(e){return e<=1&&(e=100*e+"%"),e}function I(e){return a.round(255*parseFloat(e)).toString(16)}function H(e){return L(e)/255}var V,R,F,$=(R="[\\s|\\(]+("+(V="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?",F="[\\s|\\(]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")[,|\\s]+("+V+")\\s*\\)?",{CSS_UNIT:new RegExp(V),rgb:new RegExp("rgb"+R),rgba:new RegExp("rgba"+F),hsl:new RegExp("hsl"+R),hsla:new RegExp("hsla"+F),hsv:new RegExp("hsv"+R),hsva:new RegExp("hsva"+F),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function q(e){return!!$.CSS_UNIT.exec(e)}e.exports?e.exports=f:void 0===(n=function(){return f}.call(t,r,t,e))||(e.exports=n)}(Math)},a3WO:function(e,t,r){"use strict";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r/="\uFDD0-\uFDEF]/;function u(e){return e.replace(/&(?!([a-z0-9]+|#[0-9]+|#x[a-f0-9]+);)/gi,"&")}function o(e){return e.replace(/"/g,""")}function i(e){return e.replace(//g,">")}(o(u(e)))}function f(e){return i(u(e))}function a(e){return i(e.replace(/&/g,"&"))}function p(e){return!r.test(e)}}});PKv\ꂫ77dist/wordcount.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["wordcount"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "pC98"); /******/ }) /************************************************************************/ /******/ ({ /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "pC98": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "count", function() { return /* binding */ count; }); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/defaultSettings.js var defaultSettings = { HTMLRegExp: /<\/?[a-z][^>]*?>/gi, HTMLcommentRegExp: //g, spaceRegExp: / | /gi, HTMLEntityRegExp: /&\S+?;/g, // \u2014 = em-dash connectorRegExp: /--|\u2014/g, // Characters to be removed from input text. removeRegExp: new RegExp(['[', // Basic Latin (extract) "!-@[-`{-~", // Latin-1 Supplement (extract) "\x80-\xBF\xD7\xF7", /* * The following range consists of: * General Punctuation * Superscripts and Subscripts * Currency Symbols * Combining Diacritical Marks for Symbols * Letterlike Symbols * Number Forms * Arrows * Mathematical Operators * Miscellaneous Technical * Control Pictures * Optical Character Recognition * Enclosed Alphanumerics * Box Drawing * Block Elements * Geometric Shapes * Miscellaneous Symbols * Dingbats * Miscellaneous Mathematical Symbols-A * Supplemental Arrows-A * Braille Patterns * Supplemental Arrows-B * Miscellaneous Mathematical Symbols-B * Supplemental Mathematical Operators * Miscellaneous Symbols and Arrows */ "\u2000-\u2BFF", // Supplemental Punctuation "\u2E00-\u2E7F", ']'].join(''), 'g'), // Remove UTF-16 surrogate points, see https://en.wikipedia.org/wiki/UTF-16#U.2BD800_to_U.2BDFFF astralRegExp: /[\uD800-\uDBFF][\uDC00-\uDFFF]/g, wordsRegExp: /\S\s+/g, characters_excluding_spacesRegExp: /\S/g, /* * Match anything that is not a formatting character, excluding: * \f = form feed * \n = new line * \r = carriage return * \t = tab * \v = vertical tab * \u00AD = soft hyphen * \u2028 = line separator * \u2029 = paragraph separator */ characters_including_spacesRegExp: /[^\f\n\r\t\v\u00AD\u2028\u2029]/g, l10n: { type: 'words' } }; // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripTags.js /** * Replaces items matched in the regex with new line * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripTags = (function (settings, text) { if (settings.HTMLRegExp) { return text.replace(settings.HTMLRegExp, '\n'); } }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/transposeAstralsToCountableChar.js /** * Replaces items matched in the regex with character. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var transposeAstralsToCountableChar = (function (settings, text) { if (settings.astralRegExp) { return text.replace(settings.astralRegExp, 'a'); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripHTMLEntities.js /** * Removes items matched in the regex. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripHTMLEntities = (function (settings, text) { if (settings.HTMLEntityRegExp) { return text.replace(settings.HTMLEntityRegExp, ''); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripConnectors.js /** * Replaces items matched in the regex with spaces. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripConnectors = (function (settings, text) { if (settings.connectorRegExp) { return text.replace(settings.connectorRegExp, ' '); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripRemovables.js /** * Removes items matched in the regex. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripRemovables = (function (settings, text) { if (settings.removeRegExp) { return text.replace(settings.removeRegExp, ''); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripHTMLComments.js /** * Removes items matched in the regex. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripHTMLComments = (function (settings, text) { if (settings.HTMLcommentRegExp) { return text.replace(settings.HTMLcommentRegExp, ''); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripShortcodes.js /** * Replaces items matched in the regex with a new line. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripShortcodes = (function (settings, text) { if (settings.shortcodesRegExp) { return text.replace(settings.shortcodesRegExp, '\n'); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/stripSpaces.js /** * Replaces items matched in the regex with spaces. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var stripSpaces = (function (settings, text) { if (settings.spaceRegExp) { return text.replace(settings.spaceRegExp, ' '); } }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/transposeHTMLEntitiesToCountableChars.js /** * Replaces items matched in the regex with a single character. * * @param {Object} settings The main settings object containing regular expressions * @param {string} text The string being counted. * * @return {string} The manipulated text. */ /* harmony default export */ var transposeHTMLEntitiesToCountableChars = (function (settings, text) { if (settings.HTMLEntityRegExp) { return text.replace(settings.HTMLEntityRegExp, 'a'); } return text; }); // CONCATENATED MODULE: ./node_modules/@wordpress/wordcount/build-module/index.js /** * External dependencies */ /** * Internal dependencies */ /** * Private function to manage the settings. * * @param {string} type The type of count to be done. * @param {Object} userSettings Custom settings for the count. * * @return {void|Object|*} The combined settings object to be used. */ function loadSettings(type, userSettings) { var settings = Object(external_this_lodash_["extend"])(defaultSettings, userSettings); settings.shortcodes = settings.l10n.shortcodes || {}; if (settings.shortcodes && settings.shortcodes.length) { settings.shortcodesRegExp = new RegExp('\\[\\/?(?:' + settings.shortcodes.join('|') + ')[^\\]]*?\\]', 'g'); } settings.type = type || settings.l10n.type; if (settings.type !== 'characters_excluding_spaces' && settings.type !== 'characters_including_spaces') { settings.type = 'words'; } return settings; } /** * Match the regex for the type 'words' * * @param {string} text The text being processed * @param {string} regex The regular expression pattern being matched * @param {Object} settings Settings object containing regular expressions for each strip function * * @return {Array|{index: number, input: string}} The matched string. */ function matchWords(text, regex, settings) { text = Object(external_this_lodash_["flow"])(stripTags.bind(this, settings), stripHTMLComments.bind(this, settings), stripShortcodes.bind(this, settings), stripSpaces.bind(this, settings), stripHTMLEntities.bind(this, settings), stripConnectors.bind(this, settings), stripRemovables.bind(this, settings))(text); text = text + '\n'; return text.match(regex); } /** * Match the regex for either 'characters_excluding_spaces' or 'characters_including_spaces' * * @param {string} text The text being processed * @param {string} regex The regular expression pattern being matched * @param {Object} settings Settings object containing regular expressions for each strip function * * @return {Array|{index: number, input: string}} The matched string. */ function matchCharacters(text, regex, settings) { text = Object(external_this_lodash_["flow"])(stripTags.bind(this, settings), stripHTMLComments.bind(this, settings), stripShortcodes.bind(this, settings), stripSpaces.bind(this, settings), transposeAstralsToCountableChar.bind(this, settings), transposeHTMLEntitiesToCountableChars.bind(this, settings))(text); text = text + '\n'; return text.match(regex); } /** * Count some words. * * @param {string} text The text being processed * @param {string} type The type of count. Accepts ;words', 'characters_excluding_spaces', or 'characters_including_spaces'. * @param {Object} userSettings Custom settings object. * * @example * ```js * import { count } from '@wordpress/wordcount'; * const numberOfWords = count( 'Words to count', 'words', {} ) * ``` * * @return {number} The word or character count. */ function count(text, type, userSettings) { if ('' === text) { return 0; } if (text) { var settings = loadSettings(type, userSettings); var matchRegExp = settings[type + 'RegExp']; var results = 'words' === settings.type ? matchWords(text, matchRegExp, settings) : matchCharacters(text, matchRegExp, settings); return results ? results.length : 0; } } /***/ }) /******/ });PKv\b)X!X!dist/priority-queue.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["priorityQueue"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "XPKI"); /******/ }) /************************************************************************/ /******/ ({ /***/ "XPKI": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "createQueue", function() { return /* binding */ build_module_createQueue; }); // CONCATENATED MODULE: ./node_modules/@wordpress/priority-queue/build-module/request-idle-callback.js /** * @return {typeof window.requestIdleCallback|typeof window.requestAnimationFrame|((callback:(timestamp:number)=>void)=>void)} */ function createRequestIdleCallback() { if (typeof window === 'undefined') { return function (callback) { setTimeout(function () { return callback(Date.now()); }, 0); }; } return window.requestIdleCallback || window.requestAnimationFrame; } /* harmony default export */ var request_idle_callback = (createRequestIdleCallback()); // CONCATENATED MODULE: ./node_modules/@wordpress/priority-queue/build-module/index.js /** * Internal dependencies */ /** * Enqueued callback to invoke once idle time permits. * * @typedef {()=>void} WPPriorityQueueCallback */ /** * An object used to associate callbacks in a particular context grouping. * * @typedef {{}} WPPriorityQueueContext */ /** * Function to add callback to priority queue. * * @typedef {(element:WPPriorityQueueContext,item:WPPriorityQueueCallback)=>void} WPPriorityQueueAdd */ /** * Function to flush callbacks from priority queue. * * @typedef {(element:WPPriorityQueueContext)=>boolean} WPPriorityQueueFlush */ /** * Priority queue instance. * * @typedef {Object} WPPriorityQueue * * @property {WPPriorityQueueAdd} add Add callback to queue for context. * @property {WPPriorityQueueFlush} flush Flush queue for context. */ /** * Creates a context-aware queue that only executes * the last task of a given context. * * @example *```js * import { createQueue } from '@wordpress/priority-queue'; * * const queue = createQueue(); * * // Context objects. * const ctx1 = {}; * const ctx2 = {}; * * // For a given context in the queue, only the last callback is executed. * queue.add( ctx1, () => console.log( 'This will be printed first' ) ); * queue.add( ctx2, () => console.log( 'This won\'t be printed' ) ); * queue.add( ctx2, () => console.log( 'This will be printed second' ) ); *``` * * @return {WPPriorityQueue} Queue object with `add` and `flush` methods. */ var build_module_createQueue = function createQueue() { /** @type {WPPriorityQueueContext[]} */ var waitingList = []; /** @type {WeakMap} */ var elementsMap = new WeakMap(); var isRunning = false; /** * Callback to process as much queue as time permits. * * @type {IdleRequestCallback & FrameRequestCallback} * * @param {IdleDeadline|number} deadline Idle callback deadline object, or * animation frame timestamp. */ var runWaitingList = function runWaitingList(deadline) { var hasTimeRemaining = typeof deadline === 'number' ? function () { return false; } : function () { return deadline.timeRemaining() > 0; }; do { if (waitingList.length === 0) { isRunning = false; return; } var nextElement = /** @type {WPPriorityQueueContext} */ waitingList.shift(); var callback = /** @type {WPPriorityQueueCallback} */ elementsMap.get(nextElement); callback(); elementsMap.delete(nextElement); } while (hasTimeRemaining()); request_idle_callback(runWaitingList); }; /** * Add a callback to the queue for a given context. * * @type {WPPriorityQueueAdd} * * @param {WPPriorityQueueContext} element Context object. * @param {WPPriorityQueueCallback} item Callback function. */ var add = function add(element, item) { if (!elementsMap.has(element)) { waitingList.push(element); } elementsMap.set(element, item); if (!isRunning) { isRunning = true; request_idle_callback(runWaitingList); } }; /** * Flushes queue for a given context, returning true if the flush was * performed, or false if there is no queue for the given context. * * @type {WPPriorityQueueFlush} * * @param {WPPriorityQueueContext} element Context object. * * @return {boolean} Whether flush was performed. */ var flush = function flush(element) { if (!elementsMap.has(element)) { return false; } var index = waitingList.indexOf(element); waitingList.splice(index, 1); var callback = /** @type {WPPriorityQueueCallback} */ elementsMap.get(element); elementsMap.delete(element); callback(); return true; }; return { add: add, flush: flush }; }; /***/ }) /******/ });PKv\cffdist/api-fetch.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["apiFetch"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "jqrR"); /******/ }) /************************************************************************/ /******/ ({ /***/ "Ff2n": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; }); /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zLVn"); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } /***/ }), /***/ "HaE+": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _asyncToGenerator; }); function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } /***/ }), /***/ "Mmq9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["url"]; }()); /***/ }), /***/ "dvlR": /***/ (function(module, exports) { (function() { module.exports = this["regeneratorRuntime"]; }()); /***/ }), /***/ "jqrR": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__("Ff2n"); // EXTERNAL MODULE: external {"this":["wp","i18n"]} var external_this_wp_i18n_ = __webpack_require__("l3Sj"); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/nonce.js function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function createNonceMiddleware(nonce) { function middleware(options, next) { var _options$headers = options.headers, headers = _options$headers === void 0 ? {} : _options$headers; // If an 'X-WP-Nonce' header (or any case-insensitive variation // thereof) was specified, no need to add a nonce header. for (var headerName in headers) { if (headerName.toLowerCase() === 'x-wp-nonce') { return next(options); } } return next(_objectSpread({}, options, { headers: _objectSpread({}, headers, { 'X-WP-Nonce': middleware.nonce }) })); } middleware.nonce = nonce; return middleware; } /* harmony default export */ var nonce = (createNonceMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js function namespace_endpoint_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function namespace_endpoint_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { namespace_endpoint_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { namespace_endpoint_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var namespaceAndEndpointMiddleware = function namespaceAndEndpointMiddleware(options, next) { var path = options.path; var namespaceTrimmed, endpointTrimmed; if (typeof options.namespace === 'string' && typeof options.endpoint === 'string') { namespaceTrimmed = options.namespace.replace(/^\/|\/$/g, ''); endpointTrimmed = options.endpoint.replace(/^\//, ''); if (endpointTrimmed) { path = namespaceTrimmed + '/' + endpointTrimmed; } else { path = namespaceTrimmed; } } delete options.namespace; delete options.endpoint; return next(namespace_endpoint_objectSpread({}, options, { path: path })); }; /* harmony default export */ var namespace_endpoint = (namespaceAndEndpointMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/root-url.js function root_url_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function root_url_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { root_url_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { root_url_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Internal dependencies */ var root_url_createRootURLMiddleware = function createRootURLMiddleware(rootURL) { return function (options, next) { return namespace_endpoint(options, function (optionsWithPath) { var url = optionsWithPath.url; var path = optionsWithPath.path; var apiRoot; if (typeof path === 'string') { apiRoot = rootURL; if (-1 !== rootURL.indexOf('?')) { path = path.replace('?', '&'); } path = path.replace(/^\//, ''); // API root may already include query parameter prefix if site is // configured to use plain permalinks. if ('string' === typeof apiRoot && -1 !== apiRoot.indexOf('?')) { path = path.replace('?', '&'); } url = apiRoot + path; } return next(root_url_objectSpread({}, optionsWithPath, { url: url })); }); }; }; /* harmony default export */ var root_url = (root_url_createRootURLMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/preloading.js /** * Given a path, returns a normalized path where equal query parameter values * will be treated as identical, regardless of order they appear in the original * text. * * @param {string} path Original path. * * @return {string} Normalized path. */ function getStablePath(path) { var splitted = path.split('?'); var query = splitted[1]; var base = splitted[0]; if (!query) { return base; } // 'b=1&c=2&a=5' return base + '?' + query // [ 'b=1', 'c=2', 'a=5' ] .split('&') // [ [ 'b, '1' ], [ 'c', '2' ], [ 'a', '5' ] ] .map(function (entry) { return entry.split('='); }) // [ [ 'a', '5' ], [ 'b, '1' ], [ 'c', '2' ] ] .sort(function (a, b) { return a[0].localeCompare(b[0]); }) // [ 'a=5', 'b=1', 'c=2' ] .map(function (pair) { return pair.join('='); }) // 'a=5&b=1&c=2' .join('&'); } function createPreloadingMiddleware(preloadedData) { var cache = Object.keys(preloadedData).reduce(function (result, path) { result[getStablePath(path)] = preloadedData[path]; return result; }, {}); return function (options, next) { var _options$parse = options.parse, parse = _options$parse === void 0 ? true : _options$parse; if (typeof options.path === 'string') { var method = options.method || 'GET'; var path = getStablePath(options.path); if (parse && 'GET' === method && cache[path]) { return Promise.resolve(cache[path].body); } else if ('OPTIONS' === method && cache[method] && cache[method][path]) { return Promise.resolve(cache[method][path]); } } return next(options); }; } /* harmony default export */ var preloading = (createPreloadingMiddleware); // EXTERNAL MODULE: external {"this":"regeneratorRuntime"} var external_this_regeneratorRuntime_ = __webpack_require__("dvlR"); var external_this_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_this_regeneratorRuntime_); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js var asyncToGenerator = __webpack_require__("HaE+"); // EXTERNAL MODULE: external {"this":["wp","url"]} var external_this_wp_url_ = __webpack_require__("Mmq9"); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/fetch-all-middleware.js function fetch_all_middleware_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function fetch_all_middleware_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { fetch_all_middleware_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { fetch_all_middleware_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ // Apply query arguments to both URL and Path, whichever is present. var fetch_all_middleware_modifyQuery = function modifyQuery(_ref, queryArgs) { var path = _ref.path, url = _ref.url, options = Object(objectWithoutProperties["a" /* default */])(_ref, ["path", "url"]); return fetch_all_middleware_objectSpread({}, options, { url: url && Object(external_this_wp_url_["addQueryArgs"])(url, queryArgs), path: path && Object(external_this_wp_url_["addQueryArgs"])(path, queryArgs) }); }; // Duplicates parsing functionality from apiFetch. var parseResponse = function parseResponse(response) { return response.json ? response.json() : Promise.reject(response); }; var parseLinkHeader = function parseLinkHeader(linkHeader) { if (!linkHeader) { return {}; } var match = linkHeader.match(/<([^>]+)>; rel="next"/); return match ? { next: match[1] } : {}; }; var getNextPageUrl = function getNextPageUrl(response) { var _parseLinkHeader = parseLinkHeader(response.headers.get('link')), next = _parseLinkHeader.next; return next; }; var requestContainsUnboundedQuery = function requestContainsUnboundedQuery(options) { var pathIsUnbounded = options.path && options.path.indexOf('per_page=-1') !== -1; var urlIsUnbounded = options.url && options.url.indexOf('per_page=-1') !== -1; return pathIsUnbounded || urlIsUnbounded; }; // The REST API enforces an upper limit on the per_page option. To handle large // collections, apiFetch consumers can pass `per_page=-1`; this middleware will // then recursively assemble a full response array from all available pages. var fetchAllMiddleware = /*#__PURE__*/ function () { var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee(options, next) { var response, results, nextPage, mergedResults, nextResponse, nextResults; return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: if (!(options.parse === false)) { _context.next = 2; break; } return _context.abrupt("return", next(options)); case 2: if (requestContainsUnboundedQuery(options)) { _context.next = 4; break; } return _context.abrupt("return", next(options)); case 4: _context.next = 6; return next(fetch_all_middleware_objectSpread({}, fetch_all_middleware_modifyQuery(options, { per_page: 100 }), { // Ensure headers are returned for page 1. parse: false })); case 6: response = _context.sent; _context.next = 9; return parseResponse(response); case 9: results = _context.sent; if (Array.isArray(results)) { _context.next = 12; break; } return _context.abrupt("return", results); case 12: nextPage = getNextPageUrl(response); if (nextPage) { _context.next = 15; break; } return _context.abrupt("return", results); case 15: // Iteratively fetch all remaining pages until no "next" header is found. mergedResults = [].concat(results); case 16: if (!nextPage) { _context.next = 27; break; } _context.next = 19; return next(fetch_all_middleware_objectSpread({}, options, { // Ensure the URL for the next page is used instead of any provided path. path: undefined, url: nextPage, // Ensure we still get headers so we can identify the next page. parse: false })); case 19: nextResponse = _context.sent; _context.next = 22; return parseResponse(nextResponse); case 22: nextResults = _context.sent; mergedResults = mergedResults.concat(nextResults); nextPage = getNextPageUrl(nextResponse); _context.next = 16; break; case 27: return _context.abrupt("return", mergedResults); case 28: case "end": return _context.stop(); } } }, _callee); })); return function fetchAllMiddleware(_x, _x2) { return _ref2.apply(this, arguments); }; }(); /* harmony default export */ var fetch_all_middleware = (fetchAllMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/http-v1.js function http_v1_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function http_v1_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { http_v1_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { http_v1_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Set of HTTP methods which are eligible to be overridden. * * @type {Set} */ var OVERRIDE_METHODS = new Set(['PATCH', 'PUT', 'DELETE']); /** * Default request method. * * "A request has an associated method (a method). Unless stated otherwise it * is `GET`." * * @see https://fetch.spec.whatwg.org/#requests * * @type {string} */ var DEFAULT_METHOD = 'GET'; /** * API Fetch middleware which overrides the request method for HTTP v1 * compatibility leveraging the REST API X-HTTP-Method-Override header. * * @param {Object} options Fetch options. * @param {Function} next [description] * * @return {*} The evaluated result of the remaining middleware chain. */ function httpV1Middleware(options, next) { var _options = options, _options$method = _options.method, method = _options$method === void 0 ? DEFAULT_METHOD : _options$method; if (OVERRIDE_METHODS.has(method.toUpperCase())) { options = http_v1_objectSpread({}, options, { headers: http_v1_objectSpread({}, options.headers, { 'X-HTTP-Method-Override': method, 'Content-Type': 'application/json' }), method: 'POST' }); } return next(options, next); } /* harmony default export */ var http_v1 = (httpV1Middleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/user-locale.js /** * WordPress dependencies */ function userLocaleMiddleware(options, next) { if (typeof options.url === 'string' && !Object(external_this_wp_url_["hasQueryArg"])(options.url, '_locale')) { options.url = Object(external_this_wp_url_["addQueryArgs"])(options.url, { _locale: 'user' }); } if (typeof options.path === 'string' && !Object(external_this_wp_url_["hasQueryArg"])(options.path, '_locale')) { options.path = Object(external_this_wp_url_["addQueryArgs"])(options.path, { _locale: 'user' }); } return next(options, next); } /* harmony default export */ var user_locale = (userLocaleMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/utils/response.js /** * WordPress dependencies */ /** * Parses the apiFetch response. * * @param {Response} response * @param {boolean} shouldParseResponse * * @return {Promise} Parsed response */ var response_parseResponse = function parseResponse(response) { var shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; if (shouldParseResponse) { if (response.status === 204) { return null; } return response.json ? response.json() : Promise.reject(response); } return response; }; var response_parseJsonAndNormalizeError = function parseJsonAndNormalizeError(response) { var invalidJsonError = { code: 'invalid_json', message: Object(external_this_wp_i18n_["__"])('The response is not a valid JSON response.') }; if (!response || !response.json) { throw invalidJsonError; } return response.json().catch(function () { throw invalidJsonError; }); }; /** * Parses the apiFetch response properly and normalize response errors. * * @param {Response} response * @param {boolean} shouldParseResponse * * @return {Promise} Parsed response. */ var parseResponseAndNormalizeError = function parseResponseAndNormalizeError(response) { var shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; return Promise.resolve(response_parseResponse(response, shouldParseResponse)).catch(function (res) { return parseAndThrowError(res, shouldParseResponse); }); }; function parseAndThrowError(response) { var shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; if (!shouldParseResponse) { throw response; } return response_parseJsonAndNormalizeError(response).then(function (error) { var unknownError = { code: 'unknown_error', message: Object(external_this_wp_i18n_["__"])('An unknown error occurred.') }; throw error || unknownError; }); } // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/middlewares/media-upload.js function media_upload_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function media_upload_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { media_upload_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { media_upload_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ /** * Middleware handling media upload failures and retries. * * @param {Object} options Fetch options. * @param {Function} next [description] * * @return {*} The evaluated result of the remaining middleware chain. */ function mediaUploadMiddleware(options, next) { var isMediaUploadRequest = options.path && options.path.indexOf('/wp/v2/media') !== -1 || options.url && options.url.indexOf('/wp/v2/media') !== -1; if (!isMediaUploadRequest) { return next(options, next); } var retries = 0; var maxRetries = 5; var postProcess = function postProcess(attachmentId) { retries++; return next({ path: "/wp/v2/media/".concat(attachmentId, "/post-process"), method: 'POST', data: { action: 'create-image-subsizes' }, parse: false }).catch(function () { if (retries < maxRetries) { return postProcess(attachmentId); } next({ path: "/wp/v2/media/".concat(attachmentId, "?force=true"), method: 'DELETE' }); return Promise.reject(); }); }; return next(media_upload_objectSpread({}, options, { parse: false })).catch(function (response) { var attachmentId = response.headers.get('x-wp-upload-attachment-id'); if (response.status >= 500 && response.status < 600 && attachmentId) { return postProcess(attachmentId).catch(function () { if (options.parse !== false) { return Promise.reject({ code: 'post_process', message: Object(external_this_wp_i18n_["__"])('Media upload failed. If this is a photo or a large image, please scale it down and try again.') }); } return Promise.reject(response); }); } return parseAndThrowError(response, options.parse); }).then(function (response) { return parseResponseAndNormalizeError(response, options.parse); }); } /* harmony default export */ var media_upload = (mediaUploadMiddleware); // CONCATENATED MODULE: ./node_modules/@wordpress/api-fetch/build-module/index.js function build_module_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function build_module_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { build_module_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { build_module_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ /** * Default set of header values which should be sent with every request unless * explicitly provided through apiFetch options. * * @type {Object} */ var DEFAULT_HEADERS = { // The backend uses the Accept header as a condition for considering an // incoming request as a REST request. // // See: https://core.trac.wordpress.org/ticket/44534 Accept: 'application/json, */*;q=0.1' }; /** * Default set of fetch option values which should be sent with every request * unless explicitly provided through apiFetch options. * * @type {Object} */ var DEFAULT_OPTIONS = { credentials: 'include' }; var middlewares = [user_locale, namespace_endpoint, http_v1, fetch_all_middleware]; function registerMiddleware(middleware) { middlewares.unshift(middleware); } var checkStatus = function checkStatus(response) { if (response.status >= 200 && response.status < 300) { return response; } throw response; }; var build_module_defaultFetchHandler = function defaultFetchHandler(nextOptions) { var url = nextOptions.url, path = nextOptions.path, data = nextOptions.data, _nextOptions$parse = nextOptions.parse, parse = _nextOptions$parse === void 0 ? true : _nextOptions$parse, remainingOptions = Object(objectWithoutProperties["a" /* default */])(nextOptions, ["url", "path", "data", "parse"]); var body = nextOptions.body, headers = nextOptions.headers; // Merge explicitly-provided headers with default values. headers = build_module_objectSpread({}, DEFAULT_HEADERS, {}, headers); // The `data` property is a shorthand for sending a JSON body. if (data) { body = JSON.stringify(data); headers['Content-Type'] = 'application/json'; } var responsePromise = window.fetch(url || path, build_module_objectSpread({}, DEFAULT_OPTIONS, {}, remainingOptions, { body: body, headers: headers })); return responsePromise // Return early if fetch errors. If fetch error, there is most likely no // network connection. Unfortunately fetch just throws a TypeError and // the message might depend on the browser. .then(function (value) { return Promise.resolve(value).then(checkStatus).catch(function (response) { return parseAndThrowError(response, parse); }).then(function (response) { return parseResponseAndNormalizeError(response, parse); }); }, function () { throw { code: 'fetch_error', message: Object(external_this_wp_i18n_["__"])('You are probably offline.') }; }); }; var fetchHandler = build_module_defaultFetchHandler; /** * Defines a custom fetch handler for making the requests that will override * the default one using window.fetch * * @param {Function} newFetchHandler The new fetch handler */ function setFetchHandler(newFetchHandler) { fetchHandler = newFetchHandler; } function apiFetch(options) { var steps = [].concat(middlewares, [fetchHandler]); var createRunStep = function createRunStep(index) { return function (workingOptions) { var step = steps[index]; if (index === steps.length - 1) { return step(workingOptions); } var next = createRunStep(index + 1); return step(workingOptions, next); }; }; return new Promise(function (resolve, reject) { createRunStep(0)(options).then(resolve).catch(function (error) { if (error.code !== 'rest_cookie_invalid_nonce') { return reject(error); } // If the nonce is invalid, refresh it and try again. window.fetch(apiFetch.nonceEndpoint).then(checkStatus).then(function (data) { return data.text(); }).then(function (text) { apiFetch.nonceMiddleware.nonce = text; apiFetch(options).then(resolve).catch(reject); }).catch(reject); }); }); } apiFetch.use = registerMiddleware; apiFetch.setFetchHandler = setFetchHandler; apiFetch.createNonceMiddleware = nonce; apiFetch.createPreloadingMiddleware = preloading; apiFetch.createRootURLMiddleware = root_url; apiFetch.fetchAllMiddleware = fetch_all_middleware; apiFetch.mediaUploadMiddleware = media_upload; /* harmony default export */ var build_module = __webpack_exports__["default"] = (apiFetch); /***/ }), /***/ "l3Sj": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["i18n"]; }()); /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "zLVn": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; }); function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } /***/ }) /******/ })["default"];PKv\u eFeFdist/viewport.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["viewport"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "PR0u"); /******/ }) /************************************************************************/ /******/ ({ /***/ "1ZqX": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["data"]; }()); /***/ }), /***/ "BsWD": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; }); /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a3WO"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); } /***/ }), /***/ "DSFK": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; }); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "K9lf": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["compose"]; }()); /***/ }), /***/ "ODXe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js var arrayWithHoles = __webpack_require__("DSFK"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js var nonIterableRest = __webpack_require__("PYwp"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])(); } /***/ }), /***/ "PR0u": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "ifViewportMatches", function() { return /* reexport */ if_viewport_matches; }); __webpack_require__.d(__webpack_exports__, "withViewportMatch", function() { return /* reexport */ with_viewport_match; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/viewport/build-module/store/actions.js var actions_namespaceObject = {}; __webpack_require__.r(actions_namespaceObject); __webpack_require__.d(actions_namespaceObject, "setIsMatching", function() { return actions_setIsMatching; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/viewport/build-module/store/selectors.js var selectors_namespaceObject = {}; __webpack_require__.r(selectors_namespaceObject); __webpack_require__.d(selectors_namespaceObject, "isViewportMatch", function() { return isViewportMatch; }); // EXTERNAL MODULE: external {"this":["wp","data"]} var external_this_wp_data_ = __webpack_require__("1ZqX"); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/store/reducer.js /** * Reducer returning the viewport state, as keys of breakpoint queries with * boolean value representing whether query is matched. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SET_IS_MATCHING': return action.values; } return state; } /* harmony default export */ var store_reducer = (reducer); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/store/actions.js /** * Returns an action object used in signalling that viewport queries have been * updated. Values are specified as an object of breakpoint query keys where * value represents whether query matches. * * @param {Object} values Breakpoint query matches. * * @return {Object} Action object. */ function actions_setIsMatching(values) { return { type: 'SET_IS_MATCHING', values: values }; } // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/store/selectors.js /** * Returns true if the viewport matches the given query, or false otherwise. * * @param {Object} state Viewport state object. * @param {string} query Query string. Includes operator and breakpoint name, * space separated. Operator defaults to >=. * * @example * * ```js * isViewportMatch( state, '< huge' ); * isViewPortMatch( state, 'medium' ); * ``` * * @return {boolean} Whether viewport matches query. */ function isViewportMatch(state, query) { // Default to `>=` if no operator is present. if (query.indexOf(' ') === -1) { query = '>= ' + query; } return !!state[query]; } // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/store/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /* harmony default export */ var store = (Object(external_this_wp_data_["registerStore"])('core/viewport', { reducer: store_reducer, actions: actions_namespaceObject, selectors: selectors_namespaceObject })); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/listener.js /** * External dependencies */ /** * WordPress dependencies */ var listener_addDimensionsEventListener = function addDimensionsEventListener(breakpoints, operators) { /** * Callback invoked when media query state should be updated. Is invoked a * maximum of one time per call stack. */ var setIsMatching = Object(external_this_lodash_["debounce"])(function () { var values = Object(external_this_lodash_["mapValues"])(queries, function (query) { return query.matches; }); Object(external_this_wp_data_["dispatch"])('core/viewport').setIsMatching(values); }, { leading: true }); /** * Hash of breakpoint names with generated MediaQueryList for corresponding * media query. * * @see https://developer.mozilla.org/en-US/docs/Web/API/Window/matchMedia * @see https://developer.mozilla.org/en-US/docs/Web/API/MediaQueryList * * @type {Object} */ var queries = Object(external_this_lodash_["reduce"])(breakpoints, function (result, width, name) { Object(external_this_lodash_["forEach"])(operators, function (condition, operator) { var list = window.matchMedia("(".concat(condition, ": ").concat(width, "px)")); list.addListener(setIsMatching); var key = [operator, name].join(' '); result[key] = list; }); return result; }, {}); window.addEventListener('orientationchange', setIsMatching); // Set initial values setIsMatching(); setIsMatching.flush(); }; /* harmony default export */ var listener = (listener_addDimensionsEventListener); // EXTERNAL MODULE: external {"this":["wp","compose"]} var external_this_wp_compose_ = __webpack_require__("K9lf"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__("wx14"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__("ODXe"); // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/with-viewport-match.js /** * External dependencies */ /** * WordPress dependencies */ /** * Higher-order component creator, creating a new component which renders with * the given prop names, where the value passed to the underlying component is * the result of the query assigned as the object's value. * * @see isViewportMatch * * @param {Object} queries Object of prop name to viewport query. * * @example * * ```jsx * function MyComponent( { isMobile } ) { * return ( *
    Currently: { isMobile ? 'Mobile' : 'Not Mobile' }
    * ); * } * * MyComponent = withViewportMatch( { isMobile: '< small' } )( MyComponent ); * ``` * * @return {Function} Higher-order component. */ var with_viewport_match_withViewportMatch = function withViewportMatch(queries) { var useViewPortQueriesResult = function useViewPortQueriesResult() { return Object(external_this_lodash_["mapValues"])(queries, function (query) { var _query$split = query.split(' '), _query$split2 = Object(slicedToArray["a" /* default */])(_query$split, 2), operator = _query$split2[0], breakpointName = _query$split2[1]; if (breakpointName === undefined) { breakpointName = operator; operator = '>='; } // Hooks should unconditionally execute in the same order, // we are respecting that as from the static query of the HOC we generate // a hook that calls other hooks always in the same order (because the query never changes). // eslint-disable-next-line react-hooks/rules-of-hooks return Object(external_this_wp_compose_["useViewportMatch"])(breakpointName, operator); }); }; return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) { return Object(external_this_wp_compose_["pure"])(function (props) { var queriesResult = useViewPortQueriesResult(); return Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, props, queriesResult)); }); }, 'withViewportMatch'); }; /* harmony default export */ var with_viewport_match = (with_viewport_match_withViewportMatch); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/if-viewport-matches.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Higher-order component creator, creating a new component which renders if * the viewport query is satisfied. * * @see withViewportMatches * * @param {string} query Viewport query. * * @example * * ```jsx * function MyMobileComponent() { * return
    I'm only rendered on mobile viewports!
    ; * } * * MyMobileComponent = ifViewportMatches( '< small' )( MyMobileComponent ); * ``` * * @return {Function} Higher-order component. */ var if_viewport_matches_ifViewportMatches = function ifViewportMatches(query) { return Object(external_this_wp_compose_["createHigherOrderComponent"])(Object(external_this_wp_compose_["compose"])([with_viewport_match({ isViewportMatch: query }), Object(external_this_wp_compose_["ifCondition"])(function (props) { return props.isViewportMatch; })]), 'ifViewportMatches'); }; /* harmony default export */ var if_viewport_matches = (if_viewport_matches_ifViewportMatches); // CONCATENATED MODULE: ./node_modules/@wordpress/viewport/build-module/index.js /** * Internal dependencies */ /** * Hash of breakpoint names with pixel width at which it becomes effective. * * @see _breakpoints.scss * * @type {Object} */ var BREAKPOINTS = { huge: 1440, wide: 1280, large: 960, medium: 782, small: 600, mobile: 480 }; /** * Hash of query operators with corresponding condition for media query. * * @type {Object} */ var OPERATORS = { '<': 'max-width', '>=': 'min-width' }; listener(BREAKPOINTS, OPERATORS); /***/ }), /***/ "PYwp": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; }); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "a3WO": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; }); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "wx14": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; }); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /***/ }) /******/ });PKv\_xdist/block-editor.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.blockEditor=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="tr0p")}({"16Al":function(e,t,n){"use strict";var r=n("WbBG");function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,c){if(c!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},"17x9":function(e,t,n){e.exports=n("16Al")()},"1CF3":function(e,t){!function(){e.exports=this.wp.dom}()},"1OyB":function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.d(t,"a",(function(){return r}))},"1ZqX":function(e,t){!function(){e.exports=this.wp.data}()},"25BE":function(e,t,n){"use strict";function r(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}n.d(t,"a",(function(){return r}))},"4JlD":function(e,t,n){"use strict";var r=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,t,n,a){return t=t||"&",n=n||"=",null===e&&(e=void 0),"object"==typeof e?i(c(e),(function(c){var a=encodeURIComponent(r(c))+n;return o(e[c])?i(e[c],(function(e){return a+encodeURIComponent(r(e))})).join(t):a+encodeURIComponent(r(e[c]))})).join(t):a?encodeURIComponent(r(a))+n+encodeURIComponent(r(e)):""};var o=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function i(e,t){if(e.map)return e.map(t);for(var n=[],r=0;r=0||(o[n]=e[n]);return o}},"9Do8":function(e,t,n){"use strict";e.exports=n("zt9T")},BLeD:function(e,t){!function(){e.exports=this.wp.tokenList}()},Bpkj:function(e,t,n){"use strict";var r=n("GRId"),o=n("Tqx9"),i=Object(r.createElement)(o.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"-2 -2 24 24"},Object(r.createElement)(o.Path,{d:"M17.74 2.76c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-1.12 1.12-2.7 1.47-4.14 1.09l2.62-2.61.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-3.38 3.38c-.37-1.44-.02-3.02 1.1-4.14l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM8.59 13.43l5.34-5.34c.42-.42.42-1.1 0-1.52-.44-.43-1.13-.39-1.53 0l-5.33 5.34c-.42.42-.42 1.1 0 1.52.44.43 1.13.39 1.52 0zm-.76 2.29l4.14-4.15c.38 1.44.03 3.02-1.09 4.14l-1.52 1.53c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.53-1.52c1.12-1.12 2.7-1.47 4.14-1.1l-4.14 4.15c-.85.84-.85 2.2 0 3.05.84.84 2.2.84 3.04 0z"}));t.a=i},BsWD:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("a3WO");function o(e,t){if(e){if("string"==typeof e)return Object(r.a)(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(n):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Object(r.a)(e,t):void 0}}},CNgt:function(e,t,n){"use strict";var r,o=this&&this.__extends||(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),i=this&&this.__assign||Object.assign||function(e){for(var t,n=1,r=arguments.length;n",'"',"`"," ","\r","\n","\t"]),u=["'"].concat(s),d=["%","/","?",";","#"].concat(u),f=["/","?","#"],b=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,h={javascript:!0,"javascript:":!0},m={javascript:!0,"javascript:":!0},g={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},v=n("s4NR");function O(e,t,n){if(e&&o.isObject(e)&&e instanceof i)return e;var r=new i;return r.parse(e,t,n),r}i.prototype.parse=function(e,t,n){if(!o.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var i=e.indexOf("?"),a=-1!==i&&i127?N+="x":N+=P[L];if(!N.match(b)){var A=B.slice(0,C),D=B.slice(C+1),M=P.match(p);M&&(A.push(M[1]),D.unshift(M[2])),D.length&&(O="/"+D.join(".")+O),this.hostname=A.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),x||(this.hostname=r.toASCII(this.hostname));var F=this.port?":"+this.port:"",H=this.hostname||"";this.host=H+F,this.href+=this.host,x&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==O[0]&&(O="/"+O))}if(!h[y])for(C=0,T=u.length;C0)&&n.host.split("@"))&&(n.auth=x.shift(),n.host=n.hostname=x.shift());return n.search=e.search,n.query=e.query,o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!_.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var S=_.slice(-1)[0],w=(n.host||e.host||_.length>1)&&("."===S||".."===S)||""===S,C=0,I=_.length;I>=0;I--)"."===(S=_[I])?_.splice(I,1):".."===S?(_.splice(I,1),C++):C&&(_.splice(I,1),C--);if(!k&&!y)for(;C--;C)_.unshift("..");!k||""===_[0]||_[0]&&"/"===_[0].charAt(0)||_.unshift(""),w&&"/"!==_.join("/").substr(-1)&&_.push("");var x,B=""===_[0]||_[0]&&"/"===_[0].charAt(0);E&&(n.hostname=n.host=B?"":_.length?_.shift():"",(x=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=x.shift(),n.host=n.hostname=x.shift()));return(k=k||n.host&&_.length)&&!B&&_.unshift(""),_.length?n.pathname=_.join("/"):(n.pathname=null,n.path=null),o.isNull(n.pathname)&&o.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},i.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},DSFK:function(e,t,n){"use strict";function r(e){if(Array.isArray(e))return e}n.d(t,"a",(function(){return r}))},Ff2n:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n("zLVn");function o(e,t){if(null==e)return{};var n,o,i=Object(r.a)(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}},GRId:function(e,t){!function(){e.exports=this.wp.element}()},GemG:function(e,t,n){var r,o,i; /*! autosize 4.0.4 license: MIT http://www.jacklmoore.com/autosize */o=[e,t],void 0===(i="function"==typeof(r=function(e,t){"use strict";var n,r,o="function"==typeof Map?new Map:(n=[],r=[],{has:function(e){return n.indexOf(e)>-1},get:function(e){return r[n.indexOf(e)]},set:function(e,t){-1===n.indexOf(e)&&(n.push(e),r.push(t))},delete:function(e){var t=n.indexOf(e);t>-1&&(n.splice(t,1),r.splice(t,1))}}),i=function(e){return new Event(e,{bubbles:!0})};try{new Event("test")}catch(e){i=function(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!1),t}}function c(e){if(e&&e.nodeName&&"TEXTAREA"===e.nodeName&&!o.has(e)){var t,n=null,r=null,c=null,a=function(){e.clientWidth!==r&&d()},l=function(t){window.removeEventListener("resize",a,!1),e.removeEventListener("input",d,!1),e.removeEventListener("keyup",d,!1),e.removeEventListener("autosize:destroy",l,!1),e.removeEventListener("autosize:update",d,!1),Object.keys(t).forEach((function(n){e.style[n]=t[n]})),o.delete(e)}.bind(e,{height:e.style.height,resize:e.style.resize,overflowY:e.style.overflowY,overflowX:e.style.overflowX,wordWrap:e.style.wordWrap});e.addEventListener("autosize:destroy",l,!1),"onpropertychange"in e&&"oninput"in e&&e.addEventListener("keyup",d,!1),window.addEventListener("resize",a,!1),e.addEventListener("input",d,!1),e.addEventListener("autosize:update",d,!1),e.style.overflowX="hidden",e.style.wordWrap="break-word",o.set(e,{destroy:l,update:d}),"vertical"===(t=window.getComputedStyle(e,null)).resize?e.style.resize="none":"both"===t.resize&&(e.style.resize="horizontal"),n="content-box"===t.boxSizing?-(parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)):parseFloat(t.borderTopWidth)+parseFloat(t.borderBottomWidth),isNaN(n)&&(n=0),d()}function s(t){var n=e.style.width;e.style.width="0px",e.offsetWidth,e.style.width=n,e.style.overflowY=t}function u(){if(0!==e.scrollHeight){var t=function(e){for(var t=[];e&&e.parentNode&&e.parentNode instanceof Element;)e.parentNode.scrollTop&&t.push({node:e.parentNode,scrollTop:e.parentNode.scrollTop}),e=e.parentNode;return t}(e),o=document.documentElement&&document.documentElement.scrollTop;e.style.height="",e.style.height=e.scrollHeight+n+"px",r=e.clientWidth,t.forEach((function(e){e.node.scrollTop=e.scrollTop})),o&&(document.documentElement.scrollTop=o)}}function d(){u();var t=Math.round(parseFloat(e.style.height)),n=window.getComputedStyle(e,null),r="content-box"===n.boxSizing?Math.round(parseFloat(n.height)):e.offsetHeight;if(r1?t-1:0),r=1;r=n.length)break;i=n[o++]}else{if((o=n.next()).done)break;i=o.value}for(var c=i,a=!1,l=0;l=b.startTime+s.duration;else if(s.decay)m=p+O/(1-.998)*(1-Math.exp(-(1-.998)*(t-b.startTime))),(u=Math.abs(b.lastPosition-m)<.1)&&(h=m);else{d=void 0!==b.lastTime?b.lastTime:t,O=void 0!==b.lastVelocity?b.lastVelocity:s.initialVelocity,t>d+64&&(d=t);for(var j=Math.floor(t-d),k=0;kh:m=e);++n);return n-1}(e,i);return function(e,t,n,r,o,i,c,a,l){var s=l?l(e):e;if(sn){if("identity"===a)return s;"clamp"===a&&(s=n)}if(r===o)return r;if(t===n)return e<=t?r:o;t===-1/0?s=-s:n===1/0?s-=t:s=(s-t)/(n-t);s=i(s),r===-1/0?s=-s:o===1/0?s+=r:s=s*(o-r)+r;return s}(e,i[t],i[t+1],o[t],o[t+1],l,c,a,r.map)}}var H=function(e){function t(n,r,o,i){var c;return(c=e.call(this)||this).calc=void 0,c.payload=n instanceof O&&!(n instanceof t)?n.getPayload():Array.isArray(n)?n:[n],c.calc=F(r,o,i),c}l(t,e);var n=t.prototype;return n.getValue=function(){return this.calc.apply(this,this.payload.map((function(e){return e.getValue()})))},n.updateConfig=function(e,t,n){this.calc=F(e,t,n)},n.interpolate=function(e,n,r){return new t(this,e,n,r)},t}(O);var V=function(e){function t(t){var n;return(n=e.call(this)||this).animatedStyles=new Set,n.value=void 0,n.startPosition=void 0,n.lastPosition=void 0,n.lastVelocity=void 0,n.startTime=void 0,n.lastTime=void 0,n.done=!1,n.setValue=function(e,t){void 0===t&&(t=!0),n.value=e,t&&n.flush()},n.value=t,n.startPosition=t,n.lastPosition=t,n}l(t,e);var n=t.prototype;return n.flush=function(){0===this.animatedStyles.size&&function e(t,n){"update"in t?n.add(t):t.getChildren().forEach((function(t){return e(t,n)}))}(this,this.animatedStyles),this.animatedStyles.forEach((function(e){return e.update()}))},n.clearStyles=function(){this.animatedStyles.clear()},n.getValue=function(){return this.value},n.interpolate=function(e,t,n){return new H(this,e,t,n)},t}(v),U=function(e){function t(t){var n;return(n=e.call(this)||this).payload=t.map((function(e){return new V(e)})),n}l(t,e);var n=t.prototype;return n.setValue=function(e,t){var n=this;void 0===t&&(t=!0),Array.isArray(e)?e.length===this.payload.length&&e.forEach((function(e,r){return n.payload[r].setValue(e,t)})):this.payload.forEach((function(n){return n.setValue(e,t)}))},n.getValue=function(){return this.payload.map((function(e){return e.getValue()}))},n.interpolate=function(e,t){return new H(this,e,t)},t}(O),z=0,G=function(){function e(){var e=this;this.id=void 0,this.idle=!0,this.hasChanged=!1,this.guid=0,this.local=0,this.props={},this.merged={},this.animations={},this.interpolations={},this.values={},this.configs=[],this.listeners=[],this.queue=[],this.localQueue=void 0,this.getValues=function(){return e.interpolations},this.id=z++}var t=e.prototype;return t.update=function(e){if(!e)return this;var t=h(e),n=t.delay,r=void 0===n?0:n,c=t.to,a=i(t,["delay","to"]);if(u.arr(c)||u.fun(c))this.queue.push(o({},a,{delay:r,to:c}));else if(c){var l={};Object.entries(c).forEach((function(e){var t,n=e[0],i=e[1],c=o({to:(t={},t[n]=i,t),delay:p(r,n)},a),s=l[c.delay]&&l[c.delay].to;l[c.delay]=o({},l[c.delay],c,{to:o({},s,c.to)})})),this.queue=Object.values(l)}return this.queue=this.queue.sort((function(e,t){return e.delay-t.delay})),this.diff(a),this},t.start=function(e){var t,n=this;if(this.queue.length){this.idle=!1,this.localQueue&&this.localQueue.forEach((function(e){var t=e.from,r=void 0===t?{}:t,i=e.to,c=void 0===i?{}:i;u.obj(r)&&(n.merged=o({},r,n.merged)),u.obj(c)&&(n.merged=o({},n.merged,c))}));var r=this.local=++this.guid,c=this.localQueue=this.queue;this.queue=[],c.forEach((function(t,o){var a=t.delay,l=i(t,["delay"]),s=function(t){o===c.length-1&&r===n.guid&&t&&(n.idle=!0,n.props.onRest&&n.props.onRest(n.merged)),e&&e()},d=u.arr(l.to)||u.fun(l.to);a?setTimeout((function(){r===n.guid&&(d?n.runAsync(l,s):n.diff(l).start(s))}),a):d?n.runAsync(l,s):n.diff(l).start(s)}))}else u.fun(e)&&this.listeners.push(e),this.props.onStart&&this.props.onStart(),t=this,D.has(t)||D.add(t),A||(A=!0,E(T||M));return this},t.stop=function(e){return this.listeners.forEach((function(t){return t(e)})),this.listeners=[],this},t.pause=function(e){var t;return this.stop(!0),e&&(t=this,D.has(t)&&D.delete(t)),this},t.runAsync=function(e,t){var n=this,r=(e.delay,i(e,["delay"])),c=this.local,a=Promise.resolve(void 0);if(u.arr(r.to))for(var l=function(e){var t=e,i=o({},r,h(r.to[t]));u.arr(i.config)&&(i.config=i.config[t]),a=a.then((function(){if(c===n.guid)return new Promise((function(e){return n.diff(i).start(e)}))}))},s=0;s=r.length)return"break";c=r[i++]}else{if((i=r.next()).done)return"break";c=i.value}var n=c.key,a=function(e){return e.key!==n};(u.und(t)||t===n)&&(e.current.instances.delete(n),e.current.transitions=e.current.transitions.filter(a),e.current.deleted=e.current.deleted.filter(a))},r=e.current.deleted,o=Array.isArray(r),i=0;for(r=o?r:r[Symbol.iterator]();;){var c;if("break"===n())break}e.current.forceUpdate()}var X=function(e){function t(t){var n;return void 0===t&&(t={}),n=e.call(this)||this,!t.transform||t.transform instanceof v||(t=m.transform(t)),n.payload=t,n}return l(t,e),t}(j),Z={transparent:0,aliceblue:4042850303,antiquewhite:4209760255,aqua:16777215,aquamarine:2147472639,azure:4043309055,beige:4126530815,bisque:4293182719,black:255,blanchedalmond:4293643775,blue:65535,blueviolet:2318131967,brown:2771004159,burlywood:3736635391,burntsienna:3934150143,cadetblue:1604231423,chartreuse:2147418367,chocolate:3530104575,coral:4286533887,cornflowerblue:1687547391,cornsilk:4294499583,crimson:3692313855,cyan:16777215,darkblue:35839,darkcyan:9145343,darkgoldenrod:3095792639,darkgray:2846468607,darkgreen:6553855,darkgrey:2846468607,darkkhaki:3182914559,darkmagenta:2332068863,darkolivegreen:1433087999,darkorange:4287365375,darkorchid:2570243327,darkred:2332033279,darksalmon:3918953215,darkseagreen:2411499519,darkslateblue:1211993087,darkslategray:793726975,darkslategrey:793726975,darkturquoise:13554175,darkviolet:2483082239,deeppink:4279538687,deepskyblue:12582911,dimgray:1768516095,dimgrey:1768516095,dodgerblue:512819199,firebrick:2988581631,floralwhite:4294635775,forestgreen:579543807,fuchsia:4278255615,gainsboro:3705462015,ghostwhite:4177068031,gold:4292280575,goldenrod:3668254975,gray:2155905279,green:8388863,greenyellow:2919182335,grey:2155905279,honeydew:4043305215,hotpink:4285117695,indianred:3445382399,indigo:1258324735,ivory:4294963455,khaki:4041641215,lavender:3873897215,lavenderblush:4293981695,lawngreen:2096890111,lemonchiffon:4294626815,lightblue:2916673279,lightcoral:4034953471,lightcyan:3774873599,lightgoldenrodyellow:4210742015,lightgray:3553874943,lightgreen:2431553791,lightgrey:3553874943,lightpink:4290167295,lightsalmon:4288707327,lightseagreen:548580095,lightskyblue:2278488831,lightslategray:2005441023,lightslategrey:2005441023,lightsteelblue:2965692159,lightyellow:4294959359,lime:16711935,limegreen:852308735,linen:4210091775,magenta:4278255615,maroon:2147483903,mediumaquamarine:1724754687,mediumblue:52735,mediumorchid:3126187007,mediumpurple:2473647103,mediumseagreen:1018393087,mediumslateblue:2070474495,mediumspringgreen:16423679,mediumturquoise:1221709055,mediumvioletred:3340076543,midnightblue:421097727,mintcream:4127193855,mistyrose:4293190143,moccasin:4293178879,navajowhite:4292783615,navy:33023,oldlace:4260751103,olive:2155872511,olivedrab:1804477439,orange:4289003775,orangered:4282712319,orchid:3664828159,palegoldenrod:4008225535,palegreen:2566625535,paleturquoise:2951671551,palevioletred:3681588223,papayawhip:4293907967,peachpuff:4292524543,peru:3448061951,pink:4290825215,plum:3718307327,powderblue:2967529215,purple:2147516671,rebeccapurple:1714657791,red:4278190335,rosybrown:3163525119,royalblue:1097458175,saddlebrown:2336560127,salmon:4202722047,sandybrown:4104413439,seagreen:780883967,seashell:4294307583,sienna:2689740287,silver:3233857791,skyblue:2278484991,slateblue:1784335871,slategray:1887473919,slategrey:1887473919,snow:4294638335,springgreen:16744447,steelblue:1182971135,tan:3535047935,teal:8421631,thistle:3636451583,tomato:4284696575,turquoise:1088475391,violet:4001558271,wheat:4125012991,white:4294967295,whitesmoke:4126537215,yellow:4294902015,yellowgreen:2597139199},J="[-+]?\\d*\\.?\\d+";function Q(){for(var e=arguments.length,t=new Array(e),n=0;n1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function se(e,t,n){var r=n<.5?n*(1+t):n+t-n*t,o=2*n-r,i=le(o,r,e+1/3),c=le(o,r,e),a=le(o,r,e-1/3);return Math.round(255*i)<<24|Math.round(255*c)<<16|Math.round(255*a)<<8}function ue(e){var t=parseInt(e,10);return t<0?0:t>255?255:t}function de(e){return(parseFloat(e)%360+360)%360/360}function fe(e){var t=parseFloat(e);return t<0?0:t>1?255:Math.round(255*t)}function be(e){var t=parseFloat(e);return t<0?0:t>100?1:t/100}function pe(e){var t,n,r="number"==typeof(t=e)?t>>>0===t&&t>=0&&t<=4294967295?t:null:(n=ce.exec(t))?parseInt(n[1]+"ff",16)>>>0:Z.hasOwnProperty(t)?Z[t]:(n=ee.exec(t))?(ue(n[1])<<24|ue(n[2])<<16|ue(n[3])<<8|255)>>>0:(n=te.exec(t))?(ue(n[1])<<24|ue(n[2])<<16|ue(n[3])<<8|fe(n[4]))>>>0:(n=oe.exec(t))?parseInt(n[1]+n[1]+n[2]+n[2]+n[3]+n[3]+"ff",16)>>>0:(n=ae.exec(t))?parseInt(n[1],16)>>>0:(n=ie.exec(t))?parseInt(n[1]+n[1]+n[2]+n[2]+n[3]+n[3]+n[4]+n[4],16)>>>0:(n=ne.exec(t))?(255|se(de(n[1]),be(n[2]),be(n[3])))>>>0:(n=re.exec(t))?(se(de(n[1]),be(n[2]),be(n[3]))|fe(n[4]))>>>0:null;return null===r?e:"rgba("+((4278190080&(r=r||0))>>>24)+", "+((16711680&r)>>>16)+", "+((65280&r)>>>8)+", "+(255&r)/255+")"}var he=/[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,me=/(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi,ge=new RegExp("("+Object.keys(Z).join("|")+")","g"),ve={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Oe=["Webkit","Ms","Moz","O"];function je(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ve.hasOwnProperty(e)&&ve[e]?(""+t).trim():t+"px"}ve=Object.keys(ve).reduce((function(e,t){return Oe.forEach((function(n){return e[function(e,t){return e+t.charAt(0).toUpperCase()+t.substring(1)}(n,t)]=e[t]})),e}),ve);var ke={};N((function(e){return new X(e)})),x("div"),w((function(e){var t=e.output.map((function(e){return e.replace(me,pe)})).map((function(e){return e.replace(ge,pe)})),n=t[0].match(he).map((function(){return[]}));t.forEach((function(e){e.match(he).forEach((function(e,t){return n[t].push(+e)}))}));var r=t[0].match(he).map((function(t,r){return F(o({},e,{output:n[r]}))}));return function(e){var n=0;return t[0].replace(he,(function(){return r[n++](e)})).replace(/rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi,(function(e,t,n,r,o){return"rgba("+Math.round(t)+", "+Math.round(n)+", "+Math.round(r)+", "+o+")"}))}})),y(Z),k((function(e,t){if(!e.nodeType||void 0===e.setAttribute)return!1;var n=t.style,r=t.children,o=t.scrollTop,c=t.scrollLeft,a=i(t,["style","children","scrollTop","scrollLeft"]),l="filter"===e.nodeName||e.parentNode&&"filter"===e.parentNode.nodeName;for(var s in void 0!==o&&(e.scrollTop=o),void 0!==c&&(e.scrollLeft=c),void 0!==r&&(e.textContent=r),n)if(n.hasOwnProperty(s)){var u=0===s.indexOf("--"),d=je(s,n[s],u);"float"===s&&(s="cssFloat"),u?e.style.setProperty(s,d):e.style[s]=d}for(var f in a){var b=l?f:ke[f]||(ke[f]=f.replace(/([A-Z])/g,(function(e){return"-"+e.toLowerCase()})));void 0!==e.getAttribute(b)&&e.setAttribute(b,a[f])}}),(function(e){return e}));var ye,_e,Ee=(ye=function(e){return c.forwardRef((function(t,n){var r=d(),l=c.useRef(!0),s=c.useRef(null),f=c.useRef(null),b=c.useCallback((function(e){var t=s.current;s.current=new R(e,(function(){var e=!1;f.current&&(e=m.fn(f.current,s.current.getAnimatedValue())),f.current&&!1!==e||r()})),t&&t.detach()}),[]);c.useEffect((function(){return function(){l.current=!1,s.current&&s.current.detach()}}),[]),c.useImperativeHandle(n,(function(){return P(f,l,r)})),b(t);var p,h=s.current.getValue(),g=(h.scrollTop,h.scrollLeft,i(h,["scrollTop","scrollLeft"])),v=(p=e,!u.fun(p)||p.prototype instanceof a.Component?function(e){return f.current=function(e,t){return t&&(u.fun(t)?t(e):u.obj(t)&&(t.current=e)),e}(e,n)}:void 0);return a.createElement(e,o({},g,{ref:v}))}))},void 0===(_e=!1)&&(_e=!0),function(e){return(u.arr(e)?e:Object.keys(e)).reduce((function(e,t){var n=_e?t[0].toLowerCase()+t.substring(1):t;return e[n]=ye(n),e}),ye)}),Se=Ee(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]);t.apply=Ee,t.config={default:{tension:170,friction:26},gentle:{tension:120,friction:14},wobbly:{tension:180,friction:12},stiff:{tension:210,friction:20},slow:{tension:280,friction:60},molasses:{tension:280,friction:120}},t.update=M,t.animated=Se,t.a=Se,t.interpolate=function(e,t,n){return e&&new H(e,t,n)},t.Globals=L,t.useSpring=function(e){var t=u.fun(e),n=K(1,t?e:[e]),r=n[0],o=n[1],i=n[2];return t?[r[0],o,i]:r},t.useTrail=function(e,t){var n=c.useRef(!1),r=u.fun(t),i=p(t),a=c.useRef(),l=K(e,(function(e,t){return 0===e&&(a.current=[]),a.current.push(t),o({},i,{config:p(i.config,e),attach:e>0&&function(){return a.current[e-1]}})})),s=l[0],d=l[1],f=l[2],b=c.useMemo((function(){return function(e){return d((function(t,n){e.reverse;var r=e.reverse?t+1:t-1,c=a.current[r];return o({},e,{config:p(e.config||i.config,t),attach:c&&function(){return c}})}))}}),[e,i.reverse]);return c.useEffect((function(){n.current&&!r&&b(t)})),c.useEffect((function(){n.current=!0}),[]),r?[s,b,f]:s},t.useTransition=function(e,t,n){var r=o({items:e,keys:t||function(e){return e}},n),a=$(r),l=a.lazy,s=void 0!==l&&l,u=(a.unique,a.reset),f=void 0!==u&&u,b=(a.enter,a.leave,a.update,a.onDestroyed),h=(a.keys,a.items,a.onFrame),m=a.onRest,g=a.onStart,v=a.ref,O=i(a,["lazy","unique","reset","enter","leave","update","onDestroyed","keys","items","onFrame","onRest","onStart","ref"]),j=d(),k=c.useRef(!1),y=c.useRef({mounted:!1,first:!0,deleted:[],current:{},transitions:[],prevProps:{},paused:!!r.ref,instances:!k.current&&new Map,forceUpdate:j});return c.useImperativeHandle(r.ref,(function(){return{start:function(){return Promise.all(Array.from(y.current.instances).map((function(e){var t=e[1];return new Promise((function(e){return t.start(e)}))})))},stop:function(e){return Array.from(y.current.instances).forEach((function(t){return t[1].stop(e)}))},get controllers(){return Array.from(y.current.instances).map((function(e){return e[1]}))}}})),y.current=function(e,t){var n=e.first,r=e.prevProps,c=i(e,["first","prevProps"]),a=$(t),l=a.items,s=a.keys,u=a.initial,d=a.from,f=a.enter,b=a.leave,h=a.update,m=a.trail,g=void 0===m?0:m,v=a.unique,O=a.config,j=a.order,k=void 0===j?["enter","leave","update"]:j,y=$(r),_=y.keys,E=y.items,S=o({},c.current),w=[].concat(c.deleted),C=Object.keys(S),I=new Set(C),x=new Set(s),B=s.filter((function(e){return!I.has(e)})),T=c.transitions.filter((function(e){return!e.destroyed&&!x.has(e.originalKey)})).map((function(e){return e.originalKey})),P=s.filter((function(e){return I.has(e)})),N=-g;for(;k.length;){switch(k.shift()){case"enter":B.forEach((function(e,t){v&&w.find((function(t){return t.originalKey===e}))&&(w=w.filter((function(t){return t.originalKey!==e})));var r=s.indexOf(e),o=l[r],i=n&&void 0!==u?"initial":"enter";S[e]={slot:i,originalKey:e,key:v?String(e):W++,item:o,trail:N+=g,config:p(O,o,i),from:p(n&&void 0!==u?u||{}:d,o),to:p(f,o)}}));break;case"leave":T.forEach((function(e){var t=_.indexOf(e),n=E[t];w.unshift(o({},S[e],{slot:"leave",destroyed:!0,left:_[Math.max(0,t-1)],right:_[Math.min(_.length,t+1)],trail:N+=g,config:p(O,n,"leave"),to:p(b,n)})),delete S[e]}));break;case"update":P.forEach((function(e){var t=s.indexOf(e),n=l[t];S[e]=o({},S[e],{item:n,slot:"update",trail:N+=g,config:p(O,n,"update"),to:p(h,n)})}))}}var L=s.map((function(e){return S[e]}));return w.forEach((function(e){var t,n=e.left,r=(e.right,i(e,["left","right"]));-1!==(t=L.findIndex((function(e){return e.originalKey===n})))&&(t+=1),t=Math.max(0,t),L=[].concat(L.slice(0,t),[r],L.slice(t))})),o({},c,{changed:B.length||T.length||P.length,first:n&&0===B.length,transitions:L,current:S,deleted:w,prevProps:t})}(y.current,r),y.current.changed&&y.current.transitions.forEach((function(e){var t=e.slot,n=e.from,r=e.to,i=e.config,c=e.trail,a=e.key,l=e.item;y.current.instances.has(a)||y.current.instances.set(a,new G);var u=y.current.instances.get(a),d=o({},O,{to:r,from:n,config:i,ref:v,onRest:function(n){y.current.mounted&&(e.destroyed&&(v||s||Y(y,a),b&&b(l)),!Array.from(y.current.instances).some((function(e){return!e[1].idle}))&&(v||s)&&y.current.deleted.length>0&&Y(y),m&&m(l,t,n))},onStart:g&&function(){return g(l,t)},onFrame:h&&function(e){return h(l,t,e)},delay:c,reset:f&&"enter"===t});u.update(d),y.current.paused||u.start()})),c.useEffect((function(){return y.current.mounted=k.current=!0,function(){y.current.mounted=k.current=!1,Array.from(y.current.instances).map((function(e){return e[1].destroy()})),y.current.instances.clear()}}),[]),y.current.transitions.map((function(e){var t=e.item,n=e.slot,r=e.key;return{item:t,key:r,state:n,props:y.current.instances.get(r).getValues()}}))},t.useChain=function(e,t,n){void 0===n&&(n=1e3);var r=c.useRef();c.useEffect((function(){u.equ(e,r.current)?e.forEach((function(e){var t=e.current;return t&&t.start()})):t?e.forEach((function(e,r){var i=e.current;if(i){var c=i.controllers;if(c.length){var a=n*t[r];c.forEach((function(e){e.queue=e.queue.map((function(e){return o({},e,{delay:e.delay+a})})),e.start()}))}}})):e.reduce((function(e,t,n){var r=t.current;return e.then((function(){return r.start()}))}),Promise.resolve()),r.current=e}))},t.useSprings=K},Zss7:function(e,t,n){var r;!function(o){var i=/^\s+/,c=/\s+$/,a=0,l=o.round,s=o.min,u=o.max,d=o.random;function f(e,t){if(t=t||{},(e=e||"")instanceof f)return e;if(!(this instanceof f))return new f(e,t);var n=function(e){var t={r:0,g:0,b:0},n=1,r=null,a=null,l=null,d=!1,f=!1;"string"==typeof e&&(e=function(e){e=e.replace(i,"").replace(c,"").toLowerCase();var t,n=!1;if(B[e])e=B[e],n=!0;else if("transparent"==e)return{r:0,g:0,b:0,a:0,format:"name"};if(t=z.rgb.exec(e))return{r:t[1],g:t[2],b:t[3]};if(t=z.rgba.exec(e))return{r:t[1],g:t[2],b:t[3],a:t[4]};if(t=z.hsl.exec(e))return{h:t[1],s:t[2],l:t[3]};if(t=z.hsla.exec(e))return{h:t[1],s:t[2],l:t[3],a:t[4]};if(t=z.hsv.exec(e))return{h:t[1],s:t[2],v:t[3]};if(t=z.hsva.exec(e))return{h:t[1],s:t[2],v:t[3],a:t[4]};if(t=z.hex8.exec(e))return{r:R(t[1]),g:R(t[2]),b:R(t[3]),a:F(t[4]),format:n?"name":"hex8"};if(t=z.hex6.exec(e))return{r:R(t[1]),g:R(t[2]),b:R(t[3]),format:n?"name":"hex"};if(t=z.hex4.exec(e))return{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),a:F(t[4]+""+t[4]),format:n?"name":"hex8"};if(t=z.hex3.exec(e))return{r:R(t[1]+""+t[1]),g:R(t[2]+""+t[2]),b:R(t[3]+""+t[3]),format:n?"name":"hex"};return!1}(e));"object"==typeof e&&(G(e.r)&&G(e.g)&&G(e.b)?(b=e.r,p=e.g,h=e.b,t={r:255*N(b,255),g:255*N(p,255),b:255*N(h,255)},d=!0,f="%"===String(e.r).substr(-1)?"prgb":"rgb"):G(e.h)&&G(e.s)&&G(e.v)?(r=D(e.s),a=D(e.v),t=function(e,t,n){e=6*N(e,360),t=N(t,100),n=N(n,100);var r=o.floor(e),i=e-r,c=n*(1-t),a=n*(1-i*t),l=n*(1-(1-i)*t),s=r%6;return{r:255*[n,a,c,c,l,n][s],g:255*[l,n,n,a,c,c][s],b:255*[c,c,l,n,n,a][s]}}(e.h,r,a),d=!0,f="hsv"):G(e.h)&&G(e.s)&&G(e.l)&&(r=D(e.s),l=D(e.l),t=function(e,t,n){var r,o,i;function c(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(e=N(e,360),t=N(t,100),n=N(n,100),0===t)r=o=i=n;else{var a=n<.5?n*(1+t):n+t-n*t,l=2*n-a;r=c(l,a,e+1/3),o=c(l,a,e),i=c(l,a,e-1/3)}return{r:255*r,g:255*o,b:255*i}}(e.h,r,l),d=!0,f="hsl"),e.hasOwnProperty("a")&&(n=e.a));var b,p,h;return n=P(n),{ok:d,format:e.format||f,r:s(255,u(t.r,0)),g:s(255,u(t.g,0)),b:s(255,u(t.b,0)),a:n}}(e);this._originalInput=e,this._r=n.r,this._g=n.g,this._b=n.b,this._a=n.a,this._roundA=l(100*this._a)/100,this._format=t.format||n.format,this._gradientType=t.gradientType,this._r<1&&(this._r=l(this._r)),this._g<1&&(this._g=l(this._g)),this._b<1&&(this._b=l(this._b)),this._ok=n.ok,this._tc_id=a++}function b(e,t,n){e=N(e,255),t=N(t,255),n=N(n,255);var r,o,i=u(e,t,n),c=s(e,t,n),a=(i+c)/2;if(i==c)r=o=0;else{var l=i-c;switch(o=a>.5?l/(2-i-c):l/(i+c),i){case e:r=(t-n)/l+(t>1)+720)%360;--t;)r.h=(r.h+o)%360,i.push(f(r));return i}function x(e,t){t=t||6;for(var n=f(e).toHsv(),r=n.h,o=n.s,i=n.v,c=[],a=1/t;t--;)c.push(f({h:r,s:o,v:i})),i=(i+a)%1;return c}f.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,n,r=this.toRgb();return e=r.r/255,t=r.g/255,n=r.b/255,.2126*(e<=.03928?e/12.92:o.pow((e+.055)/1.055,2.4))+.7152*(t<=.03928?t/12.92:o.pow((t+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:o.pow((n+.055)/1.055,2.4))},setAlpha:function(e){return this._a=P(e),this._roundA=l(100*this._a)/100,this},toHsv:function(){var e=p(this._r,this._g,this._b);return{h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=p(this._r,this._g,this._b),t=l(360*e.h),n=l(100*e.s),r=l(100*e.v);return 1==this._a?"hsv("+t+", "+n+"%, "+r+"%)":"hsva("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var e=b(this._r,this._g,this._b);return{h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=b(this._r,this._g,this._b),t=l(360*e.h),n=l(100*e.s),r=l(100*e.l);return 1==this._a?"hsl("+t+", "+n+"%, "+r+"%)":"hsla("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(e){return h(this._r,this._g,this._b,e)},toHexString:function(e){return"#"+this.toHex(e)},toHex8:function(e){return function(e,t,n,r,o){var i=[A(l(e).toString(16)),A(l(t).toString(16)),A(l(n).toString(16)),A(M(r))];if(o&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1))return i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0);return i.join("")}(this._r,this._g,this._b,this._a,e)},toHex8String:function(e){return"#"+this.toHex8(e)},toRgb:function(){return{r:l(this._r),g:l(this._g),b:l(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+l(this._r)+", "+l(this._g)+", "+l(this._b)+")":"rgba("+l(this._r)+", "+l(this._g)+", "+l(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:l(100*N(this._r,255))+"%",g:l(100*N(this._g,255))+"%",b:l(100*N(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+l(100*N(this._r,255))+"%, "+l(100*N(this._g,255))+"%, "+l(100*N(this._b,255))+"%)":"rgba("+l(100*N(this._r,255))+"%, "+l(100*N(this._g,255))+"%, "+l(100*N(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(T[h(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+m(this._r,this._g,this._b,this._a),n=t,r=this._gradientType?"GradientType = 1, ":"";if(e){var o=f(e);n="#"+m(o._r,o._g,o._b,o._a)}return"progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+t+",endColorstr="+n+")"},toString:function(e){var t=!!e;e=e||this._format;var n=!1,r=this._a<1&&this._a>=0;return t||!r||"hex"!==e&&"hex6"!==e&&"hex3"!==e&&"hex4"!==e&&"hex8"!==e&&"name"!==e?("rgb"===e&&(n=this.toRgbString()),"prgb"===e&&(n=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(n=this.toHexString()),"hex3"===e&&(n=this.toHexString(!0)),"hex4"===e&&(n=this.toHex8String(!0)),"hex8"===e&&(n=this.toHex8String()),"name"===e&&(n=this.toName()),"hsl"===e&&(n=this.toHslString()),"hsv"===e&&(n=this.toHsvString()),n||this.toHexString()):"name"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return f(this.toString())},_applyModification:function(e,t){var n=e.apply(null,[this].concat([].slice.call(t)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(j,arguments)},brighten:function(){return this._applyModification(k,arguments)},darken:function(){return this._applyModification(y,arguments)},desaturate:function(){return this._applyModification(g,arguments)},saturate:function(){return this._applyModification(v,arguments)},greyscale:function(){return this._applyModification(O,arguments)},spin:function(){return this._applyModification(_,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(I,arguments)},complement:function(){return this._applyCombination(E,arguments)},monochromatic:function(){return this._applyCombination(x,arguments)},splitcomplement:function(){return this._applyCombination(C,arguments)},triad:function(){return this._applyCombination(S,arguments)},tetrad:function(){return this._applyCombination(w,arguments)}},f.fromRatio=function(e,t){if("object"==typeof e){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]="a"===r?e[r]:D(e[r]));e=n}return f(e,t)},f.equals=function(e,t){return!(!e||!t)&&f(e).toRgbString()==f(t).toRgbString()},f.random=function(){return f.fromRatio({r:d(),g:d(),b:d()})},f.mix=function(e,t,n){n=0===n?0:n||50;var r=f(e).toRgb(),o=f(t).toRgb(),i=n/100;return f({r:(o.r-r.r)*i+r.r,g:(o.g-r.g)*i+r.g,b:(o.b-r.b)*i+r.b,a:(o.a-r.a)*i+r.a})},f.readability=function(e,t){var n=f(e),r=f(t);return(o.max(n.getLuminance(),r.getLuminance())+.05)/(o.min(n.getLuminance(),r.getLuminance())+.05)},f.isReadable=function(e,t,n){var r,o,i=f.readability(e,t);switch(o=!1,(r=function(e){var t,n;t=((e=e||{level:"AA",size:"small"}).level||"AA").toUpperCase(),n=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA");"small"!==n&&"large"!==n&&(n="small");return{level:t,size:n}}(n)).level+r.size){case"AAsmall":case"AAAlarge":o=i>=4.5;break;case"AAlarge":o=i>=3;break;case"AAAsmall":o=i>=7}return o},f.mostReadable=function(e,t,n){var r,o,i,c,a=null,l=0;o=(n=n||{}).includeFallbackColors,i=n.level,c=n.size;for(var s=0;sl&&(l=r,a=f(t[s]));return f.isReadable(e,a,{level:i,size:c})||!o?a:(n.includeFallbackColors=!1,f.mostReadable(e,["#fff","#000"],n))};var B=f.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},T=f.hexNames=function(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t}(B);function P(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function N(e,t){(function(e){return"string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var n=function(e){return"string"==typeof e&&-1!=e.indexOf("%")}(e);return e=s(t,u(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),o.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function L(e){return s(1,u(0,e))}function R(e){return parseInt(e,16)}function A(e){return 1==e.length?"0"+e:""+e}function D(e){return e<=1&&(e=100*e+"%"),e}function M(e){return o.round(255*parseFloat(e)).toString(16)}function F(e){return R(e)/255}var H,V,U,z=(V="[\\s|\\(]+("+(H="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",U="[\\s|\\(]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")[,|\\s]+("+H+")\\s*\\)?",{CSS_UNIT:new RegExp(H),rgb:new RegExp("rgb"+V),rgba:new RegExp("rgba"+U),hsl:new RegExp("hsl"+V),hsla:new RegExp("hsla"+U),hsv:new RegExp("hsv"+V),hsva:new RegExp("hsva"+U),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function G(e){return!!z.CSS_UNIT.exec(e)}e.exports?e.exports=f:void 0===(r=function(){return f}.call(t,n,t,e))||(e.exports=r)}(Math)},a3WO:function(e,t,n){"use strict";function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&s>l&&(s=l);for(var u=0;u=0?(d=h.substr(0,m),f=h.substr(m+1)):(d=h,f=""),b=decodeURIComponent(d),p=decodeURIComponent(f),r(c,b)?o(c[b])?c[b].push(p):c[b]=[c[b],p]:c[b]=p}return c};var o=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},l3Sj:function(e,t){!function(){e.exports=this.wp.i18n}()},md7G:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n("U8pU"),o=n("JX7q");function i(e,t){return!t||"object"!==Object(r.a)(t)&&"function"!=typeof t?Object(o.a)(e):t}},nYho:function(e,t,n){(function(e,r){var o;/*! https://mths.be/punycode v1.3.2 by @mathias */!function(i){t&&t.nodeType,e&&e.nodeType;var c="object"==typeof r&&r;c.global!==c&&c.window!==c&&c.self;var a,l=2147483647,s=/^xn--/,u=/[^\x20-\x7E]/,d=/[\x2E\u3002\uFF0E\uFF61]/g,f={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},b=Math.floor,p=String.fromCharCode;function h(e){throw RangeError(f[e])}function m(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function g(e,t){var n=e.split("@"),r="";return n.length>1&&(r=n[0]+"@",e=n[1]),r+m((e=e.replace(d,".")).split("."),t).join(".")}function v(e){for(var t,n,r=[],o=0,i=e.length;o=55296&&t<=56319&&o65535&&(t+=p((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=p(e)})).join("")}function j(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function k(e,t,n){var r=0;for(e=n?b(e/700):e>>1,e+=b(e/t);e>455;r+=36)e=b(e/35);return b(r+36*e/(e+38))}function y(e){var t,n,r,o,i,c,a,s,u,d,f,p=[],m=e.length,g=0,v=128,j=72;for((n=e.lastIndexOf("-"))<0&&(n=0),r=0;r=128&&h("not-basic"),p.push(e.charCodeAt(r));for(o=n>0?n+1:0;o=m&&h("invalid-input"),((s=(f=e.charCodeAt(o++))-48<10?f-22:f-65<26?f-65:f-97<26?f-97:36)>=36||s>b((l-g)/c))&&h("overflow"),g+=s*c,!(s<(u=a<=j?1:a>=j+26?26:a-j));a+=36)c>b(l/(d=36-u))&&h("overflow"),c*=d;j=k(g-i,t=p.length+1,0==i),b(g/t)>l-v&&h("overflow"),v+=b(g/t),g%=t,p.splice(g++,0,v)}return O(p)}function _(e){var t,n,r,o,i,c,a,s,u,d,f,m,g,O,y,_=[];for(m=(e=v(e)).length,t=128,n=0,i=72,c=0;c=t&&fb((l-n)/(g=r+1))&&h("overflow"),n+=(a-t)*g,t=a,c=0;cl&&h("overflow"),f==t){for(s=n,u=36;!(s<(d=u<=i?1:u>=i+26?26:u-i));u+=36)y=s-d,O=36-d,_.push(p(j(d+y%O,0))),s=b(y/O);_.push(p(j(s,0))),i=k(n,g,r==o),n=0,++r}++n,++t}return _.join("")}a={version:"1.3.2",ucs2:{decode:v,encode:O},decode:y,encode:_,toASCII:function(e){return g(e,(function(e){return u.test(e)?"xn--"+_(e):e}))},toUnicode:function(e){return g(e,(function(e){return s.test(e)?y(e.slice(4).toLowerCase()):e}))}},void 0===(o=function(){return a}.call(t,n,t,e))||(e.exports=o)}()}).call(this,n("YuTi")(e),n("yLpj"))},pPDe:function(e,t,n){"use strict";var r,o;function i(e){return[e]}function c(){var e={clear:function(){e.head=null}};return e}function a(e,t,n){var r;if(e.length!==t.length)return!1;for(r=n;r0&&void 0!==arguments[0]?arguments[0]:{},t=e.gradientAttribute,n=void 0===t?"gradient":t,r=e.customGradientAttribute,o=void 0===r?"customGradient":r,i=$(),c=i.clientId,a=Object(g.useSelect)((function(e){var t=e("core/block-editor"),r=t.getBlockAttributes,i=t.getSettings,a=r(c);return{gradient:a[n],customGradient:a[o],gradients:i().gradients}}),[c,n,o]),l=a.gradients,u=a.gradient,f=a.customGradient,b=Object(g.useDispatch)("core/block-editor"),p=b.updateBlockAttributes,h=Object(d.useCallback)((function(e){var t,r,i=te(l,e);i?p(c,(r={},Object(s.a)(r,n,i),Object(s.a)(r,o,void 0),r)):p(c,(t={},Object(s.a)(t,n,void 0),Object(s.a)(t,o,e),t))}),[l,c,p]),m=J(u);return{gradientClass:m,gradientValue:u?Q(l,u):f,setGradient:h}}function re(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var oe=Object(U.__)("(Color: %s)"),ie=Object(U.__)("(Gradient: %s)"),ce=["colors","disableCustomColors","gradients","disableCustomGradients"];function ae(e){var t,n,r=e.colors,o=e.gradients,i=e.label,c=e.currentTab,a=e.colorValue,l=e.gradientValue;if("color"===c){if(a){var s=k(r,t=a),u=s&&s.name;n=Object(U.sprintf)(oe,u||t)}}else if("gradient"===c&&l){var f=ee(o,t=l),b=f&&f.name;n=Object(U.sprintf)(ie,b||t)}return Object(d.createElement)(d.Fragment,null,i,!!t&&Object(d.createElement)(z.ColorIndicator,{colorValue:t,"aria-label":n}))}function le(e){var t=e.colors,n=e.gradients,r=e.disableCustomColors,o=e.disableCustomGradients,i=e.className,c=e.label,a=e.onColorChange,l=e.onGradientChange,s=e.colorValue,f=e.gradientValue,h=a&&(!Object(p.isEmpty)(t)||!r),m=l&&(!Object(p.isEmpty)(n)||!o),g=Object(d.useState)(f?"gradient":!!h&&"color"),v=Object(M.a)(g,2),O=v[0],j=v[1];return h||m?Object(d.createElement)(z.BaseControl,{className:b()("block-editor-color-gradient-control",i)},Object(d.createElement)("fieldset",null,Object(d.createElement)("legend",null,Object(d.createElement)("div",{className:"block-editor-color-gradient-control__color-indicator"},Object(d.createElement)(z.BaseControl.VisualLabel,null,Object(d.createElement)(ae,{currentTab:O,label:c,colorValue:s,gradientValue:f})))),h&&m&&Object(d.createElement)(z.ButtonGroup,{className:"block-editor-color-gradient-control__button-tabs"},Object(d.createElement)(z.Button,{isSmall:!0,isPrimary:"color"===O,isSecondary:"color"!==O,onClick:function(){return j("color")}},Object(U.__)("Solid")),Object(d.createElement)(z.Button,{isSmall:!0,isPrimary:"gradient"===O,isSecondary:"gradient"!==O,onClick:function(){return j("gradient")}},Object(U.__)("Gradient"))),("color"===O||!m)&&Object(d.createElement)(z.ColorPalette,Object(u.a)({value:s,onChange:m?function(e){a(e),l()}:a},{colors:t,disableCustomColors:r})),("gradient"===O||!h)&&Object(d.createElement)(z.__experimentalGradientPicker,Object(u.a)({value:f,onChange:h?function(e){l(e),a()}:l},{gradients:n,disableCustomGradients:o})))):null}function se(e){var t=Object(g.useSelect)((function(e){var t=e("core/block-editor").getSettings();return Object(p.pick)(t,ce)}));return Object(d.createElement)(le,function(e){for(var t=1;t=24?"large":"small"})?null:Object(d.createElement)(_e,{backgroundColor:t,textColor:c,tinyBackgroundColor:a,tinyTextColor:l})},Se=Object(z.createSlotFill)("InspectorControls"),we=Se.Fill,Ce=Se.Slot,Ie=X(we);Ie.Slot=Ce;var xe=Ie;function Be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Te(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{panelTitle:Object(U.__)("Color settings")},n=t.panelTitle,r=void 0===n?Object(U.__)("Color settings"):n,o=t.colorPanelProps,i=t.contrastCheckers,c=t.panelChildren,a=t.colorDetector,l=(a=void 0===a?{}:a).targetRef,u=a.backgroundColorTargetRef,f=void 0===u?l:u,h=a.textColorTargetRef,m=void 0===h?l:h,v=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],O=$(),j=O.clientId,k=Object(g.useSelect)((function(e){var t=e("core/block-editor"),n=t.getBlockAttributes,r=(0,t.getSettings)().colors;return{attributes:n(j),settingsColors:r&&!0!==r?r:Re}}),[j]),y=k.attributes,_=k.settingsColors,E=Object(g.useDispatch)("core/block-editor"),S=E.updateBlockAttributes,w=Object(d.useCallback)((function(e){return S(j,e)}),[S,j]),C=Object(d.useMemo)((function(){return V()((function(e,t,n,r,o,i){return function(c){var a=c.children,l=c.className,u=void 0===l?"":l,f=c.style,h=void 0===f?{}:f;return d.Children.map(a,(function(c){var a,l={};return r?l=Object(s.a)({},t,o):i&&(l=Object(s.a)({},t,i)),Object(d.cloneElement)(c,{className:b()(u,c.props.className,(a={},Object(s.a)(a,"has-".concat(Object(p.kebabCase)(r),"-").concat(Object(p.kebabCase)(t)),r),Object(s.a)(a,n||"has-".concat(Object(p.kebabCase)(e)),r||i),a)),style:Te({},l,{},h,{},c.props.style||{})})}))}}),{maxSize:e.length})}),[e.length]),I=Object(d.useMemo)((function(){return V()((function(e,t){return function(n){var r=t.find((function(e){return e.color===n}));w(Object(s.a)({},r?Object(p.camelCase)("custom ".concat(e)):e,void 0)),w(Object(s.a)({},r?e:Object(p.camelCase)("custom ".concat(e)),r?r.slug:n))}}),{maxSize:e.length})}),[w,e.length]),x=Object(d.useState)(),B=Object(M.a)(x,2),T=B[0],P=B[1],N=Object(d.useState)(),L=Object(M.a)(N,2),R=L[0],A=L[1];return Object(d.useEffect)((function(){if(i){var e=!1,t=!1,n=!0,r=!1,o=void 0;try{for(var c,a=Object(p.castArray)(i)[Symbol.iterator]();!(n=(c=a.next()).done);n=!0){var l=c.value,s=l.backgroundColor,u=l.textColor;if(e||(e=!0===s),t||(t=!0===u),e&&t)break}}catch(e){r=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(r)throw o}}if(t&&A(Ne(m.current).color),e){for(var d=f.current,b=Ne(d).backgroundColor;"rgba(0, 0, 0, 0)"===b&&d.parentNode&&d.parentNode.nodeType===Le.ELEMENT_NODE;)d=d.parentNode,b=Ne(d).backgroundColor;P(b)}}}),[e.reduce((function(e,t){return"".concat(e," | ").concat(y[t.name]," | ").concat(y[Object(p.camelCase)("custom ".concat(t.name))])}),"")].concat(Object(D.a)(v))),Object(d.useMemo)((function(){var t={},n=e.reduce((function(e,n){"string"==typeof n&&(n={name:n});var r=Te({},n,{color:y[n.name]}),o=r.name,i=r.property,c=void 0===i?o:i,a=r.className,l=r.panelLabel,s=void 0===l?n.label||Ae[o]||Object(p.startCase)(o):l,u=r.componentName,d=void 0===u?Object(p.startCase)(o).replace(/\s/g,""):u,f=r.color,b=void 0===f?n.color:f,h=r.colors,m=void 0===h?_:h,g=y[Object(p.camelCase)("custom ".concat(o))],v=g?void 0:m.find((function(e){return e.slug===b}));return e[d]=C(o,c,a,b,v&&v.color,g),e[d].displayName=d,e[d].color=g||v&&v.color,e[d].slug=b,e[d].setColor=I(o,m),t[d]={value:v?v.color:y[Object(p.camelCase)("custom ".concat(o))],onChange:e[d].setColor,label:s,colors:m},m||delete t[d].colors,e}),{}),a={title:r,initialOpen:!1,colorSettings:t,colorPanelProps:o,contrastCheckers:i,detectedBackgroundColor:T,detectedColor:R,panelChildren:c};return Te({},n,{ColorPanel:Object(d.createElement)(Me,a),InspectorControlsColorPanel:Object(d.createElement)(Fe,a)})}),[y,w,R,T].concat(Object(D.a)(v)))}var Ve=function(e,t,n){if(t){var r=Object(p.find)(e,{slug:t});if(r)return r}return{size:n}};function Ue(e){if(e)return"has-".concat(Object(p.kebabCase)(e),"-font-size")}var ze=Object(g.withSelect)((function(e){var t=e("core/block-editor").getSettings();return{disableCustomFontSizes:t.disableCustomFontSizes,fontSizes:t.fontSizes}}))(z.FontSizePicker);function Ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ke(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:1,o=Object(D.a)(e);return o.splice(t,r),Pt(o,e.slice(t,t+r),n)}function Lt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Rt(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:"",n=Object(s.a)({},t,[]);return e.forEach((function(e){var r=e.clientId,o=e.innerBlocks;n[t].push(r),Object.assign(n,At(o,r))})),n}function Dt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e.reduce((function(e,n){return Object.assign(e,Object(s.a)({},n.clientId,t),Dt(n.innerBlocks,n.clientId))}),{})}function Mt(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p.identity,n={},r=Object(D.a)(e);r.length;){var o=r.shift(),i=o.innerBlocks,c=Object(F.a)(o,["innerBlocks"]);r.push.apply(r,Object(D.a)(i)),n[c.clientId]=t(c)}return n}function Ft(e){return Mt(e,(function(e){return Object(p.omit)(e,"attributes")}))}function Ht(e){return Mt(e,(function(e){return e.attributes}))}function Vt(e,t){return e===t?Rt({},e):t}function Ut(e,t){return"UPDATE_BLOCK_ATTRIBUTES"===e.type&&void 0!==t&&"UPDATE_BLOCK_ATTRIBUTES"===t.type&&e.clientId===t.clientId&&(n=e.attributes,r=t.attributes,Object(p.isEqual)(Object(p.keys)(n),Object(p.keys)(r)));var n,r}var zt=function(e){return e.reduce((function(e,t){return e[t]={},e}),{})};var Gt=Object(p.flow)(g.combineReducers,(function(e){return function(t,n){if(t&&"SAVE_REUSABLE_BLOCK_SUCCESS"===n.type){var r=n.id,o=n.updatedId;if(r===o)return t;(t=Rt({},t)).attributes=Object(p.mapValues)(t.attributes,(function(e,n){return"core/block"===t.byClientId[n].name&&e.ref===r?Rt({},e,{ref:o}):e}))}return e(t,n)}}),(function(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0,r=e(t,n);if(r===t)return t;r.cache=t.cache?t.cache:{};var o=function(e){return e.reduce((function(e,n){var r=n;do{e.push(r),r=t.parents[r]}while(r);return e}),[])};switch(n.type){case"RESET_BLOCKS":r.cache=Object(p.mapValues)(Mt(n.blocks),(function(){return{}}));break;case"RECEIVE_BLOCKS":case"INSERT_BLOCKS":var i=Object(p.keys)(Mt(n.blocks));n.rootClientId&&i.push(n.rootClientId),r.cache=Rt({},r.cache,{},zt(o(i)));break;case"UPDATE_BLOCK":case"UPDATE_BLOCK_ATTRIBUTES":r.cache=Rt({},r.cache,{},zt(o([n.clientId])));break;case"REPLACE_BLOCKS_AUGMENTED_WITH_CHILDREN":var c=zt(o(n.replacedClientIds));r.cache=Rt({},Object(p.omit)(r.cache,n.replacedClientIds),{},Object(p.omit)(c,n.replacedClientIds),{},zt(Object(p.keys)(Mt(n.blocks))));break;case"REMOVE_BLOCKS_AUGMENTED_WITH_CHILDREN":r.cache=Rt({},Object(p.omit)(r.cache,n.removedClientIds),{},zt(Object(p.difference)(o(n.clientIds),n.clientIds)));break;case"MOVE_BLOCK_TO_POSITION":var a=[n.clientId];n.fromRootClientId&&a.push(n.fromRootClientId),n.toRootClientId&&a.push(n.toRootClientId),r.cache=Rt({},r.cache,{},zt(o(a)));break;case"MOVE_BLOCKS_UP":case"MOVE_BLOCKS_DOWN":var l=[];n.rootClientId&&l.push(n.rootClientId),r.cache=Rt({},r.cache,{},zt(o(l)));break;case"SAVE_REUSABLE_BLOCK_SUCCESS":var s=Object(p.keys)(Object(p.omitBy)(r.attributes,(function(e,t){return"core/block"!==r.byClientId[t].name||e.ref!==n.updatedId})));r.cache=Rt({},r.cache,{},zt(o(s)))}return r}}),(function(e){return function(t,n){var r=function(e){for(var n=e,r=0;r1&&void 0!==arguments[1]?arguments[1]:"";return Object(p.reduce)(t[n],(function(n,r){return[].concat(Object(D.a)(n),[r],Object(D.a)(e(t,r)))}),[])}(t.order);return Rt({},t,{byClientId:Rt({},Object(p.omit)(t.byClientId,r),{},Ft(n.blocks)),attributes:Rt({},Object(p.omit)(t.attributes,r),{},Ht(n.blocks)),order:Rt({},Object(p.omit)(t.order,r),{},At(n.blocks)),parents:Rt({},Object(p.omit)(t.parents,r),{},Dt(n.blocks)),cache:Rt({},Object(p.omit)(t.cache,r),{},Object(p.mapValues)(Mt(n.blocks),(function(){return{}})))})}return e(t,n)}}),(function(e){var t,n=!1;return function(r,o){var i=e(r,o),c="MARK_LAST_CHANGE_AS_PERSISTENT"===o.type||n;if(r===i&&!c){n="MARK_NEXT_CHANGE_AS_NOT_PERSISTENT"===o.type;var a=Object(p.get)(r,["isPersistentChange"],!0);return r.isPersistentChange===a?r:Rt({},i,{isPersistentChange:a})}return i=Rt({},i,{isPersistentChange:c?!n:!Ut(o,t)}),t=o,n="MARK_NEXT_CHANGE_AS_NOT_PERSISTENT"===o.type,i}}),(function(e){var t=new Set(["RECEIVE_BLOCKS"]);return function(n,r){var o=e(n,r);return o!==n&&(o.isIgnoredChange=t.has(r.type)),o}}))({byClientId:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RESET_BLOCKS":return Ft(t.blocks);case"RECEIVE_BLOCKS":case"INSERT_BLOCKS":return Rt({},e,{},Ft(t.blocks));case"UPDATE_BLOCK":if(!e[t.clientId])return e;var n=Object(p.omit)(t.updates,"attributes");return Object(p.isEmpty)(n)?e:Rt({},e,Object(s.a)({},t.clientId,Rt({},e[t.clientId],{},n)));case"REPLACE_BLOCKS_AUGMENTED_WITH_CHILDREN":return t.blocks?Rt({},Object(p.omit)(e,t.replacedClientIds),{},Ft(t.blocks)):e;case"REMOVE_BLOCKS_AUGMENTED_WITH_CHILDREN":return Object(p.omit)(e,t.removedClientIds)}return e},attributes:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RESET_BLOCKS":return Ht(t.blocks);case"RECEIVE_BLOCKS":case"INSERT_BLOCKS":return Rt({},e,{},Ht(t.blocks));case"UPDATE_BLOCK":return e[t.clientId]&&t.updates.attributes?Rt({},e,Object(s.a)({},t.clientId,Rt({},e[t.clientId],{},t.updates.attributes))):e;case"UPDATE_BLOCK_ATTRIBUTES":if(!e[t.clientId])return e;var n=Object(p.reduce)(t.attributes,(function(n,r,o){return r!==n[o]&&((n=Vt(e[t.clientId],n))[o]=r),n}),e[t.clientId]);return n===e[t.clientId]?e:Rt({},e,Object(s.a)({},t.clientId,n));case"REPLACE_BLOCKS_AUGMENTED_WITH_CHILDREN":return t.blocks?Rt({},Object(p.omit)(e,t.replacedClientIds),{},Ht(t.blocks)):e;case"REMOVE_BLOCKS_AUGMENTED_WITH_CHILDREN":return Object(p.omit)(e,t.removedClientIds)}return e},order:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RESET_BLOCKS":return At(t.blocks);case"RECEIVE_BLOCKS":return Rt({},e,{},Object(p.omit)(At(t.blocks),""));case"INSERT_BLOCKS":var n=t.rootClientId,r=void 0===n?"":n,o=e[r]||[],i=At(t.blocks,r),c=t.index,a=void 0===c?o.length:c;return Rt({},e,{},i,Object(s.a)({},r,Pt(o,i[r],a)));case"MOVE_BLOCK_TO_POSITION":var l,u=t.fromRootClientId,d=void 0===u?"":u,f=t.toRootClientId,b=void 0===f?"":f,h=t.clientId,m=t.index,g=void 0===m?e[b].length:m;if(d===b){var v=e[b],O=v.indexOf(h);return Rt({},e,Object(s.a)({},b,Nt(e[b],O,g)))}return Rt({},e,(l={},Object(s.a)(l,d,Object(p.without)(e[d],h)),Object(s.a)(l,b,Pt(e[b],h,g)),l));case"MOVE_BLOCKS_UP":var j=t.clientIds,k=t.rootClientId,y=void 0===k?"":k,_=Object(p.first)(j),E=e[y];if(!E.length||_===Object(p.first)(E))return e;var S=E.indexOf(_);return Rt({},e,Object(s.a)({},y,Nt(E,S,S-1,j.length)));case"MOVE_BLOCKS_DOWN":var w=t.clientIds,C=t.rootClientId,I=void 0===C?"":C,x=Object(p.first)(w),B=Object(p.last)(w),T=e[I];if(!T.length||B===Object(p.last)(T))return e;var P=T.indexOf(x);return Rt({},e,Object(s.a)({},I,Nt(T,P,P+1,w.length)));case"REPLACE_BLOCKS_AUGMENTED_WITH_CHILDREN":var N=t.clientIds;if(!t.blocks)return e;var L=At(t.blocks);return Object(p.flow)([function(e){return Object(p.omit)(e,t.replacedClientIds)},function(e){return Rt({},e,{},Object(p.omit)(L,""))},function(e){return Object(p.mapValues)(e,(function(e){return Object(p.reduce)(e,(function(e,t){return t===N[0]?[].concat(Object(D.a)(e),Object(D.a)(L[""])):(-1===N.indexOf(t)&&e.push(t),e)}),[])}))}])(e);case"REMOVE_BLOCKS_AUGMENTED_WITH_CHILDREN":return Object(p.flow)([function(e){return Object(p.omit)(e,t.removedClientIds)},function(e){return Object(p.mapValues)(e,(function(e){return p.without.apply(void 0,[e].concat(Object(D.a)(t.removedClientIds)))}))}])(e)}return e},parents:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RESET_BLOCKS":return Dt(t.blocks);case"RECEIVE_BLOCKS":return Rt({},e,{},Dt(t.blocks));case"INSERT_BLOCKS":return Rt({},e,{},Dt(t.blocks,t.rootClientId||""));case"MOVE_BLOCK_TO_POSITION":return Rt({},e,Object(s.a)({},t.clientId,t.toRootClientId||""));case"REPLACE_BLOCKS_AUGMENTED_WITH_CHILDREN":return Rt({},Object(p.omit)(e,t.replacedClientIds),{},Dt(t.blocks,e[t.clientIds[0]]));case"REMOVE_BLOCKS_AUGMENTED_WITH_CHILDREN":return Object(p.omit)(e,t.removedClientIds)}return e}});function Kt(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"CLEAR_SELECTED_BLOCK":return e.clientId?{}:e;case"SELECT_BLOCK":return t.clientId===e.clientId?e:{clientId:t.clientId};case"REPLACE_INNER_BLOCKS":case"INSERT_BLOCKS":return t.updateSelection?{clientId:t.blocks[0].clientId}:e;case"REMOVE_BLOCKS":return t.clientIds&&t.clientIds.length&&-1!==t.clientIds.indexOf(e.clientId)?{}:e;case"REPLACE_BLOCKS":if(-1===t.clientIds.indexOf(e.clientId))return e;var n=t.indexToSelect||t.blocks.length-1,r=t.blocks[n];return r?r.clientId===e.clientId?e:{clientId:r.clientId}:{}}return e}var Wt=Object(g.combineReducers)({blocks:Gt,isTyping:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"START_TYPING":return!0;case"STOP_TYPING":return!1}return e},isDraggingBlocks:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"START_DRAGGING_BLOCKS":return!0;case"STOP_DRAGGING_BLOCKS":return!1}return e},isCaretWithinFormattedText:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ENTER_FORMATTED_TEXT":return!0;case"EXIT_FORMATTED_TEXT":return!1}return e},selectionStart:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SELECTION_CHANGE":return{clientId:t.clientId,attributeKey:t.attributeKey,offset:t.startOffset};case"RESET_SELECTION":return t.selectionStart;case"MULTI_SELECT":return{clientId:t.start}}return Kt(e,t)},selectionEnd:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SELECTION_CHANGE":return{clientId:t.clientId,attributeKey:t.attributeKey,offset:t.endOffset};case"RESET_SELECTION":return t.selectionEnd;case"MULTI_SELECT":return{clientId:t.end}}return Kt(e,t)},isMultiSelecting:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"START_MULTI_SELECT":return!0;case"STOP_MULTI_SELECT":return!1}return e},isSelectionEnabled:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"TOGGLE_SELECTION":return t.isSelectionEnabled}return e},initialPosition:function(e,t){return"SELECT_BLOCK"===t.type?t.initialPosition:"REMOVE_BLOCKS"===t.type?e:void 0},blocksMode:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;if("TOGGLE_BLOCK_MODE"===t.type){var n=t.clientId;return Rt({},e,Object(s.a)({},n,e[n]&&"html"===e[n]?"visual":"html"))}return e},blockListSettings:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"REPLACE_BLOCKS":case"REMOVE_BLOCKS":return Object(p.omit)(e,t.clientIds);case"UPDATE_BLOCK_LIST_SETTINGS":var n=t.clientId;return t.settings?Object(p.isEqual)(e[n],t.settings)?e:Rt({},e,Object(s.a)({},n,t.settings)):e.hasOwnProperty(n)?Object(p.omit)(e,n):e}return e},insertionPoint:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SHOW_INSERTION_POINT":var n=t.rootClientId,r=t.index;return{rootClientId:n,index:r};case"HIDE_INSERTION_POINT":return null}return e},template:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{isValid:!0},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_TEMPLATE_VALIDITY":return Rt({},e,{isValid:t.isValid})}return e},settings:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Tt,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"UPDATE_SETTINGS":return Rt({},e,{},t.settings)}return e},preferences:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Bt,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"INSERT_BLOCKS":case"REPLACE_BLOCKS":return t.blocks.reduce((function(e,n){var r=n.name,o={name:n.name};return Object(i.isReusableBlock)(n)&&(o.ref=n.attributes.ref,r+="/"+n.attributes.ref),Rt({},e,{insertUsage:Rt({},e.insertUsage,Object(s.a)({},r,{time:t.time,count:e.insertUsage[r]?e.insertUsage[r].count+1:1,insert:o}))})}),e)}return e},lastBlockAttributesChange:function(e,t){switch(t.type){case"UPDATE_BLOCK":if(!t.updates.attributes)break;return Object(s.a)({},t.clientId,t.updates.attributes);case"UPDATE_BLOCK_ATTRIBUTES":return Object(s.a)({},t.clientId,t.attributes)}return null},isNavigationMode:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;return"INSERT_BLOCKS"!==t.type&&("SET_NAVIGATION_MODE"===t.type?t.isNavigationMode:e)},automaticChangeStatus:function(e,t){switch(t.type){case"MARK_AUTOMATIC_CHANGE":return"pending";case"MARK_AUTOMATIC_CHANGE_FINAL":return"pending"===e?"final":void 0;case"SELECTION_CHANGE":return"final"!==e?e:void 0;case"STOP_TYPING":return e}}}),qt=n("gQxa"),$t=n.n(qt),Yt=n("d2gM"),Xt=n.n(Yt),Zt=n("U8pU"),Jt=n("dvlR"),Qt=n.n(Jt);function en(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),o=2;o1&&void 0!==arguments[1]?arguments[1]:null;return{type:"SELECT_BLOCK",initialPosition:t,clientId:e}}function _n(e){var t;return Qt.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,en("core/block-editor","getPreviousBlockClientId",e);case 2:if(!(t=n.sent)){n.next=6;break}return n.next=6,yn(t,-1);case 6:case"end":return n.stop()}}),cn)}function En(e){var t;return Qt.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,en("core/block-editor","getNextBlockClientId",e);case 2:if(!(t=n.sent)){n.next=6;break}return n.next=6,yn(t);case 6:case"end":return n.stop()}}),an)}function Sn(){return{type:"START_MULTI_SELECT"}}function wn(){return{type:"STOP_MULTI_SELECT"}}function Cn(e,t){return{type:"MULTI_SELECT",start:e,end:t}}function In(){return{type:"CLEAR_SELECTED_BLOCK"}}function xn(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return{type:"TOGGLE_SELECTION",isSelectionEnabled:e}}function Bn(e,t){var n=Object(p.get)(t,["__experimentalPreferredStyleVariations","value"],{});return e.map((function(e){var t=e.name;if(!n[t])return e;var r=Object(p.get)(e,["attributes","className"]);if(Object(p.includes)(r,"is-style-"))return e;var o=e.attributes,i=void 0===o?{}:o,c=n[t];return rn({},e,{attributes:rn({},i,{className:"".concat(r||""," is-style-").concat(c).trim()})})}))}function Tn(e,t,n){var r,o,i;return Qt.a.wrap((function(c){for(;;)switch(c.prev=c.next){case 0:return e=Object(p.castArray)(e),c.t0=Bn,c.t1=Object(p.castArray)(t),c.next=5,en("core/block-editor","getSettings");case 5:return c.t2=c.sent,t=(0,c.t0)(c.t1,c.t2),c.next=9,en("core/block-editor","getBlockRootClientId",Object(p.first)(e));case 9:r=c.sent,o=0;case 11:if(!(o1&&void 0!==a[1]?a[1]:"",n=a.length>2&&void 0!==a[2]?a[2]:"",r=a.length>3?a[3]:void 0,l.next=5,en("core/block-editor","getTemplateLock",t);case 5:if("all"!==(o=l.sent)){l.next=8;break}return l.abrupt("return");case 8:if(i={type:"MOVE_BLOCK_TO_POSITION",fromRootClientId:t,toRootClientId:n,clientId:e,index:r},t!==n){l.next=13;break}return l.next=12,i;case 12:return l.abrupt("return");case 13:if("insert"!==o){l.next=15;break}return l.abrupt("return");case 15:return l.next=17,en("core/block-editor","getBlockName",e);case 17:return c=l.sent,l.next=20,en("core/block-editor","canInsertBlockType",c,n);case 20:if(!l.sent){l.next=24;break}return l.next=24,i;case 24:case"end":return l.stop()}}),sn)}function Dn(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return Mn([e],t,n,r)}function Mn(e,t,n){var r,o,i,c,a,l,s,u,d=arguments;return Qt.a.wrap((function(f){for(;;)switch(f.prev=f.next){case 0:return r=!(d.length>3&&void 0!==d[3])||d[3],f.t0=Bn,f.t1=Object(p.castArray)(e),f.next=5,en("core/block-editor","getSettings");case 5:f.t2=f.sent,e=(0,f.t0)(f.t1,f.t2),o=[],i=!0,c=!1,a=void 0,f.prev=11,l=e[Symbol.iterator]();case 13:if(i=(s=l.next()).done){f.next=22;break}return u=s.value,f.next=17,en("core/block-editor","canInsertBlockType",u.name,n);case 17:f.sent&&o.push(u);case 19:i=!0,f.next=13;break;case 22:f.next=28;break;case 24:f.prev=24,f.t3=f.catch(11),c=!0,a=f.t3;case 28:f.prev=28,f.prev=29,i||null==l.return||l.return();case 31:if(f.prev=31,!c){f.next=34;break}throw a;case 34:return f.finish(31);case 35:return f.finish(28);case 36:if(!o.length){f.next=38;break}return f.abrupt("return",{type:"INSERT_BLOCKS",blocks:o,index:t,rootClientId:n,time:Date.now(),updateSelection:r});case 38:case"end":return f.stop()}}),un,null,[[11,24,28,36],[29,,31,35]])}function Fn(e,t){return{type:"SHOW_INSERTION_POINT",rootClientId:e,index:t}}function Hn(){return{type:"HIDE_INSERTION_POINT"}}function Vn(e){return{type:"SET_TEMPLATE_VALIDITY",isValid:e}}function Un(){return{type:"SYNCHRONIZE_TEMPLATE"}}function zn(e,t){return{type:"MERGE_BLOCKS",blocks:[e,t]}}function Gn(e){var t,n,r=arguments;return Qt.a.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(t=!(r.length>1&&void 0!==r[1])||r[1],e&&e.length){o.next=3;break}return o.abrupt("return");case 3:return e=Object(p.castArray)(e),o.next=6,en("core/block-editor","getBlockRootClientId",e[0]);case 6:return n=o.sent,o.next=9,en("core/block-editor","getTemplateLock",n);case 9:if(!o.sent){o.next=12;break}return o.abrupt("return");case 12:if(!t){o.next=15;break}return o.next=15,_n(e[0]);case 15:return o.next=17,{type:"REMOVE_BLOCKS",clientIds:e};case 17:return o.delegateYield(mn(),"t0",18);case 18:case"end":return o.stop()}}),dn)}function Kn(e,t){return Gn([e],t)}function Wn(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return{type:"REPLACE_INNER_BLOCKS",rootClientId:e,blocks:t,updateSelection:n,time:Date.now()}}function qn(e){return{type:"TOGGLE_BLOCK_MODE",clientId:e}}function $n(){return{type:"START_TYPING"}}function Yn(){return{type:"STOP_TYPING"}}function Xn(){return{type:"START_DRAGGING_BLOCKS"}}function Zn(){return{type:"STOP_DRAGGING_BLOCKS"}}function Jn(){return{type:"ENTER_FORMATTED_TEXT"}}function Qn(){return{type:"EXIT_FORMATTED_TEXT"}}function er(e,t,n,r){return{type:"SELECTION_CHANGE",clientId:e,attributeKey:t,startOffset:n,endOffset:r}}function tr(e,t,n){var r=Object(i.getDefaultBlockName)();if(r)return Dn(Object(i.createBlock)(r,e),n,t)}function nr(e,t){return{type:"UPDATE_BLOCK_LIST_SETTINGS",clientId:e,settings:t}}function rr(e){return{type:"UPDATE_SETTINGS",settings:e}}function or(e,t){return{type:"SAVE_REUSABLE_BLOCK_SUCCESS",id:e,updatedId:t}}function ir(){return{type:"MARK_LAST_CHANGE_AS_PERSISTENT"}}function cr(){return{type:"MARK_NEXT_CHANGE_AS_NOT_PERSISTENT"}}function ar(){return{type:"MARK_AUTOMATIC_CHANGE"}}function lr(){var e,t=arguments;return Qt.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return e=!(t.length>0&&void 0!==t[0])||t[0],n.next=3,{type:"SET_NAVIGATION_MODE",isNavigationMode:e};case 3:e?Object(ye.speak)(Object(U.__)("You are currently in navigation mode. Navigate blocks using the Tab key. To exit navigation mode and edit the selected block, press Enter.")):Object(ye.speak)(Object(U.__)("You are currently in edit mode. To return to the navigation mode, press Escape."));case 4:case"end":return n.stop()}}),fn)}function sr(e){var t,n,r,o,c;return Qt.a.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:if(e||e.length){a.next=2;break}return a.abrupt("return");case 2:return a.next=4,en("core/block-editor","getBlocksByClientId",e);case 4:return t=a.sent,a.next=7,en("core/block-editor","getBlockRootClientId",e[0]);case 7:if(n=a.sent,!Object(p.some)(t,(function(e){return!e}))){a.next=10;break}return a.abrupt("return");case 10:if(r=t.map((function(e){return e.name})),!Object(p.some)(r,(function(e){return!Object(i.hasBlockSupport)(e,"multiple",!0)}))){a.next=13;break}return a.abrupt("return");case 13:return a.next=15,en("core/block-editor","getBlockIndex",Object(p.last)(Object(p.castArray)(e)),n);case 15:return o=a.sent,c=t.map((function(e){return Object(i.cloneBlock)(e)})),a.next=19,Mn(c,o+1,n);case 19:if(!(c.length>1)){a.next=22;break}return a.next=22,Cn(Object(p.first)(c).clientId,Object(p.last)(c).clientId);case 22:case"end":return a.stop()}}),bn)}function ur(e){var t,n;return Qt.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(e){r.next=2;break}return r.abrupt("return");case 2:return r.next=4,en("core/block-editor","getBlockRootClientId",e);case 4:return t=r.sent,r.next=7,en("core/block-editor","getTemplateLock",t);case 7:if(!r.sent){r.next=10;break}return r.abrupt("return");case 10:return r.next=12,en("core/block-editor","getBlockIndex",e,t);case 12:return n=r.sent,r.next=15,tr({},t,n);case 15:case"end":return r.stop()}}),pn)}function dr(e){var t,n;return Qt.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(e){r.next=2;break}return r.abrupt("return");case 2:return r.next=4,en("core/block-editor","getBlockRootClientId",e);case 4:return t=r.sent,r.next=7,en("core/block-editor","getTemplateLock",t);case 7:if(!r.sent){r.next=10;break}return r.abrupt("return");case 10:return r.next=12,en("core/block-editor","getBlockIndex",e,t);case 12:return n=r.sent,r.next=15,tr({},t,n+1);case 15:case"end":return r.stop()}}),hn)}var fr=n("pPDe");function br(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function pr(e){for(var t=1;t2&&void 0!==arguments[2]&&arguments[2],r=[],o=t;e.blocks.parents[o];)o=e.blocks.parents[o],r.push(o);return n?r:r.reverse()}),(function(e){return[e.blocks.parents]})),Ur=Object(fr.a)((function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=Vr(e,t,r);return Object(p.map)(Object(p.filter)(Object(p.map)(o,(function(t){return{id:t,name:kr(e,t)}})),{name:n}),(function(e){return e.id}))}),(function(e){return[e.blocks.parents]}));function zr(e,t){var n,r=t;do{n=r,r=e.blocks.parents[r]}while(r);return n}function Gr(e,t){for(var n,r=Mr(e),o=[].concat(Object(D.a)(Vr(e,t)),[t]),i=[].concat(Object(D.a)(Vr(e,r)),[r]),c=Math.min(o.length,i.length),a=0;a2&&void 0!==arguments[2]?arguments[2]:1;if(void 0===t&&(t=Mr(e)),void 0===t&&(t=n<0?Jr(e):Qr(e)),!t)return null;var r=Hr(e,t);if(null===r)return null;var o=e.blocks.order,i=o[r],c=i.indexOf(t),a=c+1*n;return a<0||a===i.length?null:i[a]}function Wr(e,t){return Kr(e,t,-1)}function qr(e,t){return Kr(e,t,1)}function $r(e){return e.initialPosition}var Yr=Object(fr.a)((function(e){var t=e.selectionStart,n=e.selectionEnd;if(void 0===t.clientId||void 0===n.clientId)return jr;if(t.clientId===n.clientId)return[t.clientId];var r=Hr(e,t.clientId);if(null===r)return jr;var o=io(e,r),i=o.indexOf(t.clientId),c=o.indexOf(n.clientId);return i>c?o.slice(c,i+1):o.slice(i,c+1)}),(function(e){return[e.blocks.order,e.selectionStart.clientId,e.selectionEnd.clientId]}));function Xr(e){var t=e.selectionStart,n=e.selectionEnd;return t.clientId===n.clientId?jr:Yr(e)}var Zr=Object(fr.a)((function(e){var t=Xr(e);return t.length?t.map((function(t){return Er(e,t)})):jr}),(function(e){return[].concat(Object(D.a)(Yr.getDependants(e)),[e.blocks.byClientId,e.blocks.order,e.blocks.attributes])}));function Jr(e){return Object(p.first)(Xr(e))||null}function Qr(e){return Object(p.last)(Xr(e))||null}function eo(e,t){return Jr(e)===t}function to(e,t){return-1!==Xr(e).indexOf(t)}var no=Object(fr.a)((function(e,t){for(var n=t,r=!1;n&&!r;)r=to(e,n=Hr(e,n));return r}),(function(e){return[e.blocks.order,e.selectionStart.clientId,e.selectionEnd.clientId]}));function ro(e){var t=e.selectionStart,n=e.selectionEnd;return t.clientId===n.clientId?null:t.clientId||null}function oo(e){var t=e.selectionStart,n=e.selectionEnd;return t.clientId===n.clientId?null:n.clientId||null}function io(e,t){return e.blocks.order[t||""]||jr}function co(e,t,n){return io(e,n).indexOf(t)}function ao(e,t){var n=e.selectionStart,r=e.selectionEnd;return n.clientId===r.clientId&&n.clientId===t}function lo(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return Object(p.some)(io(e,t),(function(t){return ao(e,t)||to(e,t)||n&&lo(e,t,n)}))}function so(e,t){if(!t)return!1;var n=Xr(e),r=n.indexOf(t);return r>-1&&r2&&void 0!==arguments[2]?arguments[2]:null,r=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return Object(p.isBoolean)(e)?e:Object(p.isArray)(e)?!(!Object(p.includes)(e,"core/post-content")||null!==t)||Object(p.includes)(e,t):n},o=Object(i.getBlockType)(t);if(!o)return!1;var c=To(e),a=c.allowedBlockTypes,l=r(a,t,!0);if(!l)return!1;var s=!!yo(e,n);if(s)return!1;var u=Bo(e,n),d=Object(p.get)(u,["allowedBlocks"]),f=r(d,t),b=o.parent,h=kr(e,n),m=r(b,h);return null!==f&&null!==m?f||m:null!==f?f:null===m||m},Eo=Object(fr.a)(_o,(function(e,t,n){return[e.blockListSettings[n],e.blocks.byClientId[n],e.settings.allowedBlockTypes,e.settings.templateLock]}));function So(e,t){return Object(p.get)(e.preferences.insertUsage,[t],null)}var wo=function(e,t,n){return!!Object(i.hasBlockSupport)(t,"inserter",!0)&&_o(e,t.name,n)},Co=Object(fr.a)((function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=function(e,t,n){return n?hr:t>0?mr:"common"===e?gr:vr},r=function(e,t){if(!e)return t;var n=Date.now()-e;switch(!0){case n<36e5:return 4*t;case n<864e5:return 2*t;case n<6048e5:return t/2;default:return t/4}},o=function(t){var o=t.name,c=!1;Object(i.hasBlockSupport)(t.name,"multiple",!0)||(c=Object(p.some)(Br(e,Ir(e)),{name:t.name}));var a=Object(p.isArray)(t.parent),l=So(e,o)||{},s=l.time,u=l.count,d=void 0===u?0:u,f=t.variations.filter((function(e){var t=e.scope;return!t||t.includes("inserter")}));return{id:o,name:t.name,initialAttributes:{},title:t.title,description:t.description,icon:t.icon,category:t.category,keywords:t.keywords,variations:f,example:t.example,isDisabled:c,utility:n(t.category,d,a),frecency:r(s,d)}},c=function(t){var o,c="core/block/".concat(t.id),a=Lo(e,t.id);1===a.length&&(o=Object(i.getBlockType)(a[0].name));var l=So(e,c)||{},s=l.time,u=l.count,d=void 0===u?0:u,f=n("reusable",d,!1),b=r(s,d);return{id:c,name:"core/block",initialAttributes:{ref:t.id},title:t.title,icon:o?o.icon:Or,category:"reusable",keywords:[],isDisabled:!1,utility:f,frecency:b}},a=Object(i.getBlockTypes)().filter((function(n){return wo(e,n,t)})).map(o),l=_o(e,"core/block",t)?Do(e).map(c):[];return Object(p.orderBy)([].concat(Object(D.a)(a),Object(D.a)(l)),["utility","frecency"],["desc","desc"])}),(function(e,t){return[e.blockListSettings[t],e.blocks.byClientId,e.blocks.order,e.preferences.insertUsage,e.settings.allowedBlockTypes,e.settings.templateLock,Do(e),Object(i.getBlockTypes)()]})),Io=Object(fr.a)((function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=Object(p.some)(Object(i.getBlockTypes)(),(function(n){return wo(e,n,t)}));if(n)return!0;var r=_o(e,"core/block",t)&&Do(e).length>0;return r}),(function(e,t){return[e.blockListSettings[t],e.blocks.byClientId,e.settings.allowedBlockTypes,e.settings.templateLock,Do(e),Object(i.getBlockTypes)()]})),xo=Object(fr.a)((function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(t)return Object(p.filter)(Object(i.getBlockTypes)(),(function(n){return wo(e,n,t)}))}),(function(e,t){return[e.blockListSettings[t],e.blocks.byClientId,e.settings.allowedBlockTypes,e.settings.templateLock,Object(i.getBlockTypes)()]}));function Bo(e,t){return e.blockListSettings[t]}function To(e){return e.settings}function Po(e){return e.blocks.isPersistentChange}var No=Object(fr.a)((function(e,t){return Object(p.filter)(e.blockListSettings,(function(e,n){return t.includes(n)}))}),(function(e){return[e.blockListSettings]})),Lo=Object(fr.a)((function(e,t){var n=Object(p.find)(Do(e),(function(e){return e.id===t}));return n?Object(i.parse)(n.content):null}),(function(e){return[Do(e)]}));function Ro(e){return e.blocks.isIgnoredChange}function Ao(e){return e.lastBlockAttributesChange}function Do(e){return Object(p.get)(e,["settings","__experimentalReusableBlocks"],jr)}function Mo(e){return e.isNavigationMode}function Fo(e){return!!e.automaticChangeStatus}function Ho(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Vo(e){for(var t=1;t0&&Object(d.createElement)("div",{className:"block-editor-warning__actions"},d.Children.map(n,(function(e,t){return Object(d.createElement)("span",{key:t,className:"block-editor-warning__action"},e)})))),o&&Object(d.createElement)(z.Dropdown,{className:"block-editor-warning__secondary",position:"bottom left",renderToggle:function(e){var t=e.isOpen,n=e.onToggle;return Object(d.createElement)(z.Button,{icon:Jo.a,label:Object(U.__)("More options"),onClick:n,"aria-expanded":t})},renderContent:function(){return Object(d.createElement)(z.MenuGroup,null,o.map((function(e,t){return Object(d.createElement)(z.MenuItem,{onClick:e.onClick,key:t},e.title)})))}}))},ei=n("v2jn");function ti(e){var t=e.title,n=e.rawContent,r=e.renderedContent,o=e.action,i=e.actionText,c=e.className;return Object(d.createElement)("div",{className:c},Object(d.createElement)("div",{className:"block-editor-block-compare__content"},Object(d.createElement)("h2",{className:"block-editor-block-compare__heading"},t),Object(d.createElement)("div",{className:"block-editor-block-compare__html"},n),Object(d.createElement)("div",{className:"block-editor-block-compare__preview edit-post-visual-editor"},Object(d.createElement)(d.RawHTML,null,Object(Zo.safeHTML)(r)))),Object(d.createElement)("div",{className:"block-editor-block-compare__action"},Object(d.createElement)(z.Button,{isSecondary:!0,tabIndex:"0",onClick:o},i)))}var ni=function(e){function t(){return Object(_.a)(this,t),Object(S.a)(this,Object(w.a)(t).apply(this,arguments))}return Object(I.a)(t,e),Object(E.a)(t,[{key:"getDifference",value:function(e,t){return Object(ei.diffChars)(e,t).map((function(e,t){var n=b()({"block-editor-block-compare__added":e.added,"block-editor-block-compare__removed":e.removed});return Object(d.createElement)("span",{key:t,className:n},e.value)}))}},{key:"getConvertedContent",value:function(e){return Object(p.castArray)(e).map((function(e){return Object(i.getSaveContent)(e.name,e.attributes,e.innerBlocks)})).join("")}},{key:"render",value:function(){var e=this.props,t=e.block,n=e.onKeep,r=e.onConvert,o=e.convertor,i=e.convertButtonText,c=this.getConvertedContent(o(t)),a=this.getDifference(t.originalContent,c);return Object(d.createElement)("div",{className:"block-editor-block-compare__wrapper"},Object(d.createElement)(ti,{title:Object(U.__)("Current"),className:"block-editor-block-compare__current",action:n,actionText:Object(U.__)("Convert to HTML"),rawContent:t.originalContent,renderedContent:t.originalContent}),Object(d.createElement)(ti,{title:Object(U.__)("After Conversion"),className:"block-editor-block-compare__converted",action:r,actionText:i,rawContent:a,renderedContent:c}))}}]),t}(d.Component),ri=function(e){function t(e){var n;return Object(_.a)(this,t),(n=Object(S.a)(this,Object(w.a)(t).call(this,e))).state={compare:!1},n.onCompare=n.onCompare.bind(Object(C.a)(n)),n.onCompareClose=n.onCompareClose.bind(Object(C.a)(n)),n}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onCompare",value:function(){this.setState({compare:!0})}},{key:"onCompareClose",value:function(){this.setState({compare:!1})}},{key:"render",value:function(){var e=this.props,t=e.convertToHTML,n=e.convertToBlocks,r=e.convertToClassic,o=e.attemptBlockRecovery,c=e.block,a=!!Object(i.getBlockType)("core/html"),l=this.state.compare,s=[{title:Object(U.__)("Convert to Classic Block"),onClick:r},{title:Object(U.__)("Attempt Block Recovery"),onClick:o}];return Object(d.createElement)(d.Fragment,null,Object(d.createElement)(Qo,{actions:[Object(d.createElement)(z.Button,{key:"convert",onClick:this.onCompare,isSecondary:a,isPrimary:!a},Object(U._x)("Resolve","imperative verb")),a&&Object(d.createElement)(z.Button,{key:"edit",onClick:t,isPrimary:!0},Object(U.__)("Convert to HTML"))],secondaryActions:s},Object(U.__)("This block contains unexpected or invalid content.")),l&&Object(d.createElement)(z.Modal,{title:Object(U.__)("Resolve Block"),onRequestClose:this.onCompareClose,className:"block-editor-block-compare"},Object(d.createElement)(ni,{block:c,onKeep:t,onConvert:n,convertor:oi,convertButtonText:Object(U.__)("Convert to Blocks")})))}}]),t}(d.Component),oi=function(e){return Object(i.rawHandler)({HTML:e.originalContent})},ii=Object(h.compose)([Object(g.withSelect)((function(e,t){var n=t.clientId;return{block:e("core/block-editor").getBlock(n)}})),Object(g.withDispatch)((function(e,t){var n=t.block,r=e("core/block-editor").replaceBlock;return{convertToClassic:function(){r(n.clientId,function(e){return Object(i.createBlock)("core/freeform",{content:e.originalContent})}(n))},convertToHTML:function(){r(n.clientId,function(e){return Object(i.createBlock)("core/html",{content:e.originalContent})}(n))},convertToBlocks:function(){r(n.clientId,oi(n))},attemptBlockRecovery:function(){var e,t,o,c;r(n.clientId,(t=(e=n).name,o=e.attributes,c=e.innerBlocks,Object(i.createBlock)(t,o,c)))}}}))])(ri),ci=Object(d.createElement)(Qo,{className:"block-editor-block-list__block-crash-warning"},Object(U.__)("This block has encountered an error and cannot be previewed.")),ai=function(){return ci},li=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).state={hasError:!1},e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"componentDidCatch",value:function(e){this.props.onError(e),this.setState({hasError:!0})}},{key:"render",value:function(){return this.state.hasError?null:this.props.children}}]),t}(d.Component),si=n("O6Fj"),ui=n.n(si);var di=function(e){var t=e.clientId,n=Object(d.useState)(""),r=Object(M.a)(n,2),o=r[0],c=r[1],a=Object(g.useSelect)((function(e){return{block:e("core/block-editor").getBlock(t)}}),[t]).block,l=Object(g.useDispatch)("core/block-editor").updateBlock;return Object(d.useEffect)((function(){c(Object(i.getBlockContent)(a))}),[a]),Object(d.createElement)(ui.a,{className:"block-editor-block-list__block-html-textarea",value:o,onBlur:function(){var e=Object(i.getBlockType)(a.name),n=Object(i.getBlockAttributes)(e,o,a.attributes),r=o||Object(i.getSaveContent)(e,n),s=!o||Object(i.isValidBlockContent)(e,n,r);l(t,{attributes:n,originalContent:r,isValid:s}),o||c({content:r})},onChange:function(e){return c(e.target.value)}})};function fi(e){return document.getElementById("block-"+e)}function bi(e,t){var n=e.querySelector(".block-editor-block-list__layout");return e.contains(t)&&(!n||!n.contains(t))}function pi(e){e.nodeType!==e.ELEMENT_NODE&&(e=e.parentElement);var t=e.closest(".wp-block");if(t)return t.id.slice("block-".length)}var hi=function(e){return e+1},mi=function(e){return{top:e.offsetTop,left:e.offsetLeft}};var gi=function(e,t,n,r,o){var i=Object(h.useReducedMotion)()||!r,c=Object(d.useReducer)(hi,0),a=Object(M.a)(c,2),l=a[0],s=a[1],u=Object(d.useReducer)(hi,0),f=Object(M.a)(u,2),b=f[0],p=f[1],m=Object(d.useState)({x:0,y:0,scrollTop:0}),g=Object(M.a)(m,2),v=g[0],O=g[1],j=e.current?mi(e.current):null,k=Object(d.useMemo)((function(){return!!n&&Object(Zo.getScrollContainer)(e.current)}),[n]);Object(d.useLayoutEffect)((function(){l&&p()}),[l]),Object(d.useLayoutEffect)((function(){if(i){if(n&&k){e.current.style.transform="none";var t=mi(e.current);k.scrollTop=k.scrollTop-j.top+t.top}}else{e.current.style.transform="none";var r=mi(e.current),o={x:j?j.left-r.left:0,y:j?j.top-r.top:0,scrollTop:j&&k?k.scrollTop-j.top+r.top:0};e.current.style.transform=0===o.x&&0===o.y?void 0:"translate3d(".concat(o.x,"px,").concat(o.y,"px,0)"),s(),O(o)}}),[o]);var y=Object(Xo.useSpring)({from:{x:v.x,y:v.y},to:{x:0,y:0},reset:l!==b,config:{mass:5,tension:2e3,friction:200},immediate:i,onFrame:function(e){n&&k&&!i&&e.y&&(k.scrollTop=v.scrollTop+e.y)}});return i?{}:{transformOrigin:"center",transform:Object(Xo.interpolate)([y.x,y.y],(function(e,t){return 0===e&&0===t?void 0:"translate3d(".concat(e,"px,").concat(t,"px,0)")})),zIndex:Object(Xo.interpolate)([y.x,y.y],(function(e,n){return!t||0===e&&0===n?void 0:"1"}))}};function vi(e,t){for(var n="start"===t?"firstChild":"lastChild",r="start"===t?"nextSibling":"previousSibling";e[n];)for(e=e[n];e.nodeType===e.TEXT_NODE&&/^[ \t\n]*$/.test(e.data)&&e[r];)e=e[r];return e}function Oi(e){var t=e("core/block-editor"),n=t.isSelectionEnabled,r=t.isMultiSelecting,o=t.getMultiSelectedBlockClientIds,i=t.hasMultiSelection,c=t.getBlockParents,a=t.getSelectedBlockClientId;return{isSelectionEnabled:n(),isMultiSelecting:r(),multiSelectedBlockClientIds:o(),hasMultiSelection:i(),getBlockParents:c,selectedBlockClientId:a()}}function ji(e,t){Array.from(e.querySelectorAll(".rich-text")).forEach((function(e){t?e.setAttribute("contenteditable",!0):e.removeAttribute("contenteditable")}))}var ki=Object(d.forwardRef)((function(e,t){var n=e.selectedClientId,r=e.isReverse,o=e.containerRef,i=e.noCapture,c=e.hasMultiSelection,a=e.multiSelectionContainer,l=Object(g.useSelect)((function(e){return e("core/block-editor").isNavigationMode()})),s=Object(g.useDispatch)("core/block-editor").setNavigationMode;return Object(d.createElement)("div",{ref:t,tabIndex:l?void 0:"0",onFocus:function(){if(i.current)i.current=null;else if(n){var e=fi(n);if(r){var t=Zo.focus.tabbable.find(e);(Object(p.last)(t)||e).focus()}else e.focus()}else{if(c)return void a.current.focus();s(!0);var l=Zo.focus.tabbable.find(o.current);l.length&&(r?Object(p.last)(l).focus():Object(p.first)(l).focus())}},style:{position:"fixed"}})})),yi=window,_i=yi.getSelection,Ei=yi.getComputedStyle,Si=Object(p.overEvery)([Zo.isTextField,Zo.focus.tabbable.isTabbableIndex]);function wi(e,t,n){var r=Zo.focus.focusable.find(n);return t&&(r=Object(p.reverse)(r)),r=r.slice(r.indexOf(e)+1),Object(p.find)(r,(function t(n,r,o){if(!Zo.focus.tabbable.isTabbableIndex(n))return!1;if(Object(Zo.isTextField)(n))return!0;if(!n.classList.contains("block-editor-block-list__block"))return!1;if(function(e){return!!e.querySelector(".block-editor-block-list__layout")}(n))return!0;if(n.contains(e))return!1;for(var i,c=1;(i=o[r+c])&&n.contains(i);c++)if(t(i,r+c,o))return!1;return!0}))}function Ci(e){var t=e("core/block-editor"),n=t.getSelectedBlockClientId,r=t.getMultiSelectedBlocksStartClientId,o=t.getMultiSelectedBlocksEndClientId,i=t.getPreviousBlockClientId,c=t.getNextBlockClientId,a=t.getFirstMultiSelectedBlockClientId,l=t.getLastMultiSelectedBlockClientId,s=t.hasMultiSelection,u=t.getBlockOrder,d=t.isNavigationMode,f=t.isSelectionEnabled,b=t.getBlockSelectionStart,p=t.isMultiSelecting,h=n(),m=r(),g=o();return{selectedBlockClientId:h,selectionStartClientId:m,selectionBeforeEndClientId:i(g||h),selectionAfterEndClientId:c(g||h),selectedFirstClientId:a(),selectedLastClientId:l(),hasMultiSelection:s(),blocks:u(),isNavigationMode:d(),isSelectionEnabled:f(),blockSelectionStart:b(),isMultiSelecting:p()}}function Ii(e){var t=e.children,n=Object(d.useRef)(),r=Object(d.useRef)(),o=Object(d.useRef)(),i=Object(d.useRef)(),c=Object(d.useRef)(),a=Object(d.useRef)(),l=Object(d.useRef)(),s=Object(g.useSelect)(Ci,[]),u=s.selectedBlockClientId,f=s.selectionStartClientId,h=s.selectionBeforeEndClientId,m=s.selectionAfterEndClientId,v=s.selectedFirstClientId,O=s.selectedLastClientId,j=s.hasMultiSelection,k=s.blocks,y=s.isNavigationMode,_=s.isSelectionEnabled,E=s.blockSelectionStart,S=s.isMultiSelecting,w=Object(g.useDispatch)("core/block-editor"),C=w.multiSelect,I=w.selectBlock,x=w.clearSelectedBlock,B=w.setNavigationMode;Object(d.useEffect)((function(){j&&!S&&i.current.focus()}),[j,S]);var T=b()("block-editor-writing-flow",{"is-navigate-mode":y});return Object(d.createElement)("div",{className:T},Object(d.createElement)(ki,{ref:r,selectedClientId:u,containerRef:n,noCapture:a,hasMultiSelection:j,multiSelectionContainer:i}),Object(d.createElement)("div",{ref:n,onKeyDown:function(e){var t=e.keyCode,s=e.target,d=t===It.UP,b=t===It.DOWN,g=t===It.LEFT,_=t===It.RIGHT,E=t===It.TAB,S=t===It.ESCAPE,w=d||g,T=g||_,P=d||b,N=T||P,L=e.shiftKey,R=L||e.ctrlKey||e.altKey||e.metaKey,A=P?Zo.isVerticalEdge:Zo.isHorizontalEdge;if(y){var D=E&&L||d,M=E&&!L||b,F=D?h:m;if(M||D)if(F)e.preventDefault(),I(F);else if(E&&u){var H,V=fi(u);(H=M?Zo.focus.tabbable.findNext(V):Zo.focus.tabbable.findPrevious(V))&&(e.preventDefault(),H.focus(),x())}}else{if(u)if(E){var U=fi(u);if(L){if(s===U)return a.current=!0,void r.current.focus()}else{var z=Zo.focus.tabbable.find(U);if(s===(Object(p.last)(z)||U))return a.current=!0,void o.current.focus()}}else S&&B(!0);else if(j&&E&&s===i.current)return a.current=!0,void(L?r.current.focus():o.current.focus());if(P?l.current||(l.current=Object(Zo.computeCaretRect)()):l.current=null,!N)return It.isKeyboardEvent.primary(e)&&(c.current=Object(Zo.isEntirelySelected)(s)),void(It.isKeyboardEvent.primary(e,"a")&&((s.isContentEditable?c.current:Object(Zo.isEntirelySelected)(s))&&(C(Object(p.first)(k),Object(p.last)(k)),e.preventDefault()),c.current=!0));if(!e.nativeEvent.defaultPrevented&&function(e,t,n){if((t===It.UP||t===It.DOWN)&&!n)return!0;var r=e.tagName;return"INPUT"!==r&&"TEXTAREA"!==r}(s,t,R)){var G="rtl"===Ei(s).direction?!w:w;if(L)(w&&h||!w&&m)&&(j||function(e,t){var r,o,i=wi(e,t,n.current);return!(i&&(r=e,o=i,r.closest(".block-editor-block-list__block")===o.closest(".block-editor-block-list__block")))}(s,w)&&A(s,w))&&(!function(e){var t=e?h:m;t&&C(f||u,t)}(w),e.preventDefault());else if(j)!function(e){var t=e?v:O;t&&I(t)}(w),e.preventDefault();else if(P&&Object(Zo.isVerticalEdge)(s,w)){var K=wi(s,w,n.current);K&&(Object(Zo.placeCaretAtVerticalEdge)(K,w,l.current),e.preventDefault())}else if(T&&_i().isCollapsed&&Object(Zo.isHorizontalEdge)(s,G)){var W=wi(s,G,n.current);Object(Zo.placeCaretAtHorizontalEdge)(W,G),e.preventDefault()}}}},onMouseDown:function(e){if(l.current=null,y&&u&&bi(fi(u),e.target)&&B(!1),_&&0===e.button){var t=pi(e.target);t&&(e.shiftKey?E!==t&&(C(E,t),e.preventDefault()):j&&I(t))}}},Object(d.createElement)("div",{ref:i,tabIndex:j?"0":void 0,"aria-label":j?Object(U.__)("Multiple selected blocks"):void 0,style:{position:"fixed"}}),t),Object(d.createElement)(ki,{ref:o,selectedClientId:u,containerRef:n,noCapture:a,hasMultiSelection:j,multiSelectionContainer:i,isReverse:!0}),Object(d.createElement)("div",{"aria-hidden":!0,tabIndex:-1,onClick:function(){var e=Zo.focus.focusable.find(n.current),t=Object(p.findLast)(e,Si);t&&Object(Zo.placeCaretAtHorizontalEdge)(t,!0)},className:"block-editor-writing-flow__click-redirect"}))}function xi(e){var t=e.clientId;return Object(g.useSelect)((function(e){var n=e("core/block-editor"),r=n.getBlockIndex,o=n.getBlockInsertionPoint,i=n.isBlockInsertionPointVisible,c=(0,n.getBlockRootClientId)(t),a=r(t,c),l=o();return i()&&l.index===a&&l.rootClientId===c}),[t])?Object(d.createElement)("div",{className:"block-editor-block-list__insertion-point-indicator"}):null}function Bi(e){var t=e.className,n=e.isMultiSelecting,r=e.hasMultiSelection,o=e.selectedBlockClientId,i=e.children,c=e.containerRef,a=Object(d.useState)(!1),l=Object(M.a)(a,2),s=l[0],u=l[1],f=Object(d.useState)(!1),p=Object(M.a)(f,2),h=p[0],m=p[1],v=Object(d.useState)(null),O=Object(M.a)(v,2),j=O[0],k=O[1],y=Object(d.useState)(null),_=Object(M.a)(y,2),E=_[0],S=_[1],w=Object(d.useRef)(),C=Object(g.useSelect)((function(e){return{multiSelectedBlockClientIds:(0,e("core/block-editor").getMultiSelectedBlockClientIds)()}})).multiSelectedBlockClientIds;var I=r?C.includes(E):E===o;return Object(d.createElement)(d.Fragment,null,!n&&(s||h)&&Object(d.createElement)(z.Popover,{noArrow:!0,animate:!1,anchorRef:j,position:"top right left",focusOnMount:!1,className:"block-editor-block-list__insertion-point-popover",__unstableSlotName:"block-toolbar",__unstableFixedPosition:!1},Object(d.createElement)("div",{className:"block-editor-block-list__insertion-point",style:{width:j.offsetWidth}},Object(d.createElement)(xi,{clientId:E}),Object(d.createElement)("div",{ref:w,onFocus:function(){return m(!0)},onBlur:function(){return m(!1)},onClick:function(e){var t=e.clientX,n=e.clientY,r=e.target;if(r===w.current){var o=r.getBoundingClientRect(),i=nr}));if(o){var i=o.id.slice("block-".length);if(i){var c=o.getBoundingClientRect();e.clientX>c.right||e.clientXe}));if(!n)return;var r=n.id.slice("block-".length);if(!r)return;a(r)}}),[_]),_)return c}var rc,oc=(rc=function(e){var t=e.className,n=e.rootClientId,r=e.isDraggable,o=e.renderAppender,i=e.__experimentalUIParts,c=void 0===i?{}:i,a=Object(g.useSelect)((function(e){var t=e("core/block-editor"),r=t.getBlockOrder,o=t.isMultiSelecting,i=t.getSelectedBlockClientId,c=t.getMultiSelectedBlockClientIds,a=t.hasMultiSelection,l=t.getGlobalBlockCount,s=t.isTyping;return{blockClientIds:r(n),isMultiSelecting:o(),selectedBlockClientId:i(),multiSelectedBlockClientIds:c(),hasMultiSelection:a(),enableAnimation:!s()&&l()<=200}}),[n]),l=a.blockClientIds,s=a.isMultiSelecting,f=a.selectedBlockClientId,p=a.multiSelectedBlockClientIds,h=a.hasMultiSelection,m=a.enableAnimation,v=n?"div":Ui,O=Object(d.useRef)(),j=nc({element:O,rootClientId:n}),k=n?{}:{hasPopover:c.hasPopover};return Object(d.createElement)(v,Object(u.a)({ref:O,className:b()("block-editor-block-list__layout",t)},k),l.map((function(e,t){var o=h?p.includes(e):f===e;return Object(d.createElement)(g.AsyncModeProvider,{key:e,value:!o},Object(d.createElement)(qi,{rootClientId:n,clientId:e,isDraggable:r,isMultiSelecting:s,animateOnChange:t,enableAnimation:m,hasSelectedUI:c.hasSelectedUI,className:e===j?"is-drop-target":void 0}))})),Object(d.createElement)(Zi,{rootClientId:n,renderAppender:o,className:null===j?"is-drop-target":void 0}),Object(d.createElement)(tc.Slot,null))},function(e){return Object(d.createElement)(g.AsyncModeProvider,{value:!1},Object(d.createElement)(rc,e))});function ic(e){var t=e.blocks,n=e.viewportWidth,r=e.padding,o=void 0===r?0:r,i=Object(d.useRef)(null),c=Object(d.useState)(!1),a=Object(M.a)(c,2),l=a[0],s=a[1],u=Object(d.useState)(1),f=Object(M.a)(u,2),p=f[0],h=f[1],m=Object(d.useState)({x:0,y:0}),g=Object(M.a)(m,2),v=g[0],O=v.x,j=v.y,k=g[1];if(Object(d.useLayoutEffect)((function(){var e=setTimeout((function(){var e=i.current;if(e){if(1===t.length){var r=function(e){var t=fi(e);if(t)return t.firstChild||t}(t[0].clientId);if(!r)return;var c=e.getBoundingClientRect();c={width:c.width-2*o,height:c.height-2*o,left:c.left,top:c.top};var a=r.getBoundingClientRect(),l=c.width/a.width||1,u=-(a.left-c.left)*l+o,d=c.height>a.height*l?(c.height-a.height*l)/2+o:0;h(l),k({x:u,y:d}),r.style.marginTop="0"}else{var f=e.getBoundingClientRect();h(f.width/n)}s(!0)}}),100);return function(){e&&window.clearTimeout(e)}}),[]),!t||0===t.length)return null;var y={transform:"scale(".concat(p,")"),visibility:l?"visible":"hidden",left:O,top:j,width:n};return Object(d.createElement)("div",{ref:i,className:b()("block-editor-block-preview__container editor-styles-wrapper",{"is-ready":l}),"aria-hidden":!0},Object(d.createElement)(z.Disabled,{style:y,className:"block-editor-block-preview__content"},Object(d.createElement)(oc,null)))}var cc=Object(g.withSelect)((function(e){return{settings:e("core/block-editor").getSettings()}}))((function(e){var t=e.blocks,n=e.viewportWidth,r=void 0===n?700:n,o=e.padding,i=e.settings,c=Object(d.useMemo)((function(){return Object(p.castArray)(t)}),[t]),a=Object(d.useReducer)((function(e){return e+1}),0),l=Object(M.a)(a,2),s=l[0],u=l[1];return Object(d.useLayoutEffect)(u,[t]),Object(d.createElement)(Yo,{value:c,settings:i},Object(d.createElement)(ic,{key:s,blocks:c,viewportWidth:r,padding:o}))}));var ac=function(e){var t=e.icon,n=e.onClick,r=e.isDisabled,o=e.title,i=e.className,c=Object(F.a)(e,["icon","onClick","isDisabled","title","className"]),a=t?{backgroundColor:t.background,color:t.foreground}:{};return Object(d.createElement)("li",{className:"block-editor-block-types-list__list-item"},Object(d.createElement)(z.Button,Object(u.a)({className:b()("block-editor-block-types-list__item",i),onClick:function(e){e.preventDefault(),n()},disabled:r},c),Object(d.createElement)("span",{className:"block-editor-block-types-list__item-icon",style:a},Object(d.createElement)(_t,{icon:t,showColors:!0})),Object(d.createElement)("span",{className:"block-editor-block-types-list__item-title"},o)))};function lc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function sc(e){for(var t=1;t0})),Object(g.withSelect)((function(e,t){var n=t.rootClientId,r=(0,e("core/blocks").getBlockType)((0,e("core/block-editor").getBlockName)(n));return{rootBlockTitle:r&&r.title,rootBlockIcon:r&&r.icon}})))((function(e){var t=e.rootBlockIcon,n=e.rootBlockTitle,r=e.items,o=Object(F.a)(e,["rootBlockIcon","rootBlockTitle","items"]);return Object(d.createElement)("div",{className:"block-editor-inserter__child-blocks"},(t||n)&&Object(d.createElement)("div",{className:"block-editor-inserter__parent-block-header"},Object(d.createElement)(_t,{icon:t,showColors:!0}),n&&Object(d.createElement)("h2",null,n)),Object(d.createElement)(uc,Object(u.a)({items:r},o)))})),bc=Object(z.createSlotFill)("__experimentalInserterMenuExtension"),pc=bc.Fill,hc=bc.Slot;pc.Slot=hc;var mc=pc;function gc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var vc=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e=(e=(e=Object(p.deburr)(e)).replace(/^\//,"")).toLowerCase(),Object(p.words)(e)},Oc=function(e,t){return Object(p.differenceWith)(e,vc(t),(function(e,t){return t.includes(e)}))},jc=function(e,t,n,r){var o=vc(r);return 0===o.length?e:e.filter((function(e){var r=e.name,i=e.title,c=e.category,a=e.keywords,l=void 0===a?[]:a,s=e.variations,u=void 0===s?[]:s,d=Oc(o,i);if(0===d.length)return!0;if(0===(d=Oc(d,l.join(" "))).length)return!0;d=Oc(d,Object(p.get)(Object(p.find)(t,{slug:c}),["title"]));var f=n[r.split("/")[0]];return f&&(d=Oc(d,f.title)),0===d.length||0===(d=Oc(d,u.map((function(e){return e.title})).join(" "))).length})).map((function(e){if(Object(p.isEmpty)(e.variations))return e;var t=e.variations.filter((function(e){return Object(p.intersectionWith)(o,vc(e.title),(function(e,t){return t.includes(e)})).length>0}));return Object(p.isEmpty)(t)?e:function(e){for(var t=1;t0&&i.push("reusable"),r.length>0&&(i=i.concat(Object.keys(t),Object.keys(n))),i}},{key:"filter",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=this.props,n=t.categories,r=t.collections,o=t.debouncedSpeak,i=t.items,c=t.rootChildBlocks,a=jc(i,n,r,e),l=Object(p.filter)(a,(function(e){var t=e.name;return Object(p.includes)(c,t)})),s=[];if(!e){var u=this.props.maxSuggestedItems||9;s=Object(p.filter)(i,(function(e){return e.utility>0})).slice(0,u)}var d=Object(p.filter)(a,{category:"reusable"}),f=function(e){return Object(p.findIndex)(n,(function(t){return t.slug===e.category}))},b=Object(p.flow)((function(e){return Object(p.filter)(e,(function(e){return"reusable"!==e.category}))}),(function(e){return Object(p.sortBy)(e,f)}),(function(e){return Object(p.groupBy)(e,"category")}))(a),h=yc({},r);Object.keys(r).forEach((function(e){h[e]=a.filter((function(t){return Ec(t)===e})),0===h[e].length&&delete h[e]})),this.setState({hoveredItem:null,childItems:l,filterValue:e,suggestedItems:s,reusableItems:d,itemsPerCategory:b,itemsPerCollection:h,openPanels:this.filterOpenPanels(e,b,h,a,d)});var m=Object.keys(b).reduce((function(e,t){return e+b[t].length}),0),g=Object(U.sprintf)(Object(U._n)("%d result found.","%d results found.",m),m);o(g)}},{key:"onKeyDown",value:function(e){Object(p.includes)([It.LEFT,It.DOWN,It.RIGHT,It.UP,It.BACKSPACE,It.ENTER],e.keyCode)&&e.stopPropagation()}},{key:"render",value:function(){var e=this,t=this.props,n=t.categories,r=t.collections,o=t.instanceId,c=t.onSelect,a=t.rootClientId,l=t.showInserterHelpPanel,s=this.state,u=s.childItems,f=s.hoveredItem,h=s.itemsPerCategory,m=s.itemsPerCollection,g=s.openPanels,v=s.reusableItems,O=s.suggestedItems,j=s.filterValue,k=function(e){return-1!==g.indexOf(e)},y=!(Object(p.isEmpty)(O)&&Object(p.isEmpty)(v)&&Object(p.isEmpty)(h)&&Object(p.isEmpty)(m)),_=f?Object(i.getBlockType)(f.name):null,E=y&&l;return Object(d.createElement)("div",{className:b()("block-editor-inserter__menu",{"has-help-panel":E}),onKeyPress:_c,onKeyDown:this.onKeyDown},Object(d.createElement)("div",{className:"block-editor-inserter__main-area"},Object(d.createElement)("label",{htmlFor:"block-editor-inserter__search-".concat(o),className:"screen-reader-text"},Object(U.__)("Search for a block")),Object(d.createElement)("input",{id:"block-editor-inserter__search-".concat(o),type:"search",placeholder:Object(U.__)("Search for a block"),className:"block-editor-inserter__search",autoFocus:!0,onChange:this.onChangeSearchInput}),Object(d.createElement)("div",{className:"block-editor-inserter__results",ref:this.inserterResults,tabIndex:"0",role:"region","aria-label":Object(U.__)("Available block types")},Object(d.createElement)(fc,{rootClientId:a,items:u,onSelect:c,onHover:this.onHover}),!!O.length&&Object(d.createElement)(z.PanelBody,{title:Object(U._x)("Most used","blocks"),opened:k("suggested"),onToggle:this.onTogglePanel("suggested"),ref:this.bindPanel("suggested")},Object(d.createElement)(uc,{items:O,onSelect:c,onHover:this.onHover})),Object(p.map)(n,(function(t){var n=h[t.slug];return n&&n.length?Object(d.createElement)(z.PanelBody,{key:t.slug,title:t.title,icon:t.icon,opened:k(t.slug),onToggle:e.onTogglePanel(t.slug),ref:e.bindPanel(t.slug)},Object(d.createElement)(uc,{items:n,onSelect:c,onHover:e.onHover})):null})),Object(p.map)(r,(function(t,n){var r=m[n];return r&&r.length?Object(d.createElement)(z.PanelBody,{key:n,title:t.title,icon:t.icon,opened:k(n),onToggle:e.onTogglePanel(n),ref:e.bindPanel(n)},Object(d.createElement)(uc,{items:r,onSelect:c,onHover:e.onHover})):null})),!!v.length&&Object(d.createElement)(z.PanelBody,{className:"block-editor-inserter__reusable-blocks-panel",title:Object(U.__)("Reusable"),opened:k("reusable"),onToggle:this.onTogglePanel("reusable"),icon:"controls-repeat",ref:this.bindPanel("reusable")},Object(d.createElement)(uc,{items:v,onSelect:c,onHover:this.onHover}),Object(d.createElement)("a",{className:"block-editor-inserter__manage-reusable-blocks",href:Object(xt.addQueryArgs)("edit.php",{post_type:"wp_block"})},Object(U.__)("Manage all reusable blocks"))),Object(d.createElement)(mc.Slot,{fillProps:{onSelect:c,onHover:this.onHover,filterValue:j,hasItems:y}},(function(e){return e.length?e:y?null:Object(d.createElement)("p",{className:"block-editor-inserter__no-results"},Object(U.__)("No blocks found."))})))),E&&Object(d.createElement)("div",{className:"block-editor-inserter__menu-help-panel"},f&&Object(d.createElement)(d.Fragment,null,!Object(i.isReusableBlock)(f)&&Object(d.createElement)(dc,{blockType:f}),Object(d.createElement)("div",{className:"block-editor-inserter__preview"},Object(i.isReusableBlock)(f)||_.example?Object(d.createElement)("div",{className:"block-editor-inserter__preview-content"},Object(d.createElement)(cc,{padding:10,viewportWidth:500,blocks:_.example?Object(i.getBlockFromExample)(f.name,{attributes:yc({},_.example.attributes,{},f.initialAttributes),innerBlocks:_.example.innerBlocks}):Object(i.createBlock)(f.name,f.initialAttributes)})):Object(d.createElement)("div",{className:"block-editor-inserter__preview-content-missing"},Object(U.__)("No Preview Available.")))),!f&&Object(d.createElement)("div",{className:"block-editor-inserter__menu-help-panel-no-block"},Object(d.createElement)("div",{className:"block-editor-inserter__menu-help-panel-no-block-text"},Object(d.createElement)("div",{className:"block-editor-inserter__menu-help-panel-title"},Object(U.__)("Content blocks")),Object(d.createElement)("p",null,Object(U.__)("Welcome to the wonderful world of blocks! Blocks are the basis of all content within the editor.")),Object(d.createElement)("p",null,Object(U.__)("There are blocks available for all kinds of content: insert text, headings, images, lists, videos, tables, and lots more.")),Object(d.createElement)("p",null,Object(U.__)("Browse through the library to learn more about what each block does."))),Object(d.createElement)(z.Tip,null,Object(d.__experimentalCreateInterpolateElement)(Object(U.__)("While writing, you can press / to quickly insert new blocks."),{kbd:Object(d.createElement)("kbd",null)})))))}}]),t}(d.Component),wc=Object(h.compose)(Object(g.withSelect)((function(e,t){var n=t.clientId,r=t.isAppender,o=t.rootClientId,i=t.showInserterHelpPanel,c=e("core/block-editor"),a=c.getInserterItems,l=c.getBlockName,s=c.getBlockRootClientId,u=c.getBlockSelectionEnd,d=c.getSettings,f=e("core/blocks"),b=f.getCategories,p=f.getCollections,h=f.getChildBlockNames,m=o;if(!m&&!n&&!r){var g=u();g&&(m=s(g)||void 0)}var v=l(m),O=d(),j=O.showInserterHelpPanel,k=O.__experimentalFetchReusableBlocks;return{categories:b(),collections:p(),rootChildBlocks:h(v),items:a(m),showInserterHelpPanel:i&&j,destinationRootClientId:m,fetchReusableBlocks:k}})),Object(g.withDispatch)((function(e,t,n){var r=n.select,o=e("core/block-editor"),c=o.showInsertionPoint;function a(){var e=r("core/block-editor"),n=e.getBlockIndex,o=e.getBlockSelectionEnd,i=e.getBlockOrder,c=t.clientId,a=t.destinationRootClientId,l=t.isAppender;if(c)return n(c,a);var s=o();return!l&&s?n(s,a)+1:i(a).length}return{showInsertionPoint:function(){var e=a();c(t.destinationRootClientId,e)},hideInsertionPoint:o.hideInsertionPoint,onSelect:function(n){var o=e("core/block-editor"),c=o.replaceBlocks,l=o.insertBlock,s=r("core/block-editor").getSelectedBlock,u=t.isAppender,d=t.onSelect,f=t.__experimentalSelectBlockOnInsert,b=n.name,h=n.title,m=n.initialAttributes,g=n.innerBlocks,v=s(),O=Object(i.createBlock)(b,m,function e(t){return Object(p.map)(t,(function(t){var n=Object(M.a)(t,3),r=n[0],o=n[1],c=n[2],a=void 0===c?[]:c;return Object(i.createBlock)(r,o,e(a))}))}(g));if(!u&&v&&Object(i.isUnmodifiedDefaultBlock)(v))c(v.clientId,O);else if(l(O,a(),t.destinationRootClientId,f),!f){var j=Object(U.sprintf)(Object(U.__)("%s block added"),h);Object(ye.speak)(j)}return d(),O}}})),z.withSpokenMessages,h.withInstanceId,h.withSafeTimeout)(Sc),Cc=function(e){var t,n=e.onToggle,r=e.disabled,o=e.isOpen,i=e.blockTitle,c=e.hasSingleBlockType;return t=c?Object(U.sprintf)(Object(U._x)("Add %s","directly add the only allowed block"),i):Object(U._x)("Add block","Generic label for block inserter button"),Object(d.createElement)(z.Button,{icon:St.a,label:t,tooltipPosition:"bottom",onClick:n,className:"block-editor-inserter__toggle","aria-haspopup":!c&&"true","aria-expanded":!c&&o,disabled:r})},Ic=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).onToggle=e.onToggle.bind(Object(C.a)(e)),e.renderToggle=e.renderToggle.bind(Object(C.a)(e)),e.renderContent=e.renderContent.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onToggle",value:function(e){var t=this.props.onToggle;t&&t(e)}},{key:"renderToggle",value:function(e){var t=e.onToggle,n=e.isOpen,r=this.props,o=r.disabled,i=r.blockTitle,c=r.hasSingleBlockType,a=r.renderToggle,l=void 0===a?Cc:a;return l({onToggle:t,isOpen:n,disabled:o,blockTitle:i,hasSingleBlockType:c})}},{key:"renderContent",value:function(e){var t=e.onClose,n=this.props,r=n.rootClientId,o=n.clientId,i=n.isAppender,c=n.showInserterHelpPanel,a=n.__experimentalSelectBlockOnInsert;return Object(d.createElement)(wc,{onSelect:t,rootClientId:r,clientId:o,isAppender:i,showInserterHelpPanel:c,__experimentalSelectBlockOnInsert:a})}},{key:"render",value:function(){var e=this.props,t=e.position,n=e.hasSingleBlockType,r=e.insertOnlyAllowedBlock;return n?this.renderToggle({onToggle:r}):Object(d.createElement)(z.Dropdown,{className:"block-editor-inserter",contentClassName:"block-editor-inserter__popover",position:t,onToggle:this.onToggle,expandOnMobile:!0,headerTitle:Object(U.__)("Add a block"),renderToggle:this.renderToggle,renderContent:this.renderContent})}}]),t}(d.Component),xc=Object(h.compose)([Object(g.withSelect)((function(e,t){var n=t.clientId,r=t.rootClientId,o=e("core/block-editor"),i=o.getBlockRootClientId,c=o.hasInserterItems,a=o.__experimentalGetAllowedBlocks,l=e("core/blocks").getBlockVariations,s=a(r=r||i(n)||void 0),u=1===Object(p.size)(s)&&0===Object(p.size)(l(s[0].name,"inserter")),d=!1;return u&&(d=s[0]),{hasItems:c(r),hasSingleBlockType:u,blockTitle:d?d.title:"",allowedBlockType:d,rootClientId:r}})),Object(g.withDispatch)((function(e,t,n){var r=n.select;return{insertOnlyAllowedBlock:function(){var n=t.rootClientId,o=t.clientId,c=t.isAppender,a=t.hasSingleBlockType,l=t.allowedBlockType,s=t.__experimentalSelectBlockOnInsert;if(a&&((0,e("core/block-editor").insertBlock)(Object(i.createBlock)(l.name),function(){var e=r("core/block-editor"),t=e.getBlockIndex,i=e.getBlockSelectionEnd,a=e.getBlockOrder;if(o)return t(o,n);var l=i();return!c&&l?t(l,n)+1:a(n).length}(),n,s),!s)){var u=Object(U.sprintf)(Object(U.__)("%s block added"),l.title);Object(ye.speak)(u)}}}})),Object(h.ifCondition)((function(e){return e.hasItems}))])(Ic);var Bc=function(e){var t=e.rootClientId,n=e.className,r=e.__experimentalSelectBlockOnInsert;return Object(d.createElement)(xc,{rootClientId:t,__experimentalSelectBlockOnInsert:r,renderToggle:function(e){var t,r=e.onToggle,o=e.disabled,i=e.isOpen,c=e.blockTitle,a=e.hasSingleBlockType;t=a?Object(U.sprintf)(Object(U._x)("Add %s","directly add the only allowed block"),c):Object(U._x)("Add block","Generic label for block inserter button");var l=!a;return Object(d.createElement)(z.Tooltip,{text:t},Object(d.createElement)(z.Button,{className:b()(n,"block-editor-button-block-appender"),onClick:r,"aria-haspopup":l?"true":void 0,"aria-expanded":l?i:void 0,disabled:o,label:t},Object(d.createElement)("span",{className:"screen-reader-text"},t),Object(d.createElement)(Et.a,{icon:St.a})))},isAppender:!0})};function Tc(e){var t=e.blocks,n=e.selectedBlockClientId,r=e.selectBlock,o=e.showAppender,c=e.showNestedBlocks,a=e.parentBlockClientId,l=o&&!!a;return Object(d.createElement)("ul",{className:"block-editor-block-navigation__list",role:"list"},Object(p.map)(Object(p.omitBy)(t,p.isNil),(function(e){var t=Object(i.getBlockType)(e.name),a=e.clientId===n;return Object(d.createElement)("li",{key:e.clientId},Object(d.createElement)("div",{className:"block-editor-block-navigation__item"},Object(d.createElement)(z.Button,{className:b()("block-editor-block-navigation__item-button",{"is-selected":a}),onClick:function(){return r(e.clientId)}},Object(d.createElement)(_t,{icon:t.icon,showColors:!0}),Object(i.__experimentalGetBlockLabel)(t,e.attributes),a&&Object(d.createElement)("span",{className:"screen-reader-text"},Object(U.__)("(selected block)")))),c&&!!e.innerBlocks&&!!e.innerBlocks.length&&Object(d.createElement)(Tc,{blocks:e.innerBlocks,selectedBlockClientId:n,selectBlock:r,parentBlockClientId:e.clientId,showAppender:o,showNestedBlocks:!0}))})),l&&Object(d.createElement)("li",null,Object(d.createElement)("div",{className:"block-editor-block-navigation__item"},Object(d.createElement)(Bc,{rootClientId:a,__experimentalSelectBlockOnInsert:!1}))))}var Pc=Object(h.compose)(Object(g.withSelect)((function(e){var t=e("core/block-editor"),n=t.getSelectedBlockClientId,r=t.getBlockHierarchyRootClientId,o=t.getBlock,i=t.getBlocks,c=n();return{rootBlocks:i(),rootBlock:c?o(r(c)):null,selectedBlockClientId:c}})),Object(g.withDispatch)((function(e,t){var n=t.onSelect,r=void 0===n?p.noop:n;return{selectBlock:function(t){e("core/block-editor").selectBlock(t),r(t)}}})))((function(e){var t=e.rootBlock,n=e.rootBlocks,r=e.selectedBlockClientId,o=e.selectBlock;if(!n||0===n.length)return null;var i=t&&(t.clientId!==r||t.innerBlocks&&0!==t.innerBlocks.length);return Object(d.createElement)(z.NavigableMenu,{role:"presentation",className:"block-editor-block-navigation__container"},Object(d.createElement)("p",{className:"block-editor-block-navigation__label"},Object(U.__)("Block navigation")),i&&Object(d.createElement)(Tc,{blocks:[t],selectedBlockClientId:r,selectBlock:o,showNestedBlocks:!0}),!i&&Object(d.createElement)(Tc,{blocks:n,selectedBlockClientId:r,selectBlock:o}))})),Nc=Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"20",height:"20"},Object(d.createElement)(z.Path,{d:"M5 5H3v2h2V5zm3 8h11v-2H8v2zm9-8H6v2h11V5zM7 11H5v2h2v-2zm0 8h2v-2H7v2zm3-2v2h11v-2H10z"}));function Lc(e){var t=e.isEnabled,n=e.onToggle,r=e.isOpen;Object(l.useShortcut)("core/edit-post/toggle-block-navigation",Object(d.useCallback)(n,[n]),{bindGlobal:!0,isDisabled:!t});var o=Object(g.useSelect)((function(e){return e("core/keyboard-shortcuts").getShortcutRepresentation("core/edit-post/toggle-block-navigation")}),[]);return Object(d.createElement)(z.Button,{icon:Nc,"aria-expanded":r,onClick:t?n:void 0,label:Object(U.__)("Block navigation"),className:"block-editor-block-navigation",shortcut:o,"aria-disabled":!t})}var Rc=function(e){var t=e.isDisabled,n=Object(g.useSelect)((function(e){return!!e("core/block-editor").getBlockCount()}),[])&&!t;return Object(d.createElement)(z.Dropdown,{contentClassName:"block-editor-block-navigation__popover",renderToggle:function(e){return Object(d.createElement)(Lc,Object(u.a)({},e,{isEnabled:n}))},renderContent:function(e){var t=e.onClose;return Object(d.createElement)(Pc,{onSelect:t})}})};var Ac=function(e){var t=e.icon,n=void 0===t?"layout":t,r=e.label,o=void 0===r?Object(U.__)("Choose variation"):r,i=e.instructions,c=void 0===i?Object(U.__)("Select a variation to start with."):i,a=e.variations,l=e.onSelect,s=e.allowSkip,u=b()("block-editor-block-variation-picker",{"has-many-variations":a.length>4});return Object(d.createElement)(z.Placeholder,{icon:n,label:o,instructions:c,className:u},Object(d.createElement)("ul",{className:"block-editor-block-variation-picker__variations",role:"list"},a.map((function(e){return Object(d.createElement)("li",{key:e.name},Object(d.createElement)(z.Button,{isSecondary:!0,icon:e.icon,iconSize:48,onClick:function(){return l(e)},className:"block-editor-block-variation-picker__variation",label:e.title}))}))),s&&Object(d.createElement)("div",{className:"block-editor-block-variation-picker__skip"},Object(d.createElement)(z.Button,{isLink:!0,onClick:function(){return l()}},Object(U.__)("Skip"))))},Dc=Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24"},Object(d.createElement)(z.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(d.createElement)(z.Path,{d:"M16 13h-3V3h-2v10H8l4 4 4-4zM4 19v2h16v-2H4z"})),Mc=Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24"},Object(d.createElement)(z.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(d.createElement)(z.Path,{d:"M8 19h3v4h2v-4h3l-4-4-4 4zm8-14h-3V1h-2v4H8l4 4 4-4zM4 11v2h16v-2H4z"}));function Fc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var Hc={top:{icon:Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24"},Object(d.createElement)(z.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(d.createElement)(z.Path,{d:"M8 11h3v10h2V11h3l-4-4-4 4zM4 3v2h16V3H4z"})),title:Object(U._x)("Vertically Align Top","Block vertical alignment setting")},center:{icon:Mc,title:Object(U._x)("Vertically Align Middle","Block vertical alignment setting")},bottom:{icon:Dc,title:Object(U._x)("Vertically Align Bottom","Block vertical alignment setting")}},Vc=["top","center","bottom"];var Uc=function(e){var t=e.value,n=e.onChange,r=e.controls,o=void 0===r?Vc:r,i=e.isCollapsed,c=void 0===i||i,a=Hc[t],l=Hc.top;return Object(d.createElement)(z.Toolbar,{isCollapsed:c,icon:a?a.icon:l.icon,label:Object(U._x)("Change vertical alignment","Block vertical alignment setting label"),controls:o.map((function(e){return function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:void 0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return function(){e.props.onChange({width:t,height:n})}}},{key:"render",value:function(){var e=this,t=this.props,n=t.imageWidth,r=t.imageHeight,o=t.imageSizeOptions,i=void 0===o?[]:o,c=t.isResizable,a=void 0===c||c,l=t.slug,s=t.width,u=t.height,f=t.onChange,b=t.onChangeImage,h=void 0===b?p.noop:b;return Object(d.createElement)(d.Fragment,null,!Object(p.isEmpty)(i)&&Object(d.createElement)(z.SelectControl,{label:Object(U.__)("Image size"),value:l,options:i,onChange:h}),a&&Object(d.createElement)("div",{className:"block-editor-image-size-control"},Object(d.createElement)("p",{className:"block-editor-image-size-control__row"},Object(U.__)("Image dimensions")),Object(d.createElement)("div",{className:"block-editor-image-size-control__row"},Object(d.createElement)(z.TextControl,{type:"number",className:"block-editor-image-size-control__width",label:Object(U.__)("Width"),value:s||n||"",min:1,onChange:function(e){return f({width:parseInt(e,10)})}}),Object(d.createElement)(z.TextControl,{type:"number",className:"block-editor-image-size-control__height",label:Object(U.__)("Height"),value:u||r||"",min:1,onChange:function(e){return f({height:parseInt(e,10)})}})),Object(d.createElement)("div",{className:"block-editor-image-size-control__row"},Object(d.createElement)(z.ButtonGroup,{"aria-label":Object(U.__)("Image Size")},[25,50,75,100].map((function(t){var o=Math.round(n*(t/100)),i=Math.round(r*(t/100)),c=s===o&&u===i;return Object(d.createElement)(z.Button,{key:t,isSmall:!0,isPrimary:c,isPressed:c,onClick:e.updateDimensions(o,i)},t,"%")}))),Object(d.createElement)(z.Button,{isSmall:!0,onClick:this.updateDimensions()},Object(U.__)("Reset")))))}}]),t}(d.Component),Jc=n("rl8x"),Qc=n.n(Jc),ea=Object(h.createHigherOrderComponent)((function(e){return Y((function(e){return Object(p.pick)(e,["clientId"])}))(e)}),"withClientId"),ta=ea((function(e){var t=e.clientId,n=e.showSeparator;return Object(d.createElement)(Bc,{rootClientId:t,showSeparator:n})})),na=Object(h.compose)([ea,Object(g.withSelect)((function(e,t){var n=t.clientId,r=(0,e("core/block-editor").getBlockOrder)(n);return{lastBlockClientId:Object(p.last)(r)}}))])((function(e){var t=e.clientId,n=e.lastBlockClientId;return Object(d.createElement)(Yi,{rootClientId:t,lastBlockClientId:n})})),ra=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).state={templateInProcess:!!e.props.template},e.updateNestedSettings(),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"componentDidMount",value:function(){var e=this.props,t=e.block,n=e.templateLock,r=e.__experimentalBlocks,o=e.replaceInnerBlocks,i=e.__unstableMarkNextChangeAsNotPersistent;0!==t.innerBlocks.length&&"all"!==n||this.synchronizeBlocksWithTemplate(),this.state.templateInProcess&&this.setState({templateInProcess:!1}),r&&(i(),o(r))}},{key:"componentDidUpdate",value:function(e){var t=this.props,n=t.block,r=t.templateLock,o=t.template,i=t.isLastBlockChangePersistent,c=t.onInput,a=t.onChange,l=n.innerBlocks;(this.updateNestedSettings(),0===l.length||"all"===r)&&(!Object(p.isEqual)(o,e.template)&&this.synchronizeBlocksWithTemplate());if(e.block.innerBlocks!==l){var s=i?a:c;s&&s(l)}}},{key:"synchronizeBlocksWithTemplate",value:function(){var e=this.props,t=e.template,n=e.block,r=e.replaceInnerBlocks,o=n.innerBlocks,c=Object(i.synchronizeBlocksWithTemplate)(o,t);Object(p.isEqual)(c,o)||r(c)}},{key:"updateNestedSettings",value:function(){var e=this.props,t=e.blockListSettings,n=e.allowedBlocks,r=e.updateNestedSettings,o=e.templateLock,i=e.parentLock,c={allowedBlocks:n,templateLock:void 0===o?i:o,__experimentalCaptureToolbars:e.__experimentalCaptureToolbars||!1,__experimentalMoverDirection:e.__experimentalMoverDirection,__experimentalUIParts:e.__experimentalUIParts};Qc()(t,c)||r(c)}},{key:"render",value:function(){var e=this.props,t=e.enableClickThrough,n=e.clientId,r=e.hasOverlay,o=e.__experimentalCaptureToolbars,i=Object(F.a)(e,["enableClickThrough","clientId","hasOverlay","__experimentalCaptureToolbars"]),c=this.state.templateInProcess,a=b()("block-editor-inner-blocks",{"has-overlay":t&&r,"is-capturing-toolbar":o});return Object(d.createElement)("div",{className:a},!c&&Object(d.createElement)(oc,Object(u.a)({rootClientId:n},i)))}}]),t}(d.Component);(ra=Object(h.compose)([Object(a.withViewportMatch)({isSmallScreen:"< medium"}),Y((function(e){return Object(p.pick)(e,["clientId"])})),Object(g.withSelect)((function(e,t){var n=e("core/block-editor"),r=n.isBlockSelected,o=n.hasSelectedInnerBlock,i=n.getBlock,c=n.getBlockListSettings,a=n.getBlockRootClientId,l=n.getTemplateLock,s=n.isNavigationMode,u=n.isLastBlockChangePersistent,d=t.clientId,f=t.isSmallScreen,b=i(d),p=a(d);return{block:b,blockListSettings:c(d),hasOverlay:"core/template"!==b.name&&!r(d)&&!o(d,!0),parentLock:l(p),enableClickThrough:s()||f,isLastBlockChangePersistent:u()}})),Object(g.withDispatch)((function(e,t){var n=e("core/block-editor"),r=n.replaceInnerBlocks,o=n.__unstableMarkNextChangeAsNotPersistent,i=n.updateBlockListSettings,c=t.block,a=t.clientId,l=t.templateInsertUpdatesSelection,s=void 0===l||l;return{replaceInnerBlocks:function(e){r(a,e,0===c.innerBlocks.length&&s&&0!==e.length)},__unstableMarkNextChangeAsNotPersistent:o,updateNestedSettings:function(t){e(i(a,t))}}}))])(ra)).DefaultBlockAppender=na,ra.ButtonBlockAppender=ta,ra.Content=Object(i.withBlockContentContext)((function(e){var t=e.BlockContent;return Object(d.createElement)(t,null)}));var oa=ra,ia=Object(z.createSlotFill)("InspectorAdvancedControls"),ca=ia.Fill,aa=ia.Slot,la=X(ca);la.slotName="InspectorAdvancedControls",la.Slot=aa;var sa=la,ua=n("HaE+");function da(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var fa=[{id:"opensInNewTab",title:Object(U.__)("Open in new tab")}],ba=function(e){var t=e.value,n=e.onChange,r=void 0===n?p.noop:n,o=e.settings,i=void 0===o?fa:o;if(!i||!i.length)return null;var c=function(e){return function(n){r(function(e){for(var t=1;t-1&&e.stopPropagation()}(e)},onKeyPress:ha,placeholder:Object(U.__)("Search or type url"),__experimentalRenderSuggestions:o,__experimentalFetchLinkSuggestions:i,__experimentalHandleURLSuggestions:!0,__experimentalShowInitialSuggestions:c}),Object(d.createElement)("div",{className:"block-editor-link-control__search-actions"},Object(d.createElement)(z.Button,{type:"submit",label:Object(U.__)("Submit"),icon:"editor-break",className:"block-editor-link-control__search-submit"})))};function ga(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function va(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:"";O(e)},onSelect:function(e){i(va({},n,{},e)),x()},renderSuggestions:function(e){var t=e.suggestionsListProps,r=e.buildSuggestionItemProps,o=e.suggestions,c=e.selectedSuggestion,a=e.isLoading,l=e.isInitialSuggestions,f=b()("block-editor-link-control__search-results",{"is-loading":a}),p=["url","mailto","tel","internal"],h=l?"block-editor-link-control-search-results-label-".concat(s):void 0,m=l?Object(U.__)("Recently updated"):Object(U.sprintf)(Object(U.__)("Search results for %s"),v),g=l?void 0:m,O=Object(d.createElement)("span",{className:"block-editor-link-control__search-results-label",id:h,"aria-label":g},m);return Object(d.createElement)("div",{className:"block-editor-link-control__search-results-wrapper"},l?O:Object(d.createElement)(z.VisuallyHidden,null,O),Object(d.createElement)("div",Object(u.a)({},t,{className:f,"aria-labelledby":h}),o.map((function(e,t){return Object(d.createElement)(pa,{key:"".concat(e.id,"-").concat(e.type),itemProps:r(e,t),suggestion:e,onClick:function(){i(va({},n,{},e)),x()},isSelected:t===c,isURL:p.includes(e.type.toLowerCase()),searchTerm:v})}))))},fetchSuggestions:B,showInitialSuggestions:c}):Object(d.createElement)(d.Fragment,null,Object(d.createElement)("p",{className:"screen-reader-text",id:"current-link-label-".concat(s)},Object(U.__)("Currently selected"),":"),Object(d.createElement)("div",{"aria-labelledby":"current-link-label-".concat(s),"aria-selected":"true",className:b()("block-editor-link-control__search-item",{"is-current":!0})},Object(d.createElement)("span",{className:"block-editor-link-control__search-item-header"},Object(d.createElement)(z.ExternalLink,{className:"block-editor-link-control__search-item-title",href:n.url},n&&n.title||w),n&&n.title&&Object(d.createElement)("span",{className:"block-editor-link-control__search-item-info"},w)),Object(d.createElement)(z.Button,{isSecondary:!0,onClick:function(){return _(!0)},className:"block-editor-link-control__search-item-action"},Object(U.__)("Edit")))),Object(d.createElement)(ba,{value:n,settings:r,onChange:i}))},ja=n("NTP4"),ka=n("Bpkj"),ya=Object(z.withFilters)("editor.MediaUpload")((function(){return null}));var _a=Object(g.withSelect)((function(e){return{hasUploadPermissions:!!(0,e("core/block-editor").getSettings)().mediaUpload}}))((function(e){var t=e.hasUploadPermissions,n=e.fallback,r=void 0===n?null:n,o=e.children;return t?o:r})),Ea=n("btIw"),Sa=function(e){return e.stopPropagation()},wa=function(e){function t(e){var n;return Object(_.a)(this,t),(n=Object(S.a)(this,Object(w.a)(t).call(this,e))).onChange=n.onChange.bind(Object(C.a)(n)),n.onKeyDown=n.onKeyDown.bind(Object(C.a)(n)),n.selectLink=n.selectLink.bind(Object(C.a)(n)),n.handleOnClick=n.handleOnClick.bind(Object(C.a)(n)),n.bindSuggestionNode=n.bindSuggestionNode.bind(Object(C.a)(n)),n.autocompleteRef=e.autocompleteRef||Object(d.createRef)(),n.inputRef=Object(d.createRef)(),n.updateSuggestions=Object(p.throttle)(n.updateSuggestions.bind(Object(C.a)(n)),200),n.suggestionNodes=[],n.isUpdatingSuggestions=!1,n.state={suggestions:[],showSuggestions:!1,selectedSuggestion:null},n}return Object(I.a)(t,e),Object(E.a)(t,[{key:"componentDidUpdate",value:function(){var e=this,t=this.state,n=t.showSuggestions,r=t.selectedSuggestion;n&&null!==r&&!this.scrollingIntoView&&(this.scrollingIntoView=!0,Ct()(this.suggestionNodes[r],this.autocompleteRef.current,{onlyScrollIfNeeded:!0}),this.props.setTimeout((function(){e.scrollingIntoView=!1}),100)),this.shouldShowInitialSuggestions()&&this.updateSuggestions()}},{key:"componentDidMount",value:function(){this.shouldShowInitialSuggestions()&&this.updateSuggestions()}},{key:"componentWillUnmount",value:function(){delete this.suggestionsRequest}},{key:"bindSuggestionNode",value:function(e){var t=this;return function(n){t.suggestionNodes[e]=n}}},{key:"shouldShowInitialSuggestions",value:function(){var e=this.state.suggestions,t=this.props,n=t.__experimentalShowInitialSuggestions,r=void 0!==n&&n,o=t.value;return!this.isUpdatingSuggestions&&r&&!(o&&o.length)&&!(e&&e.length)}},{key:"updateSuggestions",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=this.props,r=n.__experimentalFetchLinkSuggestions,o=n.__experimentalHandleURLSuggestions;if(r){var i=!(t&&t.length);if(i||!(t.length<2||!o&&Object(xt.isURL)(t))){this.isUpdatingSuggestions=!0,this.setState({showSuggestions:!0,selectedSuggestion:null,loading:!0});var c=r(t,{isInitialSuggestions:i});c.then((function(t){e.suggestionsRequest===c&&(e.setState({suggestions:t,loading:!1}),t.length?e.props.debouncedSpeak(Object(U.sprintf)(Object(U._n)("%d result found, use up and down arrow keys to navigate.","%d results found, use up and down arrow keys to navigate.",t.length),t.length),"assertive"):e.props.debouncedSpeak(Object(U.__)("No results."),"assertive"),e.isUpdatingSuggestions=!1)})).catch((function(){e.suggestionsRequest===c&&(e.setState({loading:!1}),e.isUpdatingSuggestions=!1)})),this.suggestionsRequest=c}else this.setState({showSuggestions:!1,selectedSuggestion:null,loading:!1})}}},{key:"onChange",value:function(e){var t=e.target.value;this.props.onChange(t),this.props.disableSuggestions||this.updateSuggestions(t)}},{key:"onKeyDown",value:function(e){var t=this.state,n=t.showSuggestions,r=t.selectedSuggestion,o=t.suggestions,i=t.loading;if(n&&o.length&&!i){var c=this.state.suggestions[this.state.selectedSuggestion];switch(e.keyCode){case It.UP:e.stopPropagation(),e.preventDefault();var a=r?r-1:o.length-1;this.setState({selectedSuggestion:a});break;case It.DOWN:e.stopPropagation(),e.preventDefault();var l=null===r||r===o.length-1?0:r+1;this.setState({selectedSuggestion:l});break;case It.TAB:null!==this.state.selectedSuggestion&&(this.selectLink(c),this.props.speak(Object(U.__)("Link selected.")));break;case It.ENTER:null!==this.state.selectedSuggestion&&(e.stopPropagation(),this.selectLink(c))}}else switch(e.keyCode){case It.UP:0!==e.target.selectionStart&&(e.stopPropagation(),e.preventDefault(),e.target.setSelectionRange(0,0));break;case It.DOWN:this.props.value.length!==e.target.selectionStart&&(e.stopPropagation(),e.preventDefault(),e.target.setSelectionRange(this.props.value.length,this.props.value.length))}}},{key:"selectLink",value:function(e){this.props.onChange(e.url,e),this.setState({selectedSuggestion:null,showSuggestions:!1})}},{key:"handleOnClick",value:function(e){this.selectLink(e),this.inputRef.current.focus()}},{key:"render",value:function(){var e=this,t=this.props,n=t.label,r=t.instanceId,o=t.className,i=t.isFullWidth,c=t.hasBorder,a=t.__experimentalRenderSuggestions,l=t.placeholder,s=void 0===l?Object(U.__)("Paste URL or type to search"):l,f=t.value,h=void 0===f?"":f,m=t.autoFocus,g=void 0===m||m,v=t.__experimentalShowInitialSuggestions,O=void 0!==v&&v,j=this.state,k=j.showSuggestions,y=j.suggestions,_=j.selectedSuggestion,E=j.loading,S="url-input-control-".concat(r),w="block-editor-url-input-suggestions-".concat(r),C="block-editor-url-input-suggestion-".concat(r),I={id:w,ref:this.autocompleteRef,role:"listbox"},x=function(t,n){return{role:"option",tabIndex:"-1",id:"".concat(C,"-").concat(n),ref:e.bindSuggestionNode(n),"aria-selected":n===_}};return Object(d.createElement)(z.BaseControl,{label:n,id:S,className:b()("block-editor-url-input",o,{"is-full-width":i,"has-border":c})},Object(d.createElement)("input",{autoFocus:g,type:"text","aria-label":Object(U.__)("URL"),required:!0,value:h,onChange:this.onChange,onInput:Sa,placeholder:s,onKeyDown:this.onKeyDown,role:"combobox","aria-expanded":k,"aria-autocomplete":"list","aria-owns":w,"aria-activedescendant":null!==_?"".concat(C,"-").concat(_):void 0,ref:this.inputRef}),E&&Object(d.createElement)(z.Spinner,null),Object(p.isFunction)(a)&&k&&!!y.length&&a({suggestions:y,selectedSuggestion:_,suggestionsListProps:I,buildSuggestionItemProps:x,isLoading:E,handleSuggestionClick:this.handleOnClick,isInitialSuggestions:O&&!(h&&h.length)}),!Object(p.isFunction)(a)&&k&&!!y.length&&Object(d.createElement)(z.Popover,{position:"bottom",noArrow:!0,focusOnMount:!1},Object(d.createElement)("div",Object(u.a)({},I,{className:b()("block-editor-url-input__suggestions","".concat(o,"__suggestions"))}),y.map((function(t,n){return Object(d.createElement)(z.Button,Object(u.a)({},x(0,n),{key:t.id,className:b()("block-editor-url-input__suggestion",{"is-selected":n===_}),onClick:function(){return e.handleOnClick(t)}}),t.title)})))))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var n=e.value,r=e.disableSuggestions,o=e.__experimentalShowInitialSuggestions,i=void 0!==o&&o,c=t.showSuggestions,a=n&&n.length;return i||a||(c=!1),!0===r&&(c=!1),{showSuggestions:c}}}]),t}(d.Component),Ca=Object(h.compose)(h.withSafeTimeout,z.withSpokenMessages,h.withInstanceId,Object(g.withSelect)((function(e,t){if(!Object(p.isFunction)(t.__experimentalFetchLinkSuggestions))return{__experimentalFetchLinkSuggestions:(0,e("core/block-editor").getSettings)().__experimentalFetchLinkSuggestions}})))(wa);function Ia(e){var t=e.autocompleteRef,n=e.className,r=e.onChangeInputValue,o=e.value,i=Object(F.a)(e,["autocompleteRef","className","onChangeInputValue","value"]);return Object(d.createElement)("form",Object(u.a)({className:b()("block-editor-url-popover__link-editor",n)},i),Object(d.createElement)(Ca,{value:o,onChange:r,autocompleteRef:t}),Object(d.createElement)(z.Button,{icon:Ea.a,label:Object(U.__)("Apply"),type:"submit"}))}var xa=n("L0kB");function Ba(e){var t=e.url,n=e.urlLabel,r=e.className,o=b()(r,"block-editor-url-popover__link-viewer-url");return t?Object(d.createElement)(z.ExternalLink,{className:o,href:t},n||Object(xt.filterURLForDisplay)(Object(xt.safeDecodeURI)(t))):Object(d.createElement)("span",{className:o})}function Ta(e){var t=e.className,n=e.linkClassName,r=e.onEditLinkClick,o=e.url,i=e.urlLabel,c=Object(F.a)(e,["className","linkClassName","onEditLinkClick","url","urlLabel"]);return Object(d.createElement)("div",Object(u.a)({className:b()("block-editor-url-popover__link-viewer",t)},c),Object(d.createElement)(Ba,{url:o,urlLabel:i,className:n}),r&&Object(d.createElement)(z.Button,{icon:xa.a,label:Object(U.__)("Edit"),onClick:r}))}var Pa=Object(h.compose)(z.withNotices)((function(e){var t,n=e.mediaURL,r=e.mediaId,o=e.allowedTypes,i=e.accept,c=e.onSelect,a=e.onSelectURL,l=e.onError,s=e.name,u=void 0===s?Object(U.__)("Replace"):s,f=Object(d.useState)(!1),b=Object(M.a)(f,2),p=b[0],h=b[1],m=Object(d.useState)(!1),v=Object(M.a)(m,2),O=v[0],j=v[1],k=Object(d.useState)(n),y=Object(M.a)(k,2),_=y[0],E=y[1],S=Object(g.useSelect)((function(e){return e("core/block-editor").getSettings().mediaUpload}),[]),w=Object(d.createRef)(),C=function(e){c(e),E(e.url),Object(ye.speak)(Object(U.__)("The media file has been replaced"))},I=function(e){e.keyCode===It.DOWN&&(e.preventDefault(),e.stopPropagation(),e.target.click())};return t=O?Object(d.createElement)(Ia,{onKeyDown:function(e){[It.LEFT,It.DOWN,It.RIGHT,It.UP,It.BACKSPACE,It.ENTER].indexOf(e.keyCode)>-1&&e.stopPropagation()},onKeyPress:function(e){e.stopPropagation()},value:_,isFullWidthInput:!0,hasInputBorder:!0,onChangeInputValue:function(e){return E(e)},onSubmit:function(e){e.preventDefault(),a(_),j(!1),w.current.focus()}}):Object(d.createElement)(Ta,{isFullWidth:!0,className:"block-editor-media-replace-flow__link-viewer",url:_,onEditLinkClick:function(){return j(!O)}}),Object(d.createElement)(z.Dropdown,{contentClassName:"block-editor-media-replace-flow__options",renderToggle:function(e){var t=e.isOpen,n=e.onToggle;return Object(d.createElement)(z.ToolbarGroup,{className:"media-replace-flow"},Object(d.createElement)(z.Button,{ref:w,"aria-expanded":t,onClick:n,onKeyDown:I},u,Object(d.createElement)("span",{className:"block-editor-media-replace-flow__indicator"})))},renderContent:function(e){var n=e.onClose;return Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.NavigableMenu,null,Object(d.createElement)(ya,{value:r,onSelect:function(e){return C(e)},allowedTypes:o,render:function(e){var t=e.open;return Object(d.createElement)(z.MenuItem,{icon:"admin-media",onClick:t},Object(U.__)("Open Media Library"))}}),Object(d.createElement)(_a,null,Object(d.createElement)(z.FormFileUpload,{onChange:function(e){!function(e,t){var n=e.target.files;S({allowedTypes:o,filesList:n,onFileChange:function(e){var n=Object(M.a)(e,1)[0];C(n),t()},onError:l})}(e,n)},accept:i,render:function(e){var t=e.openFileDialog;return Object(d.createElement)(z.MenuItem,{icon:ja.a,onClick:function(){t()}},Object(U.__)("Upload"))}})),a&&Object(d.createElement)(z.MenuItem,{icon:ka.a,onClick:function(){return h(!p)},"aria-expanded":p},Object(d.createElement)("div",null," ",Object(U.__)("Insert from URL")," "))),p&&Object(d.createElement)("div",{className:"block-editor-media-flow__url-input"},t))}})})),Na=n("NMb1"),La=n.n(Na),Ra=n("NWDH"),Aa=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).toggleSettingsVisibility=e.toggleSettingsVisibility.bind(Object(C.a)(e)),e.state={isSettingsExpanded:!1},e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"toggleSettingsVisibility",value:function(){this.setState({isSettingsExpanded:!this.state.isSettingsExpanded})}},{key:"render",value:function(){var e=this.props,t=e.additionalControls,n=e.children,r=e.renderSettings,o=e.position,i=void 0===o?"bottom center":o,c=e.focusOnMount,a=void 0===c?"firstElement":c,l=Object(F.a)(e,["additionalControls","children","renderSettings","position","focusOnMount"]),s=this.state.isSettingsExpanded,f=!!r&&s;return Object(d.createElement)(z.Popover,Object(u.a)({className:"block-editor-url-popover",focusOnMount:a,position:i},l),Object(d.createElement)("div",{className:"block-editor-url-popover__input-container"},Object(d.createElement)("div",{className:"block-editor-url-popover__row"},n,!!r&&Object(d.createElement)(z.Button,{className:"block-editor-url-popover__settings-toggle",icon:Ra.a,label:Object(U.__)("Link settings"),onClick:this.toggleSettingsVisibility,"aria-expanded":s})),f&&Object(d.createElement)("div",{className:"block-editor-url-popover__row block-editor-url-popover__settings"},r())),t&&!f&&Object(d.createElement)("div",{className:"block-editor-url-popover__additional-controls"},t))}}]),t}(d.Component);Aa.LinkEditor=Ia,Aa.LinkViewer=Ta;var Da=Aa,Ma=function(e){var t=e.src,n=e.onChange,r=e.onSubmit,o=e.onClose;return Object(d.createElement)(Da,{onClose:o},Object(d.createElement)("form",{className:"block-editor-media-placeholder__url-input-form",onSubmit:r},Object(d.createElement)("input",{className:"block-editor-media-placeholder__url-input-field",type:"url","aria-label":Object(U.__)("URL"),placeholder:Object(U.__)("Paste or type URL"),onChange:n,value:t}),Object(d.createElement)(z.Button,{className:"block-editor-media-placeholder__url-input-submit-button",icon:Ea.a,label:Object(U.__)("Apply"),type:"submit"})))},Fa=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).state={src:"",isURLInputVisible:!1},e.onChangeSrc=e.onChangeSrc.bind(Object(C.a)(e)),e.onSubmitSrc=e.onSubmitSrc.bind(Object(C.a)(e)),e.onUpload=e.onUpload.bind(Object(C.a)(e)),e.onFilesUpload=e.onFilesUpload.bind(Object(C.a)(e)),e.openURLInput=e.openURLInput.bind(Object(C.a)(e)),e.closeURLInput=e.closeURLInput.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onlyAllowsImages",value:function(){var e=this.props.allowedTypes;return!!e&&Object(p.every)(e,(function(e){return"image"===e||Object(p.startsWith)(e,"image/")}))}},{key:"componentDidMount",value:function(){this.setState({src:Object(p.get)(this.props.value,["src"],"")})}},{key:"componentDidUpdate",value:function(e){Object(p.get)(e.value,["src"],"")!==Object(p.get)(this.props.value,["src"],"")&&this.setState({src:Object(p.get)(this.props.value,["src"],"")})}},{key:"onChangeSrc",value:function(e){this.setState({src:e.target.value})}},{key:"onSubmitSrc",value:function(e){e.preventDefault(),this.state.src&&this.props.onSelectURL&&(this.props.onSelectURL(this.state.src),this.closeURLInput())}},{key:"onUpload",value:function(e){this.onFilesUpload(e.target.files)}},{key:"onFilesUpload",value:function(e){var t,n=this.props,r=n.addToGallery,o=n.allowedTypes,i=n.mediaUpload,c=n.multiple,a=n.onError,l=n.onSelect,s=n.value;if(c)if(r){var u=void 0===s?[]:s;t=function(e){l(u.concat(e))}}else t=l;else t=function(e){var t=Object(M.a)(e,1)[0];return l(t)};i({allowedTypes:o,filesList:e,onFileChange:t,onError:a})}},{key:"openURLInput",value:function(){this.setState({isURLInputVisible:!0})}},{key:"closeURLInput",value:function(){this.setState({isURLInputVisible:!1})}},{key:"renderPlaceholder",value:function(e,t){var n=this.props,r=n.allowedTypes,o=void 0===r?[]:r,i=n.className,c=n.icon,a=n.isAppender,l=n.labels,s=void 0===l?{}:l,u=n.onDoubleClick,f=n.mediaPreview,p=n.notices,h=n.onSelectURL,m=n.mediaUpload,g=n.children,v=s.instructions,O=s.title;if(m||h||(v=Object(U.__)("To edit this block, you need permission to upload media.")),void 0===v||void 0===O){var j=1===o.length,k=j&&"audio"===o[0],y=j&&"image"===o[0],_=j&&"video"===o[0];void 0===v&&m&&(v=Object(U.__)("Upload a media file or pick one from your media library."),k?v=Object(U.__)("Upload an audio file, pick one from your media library, or add one with a URL."):y?v=Object(U.__)("Upload an image file, pick one from your media library, or add one with a URL."):_&&(v=Object(U.__)("Upload a video file, pick one from your media library, or add one with a URL."))),void 0===O&&(O=Object(U.__)("Media"),k?O=Object(U.__)("Audio"):y?O=Object(U.__)("Image"):_&&(O=Object(U.__)("Video")))}var E=b()("block-editor-media-placeholder",i,{"is-appender":a});return Object(d.createElement)(z.Placeholder,{icon:c,label:O,instructions:v,className:E,notices:p,onClick:t,onDoubleClick:u,preview:f},e,g)}},{key:"renderDropZone",value:function(){var e=this.props,t=e.disableDropZone,n=e.onHTMLDrop,r=void 0===n?p.noop:n;return t?null:Object(d.createElement)(z.DropZone,{onFilesDrop:this.onFilesUpload,onHTMLDrop:r})}},{key:"renderCancelLink",value:function(){var e=this.props.onCancel;return e&&Object(d.createElement)(z.Button,{className:"block-editor-media-placeholder__cancel-button",title:Object(U.__)("Cancel"),isLink:!0,onClick:e},Object(U.__)("Cancel"))}},{key:"renderUrlSelectionUI",value:function(){if(!this.props.onSelectURL)return null;var e=this.state,t=e.isURLInputVisible,n=e.src;return Object(d.createElement)("div",{className:"block-editor-media-placeholder__url-input-container"},Object(d.createElement)(z.Button,{className:"block-editor-media-placeholder__button",onClick:this.openURLInput,isPressed:t,isSecondary:!0},Object(U.__)("Insert from URL")),t&&Object(d.createElement)(Ma,{src:n,onChange:this.onChangeSrc,onSubmit:this.onSubmitSrc,onClose:this.closeURLInput}))}},{key:"renderMediaUploadChecked",value:function(){var e=this,t=this.props,n=t.accept,r=t.addToGallery,o=t.allowedTypes,i=void 0===o?[]:o,c=t.isAppender,a=t.mediaUpload,l=t.multiple,s=void 0!==l&&l,u=t.onSelect,f=t.value,h=void 0===f?{}:f,m=Object(d.createElement)(ya,{addToGallery:r,gallery:s&&this.onlyAllowsImages(),multiple:s,onSelect:u,allowedTypes:i,value:Object(p.isArray)(h)?h.map((function(e){return e.id})):h.id,render:function(e){var t=e.open;return Object(d.createElement)(z.Button,{isSecondary:!0,onClick:function(e){e.stopPropagation(),t()}},Object(U.__)("Media Library"))}});if(a&&c)return Object(d.createElement)(d.Fragment,null,this.renderDropZone(),Object(d.createElement)(z.FormFileUpload,{onChange:this.onUpload,accept:n,multiple:s,render:function(t){var n=t.openFileDialog,r=Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.Button,{isSecondary:!0,className:b()("block-editor-media-placeholder__button","block-editor-media-placeholder__upload-button")},Object(U.__)("Upload")),m,e.renderUrlSelectionUI(),e.renderCancelLink());return e.renderPlaceholder(r,n)}}));if(a){var g=Object(d.createElement)(d.Fragment,null,this.renderDropZone(),Object(d.createElement)(z.FormFileUpload,{isSecondary:!0,className:b()("block-editor-media-placeholder__button","block-editor-media-placeholder__upload-button"),onChange:this.onUpload,accept:n,multiple:s},Object(U.__)("Upload")),m,this.renderUrlSelectionUI(),this.renderCancelLink());return this.renderPlaceholder(g)}return this.renderPlaceholder(m)}},{key:"render",value:function(){var e=this.props,t=e.disableMediaButtons,n=e.dropZoneUIOnly;return n||t?(n&&La()("wp.blockEditor.MediaPlaceholder dropZoneUIOnly prop",{alternative:"disableMediaButtons"}),Object(d.createElement)(_a,null,this.renderDropZone())):Object(d.createElement)(_a,{fallback:this.renderPlaceholder(this.renderUrlSelectionUI())},this.renderMediaUploadChecked())}}]),t}(d.Component),Ha=Object(g.withSelect)((function(e){return{mediaUpload:(0,e("core/block-editor").getSettings)().mediaUpload}})),Va=Object(h.compose)(Ha,Object(z.withFilters)("editor.MediaPlaceholder"))(Fa),Ua=Object(d.forwardRef)((function(e,t){var n=e.onChange,r=e.className,o=Object(F.a)(e,["onChange","className"]);return Object(d.createElement)(ui.a,Object(u.a)({ref:t,className:b()("block-editor-plain-text",r),onChange:function(e){return n(e.target.value)}},o))}));function za(e){var t=e.property,n=e.viewport,r=e.desc,o=Object(h.useInstanceId)(za),i=r||Object(U.sprintf)(Object(U._x)("Controls the %1$s property for %2$s viewports.","Text labelling a interface as controlling a given layout property (eg: margin) for a given screen size."),t,n.label);return Object(d.createElement)(d.Fragment,null,Object(d.createElement)("span",{"aria-describedby":"rbc-desc-".concat(o)},n.label),Object(d.createElement)("span",{className:"screen-reader-text",id:"rbc-desc-".concat(o)},i))}var Ga=function(e){var t=e.title,n=e.property,r=e.toggleLabel,o=e.onIsResponsiveChange,i=e.renderDefaultControl,c=e.renderResponsiveControls,a=e.isResponsive,l=void 0!==a&&a,s=e.defaultLabel,u=void 0===s?{id:"all",label:Object(U.__)("All")}:s,f=e.viewports,p=void 0===f?[{id:"small",label:Object(U.__)("Small screens")},{id:"medium",label:Object(U.__)("Medium screens")},{id:"large",label:Object(U.__)("Large screens")}]:f;if(!t||!n||!i)return null;var h=r||Object(U.sprintf)(Object(U.__)("Use the same %s on all screensizes."),n),m=Object(U.__)("Toggle between using the same value for all screen sizes or using a unique value per screen size."),g=i(Object(d.createElement)(za,{property:n,viewport:u}),u);return Object(d.createElement)("fieldset",{className:"block-editor-responsive-block-control"},Object(d.createElement)("legend",{className:"block-editor-responsive-block-control__title"},t),Object(d.createElement)("div",{className:"block-editor-responsive-block-control__inner"},Object(d.createElement)(z.ToggleControl,{className:"block-editor-responsive-block-control__toggle",label:h,checked:!l,onChange:o,help:m}),Object(d.createElement)("div",{className:b()("block-editor-responsive-block-control__group",{"is-responsive":l})},!l&&g,l&&(c?c(p):p.map((function(e){return Object(d.createElement)(d.Fragment,{key:e.id},i(Object(d.createElement)(za,{property:n,viewport:e}),e))}))))))},Ka=[It.rawShortcut.primary("z"),It.rawShortcut.primaryShift("z"),It.rawShortcut.primary("y")],Wa=Object(d.createElement)(z.KeyboardShortcuts,{bindGlobal:!0,shortcuts:Object(p.fromPairs)(Ka.map((function(e){return[e,function(e){return e.preventDefault()}]})))}),qa=function(){return Wa},$a=n("xTGt");function Ya(e){return e.filter((function(e){var t=e.type;return/^image\/(?:jpe?g|png|gif)$/.test(t)})).map((function(e){return'')})).join("")}var Xa={position:"bottom left"},Za=function(){return Object(d.createElement)("div",{className:"block-editor-format-toolbar"},Object(d.createElement)(z.Toolbar,null,["bold","italic","link","text-color"].map((function(e){return Object(d.createElement)(z.Slot,{name:"RichText.ToolbarControls.".concat(e),key:e})})),Object(d.createElement)(z.Slot,{name:"RichText.ToolbarControls"},(function(e){return 0!==e.length&&Object(d.createElement)(z.DropdownMenu,{icon:!1,label:Object(U.__)("More rich text controls"),controls:Object(p.orderBy)(e.map((function(e){return Object(M.a)(e,1)[0].props})),"title"),popoverProps:Xa})}))))},Ja=function(e){var t=e.inline,n=e.anchorRef;return t?Object(d.createElement)(z.Popover,{noArrow:!0,position:"top center",focusOnMount:!1,anchorRef:n,className:"block-editor-rich-text__inline-format-toolbar"},Object(d.createElement)(Za,null)):Object(d.createElement)(yt,null,Object(d.createElement)(Za,null))},Qa=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).onUse=e.onUse.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onUse",value:function(){return this.props.onUse(),!1}},{key:"render",value:function(){var e=this.props,t=e.character,n=e.type;return Object(d.createElement)(z.KeyboardShortcuts,{bindGlobal:!0,shortcuts:Object(s.a)({},It.rawShortcut[n](t),this.onUse)})}}]),t}(d.Component);function el(e){var t,n=e.name,r=e.shortcutType,o=e.shortcutCharacter,i=Object(F.a)(e,["name","shortcutType","shortcutCharacter"]),c="RichText.ToolbarControls";return n&&(c+=".".concat(n)),r&&o&&(t=It.displayShortcut[r](o)),Object(d.createElement)(z.Fill,{name:c},Object(d.createElement)(z.ToolbarButton,Object(u.a)({},i,{shortcut:t})))}var tl=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).onInput=e.onInput.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onInput",value:function(e){e.inputType===this.props.inputType&&this.props.onInput()}},{key:"componentDidMount",value:function(){document.addEventListener("input",this.onInput,!0)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("input",this.onInput,!0)}},{key:"render",value:function(){return null}}]),t}(d.Component);function nl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function rl(e){if(!0===e||"p"===e||"li"===e)return!0===e?"p":e}var ol=Object(d.forwardRef)((function e(t,n){var r=t.children,o=t.tagName,a=t.value,l=t.onChange,f=t.isSelected,p=t.multiline,m=t.inlineToolbar,v=t.wrapperClassName,O=t.className,j=t.autocompleters,k=t.onReplace,y=t.placeholder,_=t.keepPlaceholderOnFocus,E=t.allowedFormats,S=t.formattingControls,w=t.withoutInteractiveFormatting,C=t.onRemove,I=t.onMerge,x=t.onSplit,B=t.__unstableOnSplitMiddle,T=t.identifier,P=t.start,N=t.reversed,L=t.style,R=t.preserveWhiteSpace,A=t.__unstableEmbedURLOnPaste,H=Object(F.a)(t,["children","tagName","value","onChange","isSelected","multiline","inlineToolbar","wrapperClassName","className","autocompleters","onReplace","placeholder","keepPlaceholderOnFocus","allowedFormats","formattingControls","withoutInteractiveFormatting","onRemove","onMerge","onSplit","__unstableOnSplitMiddle","identifier","start","reversed","style","preserveWhiteSpace","__unstableEmbedURLOnPaste"]),V=Object(h.useInstanceId)(e);T=T||V;var U=Object(d.useRef)(),z=n||U,G=$(),K=G.clientId,W=G.onCaretVerticalPositionChange,q=G.isSelected,Y=Object(g.useSelect)((function(e){var t,n=e("core/block-editor"),r=n.isCaretWithinFormattedText,o=n.getSelectionStart,c=n.getSelectionEnd,a=n.getSettings,l=n.didAutomaticChange,u=n.__unstableGetBlockWithoutInnerBlocks,b=n.isMultiSelecting,p=n.hasMultiSelection,h=o(),m=c(),g=a(),v=g.__experimentalCanUserUseUnfilteredHTML,O=g.__experimentalUndo;void 0===f?t=h.clientId===K&&h.attributeKey===T:f&&(t=h.clientId===K);var j={};if("native"===d.Platform.OS){var k=K&&u(K);j={shouldBlurOnUnmount:k&&t&&Object(i.isUnmodifiedDefaultBlock)(k)}}return function(e){for(var t=1;t0,pe=a,he=l;Array.isArray(a)&&(pe=i.children.toHTML(a),he=function(e){return l(i.children.fromDOM(Object(c.__unstableCreateElement)(document,e).childNodes))});var me=Object(d.useCallback)((function(e,t){se(K,T,e,t)}),[K,T]),ge=Object(d.useCallback)((function(e){var t=e.value,n=e.isReverse;I&&I(!n),C&&Object(c.isEmpty)(t)&&n&&C(!n)}),[I,C]),ve=Object(d.useCallback)((function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(k&&x){var n=[],r=Object(c.split)(e),o=Object(M.a)(r,2),i=o[0],a=o[1],l=t.length>0;l&&Object(c.isEmpty)(i)||n.push(x(Object(c.toHTMLString)({value:i,multilineTag:de}))),l?n.push.apply(n,Object(D.a)(t)):B&&n.push(B()),!l&&B&&Object(c.isEmpty)(a)||n.push(x(Object(c.toHTMLString)({value:a,multilineTag:de})));var s=l?n.length-1:1;k(n,s)}}),[k,x,de,B]),Oe=Object(d.useCallback)((function(e){var t=e.value,n=e.onChange,r=e.shiftKey,o=k&&x;if(k){var a=Object(i.getBlockTransforms)("from").filter((function(e){return"enter"===e.type})),l=Object(i.findTransform)(a,(function(e){return e.regExp.test(t.text)}));l&&(k([l.transform({content:t.text})]),ue())}p?r?n(Object(c.insert)(t,"\n")):o&&Object(c.__unstableIsEmptyLine)(t)?ve(t):n(Object(c.__unstableInsertLineSeparator)(t)):r||!o?n(Object(c.insert)(t,"\n")):ve(t)}),[k,x,ue,p,ve]),je=Object(d.useCallback)((function(e){var t=e.value,n=e.onChange,r=e.html,a=e.plainText,l=e.files,s=e.activeFormats;if(l&&l.length&&!r){var u=Object(i.pasteHandler)({HTML:Ya(l),mode:"BLOCKS",tagName:o});return window.console.log("Received items:\n\n",l),void(k&&Object(c.isEmpty)(t)?k(u):ve(t,u))}var d=k&&x?"AUTO":"INLINE";A&&Object(c.isEmpty)(t)&&Object(xt.isURL)(a.trim())&&(d="BLOCKS");var f=Object(i.pasteHandler)({HTML:r,plainText:a,mode:d,tagName:o,canUserUseUnfilteredHTML:X});if("string"==typeof f){var b=Object(c.create)({html:f});if(s.length)for(var h=b.formats.length;h--;)b.formats[h]=[].concat(Object(D.a)(s),Object(D.a)(b.formats[h]||[]));p&&(b=Object(c.replace)(b,/\n+/g,c.__UNSTABLE_LINE_SEPARATOR)),n(Object(c.insert)(t,b))}else f.length>0&&(k&&Object(c.isEmpty)(t)?k(f):ve(t,f))}),[o,k,x,ve,A,X,p]),ke=Object(d.useCallback)((function(e,t){if(k){var n=e.start,r=e.text;if(" "===r.slice(n-1,n)){var o=r.slice(0,n).trim(),a=Object(i.getBlockTransforms)("from").filter((function(e){return"prefix"===e.type})),l=Object(i.findTransform)(a,(function(e){var t=e.prefix;return o===t}));if(l){var s=t(Object(c.slice)(e,n,r.length)),u=l.transform(s);k([u]),ue()}}}}),[k,ue]),ye=Object(d.createElement)(c.__experimentalRichText,Object(u.a)({},H,{clientId:K,identifier:T,ref:z,value:pe,onChange:he,selectionStart:J,selectionEnd:Q,onSelectionChange:me,tagName:o,className:b()("block-editor-rich-text__editable",O,{"keep-placeholder-on-focus":_}),placeholder:y,allowedFormats:fe,withoutInteractiveFormatting:w,onEnter:Oe,onDelete:ge,onPaste:je,__unstableIsSelected:ee,__unstableInputRule:ke,__unstableMultilineTag:de,__unstableIsCaretWithinFormattedText:Z,__unstableOnEnterFormattedText:ae,__unstableOnExitFormattedText:le,__unstableOnCreateUndoLevel:ce,__unstableMarkAutomaticChange:ue,__unstableDidAutomaticChange:te,__unstableUndo:re,style:L,preserveWhiteSpace:R,disabled:ne,start:P,reversed:N,onCaretVerticalPositionChange:W,blockIsSelected:void 0!==f?f:q,shouldBlurOnUnmount:oe}),(function(e){var t=e.isSelected,n=e.value,o=e.onChange,i=e.onFocus,c=e.Editable;return Object(d.createElement)(d.Fragment,null,r&&r({value:n,onChange:o,onFocus:i}),t&&be&&Object(d.createElement)(Ja,{inline:m,anchorRef:z.current}),t&&Object(d.createElement)(qa,null),Object(d.createElement)(Qe,{onReplace:k,completers:j,record:n,onChange:o,isSelected:t},(function(e){var t=e.listBoxId,n=e.activeId,r=e.onKeyDown;return Object(d.createElement)(c,{"aria-autocomplete":t?"list":void 0,"aria-owns":t,"aria-activedescendant":n,start:P,reversed:N,onKeyDown:r})})))}));return v?(La()("wp.blockEditor.RichText wrapperClassName prop",{alternative:"className prop or create your own wrapper div"}),Object(d.createElement)("div",{className:b()("block-editor-rich-text",v)},ye)):ye}));ol.Content=function(e){var t=e.value,n=e.tagName,r=e.multiline,o=Object(F.a)(e,["value","tagName","multiline"]);Array.isArray(t)&&(t=i.children.toHTML(t));var c=rl(r);!t&&c&&(t="<".concat(c,">"));var a=Object(d.createElement)(d.RawHTML,null,t);return n?Object(d.createElement)(n,Object(p.omit)(o,["format"]),a):a},ol.isEmpty=function(e){return!e||0===e.length},ol.Content.defaultProps={format:"string",value:""};var il=ol,cl=Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24"},Object(d.createElement)(z.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(d.createElement)(z.Path,{d:"M14.06 9.02l.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z"})),al=Object(d.createElement)(z.SVG,{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24"},Object(d.createElement)(z.Path,{d:"M6.5 1v21.5l6-6.5H21L6.5 1zm5.1 13l-3.1 3.4V5.9l7.8 8.1h-4.7z"}));var ll=function(){var e=Object(g.useSelect)((function(e){return e("core/block-editor").isNavigationMode()}),[]),t=Object(g.useDispatch)("core/block-editor").setNavigationMode;if(!Object(h.useViewportMatch)("medium"))return null;var n=function(e){t("edit"!==e)};return Object(d.createElement)(z.Dropdown,{renderToggle:function(t){var n=t.isOpen,r=t.onToggle;return Object(d.createElement)(z.Button,{icon:e?al:cl,"aria-expanded":n,onClick:r,label:Object(U.__)("Tools")})},renderContent:function(){return Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.NavigableMenu,{role:"menu","aria-label":Object(U.__)("Tools")},Object(d.createElement)(z.MenuItemsChoice,{value:e?"select":"edit",onSelect:n,choices:[{value:"edit",label:Object(d.createElement)(d.Fragment,null,cl,Object(U.__)("Edit"))},{value:"select",label:Object(d.createElement)(d.Fragment,null,al,Object(U.__)("Select"))}]})),Object(d.createElement)("div",{className:"block-editor-tool-selector__help"},Object(U.__)("Tools offer different interactions for block selection & editing. To select, press Escape, to go back to editing, press Enter.")))}})},sl=Object(d.createElement)(et.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"-2 -2 24 24"},Object(d.createElement)(et.Path,{d:"M18 9v2H6l4 4-1 2-7-7 7-7 1 2-4 4h12z"})),ul=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).toggle=e.toggle.bind(Object(C.a)(e)),e.submitLink=e.submitLink.bind(Object(C.a)(e)),e.state={expanded:!1},e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"toggle",value:function(){this.setState({expanded:!this.state.expanded})}},{key:"submitLink",value:function(e){e.preventDefault(),this.toggle()}},{key:"render",value:function(){var e=this.props,t=e.url,n=e.onChange,r=this.state.expanded,o=t?Object(U.__)("Edit link"):Object(U.__)("Insert link");return Object(d.createElement)("div",{className:"block-editor-url-input__button"},Object(d.createElement)(z.Button,{icon:ka.a,label:o,onClick:this.toggle,className:"components-toolbar__control",isPressed:!!t}),r&&Object(d.createElement)("form",{className:"block-editor-url-input__button-modal",onSubmit:this.submitLink},Object(d.createElement)("div",{className:"block-editor-url-input__button-modal-line"},Object(d.createElement)(z.Button,{className:"block-editor-url-input__back",icon:sl,label:Object(U.__)("Close"),onClick:this.toggle}),Object(d.createElement)(Ca,{value:t||"",onChange:n}),Object(d.createElement)(z.Button,{icon:Ea.a,label:Object(U.__)("Submit"),type:"submit"}))))}}]),t}(d.Component),dl=n("w95h"),fl=["noreferrer","noopener"],bl=Object(d.createElement)(z.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(d.createElement)(z.Path,{d:"M0,0h24v24H0V0z",fill:"none"}),Object(d.createElement)(z.Path,{d:"m19 5v14h-14v-14h14m0-2h-14c-1.1 0-2 0.9-2 2v14c0 1.1 0.9 2 2 2h14c1.1 0 2-0.9 2-2v-14c0-1.1-0.9-2-2-2z"}),Object(d.createElement)(z.Path,{d:"m14.14 11.86l-3 3.87-2.14-2.59-3 3.86h12l-3.86-5.14z"})),pl=function(e){var t=e.linkDestination,n=e.onChangeUrl,r=e.url,o=e.mediaType,i=void 0===o?"image":o,c=e.mediaUrl,a=e.mediaLink,l=e.linkTarget,s=e.linkClass,u=e.rel,f=Object(d.useState)(!1),b=Object(M.a)(f,2),h=b[0],m=b[1],g=Object(d.useCallback)((function(){m(!0)})),v=Object(d.useState)(!1),O=Object(M.a)(v,2),j=O[0],k=O[1],y=Object(d.useState)(null),_=Object(M.a)(y,2),E=_[0],S=_[1],w=Object(d.useRef)(null),C=function(e){e.stopPropagation()},I=function(e){[It.LEFT,It.DOWN,It.RIGHT,It.UP,It.BACKSPACE,It.ENTER].indexOf(e.keyCode)>-1&&e.stopPropagation()},x=Object(d.useCallback)((function(){"media"!==t&&"attachment"!==t||S(""),k(!0)})),B=Object(d.useCallback)((function(){k(!1)})),T=Object(d.useCallback)((function(){S(null),B(),m(!1)})),P=function(e){var t=e;return void 0===e||Object(p.isEmpty)(t)||Object(p.isEmpty)(t)||(Object(p.each)(fl,(function(e){var n=new RegExp("\\b"+e+"\\b","gi");t=t.replace(n,"")})),t!==e&&(t=t.trim()),Object(p.isEmpty)(t)&&(t=void 0)),t},N=Object(d.useCallback)((function(){return function(e){var t=w.current;t&&t.contains(e.target)||(m(!1),S(null),B())}})),L=Object(d.useCallback)((function(){return function(e){E&&n({href:E}),B(),S(null),e.preventDefault()}})),R=Object(d.useCallback)((function(){n({linkDestination:"none",href:""})})),A=function(){return[{linkDestination:"media",title:Object(U.__)("Media File"),url:"image"===i?c:void 0,icon:bl},{linkDestination:"attachment",title:Object(U.__)("Attachment Page"),url:"image"===i?a:void 0,icon:Object(d.createElement)(z.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(d.createElement)(z.Path,{d:"M0 0h24v24H0V0z",fill:"none"}),Object(d.createElement)(z.Path,{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"}))}]},D=Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.ToggleControl,{label:Object(U.__)("Open in new tab"),onChange:function(e){var t=function(e){var t=e?"_blank":void 0;return{linkTarget:t,rel:t||u?P(u):void 0}}(e);n(t)},checked:"_blank"===l}),Object(d.createElement)(z.TextControl,{label:Object(U.__)("Link Rel"),value:P(u)||"",onChange:function(e){n({rel:e})},onKeyPress:C,onKeyDown:I}),Object(d.createElement)(z.TextControl,{label:Object(U.__)("Link CSS Class"),value:s||"",onKeyPress:C,onKeyDown:I,onChange:function(e){n({linkClass:e})}})),F=null!==E?E:r,H=(Object(p.find)(A(),["linkDestination",t])||{}).title;return Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.Button,{icon:ka.a,className:"components-toolbar__control",label:r?Object(U.__)("Edit link"):Object(U.__)("Insert link"),"aria-expanded":h,onClick:g}),h&&Object(d.createElement)(Da,{onFocusOutside:N(),onClose:T,renderSettings:function(){return D},additionalControls:!F&&Object(d.createElement)(z.NavigableMenu,null,Object(p.map)(A(),(function(e){return Object(d.createElement)(z.MenuItem,{key:e.linkDestination,icon:e.icon,onClick:function(){var t,r,o;S(null),t=e.url,o=A(),r=t?(Object(p.find)(o,(function(e){return e.url===t}))||{linkDestination:"custom"}).linkDestination:"none",n({linkDestination:r,href:t}),B()}},e.title)})))},(!r||j)&&Object(d.createElement)(Da.LinkEditor,{className:"block-editor-format-toolbar__link-container-content",value:F,onChangeInputValue:S,onKeyDown:I,onKeyPress:C,onSubmit:L(),autocompleteRef:w}),r&&!j&&Object(d.createElement)(d.Fragment,null,Object(d.createElement)(Da.LinkViewer,{className:"block-editor-format-toolbar__link-container-content",onKeyPress:C,url:r,onEditLinkClick:x,urlLabel:H}),Object(d.createElement)(z.Button,{icon:dl.a,label:Object(U.__)("Remove link"),onClick:R}))))},hl=Object(z.createSlotFill)("__experimentalBlockSettingsMenuFirstItem"),ml=hl.Fill,gl=hl.Slot;ml.Slot=gl;var vl=ml,Ol=Object(z.createSlotFill)("__experimentalBlockSettingsMenuPluginsExtension"),jl=Ol.Fill,kl=Ol.Slot;jl.Slot=kl;var yl=jl,_l=function(e){var t=e.icon,n=e.label,r=e.onPress;return Object(d.createElement)(z.Button,{onClick:r},t," ",n)},El=function(e){var t=e.children;return Object(d.createElement)(tc,null,t)};function Sl(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var wl=[{name:"About",icon:"👋",content:'\n\t\t\t\x3c!-- wp:paragraph {"align":"left"} --\x3e\n\t\t\t

    Visitors will want to know who is on the other side of the page. Use this space to write about yourself, your site, your business, or anything you want. Use the testimonials below to quote others, talking about the same thing – in their own words.

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:paragraph {"align":"left"} --\x3e\n\t\t\t

    This is sample content, included with the template to illustrate its features. Remove or replace it with your own words and media.

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:heading {"align":"center","level":3} --\x3e\n\t\t\t

    What People Say

    \n\t\t\t\x3c!-- /wp:heading --\x3e\n\n\t\t\t\x3c!-- wp:quote --\x3e\n\t\t\t

    The way to get started is to quit talking and begin doing.

    Walt Disney
    \n\t\t\t\x3c!-- /wp:quote --\x3e\n\n\t\t\t\x3c!-- wp:quote --\x3e\n\t\t\t

    It is our choices, Harry, that show what we truly are, far more than our abilities.

    J. K. Rowling
    \n\t\t\t\x3c!-- /wp:quote --\x3e\n\n\t\t\t\x3c!-- wp:quote --\x3e\n\t\t\t

    Don\'t cry because it\'s over, smile because it happened.

    Dr. Seuss
    \n\t\t\t\x3c!-- /wp:quote --\x3e\n\n\t\t\t\x3c!-- wp:separator {"className":"is-style-wide"} --\x3e\n\t\t\t
    \n\t\t\t\x3c!-- /wp:separator --\x3e\n\n\t\t\t\x3c!-- wp:heading {"align":"center"} --\x3e\n\t\t\t

    Let’s build something together.

    \n\t\t\t\x3c!-- /wp:heading --\x3e\n\n\t\t\t\x3c!-- wp:paragraph {"align":"center","textColor":"primary"} --\x3e\n\t\t\t

    Get in touch!

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:separator {"className":"is-style-wide"} --\x3e\n\t\t\t
    \n\t\t\t\x3c!-- /wp:separator --\x3e\n\t\t'},{name:"Contact",icon:"✉️",content:'\n\t\t\t\x3c!-- wp:paragraph {"align":"left"} --\x3e\n\t\t\t

    Let\'s talk 👋 Don\'t hesitate to reach out with the contact information below, or send a message using the form.

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:heading {"align":"left"} --\x3e\n\t\t\t

    Get in Touch

    \n\t\t\t\x3c!-- /wp:heading --\x3e\n\n\t\t\t\x3c!-- wp:paragraph --\x3e\n\t\t\t

    10 Street Road

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:paragraph --\x3e\n\t\t\t

    City, 10100

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:paragraph --\x3e\n\t\t\t

    USA

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:paragraph --\x3e\n\t\t\t

    mail@example.com

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\n\t\t\t\x3c!-- wp:paragraph --\x3e\n\t\t\t

    (555) 555 1234

    \n\t\t\t\x3c!-- /wp:paragraph --\x3e\n\t\t'}],Cl=V()((function(){return wl.map((function(e){return function(e){for(var t=1;t0,selectedBlockName:l,selectedBlockClientId:a,blockType:s}}))((function(e){var t=e.blockType,n=e.count,r=e.hasBlockStyles,o=e.selectedBlockClientId,c=e.selectedBlockName,a=e.showNoBlockSelectedMessage,l=void 0===a||a,s=Object(z.__experimentalUseSlot)(sa.slotName),u=Boolean(s.fills&&s.fills.length);if(n>1)return Object(d.createElement)(Hl,null);var f=c===Object(i.getUnregisteredTypeHandlerName)();return t&&o&&!f?Object(d.createElement)("div",{className:"block-editor-block-inspector"},Object(d.createElement)(dc,{blockType:t}),r&&Object(d.createElement)("div",null,Object(d.createElement)(z.PanelBody,{title:Object(U.__)("Styles"),initialOpen:!1},Object(d.createElement)(Ml,{clientId:o}),Object(d.createElement)(Vl,{blockName:t.name}))),Object(d.createElement)(xe.Slot,{bubblesVirtually:!0}),Object(d.createElement)("div",null,u&&Object(d.createElement)(z.PanelBody,{className:"block-editor-block-inspector__advanced",title:Object(U.__)("Advanced"),initialOpen:!1},Object(d.createElement)(sa.Slot,{bubblesVirtually:!0}))),Object(d.createElement)(Pl,{key:"back"})):l?Object(d.createElement)("span",{className:"block-editor-block-inspector__no-blocks"},Object(U.__)("No block selected.")):null}));function zl(e,t,n,r,o,i,c,a){var l=n+1,s=function(e){return"up"===e?"horizontal"===c?a?"right":"left":"up":"down"===e?"horizontal"===c?a?"left":"right":"down":null};if(e>1)return function(e,t,n,r,o){var i=t+1;if(o<0&&n)return Object(U.__)("Blocks cannot be moved up as they are already at the top");if(o>0&&r)return Object(U.__)("Blocks cannot be moved down as they are already at the bottom");if(o<0&&!n)return Object(U.sprintf)(Object(U._n)("Move %1$d block from position %2$d up by one place","Move %1$d blocks from position %2$d up by one place",e),e,i);if(o>0&&!r)return Object(U.sprintf)(Object(U._n)("Move %1$d block from position %2$d down by one place","Move %1$d blocks from position %2$d down by one place",e),e,i)}(e,n,r,o,i);if(r&&o)return Object(U.sprintf)(Object(U.__)("Block %s is the only block, and cannot be moved"),t);if(i>0&&!o){var u=s("down");if("down"===u)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d down to position %3$d"),t,l,l+1);if("left"===u)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d left to position %3$d"),t,l,l+1);if("right"===u)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d right to position %3$d"),t,l,l+1)}if(i>0&&o){var d=s("down");if("down"===d)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the end of the content and can’t be moved down"),t);if("left"===d)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the end of the content and can’t be moved left"),t);if("right"===d)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the end of the content and can’t be moved right"),t)}if(i<0&&!r){var f=s("up");if("up"===f)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d up to position %3$d"),t,l,l-1);if("left"===f)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d left to position %3$d"),t,l,l-1);if("right"===f)return Object(U.sprintf)(Object(U.__)("Move %1$s block from position %2$d right to position %3$d"),t,l,l-1)}if(i<0&&r){var b=s("up");if("up"===b)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the beginning of the content and can’t be moved up"),t);if("left"===b)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the beginning of the content and can’t be moved left"),t);if("right"===b)return Object(U.sprintf)(Object(U.__)("Block %1$s is at the beginning of the content and can’t be moved right"),t)}}var Gl=Object(d.createElement)(z.SVG,{width:"18",height:"18",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg"},Object(d.createElement)(z.Path,{d:"M4.5 9l5.6-5.7 1.4 1.5L7.3 9l4.2 4.2-1.4 1.5L4.5 9z"})),Kl=Object(d.createElement)(z.SVG,{width:"18",height:"18",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg"},Object(d.createElement)(z.Path,{d:"M13.5 9L7.9 3.3 6.5 4.8 10.7 9l-4.2 4.2 1.4 1.5L13.5 9z"})),Wl=Object(d.createElement)(z.SVG,{width:"18",height:"18",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 18 18"},Object(d.createElement)(z.Path,{d:"M13,8c0.6,0,1-0.4,1-1s-0.4-1-1-1s-1,0.4-1,1S12.4,8,13,8z M5,6C4.4,6,4,6.4,4,7s0.4,1,1,1s1-0.4,1-1S5.6,6,5,6z M5,10 c-0.6,0-1,0.4-1,1s0.4,1,1,1s1-0.4,1-1S5.6,10,5,10z M13,10c-0.6,0-1,0.4-1,1s0.4,1,1,1s1-0.4,1-1S13.6,10,13,10z M9,6 C8.4,6,8,6.4,8,7s0.4,1,1,1s1-0.4,1-1S9.6,6,9,6z M9,10c-0.6,0-1,0.4-1,1s0.4,1,1,1s1-0.4,1-1S9.6,10,9,10z"})),ql=n("XgzB"),$l=function(e){var t=e.children,n=e.clientIds,r=Object(g.useSelect)((function(e){var t=e("core/block-editor"),r=t.getBlockIndex,o=t.getBlockRootClientId,i=t.getTemplateLock,c=Object(p.castArray)(n),a=1===c.length?o(c[0]):null,l=a?i(a):null;return{index:r(c[0],a),srcRootClientId:a,isDraggable:1===c.length&&"all"!==l}}),[n]),o=r.srcRootClientId,i=r.index,c=r.isDraggable,a=Object(d.useRef)(!1),l=Object(g.useDispatch)("core/block-editor"),s=l.startDraggingBlocks,u=l.stopDraggingBlocks;if(Object(d.useEffect)((function(){return function(){a.current&&u()}}),[]),!c)return null;var f=Object(p.castArray)(n),b="block-".concat(f[0]),h={type:"block",srcIndex:i,srcClientId:f[0],srcRootClientId:o};return Object(d.createElement)(z.Draggable,{elementId:b,transferData:h,onDragStart:function(){s(),a.current=!0},onDragEnd:function(){u(),a.current=!1}},(function(e){var n=e.onDraggableStart,r=e.onDraggableEnd;return t({onDraggableStart:n,onDraggableEnd:r})}))},Yl=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).state={isFocused:!1},e.onFocus=e.onFocus.bind(Object(C.a)(e)),e.onBlur=e.onBlur.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"onFocus",value:function(){this.setState({isFocused:!0})}},{key:"onBlur",value:function(){this.setState({isFocused:!1})}},{key:"render",value:function(){var e=this.props,t=e.onMoveUp,n=e.onMoveDown,r=e.__experimentalOrientation,o=e.isRTL,i=e.isFirst,c=e.isLast,a=e.clientIds,l=e.blockType,s=e.firstIndex,u=e.isLocked,f=e.instanceId,h=e.isHidden,m=e.rootClientId,g=e.hideDragHandle,v=this.state.isFocused,O=Object(p.castArray)(a).length;if(u||i&&c&&!m)return null;var j=function(e){return"up"===e?"horizontal"===r?o?Kl:Gl:ql.a:"down"===e?"horizontal"===r?o?Gl:Kl:Ra.a:null},k=function(e){return"up"===e?"horizontal"===r?o?Object(U.__)("Move right"):Object(U.__)("Move left"):Object(U.__)("Move up"):"down"===e?"horizontal"===r?o?Object(U.__)("Move left"):Object(U.__)("Move right"):Object(U.__)("Move down"):null};return Object(d.createElement)(z.ToolbarGroup,{className:b()("block-editor-block-mover",{"is-visible":v||!h,"is-horizontal":"horizontal"===r})},Object(d.createElement)(z.Button,{className:"block-editor-block-mover__control",onClick:i?null:t,icon:j("up"),label:k("up"),"aria-describedby":"block-editor-block-mover__up-description-".concat(f),"aria-disabled":i,onFocus:this.onFocus,onBlur:this.onBlur}),!g&&Object(d.createElement)($l,{clientIds:a},(function(e){var t=e.onDraggableStart,n=e.onDraggableEnd;return Object(d.createElement)(z.Button,{icon:Wl,className:"block-editor-block-mover__control-drag-handle block-editor-block-mover__control","aria-hidden":"true",tabIndex:"-1",onDragStart:t,onDragEnd:n,draggable:!0})})),Object(d.createElement)(z.Button,{className:"block-editor-block-mover__control",onClick:c?null:n,icon:j("down"),label:k("down"),"aria-describedby":"block-editor-block-mover__down-description-".concat(f),"aria-disabled":c,onFocus:this.onFocus,onBlur:this.onBlur}),Object(d.createElement)("span",{id:"block-editor-block-mover__up-description-".concat(f),className:"block-editor-block-mover__description"},zl(O,l&&l.title,s,i,c,-1,r,o)),Object(d.createElement)("span",{id:"block-editor-block-mover__down-description-".concat(f),className:"block-editor-block-mover__description"},zl(O,l&&l.title,s,i,c,1,r,o)))}}]),t}(d.Component),Xl=Object(h.compose)(Object(g.withSelect)((function(e,t){var n=t.clientIds,r=e("core/block-editor"),o=r.getBlock,c=r.getBlockIndex,a=r.getTemplateLock,l=r.getBlockRootClientId,s=r.getBlockOrder,u=Object(p.castArray)(n),d=Object(p.first)(u),f=o(d),b=l(Object(p.first)(u)),h=s(b),m=c(d,b),g=c(Object(p.last)(u),b),v=(0,e("core/block-editor").getSettings)().isRTL;return{blockType:f?Object(i.getBlockType)(f.name):null,isLocked:"all"===a(b),rootClientId:b,firstIndex:m,isRTL:v,isFirst:0===m,isLast:g===h.length-1}})),Object(g.withDispatch)((function(e,t){var n=t.clientIds,r=t.rootClientId,o=e("core/block-editor"),i=o.moveBlocksDown,c=o.moveBlocksUp;return{onMoveDown:Object(p.partial)(i,n,r),onMoveUp:Object(p.partial)(c,n,r)}})),h.withInstanceId)(Yl),Zl=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).bindContainer=e.bindContainer.bind(Object(C.a)(e)),e.clearSelectionIfFocusTarget=e.clearSelectionIfFocusTarget.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"bindContainer",value:function(e){this.container=e}},{key:"clearSelectionIfFocusTarget",value:function(e){var t=this.props,n=t.hasSelectedBlock,r=t.hasMultiSelection,o=t.clearSelectedBlock,i=n||r;e.target===this.container&&i&&o()}},{key:"render",value:function(){return Object(d.createElement)("div",Object(u.a)({tabIndex:-1,onFocus:this.clearSelectionIfFocusTarget,ref:this.bindContainer},Object(p.omit)(this.props,["clearSelectedBlock","hasSelectedBlock","hasMultiSelection"])))}}]),t}(d.Component),Jl=Object(h.compose)([Object(g.withSelect)((function(e){var t=e("core/block-editor"),n=t.hasSelectedBlock,r=t.hasMultiSelection;return{hasSelectedBlock:n(),hasMultiSelection:r()}})),Object(g.withDispatch)((function(e){return{clearSelectedBlock:e("core/block-editor").clearSelectedBlock}}))])(Zl),Ql=Object(d.createElement)(et.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"-2 -2 24 24"},Object(d.createElement)(et.Path,{d:"M12 4h3c.6 0 1 .4 1 1v1H3V5c0-.6.5-1 1-1h3c.2-1.1 1.3-2 2.5-2s2.3.9 2.5 2zM8 4h3c-.2-.6-.9-1-1.5-1S8.2 3.4 8 4zM4 7h11l-.9 10.1c0 .5-.5.9-1 .9H5.9c-.5 0-.9-.4-1-.9L4 7z"}));var es=Object(h.compose)([Object(g.withSelect)((function(e,t){var n=e("core/block-editor"),r=n.canInsertBlockType,o=n.getBlockRootClientId,c=n.getBlocksByClientId,a=n.getTemplateLock,l=e("core/blocks").getDefaultBlockName,s=c(t.clientIds),u=o(t.clientIds[0]);return{blocks:s,canDuplicate:Object(p.every)(s,(function(e){return!!e&&Object(i.hasBlockSupport)(e.name,"multiple",!0)&&r(e.name,u)})),canInsertDefaultBlock:r(l(),u),extraProps:t,isLocked:!!a(u),rootClientId:u}})),Object(g.withDispatch)((function(e,t,n){var r=n.select,o=t.clientIds,c=t.blocks,a=e("core/block-editor"),l=a.removeBlocks,s=a.replaceBlocks,u=a.duplicateBlocks,d=a.insertAfterBlock,f=a.insertBeforeBlock;return{onDuplicate:function(){return u(o)},onRemove:function(){l(o)},onInsertBefore:function(){f(Object(p.first)(Object(p.castArray)(o)))},onInsertAfter:function(){d(Object(p.last)(Object(p.castArray)(o)))},onGroup:function(){if(c.length){var e=(0,r("core/blocks").getGroupingBlockName)(),t=Object(i.switchToBlockType)(c,e);t&&s(o,t)}},onUngroup:function(){if(c.length){var e=c[0].innerBlocks;e.length&&s(o,e)}}}}))])((function(e){var t=e.canDuplicate,n=e.canInsertDefaultBlock;return(0,e.children)({canDuplicate:t,canInsertDefaultBlock:n,isLocked:e.isLocked,onDuplicate:e.onDuplicate,onGroup:e.onGroup,onInsertAfter:e.onInsertAfter,onInsertBefore:e.onInsertBefore,onRemove:e.onRemove,onUngroup:e.onUngroup})}));var ts=Object(h.compose)([Object(g.withSelect)((function(e,t){var n=t.clientId,r=e("core/block-editor"),o=r.getBlock,c=r.getBlockMode,a=r.getSettings,l=o(n),s=a().codeEditingEnabled;return{mode:c(n),blockType:l?Object(i.getBlockType)(l.name):null,isCodeEditingEnabled:s}})),Object(g.withDispatch)((function(e,t){var n=t.onToggle,r=void 0===n?p.noop:n,o=t.clientId;return{onToggleMode:function(){e("core/block-editor").toggleBlockMode(o),r()}}}))])((function(e){var t=e.blockType,n=e.mode,r=e.onToggleMode,o=e.small,c=void 0!==o&&o,a=e.isCodeEditingEnabled,l=void 0===a||a;if(!Object(i.hasBlockSupport)(t,"html",!0)||!l)return null;var s="visual"===n?Object(U.__)("Edit as HTML"):Object(U.__)("Edit visually");return Object(d.createElement)(z.MenuItem,{onClick:r,icon:"html"},!c&&s)}));function ns(e){var t=e.shouldRender,n=e.onClick,r=e.small;if(!t)return null;var o=Object(U.__)("Convert to Blocks");return Object(d.createElement)(z.MenuItem,{onClick:n,icon:"screenoptions"},!r&&o)}var rs=Object(h.compose)(Object(g.withSelect)((function(e,t){var n=t.clientId,r=e("core/block-editor").getBlock(n);return{block:r,shouldRender:r&&"core/html"===r.name}})),Object(g.withDispatch)((function(e,t){var n=t.block;return{onClick:function(){return e("core/block-editor").replaceBlocks(n.clientId,Object(i.rawHandler)({HTML:Object(i.getBlockContent)(n)}))}}})))(ns),os=Object(h.compose)(Object(g.withSelect)((function(e,t){var n=t.clientId,r=e("core/block-editor").getBlock(n);return{block:r,shouldRender:r&&r.name===Object(i.getFreeformContentHandlerName)()}})),Object(g.withDispatch)((function(e,t){var n=t.block;return{onClick:function(){return e("core/block-editor").replaceBlocks(n.clientId,Object(i.rawHandler)({HTML:Object(i.serialize)(n)}))}}})))(ns),is={className:"block-editor-block-settings-menu__popover",position:"bottom right"};var cs=function(e){var t=e.clientIds,n=Object(p.castArray)(t),r=n.length,o=n[0],i=Object(g.useSelect)((function(e){var t=e("core/keyboard-shortcuts").getShortcutRepresentation;return{duplicate:t("core/block-editor/duplicate"),remove:t("core/block-editor/remove"),insertAfter:t("core/block-editor/insert-after"),insertBefore:t("core/block-editor/insert-before")}}),[]);return Object(d.createElement)(es,{clientIds:t},(function(e){var n=e.canDuplicate,c=e.canInsertDefaultBlock,a=e.isLocked,l=e.onDuplicate,s=e.onInsertAfter,u=e.onInsertBefore,f=e.onRemove;return Object(d.createElement)(z.Toolbar,null,Object(d.createElement)(z.DropdownMenu,{icon:Jo.a,label:Object(U.__)("More options"),className:"block-editor-block-settings-menu",popoverProps:is},(function(e){var b=e.onClose;return Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.MenuGroup,null,Object(d.createElement)(vl.Slot,{fillProps:{onClose:b}}),1===r&&Object(d.createElement)(os,{clientId:o}),1===r&&Object(d.createElement)(rs,{clientId:o}),n&&Object(d.createElement)(z.MenuItem,{onClick:Object(p.flow)(b,l),icon:"admin-page",shortcut:i.duplicate},Object(U.__)("Duplicate")),c&&Object(d.createElement)(d.Fragment,null,Object(d.createElement)(z.MenuItem,{onClick:Object(p.flow)(b,u),icon:"insert-before",shortcut:i.insertBefore},Object(U.__)("Insert Before")),Object(d.createElement)(z.MenuItem,{onClick:Object(p.flow)(b,s),icon:"insert-after",shortcut:i.insertAfter},Object(U.__)("Insert After"))),1===r&&Object(d.createElement)(ts,{clientId:o,onToggle:b}),Object(d.createElement)(yl.Slot,{fillProps:{clientIds:t,onClose:b}})),Object(d.createElement)(z.MenuGroup,null,!a&&Object(d.createElement)(z.MenuItem,{onClick:Object(p.flow)(b,f),icon:Ql,shortcut:i.remove},Object(U._n)("Remove Block","Remove Blocks",r))))})))}))};function as(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ls(e){for(var t=1;t0}})),Object(g.withDispatch)((function(e,t){return{onTransform:function(n,r){e("core/block-editor").replaceBlocks(t.clientIds,Object(i.switchToBlockType)(n,r))}}})))(ss);var ds=Object(g.withSelect)((function(e){var t=e("core/block-editor").getMultiSelectedBlockClientIds();return{isMultiBlockSelection:t.length>1,selectedBlockClientIds:t}}))((function(e){var t=e.isMultiBlockSelection,n=e.selectedBlockClientIds;return t?Object(d.createElement)(us,{key:"switcher",clientIds:n}):null}));function fs(e){var t=e.hideDragHandle,n=Object(g.useSelect)((function(e){var t=e("core/block-editor"),n=t.getBlockMode,r=t.getSelectedBlockClientIds,o=t.isBlockValid,i=t.getBlockRootClientId,c=t.getBlockListSettings,a=r(),l=i(a[0]),s=c(l)||{},u=s.__experimentalMoverDirection,d=s.__experimentalUIParts,f=void 0===d?{}:d;return{blockClientIds:a,rootClientId:l,isValid:1===a.length?o(a[0]):null,mode:1===a.length?n(a[0]):null,moverDirection:u,hasMovers:f.hasMovers}}),[]),r=n.blockClientIds,o=n.isValid,i=n.mode,c=n.moverDirection,a=n.hasMovers,l=void 0===a||a;return 0===r.length?null:r.length>1?Object(d.createElement)("div",{className:"block-editor-block-toolbar"},l&&Object(d.createElement)(Xl,{clientIds:r,__experimentalOrientation:c,hideDragHandle:t}),Object(d.createElement)(ds,null),Object(d.createElement)(cs,{clientIds:r})):Object(d.createElement)("div",{className:"block-editor-block-toolbar"},l&&Object(d.createElement)(Xl,{clientIds:r,__experimentalOrientation:c,hideDragHandle:t}),"visual"===i&&o&&Object(d.createElement)(d.Fragment,null,Object(d.createElement)(us,{clientIds:r}),Object(d.createElement)(gt.Slot,{bubblesVirtually:!0,className:"block-editor-block-toolbar__slot"}),Object(d.createElement)(yt.Slot,{bubblesVirtually:!0,className:"block-editor-block-toolbar__slot"})),Object(d.createElement)(cs,{clientIds:r}))}var bs=Object(h.compose)([Object(g.withDispatch)((function(e,t,n){var r=(0,n.select)("core/block-editor"),o=r.getBlocksByClientId,c=r.getSelectedBlockClientIds,a=r.hasMultiSelection,l=r.getSettings,s=e("core/block-editor"),u=s.removeBlocks,d=s.replaceBlocks,f=l().__experimentalCanUserUseUnfilteredHTML;return{handler:function(e){var t=c();if(0!==t.length&&(a()||!Object(Zo.documentHasSelection)())){if(e.preventDefault(),"copy"===e.type||"cut"===e.type){var n=o(t),r=Object(i.serialize)(n);e.clipboardData.setData("text/plain",r),e.clipboardData.setData("text/html",r)}if("cut"===e.type)u(t);else if("paste"===e.type){var l=function(e){var t=e.clipboardData,n=t.items,r=t.files;n=Object(p.isNil)(n)?[]:n,r=Object(p.isNil)(r)?[]:r;var o="",i="";try{o=t.getData("text/plain"),i=t.getData("text/html")}catch(e){try{i=t.getData("Text")}catch(e){return}}return r=Array.from(r),Array.from(n).forEach((function(e){if(e.getAsFile){var t=e.getAsFile();if(t){var n=t.name,o=t.type,i=t.size;Object(p.find)(r,{name:n,type:o,size:i})||r.push(t)}}})),(r=r.filter((function(e){var t=e.type;return/^image\/(?:jpe?g|png|gif)$/.test(t)}))).length&&!i&&(i=r.map((function(e){return'')})).join(""),o=""),{html:i,plainText:o}}(e),s=l.plainText,b=l.html,h=Object(i.pasteHandler)({HTML:b,plainText:s,mode:"BLOCKS",canUserUseUnfilteredHTML:f});d(t,h)}}}}}))])((function(e){var t=e.children,n=e.handler;return Object(d.createElement)("div",{onCopy:n,onCut:n,onPaste:n},t)}));function ps(){var e=Object(g.useSelect)((function(e){var t=e("core/block-editor"),n=t.getSelectedBlockClientIds,r=t.getBlockOrder;return{clientIds:n(),rootBlocksClientIds:r()}}),[]),t=e.clientIds,n=e.rootBlocksClientIds,r=Object(g.useDispatch)("core/block-editor"),o=r.duplicateBlocks,i=r.removeBlocks,c=r.insertAfterBlock,a=r.insertBeforeBlock,s=r.multiSelect,u=r.clearSelectedBlock;return Object(l.useShortcut)("core/block-editor/duplicate",Object(d.useCallback)((function(e){e.preventDefault(),o(t)}),[t,o]),{bindGlobal:!0,isDisabled:0===t.length}),Object(l.useShortcut)("core/block-editor/remove",Object(d.useCallback)((function(e){e.preventDefault(),i(t)}),[t,i]),{bindGlobal:!0,isDisabled:0===t.length}),Object(l.useShortcut)("core/block-editor/insert-after",Object(d.useCallback)((function(e){e.preventDefault(),c(Object(p.last)(t))}),[t,c]),{bindGlobal:!0,isDisabled:0===t.length}),Object(l.useShortcut)("core/block-editor/insert-before",Object(d.useCallback)((function(e){e.preventDefault(),a(Object(p.first)(t))}),[t,a]),{bindGlobal:!0,isDisabled:0===t.length}),Object(l.useShortcut)("core/block-editor/delete-multi-selection",Object(d.useCallback)((function(e){e.preventDefault(),i(t)}),[t,i]),{isDisabled:t.length<1}),Object(l.useShortcut)("core/block-editor/select-all",Object(d.useCallback)((function(e){e.preventDefault(),s(Object(p.first)(n),Object(p.last)(n))}),[n,s])),Object(l.useShortcut)("core/block-editor/unselect",Object(d.useCallback)((function(e){e.preventDefault(),u(),window.getSelection().removeAllRanges()}),[t,u]),{isDisabled:t.length<2}),null}ps.Register=function(){var e=Object(g.useDispatch)("core/keyboard-shortcuts").registerShortcut;return Object(d.useEffect)((function(){e({name:"core/block-editor/duplicate",category:"block",description:Object(U.__)("Duplicate the selected block(s)."),keyCombination:{modifier:"primaryShift",character:"d"}}),e({name:"core/block-editor/remove",category:"block",description:Object(U.__)("Remove the selected block(s)."),keyCombination:{modifier:"access",character:"z"}}),e({name:"core/block-editor/insert-before",category:"block",description:Object(U.__)("Insert a new block before the selected block(s)."),keyCombination:{modifier:"primaryAlt",character:"t"}}),e({name:"core/block-editor/insert-after",category:"block",description:Object(U.__)("Insert a new block after the selected block(s)."),keyCombination:{modifier:"primaryAlt",character:"y"}}),e({name:"core/block-editor/delete-multi-selection",category:"block",description:Object(U.__)("Remove multiple selected blocks."),keyCombination:{character:"del"},aliases:[{character:"backspace"}]}),e({name:"core/block-editor/select-all",category:"selection",description:Object(U.__)("Select all text when typing. Press again to select all blocks."),keyCombination:{modifier:"primary",character:"a"}}),e({name:"core/block-editor/unselect",category:"selection",description:Object(U.__)("Clear selection."),keyCombination:{character:"escape"}}),e({name:"core/block-editor/focus-toolbar",category:"global",description:Object(U.__)("Navigate to the nearest toolbar."),keyCombination:{modifier:"alt",character:"F10"}})}),[e]),null};var hs=ps;function ms(){var e=Object(g.useSelect)((function(e){var t=e("core/block-editor"),n=t.getBlockSelectionEnd,r=t.hasMultiSelection,o=t.isMultiSelecting;return{selectionEnd:n(),isMultiSelection:r(),isMultiSelecting:o()}}),[]),t=e.isMultiSelection,n=e.selectionEnd,r=e.isMultiSelecting;return Object(d.useEffect)((function(){if(n&&!r&&t){var e=fi(n);if(e){var o=Object(Zo.getScrollContainer)(e);o&&Ct()(e,o,{onlyScrollIfNeeded:!0})}}}),[t,n,r]),null}var gs=[It.UP,It.RIGHT,It.DOWN,It.LEFT,It.ENTER,It.BACKSPACE];var vs=Object(h.withSafeTimeout)((function(e){var t=e.children,n=e.setTimeout,r=Object(d.useRef)(),o=Object(d.useRef)(),i=Object(g.useSelect)((function(e){return e("core/block-editor").isTyping()})),c=Object(g.useDispatch)("core/block-editor"),a=c.startTyping,l=c.stopTyping;function s(e){var t=e?"addEventListener":"removeEventListener";document[t]("selectionchange",f),document[t]("mousemove",u)}function u(e){var t=e.clientX,n=e.clientY;if(o.current){var r=o.current,i=r.clientX,c=r.clientY;i===t&&c===n||l()}o.current={clientX:t,clientY:n}}function f(){var e=window.getSelection();e.rangeCount>0&&e.getRangeAt(0).collapsed||l()}function b(e){var t=e.type,n=e.target;!i&&Object(Zo.isTextField)(n)&&r.current.contains(n)&&("keydown"!==t||function(e){var t=e.keyCode;return!e.shiftKey&&Object(p.includes)(gs,t)}(e))&&a()}return Object(d.useEffect)((function(){return s(i),function(){return s(!1)}}),[i]),Object(d.createElement)("div",{ref:r,onFocus:function(e){var t=e.target;n((function(){i&&!Object(Zo.isTextField)(t)&&l()}))},onKeyPress:b,onKeyDown:Object(p.over)([b,function(e){i&&e.keyCode===It.ESCAPE&&l()}])},t)}));function Os(){return La()("PreserveScrollInReorder component",{hint:"This behavior is now built-in the block list"}),null}var js=-1!==window.navigator.userAgent.indexOf("Trident"),ks=new Set([It.UP,It.DOWN,It.LEFT,It.RIGHT]),ys=function(e){function t(){var e;return Object(_.a)(this,t),(e=Object(S.a)(this,Object(w.a)(t).apply(this,arguments))).ref=Object(d.createRef)(),e.onKeyDown=e.onKeyDown.bind(Object(C.a)(e)),e.addSelectionChangeListener=e.addSelectionChangeListener.bind(Object(C.a)(e)),e.computeCaretRectOnSelectionChange=e.computeCaretRectOnSelectionChange.bind(Object(C.a)(e)),e.maintainCaretPosition=e.maintainCaretPosition.bind(Object(C.a)(e)),e.computeCaretRect=e.computeCaretRect.bind(Object(C.a)(e)),e.onScrollResize=e.onScrollResize.bind(Object(C.a)(e)),e.isSelectionEligibleForScroll=e.isSelectionEligibleForScroll.bind(Object(C.a)(e)),e}return Object(I.a)(t,e),Object(E.a)(t,[{key:"componentDidMount",value:function(){window.addEventListener("scroll",this.onScrollResize,!0),window.addEventListener("resize",this.onScrollResize,!0)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("scroll",this.onScrollResize,!0),window.removeEventListener("resize",this.onScrollResize,!0),document.removeEventListener("selectionchange",this.computeCaretRectOnSelectionChange),this.onScrollResize.rafId&&window.cancelAnimationFrame(this.onScrollResize.rafId),this.onKeyDown.rafId&&window.cancelAnimationFrame(this.onKeyDown.rafId)}},{key:"computeCaretRect",value:function(){this.isSelectionEligibleForScroll()&&(this.caretRect=Object(Zo.computeCaretRect)())}},{key:"computeCaretRectOnSelectionChange",value:function(){document.removeEventListener("selectionchange",this.computeCaretRectOnSelectionChange),this.computeCaretRect()}},{key:"onScrollResize",value:function(){var e=this;this.onScrollResize.rafId||(this.onScrollResize.rafId=window.requestAnimationFrame((function(){e.computeCaretRect(),delete e.onScrollResize.rafId})))}},{key:"isSelectionEligibleForScroll",value:function(){return this.props.selectedBlockClientId&&this.ref.current.contains(document.activeElement)&&document.activeElement.isContentEditable}},{key:"isLastEditableNode",value:function(){var e=this.ref.current.querySelectorAll('[contenteditable="true"]');return e[e.length-1]===document.activeElement}},{key:"maintainCaretPosition",value:function(e){var t=e.keyCode;if(this.isSelectionEligibleForScroll()){var n=Object(Zo.computeCaretRect)();if(n)if(this.caretRect)if(ks.has(t))this.caretRect=n;else{var r=n.top-this.caretRect.top;if(0!==r){var o=Object(Zo.getScrollContainer)(this.ref.current);if(o){var i=o===document.body,c=i?window.scrollY:o.scrollTop,a=i?0:o.getBoundingClientRect().top,l=i?this.caretRect.top/window.innerHeight:(this.caretRect.top-a)/(window.innerHeight-a);if(0===c&&l<.75&&this.isLastEditableNode())this.caretRect=n;else{var s=i?window.innerHeight:o.clientHeight;this.caretRect.top+this.caretRect.height>a+s||this.caretRect.top1&&void 0!==arguments[1])||arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return t=Array.isArray(e)?e:!0===e?Ss:[],!r||!0===e&&!n?p.without.apply(void 0,[t].concat(ws)):t}var Is=Object(d.createContext)({}),xs=Is.Provider,Bs=Object(h.createHigherOrderComponent)((function(e){return function(t){var n=Object(d.useContext)(Is).isEmbedButton,r=t.name,o=n?[]:Cs(Object(i.getBlockSupport)(r,"align"),Object(i.hasBlockSupport)(r,"alignWide",!0));return[o.length>0&&t.isSelected&&Object(d.createElement)(gt,{key:"align-controls"},Object(d.createElement)(ut,{value:t.attributes.align,onChange:function(e){if(!e){var n=Object(i.getBlockType)(t.name);Object(p.get)(n,["attributes","align","default"])&&(e="")}t.setAttributes({align:e})},controls:o})),Object(d.createElement)(e,Object(u.a)({key:"edit"},t))]}}),"withToolbarControls"),Ts=Object(h.createHigherOrderComponent)((function(e){return function(t){var n=t.name,r=t.attributes.align,o=Object(g.useSelect)((function(e){return!!e("core/block-editor").getSettings().alignWide}),[]);if(void 0===r)return Object(d.createElement)(e,t);var c=Cs(Object(i.getBlockSupport)(n,"align"),Object(i.hasBlockSupport)(n,"alignWide",!0),o),a=t.wrapperProps;return Object(p.includes)(c,r)&&(a=function(e){for(var t=1;t");var t=Object(i.parseWithAttributeSchema)(e,{type:"string",source:"attribute",selector:"[data-custom-class-name] > *",attribute:"class"});return t?t.trim().split(/\s+/):[]}Object(m.addFilter)("blocks.registerBlockType","core/custom-class-name/attribute",(function(e){return Object(i.hasBlockSupport)(e,"customClassName",!0)&&(e.attributes=Object(p.assign)(e.attributes,{className:{type:"string"}})),e})),Object(m.addFilter)("editor.BlockEdit","core/editor/custom-class-name/with-inspector-control",Ls),Object(m.addFilter)("blocks.getSaveContent.extraProps","core/custom-class-name/save-props",(function(e,t,n){return Object(i.hasBlockSupport)(t,"customClassName",!0)&&n.className&&(e.className=b()(e.className,n.className)),e})),Object(m.addFilter)("blocks.getBlockAttributes","core/custom-class-name/addParsedDifference",(function(e,t,n){if(Object(i.hasBlockSupport)(t,"customClassName",!0)){var r=Object(p.omit)(e,["className"]),o=Object(i.getSaveContent)(t,r),c=Rs(o),a=Rs(n),l=Object(p.difference)(a,c);l.length?e.className=l.join(" "):o&&delete e.className}return e})),Object(m.addFilter)("blocks.getSaveContent.extraProps","core/generated-class-name/save-props",(function(e,t){return Object(i.hasBlockSupport)(t,"className",!0)&&("string"==typeof e.className?e.className=Object(p.uniq)([Object(i.getBlockDefaultClassName)(t.name)].concat(Object(D.a)(e.className.split(" ")))).join(" ").trim():e.className=Object(i.getBlockDefaultClassName)(t.name)),e}));var As=n("eGrx"),Ds=n.n(As),Ms=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,Fs=function(e,t){t=t||{};var n=1,r=1;function o(e){var t=e.match(/\n/g);t&&(n+=t.length);var o=e.lastIndexOf("\n");r=~o?e.length-o:r+e.length}function i(){var e={line:n,column:r};return function(t){return t.position=new c(e),b(),t}}function c(e){this.start=e,this.end={line:n,column:r},this.source=t.source}c.prototype.content=e;var a=[];function l(o){var i=new Error(t.source+":"+n+":"+r+": "+o);if(i.reason=o,i.filename=t.source,i.line=n,i.column=r,i.source=e,!t.silent)throw i;a.push(i)}function s(){return f(/^{\s*/)}function u(){return f(/^}/)}function d(){var t,n=[];for(b(),p(n);e.length&&"}"!==e.charAt(0)&&(t=S()||w());)!1!==t&&(n.push(t),p(n));return n}function f(t){var n=t.exec(e);if(n){var r=n[0];return o(r),e=e.slice(r.length),n}}function b(){f(/^\s*/)}function p(e){var t;for(e=e||[];t=h();)!1!==t&&e.push(t);return e}function h(){var t=i();if("/"===e.charAt(0)&&"*"===e.charAt(1)){for(var n=2;""!==e.charAt(n)&&("*"!==e.charAt(n)||"/"!==e.charAt(n+1));)++n;if(n+=2,""===e.charAt(n-1))return l("End of comment missing");var c=e.slice(2,n-2);return r+=2,o(c),e=e.slice(n),r+=2,t({type:"comment",comment:c})}}function m(){var e=f(/^([^{]+)/);if(e)return Hs(e[0]).replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*\/+/g,"").replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g,(function(e){return e.replace(/,/g,"‌")})).split(/\s*(?![^(]*\)),\s*/).map((function(e){return e.replace(/\u200C/g,",")}))}function g(){var e=i(),t=f(/^(\*?[-#\/\*\\\w]+(\[[0-9a-z_-]+\])?)\s*/);if(t){if(t=Hs(t[0]),!f(/^:\s*/))return l("property missing ':'");var n=f(/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+)/),r=e({type:"declaration",property:t.replace(Ms,""),value:n?Hs(n[0]).replace(Ms,""):""});return f(/^[;\s]*/),r}}function v(){var e,t=[];if(!s())return l("missing '{'");for(p(t);e=g();)!1!==e&&(t.push(e),p(t));return u()?t:l("missing '}'")}function O(){for(var e,t=[],n=i();e=f(/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/);)t.push(e[1]),f(/^,\s*/);if(t.length)return n({type:"keyframe",values:t,declarations:v()})}var j,k=E("import"),y=E("charset"),_=E("namespace");function E(e){var t=new RegExp("^@"+e+"\\s*([^;]+);");return function(){var n=i(),r=f(t);if(r){var o={type:e};return o[e]=r[1].trim(),n(o)}}}function S(){if("@"===e[0])return function(){var e=i(),t=f(/^@([-\w]+)?keyframes\s*/);if(t){var n=t[1];if(!(t=f(/^([-\w]+)\s*/)))return l("@keyframes missing name");var r,o=t[1];if(!s())return l("@keyframes missing '{'");for(var c=p();r=O();)c.push(r),c=c.concat(p());return u()?e({type:"keyframes",name:o,vendor:n,keyframes:c}):l("@keyframes missing '}'")}}()||function(){var e=i(),t=f(/^@media *([^{]+)/);if(t){var n=Hs(t[1]);if(!s())return l("@media missing '{'");var r=p().concat(d());return u()?e({type:"media",media:n,rules:r}):l("@media missing '}'")}}()||function(){var e=i(),t=f(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);if(t)return e({type:"custom-media",name:Hs(t[1]),media:Hs(t[2])})}()||function(){var e=i(),t=f(/^@supports *([^{]+)/);if(t){var n=Hs(t[1]);if(!s())return l("@supports missing '{'");var r=p().concat(d());return u()?e({type:"supports",supports:n,rules:r}):l("@supports missing '}'")}}()||k()||y()||_()||function(){var e=i(),t=f(/^@([-\w]+)?document *([^{]+)/);if(t){var n=Hs(t[1]),r=Hs(t[2]);if(!s())return l("@document missing '{'");var o=p().concat(d());return u()?e({type:"document",document:r,vendor:n,rules:o}):l("@document missing '}'")}}()||function(){var e=i();if(f(/^@page */)){var t=m()||[];if(!s())return l("@page missing '{'");for(var n,r=p();n=g();)r.push(n),r=r.concat(p());return u()?e({type:"page",selectors:t,declarations:r}):l("@page missing '}'")}}()||function(){var e=i();if(f(/^@host\s*/)){if(!s())return l("@host missing '{'");var t=p().concat(d());return u()?e({type:"host",rules:t}):l("@host missing '}'")}}()||function(){var e=i();if(f(/^@font-face\s*/)){if(!s())return l("@font-face missing '{'");for(var t,n=p();t=g();)n.push(t),n=n.concat(p());return u()?e({type:"font-face",declarations:n}):l("@font-face missing '}'")}}()}function w(){var e=i(),t=m();return t?(p(),e({type:"rule",selectors:t,declarations:v()})):l("selector missing")}return function e(t,n){var r=t&&"string"==typeof t.type,o=r?t:n;for(var i in t){var c=t[i];Array.isArray(c)?c.forEach((function(t){e(t,o)})):c&&"object"===Object(Zt.a)(c)&&e(c,o)}r&&Object.defineProperty(t,"parent",{configurable:!0,writable:!0,enumerable:!1,value:n||null});return t}((j=d(),{type:"stylesheet",stylesheet:{source:t.source,rules:j,parsingErrors:a}}))};function Hs(e){return e?e.replace(/^\s+|\s+$/g,""):""}var Vs=n("P7XM"),Us=n.n(Vs),zs=Gs;function Gs(e){this.options=e||{}}Gs.prototype.emit=function(e){return e},Gs.prototype.visit=function(e){return this[e.type](e)},Gs.prototype.mapVisit=function(e,t){var n="";t=t||"";for(var r=0,o=e.length;r1&&void 0!==arguments[1]?arguments[1]:[];return function(n){return"rule"===n.type?ru({},n,{selectors:n.selectors.map((function(n){return Object(p.includes)(t,n.trim())?n:n.match(ou)?n.replace(/^(body|html|:root)/,e):e+" "+n}))}):n}},cu=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object(p.map)(e,(function(e){var n=e.css,r=e.baseURL,o=[];return t&&o.push(iu(t)),r&&o.push(tu(r)),o.length?Ys(n,Object(h.compose)(o)):n}))}},v2jn:function(e,t,n){ /*! diff v3.5.0 Software License Agreement (BSD License) Copyright (c) 2009-2015, Kevin Decker All rights reserved. Redistribution and use of this software in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Kevin Decker nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @license */ var r;r=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}return n.m=e,n.c=t,n.p="",n(0)}([function(e,t,n){"use strict";t.__esModule=!0,t.canonicalize=t.convertChangesToXML=t.convertChangesToDMP=t.merge=t.parsePatch=t.applyPatches=t.applyPatch=t.createPatch=t.createTwoFilesPatch=t.structuredPatch=t.diffArrays=t.diffJson=t.diffCss=t.diffSentences=t.diffTrimmedLines=t.diffLines=t.diffWordsWithSpace=t.diffWords=t.diffChars=t.Diff=void 0;var r,o=n(1),i=(r=o)&&r.__esModule?r:{default:r},c=n(2),a=n(3),l=n(5),s=n(6),u=n(7),d=n(8),f=n(9),b=n(10),p=n(11),h=n(13),m=n(14),g=n(16),v=n(17);t.Diff=i.default,t.diffChars=c.diffChars,t.diffWords=a.diffWords,t.diffWordsWithSpace=a.diffWordsWithSpace,t.diffLines=l.diffLines,t.diffTrimmedLines=l.diffTrimmedLines,t.diffSentences=s.diffSentences,t.diffCss=u.diffCss,t.diffJson=d.diffJson,t.diffArrays=f.diffArrays,t.structuredPatch=m.structuredPatch,t.createTwoFilesPatch=m.createTwoFilesPatch,t.createPatch=m.createPatch,t.applyPatch=b.applyPatch,t.applyPatches=b.applyPatches,t.parsePatch=p.parsePatch,t.merge=h.merge,t.convertChangesToDMP=g.convertChangesToDMP,t.convertChangesToXML=v.convertChangesToXML,t.canonicalize=d.canonicalize},function(e,t){"use strict";function n(){}function r(e,t,n,r,o){for(var i=0,c=t.length,a=0,l=0;ie.length?n:e})),s.value=e.join(d)}else s.value=e.join(n.slice(a,a+s.count));a+=s.count,s.added||(l+=s.count)}}var f=t[c-1];return c>1&&"string"==typeof f.value&&(f.added||f.removed)&&e.equals("",f.value)&&(t[c-2].value+=f.value,t.pop()),t}function o(e){return{newPos:e.newPos,components:e.components.slice(0)}}t.__esModule=!0,t.default=n,n.prototype={diff:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=n.callback;"function"==typeof n&&(i=n,n={}),this.options=n;var c=this;function a(e){return i?(setTimeout((function(){i(void 0,e)}),0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e));var l=(t=this.removeEmpty(this.tokenize(t))).length,s=e.length,u=1,d=l+s,f=[{newPos:-1,components:[]}],b=this.extractCommon(f[0],t,e,0);if(f[0].newPos+1>=l&&b+1>=s)return a([{value:this.join(t),count:t.length}]);function p(){for(var n=-1*u;n<=u;n+=2){var i=void 0,d=f[n-1],b=f[n+1],p=(b?b.newPos:0)-n;d&&(f[n-1]=void 0);var h=d&&d.newPos+1=l&&p+1>=s)return a(r(c,i.components,t,e,c.useLongestToken));f[n]=i}else f[n]=void 0}u++}if(i)!function e(){setTimeout((function(){if(u>d)return i();p()||e()}),0)}();else for(;u<=d;){var h=p();if(h)return h}},pushComponent:function(e,t,n){var r=e[e.length-1];r&&r.added===t&&r.removed===n?e[e.length-1]={count:r.count+1,added:t,removed:n}:e.push({count:1,added:t,removed:n})},extractCommon:function(e,t,n,r){for(var o=t.length,i=n.length,c=e.newPos,a=c-r,l=0;c+12&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof t&&(t=(0,o.parsePatch)(t)),Array.isArray(t)){if(t.length>1)throw new Error("applyPatch only works with a single input.");t=t[0]}var r=e.split(/\r\n|[\n\v\f\r\x85]/),i=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],a=t.hunks,l=n.compareLine||function(e,t,n,r){return t===r},s=0,u=n.fuzzFactor||0,d=0,f=0,b=void 0,p=void 0;function h(e,t){for(var n=0;n0?o[0]:" ",c=o.length>0?o.substr(1):o;if(" "===i||"-"===i){if(!l(t+1,r[t],i,c)&&++s>u)return!1;t++}}return!0}for(var m=0;m0?C[0]:" ",x=C.length>0?C.substr(1):C,B=E.linedelimiters[w];if(" "===I)S++;else if("-"===I)r.splice(S,1),i.splice(S,1);else if("+"===I)r.splice(S,0,x),i.splice(S,0,B),S++;else if("\\"===I){var T=E.lines[w-1]?E.lines[w-1][0]:null;"+"===T?b=!0:"-"===T&&(p=!0)}}}if(b)for(;!r[r.length-1];)r.pop(),i.pop();else p&&(r.push(""),i.push("\n"));for(var P=0;P1&&void 0!==arguments[1]?arguments[1]:{},n=e.split(/\r\n|[\n\v\f\r\x85]/),r=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],o=[],i=0;function c(){var e={};for(o.push(e);i0?u(a.lines.slice(-l.context)):[],f-=p.length,b-=p.length)}(c=p).push.apply(c,o(r.map((function(e){return(t.added?"+":"-")+e})))),t.added?m+=r.length:h+=r.length}else{if(f)if(r.length<=2*l.context&&e=s.length-2&&r.length<=l.context){var k=/\n$/.test(n),y=/\n$/.test(i);0!=r.length||k?k&&y||p.push("\\ No newline at end of file"):p.splice(j.oldLines,0,"\\ No newline at end of file")}d.push(j),f=0,b=0,p=[]}h+=r.length,m+=r.length}},v=0;ve.length)return!1;for(var n=0;n"):r.removed&&t.push(""),t.push((o=r.value,void 0,o.replace(/&/g,"&").replace(//g,">").replace(/"/g,"""))),r.added?t.push(""):r.removed&&t.push("")}var o;return t.join("")}}])},e.exports=r()},vuIU:function(e,t,n){"use strict";function r(e,t){for(var n=0;n=0||(o[n]=e[n]);return o}n.d(t,"a",(function(){return r}))},ziDm:function(e,t,n){"use strict";var r=n("GRId"),o=n("Tqx9"),i=Object(r.createElement)(o.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"-2 -2 24 24"},Object(r.createElement)(o.Path,{d:"M17 5V3H8v2h9zm0 4V7H3v2h14zm0 4v-2H8v2h9zm0 4v-2H3v2h14z"}));t.a=i},zt9T:function(e,t,n){"use strict";var r=n("jB5C");e.exports=function(e,t,n){n=n||{},9===t.nodeType&&(t=r.getWindow(t));var o=n.allowHorizontalScroll,i=n.onlyScrollIfNeeded,c=n.alignWithTop,a=n.alignWithLeft,l=n.offsetTop||0,s=n.offsetLeft||0,u=n.offsetBottom||0,d=n.offsetRight||0;o=void 0===o||o;var f=r.isWindow(t),b=r.offset(e),p=r.outerHeight(e),h=r.outerWidth(e),m=void 0,g=void 0,v=void 0,O=void 0,j=void 0,k=void 0,y=void 0,_=void 0,E=void 0,S=void 0;f?(y=t,S=r.height(y),E=r.width(y),_={left:r.scrollLeft(y),top:r.scrollTop(y)},j={left:b.left-_.left-s,top:b.top-_.top-l},k={left:b.left+h-(_.left+E)+d,top:b.top+p-(_.top+S)+u},O=_):(m=r.offset(t),g=t.clientHeight,v=t.clientWidth,O={left:t.scrollLeft,top:t.scrollTop},j={left:b.left-(m.left+(parseFloat(r.css(t,"borderLeftWidth"))||0))-s,top:b.top-(m.top+(parseFloat(r.css(t,"borderTopWidth"))||0))-l},k={left:b.left+h-(m.left+v+(parseFloat(r.css(t,"borderRightWidth"))||0))+d,top:b.top+p-(m.top+g+(parseFloat(r.css(t,"borderBottomWidth"))||0))+u}),j.top<0||k.top>0?!0===c?r.scrollTop(t,O.top+j.top):!1===c?r.scrollTop(t,O.top+k.top):j.top<0?r.scrollTop(t,O.top+j.top):r.scrollTop(t,O.top+k.top):i||((c=void 0===c||!!c)?r.scrollTop(t,O.top+j.top):r.scrollTop(t,O.top+k.top)),o&&(j.left<0||k.left>0?!0===a?r.scrollLeft(t,O.left+j.left):!1===a?r.scrollLeft(t,O.left+k.left):j.left<0?r.scrollLeft(t,O.left+j.left):r.scrollLeft(t,O.left+k.left):i||((a=void 0===a||!!a)?r.scrollLeft(t,O.left+j.left):r.scrollLeft(t,O.left+k.left)))}}});PKv\M dist/data-controls.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.dataControls=function(t){var e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s="71Oy")}({"1ZqX":function(t,e){!function(){t.exports=this.wp.data}()},"25BE":function(t,e,r){"use strict";function n(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}r.d(e,"a",(function(){return n}))},"71Oy":function(t,e,r){"use strict";r.r(e),r.d(e,"apiFetch",(function(){return i})),r.d(e,"select",(function(){return c})),r.d(e,"dispatch",(function(){return f})),r.d(e,"controls",(function(){return s}));var n=r("KQm4"),o=r("ywyh"),u=r.n(o),a=r("1ZqX"),i=function(t){return{type:"API_FETCH",request:t}};function c(t,e){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o2?r-2:0),o=2;ot.length)&&(e=t.length);for(var r=0,n=new Array(e);r 0 && arguments[0] !== undefined ? arguments[0] : ''; Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(this, TokenList); this.value = initialValue; ['entries', 'forEach', 'keys', 'values'].forEach(function (fn) { _this[fn] = function () { var _this$_valueAsArray; return (_this$_valueAsArray = _this._valueAsArray)[fn].apply(_this$_valueAsArray, arguments); }; }); } /** * Returns the associated set as string. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-value * * @return {string} Token set as string. */ Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(TokenList, [{ key: "toString", /** * Returns the stringified form of the TokenList. * * @see https://dom.spec.whatwg.org/#DOMTokenList-stringification-behavior * @see https://www.ecma-international.org/ecma-262/9.0/index.html#sec-tostring * * @return {string} Token set as string. */ value: function toString() { return this.value; } /** * Returns an iterator for the TokenList, iterating items of the set. * * @see https://dom.spec.whatwg.org/#domtokenlist * * @return {IterableIterator} TokenList iterator. */ }, { key: Symbol.iterator, value: /*#__PURE__*/ _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function value() { return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function value$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: return _context.delegateYield(this._valueAsArray, "t0", 1); case 1: return _context.abrupt("return", _context.t0); case 2: case "end": return _context.stop(); } } }, value, this); }) /** * Returns the token with index `index`. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-item * * @param {number} index Index at which to return token. * * @return {string|undefined} Token at index. */ }, { key: "item", value: function item(index) { return this._valueAsArray[index]; } /** * Returns true if `token` is present, and false otherwise. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-contains * * @param {string} item Token to test. * * @return {boolean} Whether token is present. */ }, { key: "contains", value: function contains(item) { return this._valueAsArray.indexOf(item) !== -1; } /** * Adds all arguments passed, except those already present. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-add * * @param {...string} items Items to add. */ }, { key: "add", value: function add() { for (var _len = arguments.length, items = new Array(_len), _key = 0; _key < _len; _key++) { items[_key] = arguments[_key]; } this.value += ' ' + items.join(' '); } /** * Removes arguments passed, if they are present. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-remove * * @param {...string} items Items to remove. */ }, { key: "remove", value: function remove() { for (var _len2 = arguments.length, items = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { items[_key2] = arguments[_key2]; } this.value = lodash__WEBPACK_IMPORTED_MODULE_3__["without"].apply(void 0, [this._valueAsArray].concat(items)).join(' '); } /** * If `force` is not given, "toggles" `token`, removing it if it’s present * and adding it if it’s not present. If `force` is true, adds token (same * as add()). If force is false, removes token (same as remove()). Returns * true if `token` is now present, and false otherwise. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-toggle * * @param {string} token Token to toggle. * @param {boolean} [force] Presence to force. * * @return {boolean} Whether token is present after toggle. */ }, { key: "toggle", value: function toggle(token, force) { if (undefined === force) { force = !this.contains(token); } if (force) { this.add(token); } else { this.remove(token); } return force; } /** * Replaces `token` with `newToken`. Returns true if `token` was replaced * with `newToken`, and false otherwise. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-replace * * @param {string} token Token to replace with `newToken`. * @param {string} newToken Token to use in place of `token`. * * @return {boolean} Whether replacement occurred. */ }, { key: "replace", value: function replace(token, newToken) { if (!this.contains(token)) { return false; } this.remove(token); this.add(newToken); return true; } /** * Returns true if `token` is in the associated attribute’s supported * tokens. Returns false otherwise. * * Always returns `true` in this implementation. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-supports * * @return {boolean} Whether token is supported. */ }, { key: "supports", value: function supports() { return true; } }, { key: "value", get: function get() { return this._currentValue; } /** * Replaces the associated set with a new string value. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-value * * @param {string} value New token set as string. */ , set: function set(value) { value = String(value); this._valueAsArray = Object(lodash__WEBPACK_IMPORTED_MODULE_3__["uniq"])(Object(lodash__WEBPACK_IMPORTED_MODULE_3__["compact"])(value.split(/\s+/g))); this._currentValue = this._valueAsArray.join(' '); } /** * Returns the number of tokens. * * @see https://dom.spec.whatwg.org/#dom-domtokenlist-length * * @return {number} Number of tokens. */ }, { key: "length", get: function get() { return this._valueAsArray.length; } }]); return TokenList; }(); /***/ }), /***/ "vuIU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; }); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /***/ }) /******/ })["default"];PKv\>PPdist/plugins.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.plugins=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s="ey5A")}({"1OyB":function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.d(t,"a",(function(){return r}))},GRId:function(e,t){!function(){e.exports=this.wp.element}()},JX7q:function(e,t,n){"use strict";function r(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}n.d(t,"a",(function(){return r}))},Ji7U:function(e,t,n){"use strict";function r(e,t){return(r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}n.d(t,"a",(function(){return o}))},K9lf:function(e,t){!function(){e.exports=this.wp.compose}()},U8pU:function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}n.d(t,"a",(function(){return r}))},YLtl:function(e,t){!function(){e.exports=this.lodash}()},ey5A:function(e,t,n){"use strict";n.r(t),n.d(t,"PluginArea",(function(){return U})),n.d(t,"withPluginContext",(function(){return O})),n.d(t,"registerPlugin",(function(){return h})),n.d(t,"unregisterPlugin",(function(){return w})),n.d(t,"getPlugin",(function(){return x})),n.d(t,"getPlugins",(function(){return S}));var r=n("1OyB"),o=n("vuIU"),u=n("md7G"),i=n("foSv"),c=n("JX7q"),l=n("Ji7U"),s=n("GRId"),a=n("YLtl"),f=n("g56x"),p=n("wx14"),g=n("K9lf"),b=Object(s.createContext)({name:null,icon:null}),d=b.Consumer,y=b.Provider,O=function(e){return Object(g.createHigherOrderComponent)((function(t){return function(n){return Object(s.createElement)(d,null,(function(r){return Object(s.createElement)(t,Object(p.a)({},n,e(r,n)))}))}}),"withPluginContext")},j=n("rePB"),m=n("U8pU");function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var P={};function h(e,t){return"object"!==Object(m.a)(t)?(console.error("No settings object provided!"),null):"string"!=typeof e?(console.error("Plugin names must be strings."),null):/^[a-z][a-z0-9-]*$/.test(e)?(P[e]&&console.error('Plugin "'.concat(e,'" is already registered.')),t=Object(f.applyFilters)("plugins.registerPlugin",t,e),Object(a.isFunction)(t.render)?(P[e]=function(e){for(var t=1;t]+>/g, ' '); if (previousMessage === message) { message += "\xA0"; } previousMessage = message; return message; }; /* harmony default export */ var build_module_filterMessage = (filterMessage); // CONCATENATED MODULE: ./node_modules/@wordpress/a11y/build-module/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * Create the live regions. */ var build_module_setup = function setup() { var containerPolite = document.getElementById('a11y-speak-polite'); var containerAssertive = document.getElementById('a11y-speak-assertive'); if (containerPolite === null) { build_module_addContainer('polite'); } if (containerAssertive === null) { build_module_addContainer('assertive'); } }; /** * Run setup on domReady. */ external_this_wp_domReady_default()(build_module_setup); /** * Allows you to easily announce dynamic interface updates to screen readers using ARIA live regions. * This module is inspired by the `speak` function in wp-a11y.js * * @param {string} message The message to be announced by Assistive Technologies. * @param {string} ariaLive Optional. The politeness level for aria-live. Possible values: * polite or assertive. Default polite. * * @example * ```js * import { speak } from '@wordpress/a11y'; * * // For polite messages that shouldn't interrupt what screen readers are currently announcing. * speak( 'The message you want to send to the ARIA live region' ); * * // For assertive messages that should interrupt what screen readers are currently announcing. * speak( 'The message you want to send to the ARIA live region', 'assertive' ); * ``` */ var build_module_speak = function speak(message, ariaLive) { // Clear previous messages to allow repeated strings being read out. build_module_clear(); message = build_module_filterMessage(message); var containerPolite = document.getElementById('a11y-speak-polite'); var containerAssertive = document.getElementById('a11y-speak-assertive'); if (containerAssertive && 'assertive' === ariaLive) { containerAssertive.textContent = message; } else if (containerPolite) { containerPolite.textContent = message; } }; /***/ }) /******/ });PKv\g?t99dist/element.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.element=function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s="o/Ny")}({"25BE":function(e,t,r){"use strict";function n(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}r.d(t,"a",(function(){return n}))},BsWD:function(e,t,r){"use strict";r.d(t,"a",(function(){return o}));var n=r("a3WO");function o(e,t){if(e){if("string"==typeof e)return Object(n.a)(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Object(n.a)(e,t):void 0}}},DSFK:function(e,t,r){"use strict";function n(e){if(Array.isArray(e))return e}r.d(t,"a",(function(){return n}))},Ff2n:function(e,t,r){"use strict";r.d(t,"a",(function(){return o}));var n=r("zLVn");function o(e,t){if(null==e)return{};var r,o,u=Object(n.a)(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(u[r]=e[r])}return u}},KQm4:function(e,t,r){"use strict";r.d(t,"a",(function(){return c}));var n=r("a3WO");var o=r("25BE"),u=r("BsWD");function c(e){return function(e){if(Array.isArray(e))return Object(n.a)(e)}(e)||Object(o.a)(e)||Object(u.a)(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},ODXe:function(e,t,r){"use strict";r.d(t,"a",(function(){return c}));var n=r("DSFK");var o=r("BsWD"),u=r("PYwp");function c(e,t){return Object(n.a)(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,u=void 0;try{for(var c,i=e[Symbol.iterator]();!(n=(c=i.next()).done)&&(r.push(c.value),!t||r.length!==t);n=!0);}catch(e){o=!0,u=e}finally{try{n||null==i.return||i.return()}finally{if(o)throw u}}return r}}(e,t)||Object(o.a)(e,t)||Object(u.a)()}},PYwp:function(e,t,r){"use strict";function n(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}r.d(t,"a",(function(){return n}))},U8pU:function(e,t,r){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}r.d(t,"a",(function(){return n}))},Vx3V:function(e,t){!function(){e.exports=this.wp.escapeHtml}()},YLtl:function(e,t){!function(){e.exports=this.lodash}()},a3WO:function(e,t,r){"use strict";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r/g;function d(e,t,r,n,o){return{element:e,tokenStart:t,tokenLength:r,prevOffset:n,leadingTextStart:o,children:[]}}var p=function(e){var t="object"===Object(a.a)(e),r=t&&Object.values(e);return t&&r.length&&r.every((function(e){return Object(l.isValidElement)(e)}))};function b(e){var t=function(){var e=s.exec(n);if(null===e)return["no-more-tokens"];var t=e.index,r=Object(i.a)(e,4),o=r[0],u=r[1],c=r[2],a=r[3],f=o.length;if(a)return["self-closed",c,t,f];if(u)return["closer",c,t,f];return["opener",c,t,f]}(),r=Object(i.a)(t,4),a=r[0],p=r[1],b=r[2],m=r[3],h=c.length,v=b>o?o:null;if(!e[p])return y(),!1;switch(a){case"no-more-tokens":if(0!==h){var j=c.pop(),g=j.leadingTextStart,w=j.tokenStart;u.push(n.substr(g,w))}return y(),!1;case"self-closed":return 0===h?(null!==v&&u.push(n.substr(v,b-v)),u.push(e[p]),o=b+m,!0):(O(new d(e[p],b,m)),o=b+m,!0);case"opener":return c.push(new d(e[p],b,m,b+m,v)),o=b+m,!0;case"closer":if(1===h)return function(e){var t=c.pop(),r=t.element,o=t.leadingTextStart,i=t.prevOffset,a=t.tokenStart,s=t.children,d=e?n.substr(i,e-i):n.substr(i);d&&s.push(d);null!==o&&u.push(n.substr(o,a-o));u.push(l.cloneElement.apply(void 0,[r,null].concat(Object(f.a)(s))))}(b),o=b+m,!0;var S=c.pop(),P=n.substr(S.prevOffset,b-S.prevOffset);S.children.push(P),S.prevOffset=b+m;var E=new d(S.element,S.tokenStart,S.tokenLength,b+m);return E.children=S.children,O(E),o=b+m,!0;default:return y(),!1}}function y(){var e=n.length-o;0!==e&&u.push(n.substr(o,e))}function O(e){var t=e.element,r=e.tokenStart,o=e.tokenLength,u=e.prevOffset,i=e.children,a=c[c.length-1],s=n.substr(a.prevOffset,r-a.prevOffset);s&&a.children.push(s),a.children.push(l.cloneElement.apply(void 0,[t,null].concat(Object(f.a)(i)))),a.prevOffset=u||r+o}var m=function(e,t){if(n=e,o=0,u=[],c=[],s.lastIndex=0,!p(t))throw new TypeError("The conversionMap provided is not valid. It must be an object with values that are WPElements");do{}while(b(t));return l.createElement.apply(void 0,[l.Fragment,null].concat(Object(f.a)(u)))},h=r("rePB"),v=r("Ff2n"),j=r("YLtl");function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function w(){for(var e=arguments.length,t=new Array(e),r=0;r2&&void 0!==arguments[2]?arguments[2]:{};if(null==e||!1===e)return"";if(Array.isArray(e))return X(e,t,r);switch(Object(a.a)(e)){case"string":return Object(k.escapeHTML)(e);case"number":return e.toString()}var n=e.type,o=e.props;switch(n){case l.StrictMode:case l.Fragment:return X(o.children,t,r);case D:var u=o.children,c=Object(v.a)(o,["children"]);return q(Object(j.isEmpty)(c)?null:"div",I({},c,{dangerouslySetInnerHTML:{__html:u}}),t,r)}switch(Object(a.a)(n)){case"string":return q(n,o,t,r);case"function":return n.prototype&&"function"==typeof n.prototype.render?Q(n,o,t,r):Y(n(o,r),t,r)}switch(n&&n.$$typeof){case T.$$typeof:return X(o.children,o.value,r);case L.$$typeof:return Y(o.children(t||n._currentValue),t,r);case _.$$typeof:return Y(n.render(o),t,r)}return""}function q(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o="";if("textarea"===e&&t.hasOwnProperty("value")?(o=X(t.value,r,n),t=Object(j.omit)(t,"value")):t.dangerouslySetInnerHTML&&"string"==typeof t.dangerouslySetInnerHTML.__html?o=t.dangerouslySetInnerHTML.__html:void 0!==t.children&&(o=X(t.children,r,n)),!e)return o;var u=G(t);return V.has(e)?"<"+e+u+"/>":"<"+e+u+">"+o+""}function Q(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=new e(t,n);"function"==typeof o.getChildContext&&Object.assign(n,o.getChildContext());var u=Y(o.render(),r,n);return u}function X(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n="";e=Object(j.castArray)(e);for(var o=0;o=0||(o[r]=e[r]);return o}r.d(t,"a",(function(){return n}))}});PKv\;j7dist/editor.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["editor"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "PLxR"); /******/ }) /************************************************************************/ /******/ ({ /***/ "16Al": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var ReactPropTypesSecret = __webpack_require__("WbBG"); function emptyFunction() {} function emptyFunctionWithReset() {} emptyFunctionWithReset.resetWarningCache = emptyFunction; module.exports = function() { function shim(props, propName, componentName, location, propFullName, secret) { if (secret === ReactPropTypesSecret) { // It is still safe when called from React. return; } var err = new Error( 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + 'Use PropTypes.checkPropTypes() to call them. ' + 'Read more at http://fb.me/use-check-prop-types' ); err.name = 'Invariant Violation'; throw err; }; shim.isRequired = shim; function getShim() { return shim; }; // Important! // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. var ReactPropTypes = { array: shim, bool: shim, func: shim, number: shim, object: shim, string: shim, symbol: shim, any: shim, arrayOf: getShim, element: shim, elementType: shim, instanceOf: getShim, node: shim, objectOf: getShim, oneOf: getShim, oneOfType: getShim, shape: getShim, exact: getShim, checkPropTypes: emptyFunctionWithReset, resetWarningCache: emptyFunction }; ReactPropTypes.PropTypes = ReactPropTypes; return ReactPropTypes; }; /***/ }), /***/ "17x9": /***/ (function(module, exports, __webpack_require__) { /** * Copyright (c) 2013-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ if (false) { var throwOnDirectAccess, ReactIs; } else { // By explicitly using `prop-types` you are opting into new production behavior. // http://fb.me/prop-types-in-prod module.exports = __webpack_require__("16Al")(); } /***/ }), /***/ "1OyB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; }); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } /***/ }), /***/ "1ZqX": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["data"]; }()); /***/ }), /***/ "25BE": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; }); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } /***/ }), /***/ "4eJC": /***/ (function(module, exports, __webpack_require__) { /** * Memize options object. * * @typedef MemizeOptions * * @property {number} [maxSize] Maximum size of the cache. */ /** * Internal cache entry. * * @typedef MemizeCacheNode * * @property {?MemizeCacheNode|undefined} [prev] Previous node. * @property {?MemizeCacheNode|undefined} [next] Next node. * @property {Array<*>} args Function arguments for cache * entry. * @property {*} val Function result. */ /** * Properties of the enhanced function for controlling cache. * * @typedef MemizeMemoizedFunction * * @property {()=>void} clear Clear the cache. */ /** * Accepts a function to be memoized, and returns a new memoized function, with * optional options. * * @template {Function} F * * @param {F} fn Function to memoize. * @param {MemizeOptions} [options] Options object. * * @return {F & MemizeMemoizedFunction} Memoized function. */ function memize( fn, options ) { var size = 0; /** @type {?MemizeCacheNode|undefined} */ var head; /** @type {?MemizeCacheNode|undefined} */ var tail; options = options || {}; function memoized( /* ...args */ ) { var node = head, len = arguments.length, args, i; searchCache: while ( node ) { // Perform a shallow equality test to confirm that whether the node // under test is a candidate for the arguments passed. Two arrays // are shallowly equal if their length matches and each entry is // strictly equal between the two sets. Avoid abstracting to a // function which could incur an arguments leaking deoptimization. // Check whether node arguments match arguments length if ( node.args.length !== arguments.length ) { node = node.next; continue; } // Check whether node arguments match arguments values for ( i = 0; i < len; i++ ) { if ( node.args[ i ] !== arguments[ i ] ) { node = node.next; continue searchCache; } } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== head ) { // As tail, shift to previous. Must only shift if not also // head, since if both head and tail, there is no previous. if ( node === tail ) { tail = node.prev; } // Adjust siblings to point to each other. If node was tail, // this also handles new tail's empty `next` assignment. /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = head; node.prev = null; /** @type {MemizeCacheNode} */ ( head ).prev = node; head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: // Create a copy of arguments (avoid leaking deoptimization) args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } node = { args: args, // Generate the result from original function val: fn.apply( null, args ), }; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( head ) { head.prev = node; node.next = head; } else { // If no head, follows that there's no tail (at initial or reset) tail = node; } // Trim tail if we're reached max size and are pending cache insertion if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { tail = /** @type {MemizeCacheNode} */ ( tail ).prev; /** @type {MemizeCacheNode} */ ( tail ).next = null; } else { size++; } head = node; return node.val; } memoized.clear = function() { head = null; tail = null; size = 0; }; if ( false ) {} // Ignore reason: There's not a clear solution to create an intersection of // the function with additional properties, where the goal is to retain the // function signature of the incoming argument and add control properties // on the return value. // @ts-ignore return memoized; } module.exports = memize; /***/ }), /***/ "51Zz": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["dataControls"]; }()); /***/ }), /***/ "6aBm": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["mediaUtils"]; }()); /***/ }), /***/ "7fqt": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["wordcount"]; }()); /***/ }), /***/ "Bpkj": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var link = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M17.74 2.76c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-1.12 1.12-2.7 1.47-4.14 1.09l2.62-2.61.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-3.38 3.38c-.37-1.44-.02-3.02 1.1-4.14l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM8.59 13.43l5.34-5.34c.42-.42.42-1.1 0-1.52-.44-.43-1.13-.39-1.53 0l-5.33 5.34c-.42.42-.42 1.1 0 1.52.44.43 1.13.39 1.52 0zm-.76 2.29l4.14-4.15c.38 1.44.03 3.02-1.09 4.14l-1.52 1.53c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.53-1.52c1.12-1.12 2.7-1.47 4.14-1.1l-4.14 4.15c-.85.84-.85 2.2 0 3.05.84.84 2.2.84 3.04 0z" })); /* harmony default export */ __webpack_exports__["a"] = (link); /***/ }), /***/ "BsWD": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; }); /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a3WO"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); } /***/ }), /***/ "CNgt": /***/ (function(module, exports, __webpack_require__) { "use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; var __rest = (this && this.__rest) || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]]; return t; }; exports.__esModule = true; var React = __webpack_require__("cDcd"); var PropTypes = __webpack_require__("17x9"); var autosize = __webpack_require__("GemG"); var _getLineHeight = __webpack_require__("Rk8H"); var getLineHeight = _getLineHeight; var UPDATE = 'autosize:update'; var DESTROY = 'autosize:destroy'; var RESIZED = 'autosize:resized'; /** * A light replacement for built-in textarea component * which automaticaly adjusts its height to match the content */ var TextareaAutosize = /** @class */ (function (_super) { __extends(TextareaAutosize, _super); function TextareaAutosize() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.state = { lineHeight: null }; _this.dispatchEvent = function (EVENT_TYPE) { var event = document.createEvent('Event'); event.initEvent(EVENT_TYPE, true, false); _this.textarea.dispatchEvent(event); }; _this.updateLineHeight = function () { _this.setState({ lineHeight: getLineHeight(_this.textarea) }); }; _this.onChange = function (e) { var onChange = _this.props.onChange; _this.currentValue = e.currentTarget.value; onChange && onChange(e); }; _this.saveDOMNodeRef = function (ref) { var innerRef = _this.props.innerRef; if (innerRef) { innerRef(ref); } _this.textarea = ref; }; _this.getLocals = function () { var _a = _this, _b = _a.props, onResize = _b.onResize, maxRows = _b.maxRows, onChange = _b.onChange, style = _b.style, innerRef = _b.innerRef, props = __rest(_b, ["onResize", "maxRows", "onChange", "style", "innerRef"]), lineHeight = _a.state.lineHeight, saveDOMNodeRef = _a.saveDOMNodeRef; var maxHeight = maxRows && lineHeight ? lineHeight * maxRows : null; return __assign({}, props, { saveDOMNodeRef: saveDOMNodeRef, style: maxHeight ? __assign({}, style, { maxHeight: maxHeight }) : style, onChange: _this.onChange }); }; return _this; } TextareaAutosize.prototype.componentDidMount = function () { var _this = this; var _a = this.props, onResize = _a.onResize, maxRows = _a.maxRows; if (typeof maxRows === 'number') { this.updateLineHeight(); } /* the defer is needed to: - force "autosize" to activate the scrollbar when this.props.maxRows is passed - support StyledComponents (see #71) */ setTimeout(function () { return autosize(_this.textarea); }); if (onResize) { this.textarea.addEventListener(RESIZED, onResize); } }; TextareaAutosize.prototype.componentWillUnmount = function () { var onResize = this.props.onResize; if (onResize) { this.textarea.removeEventListener(RESIZED, onResize); } this.dispatchEvent(DESTROY); }; TextareaAutosize.prototype.render = function () { var _a = this.getLocals(), children = _a.children, saveDOMNodeRef = _a.saveDOMNodeRef, locals = __rest(_a, ["children", "saveDOMNodeRef"]); return (React.createElement("textarea", __assign({}, locals, { ref: saveDOMNodeRef }), children)); }; TextareaAutosize.prototype.componentDidUpdate = function (prevProps) { if (this.props.value !== this.currentValue || this.props.rows !== prevProps.rows) { this.dispatchEvent(UPDATE); } }; TextareaAutosize.defaultProps = { rows: 1 }; TextareaAutosize.propTypes = { rows: PropTypes.number, maxRows: PropTypes.number, onResize: PropTypes.func, innerRef: PropTypes.func }; return TextareaAutosize; }(React.Component)); exports["default"] = TextareaAutosize; /***/ }), /***/ "DSFK": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; }); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /***/ }), /***/ "Ff2n": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; }); /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("zLVn"); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } /***/ }), /***/ "FqII": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["date"]; }()); /***/ }), /***/ "FtRg": /***/ (function(module, exports, __webpack_require__) { "use strict"; function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function (obj) { return typeof obj; }; } else { _typeof = function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /** * Given an instance of EquivalentKeyMap, returns its internal value pair tuple * for a key, if one exists. The tuple members consist of the last reference * value for the key (used in efficient subsequent lookups) and the value * assigned for the key at the leaf node. * * @param {EquivalentKeyMap} instance EquivalentKeyMap instance. * @param {*} key The key for which to return value pair. * * @return {?Array} Value pair, if exists. */ function getValuePair(instance, key) { var _map = instance._map, _arrayTreeMap = instance._arrayTreeMap, _objectTreeMap = instance._objectTreeMap; // Map keeps a reference to the last object-like key used to set the // value, which can be used to shortcut immediately to the value. if (_map.has(key)) { return _map.get(key); } // Sort keys to ensure stable retrieval from tree. var properties = Object.keys(key).sort(); // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? _arrayTreeMap : _objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; map = map.get(property); if (map === undefined) { return; } var propertyValue = key[property]; map = map.get(propertyValue); if (map === undefined) { return; } } var valuePair = map.get('_ekm_value'); if (!valuePair) { return; } // If reached, it implies that an object-like key was set with another // reference, so delete the reference and replace with the current. _map.delete(valuePair[0]); valuePair[0] = key; map.set('_ekm_value', valuePair); _map.set(key, valuePair); return valuePair; } /** * Variant of a Map object which enables lookup by equivalent (deeply equal) * object and array keys. */ var EquivalentKeyMap = /*#__PURE__*/ function () { /** * Constructs a new instance of EquivalentKeyMap. * * @param {Iterable.<*>} iterable Initial pair of key, value for map. */ function EquivalentKeyMap(iterable) { _classCallCheck(this, EquivalentKeyMap); this.clear(); if (iterable instanceof EquivalentKeyMap) { // Map#forEach is only means of iterating with support for IE11. var iterablePairs = []; iterable.forEach(function (value, key) { iterablePairs.push([key, value]); }); iterable = iterablePairs; } if (iterable != null) { for (var i = 0; i < iterable.length; i++) { this.set(iterable[i][0], iterable[i][1]); } } } /** * Accessor property returning the number of elements. * * @return {number} Number of elements. */ _createClass(EquivalentKeyMap, [{ key: "set", /** * Add or update an element with a specified key and value. * * @param {*} key The key of the element to add. * @param {*} value The value of the element to add. * * @return {EquivalentKeyMap} Map instance. */ value: function set(key, value) { // Shortcut non-object-like to set on internal Map. if (key === null || _typeof(key) !== 'object') { this._map.set(key, value); return this; } // Sort keys to ensure stable assignment into tree. var properties = Object.keys(key).sort(); var valuePair = [key, value]; // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? this._arrayTreeMap : this._objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; if (!map.has(property)) { map.set(property, new EquivalentKeyMap()); } map = map.get(property); var propertyValue = key[property]; if (!map.has(propertyValue)) { map.set(propertyValue, new EquivalentKeyMap()); } map = map.get(propertyValue); } // If an _ekm_value exists, there was already an equivalent key. Before // overriding, ensure that the old key reference is removed from map to // avoid memory leak of accumulating equivalent keys. This is, in a // sense, a poor man's WeakMap, while still enabling iterability. var previousValuePair = map.get('_ekm_value'); if (previousValuePair) { this._map.delete(previousValuePair[0]); } map.set('_ekm_value', valuePair); this._map.set(key, valuePair); return this; } /** * Returns a specified element. * * @param {*} key The key of the element to return. * * @return {?*} The element associated with the specified key or undefined * if the key can't be found. */ }, { key: "get", value: function get(key) { // Shortcut non-object-like to get from internal Map. if (key === null || _typeof(key) !== 'object') { return this._map.get(key); } var valuePair = getValuePair(this, key); if (valuePair) { return valuePair[1]; } } /** * Returns a boolean indicating whether an element with the specified key * exists or not. * * @param {*} key The key of the element to test for presence. * * @return {boolean} Whether an element with the specified key exists. */ }, { key: "has", value: function has(key) { if (key === null || _typeof(key) !== 'object') { return this._map.has(key); } // Test on the _presence_ of the pair, not its value, as even undefined // can be a valid member value for a key. return getValuePair(this, key) !== undefined; } /** * Removes the specified element. * * @param {*} key The key of the element to remove. * * @return {boolean} Returns true if an element existed and has been * removed, or false if the element does not exist. */ }, { key: "delete", value: function _delete(key) { if (!this.has(key)) { return false; } // This naive implementation will leave orphaned child trees. A better // implementation should traverse and remove orphans. this.set(key, undefined); return true; } /** * Executes a provided function once per each key/value pair, in insertion * order. * * @param {Function} callback Function to execute for each element. * @param {*} thisArg Value to use as `this` when executing * `callback`. */ }, { key: "forEach", value: function forEach(callback) { var _this = this; var thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this; this._map.forEach(function (value, key) { // Unwrap value from object-like value pair. if (key !== null && _typeof(key) === 'object') { value = value[1]; } callback.call(thisArg, value, key, _this); }); } /** * Removes all elements. */ }, { key: "clear", value: function clear() { this._map = new Map(); this._arrayTreeMap = new Map(); this._objectTreeMap = new Map(); } }, { key: "size", get: function get() { return this._map.size; } }]); return EquivalentKeyMap; }(); module.exports = EquivalentKeyMap; /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "GemG": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! autosize 4.0.4 license: MIT http://www.jacklmoore.com/autosize */ (function (global, factory) { if (true) { !(__WEBPACK_AMD_DEFINE_ARRAY__ = [module, exports], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else { var mod; } })(this, function (module, exports) { 'use strict'; var map = typeof Map === "function" ? new Map() : function () { var keys = []; var values = []; return { has: function has(key) { return keys.indexOf(key) > -1; }, get: function get(key) { return values[keys.indexOf(key)]; }, set: function set(key, value) { if (keys.indexOf(key) === -1) { keys.push(key); values.push(value); } }, delete: function _delete(key) { var index = keys.indexOf(key); if (index > -1) { keys.splice(index, 1); values.splice(index, 1); } } }; }(); var createEvent = function createEvent(name) { return new Event(name, { bubbles: true }); }; try { new Event('test'); } catch (e) { // IE does not support `new Event()` createEvent = function createEvent(name) { var evt = document.createEvent('Event'); evt.initEvent(name, true, false); return evt; }; } function assign(ta) { if (!ta || !ta.nodeName || ta.nodeName !== 'TEXTAREA' || map.has(ta)) return; var heightOffset = null; var clientWidth = null; var cachedHeight = null; function init() { var style = window.getComputedStyle(ta, null); if (style.resize === 'vertical') { ta.style.resize = 'none'; } else if (style.resize === 'both') { ta.style.resize = 'horizontal'; } if (style.boxSizing === 'content-box') { heightOffset = -(parseFloat(style.paddingTop) + parseFloat(style.paddingBottom)); } else { heightOffset = parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth); } // Fix when a textarea is not on document body and heightOffset is Not a Number if (isNaN(heightOffset)) { heightOffset = 0; } update(); } function changeOverflow(value) { { // Chrome/Safari-specific fix: // When the textarea y-overflow is hidden, Chrome/Safari do not reflow the text to account for the space // made available by removing the scrollbar. The following forces the necessary text reflow. var width = ta.style.width; ta.style.width = '0px'; // Force reflow: /* jshint ignore:start */ ta.offsetWidth; /* jshint ignore:end */ ta.style.width = width; } ta.style.overflowY = value; } function getParentOverflows(el) { var arr = []; while (el && el.parentNode && el.parentNode instanceof Element) { if (el.parentNode.scrollTop) { arr.push({ node: el.parentNode, scrollTop: el.parentNode.scrollTop }); } el = el.parentNode; } return arr; } function resize() { if (ta.scrollHeight === 0) { // If the scrollHeight is 0, then the element probably has display:none or is detached from the DOM. return; } var overflows = getParentOverflows(ta); var docTop = document.documentElement && document.documentElement.scrollTop; // Needed for Mobile IE (ticket #240) ta.style.height = ''; ta.style.height = ta.scrollHeight + heightOffset + 'px'; // used to check if an update is actually necessary on window.resize clientWidth = ta.clientWidth; // prevents scroll-position jumping overflows.forEach(function (el) { el.node.scrollTop = el.scrollTop; }); if (docTop) { document.documentElement.scrollTop = docTop; } } function update() { resize(); var styleHeight = Math.round(parseFloat(ta.style.height)); var computed = window.getComputedStyle(ta, null); // Using offsetHeight as a replacement for computed.height in IE, because IE does not account use of border-box var actualHeight = computed.boxSizing === 'content-box' ? Math.round(parseFloat(computed.height)) : ta.offsetHeight; // The actual height not matching the style height (set via the resize method) indicates that // the max-height has been exceeded, in which case the overflow should be allowed. if (actualHeight < styleHeight) { if (computed.overflowY === 'hidden') { changeOverflow('scroll'); resize(); actualHeight = computed.boxSizing === 'content-box' ? Math.round(parseFloat(window.getComputedStyle(ta, null).height)) : ta.offsetHeight; } } else { // Normally keep overflow set to hidden, to avoid flash of scrollbar as the textarea expands. if (computed.overflowY !== 'hidden') { changeOverflow('hidden'); resize(); actualHeight = computed.boxSizing === 'content-box' ? Math.round(parseFloat(window.getComputedStyle(ta, null).height)) : ta.offsetHeight; } } if (cachedHeight !== actualHeight) { cachedHeight = actualHeight; var evt = createEvent('autosize:resized'); try { ta.dispatchEvent(evt); } catch (err) { // Firefox will throw an error on dispatchEvent for a detached element // https://bugzilla.mozilla.org/show_bug.cgi?id=889376 } } } var pageResize = function pageResize() { if (ta.clientWidth !== clientWidth) { update(); } }; var destroy = function (style) { window.removeEventListener('resize', pageResize, false); ta.removeEventListener('input', update, false); ta.removeEventListener('keyup', update, false); ta.removeEventListener('autosize:destroy', destroy, false); ta.removeEventListener('autosize:update', update, false); Object.keys(style).forEach(function (key) { ta.style[key] = style[key]; }); map.delete(ta); }.bind(ta, { height: ta.style.height, resize: ta.style.resize, overflowY: ta.style.overflowY, overflowX: ta.style.overflowX, wordWrap: ta.style.wordWrap }); ta.addEventListener('autosize:destroy', destroy, false); // IE9 does not fire onpropertychange or oninput for deletions, // so binding to onkeyup to catch most of those events. // There is no way that I know of to detect something like 'cut' in IE9. if ('onpropertychange' in ta && 'oninput' in ta) { ta.addEventListener('keyup', update, false); } window.addEventListener('resize', pageResize, false); ta.addEventListener('input', update, false); ta.addEventListener('autosize:update', update, false); ta.style.overflowX = 'hidden'; ta.style.wordWrap = 'break-word'; map.set(ta, { destroy: destroy, update: update }); init(); } function destroy(ta) { var methods = map.get(ta); if (methods) { methods.destroy(); } } function update(ta) { var methods = map.get(ta); if (methods) { methods.update(); } } var autosize = null; // Do nothing in Node.js environment and IE8 (or lower) if (typeof window === 'undefined' || typeof window.getComputedStyle !== 'function') { autosize = function autosize(el) { return el; }; autosize.destroy = function (el) { return el; }; autosize.update = function (el) { return el; }; } else { autosize = function autosize(el, options) { if (el) { Array.prototype.forEach.call(el.length ? el : [el], function (x) { return assign(x, options); }); } return el; }; autosize.destroy = function (el) { if (el) { Array.prototype.forEach.call(el.length ? el : [el], destroy); } return el; }; autosize.update = function (el) { if (el) { Array.prototype.forEach.call(el.length ? el : [el], update); } return el; }; } exports.default = autosize; module.exports = exports['default']; }); /***/ }), /***/ "HSyU": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blocks"]; }()); /***/ }), /***/ "HaE+": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _asyncToGenerator; }); function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } /***/ }), /***/ "JREk": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["serverSideRender"]; }()); /***/ }), /***/ "JX7q": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; }); function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } /***/ }), /***/ "Ji7U": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inherits; }); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } /***/ }), /***/ "K9lf": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["compose"]; }()); /***/ }), /***/ "KEfo": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["viewport"]; }()); /***/ }), /***/ "KQm4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js var arrayLikeToArray = __webpack_require__("a3WO"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js var iterableToArray = __webpack_require__("25BE"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread(); } /***/ }), /***/ "Mmq9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["url"]; }()); /***/ }), /***/ "NMb1": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["deprecated"]; }()); /***/ }), /***/ "O6Fj": /***/ (function(module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var TextareaAutosize_1 = __webpack_require__("CNgt"); exports["default"] = TextareaAutosize_1["default"]; /***/ }), /***/ "ODXe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js var arrayWithHoles = __webpack_require__("DSFK"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js var nonIterableRest = __webpack_require__("PYwp"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])(); } /***/ }), /***/ "PLxR": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "blockAutocompleter", function() { return /* reexport */ autocompleters_block; }); __webpack_require__.d(__webpack_exports__, "userAutocompleter", function() { return /* reexport */ autocompleters_user; }); __webpack_require__.d(__webpack_exports__, "AutosaveMonitor", function() { return /* reexport */ autosave_monitor; }); __webpack_require__.d(__webpack_exports__, "DocumentOutline", function() { return /* reexport */ document_outline; }); __webpack_require__.d(__webpack_exports__, "DocumentOutlineCheck", function() { return /* reexport */ check; }); __webpack_require__.d(__webpack_exports__, "VisualEditorGlobalKeyboardShortcuts", function() { return /* reexport */ visual_editor_shortcuts; }); __webpack_require__.d(__webpack_exports__, "EditorGlobalKeyboardShortcuts", function() { return /* reexport */ EditorGlobalKeyboardShortcuts; }); __webpack_require__.d(__webpack_exports__, "TextEditorGlobalKeyboardShortcuts", function() { return /* reexport */ TextEditorGlobalKeyboardShortcuts; }); __webpack_require__.d(__webpack_exports__, "EditorKeyboardShortcutsRegister", function() { return /* reexport */ register_shortcuts; }); __webpack_require__.d(__webpack_exports__, "EditorHistoryRedo", function() { return /* reexport */ editor_history_redo; }); __webpack_require__.d(__webpack_exports__, "EditorHistoryUndo", function() { return /* reexport */ editor_history_undo; }); __webpack_require__.d(__webpack_exports__, "EditorNotices", function() { return /* reexport */ editor_notices; }); __webpack_require__.d(__webpack_exports__, "EntitiesSavedStates", function() { return /* reexport */ EntitiesSavedStates; }); __webpack_require__.d(__webpack_exports__, "ErrorBoundary", function() { return /* reexport */ error_boundary; }); __webpack_require__.d(__webpack_exports__, "LocalAutosaveMonitor", function() { return /* reexport */ local_autosave_monitor; }); __webpack_require__.d(__webpack_exports__, "PageAttributesCheck", function() { return /* reexport */ page_attributes_check; }); __webpack_require__.d(__webpack_exports__, "PageAttributesOrder", function() { return /* reexport */ page_attributes_order; }); __webpack_require__.d(__webpack_exports__, "PageAttributesParent", function() { return /* reexport */ page_attributes_parent; }); __webpack_require__.d(__webpack_exports__, "PageTemplate", function() { return /* reexport */ page_attributes_template; }); __webpack_require__.d(__webpack_exports__, "PostAuthor", function() { return /* reexport */ post_author; }); __webpack_require__.d(__webpack_exports__, "PostAuthorCheck", function() { return /* reexport */ post_author_check; }); __webpack_require__.d(__webpack_exports__, "PostComments", function() { return /* reexport */ post_comments; }); __webpack_require__.d(__webpack_exports__, "PostExcerpt", function() { return /* reexport */ post_excerpt; }); __webpack_require__.d(__webpack_exports__, "PostExcerptCheck", function() { return /* reexport */ post_excerpt_check; }); __webpack_require__.d(__webpack_exports__, "PostFeaturedImage", function() { return /* reexport */ post_featured_image; }); __webpack_require__.d(__webpack_exports__, "PostFeaturedImageCheck", function() { return /* reexport */ post_featured_image_check; }); __webpack_require__.d(__webpack_exports__, "PostFormat", function() { return /* reexport */ post_format; }); __webpack_require__.d(__webpack_exports__, "PostFormatCheck", function() { return /* reexport */ post_format_check; }); __webpack_require__.d(__webpack_exports__, "PostLastRevision", function() { return /* reexport */ post_last_revision; }); __webpack_require__.d(__webpack_exports__, "PostLastRevisionCheck", function() { return /* reexport */ post_last_revision_check; }); __webpack_require__.d(__webpack_exports__, "PostLockedModal", function() { return /* reexport */ post_locked_modal; }); __webpack_require__.d(__webpack_exports__, "PostPendingStatus", function() { return /* reexport */ post_pending_status; }); __webpack_require__.d(__webpack_exports__, "PostPendingStatusCheck", function() { return /* reexport */ post_pending_status_check; }); __webpack_require__.d(__webpack_exports__, "PostPingbacks", function() { return /* reexport */ post_pingbacks; }); __webpack_require__.d(__webpack_exports__, "PostPreviewButton", function() { return /* reexport */ post_preview_button; }); __webpack_require__.d(__webpack_exports__, "PostPublishButton", function() { return /* reexport */ post_publish_button; }); __webpack_require__.d(__webpack_exports__, "PostPublishButtonLabel", function() { return /* reexport */ post_publish_button_label; }); __webpack_require__.d(__webpack_exports__, "PostPublishPanel", function() { return /* reexport */ post_publish_panel; }); __webpack_require__.d(__webpack_exports__, "PostSavedState", function() { return /* reexport */ post_saved_state; }); __webpack_require__.d(__webpack_exports__, "PostSchedule", function() { return /* reexport */ post_schedule; }); __webpack_require__.d(__webpack_exports__, "PostScheduleCheck", function() { return /* reexport */ post_schedule_check; }); __webpack_require__.d(__webpack_exports__, "PostScheduleLabel", function() { return /* reexport */ post_schedule_label; }); __webpack_require__.d(__webpack_exports__, "PostSlug", function() { return /* reexport */ post_slug; }); __webpack_require__.d(__webpack_exports__, "PostSlugCheck", function() { return /* reexport */ PostSlugCheck; }); __webpack_require__.d(__webpack_exports__, "PostSticky", function() { return /* reexport */ post_sticky; }); __webpack_require__.d(__webpack_exports__, "PostStickyCheck", function() { return /* reexport */ post_sticky_check; }); __webpack_require__.d(__webpack_exports__, "PostSwitchToDraftButton", function() { return /* reexport */ post_switch_to_draft_button; }); __webpack_require__.d(__webpack_exports__, "PostTaxonomies", function() { return /* reexport */ post_taxonomies; }); __webpack_require__.d(__webpack_exports__, "PostTaxonomiesCheck", function() { return /* reexport */ post_taxonomies_check; }); __webpack_require__.d(__webpack_exports__, "PostTextEditor", function() { return /* reexport */ post_text_editor; }); __webpack_require__.d(__webpack_exports__, "PostTitle", function() { return /* reexport */ post_title; }); __webpack_require__.d(__webpack_exports__, "PostTrash", function() { return /* reexport */ post_trash; }); __webpack_require__.d(__webpack_exports__, "PostTrashCheck", function() { return /* reexport */ post_trash_check; }); __webpack_require__.d(__webpack_exports__, "PostTypeSupportCheck", function() { return /* reexport */ post_type_support_check; }); __webpack_require__.d(__webpack_exports__, "PostVisibility", function() { return /* reexport */ post_visibility; }); __webpack_require__.d(__webpack_exports__, "PostVisibilityLabel", function() { return /* reexport */ post_visibility_label; }); __webpack_require__.d(__webpack_exports__, "PostVisibilityCheck", function() { return /* reexport */ post_visibility_check; }); __webpack_require__.d(__webpack_exports__, "TableOfContents", function() { return /* reexport */ table_of_contents; }); __webpack_require__.d(__webpack_exports__, "UnsavedChangesWarning", function() { return /* reexport */ unsaved_changes_warning; }); __webpack_require__.d(__webpack_exports__, "WordCount", function() { return /* reexport */ word_count; }); __webpack_require__.d(__webpack_exports__, "EditorProvider", function() { return /* reexport */ provider; }); __webpack_require__.d(__webpack_exports__, "ServerSideRender", function() { return /* reexport */ external_this_wp_serverSideRender_default.a; }); __webpack_require__.d(__webpack_exports__, "RichText", function() { return /* reexport */ RichText; }); __webpack_require__.d(__webpack_exports__, "Autocomplete", function() { return /* reexport */ Autocomplete; }); __webpack_require__.d(__webpack_exports__, "AlignmentToolbar", function() { return /* reexport */ AlignmentToolbar; }); __webpack_require__.d(__webpack_exports__, "BlockAlignmentToolbar", function() { return /* reexport */ BlockAlignmentToolbar; }); __webpack_require__.d(__webpack_exports__, "BlockControls", function() { return /* reexport */ BlockControls; }); __webpack_require__.d(__webpack_exports__, "BlockEdit", function() { return /* reexport */ deprecated_BlockEdit; }); __webpack_require__.d(__webpack_exports__, "BlockEditorKeyboardShortcuts", function() { return /* reexport */ BlockEditorKeyboardShortcuts; }); __webpack_require__.d(__webpack_exports__, "BlockFormatControls", function() { return /* reexport */ BlockFormatControls; }); __webpack_require__.d(__webpack_exports__, "BlockIcon", function() { return /* reexport */ BlockIcon; }); __webpack_require__.d(__webpack_exports__, "BlockInspector", function() { return /* reexport */ BlockInspector; }); __webpack_require__.d(__webpack_exports__, "BlockList", function() { return /* reexport */ BlockList; }); __webpack_require__.d(__webpack_exports__, "BlockMover", function() { return /* reexport */ BlockMover; }); __webpack_require__.d(__webpack_exports__, "BlockNavigationDropdown", function() { return /* reexport */ BlockNavigationDropdown; }); __webpack_require__.d(__webpack_exports__, "BlockSelectionClearer", function() { return /* reexport */ BlockSelectionClearer; }); __webpack_require__.d(__webpack_exports__, "BlockSettingsMenu", function() { return /* reexport */ BlockSettingsMenu; }); __webpack_require__.d(__webpack_exports__, "BlockTitle", function() { return /* reexport */ BlockTitle; }); __webpack_require__.d(__webpack_exports__, "BlockToolbar", function() { return /* reexport */ BlockToolbar; }); __webpack_require__.d(__webpack_exports__, "ColorPalette", function() { return /* reexport */ ColorPalette; }); __webpack_require__.d(__webpack_exports__, "ContrastChecker", function() { return /* reexport */ ContrastChecker; }); __webpack_require__.d(__webpack_exports__, "CopyHandler", function() { return /* reexport */ CopyHandler; }); __webpack_require__.d(__webpack_exports__, "DefaultBlockAppender", function() { return /* reexport */ DefaultBlockAppender; }); __webpack_require__.d(__webpack_exports__, "FontSizePicker", function() { return /* reexport */ FontSizePicker; }); __webpack_require__.d(__webpack_exports__, "Inserter", function() { return /* reexport */ Inserter; }); __webpack_require__.d(__webpack_exports__, "InnerBlocks", function() { return /* reexport */ InnerBlocks; }); __webpack_require__.d(__webpack_exports__, "InspectorAdvancedControls", function() { return /* reexport */ InspectorAdvancedControls; }); __webpack_require__.d(__webpack_exports__, "InspectorControls", function() { return /* reexport */ InspectorControls; }); __webpack_require__.d(__webpack_exports__, "PanelColorSettings", function() { return /* reexport */ PanelColorSettings; }); __webpack_require__.d(__webpack_exports__, "PlainText", function() { return /* reexport */ PlainText; }); __webpack_require__.d(__webpack_exports__, "RichTextShortcut", function() { return /* reexport */ RichTextShortcut; }); __webpack_require__.d(__webpack_exports__, "RichTextToolbarButton", function() { return /* reexport */ RichTextToolbarButton; }); __webpack_require__.d(__webpack_exports__, "__unstableRichTextInputEvent", function() { return /* reexport */ __unstableRichTextInputEvent; }); __webpack_require__.d(__webpack_exports__, "MediaPlaceholder", function() { return /* reexport */ MediaPlaceholder; }); __webpack_require__.d(__webpack_exports__, "MediaUpload", function() { return /* reexport */ MediaUpload; }); __webpack_require__.d(__webpack_exports__, "MediaUploadCheck", function() { return /* reexport */ MediaUploadCheck; }); __webpack_require__.d(__webpack_exports__, "MultiBlocksSwitcher", function() { return /* reexport */ MultiBlocksSwitcher; }); __webpack_require__.d(__webpack_exports__, "MultiSelectScrollIntoView", function() { return /* reexport */ MultiSelectScrollIntoView; }); __webpack_require__.d(__webpack_exports__, "NavigableToolbar", function() { return /* reexport */ NavigableToolbar; }); __webpack_require__.d(__webpack_exports__, "ObserveTyping", function() { return /* reexport */ ObserveTyping; }); __webpack_require__.d(__webpack_exports__, "PreserveScrollInReorder", function() { return /* reexport */ PreserveScrollInReorder; }); __webpack_require__.d(__webpack_exports__, "SkipToSelectedBlock", function() { return /* reexport */ SkipToSelectedBlock; }); __webpack_require__.d(__webpack_exports__, "URLInput", function() { return /* reexport */ URLInput; }); __webpack_require__.d(__webpack_exports__, "URLInputButton", function() { return /* reexport */ URLInputButton; }); __webpack_require__.d(__webpack_exports__, "URLPopover", function() { return /* reexport */ URLPopover; }); __webpack_require__.d(__webpack_exports__, "Warning", function() { return /* reexport */ Warning; }); __webpack_require__.d(__webpack_exports__, "WritingFlow", function() { return /* reexport */ WritingFlow; }); __webpack_require__.d(__webpack_exports__, "createCustomColorsHOC", function() { return /* reexport */ createCustomColorsHOC; }); __webpack_require__.d(__webpack_exports__, "getColorClassName", function() { return /* reexport */ getColorClassName; }); __webpack_require__.d(__webpack_exports__, "getColorObjectByAttributeValues", function() { return /* reexport */ getColorObjectByAttributeValues; }); __webpack_require__.d(__webpack_exports__, "getColorObjectByColorValue", function() { return /* reexport */ getColorObjectByColorValue; }); __webpack_require__.d(__webpack_exports__, "getFontSize", function() { return /* reexport */ getFontSize; }); __webpack_require__.d(__webpack_exports__, "getFontSizeClass", function() { return /* reexport */ getFontSizeClass; }); __webpack_require__.d(__webpack_exports__, "withColorContext", function() { return /* reexport */ withColorContext; }); __webpack_require__.d(__webpack_exports__, "withColors", function() { return /* reexport */ withColors; }); __webpack_require__.d(__webpack_exports__, "withFontSizes", function() { return /* reexport */ withFontSizes; }); __webpack_require__.d(__webpack_exports__, "mediaUpload", function() { return /* reexport */ media_upload; }); __webpack_require__.d(__webpack_exports__, "cleanForSlug", function() { return /* reexport */ cleanForSlug; }); __webpack_require__.d(__webpack_exports__, "storeConfig", function() { return /* reexport */ storeConfig; }); __webpack_require__.d(__webpack_exports__, "transformStyles", function() { return /* reexport */ external_this_wp_blockEditor_["transformStyles"]; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/editor/build-module/store/actions.js var actions_namespaceObject = {}; __webpack_require__.r(actions_namespaceObject); __webpack_require__.d(actions_namespaceObject, "setupEditor", function() { return setupEditor; }); __webpack_require__.d(actions_namespaceObject, "__experimentalTearDownEditor", function() { return __experimentalTearDownEditor; }); __webpack_require__.d(actions_namespaceObject, "resetPost", function() { return resetPost; }); __webpack_require__.d(actions_namespaceObject, "resetAutosave", function() { return resetAutosave; }); __webpack_require__.d(actions_namespaceObject, "__experimentalRequestPostUpdateStart", function() { return __experimentalRequestPostUpdateStart; }); __webpack_require__.d(actions_namespaceObject, "__experimentalRequestPostUpdateFinish", function() { return __experimentalRequestPostUpdateFinish; }); __webpack_require__.d(actions_namespaceObject, "updatePost", function() { return updatePost; }); __webpack_require__.d(actions_namespaceObject, "setupEditorState", function() { return setupEditorState; }); __webpack_require__.d(actions_namespaceObject, "editPost", function() { return actions_editPost; }); __webpack_require__.d(actions_namespaceObject, "__experimentalOptimisticUpdatePost", function() { return __experimentalOptimisticUpdatePost; }); __webpack_require__.d(actions_namespaceObject, "savePost", function() { return actions_savePost; }); __webpack_require__.d(actions_namespaceObject, "refreshPost", function() { return refreshPost; }); __webpack_require__.d(actions_namespaceObject, "trashPost", function() { return trashPost; }); __webpack_require__.d(actions_namespaceObject, "autosave", function() { return actions_autosave; }); __webpack_require__.d(actions_namespaceObject, "__experimentalLocalAutosave", function() { return actions_experimentalLocalAutosave; }); __webpack_require__.d(actions_namespaceObject, "redo", function() { return actions_redo; }); __webpack_require__.d(actions_namespaceObject, "undo", function() { return actions_undo; }); __webpack_require__.d(actions_namespaceObject, "createUndoLevel", function() { return createUndoLevel; }); __webpack_require__.d(actions_namespaceObject, "updatePostLock", function() { return updatePostLock; }); __webpack_require__.d(actions_namespaceObject, "__experimentalFetchReusableBlocks", function() { return actions_experimentalFetchReusableBlocks; }); __webpack_require__.d(actions_namespaceObject, "__experimentalReceiveReusableBlocks", function() { return __experimentalReceiveReusableBlocks; }); __webpack_require__.d(actions_namespaceObject, "__experimentalSaveReusableBlock", function() { return __experimentalSaveReusableBlock; }); __webpack_require__.d(actions_namespaceObject, "__experimentalDeleteReusableBlock", function() { return __experimentalDeleteReusableBlock; }); __webpack_require__.d(actions_namespaceObject, "__experimentalUpdateReusableBlock", function() { return __experimentalUpdateReusableBlock; }); __webpack_require__.d(actions_namespaceObject, "__experimentalConvertBlockToStatic", function() { return __experimentalConvertBlockToStatic; }); __webpack_require__.d(actions_namespaceObject, "__experimentalConvertBlockToReusable", function() { return __experimentalConvertBlockToReusable; }); __webpack_require__.d(actions_namespaceObject, "enablePublishSidebar", function() { return enablePublishSidebar; }); __webpack_require__.d(actions_namespaceObject, "disablePublishSidebar", function() { return disablePublishSidebar; }); __webpack_require__.d(actions_namespaceObject, "lockPostSaving", function() { return lockPostSaving; }); __webpack_require__.d(actions_namespaceObject, "unlockPostSaving", function() { return unlockPostSaving; }); __webpack_require__.d(actions_namespaceObject, "lockPostAutosaving", function() { return lockPostAutosaving; }); __webpack_require__.d(actions_namespaceObject, "unlockPostAutosaving", function() { return unlockPostAutosaving; }); __webpack_require__.d(actions_namespaceObject, "resetEditorBlocks", function() { return actions_resetEditorBlocks; }); __webpack_require__.d(actions_namespaceObject, "updateEditorSettings", function() { return updateEditorSettings; }); __webpack_require__.d(actions_namespaceObject, "resetBlocks", function() { return resetBlocks; }); __webpack_require__.d(actions_namespaceObject, "receiveBlocks", function() { return receiveBlocks; }); __webpack_require__.d(actions_namespaceObject, "updateBlock", function() { return updateBlock; }); __webpack_require__.d(actions_namespaceObject, "updateBlockAttributes", function() { return updateBlockAttributes; }); __webpack_require__.d(actions_namespaceObject, "selectBlock", function() { return selectBlock; }); __webpack_require__.d(actions_namespaceObject, "startMultiSelect", function() { return startMultiSelect; }); __webpack_require__.d(actions_namespaceObject, "stopMultiSelect", function() { return stopMultiSelect; }); __webpack_require__.d(actions_namespaceObject, "multiSelect", function() { return multiSelect; }); __webpack_require__.d(actions_namespaceObject, "clearSelectedBlock", function() { return clearSelectedBlock; }); __webpack_require__.d(actions_namespaceObject, "toggleSelection", function() { return toggleSelection; }); __webpack_require__.d(actions_namespaceObject, "replaceBlocks", function() { return actions_replaceBlocks; }); __webpack_require__.d(actions_namespaceObject, "replaceBlock", function() { return replaceBlock; }); __webpack_require__.d(actions_namespaceObject, "moveBlocksDown", function() { return moveBlocksDown; }); __webpack_require__.d(actions_namespaceObject, "moveBlocksUp", function() { return moveBlocksUp; }); __webpack_require__.d(actions_namespaceObject, "moveBlockToPosition", function() { return moveBlockToPosition; }); __webpack_require__.d(actions_namespaceObject, "insertBlock", function() { return insertBlock; }); __webpack_require__.d(actions_namespaceObject, "insertBlocks", function() { return insertBlocks; }); __webpack_require__.d(actions_namespaceObject, "showInsertionPoint", function() { return showInsertionPoint; }); __webpack_require__.d(actions_namespaceObject, "hideInsertionPoint", function() { return hideInsertionPoint; }); __webpack_require__.d(actions_namespaceObject, "setTemplateValidity", function() { return setTemplateValidity; }); __webpack_require__.d(actions_namespaceObject, "synchronizeTemplate", function() { return synchronizeTemplate; }); __webpack_require__.d(actions_namespaceObject, "mergeBlocks", function() { return mergeBlocks; }); __webpack_require__.d(actions_namespaceObject, "removeBlocks", function() { return removeBlocks; }); __webpack_require__.d(actions_namespaceObject, "removeBlock", function() { return removeBlock; }); __webpack_require__.d(actions_namespaceObject, "toggleBlockMode", function() { return toggleBlockMode; }); __webpack_require__.d(actions_namespaceObject, "startTyping", function() { return startTyping; }); __webpack_require__.d(actions_namespaceObject, "stopTyping", function() { return stopTyping; }); __webpack_require__.d(actions_namespaceObject, "enterFormattedText", function() { return enterFormattedText; }); __webpack_require__.d(actions_namespaceObject, "exitFormattedText", function() { return exitFormattedText; }); __webpack_require__.d(actions_namespaceObject, "insertDefaultBlock", function() { return insertDefaultBlock; }); __webpack_require__.d(actions_namespaceObject, "updateBlockListSettings", function() { return updateBlockListSettings; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/editor/build-module/store/selectors.js var selectors_namespaceObject = {}; __webpack_require__.r(selectors_namespaceObject); __webpack_require__.d(selectors_namespaceObject, "hasEditorUndo", function() { return hasEditorUndo; }); __webpack_require__.d(selectors_namespaceObject, "hasEditorRedo", function() { return hasEditorRedo; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostNew", function() { return selectors_isEditedPostNew; }); __webpack_require__.d(selectors_namespaceObject, "hasChangedContent", function() { return hasChangedContent; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostDirty", function() { return selectors_isEditedPostDirty; }); __webpack_require__.d(selectors_namespaceObject, "hasNonPostEntityChanges", function() { return selectors_hasNonPostEntityChanges; }); __webpack_require__.d(selectors_namespaceObject, "isCleanNewPost", function() { return selectors_isCleanNewPost; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPost", function() { return selectors_getCurrentPost; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPostType", function() { return selectors_getCurrentPostType; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPostId", function() { return selectors_getCurrentPostId; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPostRevisionsCount", function() { return getCurrentPostRevisionsCount; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPostLastRevisionId", function() { return getCurrentPostLastRevisionId; }); __webpack_require__.d(selectors_namespaceObject, "getPostEdits", function() { return getPostEdits; }); __webpack_require__.d(selectors_namespaceObject, "getReferenceByDistinctEdits", function() { return getReferenceByDistinctEdits; }); __webpack_require__.d(selectors_namespaceObject, "getCurrentPostAttribute", function() { return selectors_getCurrentPostAttribute; }); __webpack_require__.d(selectors_namespaceObject, "getEditedPostAttribute", function() { return selectors_getEditedPostAttribute; }); __webpack_require__.d(selectors_namespaceObject, "getAutosaveAttribute", function() { return getAutosaveAttribute; }); __webpack_require__.d(selectors_namespaceObject, "getEditedPostVisibility", function() { return selectors_getEditedPostVisibility; }); __webpack_require__.d(selectors_namespaceObject, "isCurrentPostPending", function() { return isCurrentPostPending; }); __webpack_require__.d(selectors_namespaceObject, "isCurrentPostPublished", function() { return selectors_isCurrentPostPublished; }); __webpack_require__.d(selectors_namespaceObject, "isCurrentPostScheduled", function() { return selectors_isCurrentPostScheduled; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostPublishable", function() { return selectors_isEditedPostPublishable; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostSaveable", function() { return selectors_isEditedPostSaveable; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostEmpty", function() { return isEditedPostEmpty; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostAutosaveable", function() { return selectors_isEditedPostAutosaveable; }); __webpack_require__.d(selectors_namespaceObject, "getAutosave", function() { return getAutosave; }); __webpack_require__.d(selectors_namespaceObject, "hasAutosave", function() { return hasAutosave; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostBeingScheduled", function() { return selectors_isEditedPostBeingScheduled; }); __webpack_require__.d(selectors_namespaceObject, "isEditedPostDateFloating", function() { return isEditedPostDateFloating; }); __webpack_require__.d(selectors_namespaceObject, "isSavingPost", function() { return selectors_isSavingPost; }); __webpack_require__.d(selectors_namespaceObject, "didPostSaveRequestSucceed", function() { return didPostSaveRequestSucceed; }); __webpack_require__.d(selectors_namespaceObject, "didPostSaveRequestFail", function() { return didPostSaveRequestFail; }); __webpack_require__.d(selectors_namespaceObject, "isAutosavingPost", function() { return selectors_isAutosavingPost; }); __webpack_require__.d(selectors_namespaceObject, "isPreviewingPost", function() { return isPreviewingPost; }); __webpack_require__.d(selectors_namespaceObject, "getEditedPostPreviewLink", function() { return selectors_getEditedPostPreviewLink; }); __webpack_require__.d(selectors_namespaceObject, "getSuggestedPostFormat", function() { return selectors_getSuggestedPostFormat; }); __webpack_require__.d(selectors_namespaceObject, "getBlocksForSerialization", function() { return getBlocksForSerialization; }); __webpack_require__.d(selectors_namespaceObject, "getEditedPostContent", function() { return getEditedPostContent; }); __webpack_require__.d(selectors_namespaceObject, "__experimentalGetReusableBlock", function() { return __experimentalGetReusableBlock; }); __webpack_require__.d(selectors_namespaceObject, "__experimentalIsSavingReusableBlock", function() { return __experimentalIsSavingReusableBlock; }); __webpack_require__.d(selectors_namespaceObject, "__experimentalIsFetchingReusableBlock", function() { return __experimentalIsFetchingReusableBlock; }); __webpack_require__.d(selectors_namespaceObject, "__experimentalGetReusableBlocks", function() { return selectors_experimentalGetReusableBlocks; }); __webpack_require__.d(selectors_namespaceObject, "getStateBeforeOptimisticTransaction", function() { return getStateBeforeOptimisticTransaction; }); __webpack_require__.d(selectors_namespaceObject, "isPublishingPost", function() { return selectors_isPublishingPost; }); __webpack_require__.d(selectors_namespaceObject, "isPermalinkEditable", function() { return selectors_isPermalinkEditable; }); __webpack_require__.d(selectors_namespaceObject, "getPermalink", function() { return getPermalink; }); __webpack_require__.d(selectors_namespaceObject, "getPermalinkParts", function() { return selectors_getPermalinkParts; }); __webpack_require__.d(selectors_namespaceObject, "inSomeHistory", function() { return inSomeHistory; }); __webpack_require__.d(selectors_namespaceObject, "isPostLocked", function() { return isPostLocked; }); __webpack_require__.d(selectors_namespaceObject, "isPostSavingLocked", function() { return selectors_isPostSavingLocked; }); __webpack_require__.d(selectors_namespaceObject, "isPostAutosavingLocked", function() { return isPostAutosavingLocked; }); __webpack_require__.d(selectors_namespaceObject, "isPostLockTakeover", function() { return isPostLockTakeover; }); __webpack_require__.d(selectors_namespaceObject, "getPostLockUser", function() { return getPostLockUser; }); __webpack_require__.d(selectors_namespaceObject, "getActivePostLock", function() { return getActivePostLock; }); __webpack_require__.d(selectors_namespaceObject, "canUserUseUnfilteredHTML", function() { return selectors_canUserUseUnfilteredHTML; }); __webpack_require__.d(selectors_namespaceObject, "isPublishSidebarEnabled", function() { return selectors_isPublishSidebarEnabled; }); __webpack_require__.d(selectors_namespaceObject, "getEditorBlocks", function() { return selectors_getEditorBlocks; }); __webpack_require__.d(selectors_namespaceObject, "getEditorSelectionStart", function() { return selectors_getEditorSelectionStart; }); __webpack_require__.d(selectors_namespaceObject, "getEditorSelectionEnd", function() { return selectors_getEditorSelectionEnd; }); __webpack_require__.d(selectors_namespaceObject, "__unstableIsEditorReady", function() { return __unstableIsEditorReady; }); __webpack_require__.d(selectors_namespaceObject, "getEditorSettings", function() { return selectors_getEditorSettings; }); __webpack_require__.d(selectors_namespaceObject, "getBlockName", function() { return selectors_getBlockName; }); __webpack_require__.d(selectors_namespaceObject, "isBlockValid", function() { return isBlockValid; }); __webpack_require__.d(selectors_namespaceObject, "getBlockAttributes", function() { return getBlockAttributes; }); __webpack_require__.d(selectors_namespaceObject, "getBlock", function() { return selectors_getBlock; }); __webpack_require__.d(selectors_namespaceObject, "getBlocks", function() { return selectors_getBlocks; }); __webpack_require__.d(selectors_namespaceObject, "__unstableGetBlockWithoutInnerBlocks", function() { return __unstableGetBlockWithoutInnerBlocks; }); __webpack_require__.d(selectors_namespaceObject, "getClientIdsOfDescendants", function() { return getClientIdsOfDescendants; }); __webpack_require__.d(selectors_namespaceObject, "getClientIdsWithDescendants", function() { return getClientIdsWithDescendants; }); __webpack_require__.d(selectors_namespaceObject, "getGlobalBlockCount", function() { return getGlobalBlockCount; }); __webpack_require__.d(selectors_namespaceObject, "getBlocksByClientId", function() { return selectors_getBlocksByClientId; }); __webpack_require__.d(selectors_namespaceObject, "getBlockCount", function() { return getBlockCount; }); __webpack_require__.d(selectors_namespaceObject, "getBlockSelectionStart", function() { return getBlockSelectionStart; }); __webpack_require__.d(selectors_namespaceObject, "getBlockSelectionEnd", function() { return getBlockSelectionEnd; }); __webpack_require__.d(selectors_namespaceObject, "getSelectedBlockCount", function() { return getSelectedBlockCount; }); __webpack_require__.d(selectors_namespaceObject, "hasSelectedBlock", function() { return hasSelectedBlock; }); __webpack_require__.d(selectors_namespaceObject, "getSelectedBlockClientId", function() { return selectors_getSelectedBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "getSelectedBlock", function() { return getSelectedBlock; }); __webpack_require__.d(selectors_namespaceObject, "getBlockRootClientId", function() { return getBlockRootClientId; }); __webpack_require__.d(selectors_namespaceObject, "getBlockHierarchyRootClientId", function() { return getBlockHierarchyRootClientId; }); __webpack_require__.d(selectors_namespaceObject, "getAdjacentBlockClientId", function() { return getAdjacentBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "getPreviousBlockClientId", function() { return getPreviousBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "getNextBlockClientId", function() { return getNextBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "getSelectedBlocksInitialCaretPosition", function() { return getSelectedBlocksInitialCaretPosition; }); __webpack_require__.d(selectors_namespaceObject, "getMultiSelectedBlockClientIds", function() { return getMultiSelectedBlockClientIds; }); __webpack_require__.d(selectors_namespaceObject, "getMultiSelectedBlocks", function() { return getMultiSelectedBlocks; }); __webpack_require__.d(selectors_namespaceObject, "getFirstMultiSelectedBlockClientId", function() { return getFirstMultiSelectedBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "getLastMultiSelectedBlockClientId", function() { return getLastMultiSelectedBlockClientId; }); __webpack_require__.d(selectors_namespaceObject, "isFirstMultiSelectedBlock", function() { return isFirstMultiSelectedBlock; }); __webpack_require__.d(selectors_namespaceObject, "isBlockMultiSelected", function() { return isBlockMultiSelected; }); __webpack_require__.d(selectors_namespaceObject, "isAncestorMultiSelected", function() { return isAncestorMultiSelected; }); __webpack_require__.d(selectors_namespaceObject, "getMultiSelectedBlocksStartClientId", function() { return getMultiSelectedBlocksStartClientId; }); __webpack_require__.d(selectors_namespaceObject, "getMultiSelectedBlocksEndClientId", function() { return getMultiSelectedBlocksEndClientId; }); __webpack_require__.d(selectors_namespaceObject, "getBlockOrder", function() { return getBlockOrder; }); __webpack_require__.d(selectors_namespaceObject, "getBlockIndex", function() { return getBlockIndex; }); __webpack_require__.d(selectors_namespaceObject, "isBlockSelected", function() { return isBlockSelected; }); __webpack_require__.d(selectors_namespaceObject, "hasSelectedInnerBlock", function() { return hasSelectedInnerBlock; }); __webpack_require__.d(selectors_namespaceObject, "isBlockWithinSelection", function() { return isBlockWithinSelection; }); __webpack_require__.d(selectors_namespaceObject, "hasMultiSelection", function() { return hasMultiSelection; }); __webpack_require__.d(selectors_namespaceObject, "isMultiSelecting", function() { return isMultiSelecting; }); __webpack_require__.d(selectors_namespaceObject, "isSelectionEnabled", function() { return isSelectionEnabled; }); __webpack_require__.d(selectors_namespaceObject, "getBlockMode", function() { return getBlockMode; }); __webpack_require__.d(selectors_namespaceObject, "isTyping", function() { return isTyping; }); __webpack_require__.d(selectors_namespaceObject, "isCaretWithinFormattedText", function() { return isCaretWithinFormattedText; }); __webpack_require__.d(selectors_namespaceObject, "getBlockInsertionPoint", function() { return getBlockInsertionPoint; }); __webpack_require__.d(selectors_namespaceObject, "isBlockInsertionPointVisible", function() { return isBlockInsertionPointVisible; }); __webpack_require__.d(selectors_namespaceObject, "isValidTemplate", function() { return isValidTemplate; }); __webpack_require__.d(selectors_namespaceObject, "getTemplate", function() { return getTemplate; }); __webpack_require__.d(selectors_namespaceObject, "getTemplateLock", function() { return getTemplateLock; }); __webpack_require__.d(selectors_namespaceObject, "canInsertBlockType", function() { return selectors_canInsertBlockType; }); __webpack_require__.d(selectors_namespaceObject, "getInserterItems", function() { return selectors_getInserterItems; }); __webpack_require__.d(selectors_namespaceObject, "hasInserterItems", function() { return hasInserterItems; }); __webpack_require__.d(selectors_namespaceObject, "getBlockListSettings", function() { return getBlockListSettings; }); // EXTERNAL MODULE: external {"this":["wp","blockEditor"]} var external_this_wp_blockEditor_ = __webpack_require__("axFQ"); // EXTERNAL MODULE: external {"this":["wp","blocks"]} var external_this_wp_blocks_ = __webpack_require__("HSyU"); // EXTERNAL MODULE: external {"this":["wp","coreData"]} var external_this_wp_coreData_ = __webpack_require__("jZUy"); // EXTERNAL MODULE: external {"this":["wp","keyboardShortcuts"]} var external_this_wp_keyboardShortcuts_ = __webpack_require__("hF7m"); // EXTERNAL MODULE: external {"this":["wp","notices"]} var external_this_wp_notices_ = __webpack_require__("onLe"); // EXTERNAL MODULE: external {"this":["wp","richText"]} var external_this_wp_richText_ = __webpack_require__("qRz9"); // EXTERNAL MODULE: external {"this":["wp","viewport"]} var external_this_wp_viewport_ = __webpack_require__("KEfo"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: external {"this":["wp","data"]} var external_this_wp_data_ = __webpack_require__("1ZqX"); // EXTERNAL MODULE: external {"this":["wp","dataControls"]} var external_this_wp_dataControls_ = __webpack_require__("51Zz"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js var esm_typeof = __webpack_require__("U8pU"); // EXTERNAL MODULE: ./node_modules/redux-optimist/index.js var redux_optimist = __webpack_require__("hx/w"); var redux_optimist_default = /*#__PURE__*/__webpack_require__.n(redux_optimist); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/defaults.js function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ var PREFERENCES_DEFAULTS = { insertUsage: {}, // Should be kept for backward compatibility, see: https://github.com/WordPress/gutenberg/issues/14580. isPublishSidebarEnabled: true }; /** * The default post editor settings * * allowedBlockTypes boolean|Array Allowed block types * richEditingEnabled boolean Whether rich editing is enabled or not * codeEditingEnabled boolean Whether code editing is enabled or not * enableCustomFields boolean Whether the WordPress custom fields are enabled or not * autosaveInterval number Autosave Interval * availableTemplates array? The available post templates * disablePostFormats boolean Whether or not the post formats are disabled * allowedMimeTypes array? List of allowed mime types and file extensions * maxUploadFileSize number Maximum upload file size */ var EDITOR_SETTINGS_DEFAULTS = _objectSpread({}, external_this_wp_blockEditor_["SETTINGS_DEFAULTS"], { richEditingEnabled: true, codeEditingEnabled: true, enableCustomFields: false }); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/reducer.js function reducer_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function reducer_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { reducer_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { reducer_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Returns a post attribute value, flattening nested rendered content using its * raw value in place of its original object form. * * @param {*} value Original value. * * @return {*} Raw value. */ function getPostRawValue(value) { if (value && 'object' === Object(esm_typeof["a" /* default */])(value) && 'raw' in value) { return value.raw; } return value; } /** * Returns true if the two object arguments have the same keys, or false * otherwise. * * @param {Object} a First object. * @param {Object} b Second object. * * @return {boolean} Whether the two objects have the same keys. */ function hasSameKeys(a, b) { return Object(external_this_lodash_["isEqual"])(Object(external_this_lodash_["keys"])(a), Object(external_this_lodash_["keys"])(b)); } /** * Returns true if, given the currently dispatching action and the previously * dispatched action, the two actions are editing the same post property, or * false otherwise. * * @param {Object} action Currently dispatching action. * @param {Object} previousAction Previously dispatched action. * * @return {boolean} Whether actions are updating the same post property. */ function isUpdatingSamePostProperty(action, previousAction) { return action.type === 'EDIT_POST' && hasSameKeys(action.edits, previousAction.edits); } /** * Returns true if, given the currently dispatching action and the previously * dispatched action, the two actions are modifying the same property such that * undo history should be batched. * * @param {Object} action Currently dispatching action. * @param {Object} previousAction Previously dispatched action. * * @return {boolean} Whether to overwrite present state. */ function shouldOverwriteState(action, previousAction) { if (action.type === 'RESET_EDITOR_BLOCKS') { return !action.shouldCreateUndoLevel; } if (!previousAction || action.type !== previousAction.type) { return false; } return isUpdatingSamePostProperty(action, previousAction); } function reducer_postId() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SETUP_EDITOR_STATE': case 'RESET_POST': case 'UPDATE_POST': return action.post.id; } return state; } function reducer_postType() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SETUP_EDITOR_STATE': case 'RESET_POST': case 'UPDATE_POST': return action.post.type; } return state; } /** * Reducer returning whether the post blocks match the defined template or not. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {boolean} Updated state. */ function reducer_template() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { isValid: true }; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SET_TEMPLATE_VALIDITY': return reducer_objectSpread({}, state, { isValid: action.isValid }); } return state; } /** * Reducer returning the user preferences. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {string} Updated state. */ function preferences() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : PREFERENCES_DEFAULTS; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'ENABLE_PUBLISH_SIDEBAR': return reducer_objectSpread({}, state, { isPublishSidebarEnabled: true }); case 'DISABLE_PUBLISH_SIDEBAR': return reducer_objectSpread({}, state, { isPublishSidebarEnabled: false }); } return state; } /** * Reducer returning current network request state (whether a request to * the WP REST API is in progress, successful, or failed). * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function saving() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'REQUEST_POST_UPDATE_START': case 'REQUEST_POST_UPDATE_FINISH': return { pending: action.type === 'REQUEST_POST_UPDATE_START', options: action.options || {} }; } return state; } /** * Post Lock State. * * @typedef {Object} PostLockState * * @property {boolean} isLocked Whether the post is locked. * @property {?boolean} isTakeover Whether the post editing has been taken over. * @property {?boolean} activePostLock Active post lock value. * @property {?Object} user User that took over the post. */ /** * Reducer returning the post lock status. * * @param {PostLockState} state Current state. * @param {Object} action Dispatched action. * * @return {PostLockState} Updated state. */ function postLock() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { isLocked: false }; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'UPDATE_POST_LOCK': return action.lock; } return state; } /** * Post saving lock. * * When post saving is locked, the post cannot be published or updated. * * @param {PostLockState} state Current state. * @param {Object} action Dispatched action. * * @return {PostLockState} Updated state. */ function postSavingLock() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'LOCK_POST_SAVING': return reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.lockName, true)); case 'UNLOCK_POST_SAVING': return Object(external_this_lodash_["omit"])(state, action.lockName); } return state; } /** * Post autosaving lock. * * When post autosaving is locked, the post will not autosave. * * @param {PostLockState} state Current state. * @param {Object} action Dispatched action. * * @return {PostLockState} Updated state. */ function postAutosavingLock() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'LOCK_POST_AUTOSAVING': return reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.lockName, true)); case 'UNLOCK_POST_AUTOSAVING': return Object(external_this_lodash_["omit"])(state, action.lockName); } return state; } var reducer_reusableBlocks = Object(external_this_wp_data_["combineReducers"])({ data: function data() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_REUSABLE_BLOCKS': { return reducer_objectSpread({}, state, {}, Object(external_this_lodash_["keyBy"])(action.results, 'id')); } case 'UPDATE_REUSABLE_BLOCK': { var id = action.id, changes = action.changes; return reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, id, reducer_objectSpread({}, state[id], {}, changes))); } case 'SAVE_REUSABLE_BLOCK_SUCCESS': { var _id = action.id, updatedId = action.updatedId; // If a temporary reusable block is saved, we swap the temporary id with the final one if (_id === updatedId) { return state; } var value = state[_id]; return reducer_objectSpread({}, Object(external_this_lodash_["omit"])(state, _id), Object(defineProperty["a" /* default */])({}, updatedId, reducer_objectSpread({}, value, { id: updatedId }))); } case 'REMOVE_REUSABLE_BLOCK': { var _id2 = action.id; return Object(external_this_lodash_["omit"])(state, _id2); } } return state; }, isFetching: function isFetching() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'FETCH_REUSABLE_BLOCKS': { var id = action.id; if (!id) { return state; } return reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, id, true)); } case 'FETCH_REUSABLE_BLOCKS_SUCCESS': case 'FETCH_REUSABLE_BLOCKS_FAILURE': { var _id3 = action.id; return Object(external_this_lodash_["omit"])(state, _id3); } } return state; }, isSaving: function isSaving() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SAVE_REUSABLE_BLOCK': return reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.id, true)); case 'SAVE_REUSABLE_BLOCK_SUCCESS': case 'SAVE_REUSABLE_BLOCK_FAILURE': { var id = action.id; return Object(external_this_lodash_["omit"])(state, id); } } return state; } }); /** * Reducer returning whether the editor is ready to be rendered. * The editor is considered ready to be rendered once * the post object is loaded properly and the initial blocks parsed. * * @param {boolean} state * @param {Object} action * * @return {boolean} Updated state. */ function reducer_isReady() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SETUP_EDITOR_STATE': return true; case 'TEAR_DOWN_EDITOR': return false; } return state; } /** * Reducer returning the post editor setting. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer_editorSettings() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : EDITOR_SETTINGS_DEFAULTS; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'UPDATE_EDITOR_SETTINGS': return reducer_objectSpread({}, state, {}, action.settings); } return state; } /* harmony default export */ var reducer = (redux_optimist_default()(Object(external_this_wp_data_["combineReducers"])({ postId: reducer_postId, postType: reducer_postType, preferences: preferences, saving: saving, postLock: postLock, reusableBlocks: reducer_reusableBlocks, template: reducer_template, postSavingLock: postSavingLock, isReady: reducer_isReady, editorSettings: reducer_editorSettings, postAutosavingLock: postAutosavingLock }))); // EXTERNAL MODULE: ./node_modules/refx/refx.js var refx = __webpack_require__("gQxa"); var refx_default = /*#__PURE__*/__webpack_require__.n(refx); // EXTERNAL MODULE: external {"this":"regeneratorRuntime"} var external_this_regeneratorRuntime_ = __webpack_require__("dvlR"); var external_this_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_this_regeneratorRuntime_); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js var asyncToGenerator = __webpack_require__("HaE+"); // EXTERNAL MODULE: external {"this":["wp","apiFetch"]} var external_this_wp_apiFetch_ = __webpack_require__("ywyh"); var external_this_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_apiFetch_); // EXTERNAL MODULE: external {"this":["wp","i18n"]} var external_this_wp_i18n_ = __webpack_require__("l3Sj"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules var toConsumableArray = __webpack_require__("KQm4"); // EXTERNAL MODULE: external {"this":["wp","deprecated"]} var external_this_wp_deprecated_ = __webpack_require__("NMb1"); var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/constants.js /** * Set of post properties for which edits should assume a merging behavior, * assuming an object value. * * @type {Set} */ var EDIT_MERGE_PROPERTIES = new Set(['meta']); /** * Constant for the store module (or reducer) key. * * @type {string} */ var STORE_KEY = 'core/editor'; var POST_UPDATE_TRANSACTION_ID = 'post-update'; var SAVE_POST_NOTICE_ID = 'SAVE_POST_NOTICE_ID'; var TRASH_POST_NOTICE_ID = 'TRASH_POST_NOTICE_ID'; var PERMALINK_POSTNAME_REGEX = /%(?:postname|pagename)%/; var ONE_MINUTE_IN_MS = 60 * 1000; var AUTOSAVE_PROPERTIES = ['title', 'excerpt', 'content']; // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/utils/notice-builder.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * External dependencies */ /** * Builds the arguments for a success notification dispatch. * * @param {Object} data Incoming data to build the arguments from. * * @return {Array} Arguments for dispatch. An empty array signals no * notification should be sent. */ function getNotificationArgumentsForSaveSuccess(data) { var previousPost = data.previousPost, post = data.post, postType = data.postType; // Autosaves are neither shown a notice nor redirected. if (Object(external_this_lodash_["get"])(data.options, ['isAutosave'])) { return []; } var publishStatus = ['publish', 'private', 'future']; var isPublished = Object(external_this_lodash_["includes"])(publishStatus, previousPost.status); var willPublish = Object(external_this_lodash_["includes"])(publishStatus, post.status); var noticeMessage; var shouldShowLink = Object(external_this_lodash_["get"])(postType, ['viewable'], false); if (!isPublished && !willPublish) { // If saving a non-published post, don't show notice. noticeMessage = null; } else if (isPublished && !willPublish) { // If undoing publish status, show specific notice noticeMessage = postType.labels.item_reverted_to_draft; shouldShowLink = false; } else if (!isPublished && willPublish) { // If publishing or scheduling a post, show the corresponding // publish message noticeMessage = { publish: postType.labels.item_published, private: postType.labels.item_published_privately, future: postType.labels.item_scheduled }[post.status]; } else { // Generic fallback notice noticeMessage = postType.labels.item_updated; } if (noticeMessage) { var actions = []; if (shouldShowLink) { actions.push({ label: postType.labels.view_item, url: post.link }); } return [noticeMessage, { id: SAVE_POST_NOTICE_ID, type: 'snackbar', actions: actions }]; } return []; } /** * Builds the fail notification arguments for dispatch. * * @param {Object} data Incoming data to build the arguments with. * * @return {Array} Arguments for dispatch. An empty array signals no * notification should be sent. */ function getNotificationArgumentsForSaveFail(data) { var post = data.post, edits = data.edits, error = data.error; if (error && 'rest_autosave_no_changes' === error.code) { // Autosave requested a new autosave, but there were no changes. This shouldn't // result in an error notice for the user. return []; } var publishStatus = ['publish', 'private', 'future']; var isPublished = publishStatus.indexOf(post.status) !== -1; // If the post was being published, we show the corresponding publish error message // Unless we publish an "updating failed" message var messages = { publish: Object(external_this_wp_i18n_["__"])('Publishing failed.'), private: Object(external_this_wp_i18n_["__"])('Publishing failed.'), future: Object(external_this_wp_i18n_["__"])('Scheduling failed.') }; var noticeMessage = !isPublished && publishStatus.indexOf(edits.status) !== -1 ? messages[edits.status] : Object(external_this_wp_i18n_["__"])('Updating failed.'); // Check if message string contains HTML. Notice text is currently only // supported as plaintext, and stripping the tags may muddle the meaning. if (error.message && !/<\/?[^>]*>/.test(error.message)) { noticeMessage = [noticeMessage, error.message].join(' '); } return [noticeMessage, { id: SAVE_POST_NOTICE_ID }]; } /** * Builds the trash fail notification arguments for dispatch. * * @param {Object} data * * @return {Array} Arguments for dispatch. */ function getNotificationArgumentsForTrashFail(data) { return [data.error.message && data.error.code !== 'unknown_error' ? data.error.message : Object(external_this_wp_i18n_["__"])('Trashing failed'), { id: TRASH_POST_NOTICE_ID }]; } // EXTERNAL MODULE: ./node_modules/memize/index.js var memize = __webpack_require__("4eJC"); var memize_default = /*#__PURE__*/__webpack_require__.n(memize); // EXTERNAL MODULE: external {"this":["wp","autop"]} var external_this_wp_autop_ = __webpack_require__("UuzZ"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/utils/serialize-blocks.js /** * External dependencies */ /** * WordPress dependencies */ /** * Serializes blocks following backwards compatibility conventions. * * @param {Array} blocksForSerialization The blocks to serialize. * * @return {string} The blocks serialization. */ var serializeBlocks = memize_default()(function (blocksForSerialization) { // A single unmodified default block is assumed to // be equivalent to an empty post. if (blocksForSerialization.length === 1 && Object(external_this_wp_blocks_["isUnmodifiedDefaultBlock"])(blocksForSerialization[0])) { blocksForSerialization = []; } var content = Object(external_this_wp_blocks_["serialize"])(blocksForSerialization); // For compatibility, treat a post consisting of a // single freeform block as legacy content and apply // pre-block-editor removep'd content formatting. if (blocksForSerialization.length === 1 && blocksForSerialization[0].name === Object(external_this_wp_blocks_["getFreeformContentHandlerName"])()) { content = Object(external_this_wp_autop_["removep"])(content); } return content; }, { maxSize: 1 }); /* harmony default export */ var serialize_blocks = (serializeBlocks); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/actions.js function actions_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function actions_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { actions_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { actions_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var _marked = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(setupEditor), _marked2 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resetAutosave), _marked3 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_editPost), _marked4 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_savePost), _marked5 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(refreshPost), _marked6 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(trashPost), _marked7 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_autosave), _marked8 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_experimentalLocalAutosave), _marked9 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_redo), _marked10 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_undo), _marked11 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_resetEditorBlocks); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Returns an action generator used in signalling that editor has initialized with * the specified post object and editor settings. * * @param {Object} post Post object. * @param {Object} edits Initial edited attributes object. * @param {Array?} template Block Template. */ function setupEditor(post, edits, template) { var content, blocks, isNewPost; return external_this_regeneratorRuntime_default.a.wrap(function setupEditor$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: // In order to ensure maximum of a single parse during setup, edits are // included as part of editor setup action. Assume edited content as // canonical if provided, falling back to post. if (Object(external_this_lodash_["has"])(edits, ['content'])) { content = edits.content; } else { content = post.content.raw; } blocks = Object(external_this_wp_blocks_["parse"])(content); // Apply a template for new posts only, if exists. isNewPost = post.status === 'auto-draft'; if (isNewPost && template) { blocks = Object(external_this_wp_blocks_["synchronizeBlocksWithTemplate"])(blocks, template); } _context.next = 6; return resetPost(post); case 6: _context.next = 8; return { type: 'SETUP_EDITOR', post: post, edits: edits, template: template }; case 8: _context.next = 10; return actions_resetEditorBlocks(blocks, { __unstableShouldCreateUndoLevel: false }); case 10: _context.next = 12; return setupEditorState(post); case 12: if (!(edits && Object.keys(edits).some(function (key) { return edits[key] !== (Object(external_this_lodash_["has"])(post, [key, 'raw']) ? post[key].raw : post[key]); }))) { _context.next = 15; break; } _context.next = 15; return actions_editPost(edits); case 15: case "end": return _context.stop(); } } }, _marked); } /** * Returns an action object signalling that the editor is being destroyed and * that any necessary state or side-effect cleanup should occur. * * @return {Object} Action object. */ function __experimentalTearDownEditor() { return { type: 'TEAR_DOWN_EDITOR' }; } /** * Returns an action object used in signalling that the latest version of the * post has been received, either by initialization or save. * * @param {Object} post Post object. * * @return {Object} Action object. */ function resetPost(post) { return { type: 'RESET_POST', post: post }; } /** * Returns an action object used in signalling that the latest autosave of the * post has been received, by initialization or autosave. * * @deprecated since 5.6. Callers should use the `receiveAutosaves( postId, autosave )` * selector from the '@wordpress/core-data' package. * * @param {Object} newAutosave Autosave post object. * * @return {Object} Action object. */ function resetAutosave(newAutosave) { var postId; return external_this_regeneratorRuntime_default.a.wrap(function resetAutosave$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: external_this_wp_deprecated_default()('resetAutosave action (`core/editor` store)', { alternative: 'receiveAutosaves action (`core` store)', plugin: 'Gutenberg' }); _context2.next = 3; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPostId'); case 3: postId = _context2.sent; _context2.next = 6; return Object(external_this_wp_dataControls_["dispatch"])('core', 'receiveAutosaves', postId, newAutosave); case 6: return _context2.abrupt("return", { type: '__INERT__' }); case 7: case "end": return _context2.stop(); } } }, _marked2); } /** * Action for dispatching that a post update request has started. * * @param {Object} options * * @return {Object} An action object */ function __experimentalRequestPostUpdateStart() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return { type: 'REQUEST_POST_UPDATE_START', options: options }; } /** * Action for dispatching that a post update request has finished. * * @param {Object} options * * @return {Object} An action object */ function __experimentalRequestPostUpdateFinish() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return { type: 'REQUEST_POST_UPDATE_FINISH', options: options }; } /** * Returns an action object used in signalling that a patch of updates for the * latest version of the post have been received. * * @param {Object} edits Updated post fields. * * @return {Object} Action object. */ function updatePost(edits) { return { type: 'UPDATE_POST', edits: edits }; } /** * Returns an action object used to setup the editor state when first opening * an editor. * * @param {Object} post Post object. * * @return {Object} Action object. */ function setupEditorState(post) { return { type: 'SETUP_EDITOR_STATE', post: post }; } /** * Returns an action object used in signalling that attributes of the post have * been edited. * * @param {Object} edits Post attributes to edit. * @param {Object} options Options for the edit. * * @yield {Object} Action object or control. */ function actions_editPost(edits, options) { var _ref, id, type; return external_this_regeneratorRuntime_default.a.wrap(function editPost$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 2: _ref = _context3.sent; id = _ref.id; type = _ref.type; _context3.next = 7; return Object(external_this_wp_dataControls_["dispatch"])('core', 'editEntityRecord', 'postType', type, id, edits, options); case 7: case "end": return _context3.stop(); } } }, _marked3); } /** * Returns action object produced by the updatePost creator augmented by * an optimist option that signals optimistically applying updates. * * @param {Object} edits Updated post fields. * * @return {Object} Action object. */ function __experimentalOptimisticUpdatePost(edits) { return actions_objectSpread({}, updatePost(edits), { optimist: { id: POST_UPDATE_TRANSACTION_ID } }); } /** * Action generator for saving the current post in the editor. * * @param {Object} options */ function actions_savePost() { var options, edits, previousRecord, error, args, updatedRecord, _args4, _args5 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function savePost$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: options = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : {}; _context4.next = 3; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'isEditedPostSaveable'); case 3: if (_context4.sent) { _context4.next = 5; break; } return _context4.abrupt("return"); case 5: _context4.next = 7; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getEditedPostContent'); case 7: _context4.t0 = _context4.sent; edits = { content: _context4.t0 }; if (options.isAutosave) { _context4.next = 12; break; } _context4.next = 12; return Object(external_this_wp_dataControls_["dispatch"])(STORE_KEY, 'editPost', edits, { undoIgnore: true }); case 12: _context4.next = 14; return __experimentalRequestPostUpdateStart(options); case 14: _context4.next = 16; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 16: previousRecord = _context4.sent; _context4.t1 = actions_objectSpread; _context4.t2 = { id: previousRecord.id }; _context4.next = 21; return Object(external_this_wp_dataControls_["select"])('core', 'getEntityRecordNonTransientEdits', 'postType', previousRecord.type, previousRecord.id); case 21: _context4.t3 = _context4.sent; _context4.t4 = {}; _context4.t5 = edits; edits = (0, _context4.t1)(_context4.t2, _context4.t3, _context4.t4, _context4.t5); _context4.next = 27; return Object(external_this_wp_dataControls_["dispatch"])('core', 'saveEntityRecord', 'postType', previousRecord.type, edits, options); case 27: _context4.next = 29; return __experimentalRequestPostUpdateFinish(options); case 29: _context4.next = 31; return Object(external_this_wp_dataControls_["select"])('core', 'getLastEntitySaveError', 'postType', previousRecord.type, previousRecord.id); case 31: error = _context4.sent; if (!error) { _context4.next = 39; break; } args = getNotificationArgumentsForSaveFail({ post: previousRecord, edits: edits, error: error }); if (!args.length) { _context4.next = 37; break; } _context4.next = 37; return external_this_wp_dataControls_["dispatch"].apply(void 0, ['core/notices', 'createErrorNotice'].concat(Object(toConsumableArray["a" /* default */])(args))); case 37: _context4.next = 57; break; case 39: _context4.next = 41; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 41: updatedRecord = _context4.sent; _context4.t6 = getNotificationArgumentsForSaveSuccess; _context4.t7 = previousRecord; _context4.t8 = updatedRecord; _context4.next = 47; return Object(external_this_wp_dataControls_["select"])('core', 'getPostType', updatedRecord.type); case 47: _context4.t9 = _context4.sent; _context4.t10 = options; _context4.t11 = { previousPost: _context4.t7, post: _context4.t8, postType: _context4.t9, options: _context4.t10 }; _args4 = (0, _context4.t6)(_context4.t11); if (!_args4.length) { _context4.next = 54; break; } _context4.next = 54; return external_this_wp_dataControls_["dispatch"].apply(void 0, ['core/notices', 'createSuccessNotice'].concat(Object(toConsumableArray["a" /* default */])(_args4))); case 54: if (options.isAutosave) { _context4.next = 57; break; } _context4.next = 57; return Object(external_this_wp_dataControls_["dispatch"])('core/block-editor', '__unstableMarkLastChangeAsPersistent'); case 57: case "end": return _context4.stop(); } } }, _marked4); } /** * Action generator for handling refreshing the current post. */ function refreshPost() { var post, postTypeSlug, postType, newPost; return external_this_regeneratorRuntime_default.a.wrap(function refreshPost$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: _context5.next = 2; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 2: post = _context5.sent; _context5.next = 5; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPostType'); case 5: postTypeSlug = _context5.sent; _context5.next = 8; return Object(external_this_wp_dataControls_["select"])('core', 'getPostType', postTypeSlug); case 8: postType = _context5.sent; _context5.next = 11; return Object(external_this_wp_dataControls_["apiFetch"])({ // Timestamp arg allows caller to bypass browser caching, which is // expected for this specific function. path: "/wp/v2/".concat(postType.rest_base, "/").concat(post.id) + "?context=edit&_timestamp=".concat(Date.now()) }); case 11: newPost = _context5.sent; _context5.next = 14; return Object(external_this_wp_dataControls_["dispatch"])(STORE_KEY, 'resetPost', newPost); case 14: case "end": return _context5.stop(); } } }, _marked5); } /** * Action generator for trashing the current post in the editor. */ function trashPost() { var postTypeSlug, postType, post; return external_this_regeneratorRuntime_default.a.wrap(function trashPost$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: _context6.next = 2; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPostType'); case 2: postTypeSlug = _context6.sent; _context6.next = 5; return Object(external_this_wp_dataControls_["select"])('core', 'getPostType', postTypeSlug); case 5: postType = _context6.sent; _context6.next = 8; return Object(external_this_wp_dataControls_["dispatch"])('core/notices', 'removeNotice', TRASH_POST_NOTICE_ID); case 8: _context6.prev = 8; _context6.next = 11; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 11: post = _context6.sent; _context6.next = 14; return Object(external_this_wp_dataControls_["apiFetch"])({ path: "/wp/v2/".concat(postType.rest_base, "/").concat(post.id), method: 'DELETE' }); case 14: _context6.next = 16; return Object(external_this_wp_dataControls_["dispatch"])(STORE_KEY, 'savePost'); case 16: _context6.next = 22; break; case 18: _context6.prev = 18; _context6.t0 = _context6["catch"](8); _context6.next = 22; return external_this_wp_dataControls_["dispatch"].apply(void 0, ['core/notices', 'createErrorNotice'].concat(Object(toConsumableArray["a" /* default */])(getNotificationArgumentsForTrashFail({ error: _context6.t0 })))); case 22: case "end": return _context6.stop(); } } }, _marked6, null, [[8, 18]]); } /** * Action generator used in signalling that the post should autosave. * * @param {Object?} options Extra flags to identify the autosave. */ function actions_autosave(options) { return external_this_regeneratorRuntime_default.a.wrap(function autosave$(_context7) { while (1) { switch (_context7.prev = _context7.next) { case 0: _context7.next = 2; return Object(external_this_wp_dataControls_["dispatch"])(STORE_KEY, 'savePost', actions_objectSpread({ isAutosave: true }, options)); case 2: case "end": return _context7.stop(); } } }, _marked7); } function actions_experimentalLocalAutosave() { var post, title, content, excerpt; return external_this_regeneratorRuntime_default.a.wrap(function __experimentalLocalAutosave$(_context8) { while (1) { switch (_context8.prev = _context8.next) { case 0: _context8.next = 2; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 2: post = _context8.sent; _context8.next = 5; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getEditedPostAttribute', 'title'); case 5: title = _context8.sent; _context8.next = 8; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getEditedPostAttribute', 'content'); case 8: content = _context8.sent; _context8.next = 11; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getEditedPostAttribute', 'excerpt'); case 11: excerpt = _context8.sent; _context8.next = 14; return { type: 'LOCAL_AUTOSAVE_SET', postId: post.id, title: title, content: content, excerpt: excerpt }; case 14: case "end": return _context8.stop(); } } }, _marked8); } /** * Returns an action object used in signalling that undo history should * restore last popped state. * * @yield {Object} Action object. */ function actions_redo() { return external_this_regeneratorRuntime_default.a.wrap(function redo$(_context9) { while (1) { switch (_context9.prev = _context9.next) { case 0: _context9.next = 2; return Object(external_this_wp_dataControls_["dispatch"])('core', 'redo'); case 2: case "end": return _context9.stop(); } } }, _marked9); } /** * Returns an action object used in signalling that undo history should pop. * * @yield {Object} Action object. */ function actions_undo() { return external_this_regeneratorRuntime_default.a.wrap(function undo$(_context10) { while (1) { switch (_context10.prev = _context10.next) { case 0: _context10.next = 2; return Object(external_this_wp_dataControls_["dispatch"])('core', 'undo'); case 2: case "end": return _context10.stop(); } } }, _marked10); } /** * Returns an action object used in signalling that undo history record should * be created. * * @return {Object} Action object. */ function createUndoLevel() { return { type: 'CREATE_UNDO_LEVEL' }; } /** * Returns an action object used to lock the editor. * * @param {Object} lock Details about the post lock status, user, and nonce. * * @return {Object} Action object. */ function updatePostLock(lock) { return { type: 'UPDATE_POST_LOCK', lock: lock }; } /** * Returns an action object used to fetch a single reusable block or all * reusable blocks from the REST API into the store. * * @param {?string} id If given, only a single reusable block with this ID will * be fetched. * * @return {Object} Action object. */ function actions_experimentalFetchReusableBlocks(id) { return { type: 'FETCH_REUSABLE_BLOCKS', id: id }; } /** * Returns an action object used in signalling that reusable blocks have been * received. `results` is an array of objects containing: * - `reusableBlock` - Details about how the reusable block is persisted. * - `parsedBlock` - The original block. * * @param {Object[]} results Reusable blocks received. * * @return {Object} Action object. */ function __experimentalReceiveReusableBlocks(results) { return { type: 'RECEIVE_REUSABLE_BLOCKS', results: results }; } /** * Returns an action object used to save a reusable block that's in the store to * the REST API. * * @param {Object} id The ID of the reusable block to save. * * @return {Object} Action object. */ function __experimentalSaveReusableBlock(id) { return { type: 'SAVE_REUSABLE_BLOCK', id: id }; } /** * Returns an action object used to delete a reusable block via the REST API. * * @param {number} id The ID of the reusable block to delete. * * @return {Object} Action object. */ function __experimentalDeleteReusableBlock(id) { return { type: 'DELETE_REUSABLE_BLOCK', id: id }; } /** * Returns an action object used in signalling that a reusable block is * to be updated. * * @param {number} id The ID of the reusable block to update. * @param {Object} changes The changes to apply. * * @return {Object} Action object. */ function __experimentalUpdateReusableBlock(id, changes) { return { type: 'UPDATE_REUSABLE_BLOCK', id: id, changes: changes }; } /** * Returns an action object used to convert a reusable block into a static * block. * * @param {string} clientId The client ID of the block to attach. * * @return {Object} Action object. */ function __experimentalConvertBlockToStatic(clientId) { return { type: 'CONVERT_BLOCK_TO_STATIC', clientId: clientId }; } /** * Returns an action object used to convert a static block into a reusable * block. * * @param {string} clientIds The client IDs of the block to detach. * * @return {Object} Action object. */ function __experimentalConvertBlockToReusable(clientIds) { return { type: 'CONVERT_BLOCK_TO_REUSABLE', clientIds: Object(external_this_lodash_["castArray"])(clientIds) }; } /** * Returns an action object used in signalling that the user has enabled the * publish sidebar. * * @return {Object} Action object */ function enablePublishSidebar() { return { type: 'ENABLE_PUBLISH_SIDEBAR' }; } /** * Returns an action object used in signalling that the user has disabled the * publish sidebar. * * @return {Object} Action object */ function disablePublishSidebar() { return { type: 'DISABLE_PUBLISH_SIDEBAR' }; } /** * Returns an action object used to signal that post saving is locked. * * @param {string} lockName The lock name. * * @example * ``` * const { subscribe } = wp.data; * * const initialPostStatus = wp.data.select( 'core/editor' ).getEditedPostAttribute( 'status' ); * * // Only allow publishing posts that are set to a future date. * if ( 'publish' !== initialPostStatus ) { * * // Track locking. * let locked = false; * * // Watch for the publish event. * let unssubscribe = subscribe( () => { * const currentPostStatus = wp.data.select( 'core/editor' ).getEditedPostAttribute( 'status' ); * if ( 'publish' !== currentPostStatus ) { * * // Compare the post date to the current date, lock the post if the date isn't in the future. * const postDate = new Date( wp.data.select( 'core/editor' ).getEditedPostAttribute( 'date' ) ); * const currentDate = new Date(); * if ( postDate.getTime() <= currentDate.getTime() ) { * if ( ! locked ) { * locked = true; * wp.data.dispatch( 'core/editor' ).lockPostSaving( 'futurelock' ); * } * } else { * if ( locked ) { * locked = false; * wp.data.dispatch( 'core/editor' ).unlockPostSaving( 'futurelock' ); * } * } * } * } ); * } * ``` * * @return {Object} Action object */ function lockPostSaving(lockName) { return { type: 'LOCK_POST_SAVING', lockName: lockName }; } /** * Returns an action object used to signal that post saving is unlocked. * * @param {string} lockName The lock name. * * @example * ``` * // Unlock post saving with the lock key `mylock`: * wp.data.dispatch( 'core/editor' ).unlockPostSaving( 'mylock' ); * ``` * * @return {Object} Action object */ function unlockPostSaving(lockName) { return { type: 'UNLOCK_POST_SAVING', lockName: lockName }; } /** * Returns an action object used to signal that post autosaving is locked. * * @param {string} lockName The lock name. * * @example * ``` * // Lock post autosaving with the lock key `mylock`: * wp.data.dispatch( 'core/editor' ).lockPostAutosaving( 'mylock' ); * ``` * * @return {Object} Action object */ function lockPostAutosaving(lockName) { return { type: 'LOCK_POST_AUTOSAVING', lockName: lockName }; } /** * Returns an action object used to signal that post autosaving is unlocked. * * @param {string} lockName The lock name. * * @example * ``` * // Unlock post saving with the lock key `mylock`: * wp.data.dispatch( 'core/editor' ).unlockPostAutosaving( 'mylock' ); * ``` * * @return {Object} Action object */ function unlockPostAutosaving(lockName) { return { type: 'UNLOCK_POST_AUTOSAVING', lockName: lockName }; } /** * Returns an action object used to signal that the blocks have been updated. * * @param {Array} blocks Block Array. * @param {?Object} options Optional options. * * @yield {Object} Action object */ function actions_resetEditorBlocks(blocks) { var options, __unstableShouldCreateUndoLevel, selectionStart, selectionEnd, edits, _ref2, id, type, noChange, _args12 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function resetEditorBlocks$(_context11) { while (1) { switch (_context11.prev = _context11.next) { case 0: options = _args12.length > 1 && _args12[1] !== undefined ? _args12[1] : {}; __unstableShouldCreateUndoLevel = options.__unstableShouldCreateUndoLevel, selectionStart = options.selectionStart, selectionEnd = options.selectionEnd; edits = { blocks: blocks, selectionStart: selectionStart, selectionEnd: selectionEnd }; if (!(__unstableShouldCreateUndoLevel !== false)) { _context11.next = 19; break; } _context11.next = 6; return Object(external_this_wp_dataControls_["select"])(STORE_KEY, 'getCurrentPost'); case 6: _ref2 = _context11.sent; id = _ref2.id; type = _ref2.type; _context11.next = 11; return Object(external_this_wp_dataControls_["select"])('core', 'getEditedEntityRecord', 'postType', type, id); case 11: _context11.t0 = _context11.sent.blocks; _context11.t1 = edits.blocks; noChange = _context11.t0 === _context11.t1; if (!noChange) { _context11.next = 18; break; } _context11.next = 17; return Object(external_this_wp_dataControls_["dispatch"])('core', '__unstableCreateUndoLevel', 'postType', type, id); case 17: return _context11.abrupt("return", _context11.sent); case 18: // We create a new function here on every persistent edit // to make sure the edit makes the post dirty and creates // a new undo level. edits.content = function (_ref3) { var _ref3$blocks = _ref3.blocks, blocksForSerialization = _ref3$blocks === void 0 ? [] : _ref3$blocks; return serialize_blocks(blocksForSerialization); }; case 19: return _context11.delegateYield(actions_editPost(edits), "t2", 20); case 20: case "end": return _context11.stop(); } } }, _marked11); } /* * Returns an action object used in signalling that the post editor settings have been updated. * * @param {Object} settings Updated settings * * @return {Object} Action object */ function updateEditorSettings(settings) { return { type: 'UPDATE_EDITOR_SETTINGS', settings: settings }; } /** * Backward compatibility */ var actions_getBlockEditorAction = function getBlockEditorAction(name) { return ( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee() { var _len, args, _key, _args13 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context12) { while (1) { switch (_context12.prev = _context12.next) { case 0: external_this_wp_deprecated_default()("`wp.data.dispatch( 'core/editor' )." + name + '`', { alternative: "`wp.data.dispatch( 'core/block-editor' )." + name + '`' }); for (_len = _args13.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = _args13[_key]; } _context12.next = 4; return external_this_wp_dataControls_["dispatch"].apply(void 0, ['core/block-editor', name].concat(args)); case 4: case "end": return _context12.stop(); } } }, _callee); }) ); }; /** * @see resetBlocks in core/block-editor store. */ var resetBlocks = actions_getBlockEditorAction('resetBlocks'); /** * @see receiveBlocks in core/block-editor store. */ var receiveBlocks = actions_getBlockEditorAction('receiveBlocks'); /** * @see updateBlock in core/block-editor store. */ var updateBlock = actions_getBlockEditorAction('updateBlock'); /** * @see updateBlockAttributes in core/block-editor store. */ var updateBlockAttributes = actions_getBlockEditorAction('updateBlockAttributes'); /** * @see selectBlock in core/block-editor store. */ var selectBlock = actions_getBlockEditorAction('selectBlock'); /** * @see startMultiSelect in core/block-editor store. */ var startMultiSelect = actions_getBlockEditorAction('startMultiSelect'); /** * @see stopMultiSelect in core/block-editor store. */ var stopMultiSelect = actions_getBlockEditorAction('stopMultiSelect'); /** * @see multiSelect in core/block-editor store. */ var multiSelect = actions_getBlockEditorAction('multiSelect'); /** * @see clearSelectedBlock in core/block-editor store. */ var clearSelectedBlock = actions_getBlockEditorAction('clearSelectedBlock'); /** * @see toggleSelection in core/block-editor store. */ var toggleSelection = actions_getBlockEditorAction('toggleSelection'); /** * @see replaceBlocks in core/block-editor store. */ var actions_replaceBlocks = actions_getBlockEditorAction('replaceBlocks'); /** * @see replaceBlock in core/block-editor store. */ var replaceBlock = actions_getBlockEditorAction('replaceBlock'); /** * @see moveBlocksDown in core/block-editor store. */ var moveBlocksDown = actions_getBlockEditorAction('moveBlocksDown'); /** * @see moveBlocksUp in core/block-editor store. */ var moveBlocksUp = actions_getBlockEditorAction('moveBlocksUp'); /** * @see moveBlockToPosition in core/block-editor store. */ var moveBlockToPosition = actions_getBlockEditorAction('moveBlockToPosition'); /** * @see insertBlock in core/block-editor store. */ var insertBlock = actions_getBlockEditorAction('insertBlock'); /** * @see insertBlocks in core/block-editor store. */ var insertBlocks = actions_getBlockEditorAction('insertBlocks'); /** * @see showInsertionPoint in core/block-editor store. */ var showInsertionPoint = actions_getBlockEditorAction('showInsertionPoint'); /** * @see hideInsertionPoint in core/block-editor store. */ var hideInsertionPoint = actions_getBlockEditorAction('hideInsertionPoint'); /** * @see setTemplateValidity in core/block-editor store. */ var setTemplateValidity = actions_getBlockEditorAction('setTemplateValidity'); /** * @see synchronizeTemplate in core/block-editor store. */ var synchronizeTemplate = actions_getBlockEditorAction('synchronizeTemplate'); /** * @see mergeBlocks in core/block-editor store. */ var mergeBlocks = actions_getBlockEditorAction('mergeBlocks'); /** * @see removeBlocks in core/block-editor store. */ var removeBlocks = actions_getBlockEditorAction('removeBlocks'); /** * @see removeBlock in core/block-editor store. */ var removeBlock = actions_getBlockEditorAction('removeBlock'); /** * @see toggleBlockMode in core/block-editor store. */ var toggleBlockMode = actions_getBlockEditorAction('toggleBlockMode'); /** * @see startTyping in core/block-editor store. */ var startTyping = actions_getBlockEditorAction('startTyping'); /** * @see stopTyping in core/block-editor store. */ var stopTyping = actions_getBlockEditorAction('stopTyping'); /** * @see enterFormattedText in core/block-editor store. */ var enterFormattedText = actions_getBlockEditorAction('enterFormattedText'); /** * @see exitFormattedText in core/block-editor store. */ var exitFormattedText = actions_getBlockEditorAction('exitFormattedText'); /** * @see insertDefaultBlock in core/block-editor store. */ var insertDefaultBlock = actions_getBlockEditorAction('insertDefaultBlock'); /** * @see updateBlockListSettings in core/block-editor store. */ var updateBlockListSettings = actions_getBlockEditorAction('updateBlockListSettings'); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__("ODXe"); // EXTERNAL MODULE: ./node_modules/rememo/es/rememo.js var rememo = __webpack_require__("pPDe"); // EXTERNAL MODULE: external {"this":["wp","date"]} var external_this_wp_date_ = __webpack_require__("FqII"); // EXTERNAL MODULE: external {"this":["wp","url"]} var external_this_wp_url_ = __webpack_require__("Mmq9"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/selectors.js function selectors_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function selectors_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { selectors_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { selectors_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Shared reference to an empty object for cases where it is important to avoid * returning a new object reference on every invocation, as in a connected or * other pure component which performs `shouldComponentUpdate` check on props. * This should be used as a last resort, since the normalized data should be * maintained by the reducer result in state. */ var EMPTY_OBJECT = {}; /** * Shared reference to an empty array for cases where it is important to avoid * returning a new array reference on every invocation, as in a connected or * other pure component which performs `shouldComponentUpdate` check on props. * This should be used as a last resort, since the normalized data should be * maintained by the reducer result in state. */ var EMPTY_ARRAY = []; /** * Returns true if any past editor history snapshots exist, or false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether undo history exists. */ var hasEditorUndo = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function () { return select('core').hasUndo(); }; }); /** * Returns true if any future editor history snapshots exist, or false * otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether redo history exists. */ var hasEditorRedo = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function () { return select('core').hasRedo(); }; }); /** * Returns true if the currently edited post is yet to be saved, or false if * the post has been saved. * * @param {Object} state Global application state. * * @return {boolean} Whether the post is new. */ function selectors_isEditedPostNew(state) { return selectors_getCurrentPost(state).status === 'auto-draft'; } /** * Returns true if content includes unsaved changes, or false otherwise. * * @param {Object} state Editor state. * * @return {boolean} Whether content includes unsaved changes. */ function hasChangedContent(state) { var edits = getPostEdits(state); return 'blocks' in edits || // `edits` is intended to contain only values which are different from // the saved post, so the mere presence of a property is an indicator // that the value is different than what is known to be saved. While // content in Visual mode is represented by the blocks state, in Text // mode it is tracked by `edits.content`. 'content' in edits; } /** * Returns true if there are unsaved values for the current edit session, or * false if the editing state matches the saved or new post. * * @param {Object} state Global application state. * * @return {boolean} Whether unsaved values exist. */ var selectors_isEditedPostDirty = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { // Edits should contain only fields which differ from the saved post (reset // at initial load and save complete). Thus, a non-empty edits state can be // inferred to contain unsaved values. var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); if (select('core').hasEditsForEntityRecord('postType', postType, postId)) { return true; } return false; }; }); /** * Returns true if there are unsaved edits for entities other than * the editor's post, and false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether there are edits or not. */ var selectors_hasNonPostEntityChanges = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var enableFullSiteEditing = selectors_getEditorSettings(state).__experimentalEnableFullSiteEditing; if (!enableFullSiteEditing) { return false; } var entityRecordChangesByRecord = select('core').getEntityRecordChangesByRecord(); var changedKinds = Object.keys(entityRecordChangesByRecord); if (changedKinds.length > 1 || changedKinds.length === 1 && !entityRecordChangesByRecord.postType) { // Return true if there is more than one edited entity kind // or the edited entity kind is not the editor's post's kind. return true; } else if (!entityRecordChangesByRecord.postType) { // Don't continue if there are no edited entity kinds. return false; } var _getCurrentPost = selectors_getCurrentPost(state), type = _getCurrentPost.type, id = _getCurrentPost.id; var changedPostTypes = Object.keys(entityRecordChangesByRecord.postType); if (changedPostTypes.length > 1 || changedPostTypes.length === 1 && !entityRecordChangesByRecord.postType[type]) { // Return true if there is more than one edited post type // or the edited entity's post type is not the editor's post's post type. return true; } var changedPosts = Object.keys(entityRecordChangesByRecord.postType[type]); if (changedPosts.length > 1 || changedPosts.length === 1 && !entityRecordChangesByRecord.postType[type][id]) { // Return true if there is more than one edited post // or the edited post is not the editor's post. return true; } return false; }; }); /** * Returns true if there are no unsaved values for the current edit session and * if the currently edited post is new (has never been saved before). * * @param {Object} state Global application state. * * @return {boolean} Whether new post and unsaved values exist. */ function selectors_isCleanNewPost(state) { return !selectors_isEditedPostDirty(state) && selectors_isEditedPostNew(state); } /** * Returns the post currently being edited in its last known saved state, not * including unsaved edits. Returns an object containing relevant default post * values if the post has not yet been saved. * * @param {Object} state Global application state. * * @return {Object} Post object. */ var selectors_getCurrentPost = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postId = selectors_getCurrentPostId(state); var postType = selectors_getCurrentPostType(state); var post = select('core').getRawEntityRecord('postType', postType, postId); if (post) { return post; } // This exists for compatibility with the previous selector behavior // which would guarantee an object return based on the editor reducer's // default empty object state. return EMPTY_OBJECT; }; }); /** * Returns the post type of the post currently being edited. * * @param {Object} state Global application state. * * @return {string} Post type. */ function selectors_getCurrentPostType(state) { return state.postType; } /** * Returns the ID of the post currently being edited, or null if the post has * not yet been saved. * * @param {Object} state Global application state. * * @return {?number} ID of current post. */ function selectors_getCurrentPostId(state) { return state.postId; } /** * Returns the number of revisions of the post currently being edited. * * @param {Object} state Global application state. * * @return {number} Number of revisions. */ function getCurrentPostRevisionsCount(state) { return Object(external_this_lodash_["get"])(selectors_getCurrentPost(state), ['_links', 'version-history', 0, 'count'], 0); } /** * Returns the last revision ID of the post currently being edited, * or null if the post has no revisions. * * @param {Object} state Global application state. * * @return {?number} ID of the last revision. */ function getCurrentPostLastRevisionId(state) { return Object(external_this_lodash_["get"])(selectors_getCurrentPost(state), ['_links', 'predecessor-version', 0, 'id'], null); } /** * Returns any post values which have been changed in the editor but not yet * been saved. * * @param {Object} state Global application state. * * @return {Object} Object of key value pairs comprising unsaved edits. */ var getPostEdits = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); return select('core').getEntityRecordEdits('postType', postType, postId) || EMPTY_OBJECT; }; }); /** * Returns a new reference when edited values have changed. This is useful in * inferring where an edit has been made between states by comparison of the * return values using strict equality. * * @deprecated since Gutenberg 6.5.0. * * @example * * ``` * const hasEditOccurred = ( * getReferenceByDistinctEdits( beforeState ) !== * getReferenceByDistinctEdits( afterState ) * ); * ``` * * @param {Object} state Editor state. * * @return {*} A value whose reference will change only when an edit occurs. */ var getReferenceByDistinctEdits = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function () /* state */ { external_this_wp_deprecated_default()("`wp.data.select( 'core/editor' ).getReferenceByDistinctEdits`", { alternative: "`wp.data.select( 'core' ).getReferenceByDistinctEdits`" }); return select('core').getReferenceByDistinctEdits(); }; }); /** * Returns an attribute value of the saved post. * * @param {Object} state Global application state. * @param {string} attributeName Post attribute name. * * @return {*} Post attribute value. */ function selectors_getCurrentPostAttribute(state, attributeName) { switch (attributeName) { case 'type': return selectors_getCurrentPostType(state); case 'id': return selectors_getCurrentPostId(state); default: var post = selectors_getCurrentPost(state); if (!post.hasOwnProperty(attributeName)) { break; } return getPostRawValue(post[attributeName]); } } /** * Returns a single attribute of the post being edited, preferring the unsaved * edit if one exists, but merging with the attribute value for the last known * saved state of the post (this is needed for some nested attributes like meta). * * @param {Object} state Global application state. * @param {string} attributeName Post attribute name. * * @return {*} Post attribute value. */ var getNestedEditedPostProperty = function getNestedEditedPostProperty(state, attributeName) { var edits = getPostEdits(state); if (!edits.hasOwnProperty(attributeName)) { return selectors_getCurrentPostAttribute(state, attributeName); } return selectors_objectSpread({}, selectors_getCurrentPostAttribute(state, attributeName), {}, edits[attributeName]); }; /** * Returns a single attribute of the post being edited, preferring the unsaved * edit if one exists, but falling back to the attribute for the last known * saved state of the post. * * @param {Object} state Global application state. * @param {string} attributeName Post attribute name. * * @return {*} Post attribute value. */ function selectors_getEditedPostAttribute(state, attributeName) { // Special cases switch (attributeName) { case 'content': return getEditedPostContent(state); } // Fall back to saved post value if not edited. var edits = getPostEdits(state); if (!edits.hasOwnProperty(attributeName)) { return selectors_getCurrentPostAttribute(state, attributeName); } // Merge properties are objects which contain only the patch edit in state, // and thus must be merged with the current post attribute. if (EDIT_MERGE_PROPERTIES.has(attributeName)) { return getNestedEditedPostProperty(state, attributeName); } return edits[attributeName]; } /** * Returns an attribute value of the current autosave revision for a post, or * null if there is no autosave for the post. * * @deprecated since 5.6. Callers should use the `getAutosave( postType, postId, userId )` selector * from the '@wordpress/core-data' package and access properties on the returned * autosave object using getPostRawValue. * * @param {Object} state Global application state. * @param {string} attributeName Autosave attribute name. * * @return {*} Autosave attribute value. */ var getAutosaveAttribute = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state, attributeName) { if (!Object(external_this_lodash_["includes"])(AUTOSAVE_PROPERTIES, attributeName) && attributeName !== 'preview_link') { return; } var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); var currentUserId = Object(external_this_lodash_["get"])(select('core').getCurrentUser(), ['id']); var autosave = select('core').getAutosave(postType, postId, currentUserId); if (autosave) { return getPostRawValue(autosave[attributeName]); } }; }); /** * Returns the current visibility of the post being edited, preferring the * unsaved value if different than the saved post. The return value is one of * "private", "password", or "public". * * @param {Object} state Global application state. * * @return {string} Post visibility. */ function selectors_getEditedPostVisibility(state) { var status = selectors_getEditedPostAttribute(state, 'status'); if (status === 'private') { return 'private'; } var password = selectors_getEditedPostAttribute(state, 'password'); if (password) { return 'password'; } return 'public'; } /** * Returns true if post is pending review. * * @param {Object} state Global application state. * * @return {boolean} Whether current post is pending review. */ function isCurrentPostPending(state) { return selectors_getCurrentPost(state).status === 'pending'; } /** * Return true if the current post has already been published. * * @param {Object} state Global application state. * @param {Object?} currentPost Explicit current post for bypassing registry selector. * * @return {boolean} Whether the post has been published. */ function selectors_isCurrentPostPublished(state, currentPost) { var post = currentPost || selectors_getCurrentPost(state); return ['publish', 'private'].indexOf(post.status) !== -1 || post.status === 'future' && !Object(external_this_wp_date_["isInTheFuture"])(new Date(Number(Object(external_this_wp_date_["getDate"])(post.date)) - ONE_MINUTE_IN_MS)); } /** * Returns true if post is already scheduled. * * @param {Object} state Global application state. * * @return {boolean} Whether current post is scheduled to be posted. */ function selectors_isCurrentPostScheduled(state) { return selectors_getCurrentPost(state).status === 'future' && !selectors_isCurrentPostPublished(state); } /** * Return true if the post being edited can be published. * * @param {Object} state Global application state. * * @return {boolean} Whether the post can been published. */ function selectors_isEditedPostPublishable(state) { var post = selectors_getCurrentPost(state); // TODO: Post being publishable should be superset of condition of post // being saveable. Currently this restriction is imposed at UI. // // See: (`isButtonEnabled` assigned by `isSaveable`) return selectors_isEditedPostDirty(state) || ['publish', 'private', 'future'].indexOf(post.status) === -1; } /** * Returns true if the post can be saved, or false otherwise. A post must * contain a title, an excerpt, or non-empty content to be valid for save. * * @param {Object} state Global application state. * * @return {boolean} Whether the post can be saved. */ function selectors_isEditedPostSaveable(state) { if (selectors_isSavingPost(state)) { return false; } // TODO: Post should not be saveable if not dirty. Cannot be added here at // this time since posts where meta boxes are present can be saved even if // the post is not dirty. Currently this restriction is imposed at UI, but // should be moved here. // // See: `isEditedPostPublishable` (includes `isEditedPostDirty` condition) // See: (`forceIsDirty` prop) // See: (`forceIsDirty` prop) // See: https://github.com/WordPress/gutenberg/pull/4184 return !!selectors_getEditedPostAttribute(state, 'title') || !!selectors_getEditedPostAttribute(state, 'excerpt') || !isEditedPostEmpty(state); } /** * Returns true if the edited post has content. A post has content if it has at * least one saveable block or otherwise has a non-empty content property * assigned. * * @param {Object} state Global application state. * * @return {boolean} Whether post has content. */ function isEditedPostEmpty(state) { // While the condition of truthy content string is sufficient to determine // emptiness, testing saveable blocks length is a trivial operation. Since // this function can be called frequently, optimize for the fast case as a // condition of the mere existence of blocks. Note that the value of edited // content takes precedent over block content, and must fall through to the // default logic. var blocks = selectors_getEditorBlocks(state); if (blocks.length) { // Pierce the abstraction of the serializer in knowing that blocks are // joined with with newlines such that even if every individual block // produces an empty save result, the serialized content is non-empty. if (blocks.length > 1) { return false; } // There are two conditions under which the optimization cannot be // assumed, and a fallthrough to getEditedPostContent must occur: // // 1. getBlocksForSerialization has special treatment in omitting a // single unmodified default block. // 2. Comment delimiters are omitted for a freeform or unregistered // block in its serialization. The freeform block specifically may // produce an empty string in its saved output. // // For all other content, the single block is assumed to make a post // non-empty, if only by virtue of its own comment delimiters. var blockName = blocks[0].name; if (blockName !== Object(external_this_wp_blocks_["getDefaultBlockName"])() && blockName !== Object(external_this_wp_blocks_["getFreeformContentHandlerName"])()) { return false; } } return !getEditedPostContent(state); } /** * Returns true if the post can be autosaved, or false otherwise. * * @param {Object} state Global application state. * @param {Object} autosave A raw autosave object from the REST API. * * @return {boolean} Whether the post can be autosaved. */ var selectors_isEditedPostAutosaveable = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { // A post must contain a title, an excerpt, or non-empty content to be valid for autosaving. if (!selectors_isEditedPostSaveable(state)) { return false; } // A post is not autosavable when there is a post autosave lock. if (isPostAutosavingLocked(state)) { return false; } var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); var hasFetchedAutosave = select('core').hasFetchedAutosaves(postType, postId); var currentUserId = Object(external_this_lodash_["get"])(select('core').getCurrentUser(), ['id']); // Disable reason - this line causes the side-effect of fetching the autosave // via a resolver, moving below the return would result in the autosave never // being fetched. // eslint-disable-next-line @wordpress/no-unused-vars-before-return var autosave = select('core').getAutosave(postType, postId, currentUserId); // If any existing autosaves have not yet been fetched, this function is // unable to determine if the post is autosaveable, so return false. if (!hasFetchedAutosave) { return false; } // If we don't already have an autosave, the post is autosaveable. if (!autosave) { return true; } // To avoid an expensive content serialization, use the content dirtiness // flag in place of content field comparison against the known autosave. // This is not strictly accurate, and relies on a tolerance toward autosave // request failures for unnecessary saves. if (hasChangedContent(state)) { return true; } // If the title or excerpt has changed, the post is autosaveable. return ['title', 'excerpt'].some(function (field) { return getPostRawValue(autosave[field]) !== selectors_getEditedPostAttribute(state, field); }); }; }); /** * Returns the current autosave, or null if one is not set (i.e. if the post * has yet to be autosaved, or has been saved or published since the last * autosave). * * @deprecated since 5.6. Callers should use the `getAutosave( postType, postId, userId )` * selector from the '@wordpress/core-data' package. * * @param {Object} state Editor state. * * @return {?Object} Current autosave, if exists. */ var getAutosave = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { external_this_wp_deprecated_default()("`wp.data.select( 'core/editor' ).getAutosave()`", { alternative: "`wp.data.select( 'core' ).getAutosave( postType, postId, userId )`", plugin: 'Gutenberg' }); var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); var currentUserId = Object(external_this_lodash_["get"])(select('core').getCurrentUser(), ['id']); var autosave = select('core').getAutosave(postType, postId, currentUserId); return Object(external_this_lodash_["mapValues"])(Object(external_this_lodash_["pick"])(autosave, AUTOSAVE_PROPERTIES), getPostRawValue); }; }); /** * Returns the true if there is an existing autosave, otherwise false. * * @deprecated since 5.6. Callers should use the `getAutosave( postType, postId, userId )` selector * from the '@wordpress/core-data' package and check for a truthy value. * * @param {Object} state Global application state. * * @return {boolean} Whether there is an existing autosave. */ var hasAutosave = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { external_this_wp_deprecated_default()("`wp.data.select( 'core/editor' ).hasAutosave()`", { alternative: "`!! wp.data.select( 'core' ).getAutosave( postType, postId, userId )`", plugin: 'Gutenberg' }); var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); var currentUserId = Object(external_this_lodash_["get"])(select('core').getCurrentUser(), ['id']); return !!select('core').getAutosave(postType, postId, currentUserId); }; }); /** * Return true if the post being edited is being scheduled. Preferring the * unsaved status values. * * @param {Object} state Global application state. * * @return {boolean} Whether the post has been published. */ function selectors_isEditedPostBeingScheduled(state) { var date = selectors_getEditedPostAttribute(state, 'date'); // Offset the date by one minute (network latency) var checkedDate = new Date(Number(Object(external_this_wp_date_["getDate"])(date)) - ONE_MINUTE_IN_MS); return Object(external_this_wp_date_["isInTheFuture"])(checkedDate); } /** * Returns whether the current post should be considered to have a "floating" * date (i.e. that it would publish "Immediately" rather than at a set time). * * Unlike in the PHP backend, the REST API returns a full date string for posts * where the 0000-00-00T00:00:00 placeholder is present in the database. To * infer that a post is set to publish "Immediately" we check whether the date * and modified date are the same. * * @param {Object} state Editor state. * * @return {boolean} Whether the edited post has a floating date value. */ function isEditedPostDateFloating(state) { var date = selectors_getEditedPostAttribute(state, 'date'); var modified = selectors_getEditedPostAttribute(state, 'modified'); var status = selectors_getEditedPostAttribute(state, 'status'); if (status === 'draft' || status === 'auto-draft' || status === 'pending') { return date === modified; } return false; } /** * Returns true if the post is currently being saved, or false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether post is being saved. */ var selectors_isSavingPost = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); return select('core').isSavingEntityRecord('postType', postType, postId); }; }); /** * Returns true if a previous post save was attempted successfully, or false * otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether the post was saved successfully. */ var didPostSaveRequestSucceed = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); return !select('core').getLastEntitySaveError('postType', postType, postId); }; }); /** * Returns true if a previous post save was attempted but failed, or false * otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether the post save failed. */ var didPostSaveRequestFail = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postType = selectors_getCurrentPostType(state); var postId = selectors_getCurrentPostId(state); return !!select('core').getLastEntitySaveError('postType', postType, postId); }; }); /** * Returns true if the post is autosaving, or false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether the post is autosaving. */ function selectors_isAutosavingPost(state) { if (!selectors_isSavingPost(state)) { return false; } return !!Object(external_this_lodash_["get"])(state.saving, ['options', 'isAutosave']); } /** * Returns true if the post is being previewed, or false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether the post is being previewed. */ function isPreviewingPost(state) { if (!selectors_isSavingPost(state)) { return false; } return !!state.saving.options.isPreview; } /** * Returns the post preview link * * @param {Object} state Global application state. * * @return {string?} Preview Link. */ function selectors_getEditedPostPreviewLink(state) { if (state.saving.pending || selectors_isSavingPost(state)) { return; } var previewLink = getAutosaveAttribute(state, 'preview_link'); if (!previewLink) { previewLink = selectors_getEditedPostAttribute(state, 'link'); if (previewLink) { previewLink = Object(external_this_wp_url_["addQueryArgs"])(previewLink, { preview: true }); } } var featuredImageId = selectors_getEditedPostAttribute(state, 'featured_media'); if (previewLink && featuredImageId) { return Object(external_this_wp_url_["addQueryArgs"])(previewLink, { _thumbnail_id: featuredImageId }); } return previewLink; } /** * Returns a suggested post format for the current post, inferred only if there * is a single block within the post and it is of a type known to match a * default post format. Returns null if the format cannot be determined. * * @param {Object} state Global application state. * * @return {?string} Suggested post format. */ function selectors_getSuggestedPostFormat(state) { var blocks = selectors_getEditorBlocks(state); var name; // If there is only one block in the content of the post grab its name // so we can derive a suitable post format from it. if (blocks.length === 1) { name = blocks[0].name; } // If there are two blocks in the content and the last one is a text blocks // grab the name of the first one to also suggest a post format from it. if (blocks.length === 2) { if (blocks[1].name === 'core/paragraph') { name = blocks[0].name; } } // We only convert to default post formats in core. switch (name) { case 'core/image': return 'image'; case 'core/quote': case 'core/pullquote': return 'quote'; case 'core/gallery': return 'gallery'; case 'core/video': case 'core-embed/youtube': case 'core-embed/vimeo': return 'video'; case 'core/audio': case 'core-embed/spotify': case 'core-embed/soundcloud': return 'audio'; } return null; } /** * Returns a set of blocks which are to be used in consideration of the post's * generated save content. * * @deprecated since Gutenberg 6.2.0. * * @param {Object} state Editor state. * * @return {WPBlock[]} Filtered set of blocks for save. */ function getBlocksForSerialization(state) { external_this_wp_deprecated_default()('`core/editor` getBlocksForSerialization selector', { plugin: 'Gutenberg', alternative: 'getEditorBlocks', hint: 'Blocks serialization pre-processing occurs at save time' }); var blocks = state.editor.present.blocks.value; // WARNING: Any changes to the logic of this function should be verified // against the implementation of isEditedPostEmpty, which bypasses this // function for performance' sake, in an assumption of this current logic // being irrelevant to the optimized condition of emptiness. // A single unmodified default block is assumed to be equivalent to an // empty post. var isSingleUnmodifiedDefaultBlock = blocks.length === 1 && Object(external_this_wp_blocks_["isUnmodifiedDefaultBlock"])(blocks[0]); if (isSingleUnmodifiedDefaultBlock) { return []; } return blocks; } /** * Returns the content of the post being edited. * * @param {Object} state Global application state. * * @return {string} Post content. */ var getEditedPostContent = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var postId = selectors_getCurrentPostId(state); var postType = selectors_getCurrentPostType(state); var record = select('core').getEditedEntityRecord('postType', postType, postId); if (record) { if (typeof record.content === 'function') { return record.content(record); } else if (record.blocks) { return serialize_blocks(record.blocks); } else if (record.content) { return record.content; } } return ''; }; }); /** * Returns the reusable block with the given ID. * * @param {Object} state Global application state. * @param {number|string} ref The reusable block's ID. * * @return {Object} The reusable block, or null if none exists. */ var __experimentalGetReusableBlock = Object(rememo["a" /* default */])(function (state, ref) { var block = state.reusableBlocks.data[ref]; if (!block) { return null; } var isTemporary = isNaN(parseInt(ref)); return selectors_objectSpread({}, block, { id: isTemporary ? ref : +ref, isTemporary: isTemporary }); }, function (state, ref) { return [state.reusableBlocks.data[ref]]; }); /** * Returns whether or not the reusable block with the given ID is being saved. * * @param {Object} state Global application state. * @param {string} ref The reusable block's ID. * * @return {boolean} Whether or not the reusable block is being saved. */ function __experimentalIsSavingReusableBlock(state, ref) { return state.reusableBlocks.isSaving[ref] || false; } /** * Returns true if the reusable block with the given ID is being fetched, or * false otherwise. * * @param {Object} state Global application state. * @param {string} ref The reusable block's ID. * * @return {boolean} Whether the reusable block is being fetched. */ function __experimentalIsFetchingReusableBlock(state, ref) { return !!state.reusableBlocks.isFetching[ref]; } /** * Returns an array of all reusable blocks. * * @param {Object} state Global application state. * * @return {Array} An array of all reusable blocks. */ var selectors_experimentalGetReusableBlocks = Object(rememo["a" /* default */])(function (state) { return Object(external_this_lodash_["map"])(state.reusableBlocks.data, function (value, ref) { return __experimentalGetReusableBlock(state, ref); }); }, function (state) { return [state.reusableBlocks.data]; }); /** * Returns state object prior to a specified optimist transaction ID, or `null` * if the transaction corresponding to the given ID cannot be found. * * @param {Object} state Current global application state. * @param {Object} transactionId Optimist transaction ID. * * @return {Object} Global application state prior to transaction. */ function getStateBeforeOptimisticTransaction(state, transactionId) { var transaction = Object(external_this_lodash_["find"])(state.optimist, function (entry) { return entry.beforeState && Object(external_this_lodash_["get"])(entry.action, ['optimist', 'id']) === transactionId; }); return transaction ? transaction.beforeState : null; } /** * Returns true if the post is being published, or false otherwise. * * @param {Object} state Global application state. * * @return {boolean} Whether post is being published. */ function selectors_isPublishingPost(state) { if (!selectors_isSavingPost(state)) { return false; } // Saving is optimistic, so assume that current post would be marked as // published if publishing if (!selectors_isCurrentPostPublished(state)) { return false; } // Use post update transaction ID to retrieve the state prior to the // optimistic transaction var stateBeforeRequest = getStateBeforeOptimisticTransaction(state, POST_UPDATE_TRANSACTION_ID); // Consider as publishing when current post prior to request was not // considered published return !!stateBeforeRequest && !selectors_isCurrentPostPublished(null, stateBeforeRequest.currentPost); } /** * Returns whether the permalink is editable or not. * * @param {Object} state Editor state. * * @return {boolean} Whether or not the permalink is editable. */ function selectors_isPermalinkEditable(state) { var permalinkTemplate = selectors_getEditedPostAttribute(state, 'permalink_template'); return PERMALINK_POSTNAME_REGEX.test(permalinkTemplate); } /** * Returns the permalink for the post. * * @param {Object} state Editor state. * * @return {?string} The permalink, or null if the post is not viewable. */ function getPermalink(state) { var permalinkParts = selectors_getPermalinkParts(state); if (!permalinkParts) { return null; } var prefix = permalinkParts.prefix, postName = permalinkParts.postName, suffix = permalinkParts.suffix; if (selectors_isPermalinkEditable(state)) { return prefix + postName + suffix; } return prefix; } /** * Returns the permalink for a post, split into it's three parts: the prefix, * the postName, and the suffix. * * @param {Object} state Editor state. * * @return {Object} An object containing the prefix, postName, and suffix for * the permalink, or null if the post is not viewable. */ function selectors_getPermalinkParts(state) { var permalinkTemplate = selectors_getEditedPostAttribute(state, 'permalink_template'); if (!permalinkTemplate) { return null; } var postName = selectors_getEditedPostAttribute(state, 'slug') || selectors_getEditedPostAttribute(state, 'generated_slug'); var _permalinkTemplate$sp = permalinkTemplate.split(PERMALINK_POSTNAME_REGEX), _permalinkTemplate$sp2 = Object(slicedToArray["a" /* default */])(_permalinkTemplate$sp, 2), prefix = _permalinkTemplate$sp2[0], suffix = _permalinkTemplate$sp2[1]; return { prefix: prefix, postName: postName, suffix: suffix }; } /** * Returns true if an optimistic transaction is pending commit, for which the * before state satisfies the given predicate function. * * @param {Object} state Editor state. * @param {Function} predicate Function given state, returning true if match. * * @return {boolean} Whether predicate matches for some history. */ function inSomeHistory(state, predicate) { var optimist = state.optimist; // In recursion, optimist state won't exist. Assume exhausted options. if (!optimist) { return false; } return optimist.some(function (_ref) { var beforeState = _ref.beforeState; return beforeState && predicate(beforeState); }); } /** * Returns whether the post is locked. * * @param {Object} state Global application state. * * @return {boolean} Is locked. */ function isPostLocked(state) { return state.postLock.isLocked; } /** * Returns whether post saving is locked. * * @param {Object} state Global application state. * * @return {boolean} Is locked. */ function selectors_isPostSavingLocked(state) { return Object.keys(state.postSavingLock).length > 0; } /** * Returns whether post autosaving is locked. * * @param {Object} state Global application state. * * @return {boolean} Is locked. */ function isPostAutosavingLocked(state) { return Object.keys(state.postAutosavingLock).length > 0; } /** * Returns whether the edition of the post has been taken over. * * @param {Object} state Global application state. * * @return {boolean} Is post lock takeover. */ function isPostLockTakeover(state) { return state.postLock.isTakeover; } /** * Returns details about the post lock user. * * @param {Object} state Global application state. * * @return {Object} A user object. */ function getPostLockUser(state) { return state.postLock.user; } /** * Returns the active post lock. * * @param {Object} state Global application state. * * @return {Object} The lock object. */ function getActivePostLock(state) { return state.postLock.activePostLock; } /** * Returns whether or not the user has the unfiltered_html capability. * * @param {Object} state Editor state. * * @return {boolean} Whether the user can or can't post unfiltered HTML. */ function selectors_canUserUseUnfilteredHTML(state) { return Object(external_this_lodash_["has"])(selectors_getCurrentPost(state), ['_links', 'wp:action-unfiltered-html']); } /** * Returns whether the pre-publish panel should be shown * or skipped when the user clicks the "publish" button. * * @param {Object} state Global application state. * * @return {boolean} Whether the pre-publish panel should be shown or not. */ function selectors_isPublishSidebarEnabled(state) { if (state.preferences.hasOwnProperty('isPublishSidebarEnabled')) { return state.preferences.isPublishSidebarEnabled; } return PREFERENCES_DEFAULTS.isPublishSidebarEnabled; } /** * Return the current block list. * * @param {Object} state * @return {Array} Block list. */ function selectors_getEditorBlocks(state) { return selectors_getEditedPostAttribute(state, 'blocks') || EMPTY_ARRAY; } /** * A block selection object. * * @typedef {Object} WPBlockSelection * * @property {string} clientId A block client ID. * @property {string} attributeKey A block attribute key. * @property {number} offset An attribute value offset, based on the rich * text value. See `wp.richText.create`. */ /** * Returns the current selection start. * * @param {Object} state * @return {WPBlockSelection} The selection start. */ function selectors_getEditorSelectionStart(state) { return selectors_getEditedPostAttribute(state, 'selectionStart'); } /** * Returns the current selection end. * * @param {Object} state * @return {WPBlockSelection} The selection end. */ function selectors_getEditorSelectionEnd(state) { return selectors_getEditedPostAttribute(state, 'selectionEnd'); } /** * Is the editor ready * * @param {Object} state * @return {boolean} is Ready. */ function __unstableIsEditorReady(state) { return state.isReady; } /** * Returns the post editor settings. * * @param {Object} state Editor state. * * @return {Object} The editor settings object. */ function selectors_getEditorSettings(state) { return state.editorSettings; } /* * Backward compatibility */ function getBlockEditorSelector(name) { return Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state) { var _select; external_this_wp_deprecated_default()("`wp.data.select( 'core/editor' )." + name + '`', { alternative: "`wp.data.select( 'core/block-editor' )." + name + '`' }); for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return (_select = select('core/block-editor'))[name].apply(_select, args); }; }); } /** * @see getBlockName in core/block-editor store. */ var selectors_getBlockName = getBlockEditorSelector('getBlockName'); /** * @see isBlockValid in core/block-editor store. */ var isBlockValid = getBlockEditorSelector('isBlockValid'); /** * @see getBlockAttributes in core/block-editor store. */ var getBlockAttributes = getBlockEditorSelector('getBlockAttributes'); /** * @see getBlock in core/block-editor store. */ var selectors_getBlock = getBlockEditorSelector('getBlock'); /** * @see getBlocks in core/block-editor store. */ var selectors_getBlocks = getBlockEditorSelector('getBlocks'); /** * @see __unstableGetBlockWithoutInnerBlocks in core/block-editor store. */ var __unstableGetBlockWithoutInnerBlocks = getBlockEditorSelector('__unstableGetBlockWithoutInnerBlocks'); /** * @see getClientIdsOfDescendants in core/block-editor store. */ var getClientIdsOfDescendants = getBlockEditorSelector('getClientIdsOfDescendants'); /** * @see getClientIdsWithDescendants in core/block-editor store. */ var getClientIdsWithDescendants = getBlockEditorSelector('getClientIdsWithDescendants'); /** * @see getGlobalBlockCount in core/block-editor store. */ var getGlobalBlockCount = getBlockEditorSelector('getGlobalBlockCount'); /** * @see getBlocksByClientId in core/block-editor store. */ var selectors_getBlocksByClientId = getBlockEditorSelector('getBlocksByClientId'); /** * @see getBlockCount in core/block-editor store. */ var getBlockCount = getBlockEditorSelector('getBlockCount'); /** * @see getBlockSelectionStart in core/block-editor store. */ var getBlockSelectionStart = getBlockEditorSelector('getBlockSelectionStart'); /** * @see getBlockSelectionEnd in core/block-editor store. */ var getBlockSelectionEnd = getBlockEditorSelector('getBlockSelectionEnd'); /** * @see getSelectedBlockCount in core/block-editor store. */ var getSelectedBlockCount = getBlockEditorSelector('getSelectedBlockCount'); /** * @see hasSelectedBlock in core/block-editor store. */ var hasSelectedBlock = getBlockEditorSelector('hasSelectedBlock'); /** * @see getSelectedBlockClientId in core/block-editor store. */ var selectors_getSelectedBlockClientId = getBlockEditorSelector('getSelectedBlockClientId'); /** * @see getSelectedBlock in core/block-editor store. */ var getSelectedBlock = getBlockEditorSelector('getSelectedBlock'); /** * @see getBlockRootClientId in core/block-editor store. */ var getBlockRootClientId = getBlockEditorSelector('getBlockRootClientId'); /** * @see getBlockHierarchyRootClientId in core/block-editor store. */ var getBlockHierarchyRootClientId = getBlockEditorSelector('getBlockHierarchyRootClientId'); /** * @see getAdjacentBlockClientId in core/block-editor store. */ var getAdjacentBlockClientId = getBlockEditorSelector('getAdjacentBlockClientId'); /** * @see getPreviousBlockClientId in core/block-editor store. */ var getPreviousBlockClientId = getBlockEditorSelector('getPreviousBlockClientId'); /** * @see getNextBlockClientId in core/block-editor store. */ var getNextBlockClientId = getBlockEditorSelector('getNextBlockClientId'); /** * @see getSelectedBlocksInitialCaretPosition in core/block-editor store. */ var getSelectedBlocksInitialCaretPosition = getBlockEditorSelector('getSelectedBlocksInitialCaretPosition'); /** * @see getMultiSelectedBlockClientIds in core/block-editor store. */ var getMultiSelectedBlockClientIds = getBlockEditorSelector('getMultiSelectedBlockClientIds'); /** * @see getMultiSelectedBlocks in core/block-editor store. */ var getMultiSelectedBlocks = getBlockEditorSelector('getMultiSelectedBlocks'); /** * @see getFirstMultiSelectedBlockClientId in core/block-editor store. */ var getFirstMultiSelectedBlockClientId = getBlockEditorSelector('getFirstMultiSelectedBlockClientId'); /** * @see getLastMultiSelectedBlockClientId in core/block-editor store. */ var getLastMultiSelectedBlockClientId = getBlockEditorSelector('getLastMultiSelectedBlockClientId'); /** * @see isFirstMultiSelectedBlock in core/block-editor store. */ var isFirstMultiSelectedBlock = getBlockEditorSelector('isFirstMultiSelectedBlock'); /** * @see isBlockMultiSelected in core/block-editor store. */ var isBlockMultiSelected = getBlockEditorSelector('isBlockMultiSelected'); /** * @see isAncestorMultiSelected in core/block-editor store. */ var isAncestorMultiSelected = getBlockEditorSelector('isAncestorMultiSelected'); /** * @see getMultiSelectedBlocksStartClientId in core/block-editor store. */ var getMultiSelectedBlocksStartClientId = getBlockEditorSelector('getMultiSelectedBlocksStartClientId'); /** * @see getMultiSelectedBlocksEndClientId in core/block-editor store. */ var getMultiSelectedBlocksEndClientId = getBlockEditorSelector('getMultiSelectedBlocksEndClientId'); /** * @see getBlockOrder in core/block-editor store. */ var getBlockOrder = getBlockEditorSelector('getBlockOrder'); /** * @see getBlockIndex in core/block-editor store. */ var getBlockIndex = getBlockEditorSelector('getBlockIndex'); /** * @see isBlockSelected in core/block-editor store. */ var isBlockSelected = getBlockEditorSelector('isBlockSelected'); /** * @see hasSelectedInnerBlock in core/block-editor store. */ var hasSelectedInnerBlock = getBlockEditorSelector('hasSelectedInnerBlock'); /** * @see isBlockWithinSelection in core/block-editor store. */ var isBlockWithinSelection = getBlockEditorSelector('isBlockWithinSelection'); /** * @see hasMultiSelection in core/block-editor store. */ var hasMultiSelection = getBlockEditorSelector('hasMultiSelection'); /** * @see isMultiSelecting in core/block-editor store. */ var isMultiSelecting = getBlockEditorSelector('isMultiSelecting'); /** * @see isSelectionEnabled in core/block-editor store. */ var isSelectionEnabled = getBlockEditorSelector('isSelectionEnabled'); /** * @see getBlockMode in core/block-editor store. */ var getBlockMode = getBlockEditorSelector('getBlockMode'); /** * @see isTyping in core/block-editor store. */ var isTyping = getBlockEditorSelector('isTyping'); /** * @see isCaretWithinFormattedText in core/block-editor store. */ var isCaretWithinFormattedText = getBlockEditorSelector('isCaretWithinFormattedText'); /** * @see getBlockInsertionPoint in core/block-editor store. */ var getBlockInsertionPoint = getBlockEditorSelector('getBlockInsertionPoint'); /** * @see isBlockInsertionPointVisible in core/block-editor store. */ var isBlockInsertionPointVisible = getBlockEditorSelector('isBlockInsertionPointVisible'); /** * @see isValidTemplate in core/block-editor store. */ var isValidTemplate = getBlockEditorSelector('isValidTemplate'); /** * @see getTemplate in core/block-editor store. */ var getTemplate = getBlockEditorSelector('getTemplate'); /** * @see getTemplateLock in core/block-editor store. */ var getTemplateLock = getBlockEditorSelector('getTemplateLock'); /** * @see canInsertBlockType in core/block-editor store. */ var selectors_canInsertBlockType = getBlockEditorSelector('canInsertBlockType'); /** * @see getInserterItems in core/block-editor store. */ var selectors_getInserterItems = getBlockEditorSelector('getInserterItems'); /** * @see hasInserterItems in core/block-editor store. */ var hasInserterItems = getBlockEditorSelector('hasInserterItems'); /** * @see getBlockListSettings in core/block-editor store. */ var getBlockListSettings = getBlockEditorSelector('getBlockListSettings'); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/effects/reusable-blocks.js function reusable_blocks_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function reusable_blocks_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { reusable_blocks_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { reusable_blocks_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ // TODO: Ideally this would be the only dispatch in scope. This requires either // refactoring editor actions to yielded controls, or replacing direct dispatch // on the editor store with action creators (e.g. `REMOVE_REUSABLE_BLOCK`). /** * Internal dependencies */ /** * Module Constants */ var REUSABLE_BLOCK_NOTICE_ID = 'REUSABLE_BLOCK_NOTICE_ID'; /** * Fetch Reusable blocks Effect Handler. * * @param {Object} action action object. * @param {Object} store Redux Store. */ var fetchReusableBlocks = /*#__PURE__*/ function () { var _ref = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee(action, store) { var id, dispatch, postType, posts, results; return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: id = action.id; dispatch = store.dispatch; // TODO: these are potentially undefined, this fix is in place // until there is a filter to not use reusable blocks if undefined _context.next = 4; return external_this_wp_apiFetch_default()({ path: '/wp/v2/types/wp_block' }); case 4: postType = _context.sent; if (postType) { _context.next = 7; break; } return _context.abrupt("return"); case 7: _context.prev = 7; if (!id) { _context.next = 15; break; } _context.next = 11; return external_this_wp_apiFetch_default()({ path: "/wp/v2/".concat(postType.rest_base, "/").concat(id) }); case 11: _context.t0 = _context.sent; posts = [_context.t0]; _context.next = 18; break; case 15: _context.next = 17; return external_this_wp_apiFetch_default()({ path: "/wp/v2/".concat(postType.rest_base, "?per_page=-1") }); case 17: posts = _context.sent; case 18: results = Object(external_this_lodash_["compact"])(Object(external_this_lodash_["map"])(posts, function (post) { if (post.status !== 'publish' || post.content.protected) { return null; } return reusable_blocks_objectSpread({}, post, { content: post.content.raw, title: post.title.raw }); })); if (results.length) { dispatch(__experimentalReceiveReusableBlocks(results)); } dispatch({ type: 'FETCH_REUSABLE_BLOCKS_SUCCESS', id: id }); _context.next = 26; break; case 23: _context.prev = 23; _context.t1 = _context["catch"](7); dispatch({ type: 'FETCH_REUSABLE_BLOCKS_FAILURE', id: id, error: _context.t1 }); case 26: case "end": return _context.stop(); } } }, _callee, null, [[7, 23]]); })); return function fetchReusableBlocks(_x, _x2) { return _ref.apply(this, arguments); }; }(); /** * Save Reusable blocks Effect Handler. * * @param {Object} action action object. * @param {Object} store Redux Store. */ var saveReusableBlocks = /*#__PURE__*/ function () { var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee2(action, store) { var postType, id, dispatch, state, _getReusableBlock, title, content, isTemporary, data, path, method, updatedReusableBlock, message; return external_this_regeneratorRuntime_default.a.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return external_this_wp_apiFetch_default()({ path: '/wp/v2/types/wp_block' }); case 2: postType = _context2.sent; if (postType) { _context2.next = 5; break; } return _context2.abrupt("return"); case 5: id = action.id; dispatch = store.dispatch; state = store.getState(); _getReusableBlock = __experimentalGetReusableBlock(state, id), title = _getReusableBlock.title, content = _getReusableBlock.content, isTemporary = _getReusableBlock.isTemporary; data = isTemporary ? { title: title, content: content, status: 'publish' } : { id: id, title: title, content: content, status: 'publish' }; path = isTemporary ? "/wp/v2/".concat(postType.rest_base) : "/wp/v2/".concat(postType.rest_base, "/").concat(id); method = isTemporary ? 'POST' : 'PUT'; _context2.prev = 12; _context2.next = 15; return external_this_wp_apiFetch_default()({ path: path, data: data, method: method }); case 15: updatedReusableBlock = _context2.sent; dispatch({ type: 'SAVE_REUSABLE_BLOCK_SUCCESS', updatedId: updatedReusableBlock.id, id: id }); message = isTemporary ? Object(external_this_wp_i18n_["__"])('Block created.') : Object(external_this_wp_i18n_["__"])('Block updated.'); Object(external_this_wp_data_["dispatch"])('core/notices').createSuccessNotice(message, { id: REUSABLE_BLOCK_NOTICE_ID, type: 'snackbar' }); Object(external_this_wp_data_["dispatch"])('core/block-editor').__unstableSaveReusableBlock(id, updatedReusableBlock.id); _context2.next = 26; break; case 22: _context2.prev = 22; _context2.t0 = _context2["catch"](12); dispatch({ type: 'SAVE_REUSABLE_BLOCK_FAILURE', id: id }); Object(external_this_wp_data_["dispatch"])('core/notices').createErrorNotice(_context2.t0.message, { id: REUSABLE_BLOCK_NOTICE_ID }); case 26: case "end": return _context2.stop(); } } }, _callee2, null, [[12, 22]]); })); return function saveReusableBlocks(_x3, _x4) { return _ref2.apply(this, arguments); }; }(); /** * Delete Reusable blocks Effect Handler. * * @param {Object} action action object. * @param {Object} store Redux Store. */ var deleteReusableBlocks = /*#__PURE__*/ function () { var _ref3 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee3(action, store) { var postType, id, getState, dispatch, reusableBlock, allBlocks, associatedBlocks, associatedBlockClientIds, transactionId, message; return external_this_regeneratorRuntime_default.a.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return external_this_wp_apiFetch_default()({ path: '/wp/v2/types/wp_block' }); case 2: postType = _context3.sent; if (postType) { _context3.next = 5; break; } return _context3.abrupt("return"); case 5: id = action.id; getState = store.getState, dispatch = store.dispatch; // Don't allow a reusable block with a temporary ID to be deleted reusableBlock = __experimentalGetReusableBlock(getState(), id); if (!(!reusableBlock || reusableBlock.isTemporary)) { _context3.next = 10; break; } return _context3.abrupt("return"); case 10: // Remove any other blocks that reference this reusable block allBlocks = Object(external_this_wp_data_["select"])('core/block-editor').getBlocks(); associatedBlocks = allBlocks.filter(function (block) { return Object(external_this_wp_blocks_["isReusableBlock"])(block) && block.attributes.ref === id; }); associatedBlockClientIds = associatedBlocks.map(function (block) { return block.clientId; }); transactionId = Object(external_this_lodash_["uniqueId"])(); dispatch({ type: 'REMOVE_REUSABLE_BLOCK', id: id, optimist: { type: redux_optimist["BEGIN"], id: transactionId } }); // Remove the parsed block. if (associatedBlockClientIds.length) { Object(external_this_wp_data_["dispatch"])('core/block-editor').removeBlocks(associatedBlockClientIds); } _context3.prev = 16; _context3.next = 19; return external_this_wp_apiFetch_default()({ path: "/wp/v2/".concat(postType.rest_base, "/").concat(id), method: 'DELETE' }); case 19: dispatch({ type: 'DELETE_REUSABLE_BLOCK_SUCCESS', id: id, optimist: { type: redux_optimist["COMMIT"], id: transactionId } }); message = Object(external_this_wp_i18n_["__"])('Block deleted.'); Object(external_this_wp_data_["dispatch"])('core/notices').createSuccessNotice(message, { id: REUSABLE_BLOCK_NOTICE_ID, type: 'snackbar' }); _context3.next = 28; break; case 24: _context3.prev = 24; _context3.t0 = _context3["catch"](16); dispatch({ type: 'DELETE_REUSABLE_BLOCK_FAILURE', id: id, optimist: { type: redux_optimist["REVERT"], id: transactionId } }); Object(external_this_wp_data_["dispatch"])('core/notices').createErrorNotice(_context3.t0.message, { id: REUSABLE_BLOCK_NOTICE_ID }); case 28: case "end": return _context3.stop(); } } }, _callee3, null, [[16, 24]]); })); return function deleteReusableBlocks(_x5, _x6) { return _ref3.apply(this, arguments); }; }(); /** * Convert a reusable block to a static block effect handler * * @param {Object} action action object. * @param {Object} store Redux Store. */ var reusable_blocks_convertBlockToStatic = function convertBlockToStatic(action, store) { var state = store.getState(); var oldBlock = Object(external_this_wp_data_["select"])('core/block-editor').getBlock(action.clientId); var reusableBlock = __experimentalGetReusableBlock(state, oldBlock.attributes.ref); var newBlocks = Object(external_this_wp_blocks_["parse"])(reusableBlock.content); Object(external_this_wp_data_["dispatch"])('core/block-editor').replaceBlocks(oldBlock.clientId, newBlocks); }; /** * Convert a static block to a reusable block effect handler * * @param {Object} action action object. * @param {Object} store Redux Store. */ var reusable_blocks_convertBlockToReusable = function convertBlockToReusable(action, store) { var dispatch = store.dispatch; var reusableBlock = { id: Object(external_this_lodash_["uniqueId"])('reusable'), title: Object(external_this_wp_i18n_["__"])('Untitled Reusable Block'), content: Object(external_this_wp_blocks_["serialize"])(Object(external_this_wp_data_["select"])('core/block-editor').getBlocksByClientId(action.clientIds)) }; dispatch(__experimentalReceiveReusableBlocks([reusableBlock])); dispatch(__experimentalSaveReusableBlock(reusableBlock.id)); Object(external_this_wp_data_["dispatch"])('core/block-editor').replaceBlocks(action.clientIds, Object(external_this_wp_blocks_["createBlock"])('core/block', { ref: reusableBlock.id })); }; // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/effects.js /** * Internal dependencies */ /* harmony default export */ var effects = ({ FETCH_REUSABLE_BLOCKS: function FETCH_REUSABLE_BLOCKS(action, store) { fetchReusableBlocks(action, store); }, SAVE_REUSABLE_BLOCK: function SAVE_REUSABLE_BLOCK(action, store) { saveReusableBlocks(action, store); }, DELETE_REUSABLE_BLOCK: function DELETE_REUSABLE_BLOCK(action, store) { deleteReusableBlocks(action, store); }, CONVERT_BLOCK_TO_STATIC: reusable_blocks_convertBlockToStatic, CONVERT_BLOCK_TO_REUSABLE: reusable_blocks_convertBlockToReusable }); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/middlewares.js /** * External dependencies */ /** * Internal dependencies */ /** * Applies the custom middlewares used specifically in the editor module. * * @param {Object} store Store Object. * * @return {Object} Update Store Object. */ function applyMiddlewares(store) { var enhancedDispatch = function enhancedDispatch() { throw new Error('Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.'); }; var middlewareAPI = { getState: store.getState, dispatch: function dispatch() { return enhancedDispatch.apply(void 0, arguments); } }; enhancedDispatch = refx_default()(effects)(middlewareAPI)(store.dispatch); store.dispatch = enhancedDispatch; return store; } /* harmony default export */ var middlewares = (applyMiddlewares); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/controls.js /** * WordPress dependencies */ /** * Returns a control descriptor signalling to subscribe to the registry and * resolve the control promise only when the next state change occurs. * * @return {Object} Control descriptor. */ function awaitNextStateChange() { return { type: 'AWAIT_NEXT_STATE_CHANGE' }; } /** * Returns a control descriptor signalling to resolve with the current data * registry. * * @return {Object} Control descriptor. */ function getRegistry() { return { type: 'GET_REGISTRY' }; } /** * Function returning a sessionStorage key to set or retrieve a given post's * automatic session backup. * * Keys are crucially prefixed with 'wp-autosave-' so that wp-login.php's * `loggedout` handler can clear sessionStorage of any user-private content. * * @see https://github.com/WordPress/wordpress-develop/blob/6dad32d2aed47e6c0cf2aee8410645f6d7aba6bd/src/wp-login.php#L103 * * @param {string} postId Post ID. * @return {string} sessionStorage key */ function postKey(postId) { return "wp-autosave-block-editor-post-".concat(postId); } function localAutosaveGet(postId) { return window.sessionStorage.getItem(postKey(postId)); } function localAutosaveSet(postId, title, content, excerpt) { window.sessionStorage.setItem(postKey(postId), JSON.stringify({ post_title: title, content: content, excerpt: excerpt })); } function localAutosaveClear(postId) { window.sessionStorage.removeItem(postKey(postId)); } var controls = { AWAIT_NEXT_STATE_CHANGE: Object(external_this_wp_data_["createRegistryControl"])(function (registry) { return function () { return new Promise(function (resolve) { var unsubscribe = registry.subscribe(function () { unsubscribe(); resolve(); }); }); }; }), GET_REGISTRY: Object(external_this_wp_data_["createRegistryControl"])(function (registry) { return function () { return registry; }; }), LOCAL_AUTOSAVE_SET: function LOCAL_AUTOSAVE_SET(_ref) { var postId = _ref.postId, title = _ref.title, content = _ref.content, excerpt = _ref.excerpt; localAutosaveSet(postId, title, content, excerpt); } }; /* harmony default export */ var store_controls = (controls); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/store/index.js function store_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function store_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { store_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { store_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ /** * Post editor data store configuration. * * @see https://github.com/WordPress/gutenberg/blob/master/packages/data/README.md#registerStore * * @type {Object} */ var storeConfig = { reducer: reducer, selectors: selectors_namespaceObject, actions: actions_namespaceObject, controls: store_objectSpread({}, external_this_wp_dataControls_["controls"], {}, store_controls) }; var store_store = Object(external_this_wp_data_["registerStore"])(STORE_KEY, store_objectSpread({}, storeConfig, { persist: ['preferences'] })); middlewares(store_store); /* harmony default export */ var build_module_store = (store_store); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__("wx14"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__("Ff2n"); // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // EXTERNAL MODULE: external {"this":["wp","compose"]} var external_this_wp_compose_ = __webpack_require__("K9lf"); // EXTERNAL MODULE: external {"this":["wp","hooks"]} var external_this_wp_hooks_ = __webpack_require__("g56x"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/hooks/custom-sources-backwards-compatibility.js function custom_sources_backwards_compatibility_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function custom_sources_backwards_compatibility_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { custom_sources_backwards_compatibility_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { custom_sources_backwards_compatibility_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** @typedef {import('@wordpress/compose').WPHigherOrderComponent} WPHigherOrderComponent */ /** @typedef {import('@wordpress/blocks').WPBlockSettings} WPBlockSettings */ /** * Object whose keys are the names of block attributes, where each value * represents the meta key to which the block attribute is intended to save. * * @see https://developer.wordpress.org/reference/functions/register_meta/ * * @typedef {Object} WPMetaAttributeMapping */ /** * Given a mapping of attribute names (meta source attributes) to their * associated meta key, returns a higher order component that overrides its * `attributes` and `setAttributes` props to sync any changes with the edited * post's meta keys. * * @param {WPMetaAttributeMapping} metaAttributes Meta attribute mapping. * * @return {WPHigherOrderComponent} Higher-order component. */ var custom_sources_backwards_compatibility_createWithMetaAttributeSource = function createWithMetaAttributeSource(metaAttributes) { return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (BlockEdit) { return function (_ref) { var attributes = _ref.attributes, _setAttributes = _ref.setAttributes, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["attributes", "setAttributes"]); var postType = Object(external_this_wp_data_["useSelect"])(function (select) { return select('core/editor').getCurrentPostType(); }, []); var _useEntityProp = Object(external_this_wp_coreData_["useEntityProp"])('postType', postType, 'meta'), _useEntityProp2 = Object(slicedToArray["a" /* default */])(_useEntityProp, 2), meta = _useEntityProp2[0], setMeta = _useEntityProp2[1]; var mergedAttributes = Object(external_this_wp_element_["useMemo"])(function () { return custom_sources_backwards_compatibility_objectSpread({}, attributes, {}, Object(external_this_lodash_["mapValues"])(metaAttributes, function (metaKey) { return meta[metaKey]; })); }, [attributes, meta]); return Object(external_this_wp_element_["createElement"])(BlockEdit, Object(esm_extends["a" /* default */])({ attributes: mergedAttributes, setAttributes: function setAttributes(nextAttributes) { var nextMeta = Object(external_this_lodash_["mapKeys"])( // Filter to intersection of keys between the updated // attributes and those with an associated meta key. Object(external_this_lodash_["pickBy"])(nextAttributes, function (value, key) { return metaAttributes[key]; }), // Rename the keys to the expected meta key name. function (value, attributeKey) { return metaAttributes[attributeKey]; }); if (!Object(external_this_lodash_["isEmpty"])(nextMeta)) { setMeta(nextMeta); } _setAttributes(nextAttributes); } }, props)); }; }, 'withMetaAttributeSource'); }; /** * Filters a registered block's settings to enhance a block's `edit` component * to upgrade meta-sourced attributes to use the post's meta entity property. * * @param {WPBlockSettings} settings Registered block settings. * * @return {WPBlockSettings} Filtered block settings. */ function shimAttributeSource(settings) { /** @type {WPMetaAttributeMapping} */ var metaAttributes = Object(external_this_lodash_["mapValues"])(Object(external_this_lodash_["pickBy"])(settings.attributes, { source: 'meta' }), 'meta'); if (!Object(external_this_lodash_["isEmpty"])(metaAttributes)) { settings.edit = custom_sources_backwards_compatibility_createWithMetaAttributeSource(metaAttributes)(settings.edit); } return settings; } Object(external_this_wp_hooks_["addFilter"])('blocks.registerBlockType', 'core/editor/custom-sources-backwards-compatibility/shim-attribute-source', shimAttributeSource); // The above filter will only capture blocks registered after the filter was // added. There may already be blocks registered by this point, and those must // be updated to apply the shim. // // The following implementation achieves this, albeit with a couple caveats: // - Only blocks registered on the global store will be modified. // - The block settings are directly mutated, since there is currently no // mechanism to update an existing block registration. This is the reason for // `getBlockType` separate from `getBlockTypes`, since the latter returns a // _copy_ of the block registration (i.e. the mutation would not affect the // actual registered block settings). // // `getBlockTypes` or `getBlockType` implementation could change in the future // in regards to creating settings clones, but the corresponding end-to-end // tests for meta blocks should cover against any potential regressions. // // In the future, we could support updating block settings, at which point this // implementation could use that mechanism instead. Object(external_this_wp_data_["select"])('core/blocks').getBlockTypes().map(function (_ref2) { var name = _ref2.name; return Object(external_this_wp_data_["select"])('core/blocks').getBlockType(name); }).forEach(shimAttributeSource); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/autocompleters/block.js /** * External dependencies */ /** * WordPress dependencies */ /** @typedef {import('@wordpress/block-editor').WPEditorInserterItem} WPEditorInserterItem */ /** @typedef {import('@wordpress/components').WPCompleter} WPCompleter */ /** * Returns the client ID of the parent where a newly inserted block would be * placed. * * @return {string} Client ID of the parent where a newly inserted block would * be placed. */ function defaultGetBlockInsertionParentClientId() { return Object(external_this_wp_data_["select"])('core/block-editor').getBlockInsertionPoint().rootClientId; } /** * Returns the inserter items for the specified parent block. * * @param {string} rootClientId Client ID of the block for which to retrieve * inserter items. * * @return {Array} The inserter items for the specified * parent. */ function defaultGetInserterItems(rootClientId) { return Object(external_this_wp_data_["select"])('core/block-editor').getInserterItems(rootClientId); } /** * Returns the name of the currently selected block. * * @return {string?} The name of the currently selected block or `null` if no * block is selected. */ function defaultGetSelectedBlockName() { var _select = Object(external_this_wp_data_["select"])('core/block-editor'), getSelectedBlockClientId = _select.getSelectedBlockClientId, getBlockName = _select.getBlockName; var selectedBlockClientId = getSelectedBlockClientId(); return selectedBlockClientId ? getBlockName(selectedBlockClientId) : null; } /** * Triggers a fetch of reusable blocks, once. * * TODO: Reusable blocks fetching should be reimplemented as a core-data entity * resolver, not relying on `core/editor` (see #7119). The implementation here * is imperfect in that the options result will not await the completion of the * fetch request and thus will not include any reusable blocks. This has always * been true, but relied upon the fact the user would be delayed in typing an * autocompleter search query. Once implemented using resolvers, the status of * this request could be subscribed to as part of a promised return value using * the result of `hasFinishedResolution`. There is currently reliable way to * determine that a reusable blocks fetch request has completed. * * @return {Promise} Promise resolving once reusable blocks fetched. */ var block_fetchReusableBlocks = Object(external_this_lodash_["once"])(function () { Object(external_this_wp_data_["dispatch"])('core/editor').__experimentalFetchReusableBlocks(); }); /** * Creates a blocks repeater for replacing the current block with a selected block type. * * @return {WPCompleter} A blocks completer. */ function createBlockCompleter() { var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$getBlockInsertio = _ref.getBlockInsertionParentClientId, getBlockInsertionParentClientId = _ref$getBlockInsertio === void 0 ? defaultGetBlockInsertionParentClientId : _ref$getBlockInsertio, _ref$getInserterItems = _ref.getInserterItems, getInserterItems = _ref$getInserterItems === void 0 ? defaultGetInserterItems : _ref$getInserterItems, _ref$getSelectedBlock = _ref.getSelectedBlockName, getSelectedBlockName = _ref$getSelectedBlock === void 0 ? defaultGetSelectedBlockName : _ref$getSelectedBlock; return { name: 'blocks', className: 'editor-autocompleters__block', triggerPrefix: '/', options: function options() { block_fetchReusableBlocks(); var selectedBlockName = getSelectedBlockName(); return getInserterItems(getBlockInsertionParentClientId()).filter( // Avoid offering to replace the current block with a block of the same type. function (inserterItem) { return selectedBlockName !== inserterItem.name; }); }, getOptionKeywords: function getOptionKeywords(inserterItem) { var title = inserterItem.title, _inserterItem$keyword = inserterItem.keywords, keywords = _inserterItem$keyword === void 0 ? [] : _inserterItem$keyword, category = inserterItem.category; return [category].concat(Object(toConsumableArray["a" /* default */])(keywords), [title]); }, getOptionLabel: function getOptionLabel(inserterItem) { var icon = inserterItem.icon, title = inserterItem.title; return [Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockIcon"], { key: "icon", icon: icon, showColors: true }), title]; }, allowContext: function allowContext(before, after) { return !(/\S/.test(before) || /\S/.test(after)); }, getOptionCompletion: function getOptionCompletion(inserterItem) { var name = inserterItem.name, initialAttributes = inserterItem.initialAttributes; return { action: 'replace', value: Object(external_this_wp_blocks_["createBlock"])(name, initialAttributes) }; }, isOptionDisabled: function isOptionDisabled(inserterItem) { return inserterItem.isDisabled; } }; } /** * Creates a blocks repeater for replacing the current block with a selected block type. * * @return {WPCompleter} A blocks completer. */ /* harmony default export */ var autocompleters_block = (createBlockCompleter()); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/autocompleters/user.js /** * WordPress dependencies */ /** @typedef {import('@wordpress/components').WPCompleter} WPCompleter */ /** * A user mentions completer. * * @type {WPCompleter} */ /* harmony default export */ var autocompleters_user = ({ name: 'users', className: 'editor-autocompleters__user', triggerPrefix: '@', options: function options(search) { var payload = ''; if (search) { payload = '?search=' + encodeURIComponent(search); } return external_this_wp_apiFetch_default()({ path: '/wp/v2/users' + payload }); }, isDebounced: true, getOptionKeywords: function getOptionKeywords(user) { return [user.slug, user.name]; }, getOptionLabel: function getOptionLabel(user) { var avatar = user.avatar_urls && user.avatar_urls[24] ? Object(external_this_wp_element_["createElement"])("img", { key: "avatar", className: "editor-autocompleters__user-avatar", alt: "", src: user.avatar_urls[24] }) : Object(external_this_wp_element_["createElement"])("span", { className: "editor-autocompleters__no-avatar" }); return [avatar, Object(external_this_wp_element_["createElement"])("span", { key: "name", className: "editor-autocompleters__user-name" }, user.name), Object(external_this_wp_element_["createElement"])("span", { key: "slug", className: "editor-autocompleters__user-slug" }, user.slug)]; }, getOptionCompletion: function getOptionCompletion(user) { return "@".concat(user.slug); } }); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/autocompleters/index.js // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js var classCallCheck = __webpack_require__("1OyB"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js var createClass = __webpack_require__("vuIU"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js var possibleConstructorReturn = __webpack_require__("md7G"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js var getPrototypeOf = __webpack_require__("foSv"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules var inherits = __webpack_require__("Ji7U"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/autosave-monitor/index.js /** * WordPress dependencies */ var autosave_monitor_AutosaveMonitor = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(AutosaveMonitor, _Component); function AutosaveMonitor() { Object(classCallCheck["a" /* default */])(this, AutosaveMonitor); return Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(AutosaveMonitor).apply(this, arguments)); } Object(createClass["a" /* default */])(AutosaveMonitor, [{ key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _this$props = this.props, isDirty = _this$props.isDirty, editsReference = _this$props.editsReference, isAutosaveable = _this$props.isAutosaveable, isAutosaving = _this$props.isAutosaving; // The edits reference is held for comparison to avoid scheduling an // autosave if an edit has not been made since the last autosave // completion. This is assigned when the autosave completes, and reset // when an edit occurs. // // See: https://github.com/WordPress/gutenberg/issues/12318 if (editsReference !== prevProps.editsReference) { this.didAutosaveForEditsReference = false; } if (!isAutosaving && prevProps.isAutosaving) { this.didAutosaveForEditsReference = true; } if (prevProps.isDirty !== isDirty || prevProps.isAutosaveable !== isAutosaveable || prevProps.editsReference !== editsReference) { this.toggleTimer(isDirty && isAutosaveable && !this.didAutosaveForEditsReference); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { this.toggleTimer(false); } }, { key: "toggleTimer", value: function toggleTimer(isPendingSave) { var _this = this; var _this$props2 = this.props, interval = _this$props2.interval, _this$props2$shouldTh = _this$props2.shouldThrottle, shouldThrottle = _this$props2$shouldTh === void 0 ? false : _this$props2$shouldTh; // By default, AutosaveMonitor will wait for a pause in editing before // autosaving. In other words, its action is "debounced". // // The `shouldThrottle` props allows overriding this behaviour, thus // making the autosave action "throttled". if (!shouldThrottle && this.pendingSave) { clearTimeout(this.pendingSave); delete this.pendingSave; } if (isPendingSave && !(shouldThrottle && this.pendingSave)) { this.pendingSave = setTimeout(function () { _this.props.autosave(); delete _this.pendingSave; }, interval * 1000); } } }, { key: "render", value: function render() { return null; } }]); return AutosaveMonitor; }(external_this_wp_element_["Component"]); /* harmony default export */ var autosave_monitor = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, ownProps) { var _select = select('core'), getReferenceByDistinctEdits = _select.getReferenceByDistinctEdits; var _select2 = select('core/editor'), isEditedPostDirty = _select2.isEditedPostDirty, isEditedPostAutosaveable = _select2.isEditedPostAutosaveable, isAutosavingPost = _select2.isAutosavingPost, getEditorSettings = _select2.getEditorSettings; var _ownProps$interval = ownProps.interval, interval = _ownProps$interval === void 0 ? getEditorSettings().autosaveInterval : _ownProps$interval; return { isDirty: isEditedPostDirty(), isAutosaveable: isEditedPostAutosaveable(), editsReference: getReferenceByDistinctEdits(), isAutosaving: isAutosavingPost(), interval: interval }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, ownProps) { return { autosave: function autosave() { var _ownProps$autosave = ownProps.autosave, autosave = _ownProps$autosave === void 0 ? dispatch('core/editor').autosave : _ownProps$autosave; autosave(); } }; })])(autosave_monitor_AutosaveMonitor)); // EXTERNAL MODULE: ./node_modules/classnames/index.js var classnames = __webpack_require__("TSYQ"); var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/document-outline/item.js /** * External dependencies */ /** * WordPress dependencies */ var item_TableOfContentsItem = function TableOfContentsItem(_ref) { var children = _ref.children, isValid = _ref.isValid, level = _ref.level, _ref$path = _ref.path, path = _ref$path === void 0 ? [] : _ref$path, href = _ref.href, onSelect = _ref.onSelect; return Object(external_this_wp_element_["createElement"])("li", { className: classnames_default()('document-outline__item', "is-".concat(level.toLowerCase()), { 'is-invalid': !isValid }) }, Object(external_this_wp_element_["createElement"])("a", { href: href, className: "document-outline__button", onClick: onSelect }, Object(external_this_wp_element_["createElement"])("span", { className: "document-outline__emdash", "aria-hidden": "true" }), // path is an array of nodes that are ancestors of the heading starting in the top level node. // This mapping renders each ancestor to make it easier for the user to know where the headings are nested. path.map(function (_ref2, index) { var clientId = _ref2.clientId; return Object(external_this_wp_element_["createElement"])("strong", { key: index, className: "document-outline__level" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockTitle"], { clientId: clientId })); }), Object(external_this_wp_element_["createElement"])("strong", { className: "document-outline__level" }, level), Object(external_this_wp_element_["createElement"])("span", { className: "document-outline__item-content" }, children))); }; /* harmony default export */ var document_outline_item = (item_TableOfContentsItem); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/document-outline/index.js function document_outline_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function document_outline_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { document_outline_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { document_outline_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Module constants */ var emptyHeadingContent = Object(external_this_wp_element_["createElement"])("em", null, Object(external_this_wp_i18n_["__"])('(Empty heading)')); var incorrectLevelContent = [Object(external_this_wp_element_["createElement"])("br", { key: "incorrect-break" }), Object(external_this_wp_element_["createElement"])("em", { key: "incorrect-message" }, Object(external_this_wp_i18n_["__"])('(Incorrect heading level)'))]; var singleH1Headings = [Object(external_this_wp_element_["createElement"])("br", { key: "incorrect-break-h1" }), Object(external_this_wp_element_["createElement"])("em", { key: "incorrect-message-h1" }, Object(external_this_wp_i18n_["__"])('(Your theme may already use a H1 for the post title)'))]; var multipleH1Headings = [Object(external_this_wp_element_["createElement"])("br", { key: "incorrect-break-multiple-h1" }), Object(external_this_wp_element_["createElement"])("em", { key: "incorrect-message-multiple-h1" }, Object(external_this_wp_i18n_["__"])('(Multiple H1 headings are not recommended)'))]; /** * Returns an array of heading blocks enhanced with the following properties: * path - An array of blocks that are ancestors of the heading starting from a top-level node. * Can be an empty array if the heading is a top-level node (is not nested inside another block). * level - An integer with the heading level. * isEmpty - Flag indicating if the heading has no content. * * @param {?Array} blocks An array of blocks. * @param {?Array} path An array of blocks that are ancestors of the blocks passed as blocks. * * @return {Array} An array of heading blocks enhanced with the properties described above. */ var document_outline_computeOutlineHeadings = function computeOutlineHeadings() { var blocks = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var path = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return Object(external_this_lodash_["flatMap"])(blocks, function () { var block = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (block.name === 'core/heading') { return document_outline_objectSpread({}, block, { path: path, level: block.attributes.level, isEmpty: isEmptyHeading(block) }); } return computeOutlineHeadings(block.innerBlocks, [].concat(Object(toConsumableArray["a" /* default */])(path), [block])); }); }; var isEmptyHeading = function isEmptyHeading(heading) { return !heading.attributes.content || heading.attributes.content.length === 0; }; var document_outline_DocumentOutline = function DocumentOutline(_ref) { var _ref$blocks = _ref.blocks, blocks = _ref$blocks === void 0 ? [] : _ref$blocks, title = _ref.title, onSelect = _ref.onSelect, isTitleSupported = _ref.isTitleSupported, hasOutlineItemsDisabled = _ref.hasOutlineItemsDisabled; var headings = document_outline_computeOutlineHeadings(blocks); if (headings.length < 1) { return null; } var prevHeadingLevel = 1; // Not great but it's the simplest way to locate the title right now. var titleNode = document.querySelector('.editor-post-title__input'); var hasTitle = isTitleSupported && title && titleNode; var countByLevel = Object(external_this_lodash_["countBy"])(headings, 'level'); var hasMultipleH1 = countByLevel[1] > 1; return Object(external_this_wp_element_["createElement"])("div", { className: "document-outline" }, Object(external_this_wp_element_["createElement"])("ul", null, hasTitle && Object(external_this_wp_element_["createElement"])(document_outline_item, { level: Object(external_this_wp_i18n_["__"])('Title'), isValid: true, onSelect: onSelect, href: "#".concat(titleNode.id), isDisabled: hasOutlineItemsDisabled }, title), headings.map(function (item, index) { // Headings remain the same, go up by one, or down by any amount. // Otherwise there are missing levels. var isIncorrectLevel = item.level > prevHeadingLevel + 1; var isValid = !item.isEmpty && !isIncorrectLevel && !!item.level && (item.level !== 1 || !hasMultipleH1 && !hasTitle); prevHeadingLevel = item.level; return Object(external_this_wp_element_["createElement"])(document_outline_item, { key: index, level: "H".concat(item.level), isValid: isValid, path: item.path, isDisabled: hasOutlineItemsDisabled, href: "#block-".concat(item.clientId), onSelect: onSelect }, item.isEmpty ? emptyHeadingContent : Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["create"])({ html: item.attributes.content })), isIncorrectLevel && incorrectLevelContent, item.level === 1 && hasMultipleH1 && multipleH1Headings, hasTitle && item.level === 1 && !hasMultipleH1 && singleH1Headings); }))); }; /* harmony default export */ var document_outline = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getBlocks = _select.getBlocks; var _select2 = select('core/editor'), getEditedPostAttribute = _select2.getEditedPostAttribute; var _select3 = select('core'), getPostType = _select3.getPostType; var postType = getPostType(getEditedPostAttribute('type')); return { title: getEditedPostAttribute('title'), blocks: getBlocks(), isTitleSupported: Object(external_this_lodash_["get"])(postType, ['supports', 'title'], false) }; }))(document_outline_DocumentOutline)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/document-outline/check.js /** * External dependencies */ /** * WordPress dependencies */ function DocumentOutlineCheck(_ref) { var blocks = _ref.blocks, children = _ref.children; var headings = Object(external_this_lodash_["filter"])(blocks, function (block) { return block.name === 'core/heading'; }); if (headings.length < 1) { return null; } return children; } /* harmony default export */ var check = (Object(external_this_wp_data_["withSelect"])(function (select) { return { blocks: select('core/block-editor').getBlocks() }; })(DocumentOutlineCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/global-keyboard-shortcuts/save-shortcut.js /** * WordPress dependencies */ function SaveShortcut() { var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core/editor'), savePost = _useDispatch.savePost; var isEditedPostDirty = Object(external_this_wp_data_["useSelect"])(function (select) { return select('core/editor').isEditedPostDirty; }, []); Object(external_this_wp_keyboardShortcuts_["useShortcut"])('core/editor/save', function (event) { event.preventDefault(); // TODO: This should be handled in the `savePost` effect in // considering `isSaveable`. See note on `isEditedPostSaveable` // selector about dirtiness and meta-boxes. // // See: `isEditedPostSaveable` if (!isEditedPostDirty()) { return; } savePost(); }, { bindGlobal: true }); return null; } /* harmony default export */ var save_shortcut = (SaveShortcut); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/global-keyboard-shortcuts/visual-editor-shortcuts.js /** * WordPress dependencies */ /** * Internal dependencies */ function VisualEditorGlobalKeyboardShortcuts() { var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core/editor'), redo = _useDispatch.redo, undo = _useDispatch.undo, savePost = _useDispatch.savePost; var isEditedPostDirty = Object(external_this_wp_data_["useSelect"])(function (select) { return select('core/editor').isEditedPostDirty; }, []); Object(external_this_wp_keyboardShortcuts_["useShortcut"])('core/editor/undo', function (event) { undo(); event.preventDefault(); }, { bindGlobal: true }); Object(external_this_wp_keyboardShortcuts_["useShortcut"])('core/editor/redo', function (event) { redo(); event.preventDefault(); }, { bindGlobal: true }); Object(external_this_wp_keyboardShortcuts_["useShortcut"])('core/editor/save', function (event) { event.preventDefault(); // TODO: This should be handled in the `savePost` effect in // considering `isSaveable`. See note on `isEditedPostSaveable` // selector about dirtiness and meta-boxes. // // See: `isEditedPostSaveable` if (!isEditedPostDirty()) { return; } savePost(); }, { bindGlobal: true }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockEditorKeyboardShortcuts"], null), Object(external_this_wp_element_["createElement"])(save_shortcut, null)); } /* harmony default export */ var visual_editor_shortcuts = (VisualEditorGlobalKeyboardShortcuts); function EditorGlobalKeyboardShortcuts() { external_this_wp_deprecated_default()('EditorGlobalKeyboardShortcuts', { alternative: 'VisualEditorGlobalKeyboardShortcuts', plugin: 'Gutenberg' }); return Object(external_this_wp_element_["createElement"])(VisualEditorGlobalKeyboardShortcuts, null); } // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/global-keyboard-shortcuts/text-editor-shortcuts.js /** * Internal dependencies */ function TextEditorGlobalKeyboardShortcuts() { return Object(external_this_wp_element_["createElement"])(save_shortcut, null); } // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/global-keyboard-shortcuts/register-shortcuts.js /** * WordPress dependencies */ function EditorKeyboardShortcutsRegister() { // Registering the shortcuts var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core/keyboard-shortcuts'), registerShortcut = _useDispatch.registerShortcut; Object(external_this_wp_element_["useEffect"])(function () { registerShortcut({ name: 'core/editor/save', category: 'global', description: Object(external_this_wp_i18n_["__"])('Save your changes.'), keyCombination: { modifier: 'primary', character: 's' } }); registerShortcut({ name: 'core/editor/undo', category: 'global', description: Object(external_this_wp_i18n_["__"])('Undo your last changes.'), keyCombination: { modifier: 'primary', character: 'z' } }); registerShortcut({ name: 'core/editor/redo', category: 'global', description: Object(external_this_wp_i18n_["__"])('Redo your last undo.'), keyCombination: { modifier: 'primaryShift', character: 'z' } }); }, [registerShortcut]); return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockEditorKeyboardShortcuts"].Register, null); } /* harmony default export */ var register_shortcuts = (EditorKeyboardShortcutsRegister); // EXTERNAL MODULE: external {"this":["wp","components"]} var external_this_wp_components_ = __webpack_require__("tI+e"); // EXTERNAL MODULE: external {"this":["wp","keycodes"]} var external_this_wp_keycodes_ = __webpack_require__("RxS6"); // EXTERNAL MODULE: external {"this":["wp","primitives"]} var external_this_wp_primitives_ = __webpack_require__("Tqx9"); // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/redo.js /** * WordPress dependencies */ var redo_redo = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M8 5h5V2l6 4-6 4V7H8c-2.2 0-4 1.8-4 4s1.8 4 4 4h5v2H8c-3.3 0-6-2.7-6-6s2.7-6 6-6z" })); /* harmony default export */ var library_redo = (redo_redo); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/editor-history/redo.js /** * WordPress dependencies */ function EditorHistoryRedo(_ref) { var hasRedo = _ref.hasRedo, redo = _ref.redo; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: library_redo, label: Object(external_this_wp_i18n_["__"])('Redo'), shortcut: external_this_wp_keycodes_["displayShortcut"].primaryShift('z') // If there are no redo levels we don't want to actually disable this // button, because it will remove focus for keyboard users. // See: https://github.com/WordPress/gutenberg/issues/3486 , "aria-disabled": !hasRedo, onClick: hasRedo ? redo : undefined, className: "editor-history__redo" }); } /* harmony default export */ var editor_history_redo = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { hasRedo: select('core/editor').hasEditorRedo() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { redo: dispatch('core/editor').redo }; })])(EditorHistoryRedo)); // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/undo.js /** * WordPress dependencies */ var undo_undo = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], { d: "M12 5H7V2L1 6l6 4V7h5c2.2 0 4 1.8 4 4s-1.8 4-4 4H7v2h5c3.3 0 6-2.7 6-6s-2.7-6-6-6z" })); /* harmony default export */ var library_undo = (undo_undo); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/editor-history/undo.js /** * WordPress dependencies */ function EditorHistoryUndo(_ref) { var hasUndo = _ref.hasUndo, undo = _ref.undo; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { icon: library_undo, label: Object(external_this_wp_i18n_["__"])('Undo'), shortcut: external_this_wp_keycodes_["displayShortcut"].primary('z') // If there are no undo levels we don't want to actually disable this // button, because it will remove focus for keyboard users. // See: https://github.com/WordPress/gutenberg/issues/3486 , "aria-disabled": !hasUndo, onClick: hasUndo ? undo : undefined, className: "editor-history__undo" }); } /* harmony default export */ var editor_history_undo = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { hasUndo: select('core/editor').hasEditorUndo() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { undo: dispatch('core/editor').undo }; })])(EditorHistoryUndo)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/template-validation-notice/index.js /** * WordPress dependencies */ function TemplateValidationNotice(_ref) { var isValid = _ref.isValid, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["isValid"]); if (isValid) { return null; } var confirmSynchronization = function confirmSynchronization() { if ( // eslint-disable-next-line no-alert window.confirm(Object(external_this_wp_i18n_["__"])('Resetting the template may result in loss of content, do you want to continue?'))) { props.synchronizeTemplate(); } }; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Notice"], { className: "editor-template-validation-notice", isDismissible: false, status: "warning", actions: [{ label: Object(external_this_wp_i18n_["__"])('Keep it as is'), onClick: props.resetTemplateValidity }, { label: Object(external_this_wp_i18n_["__"])('Reset the template'), onClick: confirmSynchronization, isPrimary: true }] }, Object(external_this_wp_i18n_["__"])('The content of your post doesn’t match the template assigned to your post type.')); } /* harmony default export */ var template_validation_notice = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { isValid: select('core/block-editor').isValidTemplate() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), setTemplateValidity = _dispatch.setTemplateValidity, synchronizeTemplate = _dispatch.synchronizeTemplate; return { resetTemplateValidity: function resetTemplateValidity() { return setTemplateValidity(true); }, synchronizeTemplate: synchronizeTemplate }; })])(TemplateValidationNotice)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/editor-notices/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function EditorNotices(_ref) { var notices = _ref.notices, onRemove = _ref.onRemove; var dismissibleNotices = Object(external_this_lodash_["filter"])(notices, { isDismissible: true, type: 'default' }); var nonDismissibleNotices = Object(external_this_lodash_["filter"])(notices, { isDismissible: false, type: 'default' }); var snackbarNotices = Object(external_this_lodash_["filter"])(notices, { type: 'snackbar' }); return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["NoticeList"], { notices: nonDismissibleNotices, className: "components-editor-notices__pinned" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["NoticeList"], { notices: dismissibleNotices, className: "components-editor-notices__dismissible", onRemove: onRemove }, Object(external_this_wp_element_["createElement"])(template_validation_notice, null)), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SnackbarList"], { notices: snackbarNotices, className: "components-editor-notices__snackbar", onRemove: onRemove })); } /* harmony default export */ var editor_notices = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { notices: select('core/notices').getNotices() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onRemove: dispatch('core/notices').removeNotice }; })])(EditorNotices)); // EXTERNAL MODULE: ./node_modules/equivalent-key-map/equivalent-key-map.js var equivalent_key_map = __webpack_require__("FtRg"); var equivalent_key_map_default = /*#__PURE__*/__webpack_require__.n(equivalent_key_map); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/entities-saved-states/index.js /** * External dependencies */ /** * WordPress dependencies */ var entities_saved_states_EntitiesSavedStatesCheckbox = function EntitiesSavedStatesCheckbox(_ref) { var id = _ref.id, name = _ref.name, rawRecord = _ref.changes.rawRecord, checked = _ref.checked, setCheckedById = _ref.setCheckedById; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: "".concat(name, ": \"").concat(rawRecord.name || rawRecord.slug || rawRecord.title || Object(external_this_wp_i18n_["__"])('Untitled'), "\""), checked: checked, onChange: function onChange(nextChecked) { return setCheckedById(id, nextChecked); } }); }; function EntitiesSavedStates(_ref2) { var isOpen = _ref2.isOpen, _onRequestClose = _ref2.onRequestClose, _ref2$ignoredForSave = _ref2.ignoredForSave, ignoredForSave = _ref2$ignoredForSave === void 0 ? new equivalent_key_map_default.a() : _ref2$ignoredForSave; var entityRecordChangesByRecord = Object(external_this_wp_data_["useSelect"])(function (select) { return select('core').getEntityRecordChangesByRecord(); }); var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core'), saveEditedEntityRecord = _useDispatch.saveEditedEntityRecord; var _useState = Object(external_this_wp_element_["useState"])(function () { return new equivalent_key_map_default.a(); }), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), checkedById = _useState2[0], _setCheckedById = _useState2[1]; var setCheckedById = function setCheckedById(id, checked) { return _setCheckedById(function (prevCheckedById) { var nextCheckedById = new equivalent_key_map_default.a(prevCheckedById); if (checked) { nextCheckedById.set(id, true); } else { nextCheckedById.delete(id); } return nextCheckedById; }); }; var saveCheckedEntities = function saveCheckedEntities() { checkedById.forEach(function (_checked, id) { if (!ignoredForSave.has(id)) { saveEditedEntityRecord.apply(void 0, Object(toConsumableArray["a" /* default */])(id.filter(function (s, i) { return i !== id.length - 1 || s !== 'undefined'; }))); } }); _onRequestClose(checkedById); }; return isOpen && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Modal"], { title: Object(external_this_wp_i18n_["__"])('What do you want to save?'), onRequestClose: function onRequestClose() { return _onRequestClose(); }, contentLabel: Object(external_this_wp_i18n_["__"])('Select items to save.') }, Object.keys(entityRecordChangesByRecord).map(function (changedKind) { return Object.keys(entityRecordChangesByRecord[changedKind]).map(function (changedName) { return Object.keys(entityRecordChangesByRecord[changedKind][changedName]).map(function (changedKey) { var id = [changedKind, changedName, changedKey]; return Object(external_this_wp_element_["createElement"])(entities_saved_states_EntitiesSavedStatesCheckbox, { key: id.join(' | '), id: id, name: changedName, changes: entityRecordChangesByRecord[changedKind][changedName][changedKey], checked: checkedById.get(id), setCheckedById: setCheckedById }); }); }); }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isPrimary: true, disabled: checkedById.size === 0, onClick: saveCheckedEntities, className: "editor-entities-saved-states__save-button" }, Object(external_this_wp_i18n_["__"])('Save'))); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js var assertThisInitialized = __webpack_require__("JX7q"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/error-boundary/index.js /** * WordPress dependencies */ var error_boundary_ErrorBoundary = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(ErrorBoundary, _Component); function ErrorBoundary() { var _this; Object(classCallCheck["a" /* default */])(this, ErrorBoundary); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ErrorBoundary).apply(this, arguments)); _this.reboot = _this.reboot.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.getContent = _this.getContent.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { error: null }; return _this; } Object(createClass["a" /* default */])(ErrorBoundary, [{ key: "componentDidCatch", value: function componentDidCatch(error) { this.setState({ error: error }); } }, { key: "reboot", value: function reboot() { this.props.onError(); } }, { key: "getContent", value: function getContent() { try { // While `select` in a component is generally discouraged, it is // used here because it (a) reduces the chance of data loss in the // case of additional errors by performing a direct retrieval and // (b) avoids the performance cost associated with unnecessary // content serialization throughout the lifetime of a non-erroring // application. return Object(external_this_wp_data_["select"])('core/editor').getEditedPostContent(); } catch (error) {} } }, { key: "render", value: function render() { var error = this.state.error; if (!error) { return this.props.children; } return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["Warning"], { className: "editor-error-boundary", actions: [Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { key: "recovery", onClick: this.reboot, isSecondary: true }, Object(external_this_wp_i18n_["__"])('Attempt Recovery')), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ClipboardButton"], { key: "copy-post", text: this.getContent, isSecondary: true }, Object(external_this_wp_i18n_["__"])('Copy Post Text')), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ClipboardButton"], { key: "copy-error", text: error.stack, isSecondary: true }, Object(external_this_wp_i18n_["__"])('Copy Error'))] }, Object(external_this_wp_i18n_["__"])('The editor has encountered an unexpected error.')); } }]); return ErrorBoundary; }(external_this_wp_element_["Component"]); /* harmony default export */ var error_boundary = (error_boundary_ErrorBoundary); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/local-autosave-monitor/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var requestIdleCallback = window.requestIdleCallback ? window.requestIdleCallback : window.requestAnimationFrame; /** * Function which returns true if the current environment supports browser * sessionStorage, or false otherwise. The result of this function is cached and * reused in subsequent invocations. */ var hasSessionStorageSupport = Object(external_this_lodash_["once"])(function () { try { // Private Browsing in Safari 10 and earlier will throw an error when // attempting to set into sessionStorage. The test here is intentional in // causing a thrown error as condition bailing from local autosave. window.sessionStorage.setItem('__wpEditorTestSessionStorage', ''); window.sessionStorage.removeItem('__wpEditorTestSessionStorage'); return true; } catch (error) { return false; } }); /** * Custom hook which manages the creation of a notice prompting the user to * restore a local autosave, if one exists. */ function useAutosaveNotice() { var _useSelect = Object(external_this_wp_data_["useSelect"])(function (select) { return { postId: select('core/editor').getCurrentPostId(), getEditedPostAttribute: select('core/editor').getEditedPostAttribute, hasRemoteAutosave: !!select('core/editor').getEditorSettings().autosave }; }, []), postId = _useSelect.postId, getEditedPostAttribute = _useSelect.getEditedPostAttribute, hasRemoteAutosave = _useSelect.hasRemoteAutosave; var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core/notices'), createWarningNotice = _useDispatch.createWarningNotice, removeNotice = _useDispatch.removeNotice; var _useDispatch2 = Object(external_this_wp_data_["useDispatch"])('core/editor'), editPost = _useDispatch2.editPost, resetEditorBlocks = _useDispatch2.resetEditorBlocks; Object(external_this_wp_element_["useEffect"])(function () { var localAutosave = localAutosaveGet(postId); if (!localAutosave) { return; } try { localAutosave = JSON.parse(localAutosave); } catch (error) { // Not usable if it can't be parsed. return; } var _localAutosave = localAutosave, title = _localAutosave.post_title, content = _localAutosave.content, excerpt = _localAutosave.excerpt; var edits = { title: title, content: content, excerpt: excerpt }; { // Only display a notice if there is a difference between what has been // saved and that which is stored in sessionStorage. var hasDifference = Object.keys(edits).some(function (key) { return edits[key] !== getEditedPostAttribute(key); }); if (!hasDifference) { // If there is no difference, it can be safely ejected from storage. localAutosaveClear(postId); return; } } if (hasRemoteAutosave) { return; } var noticeId = Object(external_this_lodash_["uniqueId"])('wpEditorAutosaveRestore'); createWarningNotice(Object(external_this_wp_i18n_["__"])('The backup of this post in your browser is different from the version below.'), { id: noticeId, actions: [{ label: Object(external_this_wp_i18n_["__"])('Restore the backup'), onClick: function onClick() { editPost(Object(external_this_lodash_["omit"])(edits, ['content'])); resetEditorBlocks(Object(external_this_wp_blocks_["parse"])(edits.content)); removeNotice(noticeId); } }] }); }, [postId]); } /** * Custom hook which ejects a local autosave after a successful save occurs. */ function useAutosavePurge() { var _useSelect2 = Object(external_this_wp_data_["useSelect"])(function (select) { return { postId: select('core/editor').getCurrentPostId(), isDirty: select('core/editor').isEditedPostDirty(), isAutosaving: select('core/editor').isAutosavingPost(), didError: select('core/editor').didPostSaveRequestFail() }; }, []), postId = _useSelect2.postId, isDirty = _useSelect2.isDirty, isAutosaving = _useSelect2.isAutosaving, didError = _useSelect2.didError; var lastIsDirty = Object(external_this_wp_element_["useRef"])(isDirty); var lastIsAutosaving = Object(external_this_wp_element_["useRef"])(isAutosaving); Object(external_this_wp_element_["useEffect"])(function () { if (!didError && (lastIsAutosaving.current && !isAutosaving || lastIsDirty.current && !isDirty)) { localAutosaveClear(postId); } lastIsDirty.current = isDirty; lastIsAutosaving.current = isAutosaving; }, [isDirty, isAutosaving, didError]); } function LocalAutosaveMonitor() { var _useDispatch3 = Object(external_this_wp_data_["useDispatch"])('core/editor'), __experimentalLocalAutosave = _useDispatch3.__experimentalLocalAutosave; var autosave = Object(external_this_wp_element_["useCallback"])(function () { requestIdleCallback(__experimentalLocalAutosave); }, []); useAutosaveNotice(); useAutosavePurge(); var _useSelect3 = Object(external_this_wp_data_["useSelect"])(function (select) { return { localAutosaveInterval: select('core/editor').getEditorSettings().__experimentalLocalAutosaveInterval }; }, []), localAutosaveInterval = _useSelect3.localAutosaveInterval; return Object(external_this_wp_element_["createElement"])(autosave_monitor, { interval: localAutosaveInterval, autosave: autosave, shouldThrottle: true }); } /* harmony default export */ var local_autosave_monitor = (Object(external_this_wp_compose_["ifCondition"])(hasSessionStorageSupport)(LocalAutosaveMonitor)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/page-attributes/check.js /** * External dependencies */ /** * WordPress dependencies */ function PageAttributesCheck(_ref) { var availableTemplates = _ref.availableTemplates, postType = _ref.postType, children = _ref.children; var supportsPageAttributes = Object(external_this_lodash_["get"])(postType, ['supports', 'page-attributes'], false); // Only render fields if post type supports page attributes or available templates exist. if (!supportsPageAttributes && Object(external_this_lodash_["isEmpty"])(availableTemplates)) { return null; } return children; } /* harmony default export */ var page_attributes_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getEditorSettings = _select.getEditorSettings; var _select2 = select('core'), getPostType = _select2.getPostType; var _getEditorSettings = getEditorSettings(), availableTemplates = _getEditorSettings.availableTemplates; return { postType: getPostType(getEditedPostAttribute('type')), availableTemplates: availableTemplates }; })(PageAttributesCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-type-support-check/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * A component which renders its own children only if the current editor post * type supports one of the given `supportKeys` prop. * * @param {Object} props Props. * @param {string} [props.postType] Current post type. * @param {WPElement} props.children Children to be rendered if post * type supports. * @param {(string|string[])} props.supportKeys String or string array of keys * to test. * * @return {WPComponent} The component to be rendered. */ function PostTypeSupportCheck(_ref) { var postType = _ref.postType, children = _ref.children, supportKeys = _ref.supportKeys; var isSupported = true; if (postType) { isSupported = Object(external_this_lodash_["some"])(Object(external_this_lodash_["castArray"])(supportKeys), function (key) { return !!postType.supports[key]; }); } if (!isSupported) { return null; } return children; } /* harmony default export */ var post_type_support_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute; var _select2 = select('core'), getPostType = _select2.getPostType; return { postType: getPostType(getEditedPostAttribute('type')) }; })(PostTypeSupportCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/page-attributes/order.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var PageAttributesOrder = Object(external_this_wp_compose_["withState"])({ orderInput: null })(function (_ref) { var onUpdateOrder = _ref.onUpdateOrder, _ref$order = _ref.order, order = _ref$order === void 0 ? 0 : _ref$order, orderInput = _ref.orderInput, setState = _ref.setState; var setUpdatedOrder = function setUpdatedOrder(value) { setState({ orderInput: value }); var newOrder = Number(value); if (Number.isInteger(newOrder) && Object(external_this_lodash_["invoke"])(value, ['trim']) !== '') { onUpdateOrder(Number(value)); } }; var value = orderInput === null ? order : orderInput; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { className: "editor-page-attributes__order", type: "number", label: Object(external_this_wp_i18n_["__"])('Order'), value: value, onChange: setUpdatedOrder, size: 6, onBlur: function onBlur() { setState({ orderInput: null }); } }); }); function PageAttributesOrderWithChecks(props) { return Object(external_this_wp_element_["createElement"])(post_type_support_check, { supportKeys: "page-attributes" }, Object(external_this_wp_element_["createElement"])(PageAttributesOrder, props)); } /* harmony default export */ var page_attributes_order = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { order: select('core/editor').getEditedPostAttribute('menu_order') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateOrder: function onUpdateOrder(order) { dispatch('core/editor').editPost({ menu_order: order }); } }; })])(PageAttributesOrderWithChecks)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/utils/terms.js function terms_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function terms_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { terms_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { terms_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Returns terms in a tree form. * * @param {Array} flatTerms Array of terms in flat format. * * @return {Array} Array of terms in tree format. */ function buildTermsTree(flatTerms) { var flatTermsWithParentAndChildren = flatTerms.map(function (term) { return terms_objectSpread({ children: [], parent: null }, term); }); var termsByParent = Object(external_this_lodash_["groupBy"])(flatTermsWithParentAndChildren, 'parent'); if (termsByParent.null && termsByParent.null.length) { return flatTermsWithParentAndChildren; } var fillWithChildren = function fillWithChildren(terms) { return terms.map(function (term) { var children = termsByParent[term.id]; return terms_objectSpread({}, term, { children: children && children.length ? fillWithChildren(children) : [] }); }); }; return fillWithChildren(termsByParent['0'] || []); } // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/page-attributes/parent.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function PageAttributesParent(_ref) { var parent = _ref.parent, postType = _ref.postType, items = _ref.items, onUpdateParent = _ref.onUpdateParent; var isHierarchical = Object(external_this_lodash_["get"])(postType, ['hierarchical'], false); var parentPageLabel = Object(external_this_lodash_["get"])(postType, ['labels', 'parent_item_colon']); var pageItems = items || []; if (!isHierarchical || !parentPageLabel || !pageItems.length) { return null; } var pagesTree = buildTermsTree(pageItems.map(function (item) { return { id: item.id, parent: item.parent, name: item.title && item.title.raw ? item.title.raw : "#".concat(item.id, " (").concat(Object(external_this_wp_i18n_["__"])('no title'), ")") }; })); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TreeSelect"], { className: "editor-page-attributes__parent", label: parentPageLabel, noOptionLabel: "(".concat(Object(external_this_wp_i18n_["__"])('no parent'), ")"), tree: pagesTree, selectedId: parent, onChange: onUpdateParent }); } var applyWithSelect = Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core'), getPostType = _select.getPostType, getEntityRecords = _select.getEntityRecords; var _select2 = select('core/editor'), getCurrentPostId = _select2.getCurrentPostId, getEditedPostAttribute = _select2.getEditedPostAttribute; var postTypeSlug = getEditedPostAttribute('type'); var postType = getPostType(postTypeSlug); var postId = getCurrentPostId(); var isHierarchical = Object(external_this_lodash_["get"])(postType, ['hierarchical'], false); var query = { per_page: -1, exclude: postId, parent_exclude: postId, orderby: 'menu_order', order: 'asc' }; return { parent: getEditedPostAttribute('parent'), items: isHierarchical ? getEntityRecords('postType', postTypeSlug, query) : [], postType: postType }; }); var applyWithDispatch = Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost; return { onUpdateParent: function onUpdateParent(parent) { editPost({ parent: parent || 0 }); } }; }); /* harmony default export */ var page_attributes_parent = (Object(external_this_wp_compose_["compose"])([applyWithSelect, applyWithDispatch])(PageAttributesParent)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/page-attributes/template.js /** * External dependencies */ /** * WordPress dependencies */ function PageTemplate(_ref) { var availableTemplates = _ref.availableTemplates, selectedTemplate = _ref.selectedTemplate, onUpdate = _ref.onUpdate; if (Object(external_this_lodash_["isEmpty"])(availableTemplates)) { return null; } return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { label: Object(external_this_wp_i18n_["__"])('Template:'), value: selectedTemplate, onChange: onUpdate, className: "editor-page-attributes__template", options: Object(external_this_lodash_["map"])(availableTemplates, function (templateName, templateSlug) { return { value: templateSlug, label: templateName }; }) }); } /* harmony default export */ var page_attributes_template = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getEditorSettings = _select.getEditorSettings; var _getEditorSettings = getEditorSettings(), availableTemplates = _getEditorSettings.availableTemplates; return { selectedTemplate: getEditedPostAttribute('template'), availableTemplates: availableTemplates }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdate: function onUpdate(templateSlug) { dispatch('core/editor').editPost({ template: templateSlug || '' }); } }; }))(PageTemplate)); // EXTERNAL MODULE: external {"this":["wp","htmlEntities"]} var external_this_wp_htmlEntities_ = __webpack_require__("rmEH"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-author/check.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function PostAuthorCheck(_ref) { var hasAssignAuthorAction = _ref.hasAssignAuthorAction, authors = _ref.authors, children = _ref.children; if (!hasAssignAuthorAction || authors.length < 2) { return null; } return Object(external_this_wp_element_["createElement"])(post_type_support_check, { supportKeys: "author" }, children); } /* harmony default export */ var post_author_check = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var post = select('core/editor').getCurrentPost(); return { hasAssignAuthorAction: Object(external_this_lodash_["get"])(post, ['_links', 'wp:action-assign-author'], false), postType: select('core/editor').getCurrentPostType(), authors: select('core').getAuthors() }; }), external_this_wp_compose_["withInstanceId"]])(PostAuthorCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-author/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var post_author_PostAuthor = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostAuthor, _Component); function PostAuthor() { var _this; Object(classCallCheck["a" /* default */])(this, PostAuthor); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostAuthor).apply(this, arguments)); _this.setAuthorId = _this.setAuthorId.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostAuthor, [{ key: "setAuthorId", value: function setAuthorId(event) { var onUpdateAuthor = this.props.onUpdateAuthor; var value = event.target.value; onUpdateAuthor(Number(value)); } }, { key: "render", value: function render() { var _this$props = this.props, postAuthor = _this$props.postAuthor, instanceId = _this$props.instanceId, authors = _this$props.authors; var selectId = 'post-author-selector-' + instanceId; // Disable reason: A select with an onchange throws a warning /* eslint-disable jsx-a11y/no-onchange */ return Object(external_this_wp_element_["createElement"])(post_author_check, null, Object(external_this_wp_element_["createElement"])("label", { htmlFor: selectId }, Object(external_this_wp_i18n_["__"])('Author')), Object(external_this_wp_element_["createElement"])("select", { id: selectId, value: postAuthor, onChange: this.setAuthorId, className: "editor-post-author__select" }, authors.map(function (author) { return Object(external_this_wp_element_["createElement"])("option", { key: author.id, value: author.id }, Object(external_this_wp_htmlEntities_["decodeEntities"])(author.name)); }))); /* eslint-enable jsx-a11y/no-onchange */ } }]); return PostAuthor; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_author = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { postAuthor: select('core/editor').getEditedPostAttribute('author'), authors: select('core').getAuthors() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateAuthor: function onUpdateAuthor(author) { dispatch('core/editor').editPost({ author: author }); } }; }), external_this_wp_compose_["withInstanceId"]])(post_author_PostAuthor)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-comments/index.js /** * WordPress dependencies */ function PostComments(_ref) { var _ref$commentStatus = _ref.commentStatus, commentStatus = _ref$commentStatus === void 0 ? 'open' : _ref$commentStatus, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["commentStatus"]); var onToggleComments = function onToggleComments() { return props.editPost({ comment_status: commentStatus === 'open' ? 'closed' : 'open' }); }; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: Object(external_this_wp_i18n_["__"])('Allow comments'), checked: commentStatus === 'open', onChange: onToggleComments }); } /* harmony default export */ var post_comments = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { commentStatus: select('core/editor').getEditedPostAttribute('comment_status') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { editPost: dispatch('core/editor').editPost }; })])(PostComments)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-excerpt/index.js /** * WordPress dependencies */ function PostExcerpt(_ref) { var excerpt = _ref.excerpt, onUpdateExcerpt = _ref.onUpdateExcerpt; return Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-excerpt" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextareaControl"], { label: Object(external_this_wp_i18n_["__"])('Write an excerpt (optional)'), className: "editor-post-excerpt__textarea", onChange: function onChange(value) { return onUpdateExcerpt(value); }, value: excerpt }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { href: Object(external_this_wp_i18n_["__"])('https://wordpress.org/support/article/excerpt/') }, Object(external_this_wp_i18n_["__"])('Learn more about manual excerpts'))); } /* harmony default export */ var post_excerpt = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { excerpt: select('core/editor').getEditedPostAttribute('excerpt') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateExcerpt: function onUpdateExcerpt(excerpt) { dispatch('core/editor').editPost({ excerpt: excerpt }); } }; })])(PostExcerpt)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-excerpt/check.js /** * Internal dependencies */ function PostExcerptCheck(props) { return Object(external_this_wp_element_["createElement"])(post_type_support_check, Object(esm_extends["a" /* default */])({}, props, { supportKeys: "excerpt" })); } /* harmony default export */ var post_excerpt_check = (PostExcerptCheck); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/theme-support-check/index.js /** * External dependencies */ /** * WordPress dependencies */ function ThemeSupportCheck(_ref) { var themeSupports = _ref.themeSupports, children = _ref.children, postType = _ref.postType, supportKeys = _ref.supportKeys; var isSupported = Object(external_this_lodash_["some"])(Object(external_this_lodash_["castArray"])(supportKeys), function (key) { var supported = Object(external_this_lodash_["get"])(themeSupports, [key], false); // 'post-thumbnails' can be boolean or an array of post types. // In the latter case, we need to verify `postType` exists // within `supported`. If `postType` isn't passed, then the check // should fail. if ('post-thumbnails' === key && Object(external_this_lodash_["isArray"])(supported)) { return Object(external_this_lodash_["includes"])(supported, postType); } return supported; }); if (!isSupported) { return null; } return children; } /* harmony default export */ var theme_support_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core'), getThemeSupports = _select.getThemeSupports; var _select2 = select('core/editor'), getEditedPostAttribute = _select2.getEditedPostAttribute; return { postType: getEditedPostAttribute('type'), themeSupports: getThemeSupports() }; })(ThemeSupportCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-featured-image/check.js /** * Internal dependencies */ function PostFeaturedImageCheck(props) { return Object(external_this_wp_element_["createElement"])(theme_support_check, { supportKeys: "post-thumbnails" }, Object(external_this_wp_element_["createElement"])(post_type_support_check, Object(esm_extends["a" /* default */])({}, props, { supportKeys: "thumbnail" }))); } /* harmony default export */ var post_featured_image_check = (PostFeaturedImageCheck); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-featured-image/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var ALLOWED_MEDIA_TYPES = ['image']; // Used when labels from post type were not yet loaded or when they are not present. var DEFAULT_FEATURE_IMAGE_LABEL = Object(external_this_wp_i18n_["__"])('Featured image'); var DEFAULT_SET_FEATURE_IMAGE_LABEL = Object(external_this_wp_i18n_["__"])('Set featured image'); var DEFAULT_REMOVE_FEATURE_IMAGE_LABEL = Object(external_this_wp_i18n_["__"])('Remove image'); function PostFeaturedImage(_ref) { var currentPostId = _ref.currentPostId, featuredImageId = _ref.featuredImageId, onUpdateImage = _ref.onUpdateImage, onDropImage = _ref.onDropImage, onRemoveImage = _ref.onRemoveImage, media = _ref.media, postType = _ref.postType, noticeUI = _ref.noticeUI; var postLabel = Object(external_this_lodash_["get"])(postType, ['labels'], {}); var instructions = Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('To edit the featured image, you need permission to upload media.')); var mediaWidth, mediaHeight, mediaSourceUrl; if (media) { var mediaSize = Object(external_this_wp_hooks_["applyFilters"])('editor.PostFeaturedImage.imageSize', 'post-thumbnail', media.id, currentPostId); if (Object(external_this_lodash_["has"])(media, ['media_details', 'sizes', mediaSize])) { // use mediaSize when available mediaWidth = media.media_details.sizes[mediaSize].width; mediaHeight = media.media_details.sizes[mediaSize].height; mediaSourceUrl = media.media_details.sizes[mediaSize].source_url; } else { // get fallbackMediaSize if mediaSize is not available var fallbackMediaSize = Object(external_this_wp_hooks_["applyFilters"])('editor.PostFeaturedImage.imageSize', 'thumbnail', media.id, currentPostId); if (Object(external_this_lodash_["has"])(media, ['media_details', 'sizes', fallbackMediaSize])) { // use fallbackMediaSize when mediaSize is not available mediaWidth = media.media_details.sizes[fallbackMediaSize].width; mediaHeight = media.media_details.sizes[fallbackMediaSize].height; mediaSourceUrl = media.media_details.sizes[fallbackMediaSize].source_url; } else { // use full image size when mediaFallbackSize and mediaSize are not available mediaWidth = media.media_details.width; mediaHeight = media.media_details.height; mediaSourceUrl = media.source_url; } } } return Object(external_this_wp_element_["createElement"])(post_featured_image_check, null, noticeUI, Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-featured-image" }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUploadCheck"], { fallback: instructions }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUpload"], { title: postLabel.featured_image || DEFAULT_FEATURE_IMAGE_LABEL, onSelect: onUpdateImage, unstableFeaturedImageFlow: true, allowedTypes: ALLOWED_MEDIA_TYPES, modalClass: !featuredImageId ? 'editor-post-featured-image__media-modal' : 'editor-post-featured-image__media-modal', render: function render(_ref2) { var open = _ref2.open; return Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-featured-image__container" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: !featuredImageId ? 'editor-post-featured-image__toggle' : 'editor-post-featured-image__preview', onClick: open, "aria-label": !featuredImageId ? null : Object(external_this_wp_i18n_["__"])('Edit or update the image') }, !!featuredImageId && media && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ResponsiveWrapper"], { naturalWidth: mediaWidth, naturalHeight: mediaHeight, isInline: true }, Object(external_this_wp_element_["createElement"])("img", { src: mediaSourceUrl, alt: "" })), !!featuredImageId && !media && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null), !featuredImageId && (postLabel.set_featured_image || DEFAULT_SET_FEATURE_IMAGE_LABEL)), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["DropZone"], { onFilesDrop: onDropImage })); }, value: featuredImageId })), !!featuredImageId && media && !media.isLoading && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUploadCheck"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUpload"], { title: postLabel.featured_image || DEFAULT_FEATURE_IMAGE_LABEL, onSelect: onUpdateImage, unstableFeaturedImageFlow: true, allowedTypes: ALLOWED_MEDIA_TYPES, modalClass: "editor-post-featured-image__media-modal", render: function render(_ref3) { var open = _ref3.open; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { onClick: open, isSecondary: true }, Object(external_this_wp_i18n_["__"])('Replace Image')); } })), !!featuredImageId && Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["MediaUploadCheck"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { onClick: onRemoveImage, isLink: true, isDestructive: true }, postLabel.remove_featured_image || DEFAULT_REMOVE_FEATURE_IMAGE_LABEL)))); } var post_featured_image_applyWithSelect = Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core'), getMedia = _select.getMedia, getPostType = _select.getPostType; var _select2 = select('core/editor'), getCurrentPostId = _select2.getCurrentPostId, getEditedPostAttribute = _select2.getEditedPostAttribute; var featuredImageId = getEditedPostAttribute('featured_media'); return { media: featuredImageId ? getMedia(featuredImageId) : null, currentPostId: getCurrentPostId(), postType: getPostType(getEditedPostAttribute('type')), featuredImageId: featuredImageId }; }); var post_featured_image_applyWithDispatch = Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref4, _ref5) { var noticeOperations = _ref4.noticeOperations; var select = _ref5.select; var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost; return { onUpdateImage: function onUpdateImage(image) { editPost({ featured_media: image.id }); }, onDropImage: function onDropImage(filesList) { select('core/block-editor').getSettings().mediaUpload({ allowedTypes: ['image'], filesList: filesList, onFileChange: function onFileChange(_ref6) { var _ref7 = Object(slicedToArray["a" /* default */])(_ref6, 1), image = _ref7[0]; editPost({ featured_media: image.id }); }, onError: function onError(message) { noticeOperations.removeAllNotices(); noticeOperations.createErrorNotice(message); } }); }, onRemoveImage: function onRemoveImage() { editPost({ featured_media: 0 }); } }; }); /* harmony default export */ var post_featured_image = (Object(external_this_wp_compose_["compose"])(external_this_wp_components_["withNotices"], post_featured_image_applyWithSelect, post_featured_image_applyWithDispatch, Object(external_this_wp_components_["withFilters"])('editor.PostFeaturedImage'))(PostFeaturedImage)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-format/check.js /** * WordPress dependencies */ /** * Internal dependencies */ function PostFormatCheck(_ref) { var disablePostFormats = _ref.disablePostFormats, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["disablePostFormats"]); return !disablePostFormats && Object(external_this_wp_element_["createElement"])(post_type_support_check, Object(esm_extends["a" /* default */])({}, props, { supportKeys: "post-formats" })); } /* harmony default export */ var post_format_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var editorSettings = select('core/editor').getEditorSettings(); return { disablePostFormats: editorSettings.disablePostFormats }; })(PostFormatCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-format/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var POST_FORMATS = [{ id: 'aside', caption: Object(external_this_wp_i18n_["__"])('Aside') }, { id: 'gallery', caption: Object(external_this_wp_i18n_["__"])('Gallery') }, { id: 'link', caption: Object(external_this_wp_i18n_["__"])('Link') }, { id: 'image', caption: Object(external_this_wp_i18n_["__"])('Image') }, { id: 'quote', caption: Object(external_this_wp_i18n_["__"])('Quote') }, { id: 'standard', caption: Object(external_this_wp_i18n_["__"])('Standard') }, { id: 'status', caption: Object(external_this_wp_i18n_["__"])('Status') }, { id: 'video', caption: Object(external_this_wp_i18n_["__"])('Video') }, { id: 'audio', caption: Object(external_this_wp_i18n_["__"])('Audio') }, { id: 'chat', caption: Object(external_this_wp_i18n_["__"])('Chat') }]; function PostFormat(_ref) { var onUpdatePostFormat = _ref.onUpdatePostFormat, _ref$postFormat = _ref.postFormat, postFormat = _ref$postFormat === void 0 ? 'standard' : _ref$postFormat, supportedFormats = _ref.supportedFormats, suggestedFormat = _ref.suggestedFormat, instanceId = _ref.instanceId; var postFormatSelectorId = 'post-format-selector-' + instanceId; var formats = POST_FORMATS.filter(function (format) { return Object(external_this_lodash_["includes"])(supportedFormats, format.id); }); var suggestion = Object(external_this_lodash_["find"])(formats, function (format) { return format.id === suggestedFormat; }); // Disable reason: We need to change the value immiediately to show/hide the suggestion if needed return Object(external_this_wp_element_["createElement"])(post_format_check, null, Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-format" }, Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-format__content" }, Object(external_this_wp_element_["createElement"])("label", { htmlFor: postFormatSelectorId }, Object(external_this_wp_i18n_["__"])('Post Format')), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SelectControl"], { value: postFormat, onChange: function onChange(format) { return onUpdatePostFormat(format); }, id: postFormatSelectorId, options: formats.map(function (format) { return { label: format.caption, value: format.id }; }) })), suggestion && suggestion.id !== postFormat && Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-format__suggestion" }, Object(external_this_wp_i18n_["__"])('Suggestion:'), ' ', Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isLink: true, onClick: function onClick() { return onUpdatePostFormat(suggestion.id); } }, suggestion.caption)))); } /* harmony default export */ var post_format = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getSuggestedPostFormat = _select.getSuggestedPostFormat; var postFormat = getEditedPostAttribute('format'); var themeSupports = select('core').getThemeSupports(); // Ensure current format is always in the set. // The current format may not be a format supported by the theme. var supportedFormats = Object(external_this_lodash_["union"])([postFormat], Object(external_this_lodash_["get"])(themeSupports, ['formats'], [])); return { postFormat: postFormat, supportedFormats: supportedFormats, suggestedFormat: getSuggestedPostFormat() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdatePostFormat: function onUpdatePostFormat(postFormat) { dispatch('core/editor').editPost({ format: postFormat }); } }; }), external_this_wp_compose_["withInstanceId"]])(PostFormat)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-last-revision/check.js /** * WordPress dependencies */ /** * Internal dependencies */ function PostLastRevisionCheck(_ref) { var lastRevisionId = _ref.lastRevisionId, revisionsCount = _ref.revisionsCount, children = _ref.children; if (!lastRevisionId || revisionsCount < 2) { return null; } return Object(external_this_wp_element_["createElement"])(post_type_support_check, { supportKeys: "revisions" }, children); } /* harmony default export */ var post_last_revision_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPostLastRevisionId = _select.getCurrentPostLastRevisionId, getCurrentPostRevisionsCount = _select.getCurrentPostRevisionsCount; return { lastRevisionId: getCurrentPostLastRevisionId(), revisionsCount: getCurrentPostRevisionsCount() }; })(PostLastRevisionCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/utils/url.js /** * External dependencies */ /** * WordPress dependencies */ /** * Returns the URL of a WPAdmin Page. * * TODO: This should be moved to a module less specific to the editor. * * @param {string} page Page to navigate to. * @param {Object} query Query Args. * * @return {string} WPAdmin URL. */ function getWPAdminURL(page, query) { return Object(external_this_wp_url_["addQueryArgs"])(page, query); } /** * Performs some basic cleanup of a string for use as a post slug * * This replicates some of what sanitize_title() does in WordPress core, but * is only designed to approximate what the slug will be. * * Converts whitespace, periods, forward slashes and underscores to hyphens. * Converts Latin-1 Supplement and Latin Extended-A letters to basic Latin * letters. Removes combining diacritical marks. Converts remaining string * to lowercase. It does not touch octets, HTML entities, or other encoded * characters. * * @param {string} string Title or slug to be processed * * @return {string} Processed string */ function cleanForSlug(string) { if (!string) { return ''; } return Object(external_this_lodash_["toLower"])(Object(external_this_lodash_["deburr"])(Object(external_this_lodash_["trim"])(string.replace(/[\s\./_]+/g, '-'), '-'))); } // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-last-revision/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function LastRevision(_ref) { var lastRevisionId = _ref.lastRevisionId, revisionsCount = _ref.revisionsCount; return Object(external_this_wp_element_["createElement"])(post_last_revision_check, null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { href: getWPAdminURL('revision.php', { revision: lastRevisionId, gutenberg: true }), className: "editor-post-last-revision__title", icon: "backup" }, Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_n"])('%d Revision', '%d Revisions', revisionsCount), revisionsCount))); } /* harmony default export */ var post_last_revision = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPostLastRevisionId = _select.getCurrentPostLastRevisionId, getCurrentPostRevisionsCount = _select.getCurrentPostRevisionsCount; return { lastRevisionId: getCurrentPostLastRevisionId(), revisionsCount: getCurrentPostRevisionsCount() }; })(LastRevision)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-preview-button/index.js /** * External dependencies */ /** * WordPress dependencies */ function writeInterstitialMessage(targetDocument) { var markup = Object(external_this_wp_element_["renderToString"])(Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-preview-button__interstitial-message" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 96 96" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { className: "outer", d: "M48 12c19.9 0 36 16.1 36 36S67.9 84 48 84 12 67.9 12 48s16.1-36 36-36", fill: "none" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { className: "inner", d: "M69.5 46.4c0-3.9-1.4-6.7-2.6-8.8-1.6-2.6-3.1-4.9-3.1-7.5 0-2.9 2.2-5.7 5.4-5.7h.4C63.9 19.2 56.4 16 48 16c-11.2 0-21 5.7-26.7 14.4h2.1c3.3 0 8.5-.4 8.5-.4 1.7-.1 1.9 2.4.2 2.6 0 0-1.7.2-3.7.3L40 67.5l7-20.9L42 33c-1.7-.1-3.3-.3-3.3-.3-1.7-.1-1.5-2.7.2-2.6 0 0 5.3.4 8.4.4 3.3 0 8.5-.4 8.5-.4 1.7-.1 1.9 2.4.2 2.6 0 0-1.7.2-3.7.3l11.5 34.3 3.3-10.4c1.6-4.5 2.4-7.8 2.4-10.5zM16.1 48c0 12.6 7.3 23.5 18 28.7L18.8 35c-1.7 4-2.7 8.4-2.7 13zm32.5 2.8L39 78.6c2.9.8 5.9 1.3 9 1.3 3.7 0 7.3-.6 10.6-1.8-.1-.1-.2-.3-.2-.4l-9.8-26.9zM76.2 36c0 3.2-.6 6.9-2.4 11.4L64 75.6c9.5-5.5 15.9-15.8 15.9-27.6 0-5.5-1.4-10.8-3.9-15.3.1 1 .2 2.1.2 3.3z", fill: "none" })), Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('Generating preview…')))); markup += "\n\t\t\n\t"; /** * Filters the interstitial message shown when generating previews. * * @param {string} markup The preview interstitial markup. */ markup = Object(external_this_wp_hooks_["applyFilters"])('editor.PostPreview.interstitialMarkup', markup); targetDocument.write(markup); targetDocument.title = Object(external_this_wp_i18n_["__"])('Generating preview…'); targetDocument.close(); } var post_preview_button_PostPreviewButton = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPreviewButton, _Component); function PostPreviewButton() { var _this; Object(classCallCheck["a" /* default */])(this, PostPreviewButton); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPreviewButton).apply(this, arguments)); _this.openPreviewWindow = _this.openPreviewWindow.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostPreviewButton, [{ key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var previewLink = this.props.previewLink; // This relies on the window being responsible to unset itself when // navigation occurs or a new preview window is opened, to avoid // unintentional forceful redirects. if (previewLink && !prevProps.previewLink) { this.setPreviewWindowLink(previewLink); } } /** * Sets the preview window's location to the given URL, if a preview window * exists and is not closed. * * @param {string} url URL to assign as preview window location. */ }, { key: "setPreviewWindowLink", value: function setPreviewWindowLink(url) { var previewWindow = this.previewWindow; if (previewWindow && !previewWindow.closed) { previewWindow.location = url; } } }, { key: "getWindowTarget", value: function getWindowTarget() { var postId = this.props.postId; return "wp-preview-".concat(postId); } }, { key: "openPreviewWindow", value: function openPreviewWindow(event) { // Our Preview button has its 'href' and 'target' set correctly for a11y // purposes. Unfortunately, though, we can't rely on the default 'click' // handler since sometimes it incorrectly opens a new tab instead of reusing // the existing one. // https://github.com/WordPress/gutenberg/pull/8330 event.preventDefault(); // Open up a Preview tab if needed. This is where we'll show the preview. if (!this.previewWindow || this.previewWindow.closed) { this.previewWindow = window.open('', this.getWindowTarget()); } // Focus the Preview tab. This might not do anything, depending on the browser's // and user's preferences. // https://html.spec.whatwg.org/multipage/interaction.html#dom-window-focus this.previewWindow.focus(); // If we don't need to autosave the post before previewing, then we simply // load the Preview URL in the Preview tab. if (!this.props.isAutosaveable) { this.setPreviewWindowLink(event.target.href); return; } // Request an autosave. This happens asynchronously and causes the component // to update when finished. if (this.props.isDraft) { this.props.savePost({ isPreview: true }); } else { this.props.autosave({ isPreview: true }); } // Display a 'Generating preview' message in the Preview tab while we wait for the // autosave to finish. writeInterstitialMessage(this.previewWindow.document); } }, { key: "render", value: function render() { var _this$props = this.props, previewLink = _this$props.previewLink, currentPostLink = _this$props.currentPostLink, isSaveable = _this$props.isSaveable; // Link to the `?preview=true` URL if we have it, since this lets us see // changes that were autosaved since the post was last published. Otherwise, // just link to the post's URL. var href = previewLink || currentPostLink; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, className: "editor-post-preview", href: href, target: this.getWindowTarget(), disabled: !isSaveable, onClick: this.openPreviewWindow }, Object(external_this_wp_i18n_["_x"])('Preview', 'imperative verb'), Object(external_this_wp_element_["createElement"])("span", { className: "screen-reader-text" }, /* translators: accessibility text */ Object(external_this_wp_i18n_["__"])('(opens in a new tab)'))); } }]); return PostPreviewButton; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_preview_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref) { var forcePreviewLink = _ref.forcePreviewLink, forceIsAutosaveable = _ref.forceIsAutosaveable; var _select = select('core/editor'), getCurrentPostId = _select.getCurrentPostId, getCurrentPostAttribute = _select.getCurrentPostAttribute, getEditedPostAttribute = _select.getEditedPostAttribute, isEditedPostSaveable = _select.isEditedPostSaveable, isEditedPostAutosaveable = _select.isEditedPostAutosaveable, getEditedPostPreviewLink = _select.getEditedPostPreviewLink; var _select2 = select('core'), getPostType = _select2.getPostType; var previewLink = getEditedPostPreviewLink(); var postType = getPostType(getEditedPostAttribute('type')); return { postId: getCurrentPostId(), currentPostLink: getCurrentPostAttribute('link'), previewLink: forcePreviewLink !== undefined ? forcePreviewLink : previewLink, isSaveable: isEditedPostSaveable(), isAutosaveable: forceIsAutosaveable || isEditedPostAutosaveable(), isViewable: Object(external_this_lodash_["get"])(postType, ['viewable'], false), isDraft: ['draft', 'auto-draft'].indexOf(getEditedPostAttribute('status')) !== -1 }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { autosave: dispatch('core/editor').autosave, savePost: dispatch('core/editor').savePost }; }), Object(external_this_wp_compose_["ifCondition"])(function (_ref2) { var isViewable = _ref2.isViewable; return isViewable; })])(post_preview_button_PostPreviewButton)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-locked-modal/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var post_locked_modal_PostLockedModal = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostLockedModal, _Component); function PostLockedModal() { var _this; Object(classCallCheck["a" /* default */])(this, PostLockedModal); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostLockedModal).apply(this, arguments)); _this.sendPostLock = _this.sendPostLock.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.receivePostLock = _this.receivePostLock.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.releasePostLock = _this.releasePostLock.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostLockedModal, [{ key: "componentDidMount", value: function componentDidMount() { var hookName = this.getHookName(); // Details on these events on the Heartbeat API docs // https://developer.wordpress.org/plugins/javascript/heartbeat-api/ Object(external_this_wp_hooks_["addAction"])('heartbeat.send', hookName, this.sendPostLock); Object(external_this_wp_hooks_["addAction"])('heartbeat.tick', hookName, this.receivePostLock); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { var hookName = this.getHookName(); Object(external_this_wp_hooks_["removeAction"])('heartbeat.send', hookName); Object(external_this_wp_hooks_["removeAction"])('heartbeat.tick', hookName); } /** * Returns a `@wordpress/hooks` hook name specific to the instance of the * component. * * @return {string} Hook name prefix. */ }, { key: "getHookName", value: function getHookName() { var instanceId = this.props.instanceId; return 'core/editor/post-locked-modal-' + instanceId; } /** * Keep the lock refreshed. * * When the user does not send a heartbeat in a heartbeat-tick * the user is no longer editing and another user can start editing. * * @param {Object} data Data to send in the heartbeat request. */ }, { key: "sendPostLock", value: function sendPostLock(data) { var _this$props = this.props, isLocked = _this$props.isLocked, activePostLock = _this$props.activePostLock, postId = _this$props.postId; if (isLocked) { return; } data['wp-refresh-post-lock'] = { lock: activePostLock, post_id: postId }; } /** * Refresh post locks: update the lock string or show the dialog if somebody has taken over editing. * * @param {Object} data Data received in the heartbeat request */ }, { key: "receivePostLock", value: function receivePostLock(data) { if (!data['wp-refresh-post-lock']) { return; } var _this$props2 = this.props, autosave = _this$props2.autosave, updatePostLock = _this$props2.updatePostLock; var received = data['wp-refresh-post-lock']; if (received.lock_error) { // Auto save and display the takeover modal. autosave(); updatePostLock({ isLocked: true, isTakeover: true, user: { avatar: received.lock_error.avatar_src } }); } else if (received.new_lock) { updatePostLock({ isLocked: false, activePostLock: received.new_lock }); } } /** * Unlock the post before the window is exited. */ }, { key: "releasePostLock", value: function releasePostLock() { var _this$props3 = this.props, isLocked = _this$props3.isLocked, activePostLock = _this$props3.activePostLock, postLockUtils = _this$props3.postLockUtils, postId = _this$props3.postId; if (isLocked || !activePostLock) { return; } var data = new window.FormData(); data.append('action', 'wp-remove-post-lock'); data.append('_wpnonce', postLockUtils.unlockNonce); data.append('post_ID', postId); data.append('active_post_lock', activePostLock); if (window.navigator.sendBeacon) { window.navigator.sendBeacon(postLockUtils.ajaxUrl, data); } else { var xhr = new window.XMLHttpRequest(); xhr.open('POST', postLockUtils.ajaxUrl, false); xhr.send(data); } } }, { key: "render", value: function render() { var _this$props4 = this.props, user = _this$props4.user, postId = _this$props4.postId, isLocked = _this$props4.isLocked, isTakeover = _this$props4.isTakeover, postLockUtils = _this$props4.postLockUtils, postType = _this$props4.postType; if (!isLocked) { return null; } var userDisplayName = user.name; var userAvatar = user.avatar; var unlockUrl = Object(external_this_wp_url_["addQueryArgs"])('post.php', { 'get-post-lock': '1', lockKey: true, post: postId, action: 'edit', _wpnonce: postLockUtils.nonce }); var allPostsUrl = getWPAdminURL('edit.php', { post_type: Object(external_this_lodash_["get"])(postType, ['slug']) }); var allPostsLabel = Object(external_this_wp_i18n_["__"])('Exit the Editor'); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Modal"], { title: isTakeover ? Object(external_this_wp_i18n_["__"])('Someone else has taken over this post.') : Object(external_this_wp_i18n_["__"])('This post is already being edited.'), focusOnMount: true, shouldCloseOnClickOutside: false, shouldCloseOnEsc: false, isDismissible: false, className: "editor-post-locked-modal" }, !!userAvatar && Object(external_this_wp_element_["createElement"])("img", { src: userAvatar, alt: Object(external_this_wp_i18n_["__"])('Avatar'), className: "editor-post-locked-modal__avatar" }), !!isTakeover && Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])("div", null, userDisplayName ? Object(external_this_wp_i18n_["sprintf"])( /* translators: %s: user's display name */ Object(external_this_wp_i18n_["__"])('%s now has editing control of this post. Don’t worry, your changes up to this moment have been saved.'), userDisplayName) : Object(external_this_wp_i18n_["__"])('Another user now has editing control of this post. Don’t worry, your changes up to this moment have been saved.')), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-locked-modal__buttons" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isPrimary: true, href: allPostsUrl }, allPostsLabel))), !isTakeover && Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])("div", null, userDisplayName ? Object(external_this_wp_i18n_["sprintf"])( /* translators: %s: user's display name */ Object(external_this_wp_i18n_["__"])('%s is currently working on this post, which means you cannot make changes, unless you take over.'), userDisplayName) : Object(external_this_wp_i18n_["__"])('Another user is currently working on this post, which means you cannot make changes, unless you take over.')), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-locked-modal__buttons" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, href: allPostsUrl }, allPostsLabel), Object(external_this_wp_element_["createElement"])(post_preview_button, null), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isPrimary: true, href: unlockUrl }, Object(external_this_wp_i18n_["__"])('Take Over'))))); } }]); return PostLockedModal; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_locked_modal = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isPostLocked = _select.isPostLocked, isPostLockTakeover = _select.isPostLockTakeover, getPostLockUser = _select.getPostLockUser, getCurrentPostId = _select.getCurrentPostId, getActivePostLock = _select.getActivePostLock, getEditedPostAttribute = _select.getEditedPostAttribute, getEditorSettings = _select.getEditorSettings; var _select2 = select('core'), getPostType = _select2.getPostType; return { isLocked: isPostLocked(), isTakeover: isPostLockTakeover(), user: getPostLockUser(), postId: getCurrentPostId(), postLockUtils: getEditorSettings().postLockUtils, activePostLock: getActivePostLock(), postType: getPostType(getEditedPostAttribute('type')) }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), autosave = _dispatch.autosave, updatePostLock = _dispatch.updatePostLock; return { autosave: autosave, updatePostLock: updatePostLock }; }), external_this_wp_compose_["withInstanceId"], Object(external_this_wp_compose_["withGlobalEvents"])({ beforeunload: 'releasePostLock' }))(post_locked_modal_PostLockedModal)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-pending-status/check.js /** * External dependencies */ /** * WordPress dependencies */ function PostPendingStatusCheck(_ref) { var hasPublishAction = _ref.hasPublishAction, isPublished = _ref.isPublished, children = _ref.children; if (isPublished || !hasPublishAction) { return null; } return children; } /* harmony default export */ var post_pending_status_check = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isCurrentPostPublished = _select.isCurrentPostPublished, getCurrentPostType = _select.getCurrentPostType, getCurrentPost = _select.getCurrentPost; return { hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), isPublished: isCurrentPostPublished(), postType: getCurrentPostType() }; }))(PostPendingStatusCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-pending-status/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function PostPendingStatus(_ref) { var status = _ref.status, onUpdateStatus = _ref.onUpdateStatus; var togglePendingStatus = function togglePendingStatus() { var updatedStatus = status === 'pending' ? 'draft' : 'pending'; onUpdateStatus(updatedStatus); }; return Object(external_this_wp_element_["createElement"])(post_pending_status_check, null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: Object(external_this_wp_i18n_["__"])('Pending review'), checked: status === 'pending', onChange: togglePendingStatus })); } /* harmony default export */ var post_pending_status = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { return { status: select('core/editor').getEditedPostAttribute('status') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateStatus: function onUpdateStatus(status) { dispatch('core/editor').editPost({ status: status }); } }; }))(PostPendingStatus)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-pingbacks/index.js /** * WordPress dependencies */ function PostPingbacks(_ref) { var _ref$pingStatus = _ref.pingStatus, pingStatus = _ref$pingStatus === void 0 ? 'open' : _ref$pingStatus, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["pingStatus"]); var onTogglePingback = function onTogglePingback() { return props.editPost({ ping_status: pingStatus === 'open' ? 'closed' : 'open' }); }; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: Object(external_this_wp_i18n_["__"])('Allow pingbacks & trackbacks'), checked: pingStatus === 'open', onChange: onTogglePingback }); } /* harmony default export */ var post_pingbacks = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { pingStatus: select('core/editor').getEditedPostAttribute('ping_status') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { editPost: dispatch('core/editor').editPost }; })])(PostPingbacks)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-button/label.js /** * External dependencies */ /** * WordPress dependencies */ function PublishButtonLabel(_ref) { var isPublished = _ref.isPublished, isBeingScheduled = _ref.isBeingScheduled, isSaving = _ref.isSaving, isPublishing = _ref.isPublishing, hasPublishAction = _ref.hasPublishAction, isAutosaving = _ref.isAutosaving, hasNonPostEntityChanges = _ref.hasNonPostEntityChanges; if (isPublishing) { return Object(external_this_wp_i18n_["__"])('Publishing…'); } else if (isPublished && isSaving && !isAutosaving) { return Object(external_this_wp_i18n_["__"])('Updating…'); } else if (isBeingScheduled && isSaving && !isAutosaving) { return Object(external_this_wp_i18n_["__"])('Scheduling…'); } if (!hasPublishAction) { return hasNonPostEntityChanges ? Object(external_this_wp_i18n_["__"])('Submit for Review…') : Object(external_this_wp_i18n_["__"])('Submit for Review'); } else if (isPublished) { return hasNonPostEntityChanges ? Object(external_this_wp_i18n_["__"])('Update…') : Object(external_this_wp_i18n_["__"])('Update'); } else if (isBeingScheduled) { return hasNonPostEntityChanges ? Object(external_this_wp_i18n_["__"])('Schedule…') : Object(external_this_wp_i18n_["__"])('Schedule'); } return hasNonPostEntityChanges ? Object(external_this_wp_i18n_["__"])('Publish…') : Object(external_this_wp_i18n_["__"])('Publish'); } /* harmony default export */ var post_publish_button_label = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var forceIsSaving = _ref2.forceIsSaving; var _select = select('core/editor'), isCurrentPostPublished = _select.isCurrentPostPublished, isEditedPostBeingScheduled = _select.isEditedPostBeingScheduled, isSavingPost = _select.isSavingPost, isPublishingPost = _select.isPublishingPost, getCurrentPost = _select.getCurrentPost, getCurrentPostType = _select.getCurrentPostType, isAutosavingPost = _select.isAutosavingPost; return { isPublished: isCurrentPostPublished(), isBeingScheduled: isEditedPostBeingScheduled(), isSaving: forceIsSaving || isSavingPost(), isPublishing: isPublishingPost(), hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), postType: getCurrentPostType(), isAutosaving: isAutosavingPost() }; })])(PublishButtonLabel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-button/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var post_publish_button_PostPublishButton = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPublishButton, _Component); function PostPublishButton(props) { var _this; Object(classCallCheck["a" /* default */])(this, PostPublishButton); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPublishButton).call(this, props)); _this.buttonNode = Object(external_this_wp_element_["createRef"])(); _this.createOnClick = _this.createOnClick.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.closeEntitiesSavedStates = _this.closeEntitiesSavedStates.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { entitiesSavedStatesCallback: false }; _this.createIgnoredForSave = memize_default()(function (postType, postId) { return new equivalent_key_map_default.a([[['postType', postType, String(postId)], true]]); }, { maxSize: 1 }); return _this; } Object(createClass["a" /* default */])(PostPublishButton, [{ key: "componentDidMount", value: function componentDidMount() { if (this.props.focusOnMount) { this.buttonNode.current.focus(); } } }, { key: "createOnClick", value: function createOnClick(callback) { var _this2 = this; return function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } var hasNonPostEntityChanges = _this2.props.hasNonPostEntityChanges; if (hasNonPostEntityChanges) { // The modal for multiple entity saving will open, // hold the callback for saving/publishing the post // so that we can call it if the post entity is checked. _this2.setState({ entitiesSavedStatesCallback: function entitiesSavedStatesCallback() { return callback.apply(void 0, args); } }); return external_this_lodash_["noop"]; } return callback.apply(void 0, args); }; } }, { key: "closeEntitiesSavedStates", value: function closeEntitiesSavedStates(savedById) { var _this$props = this.props, postType = _this$props.postType, postId = _this$props.postId; var entitiesSavedStatesCallback = this.state.entitiesSavedStatesCallback; this.setState({ entitiesSavedStatesCallback: false }, function () { if (savedById && savedById.has(['postType', postType, String(postId)])) { // The post entity was checked, call the held callback from `createOnClick`. entitiesSavedStatesCallback(); } }); } }, { key: "render", value: function render() { var _this$props2 = this.props, forceIsDirty = _this$props2.forceIsDirty, forceIsSaving = _this$props2.forceIsSaving, hasPublishAction = _this$props2.hasPublishAction, isBeingScheduled = _this$props2.isBeingScheduled, isOpen = _this$props2.isOpen, isPostSavingLocked = _this$props2.isPostSavingLocked, isPublishable = _this$props2.isPublishable, isPublished = _this$props2.isPublished, isSaveable = _this$props2.isSaveable, isSaving = _this$props2.isSaving, isToggle = _this$props2.isToggle, onSave = _this$props2.onSave, onStatusChange = _this$props2.onStatusChange, _this$props2$onSubmit = _this$props2.onSubmit, onSubmit = _this$props2$onSubmit === void 0 ? external_this_lodash_["noop"] : _this$props2$onSubmit, onToggle = _this$props2.onToggle, visibility = _this$props2.visibility, hasNonPostEntityChanges = _this$props2.hasNonPostEntityChanges, postType = _this$props2.postType, postId = _this$props2.postId; var entitiesSavedStatesCallback = this.state.entitiesSavedStatesCallback; var isButtonDisabled = isSaving || forceIsSaving || !isSaveable || isPostSavingLocked || !isPublishable && !forceIsDirty; var isToggleDisabled = isPublished || isSaving || forceIsSaving || !isSaveable || !isPublishable && !forceIsDirty; var publishStatus; if (!hasPublishAction) { publishStatus = 'pending'; } else if (visibility === 'private') { publishStatus = 'private'; } else if (isBeingScheduled) { publishStatus = 'future'; } else { publishStatus = 'publish'; } var onClickButton = function onClickButton() { if (isButtonDisabled) { return; } onSubmit(); onStatusChange(publishStatus); onSave(); }; var onClickToggle = function onClickToggle() { if (isToggleDisabled) { return; } onToggle(); }; var buttonProps = { 'aria-disabled': isButtonDisabled && !hasNonPostEntityChanges, className: 'editor-post-publish-button', isBusy: isSaving && isPublished, isPrimary: true, onClick: this.createOnClick(onClickButton) }; var toggleProps = { 'aria-disabled': isToggleDisabled && !hasNonPostEntityChanges, 'aria-expanded': isOpen, className: 'editor-post-publish-panel__toggle', isBusy: isSaving && isPublished, isPrimary: true, onClick: this.createOnClick(onClickToggle) }; var toggleChildren = isBeingScheduled ? Object(external_this_wp_i18n_["__"])('Schedule…') : Object(external_this_wp_i18n_["__"])('Publish…'); var buttonChildren = Object(external_this_wp_element_["createElement"])(post_publish_button_label, { forceIsSaving: forceIsSaving, hasNonPostEntityChanges: hasNonPostEntityChanges }); var componentProps = isToggle ? toggleProps : buttonProps; var componentChildren = isToggle ? toggleChildren : buttonChildren; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(EntitiesSavedStates, { isOpen: Boolean(entitiesSavedStatesCallback), onRequestClose: this.closeEntitiesSavedStates, ignoredForSave: this.createIgnoredForSave(postType, postId) }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], Object(esm_extends["a" /* default */])({ ref: this.buttonNode }, componentProps, { className: classnames_default()(componentProps.className, 'editor-post-publish-button__button', { 'has-changes-dot': hasNonPostEntityChanges }) }), componentChildren)); } }]); return PostPublishButton; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_publish_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isSavingPost = _select.isSavingPost, isEditedPostBeingScheduled = _select.isEditedPostBeingScheduled, getEditedPostVisibility = _select.getEditedPostVisibility, isCurrentPostPublished = _select.isCurrentPostPublished, isEditedPostSaveable = _select.isEditedPostSaveable, isEditedPostPublishable = _select.isEditedPostPublishable, isPostSavingLocked = _select.isPostSavingLocked, getCurrentPost = _select.getCurrentPost, getCurrentPostType = _select.getCurrentPostType, getCurrentPostId = _select.getCurrentPostId, hasNonPostEntityChanges = _select.hasNonPostEntityChanges; return { isSaving: isSavingPost(), isBeingScheduled: isEditedPostBeingScheduled(), visibility: getEditedPostVisibility(), isSaveable: isEditedPostSaveable(), isPostSavingLocked: isPostSavingLocked(), isPublishable: isEditedPostPublishable(), isPublished: isCurrentPostPublished(), hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), postType: getCurrentPostType(), postId: getCurrentPostId(), hasNonPostEntityChanges: hasNonPostEntityChanges() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost, savePost = _dispatch.savePost; return { onStatusChange: function onStatusChange(status) { return editPost({ status: status }, { undoIgnore: true }); }, onSave: savePost }; })])(post_publish_button_PostPublishButton)); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close.js var library_close = __webpack_require__("w95h"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-visibility/utils.js /** * WordPress dependencies */ var visibilityOptions = [{ value: 'public', label: Object(external_this_wp_i18n_["__"])('Public'), info: Object(external_this_wp_i18n_["__"])('Visible to everyone.') }, { value: 'private', label: Object(external_this_wp_i18n_["__"])('Private'), info: Object(external_this_wp_i18n_["__"])('Only visible to site admins and editors.') }, { value: 'password', label: Object(external_this_wp_i18n_["__"])('Password Protected'), info: Object(external_this_wp_i18n_["__"])('Protected with a password you choose. Only those with the password can view this post.') }]; // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-visibility/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var post_visibility_PostVisibility = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostVisibility, _Component); function PostVisibility(props) { var _this; Object(classCallCheck["a" /* default */])(this, PostVisibility); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostVisibility).apply(this, arguments)); _this.setPublic = _this.setPublic.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setPrivate = _this.setPrivate.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setPasswordProtected = _this.setPasswordProtected.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.updatePassword = _this.updatePassword.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { hasPassword: !!props.password }; return _this; } Object(createClass["a" /* default */])(PostVisibility, [{ key: "setPublic", value: function setPublic() { var _this$props = this.props, visibility = _this$props.visibility, onUpdateVisibility = _this$props.onUpdateVisibility, status = _this$props.status; onUpdateVisibility(visibility === 'private' ? 'draft' : status); this.setState({ hasPassword: false }); } }, { key: "setPrivate", value: function setPrivate() { if ( // eslint-disable-next-line no-alert !window.confirm(Object(external_this_wp_i18n_["__"])('Would you like to privately publish this post now?'))) { return; } var _this$props2 = this.props, onUpdateVisibility = _this$props2.onUpdateVisibility, onSave = _this$props2.onSave; onUpdateVisibility('private'); this.setState({ hasPassword: false }); onSave(); } }, { key: "setPasswordProtected", value: function setPasswordProtected() { var _this$props3 = this.props, visibility = _this$props3.visibility, onUpdateVisibility = _this$props3.onUpdateVisibility, status = _this$props3.status, password = _this$props3.password; onUpdateVisibility(visibility === 'private' ? 'draft' : status, password || ''); this.setState({ hasPassword: true }); } }, { key: "updatePassword", value: function updatePassword(event) { var _this$props4 = this.props, status = _this$props4.status, onUpdateVisibility = _this$props4.onUpdateVisibility; onUpdateVisibility(status, event.target.value); } }, { key: "render", value: function render() { var _this$props5 = this.props, visibility = _this$props5.visibility, password = _this$props5.password, instanceId = _this$props5.instanceId; var visibilityHandlers = { public: { onSelect: this.setPublic, checked: visibility === 'public' && !this.state.hasPassword }, private: { onSelect: this.setPrivate, checked: visibility === 'private' }, password: { onSelect: this.setPasswordProtected, checked: this.state.hasPassword } }; return [Object(external_this_wp_element_["createElement"])("fieldset", { key: "visibility-selector", className: "editor-post-visibility__dialog-fieldset" }, Object(external_this_wp_element_["createElement"])("legend", { className: "editor-post-visibility__dialog-legend" }, Object(external_this_wp_i18n_["__"])('Post Visibility')), visibilityOptions.map(function (_ref) { var value = _ref.value, label = _ref.label, info = _ref.info; return Object(external_this_wp_element_["createElement"])("div", { key: value, className: "editor-post-visibility__choice" }, Object(external_this_wp_element_["createElement"])("input", { type: "radio", name: "editor-post-visibility__setting-".concat(instanceId), value: value, onChange: visibilityHandlers[value].onSelect, checked: visibilityHandlers[value].checked, id: "editor-post-".concat(value, "-").concat(instanceId), "aria-describedby": "editor-post-".concat(value, "-").concat(instanceId, "-description"), className: "editor-post-visibility__dialog-radio" }), Object(external_this_wp_element_["createElement"])("label", { htmlFor: "editor-post-".concat(value, "-").concat(instanceId), className: "editor-post-visibility__dialog-label" }, label), Object(external_this_wp_element_["createElement"])("p", { id: "editor-post-".concat(value, "-").concat(instanceId, "-description"), className: "editor-post-visibility__dialog-info" }, info)); })), this.state.hasPassword && Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-visibility__dialog-password", key: "password-selector" }, Object(external_this_wp_element_["createElement"])("label", { htmlFor: "editor-post-visibility__dialog-password-input-".concat(instanceId), className: "screen-reader-text" }, Object(external_this_wp_i18n_["__"])('Create password')), Object(external_this_wp_element_["createElement"])("input", { className: "editor-post-visibility__dialog-password-input", id: "editor-post-visibility__dialog-password-input-".concat(instanceId), type: "text", onChange: this.updatePassword, value: password, placeholder: Object(external_this_wp_i18n_["__"])('Use a secure password') }))]; } }]); return PostVisibility; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_visibility = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getEditedPostVisibility = _select.getEditedPostVisibility; return { status: getEditedPostAttribute('status'), visibility: getEditedPostVisibility(), password: getEditedPostAttribute('password') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), savePost = _dispatch.savePost, editPost = _dispatch.editPost; return { onSave: savePost, onUpdateVisibility: function onUpdateVisibility(status) { var password = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ''; editPost({ status: status, password: password }); } }; }), external_this_wp_compose_["withInstanceId"]])(post_visibility_PostVisibility)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-visibility/label.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function PostVisibilityLabel(_ref) { var visibility = _ref.visibility; var getVisibilityLabel = function getVisibilityLabel() { return Object(external_this_lodash_["find"])(visibilityOptions, { value: visibility }).label; }; return getVisibilityLabel(visibility); } /* harmony default export */ var post_visibility_label = (Object(external_this_wp_data_["withSelect"])(function (select) { return { visibility: select('core/editor').getEditedPostVisibility() }; })(PostVisibilityLabel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-schedule/index.js /** * WordPress dependencies */ function PostSchedule(_ref) { var date = _ref.date, onUpdateDate = _ref.onUpdateDate; var settings = Object(external_this_wp_date_["__experimentalGetSettings"])(); // To know if the current timezone is a 12 hour time with look for "a" in the time format // We also make sure this a is not escaped by a "/" var is12HourTime = /a(?!\\)/i.test(settings.formats.time.toLowerCase() // Test only the lower case a .replace(/\\\\/g, '') // Replace "//" with empty strings .split('').reverse().join('') // Reverse the string and test for "a" not followed by a slash ); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["DateTimePicker"], { key: "date-time-picker", currentDate: date, onChange: onUpdateDate, is12Hour: is12HourTime }); } /* harmony default export */ var post_schedule = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { date: select('core/editor').getEditedPostAttribute('date') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateDate: function onUpdateDate(date) { dispatch('core/editor').editPost({ date: date }); } }; })])(PostSchedule)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-schedule/label.js /** * WordPress dependencies */ function PostScheduleLabel(_ref) { var date = _ref.date, isFloating = _ref.isFloating; var settings = Object(external_this_wp_date_["__experimentalGetSettings"])(); return date && !isFloating ? Object(external_this_wp_date_["dateI18n"])("".concat(settings.formats.date, " ").concat(settings.formats.time), date) : Object(external_this_wp_i18n_["__"])('Immediately'); } /* harmony default export */ var post_schedule_label = (Object(external_this_wp_data_["withSelect"])(function (select) { return { date: select('core/editor').getEditedPostAttribute('date'), isFloating: select('core/editor').isEditedPostDateFloating() }; })(PostScheduleLabel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-taxonomies/flat-term-selector.js function flat_term_selector_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function flat_term_selector_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { flat_term_selector_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { flat_term_selector_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Module constants */ var DEFAULT_QUERY = { per_page: -1, orderby: 'count', order: 'desc', _fields: 'id,name' }; var MAX_TERMS_SUGGESTIONS = 20; var isSameTermName = function isSameTermName(termA, termB) { return termA.toLowerCase() === termB.toLowerCase(); }; /** * Returns a term object with name unescaped. * The unescape of the name property is done using lodash unescape function. * * @param {Object} term The term object to unescape. * * @return {Object} Term object with name property unescaped. */ var flat_term_selector_unescapeTerm = function unescapeTerm(term) { return flat_term_selector_objectSpread({}, term, { name: Object(external_this_lodash_["unescape"])(term.name) }); }; /** * Returns an array of term objects with names unescaped. * The unescape of each term is performed using the unescapeTerm function. * * @param {Object[]} terms Array of term objects to unescape. * * @return {Object[]} Array of term objects unescaped. */ var flat_term_selector_unescapeTerms = function unescapeTerms(terms) { return Object(external_this_lodash_["map"])(terms, flat_term_selector_unescapeTerm); }; var flat_term_selector_FlatTermSelector = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(FlatTermSelector, _Component); function FlatTermSelector() { var _this; Object(classCallCheck["a" /* default */])(this, FlatTermSelector); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FlatTermSelector).apply(this, arguments)); _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.searchTerms = Object(external_this_lodash_["throttle"])(_this.searchTerms.bind(Object(assertThisInitialized["a" /* default */])(_this)), 500); _this.findOrCreateTerm = _this.findOrCreateTerm.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { loading: !Object(external_this_lodash_["isEmpty"])(_this.props.terms), availableTerms: [], selectedTerms: [] }; return _this; } Object(createClass["a" /* default */])(FlatTermSelector, [{ key: "componentDidMount", value: function componentDidMount() { var _this2 = this; if (!Object(external_this_lodash_["isEmpty"])(this.props.terms)) { this.initRequest = this.fetchTerms({ include: this.props.terms.join(','), per_page: -1 }); this.initRequest.then(function () { _this2.setState({ loading: false }); }, function (xhr) { if (xhr.statusText === 'abort') { return; } _this2.setState({ loading: false }); }); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { Object(external_this_lodash_["invoke"])(this.initRequest, ['abort']); Object(external_this_lodash_["invoke"])(this.searchRequest, ['abort']); } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (prevProps.terms !== this.props.terms) { this.updateSelectedTerms(this.props.terms); } } }, { key: "fetchTerms", value: function fetchTerms() { var _this3 = this; var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var taxonomy = this.props.taxonomy; var query = flat_term_selector_objectSpread({}, DEFAULT_QUERY, {}, params); var request = external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/".concat(taxonomy.rest_base), query) }); request.then(flat_term_selector_unescapeTerms).then(function (terms) { _this3.setState(function (state) { return { availableTerms: state.availableTerms.concat(terms.filter(function (term) { return !Object(external_this_lodash_["find"])(state.availableTerms, function (availableTerm) { return availableTerm.id === term.id; }); })) }; }); _this3.updateSelectedTerms(_this3.props.terms); }); return request; } }, { key: "updateSelectedTerms", value: function updateSelectedTerms() { var _this4 = this; var terms = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var selectedTerms = terms.reduce(function (accumulator, termId) { var termObject = Object(external_this_lodash_["find"])(_this4.state.availableTerms, function (term) { return term.id === termId; }); if (termObject) { accumulator.push(termObject.name); } return accumulator; }, []); this.setState({ selectedTerms: selectedTerms }); } }, { key: "findOrCreateTerm", value: function findOrCreateTerm(termName) { var _this5 = this; var taxonomy = this.props.taxonomy; var termNameEscaped = Object(external_this_lodash_["escape"])(termName); // Tries to create a term or fetch it if it already exists. return external_this_wp_apiFetch_default()({ path: "/wp/v2/".concat(taxonomy.rest_base), method: 'POST', data: { name: termNameEscaped } }).catch(function (error) { var errorCode = error.code; if (errorCode === 'term_exists') { // If the terms exist, fetch it instead of creating a new one. _this5.addRequest = external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/".concat(taxonomy.rest_base), flat_term_selector_objectSpread({}, DEFAULT_QUERY, { search: termNameEscaped })) }).then(flat_term_selector_unescapeTerms); return _this5.addRequest.then(function (searchResult) { return Object(external_this_lodash_["find"])(searchResult, function (result) { return isSameTermName(result.name, termName); }); }); } return Promise.reject(error); }).then(flat_term_selector_unescapeTerm); } }, { key: "onChange", value: function onChange(termNames) { var _this6 = this; var uniqueTerms = Object(external_this_lodash_["uniqBy"])(termNames, function (term) { return term.toLowerCase(); }); this.setState({ selectedTerms: uniqueTerms }); var newTermNames = uniqueTerms.filter(function (termName) { return !Object(external_this_lodash_["find"])(_this6.state.availableTerms, function (term) { return isSameTermName(term.name, termName); }); }); var termNamesToIds = function termNamesToIds(names, availableTerms) { return names.map(function (termName) { return Object(external_this_lodash_["find"])(availableTerms, function (term) { return isSameTermName(term.name, termName); }).id; }); }; if (newTermNames.length === 0) { return this.props.onUpdateTerms(termNamesToIds(uniqueTerms, this.state.availableTerms), this.props.taxonomy.rest_base); } Promise.all(newTermNames.map(this.findOrCreateTerm)).then(function (newTerms) { var newAvailableTerms = _this6.state.availableTerms.concat(newTerms); _this6.setState({ availableTerms: newAvailableTerms }); return _this6.props.onUpdateTerms(termNamesToIds(uniqueTerms, newAvailableTerms), _this6.props.taxonomy.rest_base); }); } }, { key: "searchTerms", value: function searchTerms() { var search = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ''; Object(external_this_lodash_["invoke"])(this.searchRequest, ['abort']); this.searchRequest = this.fetchTerms({ search: search }); } }, { key: "render", value: function render() { var _this$props = this.props, slug = _this$props.slug, taxonomy = _this$props.taxonomy, hasAssignAction = _this$props.hasAssignAction; if (!hasAssignAction) { return null; } var _this$state = this.state, loading = _this$state.loading, availableTerms = _this$state.availableTerms, selectedTerms = _this$state.selectedTerms; var termNames = availableTerms.map(function (term) { return term.name; }); var newTermLabel = Object(external_this_lodash_["get"])(taxonomy, ['labels', 'add_new_item'], slug === 'post_tag' ? Object(external_this_wp_i18n_["__"])('Add new tag') : Object(external_this_wp_i18n_["__"])('Add new Term')); var singularName = Object(external_this_lodash_["get"])(taxonomy, ['labels', 'singular_name'], slug === 'post_tag' ? Object(external_this_wp_i18n_["__"])('Tag') : Object(external_this_wp_i18n_["__"])('Term')); var termAddedLabel = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_x"])('%s added', 'term'), singularName); var termRemovedLabel = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_x"])('%s removed', 'term'), singularName); var removeTermLabel = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_x"])('Remove %s', 'term'), singularName); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["FormTokenField"], { value: selectedTerms, suggestions: termNames, onChange: this.onChange, onInputChange: this.searchTerms, maxSuggestions: MAX_TERMS_SUGGESTIONS, disabled: loading, label: newTermLabel, messages: { added: termAddedLabel, removed: termRemovedLabel, remove: removeTermLabel } }); } }]); return FlatTermSelector; }(external_this_wp_element_["Component"]); /* harmony default export */ var flat_term_selector = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select, _ref) { var slug = _ref.slug; var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost; var _select2 = select('core'), getTaxonomy = _select2.getTaxonomy; var taxonomy = getTaxonomy(slug); return { hasCreateAction: taxonomy ? Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-create-' + taxonomy.rest_base], false) : false, hasAssignAction: taxonomy ? Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-assign-' + taxonomy.rest_base], false) : false, terms: taxonomy ? select('core/editor').getEditedPostAttribute(taxonomy.rest_base) : [], taxonomy: taxonomy }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateTerms: function onUpdateTerms(terms, restBase) { dispatch('core/editor').editPost(Object(defineProperty["a" /* default */])({}, restBase, terms)); } }; }), Object(external_this_wp_components_["withFilters"])('editor.PostTaxonomyType'))(flat_term_selector_FlatTermSelector)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-panel/maybe-tags-panel.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var maybe_tags_panel_TagsPanel = function TagsPanel() { var panelBodyTitle = [Object(external_this_wp_i18n_["__"])('Suggestion:'), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-publish-panel__link", key: "label" }, Object(external_this_wp_i18n_["__"])('Add tags'))]; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { initialOpen: false, title: panelBodyTitle }, Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('Tags help users and search engines navigate your site and find your content. Add a few keywords to describe your post.')), Object(external_this_wp_element_["createElement"])(flat_term_selector, { slug: 'post_tag' })); }; var maybe_tags_panel_MaybeTagsPanel = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(MaybeTagsPanel, _Component); function MaybeTagsPanel(props) { var _this; Object(classCallCheck["a" /* default */])(this, MaybeTagsPanel); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(MaybeTagsPanel).call(this, props)); _this.state = { hadTagsWhenOpeningThePanel: props.hasTags }; return _this; } /* * We only want to show the tag panel if the post didn't have * any tags when the user hit the Publish button. * * We can't use the prop.hasTags because it'll change to true * if the user adds a new tag within the pre-publish panel. * This would force a re-render and a new prop.hasTags check, * hiding this panel and keeping the user from adding * more than one tag. */ Object(createClass["a" /* default */])(MaybeTagsPanel, [{ key: "render", value: function render() { if (!this.state.hadTagsWhenOpeningThePanel) { return Object(external_this_wp_element_["createElement"])(maybe_tags_panel_TagsPanel, null); } return null; } }]); return MaybeTagsPanel; }(external_this_wp_element_["Component"]); /* harmony default export */ var maybe_tags_panel = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var postType = select('core/editor').getCurrentPostType(); var tagsTaxonomy = select('core').getTaxonomy('post_tag'); var tags = tagsTaxonomy && select('core/editor').getEditedPostAttribute(tagsTaxonomy.rest_base); return { areTagsFetched: tagsTaxonomy !== undefined, isPostTypeSupported: tagsTaxonomy && Object(external_this_lodash_["some"])(tagsTaxonomy.types, function (type) { return type === postType; }), hasTags: tags && tags.length }; }), Object(external_this_wp_compose_["ifCondition"])(function (_ref) { var areTagsFetched = _ref.areTagsFetched, isPostTypeSupported = _ref.isPostTypeSupported; return isPostTypeSupported && areTagsFetched; }))(maybe_tags_panel_MaybeTagsPanel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-panel/maybe-post-format-panel.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var maybe_post_format_panel_PostFormatSuggestion = function PostFormatSuggestion(_ref) { var suggestedPostFormat = _ref.suggestedPostFormat, suggestionText = _ref.suggestionText, onUpdatePostFormat = _ref.onUpdatePostFormat; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isLink: true, onClick: function onClick() { return onUpdatePostFormat(suggestedPostFormat); } }, suggestionText); }; var maybe_post_format_panel_PostFormatPanel = function PostFormatPanel(_ref2) { var suggestion = _ref2.suggestion, onUpdatePostFormat = _ref2.onUpdatePostFormat; var panelBodyTitle = [Object(external_this_wp_i18n_["__"])('Suggestion:'), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-publish-panel__link", key: "label" }, Object(external_this_wp_i18n_["__"])('Use a post format'))]; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { initialOpen: false, title: panelBodyTitle }, Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_i18n_["__"])('Your theme uses post formats to highlight different kinds of content, like images or videos. Apply a post format to see this special styling.')), Object(external_this_wp_element_["createElement"])("p", null, Object(external_this_wp_element_["createElement"])(maybe_post_format_panel_PostFormatSuggestion, { onUpdatePostFormat: onUpdatePostFormat, suggestedPostFormat: suggestion.id, suggestionText: Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Apply the "%1$s" format.'), suggestion.caption) }))); }; var maybe_post_format_panel_getSuggestion = function getSuggestion(supportedFormats, suggestedPostFormat) { var formats = POST_FORMATS.filter(function (format) { return Object(external_this_lodash_["includes"])(supportedFormats, format.id); }); return Object(external_this_lodash_["find"])(formats, function (format) { return format.id === suggestedPostFormat; }); }; /* harmony default export */ var maybe_post_format_panel = (Object(external_this_wp_compose_["compose"])(Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getSuggestedPostFormat = _select.getSuggestedPostFormat; var supportedFormats = Object(external_this_lodash_["get"])(select('core').getThemeSupports(), ['formats'], []); return { currentPostFormat: getEditedPostAttribute('format'), suggestion: maybe_post_format_panel_getSuggestion(supportedFormats, getSuggestedPostFormat()) }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdatePostFormat: function onUpdatePostFormat(postFormat) { dispatch('core/editor').editPost({ format: postFormat }); } }; }), Object(external_this_wp_compose_["ifCondition"])(function (_ref3) { var suggestion = _ref3.suggestion, currentPostFormat = _ref3.currentPostFormat; return suggestion && suggestion.id !== currentPostFormat; }))(maybe_post_format_panel_PostFormatPanel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-panel/prepublish.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function PostPublishPanelPrepublish(_ref) { var hasPublishAction = _ref.hasPublishAction, isBeingScheduled = _ref.isBeingScheduled, children = _ref.children; var prePublishTitle, prePublishBodyText; if (!hasPublishAction) { prePublishTitle = Object(external_this_wp_i18n_["__"])('Are you ready to submit for review?'); prePublishBodyText = Object(external_this_wp_i18n_["__"])('When you’re ready, submit your work for review, and an Editor will be able to approve it for you.'); } else if (isBeingScheduled) { prePublishTitle = Object(external_this_wp_i18n_["__"])('Are you ready to schedule?'); prePublishBodyText = Object(external_this_wp_i18n_["__"])('Your work will be published at the specified date and time.'); } else { prePublishTitle = Object(external_this_wp_i18n_["__"])('Are you ready to publish?'); prePublishBodyText = Object(external_this_wp_i18n_["__"])('Double-check your settings before publishing.'); } return Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__prepublish" }, Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])("strong", null, prePublishTitle)), Object(external_this_wp_element_["createElement"])("p", null, prePublishBodyText), hasPublishAction && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { initialOpen: false, title: [Object(external_this_wp_i18n_["__"])('Visibility:'), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-publish-panel__link", key: "label" }, Object(external_this_wp_element_["createElement"])(post_visibility_label, null))] }, Object(external_this_wp_element_["createElement"])(post_visibility, null)), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { initialOpen: false, title: [Object(external_this_wp_i18n_["__"])('Publish:'), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-publish-panel__link", key: "label" }, Object(external_this_wp_element_["createElement"])(post_schedule_label, null))] }, Object(external_this_wp_element_["createElement"])(post_schedule, null))), Object(external_this_wp_element_["createElement"])(maybe_post_format_panel, null), Object(external_this_wp_element_["createElement"])(maybe_tags_panel, null), children); } /* harmony default export */ var prepublish = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost, isEditedPostBeingScheduled = _select.isEditedPostBeingScheduled; return { hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), isBeingScheduled: isEditedPostBeingScheduled() }; })(PostPublishPanelPrepublish)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-panel/postpublish.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var postpublish_PostPublishPanelPostpublish = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPublishPanelPostpublish, _Component); function PostPublishPanelPostpublish() { var _this; Object(classCallCheck["a" /* default */])(this, PostPublishPanelPostpublish); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPublishPanelPostpublish).apply(this, arguments)); _this.state = { showCopyConfirmation: false }; _this.onCopy = _this.onCopy.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelectInput = _this.onSelectInput.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.postLink = Object(external_this_wp_element_["createRef"])(); return _this; } Object(createClass["a" /* default */])(PostPublishPanelPostpublish, [{ key: "componentDidMount", value: function componentDidMount() { if (this.props.focusOnMount) { this.postLink.current.focus(); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { clearTimeout(this.dismissCopyConfirmation); } }, { key: "onCopy", value: function onCopy() { var _this2 = this; this.setState({ showCopyConfirmation: true }); clearTimeout(this.dismissCopyConfirmation); this.dismissCopyConfirmation = setTimeout(function () { _this2.setState({ showCopyConfirmation: false }); }, 4000); } }, { key: "onSelectInput", value: function onSelectInput(event) { event.target.select(); } }, { key: "render", value: function render() { var _this$props = this.props, children = _this$props.children, isScheduled = _this$props.isScheduled, post = _this$props.post, postType = _this$props.postType; var postLabel = Object(external_this_lodash_["get"])(postType, ['labels', 'singular_name']); var viewPostLabel = Object(external_this_lodash_["get"])(postType, ['labels', 'view_item']); var postPublishNonLinkHeader = isScheduled ? Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_i18n_["__"])('is now scheduled. It will go live on'), ' ', Object(external_this_wp_element_["createElement"])(post_schedule_label, null), ".") : Object(external_this_wp_i18n_["__"])('is now live.'); return Object(external_this_wp_element_["createElement"])("div", { className: "post-publish-panel__postpublish" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], { className: "post-publish-panel__postpublish-header" }, Object(external_this_wp_element_["createElement"])("a", { ref: this.postLink, href: post.link }, Object(external_this_wp_htmlEntities_["decodeEntities"])(post.title) || Object(external_this_wp_i18n_["__"])('(no title)')), ' ', postPublishNonLinkHeader), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["PanelBody"], null, Object(external_this_wp_element_["createElement"])("p", { className: "post-publish-panel__postpublish-subheader" }, Object(external_this_wp_element_["createElement"])("strong", null, Object(external_this_wp_i18n_["__"])('What’s next?'))), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TextControl"], { className: "post-publish-panel__postpublish-post-address", readOnly: true, label: Object(external_this_wp_i18n_["sprintf"])( /* translators: %s: post type singular name */ Object(external_this_wp_i18n_["__"])('%s address'), postLabel), value: Object(external_this_wp_url_["safeDecodeURIComponent"])(post.link), onFocus: this.onSelectInput }), Object(external_this_wp_element_["createElement"])("div", { className: "post-publish-panel__postpublish-buttons" }, !isScheduled && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, href: post.link }, viewPostLabel), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ClipboardButton"], { isSecondary: true, text: post.link, onCopy: this.onCopy }, this.state.showCopyConfirmation ? Object(external_this_wp_i18n_["__"])('Copied!') : Object(external_this_wp_i18n_["__"])('Copy Link')))), children); } }]); return PostPublishPanelPostpublish; }(external_this_wp_element_["Component"]); /* harmony default export */ var postpublish = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, getCurrentPost = _select.getCurrentPost, isCurrentPostScheduled = _select.isCurrentPostScheduled; var _select2 = select('core'), getPostType = _select2.getPostType; return { post: getCurrentPost(), postType: getPostType(getEditedPostAttribute('type')), isScheduled: isCurrentPostScheduled() }; })(postpublish_PostPublishPanelPostpublish)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-publish-panel/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var post_publish_panel_PostPublishPanel = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPublishPanel, _Component); function PostPublishPanel() { var _this; Object(classCallCheck["a" /* default */])(this, PostPublishPanel); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPublishPanel).apply(this, arguments)); _this.onSubmit = _this.onSubmit.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostPublishPanel, [{ key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { // Automatically collapse the publish sidebar when a post // is published and the user makes an edit. if (prevProps.isPublished && !this.props.isSaving && this.props.isDirty) { this.props.onClose(); } } }, { key: "onSubmit", value: function onSubmit() { var _this$props = this.props, onClose = _this$props.onClose, hasPublishAction = _this$props.hasPublishAction, isPostTypeViewable = _this$props.isPostTypeViewable; if (!hasPublishAction || !isPostTypeViewable) { onClose(); } } }, { key: "render", value: function render() { var _this$props2 = this.props, forceIsDirty = _this$props2.forceIsDirty, forceIsSaving = _this$props2.forceIsSaving, isBeingScheduled = _this$props2.isBeingScheduled, isPublished = _this$props2.isPublished, isPublishSidebarEnabled = _this$props2.isPublishSidebarEnabled, isScheduled = _this$props2.isScheduled, isSaving = _this$props2.isSaving, onClose = _this$props2.onClose, onTogglePublishSidebar = _this$props2.onTogglePublishSidebar, PostPublishExtension = _this$props2.PostPublishExtension, PrePublishExtension = _this$props2.PrePublishExtension, additionalProps = Object(objectWithoutProperties["a" /* default */])(_this$props2, ["forceIsDirty", "forceIsSaving", "isBeingScheduled", "isPublished", "isPublishSidebarEnabled", "isScheduled", "isSaving", "onClose", "onTogglePublishSidebar", "PostPublishExtension", "PrePublishExtension"]); var propsForPanel = Object(external_this_lodash_["omit"])(additionalProps, ['hasPublishAction', 'isDirty', 'isPostTypeViewable']); var isPublishedOrScheduled = isPublished || isScheduled && isBeingScheduled; var isPrePublish = !isPublishedOrScheduled && !isSaving; var isPostPublish = isPublishedOrScheduled && !isSaving; return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({ className: "editor-post-publish-panel" }, propsForPanel), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__header" }, isPostPublish ? Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__header-published" }, isScheduled ? Object(external_this_wp_i18n_["__"])('Scheduled') : Object(external_this_wp_i18n_["__"])('Published')) : Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__header-publish-button" }, Object(external_this_wp_element_["createElement"])(post_publish_button, { focusOnMount: true, onSubmit: this.onSubmit, forceIsDirty: forceIsDirty, forceIsSaving: forceIsSaving })), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { "aria-expanded": true, onClick: onClose, icon: library_close["a" /* default */], label: Object(external_this_wp_i18n_["__"])('Close panel') })), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__content" }, isPrePublish && Object(external_this_wp_element_["createElement"])(prepublish, null, PrePublishExtension && Object(external_this_wp_element_["createElement"])(PrePublishExtension, null)), isPostPublish && Object(external_this_wp_element_["createElement"])(postpublish, { focusOnMount: true }, PostPublishExtension && Object(external_this_wp_element_["createElement"])(PostPublishExtension, null)), isSaving && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Spinner"], null)), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-publish-panel__footer" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: Object(external_this_wp_i18n_["__"])('Always show pre-publish checks.'), checked: isPublishSidebarEnabled, onChange: onTogglePublishSidebar }))); } }]); return PostPublishPanel; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_publish_panel = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core'), getPostType = _select.getPostType; var _select2 = select('core/editor'), getCurrentPost = _select2.getCurrentPost, getEditedPostAttribute = _select2.getEditedPostAttribute, isCurrentPostPublished = _select2.isCurrentPostPublished, isCurrentPostScheduled = _select2.isCurrentPostScheduled, isEditedPostBeingScheduled = _select2.isEditedPostBeingScheduled, isEditedPostDirty = _select2.isEditedPostDirty, isSavingPost = _select2.isSavingPost; var _select3 = select('core/editor'), isPublishSidebarEnabled = _select3.isPublishSidebarEnabled; var postType = getPostType(getEditedPostAttribute('type')); return { hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), isPostTypeViewable: Object(external_this_lodash_["get"])(postType, ['viewable'], false), isBeingScheduled: isEditedPostBeingScheduled(), isDirty: isEditedPostDirty(), isPublished: isCurrentPostPublished(), isPublishSidebarEnabled: isPublishSidebarEnabled(), isSaving: isSavingPost(), isScheduled: isCurrentPostScheduled() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref) { var isPublishSidebarEnabled = _ref.isPublishSidebarEnabled; var _dispatch = dispatch('core/editor'), disablePublishSidebar = _dispatch.disablePublishSidebar, enablePublishSidebar = _dispatch.enablePublishSidebar; return { onTogglePublishSidebar: function onTogglePublishSidebar() { if (isPublishSidebarEnabled) { disablePublishSidebar(); } else { enablePublishSidebar(); } } }; }), external_this_wp_components_["withFocusReturn"], external_this_wp_components_["withConstrainedTabbing"]])(post_publish_panel_PostPublishPanel)); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js var build_module_icon = __webpack_require__("iClF"); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/check.js var library_check = __webpack_require__("RMJe"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-switch-to-draft-button/index.js /** * WordPress dependencies */ function PostSwitchToDraftButton(_ref) { var isSaving = _ref.isSaving, isPublished = _ref.isPublished, isScheduled = _ref.isScheduled, onClick = _ref.onClick; var isMobileViewport = Object(external_this_wp_compose_["useViewportMatch"])('small', '<'); if (!isPublished && !isScheduled) { return null; } var onSwitch = function onSwitch() { var alertMessage; if (isPublished) { alertMessage = Object(external_this_wp_i18n_["__"])('Are you sure you want to unpublish this post?'); } else if (isScheduled) { alertMessage = Object(external_this_wp_i18n_["__"])('Are you sure you want to unschedule this post?'); } // eslint-disable-next-line no-alert if (window.confirm(alertMessage)) { onClick(); } }; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-switch-to-draft", onClick: onSwitch, disabled: isSaving, isTertiary: true }, isMobileViewport ? Object(external_this_wp_i18n_["__"])('Draft') : Object(external_this_wp_i18n_["__"])('Switch to draft')); } /* harmony default export */ var post_switch_to_draft_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isSavingPost = _select.isSavingPost, isCurrentPostPublished = _select.isCurrentPostPublished, isCurrentPostScheduled = _select.isCurrentPostScheduled; return { isSaving: isSavingPost(), isPublished: isCurrentPostPublished(), isScheduled: isCurrentPostScheduled() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost, savePost = _dispatch.savePost; return { onClick: function onClick() { editPost({ status: 'draft' }); savePost(); } }; })])(PostSwitchToDraftButton)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-saved-state/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Component showing whether the post is saved or not and displaying save links. * * @param {Object} Props Component Props. */ var post_saved_state_PostSavedState = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostSavedState, _Component); function PostSavedState() { var _this; Object(classCallCheck["a" /* default */])(this, PostSavedState); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostSavedState).apply(this, arguments)); _this.state = { forceSavedMessage: false }; return _this; } Object(createClass["a" /* default */])(PostSavedState, [{ key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { var _this2 = this; if (prevProps.isSaving && !this.props.isSaving) { this.setState({ forceSavedMessage: true }); this.props.setTimeout(function () { _this2.setState({ forceSavedMessage: false }); }, 1000); } } }, { key: "render", value: function render() { var _this$props = this.props, post = _this$props.post, isNew = _this$props.isNew, isScheduled = _this$props.isScheduled, isPublished = _this$props.isPublished, isDirty = _this$props.isDirty, isSaving = _this$props.isSaving, isSaveable = _this$props.isSaveable, onSave = _this$props.onSave, isAutosaving = _this$props.isAutosaving, isPending = _this$props.isPending, isLargeViewport = _this$props.isLargeViewport; var forceSavedMessage = this.state.forceSavedMessage; if (isSaving) { // TODO: Classes generation should be common across all return // paths of this function, including proper naming convention for // the "Save Draft" button. var classes = classnames_default()('editor-post-saved-state', 'is-saving', { 'is-autosaving': isAutosaving }); return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Animate"], { type: "loading" }, function (_ref) { var animateClassName = _ref.className; return Object(external_this_wp_element_["createElement"])("span", { className: classnames_default()(classes, animateClassName) }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Dashicon"], { icon: "cloud" }), isAutosaving ? Object(external_this_wp_i18n_["__"])('Autosaving') : Object(external_this_wp_i18n_["__"])('Saving')); }); } if (isPublished || isScheduled) { return Object(external_this_wp_element_["createElement"])(post_switch_to_draft_button, null); } if (!isSaveable) { return null; } if (forceSavedMessage || !isNew && !isDirty) { return Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-saved-state is-saved" }, Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], { icon: library_check["a" /* default */] }), Object(external_this_wp_i18n_["__"])('Saved')); } // Once the post has been submitted for review this button // is not needed for the contributor role. var hasPublishAction = Object(external_this_lodash_["get"])(post, ['_links', 'wp:action-publish'], false); if (!hasPublishAction && isPending) { return null; } var label = isPending ? Object(external_this_wp_i18n_["__"])('Save as Pending') : Object(external_this_wp_i18n_["__"])('Save Draft'); if (!isLargeViewport) { return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-save-draft", label: label, onClick: function onClick() { return onSave(); }, shortcut: external_this_wp_keycodes_["displayShortcut"].primary('s'), icon: "cloud-upload" }); } return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-save-draft", onClick: function onClick() { return onSave(); }, shortcut: external_this_wp_keycodes_["displayShortcut"].primary('s'), isTertiary: true }, label); } }]); return PostSavedState; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_saved_state = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var forceIsDirty = _ref2.forceIsDirty, forceIsSaving = _ref2.forceIsSaving; var _select = select('core/editor'), isEditedPostNew = _select.isEditedPostNew, isCurrentPostPublished = _select.isCurrentPostPublished, isCurrentPostScheduled = _select.isCurrentPostScheduled, isEditedPostDirty = _select.isEditedPostDirty, isSavingPost = _select.isSavingPost, isEditedPostSaveable = _select.isEditedPostSaveable, getCurrentPost = _select.getCurrentPost, isAutosavingPost = _select.isAutosavingPost, getEditedPostAttribute = _select.getEditedPostAttribute; return { post: getCurrentPost(), isNew: isEditedPostNew(), isPublished: isCurrentPostPublished(), isScheduled: isCurrentPostScheduled(), isDirty: forceIsDirty || isEditedPostDirty(), isSaving: forceIsSaving || isSavingPost(), isSaveable: isEditedPostSaveable(), isAutosaving: isAutosavingPost(), isPending: 'pending' === getEditedPostAttribute('status') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onSave: dispatch('core/editor').savePost }; }), external_this_wp_compose_["withSafeTimeout"], Object(external_this_wp_viewport_["withViewportMatch"])({ isLargeViewport: 'small' })])(post_saved_state_PostSavedState)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-schedule/check.js /** * External dependencies */ /** * WordPress dependencies */ function PostScheduleCheck(_ref) { var hasPublishAction = _ref.hasPublishAction, children = _ref.children; if (!hasPublishAction) { return null; } return children; } /* harmony default export */ var post_schedule_check = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost, getCurrentPostType = _select.getCurrentPostType; return { hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), postType: getCurrentPostType() }; })])(PostScheduleCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-slug/check.js /** * Internal dependencies */ function PostSlugCheck(_ref) { var children = _ref.children; return Object(external_this_wp_element_["createElement"])(post_type_support_check, { supportKeys: "slug" }, children); } // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-slug/index.js /** * WordPress dependencies */ /** * Internal dependencies */ var post_slug_PostSlug = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostSlug, _Component); function PostSlug(_ref) { var _this; var postSlug = _ref.postSlug, postTitle = _ref.postTitle, postID = _ref.postID; Object(classCallCheck["a" /* default */])(this, PostSlug); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostSlug).apply(this, arguments)); _this.state = { editedSlug: Object(external_this_wp_url_["safeDecodeURIComponent"])(postSlug) || cleanForSlug(postTitle) || postID }; _this.setSlug = _this.setSlug.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostSlug, [{ key: "setSlug", value: function setSlug(event) { var _this$props = this.props, postSlug = _this$props.postSlug, onUpdateSlug = _this$props.onUpdateSlug; var value = event.target.value; var editedSlug = cleanForSlug(value); if (editedSlug === postSlug) { return; } onUpdateSlug(editedSlug); } }, { key: "render", value: function render() { var _this2 = this; var instanceId = this.props.instanceId; var editedSlug = this.state.editedSlug; var inputId = 'editor-post-slug-' + instanceId; return Object(external_this_wp_element_["createElement"])(PostSlugCheck, null, Object(external_this_wp_element_["createElement"])("label", { htmlFor: inputId }, Object(external_this_wp_i18n_["__"])('Slug')), Object(external_this_wp_element_["createElement"])("input", { type: "text", id: inputId, value: editedSlug, onChange: function onChange(event) { return _this2.setState({ editedSlug: event.target.value }); }, onBlur: this.setSlug, className: "editor-post-slug__input" })); } }]); return PostSlug; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_slug = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost, getEditedPostAttribute = _select.getEditedPostAttribute; var _getCurrentPost = getCurrentPost(), id = _getCurrentPost.id; return { postSlug: getEditedPostAttribute('slug'), postTitle: getEditedPostAttribute('title'), postID: id }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost; return { onUpdateSlug: function onUpdateSlug(slug) { editPost({ slug: slug }); } }; }), external_this_wp_compose_["withInstanceId"]])(post_slug_PostSlug)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-sticky/check.js /** * External dependencies */ /** * WordPress dependencies */ function PostStickyCheck(_ref) { var hasStickyAction = _ref.hasStickyAction, postType = _ref.postType, children = _ref.children; if (postType !== 'post' || !hasStickyAction) { return null; } return children; } /* harmony default export */ var post_sticky_check = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var post = select('core/editor').getCurrentPost(); return { hasStickyAction: Object(external_this_lodash_["get"])(post, ['_links', 'wp:action-sticky'], false), postType: select('core/editor').getCurrentPostType() }; })])(PostStickyCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-sticky/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function PostSticky(_ref) { var onUpdateSticky = _ref.onUpdateSticky, _ref$postSticky = _ref.postSticky, postSticky = _ref$postSticky === void 0 ? false : _ref$postSticky; return Object(external_this_wp_element_["createElement"])(post_sticky_check, null, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { label: Object(external_this_wp_i18n_["__"])('Stick to the top of the blog'), checked: postSticky, onChange: function onChange() { return onUpdateSticky(!postSticky); } })); } /* harmony default export */ var post_sticky = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { postSticky: select('core/editor').getEditedPostAttribute('sticky') }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateSticky: function onUpdateSticky(postSticky) { dispatch('core/editor').editPost({ sticky: postSticky }); } }; })])(PostSticky)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-taxonomies/hierarchical-term-selector.js function hierarchical_term_selector_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function hierarchical_term_selector_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { hierarchical_term_selector_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { hierarchical_term_selector_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Module Constants */ var hierarchical_term_selector_DEFAULT_QUERY = { per_page: -1, orderby: 'name', order: 'asc', _fields: 'id,name,parent' }; var MIN_TERMS_COUNT_FOR_FILTER = 8; var hierarchical_term_selector_HierarchicalTermSelector = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(HierarchicalTermSelector, _Component); function HierarchicalTermSelector() { var _this; Object(classCallCheck["a" /* default */])(this, HierarchicalTermSelector); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(HierarchicalTermSelector).apply(this, arguments)); _this.findTerm = _this.findTerm.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeFormName = _this.onChangeFormName.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onChangeFormParent = _this.onChangeFormParent.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onAddTerm = _this.onAddTerm.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onToggleForm = _this.onToggleForm.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.setFilterValue = _this.setFilterValue.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.sortBySelected = _this.sortBySelected.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { loading: true, availableTermsTree: [], availableTerms: [], adding: false, formName: '', formParent: '', showForm: false, filterValue: '', filteredTermsTree: [] }; return _this; } Object(createClass["a" /* default */])(HierarchicalTermSelector, [{ key: "onChange", value: function onChange(termId) { var _this$props = this.props, onUpdateTerms = _this$props.onUpdateTerms, _this$props$terms = _this$props.terms, terms = _this$props$terms === void 0 ? [] : _this$props$terms, taxonomy = _this$props.taxonomy; var hasTerm = terms.indexOf(termId) !== -1; var newTerms = hasTerm ? Object(external_this_lodash_["without"])(terms, termId) : [].concat(Object(toConsumableArray["a" /* default */])(terms), [termId]); onUpdateTerms(newTerms, taxonomy.rest_base); } }, { key: "onChangeFormName", value: function onChangeFormName(event) { var newValue = event.target.value.trim() === '' ? '' : event.target.value; this.setState({ formName: newValue }); } }, { key: "onChangeFormParent", value: function onChangeFormParent(newParent) { this.setState({ formParent: newParent }); } }, { key: "onToggleForm", value: function onToggleForm() { this.setState(function (state) { return { showForm: !state.showForm }; }); } }, { key: "findTerm", value: function findTerm(terms, parent, name) { return Object(external_this_lodash_["find"])(terms, function (term) { return (!term.parent && !parent || parseInt(term.parent) === parseInt(parent)) && term.name.toLowerCase() === name.toLowerCase(); }); } }, { key: "onAddTerm", value: function onAddTerm(event) { var _this2 = this; event.preventDefault(); var _this$props2 = this.props, onUpdateTerms = _this$props2.onUpdateTerms, taxonomy = _this$props2.taxonomy, terms = _this$props2.terms, slug = _this$props2.slug; var _this$state = this.state, formName = _this$state.formName, formParent = _this$state.formParent, adding = _this$state.adding, availableTerms = _this$state.availableTerms; if (formName === '' || adding) { return; } // check if the term we are adding already exists var existingTerm = this.findTerm(availableTerms, formParent, formName); if (existingTerm) { // if the term we are adding exists but is not selected select it if (!Object(external_this_lodash_["some"])(terms, function (term) { return term === existingTerm.id; })) { onUpdateTerms([].concat(Object(toConsumableArray["a" /* default */])(terms), [existingTerm.id]), taxonomy.rest_base); } this.setState({ formName: '', formParent: '' }); return; } this.setState({ adding: true }); this.addRequest = external_this_wp_apiFetch_default()({ path: "/wp/v2/".concat(taxonomy.rest_base), method: 'POST', data: { name: formName, parent: formParent ? formParent : undefined } }); // Tries to create a term or fetch it if it already exists var findOrCreatePromise = this.addRequest.catch(function (error) { var errorCode = error.code; if (errorCode === 'term_exists') { // search the new category created since last fetch _this2.addRequest = external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/".concat(taxonomy.rest_base), hierarchical_term_selector_objectSpread({}, hierarchical_term_selector_DEFAULT_QUERY, { parent: formParent || 0, search: formName })) }); return _this2.addRequest.then(function (searchResult) { return _this2.findTerm(searchResult, formParent, formName); }); } return Promise.reject(error); }); findOrCreatePromise.then(function (term) { var hasTerm = !!Object(external_this_lodash_["find"])(_this2.state.availableTerms, function (availableTerm) { return availableTerm.id === term.id; }); var newAvailableTerms = hasTerm ? _this2.state.availableTerms : [term].concat(Object(toConsumableArray["a" /* default */])(_this2.state.availableTerms)); var termAddedMessage = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_x"])('%s added', 'term'), Object(external_this_lodash_["get"])(_this2.props.taxonomy, ['labels', 'singular_name'], slug === 'category' ? Object(external_this_wp_i18n_["__"])('Category') : Object(external_this_wp_i18n_["__"])('Term'))); _this2.props.speak(termAddedMessage, 'assertive'); _this2.addRequest = null; _this2.setState({ adding: false, formName: '', formParent: '', availableTerms: newAvailableTerms, availableTermsTree: _this2.sortBySelected(buildTermsTree(newAvailableTerms)) }); onUpdateTerms([].concat(Object(toConsumableArray["a" /* default */])(terms), [term.id]), taxonomy.rest_base); }, function (xhr) { if (xhr.statusText === 'abort') { return; } _this2.addRequest = null; _this2.setState({ adding: false }); }); } }, { key: "componentDidMount", value: function componentDidMount() { this.fetchTerms(); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { Object(external_this_lodash_["invoke"])(this.fetchRequest, ['abort']); Object(external_this_lodash_["invoke"])(this.addRequest, ['abort']); } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (this.props.taxonomy !== prevProps.taxonomy) { this.fetchTerms(); } } }, { key: "fetchTerms", value: function fetchTerms() { var _this3 = this; var taxonomy = this.props.taxonomy; if (!taxonomy) { return; } this.fetchRequest = external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/".concat(taxonomy.rest_base), hierarchical_term_selector_DEFAULT_QUERY) }); this.fetchRequest.then(function (terms) { // resolve var availableTermsTree = _this3.sortBySelected(buildTermsTree(terms)); _this3.fetchRequest = null; _this3.setState({ loading: false, availableTermsTree: availableTermsTree, availableTerms: terms }); }, function (xhr) { // reject if (xhr.statusText === 'abort') { return; } _this3.fetchRequest = null; _this3.setState({ loading: false }); }); } }, { key: "sortBySelected", value: function sortBySelected(termsTree) { var terms = this.props.terms; var treeHasSelection = function treeHasSelection(termTree) { if (terms.indexOf(termTree.id) !== -1) { return true; } if (undefined === termTree.children) { return false; } var anyChildIsSelected = termTree.children.map(treeHasSelection).filter(function (child) { return child; }).length > 0; if (anyChildIsSelected) { return true; } return false; }; var termOrChildIsSelected = function termOrChildIsSelected(termA, termB) { var termASelected = treeHasSelection(termA); var termBSelected = treeHasSelection(termB); if (termASelected === termBSelected) { return 0; } if (termASelected && !termBSelected) { return -1; } if (!termASelected && termBSelected) { return 1; } return 0; }; termsTree.sort(termOrChildIsSelected); return termsTree; } }, { key: "setFilterValue", value: function setFilterValue(event) { var availableTermsTree = this.state.availableTermsTree; var filterValue = event.target.value; var filteredTermsTree = availableTermsTree.map(this.getFilterMatcher(filterValue)).filter(function (term) { return term; }); var getResultCount = function getResultCount(terms) { var count = 0; for (var i = 0; i < terms.length; i++) { count++; if (undefined !== terms[i].children) { count += getResultCount(terms[i].children); } } return count; }; this.setState({ filterValue: filterValue, filteredTermsTree: filteredTermsTree }); var resultCount = getResultCount(filteredTermsTree); var resultsFoundMessage = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_n"])('%d result found.', '%d results found.', resultCount), resultCount); this.props.debouncedSpeak(resultsFoundMessage, 'assertive'); } }, { key: "getFilterMatcher", value: function getFilterMatcher(filterValue) { var matchTermsForFilter = function matchTermsForFilter(originalTerm) { if ('' === filterValue) { return originalTerm; } // Shallow clone, because we'll be filtering the term's children and // don't want to modify the original term. var term = hierarchical_term_selector_objectSpread({}, originalTerm); // Map and filter the children, recursive so we deal with grandchildren // and any deeper levels. if (term.children.length > 0) { term.children = term.children.map(matchTermsForFilter).filter(function (child) { return child; }); } // If the term's name contains the filterValue, or it has children // (i.e. some child matched at some point in the tree) then return it. if (-1 !== term.name.toLowerCase().indexOf(filterValue.toLowerCase()) || term.children.length > 0) { return term; } // Otherwise, return false. After mapping, the list of terms will need // to have false values filtered out. return false; }; return matchTermsForFilter; } }, { key: "renderTerms", value: function renderTerms(renderedTerms) { var _this4 = this; var _this$props$terms2 = this.props.terms, terms = _this$props$terms2 === void 0 ? [] : _this$props$terms2; return renderedTerms.map(function (term) { return Object(external_this_wp_element_["createElement"])("div", { key: term.id, className: "editor-post-taxonomies__hierarchical-terms-choice" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["CheckboxControl"], { checked: terms.indexOf(term.id) !== -1, onChange: function onChange() { var termId = parseInt(term.id, 10); _this4.onChange(termId); }, label: Object(external_this_lodash_["unescape"])(term.name) }), !!term.children.length && Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-taxonomies__hierarchical-terms-subchoices" }, _this4.renderTerms(term.children))); }); } }, { key: "render", value: function render() { var _this$props3 = this.props, slug = _this$props3.slug, taxonomy = _this$props3.taxonomy, instanceId = _this$props3.instanceId, hasCreateAction = _this$props3.hasCreateAction, hasAssignAction = _this$props3.hasAssignAction; if (!hasAssignAction) { return null; } var _this$state2 = this.state, availableTermsTree = _this$state2.availableTermsTree, availableTerms = _this$state2.availableTerms, filteredTermsTree = _this$state2.filteredTermsTree, formName = _this$state2.formName, formParent = _this$state2.formParent, loading = _this$state2.loading, showForm = _this$state2.showForm, filterValue = _this$state2.filterValue; var labelWithFallback = function labelWithFallback(labelProperty, fallbackIsCategory, fallbackIsNotCategory) { return Object(external_this_lodash_["get"])(taxonomy, ['labels', labelProperty], slug === 'category' ? fallbackIsCategory : fallbackIsNotCategory); }; var newTermButtonLabel = labelWithFallback('add_new_item', Object(external_this_wp_i18n_["__"])('Add new category'), Object(external_this_wp_i18n_["__"])('Add new term')); var newTermLabel = labelWithFallback('new_item_name', Object(external_this_wp_i18n_["__"])('Add new category'), Object(external_this_wp_i18n_["__"])('Add new term')); var parentSelectLabel = labelWithFallback('parent_item', Object(external_this_wp_i18n_["__"])('Parent Category'), Object(external_this_wp_i18n_["__"])('Parent Term')); var noParentOption = "\u2014 ".concat(parentSelectLabel, " \u2014"); var newTermSubmitLabel = newTermButtonLabel; var inputId = "editor-post-taxonomies__hierarchical-terms-input-".concat(instanceId); var filterInputId = "editor-post-taxonomies__hierarchical-terms-filter-".concat(instanceId); var filterLabel = Object(external_this_lodash_["get"])(this.props.taxonomy, ['labels', 'search_items'], Object(external_this_wp_i18n_["__"])('Search Terms')); var groupLabel = Object(external_this_lodash_["get"])(this.props.taxonomy, ['name'], Object(external_this_wp_i18n_["__"])('Terms')); var showFilter = availableTerms.length >= MIN_TERMS_COUNT_FOR_FILTER; return [showFilter && Object(external_this_wp_element_["createElement"])("label", { key: "filter-label", htmlFor: filterInputId }, filterLabel), showFilter && Object(external_this_wp_element_["createElement"])("input", { type: "search", id: filterInputId, value: filterValue, onChange: this.setFilterValue, className: "editor-post-taxonomies__hierarchical-terms-filter", key: "term-filter-input" }), Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-taxonomies__hierarchical-terms-list", key: "term-list", tabIndex: "0", role: "group", "aria-label": groupLabel }, this.renderTerms('' !== filterValue ? filteredTermsTree : availableTermsTree)), !loading && hasCreateAction && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { key: "term-add-button", onClick: this.onToggleForm, className: "editor-post-taxonomies__hierarchical-terms-add", "aria-expanded": showForm, isLink: true }, newTermButtonLabel), showForm && Object(external_this_wp_element_["createElement"])("form", { onSubmit: this.onAddTerm, key: "hierarchical-terms-form" }, Object(external_this_wp_element_["createElement"])("label", { htmlFor: inputId, className: "editor-post-taxonomies__hierarchical-terms-label" }, newTermLabel), Object(external_this_wp_element_["createElement"])("input", { type: "text", id: inputId, className: "editor-post-taxonomies__hierarchical-terms-input", value: formName, onChange: this.onChangeFormName, required: true }), !!availableTerms.length && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["TreeSelect"], { label: parentSelectLabel, noOptionLabel: noParentOption, onChange: this.onChangeFormParent, selectedId: formParent, tree: availableTermsTree }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { isSecondary: true, type: "submit", className: "editor-post-taxonomies__hierarchical-terms-submit" }, newTermSubmitLabel))]; } }]); return HierarchicalTermSelector; }(external_this_wp_element_["Component"]); /* harmony default export */ var hierarchical_term_selector = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref) { var slug = _ref.slug; var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost; var _select2 = select('core'), getTaxonomy = _select2.getTaxonomy; var taxonomy = getTaxonomy(slug); return { hasCreateAction: taxonomy ? Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-create-' + taxonomy.rest_base], false) : false, hasAssignAction: taxonomy ? Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-assign-' + taxonomy.rest_base], false) : false, terms: taxonomy ? select('core/editor').getEditedPostAttribute(taxonomy.rest_base) : [], taxonomy: taxonomy }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { onUpdateTerms: function onUpdateTerms(terms, restBase) { dispatch('core/editor').editPost(Object(defineProperty["a" /* default */])({}, restBase, terms)); } }; }), external_this_wp_components_["withSpokenMessages"], external_this_wp_compose_["withInstanceId"], Object(external_this_wp_components_["withFilters"])('editor.PostTaxonomyType')])(hierarchical_term_selector_HierarchicalTermSelector)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-taxonomies/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function PostTaxonomies(_ref) { var postType = _ref.postType, taxonomies = _ref.taxonomies, _ref$taxonomyWrapper = _ref.taxonomyWrapper, taxonomyWrapper = _ref$taxonomyWrapper === void 0 ? external_this_lodash_["identity"] : _ref$taxonomyWrapper; var availableTaxonomies = Object(external_this_lodash_["filter"])(taxonomies, function (taxonomy) { return Object(external_this_lodash_["includes"])(taxonomy.types, postType); }); var visibleTaxonomies = Object(external_this_lodash_["filter"])(availableTaxonomies, function (taxonomy) { return taxonomy.visibility.show_ui; }); return visibleTaxonomies.map(function (taxonomy) { var TaxonomyComponent = taxonomy.hierarchical ? hierarchical_term_selector : flat_term_selector; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], { key: "taxonomy-".concat(taxonomy.slug) }, taxonomyWrapper(Object(external_this_wp_element_["createElement"])(TaxonomyComponent, { slug: taxonomy.slug }), taxonomy)); }); } /* harmony default export */ var post_taxonomies = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { postType: select('core/editor').getCurrentPostType(), taxonomies: select('core').getTaxonomies({ per_page: -1 }) }; })])(PostTaxonomies)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-taxonomies/check.js /** * External dependencies */ /** * WordPress dependencies */ function PostTaxonomiesCheck(_ref) { var postType = _ref.postType, taxonomies = _ref.taxonomies, children = _ref.children; var hasTaxonomies = Object(external_this_lodash_["some"])(taxonomies, function (taxonomy) { return Object(external_this_lodash_["includes"])(taxonomy.types, postType); }); if (!hasTaxonomies) { return null; } return children; } /* harmony default export */ var post_taxonomies_check = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { return { postType: select('core/editor').getCurrentPostType(), taxonomies: select('core').getTaxonomies({ per_page: -1 }) }; })])(PostTaxonomiesCheck)); // EXTERNAL MODULE: ./node_modules/react-autosize-textarea/lib/index.js var lib = __webpack_require__("O6Fj"); var lib_default = /*#__PURE__*/__webpack_require__.n(lib); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-text-editor/index.js /** * External dependencies */ /** * WordPress dependencies */ var post_text_editor_PostTextEditor = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostTextEditor, _Component); function PostTextEditor() { var _this; Object(classCallCheck["a" /* default */])(this, PostTextEditor); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostTextEditor).apply(this, arguments)); _this.edit = _this.edit.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.stopEditing = _this.stopEditing.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = {}; return _this; } Object(createClass["a" /* default */])(PostTextEditor, [{ key: "edit", /** * Handles a textarea change event to notify the onChange prop callback and * reflect the new value in the component's own state. This marks the start * of the user's edits, if not already changed, preventing future props * changes to value from replacing the rendered value. This is expected to * be followed by a reset to dirty state via `stopEditing`. * * @see stopEditing * * @param {Event} event Change event. */ value: function edit(event) { var value = event.target.value; this.props.onChange(value); this.setState({ value: value, isDirty: true }); } /** * Function called when the user has completed their edits, responsible for * ensuring that changes, if made, are surfaced to the onPersist prop * callback and resetting dirty state. */ }, { key: "stopEditing", value: function stopEditing() { if (this.state.isDirty) { this.props.onPersist(this.state.value); this.setState({ isDirty: false }); } } }, { key: "render", value: function render() { var value = this.state.value; var instanceId = this.props.instanceId; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("label", { htmlFor: "post-content-".concat(instanceId), className: "screen-reader-text" }, Object(external_this_wp_i18n_["__"])('Type text or HTML')), Object(external_this_wp_element_["createElement"])(lib_default.a, { autoComplete: "off", dir: "auto", value: value, onChange: this.edit, onBlur: this.stopEditing, className: "editor-post-text-editor", id: "post-content-".concat(instanceId), placeholder: Object(external_this_wp_i18n_["__"])('Start writing with text or HTML') })); } }], [{ key: "getDerivedStateFromProps", value: function getDerivedStateFromProps(props, state) { if (state.isDirty) { return null; } return { value: props.value, isDirty: false }; } }]); return PostTextEditor; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_text_editor = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostContent = _select.getEditedPostContent; return { value: getEditedPostContent() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost, resetEditorBlocks = _dispatch.resetEditorBlocks; return { onChange: function onChange(content) { editPost({ content: content }); }, onPersist: function onPersist(content) { var blocks = Object(external_this_wp_blocks_["parse"])(content); resetEditorBlocks(blocks); } }; }), external_this_wp_compose_["withInstanceId"]])(post_text_editor_PostTextEditor)); // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link.js var library_link = __webpack_require__("Bpkj"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-permalink/editor.js /** * WordPress dependencies */ /** * Internal dependencies */ var editor_PostPermalinkEditor = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPermalinkEditor, _Component); function PostPermalinkEditor(_ref) { var _this; var permalinkParts = _ref.permalinkParts, slug = _ref.slug; Object(classCallCheck["a" /* default */])(this, PostPermalinkEditor); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPermalinkEditor).apply(this, arguments)); _this.state = { editedPostName: slug || permalinkParts.postName }; _this.onSavePermalink = _this.onSavePermalink.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(PostPermalinkEditor, [{ key: "onSavePermalink", value: function onSavePermalink(event) { var postName = cleanForSlug(this.state.editedPostName); event.preventDefault(); this.props.onSave(); if (postName === this.props.postName) { return; } this.props.editPost({ slug: postName }); this.setState({ editedPostName: postName }); } }, { key: "render", value: function render() { var _this2 = this; var _this$props$permalink = this.props.permalinkParts, prefix = _this$props$permalink.prefix, suffix = _this$props$permalink.suffix; var editedPostName = this.state.editedPostName; /* eslint-disable jsx-a11y/no-autofocus */ // Autofocus is allowed here, as this mini-UI is only loaded when the user clicks to open it. return Object(external_this_wp_element_["createElement"])("form", { className: "editor-post-permalink-editor", onSubmit: this.onSavePermalink }, Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-permalink__editor-container" }, Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-permalink-editor__prefix" }, prefix), Object(external_this_wp_element_["createElement"])("input", { className: "editor-post-permalink-editor__edit", "aria-label": Object(external_this_wp_i18n_["__"])('Edit post permalink'), value: editedPostName, onChange: function onChange(event) { return _this2.setState({ editedPostName: event.target.value }); }, type: "text", autoFocus: true }), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-permalink-editor__suffix" }, suffix), "\u200E"), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-permalink-editor__save", isSecondary: true, onClick: this.onSavePermalink }, Object(external_this_wp_i18n_["__"])('Save'))); /* eslint-enable jsx-a11y/no-autofocus */ } }]); return PostPermalinkEditor; }(external_this_wp_element_["Component"]); /* harmony default export */ var editor = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getPermalinkParts = _select.getPermalinkParts; return { permalinkParts: getPermalinkParts() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), editPost = _dispatch.editPost; return { editPost: editPost }; })])(editor_PostPermalinkEditor)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-permalink/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var post_permalink_PostPermalink = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostPermalink, _Component); function PostPermalink() { var _this; Object(classCallCheck["a" /* default */])(this, PostPermalink); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostPermalink).apply(this, arguments)); _this.addVisibilityCheck = _this.addVisibilityCheck.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onVisibilityChange = _this.onVisibilityChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { isCopied: false, isEditingPermalink: false }; return _this; } Object(createClass["a" /* default */])(PostPermalink, [{ key: "addVisibilityCheck", value: function addVisibilityCheck() { window.addEventListener('visibilitychange', this.onVisibilityChange); } }, { key: "onVisibilityChange", value: function onVisibilityChange() { var _this$props = this.props, isEditable = _this$props.isEditable, refreshPost = _this$props.refreshPost; // If the user just returned after having clicked the "Change Permalinks" button, // fetch a new copy of the post from the server, just in case they enabled permalinks. if (!isEditable && 'visible' === document.visibilityState) { refreshPost(); } } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps, prevState) { // If we've just stopped editing the permalink, focus on the new permalink. if (prevState.isEditingPermalink && !this.state.isEditingPermalink) { this.linkElement.focus(); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { window.removeEventListener('visibilitychange', this.addVisibilityCheck); } }, { key: "render", value: function render() { var _this2 = this; var _this$props2 = this.props, isEditable = _this$props2.isEditable, isNew = _this$props2.isNew, isPublished = _this$props2.isPublished, isViewable = _this$props2.isViewable, permalinkParts = _this$props2.permalinkParts, postLink = _this$props2.postLink, postSlug = _this$props2.postSlug, postID = _this$props2.postID, postTitle = _this$props2.postTitle; if (isNew || !isViewable || !permalinkParts || !postLink) { return null; } var _this$state = this.state, isCopied = _this$state.isCopied, isEditingPermalink = _this$state.isEditingPermalink; var ariaLabel = isCopied ? Object(external_this_wp_i18n_["__"])('Permalink copied') : Object(external_this_wp_i18n_["__"])('Copy the permalink'); var prefix = permalinkParts.prefix, suffix = permalinkParts.suffix; var slug = Object(external_this_wp_url_["safeDecodeURIComponent"])(postSlug) || cleanForSlug(postTitle) || postID; var samplePermalink = isEditable ? prefix + slug + suffix : prefix; return Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-permalink" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ClipboardButton"], { className: classnames_default()('editor-post-permalink__copy', { 'is-copied': isCopied }), text: samplePermalink, label: ariaLabel, onCopy: function onCopy() { return _this2.setState({ isCopied: true }); }, "aria-disabled": isCopied, icon: library_link["a" /* default */] }), Object(external_this_wp_element_["createElement"])("span", { className: "editor-post-permalink__label" }, Object(external_this_wp_i18n_["__"])('Permalink:')), !isEditingPermalink && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["ExternalLink"], { className: "editor-post-permalink__link", href: !isPublished ? postLink : samplePermalink, target: "_blank", ref: function ref(linkElement) { return _this2.linkElement = linkElement; } }, Object(external_this_wp_url_["safeDecodeURI"])(samplePermalink), "\u200E"), isEditingPermalink && Object(external_this_wp_element_["createElement"])(editor, { slug: slug, onSave: function onSave() { return _this2.setState({ isEditingPermalink: false }); } }), isEditable && !isEditingPermalink && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-permalink__edit", isSecondary: true, onClick: function onClick() { return _this2.setState({ isEditingPermalink: true }); } }, Object(external_this_wp_i18n_["__"])('Edit'))); } }]); return PostPermalink; }(external_this_wp_element_["Component"]); /* harmony default export */ var post_permalink = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isEditedPostNew = _select.isEditedPostNew, isPermalinkEditable = _select.isPermalinkEditable, getCurrentPost = _select.getCurrentPost, getPermalinkParts = _select.getPermalinkParts, getEditedPostAttribute = _select.getEditedPostAttribute, isCurrentPostPublished = _select.isCurrentPostPublished; var _select2 = select('core'), getPostType = _select2.getPostType; var _getCurrentPost = getCurrentPost(), id = _getCurrentPost.id, link = _getCurrentPost.link; var postTypeName = getEditedPostAttribute('type'); var postType = getPostType(postTypeName); return { isNew: isEditedPostNew(), postLink: link, permalinkParts: getPermalinkParts(), postSlug: getEditedPostAttribute('slug'), isEditable: isPermalinkEditable(), isPublished: isCurrentPostPublished(), postTitle: getEditedPostAttribute('title'), postID: id, isViewable: Object(external_this_lodash_["get"])(postType, ['viewable'], false) }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), refreshPost = _dispatch.refreshPost; return { refreshPost: refreshPost }; })])(post_permalink_PostPermalink)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-title/index.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Constants */ var REGEXP_NEWLINES = /[\r\n]+/g; var post_title_PostTitle = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(PostTitle, _Component); function PostTitle() { var _this; Object(classCallCheck["a" /* default */])(this, PostTitle); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PostTitle).apply(this, arguments)); _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onSelect = _this.onSelect.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onUnselect = _this.onUnselect.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this)); _this.state = { isSelected: false }; return _this; } Object(createClass["a" /* default */])(PostTitle, [{ key: "handleFocusOutside", value: function handleFocusOutside() { this.onUnselect(); } }, { key: "onSelect", value: function onSelect() { this.setState({ isSelected: true }); this.props.clearSelectedBlock(); } }, { key: "onUnselect", value: function onUnselect() { this.setState({ isSelected: false }); } }, { key: "onChange", value: function onChange(event) { var newTitle = event.target.value.replace(REGEXP_NEWLINES, ' '); this.props.onUpdate(newTitle); } }, { key: "onKeyDown", value: function onKeyDown(event) { if (event.keyCode === external_this_wp_keycodes_["ENTER"]) { event.preventDefault(); this.props.onEnterPress(); } } }, { key: "render", value: function render() { var _this$props = this.props, hasFixedToolbar = _this$props.hasFixedToolbar, isCleanNewPost = _this$props.isCleanNewPost, isFocusMode = _this$props.isFocusMode, isPostTypeViewable = _this$props.isPostTypeViewable, instanceId = _this$props.instanceId, placeholder = _this$props.placeholder, title = _this$props.title; var isSelected = this.state.isSelected; // The wp-block className is important for editor styles. var className = classnames_default()('wp-block editor-post-title__block', { 'is-selected': isSelected, 'is-focus-mode': isFocusMode, 'has-fixed-toolbar': hasFixedToolbar }); var decodedPlaceholder = Object(external_this_wp_htmlEntities_["decodeEntities"])(placeholder); return Object(external_this_wp_element_["createElement"])(post_type_support_check, { supportKeys: "title" }, Object(external_this_wp_element_["createElement"])("div", { className: "editor-post-title" }, Object(external_this_wp_element_["createElement"])("div", { className: className }, Object(external_this_wp_element_["createElement"])("div", null, Object(external_this_wp_element_["createElement"])("label", { htmlFor: "post-title-".concat(instanceId), className: "screen-reader-text" }, decodedPlaceholder || Object(external_this_wp_i18n_["__"])('Add title')), Object(external_this_wp_element_["createElement"])(lib_default.a, { id: "post-title-".concat(instanceId), className: "editor-post-title__input", value: title, onChange: this.onChange, placeholder: decodedPlaceholder || Object(external_this_wp_i18n_["__"])('Add title'), onFocus: this.onSelect, onKeyDown: this.onKeyDown, onKeyPress: this.onUnselect /* Only autofocus the title when the post is entirely empty. This should only happen for a new post, which means we focus the title on new post so the author can start typing right away, without needing to click anything. */ /* eslint-disable jsx-a11y/no-autofocus */ , autoFocus: document.body === document.activeElement && isCleanNewPost /* eslint-enable jsx-a11y/no-autofocus */ })), isSelected && isPostTypeViewable && Object(external_this_wp_element_["createElement"])(post_permalink, null)))); } }]); return PostTitle; }(external_this_wp_element_["Component"]); var post_title_applyWithSelect = Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getEditedPostAttribute = _select.getEditedPostAttribute, isCleanNewPost = _select.isCleanNewPost; var _select2 = select('core/block-editor'), getSettings = _select2.getSettings; var _select3 = select('core'), getPostType = _select3.getPostType; var postType = getPostType(getEditedPostAttribute('type')); var _getSettings = getSettings(), titlePlaceholder = _getSettings.titlePlaceholder, focusMode = _getSettings.focusMode, hasFixedToolbar = _getSettings.hasFixedToolbar; return { isCleanNewPost: isCleanNewPost(), title: getEditedPostAttribute('title'), isPostTypeViewable: Object(external_this_lodash_["get"])(postType, ['viewable'], false), placeholder: titlePlaceholder, isFocusMode: focusMode, hasFixedToolbar: hasFixedToolbar }; }); var post_title_applyWithDispatch = Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/block-editor'), insertDefaultBlock = _dispatch.insertDefaultBlock, clearSelectedBlock = _dispatch.clearSelectedBlock; var _dispatch2 = dispatch('core/editor'), editPost = _dispatch2.editPost; return { onEnterPress: function onEnterPress() { insertDefaultBlock(undefined, undefined, 0); }, onUpdate: function onUpdate(title) { editPost({ title: title }); }, clearSelectedBlock: clearSelectedBlock }; }); /* harmony default export */ var post_title = (Object(external_this_wp_compose_["compose"])(post_title_applyWithSelect, post_title_applyWithDispatch, external_this_wp_compose_["withInstanceId"], external_this_wp_components_["withFocusOutside"])(post_title_PostTitle)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-trash/index.js /** * WordPress dependencies */ function PostTrash(_ref) { var isNew = _ref.isNew, postId = _ref.postId, postType = _ref.postType, props = Object(objectWithoutProperties["a" /* default */])(_ref, ["isNew", "postId", "postType"]); if (isNew || !postId) { return null; } var onClick = function onClick() { return props.trashPost(postId, postType); }; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { className: "editor-post-trash is-link", onClick: onClick }, Object(external_this_wp_i18n_["__"])('Move to Trash')); } /* harmony default export */ var post_trash = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isEditedPostNew = _select.isEditedPostNew, getCurrentPostId = _select.getCurrentPostId, getCurrentPostType = _select.getCurrentPostType; return { isNew: isEditedPostNew(), postId: getCurrentPostId(), postType: getCurrentPostType() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { return { trashPost: dispatch('core/editor').trashPost }; })])(PostTrash)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-trash/check.js /** * WordPress dependencies */ function PostTrashCheck(_ref) { var isNew = _ref.isNew, postId = _ref.postId, children = _ref.children; if (isNew || !postId) { return null; } return children; } /* harmony default export */ var post_trash_check = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), isEditedPostNew = _select.isEditedPostNew, getCurrentPostId = _select.getCurrentPostId; return { isNew: isEditedPostNew(), postId: getCurrentPostId() }; })(PostTrashCheck)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/post-visibility/check.js /** * External dependencies */ /** * WordPress dependencies */ function PostVisibilityCheck(_ref) { var hasPublishAction = _ref.hasPublishAction, render = _ref.render; var canEdit = hasPublishAction; return render({ canEdit: canEdit }); } /* harmony default export */ var post_visibility_check = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), getCurrentPost = _select.getCurrentPost, getCurrentPostType = _select.getCurrentPostType; return { hasPublishAction: Object(external_this_lodash_["get"])(getCurrentPost(), ['_links', 'wp:action-publish'], false), postType: getCurrentPostType() }; })])(PostVisibilityCheck)); // EXTERNAL MODULE: external {"this":["wp","wordcount"]} var external_this_wp_wordcount_ = __webpack_require__("7fqt"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/word-count/index.js /** * WordPress dependencies */ function WordCount(_ref) { var content = _ref.content; /* * translators: If your word count is based on single characters (e.g. East Asian characters), * enter 'characters_excluding_spaces' or 'characters_including_spaces'. Otherwise, enter 'words'. * Do not translate into your own language. */ var wordCountType = Object(external_this_wp_i18n_["_x"])('words', 'Word count type. Do not translate!'); return Object(external_this_wp_element_["createElement"])("span", { className: "word-count" }, Object(external_this_wp_wordcount_["count"])(content, wordCountType)); } /* harmony default export */ var word_count = (Object(external_this_wp_data_["withSelect"])(function (select) { return { content: select('core/editor').getEditedPostAttribute('content') }; })(WordCount)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/table-of-contents/panel.js /** * WordPress dependencies */ /** * Internal dependencies */ function TableOfContentsPanel(_ref) { var headingCount = _ref.headingCount, paragraphCount = _ref.paragraphCount, numberOfBlocks = _ref.numberOfBlocks, hasOutlineItemsDisabled = _ref.hasOutlineItemsDisabled, onRequestClose = _ref.onRequestClose; return ( /* * Disable reason: The `list` ARIA role is redundant but * Safari+VoiceOver won't announce the list otherwise. */ /* eslint-disable jsx-a11y/no-redundant-roles */ Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("div", { className: "table-of-contents__wrapper", role: "note", "aria-label": Object(external_this_wp_i18n_["__"])('Document Statistics'), tabIndex: "0" }, Object(external_this_wp_element_["createElement"])("ul", { role: "list", className: "table-of-contents__counts" }, Object(external_this_wp_element_["createElement"])("li", { className: "table-of-contents__count" }, Object(external_this_wp_i18n_["__"])('Words'), Object(external_this_wp_element_["createElement"])(word_count, null)), Object(external_this_wp_element_["createElement"])("li", { className: "table-of-contents__count" }, Object(external_this_wp_i18n_["__"])('Headings'), Object(external_this_wp_element_["createElement"])("span", { className: "table-of-contents__number" }, headingCount)), Object(external_this_wp_element_["createElement"])("li", { className: "table-of-contents__count" }, Object(external_this_wp_i18n_["__"])('Paragraphs'), Object(external_this_wp_element_["createElement"])("span", { className: "table-of-contents__number" }, paragraphCount)), Object(external_this_wp_element_["createElement"])("li", { className: "table-of-contents__count" }, Object(external_this_wp_i18n_["__"])('Blocks'), Object(external_this_wp_element_["createElement"])("span", { className: "table-of-contents__number" }, numberOfBlocks)))), headingCount > 0 && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("hr", null), Object(external_this_wp_element_["createElement"])("h2", { className: "table-of-contents__title" }, Object(external_this_wp_i18n_["__"])('Document Outline')), Object(external_this_wp_element_["createElement"])(document_outline, { onSelect: onRequestClose, hasOutlineItemsDisabled: hasOutlineItemsDisabled }))) /* eslint-enable jsx-a11y/no-redundant-roles */ ); } /* harmony default export */ var panel = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getGlobalBlockCount = _select.getGlobalBlockCount; return { headingCount: getGlobalBlockCount('core/heading'), paragraphCount: getGlobalBlockCount('core/paragraph'), numberOfBlocks: getGlobalBlockCount() }; })(TableOfContentsPanel)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/table-of-contents/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function TableOfContents(_ref) { var hasBlocks = _ref.hasBlocks, hasOutlineItemsDisabled = _ref.hasOutlineItemsDisabled; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Dropdown"], { position: "bottom", className: "table-of-contents", contentClassName: "table-of-contents__popover", renderToggle: function renderToggle(_ref2) { var isOpen = _ref2.isOpen, onToggle = _ref2.onToggle; return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Button"], { onClick: hasBlocks ? onToggle : undefined, icon: "info-outline", "aria-expanded": isOpen, label: Object(external_this_wp_i18n_["__"])('Content structure'), tooltipPosition: "bottom", "aria-disabled": !hasBlocks }); }, renderContent: function renderContent(_ref3) { var onClose = _ref3.onClose; return Object(external_this_wp_element_["createElement"])(panel, { onRequestClose: onClose, hasOutlineItemsDisabled: hasOutlineItemsDisabled }); } }); } /* harmony default export */ var table_of_contents = (Object(external_this_wp_data_["withSelect"])(function (select) { return { hasBlocks: !!select('core/block-editor').getBlockCount() }; })(TableOfContents)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/unsaved-changes-warning/index.js /** * WordPress dependencies */ var unsaved_changes_warning_UnsavedChangesWarning = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(UnsavedChangesWarning, _Component); function UnsavedChangesWarning() { var _this; Object(classCallCheck["a" /* default */])(this, UnsavedChangesWarning); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(UnsavedChangesWarning).apply(this, arguments)); _this.warnIfUnsavedChanges = _this.warnIfUnsavedChanges.bind(Object(assertThisInitialized["a" /* default */])(_this)); return _this; } Object(createClass["a" /* default */])(UnsavedChangesWarning, [{ key: "componentDidMount", value: function componentDidMount() { window.addEventListener('beforeunload', this.warnIfUnsavedChanges); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { window.removeEventListener('beforeunload', this.warnIfUnsavedChanges); } /** * Warns the user if there are unsaved changes before leaving the editor. * * @param {Event} event `beforeunload` event. * * @return {?string} Warning prompt message, if unsaved changes exist. */ }, { key: "warnIfUnsavedChanges", value: function warnIfUnsavedChanges(event) { var isEditedPostDirty = this.props.isEditedPostDirty; if (isEditedPostDirty()) { event.returnValue = Object(external_this_wp_i18n_["__"])('You have unsaved changes. If you proceed, they will be lost.'); return event.returnValue; } } }, { key: "render", value: function render() { return null; } }]); return UnsavedChangesWarning; }(external_this_wp_element_["Component"]); /* harmony default export */ var unsaved_changes_warning = (Object(external_this_wp_data_["withSelect"])(function (select) { return { // We need to call the selector directly in the listener to avoid race // conditions with `BrowserURL` where `componentDidUpdate` gets the // new value of `isEditedPostDirty` before this component does, // causing this component to incorrectly think a trashed post is still dirty. isEditedPostDirty: select('core/editor').isEditedPostDirty }; })(unsaved_changes_warning_UnsavedChangesWarning)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/provider/with-registry-provider.js /** * WordPress dependencies */ /** * Internal dependencies */ var withRegistryProvider = Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) { return Object(external_this_wp_data_["withRegistry"])(function (props) { var _props$useSubRegistry = props.useSubRegistry, useSubRegistry = _props$useSubRegistry === void 0 ? true : _props$useSubRegistry, registry = props.registry, additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["useSubRegistry", "registry"]); if (!useSubRegistry) { return Object(external_this_wp_element_["createElement"])(WrappedComponent, additionalProps); } var _useState = Object(external_this_wp_element_["useState"])(null), _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2), subRegistry = _useState2[0], setSubRegistry = _useState2[1]; Object(external_this_wp_element_["useEffect"])(function () { var newRegistry = Object(external_this_wp_data_["createRegistry"])({ 'core/block-editor': external_this_wp_blockEditor_["storeConfig"] }, registry); var store = newRegistry.registerStore('core/editor', storeConfig); // This should be removed after the refactoring of the effects to controls. middlewares(store); setSubRegistry(newRegistry); }, [registry]); if (!subRegistry) { return null; } return Object(external_this_wp_element_["createElement"])(external_this_wp_data_["RegistryProvider"], { value: subRegistry }, Object(external_this_wp_element_["createElement"])(WrappedComponent, additionalProps)); }); }, 'withRegistryProvider'); /* harmony default export */ var with_registry_provider = (withRegistryProvider); // EXTERNAL MODULE: external {"this":["wp","mediaUtils"]} var external_this_wp_mediaUtils_ = __webpack_require__("6aBm"); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/utils/media-upload/index.js function media_upload_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function media_upload_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { media_upload_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { media_upload_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Upload a media file when the file upload button is activated. * Wrapper around mediaUpload() that injects the current post ID. * * @param {Object} $0 Parameters object passed to the function. * @param {?Object} $0.additionalData Additional data to include in the request. * @param {string} $0.allowedTypes Array with the types of media that can be uploaded, if unset all types are allowed. * @param {Array} $0.filesList List of files. * @param {?number} $0.maxUploadFileSize Maximum upload size in bytes allowed for the site. * @param {Function} $0.onError Function called when an error happens. * @param {Function} $0.onFileChange Function called each time a file or a temporary representation of the file is available. */ /* harmony default export */ var media_upload = (function (_ref) { var _ref$additionalData = _ref.additionalData, additionalData = _ref$additionalData === void 0 ? {} : _ref$additionalData, allowedTypes = _ref.allowedTypes, filesList = _ref.filesList, maxUploadFileSize = _ref.maxUploadFileSize, _ref$onError = _ref.onError, _onError = _ref$onError === void 0 ? external_this_lodash_["noop"] : _ref$onError, onFileChange = _ref.onFileChange; var _select = Object(external_this_wp_data_["select"])('core/editor'), getCurrentPostId = _select.getCurrentPostId, getEditorSettings = _select.getEditorSettings; var wpAllowedMimeTypes = getEditorSettings().allowedMimeTypes; maxUploadFileSize = maxUploadFileSize || getEditorSettings().maxUploadFileSize; Object(external_this_wp_mediaUtils_["uploadMedia"])({ allowedTypes: allowedTypes, filesList: filesList, onFileChange: onFileChange, additionalData: media_upload_objectSpread({ post: getCurrentPostId() }, additionalData), maxUploadFileSize: maxUploadFileSize, onError: function onError(_ref2) { var message = _ref2.message; return _onError(message); }, wpAllowedMimeTypes: wpAllowedMimeTypes }); }); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/utils/index.js /** * Internal dependencies */ // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/reusable-blocks-buttons/reusable-block-convert-button.js /** * External dependencies */ /** * WordPress dependencies */ function ReusableBlockConvertButton(_ref) { var isVisible = _ref.isVisible, isReusable = _ref.isReusable, onConvertToStatic = _ref.onConvertToStatic, onConvertToReusable = _ref.onConvertToReusable; if (!isVisible) { return null; } return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, !isReusable && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["MenuItem"], { icon: "controls-repeat", onClick: onConvertToReusable }, Object(external_this_wp_i18n_["__"])('Add to Reusable blocks')), isReusable && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["MenuItem"], { icon: "controls-repeat", onClick: onConvertToStatic }, Object(external_this_wp_i18n_["__"])('Convert to Regular Block'))); } /* harmony default export */ var reusable_block_convert_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var clientIds = _ref2.clientIds; var _select = select('core/block-editor'), getBlocksByClientId = _select.getBlocksByClientId, canInsertBlockType = _select.canInsertBlockType; var _select2 = select('core/editor'), getReusableBlock = _select2.__experimentalGetReusableBlock; var _select3 = select('core'), canUser = _select3.canUser; var blocks = getBlocksByClientId(clientIds); var isReusable = blocks.length === 1 && blocks[0] && Object(external_this_wp_blocks_["isReusableBlock"])(blocks[0]) && !!getReusableBlock(blocks[0].attributes.ref); // Show 'Convert to Regular Block' when selected block is a reusable block var isVisible = isReusable || // Hide 'Add to Reusable blocks' when reusable blocks are disabled canInsertBlockType('core/block') && Object(external_this_lodash_["every"])(blocks, function (block) { return (// Guard against the case where a regular block has *just* been converted !!block && // Hide 'Add to Reusable blocks' on invalid blocks block.isValid && // Hide 'Add to Reusable blocks' when block doesn't support being made reusable Object(external_this_wp_blocks_["hasBlockSupport"])(block.name, 'reusable', true) ); }) && // Hide 'Add to Reusable blocks' when current doesn't have permission to do that !!canUser('create', 'blocks'); return { isReusable: isReusable, isVisible: isVisible }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref3) { var clientIds = _ref3.clientIds, _ref3$onToggle = _ref3.onToggle, onToggle = _ref3$onToggle === void 0 ? external_this_lodash_["noop"] : _ref3$onToggle; var _dispatch = dispatch('core/editor'), convertBlockToReusable = _dispatch.__experimentalConvertBlockToReusable, convertBlockToStatic = _dispatch.__experimentalConvertBlockToStatic; return { onConvertToStatic: function onConvertToStatic() { if (clientIds.length !== 1) { return; } convertBlockToStatic(clientIds[0]); onToggle(); }, onConvertToReusable: function onConvertToReusable() { convertBlockToReusable(clientIds); onToggle(); } }; })])(ReusableBlockConvertButton)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/reusable-blocks-buttons/reusable-block-delete-button.js /** * External dependencies */ /** * WordPress dependencies */ function ReusableBlockDeleteButton(_ref) { var isVisible = _ref.isVisible, isDisabled = _ref.isDisabled, onDelete = _ref.onDelete; if (!isVisible) { return null; } return Object(external_this_wp_element_["createElement"])(external_this_wp_components_["MenuItem"], { icon: library_close["a" /* default */], disabled: isDisabled, onClick: function onClick() { return onDelete(); } }, Object(external_this_wp_i18n_["__"])('Remove from Reusable blocks')); } /* harmony default export */ var reusable_block_delete_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var clientId = _ref2.clientId; var _select = select('core/block-editor'), getBlock = _select.getBlock; var _select2 = select('core'), canUser = _select2.canUser; var _select3 = select('core/editor'), getReusableBlock = _select3.__experimentalGetReusableBlock; var block = getBlock(clientId); var reusableBlock = block && Object(external_this_wp_blocks_["isReusableBlock"])(block) ? getReusableBlock(block.attributes.ref) : null; return { isVisible: !!reusableBlock && !!canUser('delete', 'blocks', reusableBlock.id), isDisabled: reusableBlock && reusableBlock.isTemporary }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref3, _ref4) { var clientId = _ref3.clientId, _ref3$onToggle = _ref3.onToggle, onToggle = _ref3$onToggle === void 0 ? external_this_lodash_["noop"] : _ref3$onToggle; var select = _ref4.select; var _dispatch = dispatch('core/editor'), deleteReusableBlock = _dispatch.__experimentalDeleteReusableBlock; var _select4 = select('core/block-editor'), getBlock = _select4.getBlock; return { onDelete: function onDelete() { // TODO: Make this a component or similar // eslint-disable-next-line no-alert var hasConfirmed = window.confirm(Object(external_this_wp_i18n_["__"])('Are you sure you want to delete this Reusable Block?\n\n' + 'It will be permanently removed from all posts and pages that use it.')); if (hasConfirmed) { var block = getBlock(clientId); deleteReusableBlock(block.attributes.ref); onToggle(); } } }; })])(ReusableBlockDeleteButton)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/reusable-blocks-buttons/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function ReusableBlocksButtons(_ref) { var clientIds = _ref.clientIds; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalBlockSettingsMenuPluginsExtension"], null, function (_ref2) { var onClose = _ref2.onClose; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(reusable_block_convert_button, { clientIds: clientIds, onToggle: onClose }), clientIds.length === 1 && Object(external_this_wp_element_["createElement"])(reusable_block_delete_button, { clientId: clientIds[0], onToggle: onClose })); }); } /* harmony default export */ var reusable_blocks_buttons = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getSelectedBlockClientIds = _select.getSelectedBlockClientIds; return { clientIds: getSelectedBlockClientIds() }; })(ReusableBlocksButtons)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/convert-to-group-buttons/icons.js /** * WordPress dependencies */ var GroupSVG = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "20", height: "20", viewBox: "0 0 20 20", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M8 5a1 1 0 0 0-1 1v3H6a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-3h1a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1H8zm3 6H7v2h4v-2zM9 9V7h4v2H9z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M1 3a2 2 0 0 0 1 1.732v10.536A2 2 0 1 0 4.732 18h10.536A2 2 0 1 0 18 15.268V4.732A2 2 0 1 0 15.268 2H4.732A2 2 0 0 0 1 3zm14.268 1H4.732A2.01 2.01 0 0 1 4 4.732v10.536c.304.175.557.428.732.732h10.536a2.01 2.01 0 0 1 .732-.732V4.732A2.01 2.01 0 0 1 15.268 4z" })); var Group = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Icon"], { icon: GroupSVG }); var UngroupSVG = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["SVG"], { width: "20", height: "20", viewBox: "0 0 20 20", xmlns: "http://www.w3.org/2000/svg" }, Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M9 2H15C16.1 2 17 2.9 17 4V7C17 8.1 16.1 9 15 9H9C7.9 9 7 8.1 7 7V4C7 2.9 7.9 2 9 2ZM9 7H15V4H9V7Z" }), Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Path"], { fillRule: "evenodd", clipRule: "evenodd", d: "M5 11H11C12.1 11 13 11.9 13 13V16C13 17.1 12.1 18 11 18H5C3.9 18 3 17.1 3 16V13C3 11.9 3.9 11 5 11ZM5 16H11V13H5V16Z" })); var Ungroup = Object(external_this_wp_element_["createElement"])(external_this_wp_components_["Icon"], { icon: UngroupSVG }); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/convert-to-group-buttons/convert-button.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function ConvertToGroupButton(_ref) { var onConvertToGroup = _ref.onConvertToGroup, onConvertFromGroup = _ref.onConvertFromGroup, _ref$isGroupable = _ref.isGroupable, isGroupable = _ref$isGroupable === void 0 ? false : _ref$isGroupable, _ref$isUngroupable = _ref.isUngroupable, isUngroupable = _ref$isUngroupable === void 0 ? false : _ref$isUngroupable; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, isGroupable && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["MenuItem"], { icon: Group, onClick: onConvertToGroup }, Object(external_this_wp_i18n_["_x"])('Group', 'verb')), isUngroupable && Object(external_this_wp_element_["createElement"])(external_this_wp_components_["MenuItem"], { icon: Ungroup, onClick: onConvertFromGroup }, Object(external_this_wp_i18n_["_x"])('Ungroup', 'Ungrouping blocks from within a Group block back into individual blocks within the Editor '))); } /* harmony default export */ var convert_button = (Object(external_this_wp_compose_["compose"])([Object(external_this_wp_data_["withSelect"])(function (select, _ref2) { var clientIds = _ref2.clientIds; var _select = select('core/block-editor'), getBlockRootClientId = _select.getBlockRootClientId, getBlocksByClientId = _select.getBlocksByClientId, canInsertBlockType = _select.canInsertBlockType; var _select2 = select('core/blocks'), getGroupingBlockName = _select2.getGroupingBlockName; var groupingBlockName = getGroupingBlockName(); var rootClientId = clientIds && clientIds.length > 0 ? getBlockRootClientId(clientIds[0]) : undefined; var groupingBlockAvailable = canInsertBlockType(groupingBlockName, rootClientId); var blocksSelection = getBlocksByClientId(clientIds); var isSingleGroupingBlock = blocksSelection.length === 1 && blocksSelection[0] && blocksSelection[0].name === groupingBlockName; // Do we have // 1. Grouping block available to be inserted? // 2. One or more blocks selected // (we allow single Blocks to become groups unless // they are a soltiary group block themselves) var isGroupable = groupingBlockAvailable && blocksSelection.length && !isSingleGroupingBlock; // Do we have a single Group Block selected and does that group have inner blocks? var isUngroupable = isSingleGroupingBlock && !!blocksSelection[0].innerBlocks.length; return { isGroupable: isGroupable, isUngroupable: isUngroupable, blocksSelection: blocksSelection, groupingBlockName: groupingBlockName }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch, _ref3) { var clientIds = _ref3.clientIds, _ref3$onToggle = _ref3.onToggle, onToggle = _ref3$onToggle === void 0 ? external_this_lodash_["noop"] : _ref3$onToggle, _ref3$blocksSelection = _ref3.blocksSelection, blocksSelection = _ref3$blocksSelection === void 0 ? [] : _ref3$blocksSelection, groupingBlockName = _ref3.groupingBlockName; var _dispatch = dispatch('core/block-editor'), replaceBlocks = _dispatch.replaceBlocks; return { onConvertToGroup: function onConvertToGroup() { if (!blocksSelection.length) { return; } // Activate the `transform` on the Grouping Block which does the conversion var newBlocks = Object(external_this_wp_blocks_["switchToBlockType"])(blocksSelection, groupingBlockName); if (newBlocks) { replaceBlocks(clientIds, newBlocks); } onToggle(); }, onConvertFromGroup: function onConvertFromGroup() { if (!blocksSelection.length) { return; } var innerBlocks = blocksSelection[0].innerBlocks; if (!innerBlocks.length) { return; } replaceBlocks(clientIds, innerBlocks); onToggle(); } }; })])(ConvertToGroupButton)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/convert-to-group-buttons/index.js /** * WordPress dependencies */ /** * Internal dependencies */ function ConvertToGroupButtons(_ref) { var clientIds = _ref.clientIds; return Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["__experimentalBlockSettingsMenuPluginsExtension"], null, function (_ref2) { var onClose = _ref2.onClose; return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(convert_button, { clientIds: clientIds, onToggle: onClose })); }); } /* harmony default export */ var convert_to_group_buttons = (Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/block-editor'), getSelectedBlockClientIds = _select.getSelectedBlockClientIds; return { clientIds: getSelectedBlockClientIds() }; })(ConvertToGroupButtons)); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/provider/index.js function provider_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function provider_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { provider_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { provider_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ var fetchLinkSuggestions = /*#__PURE__*/ function () { var _ref = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(function _callee(search) { var _ref2, _ref2$perPage, perPage, posts, _args = arguments; return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _ref2 = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, _ref2$perPage = _ref2.perPage, perPage = _ref2$perPage === void 0 ? 20 : _ref2$perPage; _context.next = 3; return external_this_wp_apiFetch_default()({ path: Object(external_this_wp_url_["addQueryArgs"])('/wp/v2/search', { search: search, per_page: perPage, type: 'post' }) }); case 3: posts = _context.sent; return _context.abrupt("return", Object(external_this_lodash_["map"])(posts, function (post) { return { id: post.id, url: post.url, title: Object(external_this_wp_htmlEntities_["decodeEntities"])(post.title) || Object(external_this_wp_i18n_["__"])('(no title)'), type: post.subtype || post.type }; })); case 5: case "end": return _context.stop(); } } }, _callee); })); return function fetchLinkSuggestions(_x) { return _ref.apply(this, arguments); }; }(); var provider_EditorProvider = /*#__PURE__*/ function (_Component) { Object(inherits["a" /* default */])(EditorProvider, _Component); function EditorProvider(props) { var _this; Object(classCallCheck["a" /* default */])(this, EditorProvider); _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(EditorProvider).apply(this, arguments)); _this.getBlockEditorSettings = memize_default()(_this.getBlockEditorSettings, { maxSize: 1 }); // Assume that we don't need to initialize in the case of an error recovery. if (props.recovery) { return Object(possibleConstructorReturn["a" /* default */])(_this); } props.updatePostLock(props.settings.postLock); props.setupEditor(props.post, props.initialEdits, props.settings.template); if (props.settings.autosave) { props.createWarningNotice(Object(external_this_wp_i18n_["__"])('There is an autosave of this post that is more recent than the version below.'), { id: 'autosave-exists', actions: [{ label: Object(external_this_wp_i18n_["__"])('View the autosave'), url: props.settings.autosave.editLink }] }); } return _this; } Object(createClass["a" /* default */])(EditorProvider, [{ key: "getBlockEditorSettings", value: function getBlockEditorSettings(settings, reusableBlocks, __experimentalFetchReusableBlocks, hasUploadPermissions, canUserUseUnfilteredHTML, undo, shouldInsertAtTheTop) { return provider_objectSpread({}, Object(external_this_lodash_["pick"])(settings, ['alignWide', 'allowedBlockTypes', '__experimentalPreferredStyleVariations', 'availableLegacyWidgets', 'bodyPlaceholder', 'codeEditingEnabled', 'colors', 'disableCustomColors', 'disableCustomFontSizes', 'disableCustomGradients', 'focusMode', 'fontSizes', 'hasFixedToolbar', 'hasPermissionsToManageWidgets', 'imageSizes', 'imageDimensions', 'isRTL', 'maxWidth', 'styles', 'template', 'templateLock', 'titlePlaceholder', 'onUpdateDefaultBlockStyles', '__experimentalEnableLegacyWidgetBlock', '__experimentalBlockDirectory', '__experimentalEnableFullSiteEditing', '__experimentalEnableFullSiteEditingDemo', '__experimentalEnablePageTemplates', 'showInserterHelpPanel', 'gradients']), { mediaUpload: hasUploadPermissions ? media_upload : undefined, __experimentalReusableBlocks: reusableBlocks, __experimentalFetchReusableBlocks: __experimentalFetchReusableBlocks, __experimentalFetchLinkSuggestions: fetchLinkSuggestions, __experimentalCanUserUseUnfilteredHTML: canUserUseUnfilteredHTML, __experimentalUndo: undo, __experimentalShouldInsertAtTheTop: shouldInsertAtTheTop }); } }, { key: "componentDidMount", value: function componentDidMount() { this.props.updateEditorSettings(this.props.settings); if (!this.props.settings.styles) { return; } var updatedStyles = Object(external_this_wp_blockEditor_["transformStyles"])(this.props.settings.styles, '.editor-styles-wrapper'); Object(external_this_lodash_["map"])(updatedStyles, function (updatedCSS) { if (updatedCSS) { var node = document.createElement('style'); node.innerHTML = updatedCSS; document.body.appendChild(node); } }); } }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps) { if (this.props.settings !== prevProps.settings) { this.props.updateEditorSettings(this.props.settings); } } }, { key: "componentWillUnmount", value: function componentWillUnmount() { this.props.tearDownEditor(); } }, { key: "render", value: function render() { var _this$props = this.props, canUserUseUnfilteredHTML = _this$props.canUserUseUnfilteredHTML, children = _this$props.children, post = _this$props.post, blocks = _this$props.blocks, resetEditorBlocks = _this$props.resetEditorBlocks, selectionStart = _this$props.selectionStart, selectionEnd = _this$props.selectionEnd, isReady = _this$props.isReady, settings = _this$props.settings, reusableBlocks = _this$props.reusableBlocks, resetEditorBlocksWithoutUndoLevel = _this$props.resetEditorBlocksWithoutUndoLevel, hasUploadPermissions = _this$props.hasUploadPermissions, isPostTitleSelected = _this$props.isPostTitleSelected, __experimentalFetchReusableBlocks = _this$props.__experimentalFetchReusableBlocks, undo = _this$props.undo; if (!isReady) { return null; } var editorSettings = this.getBlockEditorSettings(settings, reusableBlocks, __experimentalFetchReusableBlocks, hasUploadPermissions, canUserUseUnfilteredHTML, undo, isPostTitleSelected); return Object(external_this_wp_element_["createElement"])(external_this_wp_coreData_["EntityProvider"], { kind: "root", type: "site" }, Object(external_this_wp_element_["createElement"])(external_this_wp_coreData_["EntityProvider"], { kind: "postType", type: post.type, id: post.id }, Object(external_this_wp_element_["createElement"])(external_this_wp_blockEditor_["BlockEditorProvider"], { value: blocks, onInput: resetEditorBlocksWithoutUndoLevel, onChange: resetEditorBlocks, selectionStart: selectionStart, selectionEnd: selectionEnd, settings: editorSettings, useSubRegistry: false }, children, Object(external_this_wp_element_["createElement"])(reusable_blocks_buttons, null), Object(external_this_wp_element_["createElement"])(convert_to_group_buttons, null)))); } }]); return EditorProvider; }(external_this_wp_element_["Component"]); /* harmony default export */ var provider = (Object(external_this_wp_compose_["compose"])([with_registry_provider, Object(external_this_wp_data_["withSelect"])(function (select) { var _select = select('core/editor'), canUserUseUnfilteredHTML = _select.canUserUseUnfilteredHTML, isEditorReady = _select.__unstableIsEditorReady, getEditorBlocks = _select.getEditorBlocks, getEditorSelectionStart = _select.getEditorSelectionStart, getEditorSelectionEnd = _select.getEditorSelectionEnd, __experimentalGetReusableBlocks = _select.__experimentalGetReusableBlocks, isPostTitleSelected = _select.isPostTitleSelected; var _select2 = select('core'), canUser = _select2.canUser; return { canUserUseUnfilteredHTML: canUserUseUnfilteredHTML(), isReady: isEditorReady(), blocks: getEditorBlocks(), selectionStart: getEditorSelectionStart(), selectionEnd: getEditorSelectionEnd(), reusableBlocks: __experimentalGetReusableBlocks(), hasUploadPermissions: Object(external_this_lodash_["defaultTo"])(canUser('create', 'media'), true), // This selector is only defined on mobile. isPostTitleSelected: isPostTitleSelected && isPostTitleSelected() }; }), Object(external_this_wp_data_["withDispatch"])(function (dispatch) { var _dispatch = dispatch('core/editor'), setupEditor = _dispatch.setupEditor, updatePostLock = _dispatch.updatePostLock, resetEditorBlocks = _dispatch.resetEditorBlocks, updateEditorSettings = _dispatch.updateEditorSettings, __experimentalFetchReusableBlocks = _dispatch.__experimentalFetchReusableBlocks, __experimentalTearDownEditor = _dispatch.__experimentalTearDownEditor, undo = _dispatch.undo; var _dispatch2 = dispatch('core/notices'), createWarningNotice = _dispatch2.createWarningNotice; return { setupEditor: setupEditor, updatePostLock: updatePostLock, createWarningNotice: createWarningNotice, resetEditorBlocks: resetEditorBlocks, updateEditorSettings: updateEditorSettings, resetEditorBlocksWithoutUndoLevel: function resetEditorBlocksWithoutUndoLevel(blocks, options) { resetEditorBlocks(blocks, provider_objectSpread({}, options, { __unstableShouldCreateUndoLevel: false })); }, tearDownEditor: __experimentalTearDownEditor, __experimentalFetchReusableBlocks: __experimentalFetchReusableBlocks, undo: undo }; })])(provider_EditorProvider)); // EXTERNAL MODULE: external {"this":["wp","serverSideRender"]} var external_this_wp_serverSideRender_ = __webpack_require__("JREk"); var external_this_wp_serverSideRender_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_serverSideRender_); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/deprecated.js // Block Creation Components /** * WordPress dependencies */ function deprecateComponent(name, Wrapped) { var staticsToHoist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; var Component = Object(external_this_wp_element_["forwardRef"])(function (props, ref) { external_this_wp_deprecated_default()('wp.editor.' + name, { alternative: 'wp.blockEditor.' + name }); return Object(external_this_wp_element_["createElement"])(Wrapped, Object(esm_extends["a" /* default */])({ ref: ref }, props)); }); staticsToHoist.forEach(function (staticName) { Component[staticName] = deprecateComponent(name + '.' + staticName, Wrapped[staticName]); }); return Component; } function deprecateFunction(name, func) { return function () { external_this_wp_deprecated_default()('wp.editor.' + name, { alternative: 'wp.blockEditor.' + name }); return func.apply(void 0, arguments); }; } var RichText = deprecateComponent('RichText', external_this_wp_blockEditor_["RichText"], ['Content']); RichText.isEmpty = deprecateFunction('RichText.isEmpty', external_this_wp_blockEditor_["RichText"].isEmpty); var Autocomplete = deprecateComponent('Autocomplete', external_this_wp_blockEditor_["Autocomplete"]); var AlignmentToolbar = deprecateComponent('AlignmentToolbar', external_this_wp_blockEditor_["AlignmentToolbar"]); var BlockAlignmentToolbar = deprecateComponent('BlockAlignmentToolbar', external_this_wp_blockEditor_["BlockAlignmentToolbar"]); var BlockControls = deprecateComponent('BlockControls', external_this_wp_blockEditor_["BlockControls"], ['Slot']); var deprecated_BlockEdit = deprecateComponent('BlockEdit', external_this_wp_blockEditor_["BlockEdit"]); var BlockEditorKeyboardShortcuts = deprecateComponent('BlockEditorKeyboardShortcuts', external_this_wp_blockEditor_["BlockEditorKeyboardShortcuts"]); var BlockFormatControls = deprecateComponent('BlockFormatControls', external_this_wp_blockEditor_["BlockFormatControls"], ['Slot']); var BlockIcon = deprecateComponent('BlockIcon', external_this_wp_blockEditor_["BlockIcon"]); var BlockInspector = deprecateComponent('BlockInspector', external_this_wp_blockEditor_["BlockInspector"]); var BlockList = deprecateComponent('BlockList', external_this_wp_blockEditor_["BlockList"]); var BlockMover = deprecateComponent('BlockMover', external_this_wp_blockEditor_["BlockMover"]); var BlockNavigationDropdown = deprecateComponent('BlockNavigationDropdown', external_this_wp_blockEditor_["BlockNavigationDropdown"]); var BlockSelectionClearer = deprecateComponent('BlockSelectionClearer', external_this_wp_blockEditor_["BlockSelectionClearer"]); var BlockSettingsMenu = deprecateComponent('BlockSettingsMenu', external_this_wp_blockEditor_["BlockSettingsMenu"]); var BlockTitle = deprecateComponent('BlockTitle', external_this_wp_blockEditor_["BlockTitle"]); var BlockToolbar = deprecateComponent('BlockToolbar', external_this_wp_blockEditor_["BlockToolbar"]); var ColorPalette = deprecateComponent('ColorPalette', external_this_wp_blockEditor_["ColorPalette"]); var ContrastChecker = deprecateComponent('ContrastChecker', external_this_wp_blockEditor_["ContrastChecker"]); var CopyHandler = deprecateComponent('CopyHandler', external_this_wp_blockEditor_["CopyHandler"]); var DefaultBlockAppender = deprecateComponent('DefaultBlockAppender', external_this_wp_blockEditor_["DefaultBlockAppender"]); var FontSizePicker = deprecateComponent('FontSizePicker', external_this_wp_blockEditor_["FontSizePicker"]); var Inserter = deprecateComponent('Inserter', external_this_wp_blockEditor_["Inserter"]); var InnerBlocks = deprecateComponent('InnerBlocks', external_this_wp_blockEditor_["InnerBlocks"], ['ButtonBlockAppender', 'DefaultBlockAppender', 'Content']); var InspectorAdvancedControls = deprecateComponent('InspectorAdvancedControls', external_this_wp_blockEditor_["InspectorAdvancedControls"], ['Slot']); var InspectorControls = deprecateComponent('InspectorControls', external_this_wp_blockEditor_["InspectorControls"], ['Slot']); var PanelColorSettings = deprecateComponent('PanelColorSettings', external_this_wp_blockEditor_["PanelColorSettings"]); var PlainText = deprecateComponent('PlainText', external_this_wp_blockEditor_["PlainText"]); var RichTextShortcut = deprecateComponent('RichTextShortcut', external_this_wp_blockEditor_["RichTextShortcut"]); var RichTextToolbarButton = deprecateComponent('RichTextToolbarButton', external_this_wp_blockEditor_["RichTextToolbarButton"]); var __unstableRichTextInputEvent = deprecateComponent('__unstableRichTextInputEvent', external_this_wp_blockEditor_["__unstableRichTextInputEvent"]); var MediaPlaceholder = deprecateComponent('MediaPlaceholder', external_this_wp_blockEditor_["MediaPlaceholder"]); var MediaUpload = deprecateComponent('MediaUpload', external_this_wp_blockEditor_["MediaUpload"]); var MediaUploadCheck = deprecateComponent('MediaUploadCheck', external_this_wp_blockEditor_["MediaUploadCheck"]); var MultiBlocksSwitcher = deprecateComponent('MultiBlocksSwitcher', external_this_wp_blockEditor_["MultiBlocksSwitcher"]); var MultiSelectScrollIntoView = deprecateComponent('MultiSelectScrollIntoView', external_this_wp_blockEditor_["MultiSelectScrollIntoView"]); var NavigableToolbar = deprecateComponent('NavigableToolbar', external_this_wp_blockEditor_["NavigableToolbar"]); var ObserveTyping = deprecateComponent('ObserveTyping', external_this_wp_blockEditor_["ObserveTyping"]); var PreserveScrollInReorder = deprecateComponent('PreserveScrollInReorder', external_this_wp_blockEditor_["PreserveScrollInReorder"]); var SkipToSelectedBlock = deprecateComponent('SkipToSelectedBlock', external_this_wp_blockEditor_["SkipToSelectedBlock"]); var URLInput = deprecateComponent('URLInput', external_this_wp_blockEditor_["URLInput"]); var URLInputButton = deprecateComponent('URLInputButton', external_this_wp_blockEditor_["URLInputButton"]); var URLPopover = deprecateComponent('URLPopover', external_this_wp_blockEditor_["URLPopover"]); var Warning = deprecateComponent('Warning', external_this_wp_blockEditor_["Warning"]); var WritingFlow = deprecateComponent('WritingFlow', external_this_wp_blockEditor_["WritingFlow"]); var createCustomColorsHOC = deprecateFunction('createCustomColorsHOC', external_this_wp_blockEditor_["createCustomColorsHOC"]); var getColorClassName = deprecateFunction('getColorClassName', external_this_wp_blockEditor_["getColorClassName"]); var getColorObjectByAttributeValues = deprecateFunction('getColorObjectByAttributeValues', external_this_wp_blockEditor_["getColorObjectByAttributeValues"]); var getColorObjectByColorValue = deprecateFunction('getColorObjectByColorValue', external_this_wp_blockEditor_["getColorObjectByColorValue"]); var getFontSize = deprecateFunction('getFontSize', external_this_wp_blockEditor_["getFontSize"]); var getFontSizeClass = deprecateFunction('getFontSizeClass', external_this_wp_blockEditor_["getFontSizeClass"]); var withColorContext = deprecateFunction('withColorContext', external_this_wp_blockEditor_["withColorContext"]); var withColors = deprecateFunction('withColors', external_this_wp_blockEditor_["withColors"]); var withFontSizes = deprecateFunction('withFontSizes', external_this_wp_blockEditor_["withFontSizes"]); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/components/index.js // Block Creation Components // Post Related Components // State Related Components // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/hooks/default-autocompleters.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ function setDefaultCompleters() { var completers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var blockName = arguments.length > 1 ? arguments[1] : undefined; // Provide copies so filters may directly modify them. completers.push(Object(external_this_lodash_["clone"])(autocompleters_user)); // Add blocks autocompleter for Paragraph block if (blockName === Object(external_this_wp_blocks_["getDefaultBlockName"])()) { completers.push(Object(external_this_lodash_["clone"])(autocompleters_block)); } return completers; } Object(external_this_wp_hooks_["addFilter"])('editor.Autocomplete.completers', 'editor/autocompleters/set-default-completers', setDefaultCompleters); // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/hooks/index.js /** * Internal dependencies */ // CONCATENATED MODULE: ./node_modules/@wordpress/editor/build-module/index.js /** * WordPress dependencies */ /** * Internal dependencies */ /* * Backward compatibility */ /***/ }), /***/ "PYwp": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; }); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } /***/ }), /***/ "RMJe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var check = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M15.3 5.3l-6.8 6.8-2.8-2.8-1.4 1.4 4.2 4.2 8.2-8.2" })); /* harmony default export */ __webpack_exports__["a"] = (check); /***/ }), /***/ "Rk8H": /***/ (function(module, exports, __webpack_require__) { // Load in dependencies var computedStyle = __webpack_require__("jTPX"); /** * Calculate the `line-height` of a given node * @param {HTMLElement} node Element to calculate line height of. Must be in the DOM. * @returns {Number} `line-height` of the element in pixels */ function lineHeight(node) { // Grab the line-height via style var lnHeightStr = computedStyle(node, 'line-height'); var lnHeight = parseFloat(lnHeightStr, 10); // If the lineHeight did not contain a unit (i.e. it was numeric), convert it to ems (e.g. '2.3' === '2.3em') if (lnHeightStr === lnHeight + '') { // Save the old lineHeight style and update the em unit to the element var _lnHeightStyle = node.style.lineHeight; node.style.lineHeight = lnHeightStr + 'em'; // Calculate the em based height lnHeightStr = computedStyle(node, 'line-height'); lnHeight = parseFloat(lnHeightStr, 10); // Revert the lineHeight style if (_lnHeightStyle) { node.style.lineHeight = _lnHeightStyle; } else { delete node.style.lineHeight; } } // If the lineHeight is in `pt`, convert it to pixels (4px for 3pt) // DEV: `em` units are converted to `pt` in IE6 // Conversion ratio from https://developer.mozilla.org/en-US/docs/Web/CSS/length if (lnHeightStr.indexOf('pt') !== -1) { lnHeight *= 4; lnHeight /= 3; // Otherwise, if the lineHeight is in `mm`, convert it to pixels (96px for 25.4mm) } else if (lnHeightStr.indexOf('mm') !== -1) { lnHeight *= 96; lnHeight /= 25.4; // Otherwise, if the lineHeight is in `cm`, convert it to pixels (96px for 2.54cm) } else if (lnHeightStr.indexOf('cm') !== -1) { lnHeight *= 96; lnHeight /= 2.54; // Otherwise, if the lineHeight is in `in`, convert it to pixels (96px for 1in) } else if (lnHeightStr.indexOf('in') !== -1) { lnHeight *= 96; // Otherwise, if the lineHeight is in `pc`, convert it to pixels (12pt for 1pc) } else if (lnHeightStr.indexOf('pc') !== -1) { lnHeight *= 16; } // Continue our computation lnHeight = Math.round(lnHeight); // If the line-height is "normal", calculate by font-size if (lnHeightStr === 'normal') { // Create a temporary node var nodeName = node.nodeName; var _node = document.createElement(nodeName); _node.innerHTML = ' '; // If we have a text area, reset it to only 1 row // https://github.com/twolfson/line-height/issues/4 if (nodeName.toUpperCase() === 'TEXTAREA') { _node.setAttribute('rows', '1'); } // Set the font-size of the element var fontSizeStr = computedStyle(node, 'font-size'); _node.style.fontSize = fontSizeStr; // Remove default padding/border which can affect offset height // https://github.com/twolfson/line-height/issues/4 // https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetHeight _node.style.padding = '0px'; _node.style.border = '0px'; // Append it to the body var body = document.body; body.appendChild(_node); // Assume the line height of the element is the height var height = _node.offsetHeight; lnHeight = height; // Remove our child from the DOM body.removeChild(_node); } // Return the calculated height return lnHeight; } // Export lineHeight module.exports = lineHeight; /***/ }), /***/ "RxS6": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["keycodes"]; }()); /***/ }), /***/ "TSYQ": /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! Copyright (c) 2017 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /* global define */ (function () { 'use strict'; var hasOwn = {}.hasOwnProperty; function classNames () { var classes = []; for (var i = 0; i < arguments.length; i++) { var arg = arguments[i]; if (!arg) continue; var argType = typeof arg; if (argType === 'string' || argType === 'number') { classes.push(arg); } else if (Array.isArray(arg) && arg.length) { var inner = classNames.apply(null, arg); if (inner) { classes.push(inner); } } else if (argType === 'object') { for (var key in arg) { if (hasOwn.call(arg, key) && arg[key]) { classes.push(key); } } } } return classes.join(' '); } if ( true && module.exports) { classNames.default = classNames; module.exports = classNames; } else if (true) { // register as 'classnames', consistent with npm package name !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return classNames; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }()); /***/ }), /***/ "Tqx9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["primitives"]; }()); /***/ }), /***/ "U8pU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; }); function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } /***/ }), /***/ "UuzZ": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["autop"]; }()); /***/ }), /***/ "WbBG": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Copyright (c) 2013-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; module.exports = ReactPropTypesSecret; /***/ }), /***/ "WsEz": /***/ (function(module, exports, __webpack_require__) { "use strict"; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } var BEGIN = 'BEGIN'; var COMMIT = 'COMMIT'; var REVERT = 'REVERT'; // Array({transactionID: string or null, beforeState: {object}, action: {object}} var INITIAL_OPTIMIST = []; module.exports = optimist; module.exports.BEGIN = BEGIN; module.exports.COMMIT = COMMIT; module.exports.REVERT = REVERT; function optimist(fn) { function beginReducer(state, action) { var _separateState = separateState(state); var optimist = _separateState.optimist; var innerState = _separateState.innerState; optimist = optimist.concat([{ beforeState: innerState, action: action }]); innerState = fn(innerState, action); validateState(innerState, action); return _extends({ optimist: optimist }, innerState); } function commitReducer(state, action) { var _separateState2 = separateState(state); var optimist = _separateState2.optimist; var innerState = _separateState2.innerState; var newOptimist = [], started = false, committed = false; optimist.forEach(function (entry) { if (started) { if (entry.beforeState && matchesTransaction(entry.action, action.optimist.id)) { committed = true; newOptimist.push({ action: entry.action }); } else { newOptimist.push(entry); } } else if (entry.beforeState && !matchesTransaction(entry.action, action.optimist.id)) { started = true; newOptimist.push(entry); } else if (entry.beforeState && matchesTransaction(entry.action, action.optimist.id)) { committed = true; } }); if (!committed) { console.error('Cannot commit transaction with id "' + action.optimist.id + '" because it does not exist'); } optimist = newOptimist; return baseReducer(optimist, innerState, action); } function revertReducer(state, action) { var _separateState3 = separateState(state); var optimist = _separateState3.optimist; var innerState = _separateState3.innerState; var newOptimist = [], started = false, gotInitialState = false, currentState = innerState; optimist.forEach(function (entry) { if (entry.beforeState && matchesTransaction(entry.action, action.optimist.id)) { currentState = entry.beforeState; gotInitialState = true; } if (!matchesTransaction(entry.action, action.optimist.id)) { if (entry.beforeState) { started = true; } if (started) { if (gotInitialState && entry.beforeState) { newOptimist.push({ beforeState: currentState, action: entry.action }); } else { newOptimist.push(entry); } } if (gotInitialState) { currentState = fn(currentState, entry.action); validateState(innerState, action); } } }); if (!gotInitialState) { console.error('Cannot revert transaction with id "' + action.optimist.id + '" because it does not exist'); } optimist = newOptimist; return baseReducer(optimist, currentState, action); } function baseReducer(optimist, innerState, action) { if (optimist.length) { optimist = optimist.concat([{ action: action }]); } innerState = fn(innerState, action); validateState(innerState, action); return _extends({ optimist: optimist }, innerState); } return function (state, action) { if (action.optimist) { switch (action.optimist.type) { case BEGIN: return beginReducer(state, action); case COMMIT: return commitReducer(state, action); case REVERT: return revertReducer(state, action); } } var _separateState4 = separateState(state); var optimist = _separateState4.optimist; var innerState = _separateState4.innerState; if (state && !optimist.length) { var nextState = fn(innerState, action); if (nextState === innerState) { return state; } validateState(nextState, action); return _extends({ optimist: optimist }, nextState); } return baseReducer(optimist, innerState, action); }; } function matchesTransaction(action, id) { return action.optimist && action.optimist.id === id; } function validateState(newState, action) { if (!newState || typeof newState !== 'object' || Array.isArray(newState)) { throw new TypeError('Error while handling "' + action.type + '": Optimist requires that state is always a plain object.'); } } function separateState(state) { if (!state) { return { optimist: INITIAL_OPTIMIST, innerState: state }; } else { var _state$optimist = state.optimist; var _optimist = _state$optimist === undefined ? INITIAL_OPTIMIST : _state$optimist; var innerState = _objectWithoutProperties(state, ['optimist']); return { optimist: _optimist, innerState: innerState }; } } /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "a3WO": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; }); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "axFQ": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blockEditor"]; }()); /***/ }), /***/ "cDcd": /***/ (function(module, exports) { (function() { module.exports = this["React"]; }()); /***/ }), /***/ "dvlR": /***/ (function(module, exports) { (function() { module.exports = this["regeneratorRuntime"]; }()); /***/ }), /***/ "foSv": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; }); function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } /***/ }), /***/ "g56x": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["hooks"]; }()); /***/ }), /***/ "gQxa": /***/ (function(module, exports, __webpack_require__) { "use strict"; function flattenIntoMap( map, effects ) { var i; if ( Array.isArray( effects ) ) { for ( i = 0; i < effects.length; i++ ) { flattenIntoMap( map, effects[ i ] ); } } else { for ( i in effects ) { map[ i ] = ( map[ i ] || [] ).concat( effects[ i ] ); } } } function refx( effects ) { var map = {}, middleware; flattenIntoMap( map, effects ); middleware = function( store ) { return function( next ) { return function( action ) { var handlers = map[ action.type ], result = next( action ), i, handlerAction; if ( handlers ) { for ( i = 0; i < handlers.length; i++ ) { handlerAction = handlers[ i ]( action, store ); if ( handlerAction ) { store.dispatch( handlerAction ); } } } return result; }; }; }; middleware.effects = map; return middleware; } module.exports = refx; /***/ }), /***/ "hF7m": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["keyboardShortcuts"]; }()); /***/ }), /***/ "hx/w": /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__("WsEz"); /***/ }), /***/ "iClF": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("rePB"); /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Ff2n"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ function Icon(_ref) { var icon = _ref.icon, _ref$size = _ref.size, size = _ref$size === void 0 ? 24 : _ref$size, props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_ref, ["icon", "size"]); return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["cloneElement"])(icon, _objectSpread({ width: size, height: size }, props)); } /* harmony default export */ __webpack_exports__["a"] = (Icon); /***/ }), /***/ "jTPX": /***/ (function(module, exports) { // This code has been refactored for 140 bytes // You can see the original here: https://github.com/twolfson/computedStyle/blob/04cd1da2e30fa45844f95f5cb1ac898e9b9ef050/lib/computedStyle.js var computedStyle = function (el, prop, getComputedStyle) { getComputedStyle = window.getComputedStyle; // In one fell swoop return ( // If we have getComputedStyle getComputedStyle ? // Query it // TODO: From CSS-Query notes, we might need (node, null) for FF getComputedStyle(el) : // Otherwise, we are in IE and use currentStyle el.currentStyle )[ // Switch to camelCase for CSSOM // DEV: Grabbed from jQuery // https://github.com/jquery/jquery/blob/1.9-stable/src/css.js#L191-L194 // https://github.com/jquery/jquery/blob/1.9-stable/src/core.js#L593-L597 prop.replace(/-(\w)/gi, function (word, letter) { return letter.toUpperCase(); }) ]; }; module.exports = computedStyle; /***/ }), /***/ "jZUy": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["coreData"]; }()); /***/ }), /***/ "l3Sj": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["i18n"]; }()); /***/ }), /***/ "md7G": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; }); /* harmony import */ var _helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("U8pU"); /* harmony import */ var _assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("JX7q"); function _possibleConstructorReturn(self, call) { if (call && (Object(_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) { return call; } return Object(_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self); } /***/ }), /***/ "onLe": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["notices"]; }()); /***/ }), /***/ "pPDe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; var LEAF_KEY, hasWeakMap; /** * Arbitrary value used as key for referencing cache object in WeakMap tree. * * @type {Object} */ LEAF_KEY = {}; /** * Whether environment supports WeakMap. * * @type {boolean} */ hasWeakMap = typeof WeakMap !== 'undefined'; /** * Returns the first argument as the sole entry in an array. * * @param {*} value Value to return. * * @return {Array} Value returned as entry in array. */ function arrayOf( value ) { return [ value ]; } /** * Returns true if the value passed is object-like, or false otherwise. A value * is object-like if it can support property assignment, e.g. object or array. * * @param {*} value Value to test. * * @return {boolean} Whether value is object-like. */ function isObjectLike( value ) { return !! value && 'object' === typeof value; } /** * Creates and returns a new cache object. * * @return {Object} Cache object. */ function createCache() { var cache = { clear: function() { cache.head = null; }, }; return cache; } /** * Returns true if entries within the two arrays are strictly equal by * reference from a starting index. * * @param {Array} a First array. * @param {Array} b Second array. * @param {number} fromIndex Index from which to start comparison. * * @return {boolean} Whether arrays are shallowly equal. */ function isShallowEqual( a, b, fromIndex ) { var i; if ( a.length !== b.length ) { return false; } for ( i = fromIndex; i < a.length; i++ ) { if ( a[ i ] !== b[ i ] ) { return false; } } return true; } /** * Returns a memoized selector function. The getDependants function argument is * called before the memoized selector and is expected to return an immutable * reference or array of references on which the selector depends for computing * its own return value. The memoize cache is preserved only as long as those * dependant references remain the same. If getDependants returns a different * reference(s), the cache is cleared and the selector value regenerated. * * @param {Function} selector Selector function. * @param {Function} getDependants Dependant getter returning an immutable * reference or array of reference used in * cache bust consideration. * * @return {Function} Memoized selector. */ /* harmony default export */ __webpack_exports__["a"] = (function( selector, getDependants ) { var rootCache, getCache; // Use object source as dependant if getter not provided if ( ! getDependants ) { getDependants = arrayOf; } /** * Returns the root cache. If WeakMap is supported, this is assigned to the * root WeakMap cache set, otherwise it is a shared instance of the default * cache object. * * @return {(WeakMap|Object)} Root cache object. */ function getRootCache() { return rootCache; } /** * Returns the cache for a given dependants array. When possible, a WeakMap * will be used to create a unique cache for each set of dependants. This * is feasible due to the nature of WeakMap in allowing garbage collection * to occur on entries where the key object is no longer referenced. Since * WeakMap requires the key to be an object, this is only possible when the * dependant is object-like. The root cache is created as a hierarchy where * each top-level key is the first entry in a dependants set, the value a * WeakMap where each key is the next dependant, and so on. This continues * so long as the dependants are object-like. If no dependants are object- * like, then the cache is shared across all invocations. * * @see isObjectLike * * @param {Array} dependants Selector dependants. * * @return {Object} Cache object. */ function getWeakMapCache( dependants ) { var caches = rootCache, isUniqueByDependants = true, i, dependant, map, cache; for ( i = 0; i < dependants.length; i++ ) { dependant = dependants[ i ]; // Can only compose WeakMap from object-like key. if ( ! isObjectLike( dependant ) ) { isUniqueByDependants = false; break; } // Does current segment of cache already have a WeakMap? if ( caches.has( dependant ) ) { // Traverse into nested WeakMap. caches = caches.get( dependant ); } else { // Create, set, and traverse into a new one. map = new WeakMap(); caches.set( dependant, map ); caches = map; } } // We use an arbitrary (but consistent) object as key for the last item // in the WeakMap to serve as our running cache. if ( ! caches.has( LEAF_KEY ) ) { cache = createCache(); cache.isUniqueByDependants = isUniqueByDependants; caches.set( LEAF_KEY, cache ); } return caches.get( LEAF_KEY ); } // Assign cache handler by availability of WeakMap getCache = hasWeakMap ? getWeakMapCache : getRootCache; /** * Resets root memoization cache. */ function clear() { rootCache = hasWeakMap ? new WeakMap() : createCache(); } // eslint-disable-next-line jsdoc/check-param-names /** * The augmented selector call, considering first whether dependants have * changed before passing it to underlying memoize function. * * @param {Object} source Source object for derivation. * @param {...*} extraArgs Additional arguments to pass to selector. * * @return {*} Selector result. */ function callSelector( /* source, ...extraArgs */ ) { var len = arguments.length, cache, node, i, args, dependants; // Create copy of arguments (avoid leaking deoptimization). args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } dependants = getDependants.apply( null, args ); cache = getCache( dependants ); // If not guaranteed uniqueness by dependants (primitive type or lack // of WeakMap support), shallow compare against last dependants and, if // references have changed, destroy cache to recalculate result. if ( ! cache.isUniqueByDependants ) { if ( cache.lastDependants && ! isShallowEqual( dependants, cache.lastDependants, 0 ) ) { cache.clear(); } cache.lastDependants = dependants; } node = cache.head; while ( node ) { // Check whether node arguments match arguments if ( ! isShallowEqual( node.args, args, 1 ) ) { node = node.next; continue; } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== cache.head ) { // Adjust siblings to point to each other. node.prev.next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = cache.head; node.prev = null; cache.head.prev = node; cache.head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: node = { // Generate the result from original function val: selector.apply( null, args ), }; // Avoid including the source object in the cache. args[ 0 ] = null; node.args = args; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( cache.head ) { cache.head.prev = node; node.next = cache.head; } cache.head = node; return node.val; } callSelector.getDependants = getDependants; callSelector.clear = clear; clear(); return callSelector; }); /***/ }), /***/ "qRz9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["richText"]; }()); /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "rmEH": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["htmlEntities"]; }()); /***/ }), /***/ "tI+e": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["components"]; }()); /***/ }), /***/ "vuIU": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; }); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /***/ }), /***/ "w95h": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId"); /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9"); /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__); /** * WordPress dependencies */ var close = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], { xmlns: "http://www.w3.org/2000/svg", viewBox: "-2 -2 24 24" }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], { d: "M14.95 6.46L11.41 10l3.54 3.54-1.41 1.41L10 11.42l-3.53 3.53-1.42-1.42L8.58 10 5.05 6.47l1.42-1.42L10 8.58l3.54-3.53z" })); /* harmony default export */ __webpack_exports__["a"] = (close); /***/ }), /***/ "wx14": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; }); function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /***/ }), /***/ "ywyh": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["apiFetch"]; }()); /***/ }), /***/ "zLVn": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; }); function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } /***/ }) /******/ });PKv\A>$::dist/core-data.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["coreData"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "dsJ0"); /******/ }) /************************************************************************/ /******/ ({ /***/ "1ZqX": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["data"]; }()); /***/ }), /***/ "25BE": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; }); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } /***/ }), /***/ "BsWD": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; }); /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("a3WO"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen); } /***/ }), /***/ "DSFK": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; }); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /***/ }), /***/ "FtRg": /***/ (function(module, exports, __webpack_require__) { "use strict"; function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function (obj) { return typeof obj; }; } else { _typeof = function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } /** * Given an instance of EquivalentKeyMap, returns its internal value pair tuple * for a key, if one exists. The tuple members consist of the last reference * value for the key (used in efficient subsequent lookups) and the value * assigned for the key at the leaf node. * * @param {EquivalentKeyMap} instance EquivalentKeyMap instance. * @param {*} key The key for which to return value pair. * * @return {?Array} Value pair, if exists. */ function getValuePair(instance, key) { var _map = instance._map, _arrayTreeMap = instance._arrayTreeMap, _objectTreeMap = instance._objectTreeMap; // Map keeps a reference to the last object-like key used to set the // value, which can be used to shortcut immediately to the value. if (_map.has(key)) { return _map.get(key); } // Sort keys to ensure stable retrieval from tree. var properties = Object.keys(key).sort(); // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? _arrayTreeMap : _objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; map = map.get(property); if (map === undefined) { return; } var propertyValue = key[property]; map = map.get(propertyValue); if (map === undefined) { return; } } var valuePair = map.get('_ekm_value'); if (!valuePair) { return; } // If reached, it implies that an object-like key was set with another // reference, so delete the reference and replace with the current. _map.delete(valuePair[0]); valuePair[0] = key; map.set('_ekm_value', valuePair); _map.set(key, valuePair); return valuePair; } /** * Variant of a Map object which enables lookup by equivalent (deeply equal) * object and array keys. */ var EquivalentKeyMap = /*#__PURE__*/ function () { /** * Constructs a new instance of EquivalentKeyMap. * * @param {Iterable.<*>} iterable Initial pair of key, value for map. */ function EquivalentKeyMap(iterable) { _classCallCheck(this, EquivalentKeyMap); this.clear(); if (iterable instanceof EquivalentKeyMap) { // Map#forEach is only means of iterating with support for IE11. var iterablePairs = []; iterable.forEach(function (value, key) { iterablePairs.push([key, value]); }); iterable = iterablePairs; } if (iterable != null) { for (var i = 0; i < iterable.length; i++) { this.set(iterable[i][0], iterable[i][1]); } } } /** * Accessor property returning the number of elements. * * @return {number} Number of elements. */ _createClass(EquivalentKeyMap, [{ key: "set", /** * Add or update an element with a specified key and value. * * @param {*} key The key of the element to add. * @param {*} value The value of the element to add. * * @return {EquivalentKeyMap} Map instance. */ value: function set(key, value) { // Shortcut non-object-like to set on internal Map. if (key === null || _typeof(key) !== 'object') { this._map.set(key, value); return this; } // Sort keys to ensure stable assignment into tree. var properties = Object.keys(key).sort(); var valuePair = [key, value]; // Tree by type to avoid conflicts on numeric object keys, empty value. var map = Array.isArray(key) ? this._arrayTreeMap : this._objectTreeMap; for (var i = 0; i < properties.length; i++) { var property = properties[i]; if (!map.has(property)) { map.set(property, new EquivalentKeyMap()); } map = map.get(property); var propertyValue = key[property]; if (!map.has(propertyValue)) { map.set(propertyValue, new EquivalentKeyMap()); } map = map.get(propertyValue); } // If an _ekm_value exists, there was already an equivalent key. Before // overriding, ensure that the old key reference is removed from map to // avoid memory leak of accumulating equivalent keys. This is, in a // sense, a poor man's WeakMap, while still enabling iterability. var previousValuePair = map.get('_ekm_value'); if (previousValuePair) { this._map.delete(previousValuePair[0]); } map.set('_ekm_value', valuePair); this._map.set(key, valuePair); return this; } /** * Returns a specified element. * * @param {*} key The key of the element to return. * * @return {?*} The element associated with the specified key or undefined * if the key can't be found. */ }, { key: "get", value: function get(key) { // Shortcut non-object-like to get from internal Map. if (key === null || _typeof(key) !== 'object') { return this._map.get(key); } var valuePair = getValuePair(this, key); if (valuePair) { return valuePair[1]; } } /** * Returns a boolean indicating whether an element with the specified key * exists or not. * * @param {*} key The key of the element to test for presence. * * @return {boolean} Whether an element with the specified key exists. */ }, { key: "has", value: function has(key) { if (key === null || _typeof(key) !== 'object') { return this._map.has(key); } // Test on the _presence_ of the pair, not its value, as even undefined // can be a valid member value for a key. return getValuePair(this, key) !== undefined; } /** * Removes the specified element. * * @param {*} key The key of the element to remove. * * @return {boolean} Returns true if an element existed and has been * removed, or false if the element does not exist. */ }, { key: "delete", value: function _delete(key) { if (!this.has(key)) { return false; } // This naive implementation will leave orphaned child trees. A better // implementation should traverse and remove orphans. this.set(key, undefined); return true; } /** * Executes a provided function once per each key/value pair, in insertion * order. * * @param {Function} callback Function to execute for each element. * @param {*} thisArg Value to use as `this` when executing * `callback`. */ }, { key: "forEach", value: function forEach(callback) { var _this = this; var thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this; this._map.forEach(function (value, key) { // Unwrap value from object-like value pair. if (key !== null && _typeof(key) === 'object') { value = value[1]; } callback.call(thisArg, value, key, _this); }); } /** * Removes all elements. */ }, { key: "clear", value: function clear() { this._map = new Map(); this._arrayTreeMap = new Map(); this._objectTreeMap = new Map(); } }, { key: "size", get: function get() { return this._map.size; } }]); return EquivalentKeyMap; }(); module.exports = EquivalentKeyMap; /***/ }), /***/ "GRId": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["element"]; }()); /***/ }), /***/ "HSyU": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["blocks"]; }()); /***/ }), /***/ "KQm4": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js var arrayLikeToArray = __webpack_require__("a3WO"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr); } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js var iterableToArray = __webpack_require__("25BE"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread(); } /***/ }), /***/ "Mmq9": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["url"]; }()); /***/ }), /***/ "NMb1": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["deprecated"]; }()); /***/ }), /***/ "ODXe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // EXPORTS __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js var arrayWithHoles = __webpack_require__("DSFK"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js var unsupportedIterableToArray = __webpack_require__("BsWD"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js var nonIterableRest = __webpack_require__("PYwp"); // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js function _slicedToArray(arr, i) { return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])(); } /***/ }), /***/ "PYwp": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; }); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } /***/ }), /***/ "YLtl": /***/ (function(module, exports) { (function() { module.exports = this["lodash"]; }()); /***/ }), /***/ "a3WO": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; }); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "dsJ0": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, "EntityProvider", function() { return /* reexport */ EntityProvider; }); __webpack_require__.d(__webpack_exports__, "useEntityId", function() { return /* reexport */ useEntityId; }); __webpack_require__.d(__webpack_exports__, "useEntityProp", function() { return /* reexport */ useEntityProp; }); __webpack_require__.d(__webpack_exports__, "useEntityBlockEditor", function() { return /* reexport */ useEntityBlockEditor; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/core-data/build-module/actions.js var build_module_actions_namespaceObject = {}; __webpack_require__.r(build_module_actions_namespaceObject); __webpack_require__.d(build_module_actions_namespaceObject, "receiveUserQuery", function() { return receiveUserQuery; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveCurrentUser", function() { return receiveCurrentUser; }); __webpack_require__.d(build_module_actions_namespaceObject, "addEntities", function() { return addEntities; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveEntityRecords", function() { return receiveEntityRecords; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveThemeSupports", function() { return receiveThemeSupports; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveEmbedPreview", function() { return receiveEmbedPreview; }); __webpack_require__.d(build_module_actions_namespaceObject, "editEntityRecord", function() { return actions_editEntityRecord; }); __webpack_require__.d(build_module_actions_namespaceObject, "undo", function() { return undo; }); __webpack_require__.d(build_module_actions_namespaceObject, "redo", function() { return redo; }); __webpack_require__.d(build_module_actions_namespaceObject, "__unstableCreateUndoLevel", function() { return __unstableCreateUndoLevel; }); __webpack_require__.d(build_module_actions_namespaceObject, "saveEntityRecord", function() { return saveEntityRecord; }); __webpack_require__.d(build_module_actions_namespaceObject, "saveEditedEntityRecord", function() { return saveEditedEntityRecord; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveUploadPermissions", function() { return receiveUploadPermissions; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveUserPermission", function() { return receiveUserPermission; }); __webpack_require__.d(build_module_actions_namespaceObject, "receiveAutosaves", function() { return receiveAutosaves; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/core-data/build-module/selectors.js var build_module_selectors_namespaceObject = {}; __webpack_require__.r(build_module_selectors_namespaceObject); __webpack_require__.d(build_module_selectors_namespaceObject, "isRequestingEmbedPreview", function() { return isRequestingEmbedPreview; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getAuthors", function() { return getAuthors; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getCurrentUser", function() { return getCurrentUser; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getUserQueryResults", function() { return getUserQueryResults; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntitiesByKind", function() { return getEntitiesByKind; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntity", function() { return selectors_getEntity; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntityRecord", function() { return getEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "__experimentalGetEntityRecordNoResolver", function() { return __experimentalGetEntityRecordNoResolver; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getRawEntityRecord", function() { return getRawEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntityRecords", function() { return getEntityRecords; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntityRecordChangesByRecord", function() { return getEntityRecordChangesByRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntityRecordEdits", function() { return getEntityRecordEdits; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEntityRecordNonTransientEdits", function() { return getEntityRecordNonTransientEdits; }); __webpack_require__.d(build_module_selectors_namespaceObject, "hasEditsForEntityRecord", function() { return hasEditsForEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEditedEntityRecord", function() { return getEditedEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "isAutosavingEntityRecord", function() { return isAutosavingEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "isSavingEntityRecord", function() { return isSavingEntityRecord; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getLastEntitySaveError", function() { return getLastEntitySaveError; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getUndoEdit", function() { return getUndoEdit; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getRedoEdit", function() { return getRedoEdit; }); __webpack_require__.d(build_module_selectors_namespaceObject, "hasUndo", function() { return hasUndo; }); __webpack_require__.d(build_module_selectors_namespaceObject, "hasRedo", function() { return hasRedo; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getThemeSupports", function() { return getThemeSupports; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getEmbedPreview", function() { return getEmbedPreview; }); __webpack_require__.d(build_module_selectors_namespaceObject, "isPreviewEmbedFallback", function() { return isPreviewEmbedFallback; }); __webpack_require__.d(build_module_selectors_namespaceObject, "hasUploadPermissions", function() { return hasUploadPermissions; }); __webpack_require__.d(build_module_selectors_namespaceObject, "canUser", function() { return canUser; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getAutosaves", function() { return getAutosaves; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getAutosave", function() { return getAutosave; }); __webpack_require__.d(build_module_selectors_namespaceObject, "hasFetchedAutosaves", function() { return hasFetchedAutosaves; }); __webpack_require__.d(build_module_selectors_namespaceObject, "getReferenceByDistinctEdits", function() { return getReferenceByDistinctEdits; }); // NAMESPACE OBJECT: ./node_modules/@wordpress/core-data/build-module/resolvers.js var resolvers_namespaceObject = {}; __webpack_require__.r(resolvers_namespaceObject); __webpack_require__.d(resolvers_namespaceObject, "getAuthors", function() { return resolvers_getAuthors; }); __webpack_require__.d(resolvers_namespaceObject, "getCurrentUser", function() { return resolvers_getCurrentUser; }); __webpack_require__.d(resolvers_namespaceObject, "getEntityRecord", function() { return resolvers_getEntityRecord; }); __webpack_require__.d(resolvers_namespaceObject, "getEntityRecords", function() { return resolvers_getEntityRecords; }); __webpack_require__.d(resolvers_namespaceObject, "getThemeSupports", function() { return resolvers_getThemeSupports; }); __webpack_require__.d(resolvers_namespaceObject, "getEmbedPreview", function() { return resolvers_getEmbedPreview; }); __webpack_require__.d(resolvers_namespaceObject, "hasUploadPermissions", function() { return resolvers_hasUploadPermissions; }); __webpack_require__.d(resolvers_namespaceObject, "canUser", function() { return resolvers_canUser; }); __webpack_require__.d(resolvers_namespaceObject, "getAutosaves", function() { return resolvers_getAutosaves; }); __webpack_require__.d(resolvers_namespaceObject, "getAutosave", function() { return resolvers_getAutosave; }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js var defineProperty = __webpack_require__("rePB"); // EXTERNAL MODULE: external {"this":["wp","data"]} var external_this_wp_data_ = __webpack_require__("1ZqX"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules var slicedToArray = __webpack_require__("ODXe"); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules var toConsumableArray = __webpack_require__("KQm4"); // EXTERNAL MODULE: external {"this":"lodash"} var external_this_lodash_ = __webpack_require__("YLtl"); // EXTERNAL MODULE: external {"this":["wp","isShallowEqual"]} var external_this_wp_isShallowEqual_ = __webpack_require__("rl8x"); var external_this_wp_isShallowEqual_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_isShallowEqual_); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/conservative-map-item.js /** * External dependencies */ /** * Given the current and next item entity, returns the minimally "modified" * result of the next item, preferring value references from the original item * if equal. If all values match, the original item is returned. * * @param {Object} item Original item. * @param {Object} nextItem Next item. * * @return {Object} Minimally modified merged item. */ function conservativeMapItem(item, nextItem) { // Return next item in its entirety if there is no original item. if (!item) { return nextItem; } var hasChanges = false; var result = {}; for (var key in nextItem) { if (Object(external_this_lodash_["isEqual"])(item[key], nextItem[key])) { result[key] = item[key]; } else { hasChanges = true; result[key] = nextItem[key]; } } if (!hasChanges) { return item; } return result; } // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/if-matching-action.js /** * A higher-order reducer creator which invokes the original reducer only if * the dispatching action matches the given predicate, **OR** if state is * initializing (undefined). * * @param {Function} isMatch Function predicate for allowing reducer call. * * @return {Function} Higher-order reducer. */ var ifMatchingAction = function ifMatchingAction(isMatch) { return function (reducer) { return function (state, action) { if (state === undefined || isMatch(action)) { return reducer(state, action); } return state; }; }; }; /* harmony default export */ var if_matching_action = (ifMatchingAction); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/on-sub-key.js function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * Higher-order reducer creator which creates a combined reducer object, keyed * by a property on the action object. * * @param {string} actionProperty Action property by which to key object. * * @return {Function} Higher-order reducer. */ var on_sub_key_onSubKey = function onSubKey(actionProperty) { return function (reducer) { return function () { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; // Retrieve subkey from action. Do not track if undefined; useful for cases // where reducer is scoped by action shape. var key = action[actionProperty]; if (key === undefined) { return state; } // Avoid updating state if unchanged. Note that this also accounts for a // reducer which returns undefined on a key which is not yet tracked. var nextKeyState = reducer(state[key], action); if (nextKeyState === state[key]) { return state; } return _objectSpread({}, state, Object(defineProperty["a" /* default */])({}, key, nextKeyState)); }; }; }; /* harmony default export */ var on_sub_key = (on_sub_key_onSubKey); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/replace-action.js /** * Higher-order reducer creator which substitutes the action object before * passing to the original reducer. * * @param {Function} replacer Function mapping original action to replacement. * * @return {Function} Higher-order reducer. */ var replaceAction = function replaceAction(replacer) { return function (reducer) { return function (state, action) { return reducer(state, replacer(action)); }; }; }; /* harmony default export */ var replace_action = (replaceAction); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/with-weak-map-cache.js /** * External dependencies */ /** * Given a function, returns an enhanced function which caches the result and * tracks in WeakMap. The result is only cached if the original function is * passed a valid object-like argument (requirement for WeakMap key). * * @param {Function} fn Original function. * * @return {Function} Enhanced caching function. */ function withWeakMapCache(fn) { var cache = new WeakMap(); return function (key) { var value; if (cache.has(key)) { value = cache.get(key); } else { value = fn(key); // Can reach here if key is not valid for WeakMap, since `has` // will return false for invalid key. Since `set` will throw, // ensure that key is valid before setting into cache. if (Object(external_this_lodash_["isObjectLike"])(key)) { cache.set(key, value); } } return value; }; } /* harmony default export */ var with_weak_map_cache = (withWeakMapCache); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/utils/index.js // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/queried-data/actions.js function actions_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function actions_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { actions_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { actions_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Returns an action object used in signalling that items have been received. * * @param {Array} items Items received. * * @return {Object} Action object. */ function receiveItems(items) { return { type: 'RECEIVE_ITEMS', items: Object(external_this_lodash_["castArray"])(items) }; } /** * Returns an action object used in signalling that queried data has been * received. * * @param {Array} items Queried items received. * @param {?Object} query Optional query object. * * @return {Object} Action object. */ function receiveQueriedItems(items) { var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; return actions_objectSpread({}, receiveItems(items), { query: query }); } // EXTERNAL MODULE: ./node_modules/rememo/es/rememo.js var rememo = __webpack_require__("pPDe"); // EXTERNAL MODULE: ./node_modules/equivalent-key-map/equivalent-key-map.js var equivalent_key_map = __webpack_require__("FtRg"); var equivalent_key_map_default = /*#__PURE__*/__webpack_require__.n(equivalent_key_map); // EXTERNAL MODULE: external {"this":["wp","url"]} var external_this_wp_url_ = __webpack_require__("Mmq9"); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/queried-data/get-query-parts.js /** * WordPress dependencies */ /** * Internal dependencies */ /** * An object of properties describing a specific query. * * @typedef {Object} WPQueriedDataQueryParts * * @property {number} page The query page (1-based index, default 1). * @property {number} perPage Items per page for query (default 10). * @property {string} stableKey An encoded stable string of all non-pagination * query parameters. */ /** * Given a query object, returns an object of parts, including pagination * details (`page` and `perPage`, or default values). All other properties are * encoded into a stable (idempotent) `stableKey` value. * * @param {Object} query Optional query object. * * @return {WPQueriedDataQueryParts} Query parts. */ function getQueryParts(query) { /** * @type {WPQueriedDataQueryParts} */ var parts = { stableKey: '', page: 1, perPage: 10 }; // Ensure stable key by sorting keys. Also more efficient for iterating. var keys = Object.keys(query).sort(); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = query[key]; switch (key) { case 'page': parts[key] = Number(value); break; case 'per_page': parts.perPage = Number(value); break; default: // While it could be any deterministic string, for simplicity's // sake mimic querystring encoding for stable key. // // TODO: For consistency with PHP implementation, addQueryArgs // should accept a key value pair, which may optimize its // implementation for our use here, vs. iterating an object // with only a single key. parts.stableKey += (parts.stableKey ? '&' : '') + Object(external_this_wp_url_["addQueryArgs"])('', Object(defineProperty["a" /* default */])({}, key, value)).slice(1); } } return parts; } /* harmony default export */ var get_query_parts = (with_weak_map_cache(getQueryParts)); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/queried-data/selectors.js /** * External dependencies */ /** * Internal dependencies */ /** * Cache of state keys to EquivalentKeyMap where the inner map tracks queries * to their resulting items set. WeakMap allows garbage collection on expired * state references. * * @type {WeakMap} */ var queriedItemsCacheByState = new WeakMap(); /** * Returns items for a given query, or null if the items are not known. * * @param {Object} state State object. * @param {?Object} query Optional query. * * @return {?Array} Query items. */ function getQueriedItemsUncached(state, query) { var _getQueryParts = get_query_parts(query), stableKey = _getQueryParts.stableKey, page = _getQueryParts.page, perPage = _getQueryParts.perPage; if (!state.queries[stableKey]) { return null; } var itemIds = state.queries[stableKey]; if (!itemIds) { return null; } var startOffset = perPage === -1 ? 0 : (page - 1) * perPage; var endOffset = perPage === -1 ? itemIds.length : Math.min(startOffset + perPage, itemIds.length); var items = []; for (var i = startOffset; i < endOffset; i++) { var itemId = itemIds[i]; items.push(state.items[itemId]); } return items; } /** * Returns items for a given query, or null if the items are not known. Caches * result both per state (by reference) and per query (by deep equality). * The caching approach is intended to be durable to query objects which are * deeply but not referentially equal, since otherwise: * * `getQueriedItems( state, {} ) !== getQueriedItems( state, {} )` * * @param {Object} state State object. * @param {?Object} query Optional query. * * @return {?Array} Query items. */ var getQueriedItems = Object(rememo["a" /* default */])(function (state) { var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var queriedItemsCache = queriedItemsCacheByState.get(state); if (queriedItemsCache) { var queriedItems = queriedItemsCache.get(query); if (queriedItems !== undefined) { return queriedItems; } } else { queriedItemsCache = new equivalent_key_map_default.a(); queriedItemsCacheByState.set(state, queriedItemsCache); } var items = getQueriedItemsUncached(state, query); queriedItemsCache.set(query, items); return items; }); // EXTERNAL MODULE: external {"this":"regeneratorRuntime"} var external_this_regeneratorRuntime_ = __webpack_require__("dvlR"); var external_this_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_this_regeneratorRuntime_); // EXTERNAL MODULE: external {"this":["wp","apiFetch"]} var external_this_wp_apiFetch_ = __webpack_require__("ywyh"); var external_this_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_apiFetch_); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/controls.js /** * WordPress dependencies */ /** * Trigger an API Fetch request. * * @param {Object} request API Fetch Request Object. * @return {Object} control descriptor. */ function apiFetch(request) { return { type: 'API_FETCH', request: request }; } /** * Calls a selector using the current state. * * @param {string} selectorName Selector name. * @param {Array} args Selector arguments. * * @return {Object} control descriptor. */ function controls_select(selectorName) { for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return { type: 'SELECT', selectorName: selectorName, args: args }; } /** * Dispatches a control action for triggering a registry select that has a * resolver. * * @param {string} selectorName * @param {Array} args Arguments for the select. * * @return {Object} control descriptor. */ function resolveSelect(selectorName) { for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } return { type: 'RESOLVE_SELECT', selectorName: selectorName, args: args }; } var controls = { API_FETCH: function API_FETCH(_ref) { var request = _ref.request; return external_this_wp_apiFetch_default()(request); }, SELECT: Object(external_this_wp_data_["createRegistryControl"])(function (registry) { return function (_ref2) { var _registry$select; var selectorName = _ref2.selectorName, args = _ref2.args; return (_registry$select = registry.select('core'))[selectorName].apply(_registry$select, Object(toConsumableArray["a" /* default */])(args)); }; }), RESOLVE_SELECT: Object(external_this_wp_data_["createRegistryControl"])(function (registry) { return function (_ref3) { var _registry$__experimen; var selectorName = _ref3.selectorName, args = _ref3.args; return (_registry$__experimen = registry.__experimentalResolveSelect('core'))[selectorName].apply(_registry$__experimen, Object(toConsumableArray["a" /* default */])(args)); }; }) }; /* harmony default export */ var build_module_controls = (controls); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/actions.js var _marked = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(actions_editEntityRecord), _marked2 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(undo), _marked3 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(redo), _marked4 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(saveEntityRecord), _marked5 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(saveEditedEntityRecord); function build_module_actions_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function build_module_actions_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { build_module_actions_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { build_module_actions_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * Internal dependencies */ /** * Returns an action object used in signalling that authors have been received. * * @param {string} queryID Query ID. * @param {Array|Object} users Users received. * * @return {Object} Action object. */ function receiveUserQuery(queryID, users) { return { type: 'RECEIVE_USER_QUERY', users: Object(external_this_lodash_["castArray"])(users), queryID: queryID }; } /** * Returns an action used in signalling that the current user has been received. * * @param {Object} currentUser Current user object. * * @return {Object} Action object. */ function receiveCurrentUser(currentUser) { return { type: 'RECEIVE_CURRENT_USER', currentUser: currentUser }; } /** * Returns an action object used in adding new entities. * * @param {Array} entities Entities received. * * @return {Object} Action object. */ function addEntities(entities) { return { type: 'ADD_ENTITIES', entities: entities }; } /** * Returns an action object used in signalling that entity records have been received. * * @param {string} kind Kind of the received entity. * @param {string} name Name of the received entity. * @param {Array|Object} records Records received. * @param {?Object} query Query Object. * @param {?boolean} invalidateCache Should invalidate query caches * * @return {Object} Action object. */ function receiveEntityRecords(kind, name, records, query) { var invalidateCache = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; // Auto drafts should not have titles, but some plugins rely on them so we can't filter this // on the server. if (kind === 'postType') { records = Object(external_this_lodash_["castArray"])(records).map(function (record) { return record.status === 'auto-draft' ? build_module_actions_objectSpread({}, record, { title: '' }) : record; }); } var action; if (query) { action = receiveQueriedItems(records, query); } else { action = receiveItems(records); } return build_module_actions_objectSpread({}, action, { kind: kind, name: name, invalidateCache: invalidateCache }); } /** * Returns an action object used in signalling that the index has been received. * * @param {Object} themeSupports Theme support for the current theme. * * @return {Object} Action object. */ function receiveThemeSupports(themeSupports) { return { type: 'RECEIVE_THEME_SUPPORTS', themeSupports: themeSupports }; } /** * Returns an action object used in signalling that the preview data for * a given URl has been received. * * @param {string} url URL to preview the embed for. * @param {*} preview Preview data. * * @return {Object} Action object. */ function receiveEmbedPreview(url, preview) { return { type: 'RECEIVE_EMBED_PREVIEW', url: url, preview: preview }; } /** * Returns an action object that triggers an * edit to an entity record. * * @param {string} kind Kind of the edited entity record. * @param {string} name Name of the edited entity record. * @param {number} recordId Record ID of the edited entity record. * @param {Object} edits The edits. * @param {Object} options Options for the edit. * @param {boolean} options.undoIgnore Whether to ignore the edit in undo history or not. * * @return {Object} Action object. */ function actions_editEntityRecord(kind, name, recordId, edits) { var options, entity, _entity$transientEdit, transientEdits, _entity$mergedEdits, mergedEdits, record, editedRecord, edit, _args = arguments; return external_this_regeneratorRuntime_default.a.wrap(function editEntityRecord$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: options = _args.length > 4 && _args[4] !== undefined ? _args[4] : {}; _context.next = 3; return controls_select('getEntity', kind, name); case 3: entity = _context.sent; if (entity) { _context.next = 6; break; } throw new Error("The entity being edited (".concat(kind, ", ").concat(name, ") does not have a loaded config.")); case 6: _entity$transientEdit = entity.transientEdits, transientEdits = _entity$transientEdit === void 0 ? {} : _entity$transientEdit, _entity$mergedEdits = entity.mergedEdits, mergedEdits = _entity$mergedEdits === void 0 ? {} : _entity$mergedEdits; _context.next = 9; return controls_select('getRawEntityRecord', kind, name, recordId); case 9: record = _context.sent; _context.next = 12; return controls_select('getEditedEntityRecord', kind, name, recordId); case 12: editedRecord = _context.sent; edit = { kind: kind, name: name, recordId: recordId, // Clear edits when they are equal to their persisted counterparts // so that the property is not considered dirty. edits: Object.keys(edits).reduce(function (acc, key) { var recordValue = record[key]; var editedRecordValue = editedRecord[key]; var value = mergedEdits[key] ? build_module_actions_objectSpread({}, editedRecordValue, {}, edits[key]) : edits[key]; acc[key] = Object(external_this_lodash_["isEqual"])(recordValue, value) ? undefined : value; return acc; }, {}), transientEdits: transientEdits }; return _context.abrupt("return", build_module_actions_objectSpread({ type: 'EDIT_ENTITY_RECORD' }, edit, { meta: { undo: !options.undoIgnore && build_module_actions_objectSpread({}, edit, { // Send the current values for things like the first undo stack entry. edits: Object.keys(edits).reduce(function (acc, key) { acc[key] = editedRecord[key]; return acc; }, {}) }) } })); case 15: case "end": return _context.stop(); } } }, _marked); } /** * Action triggered to undo the last edit to * an entity record, if any. */ function undo() { var undoEdit; return external_this_regeneratorRuntime_default.a.wrap(function undo$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return controls_select('getUndoEdit'); case 2: undoEdit = _context2.sent; if (undoEdit) { _context2.next = 5; break; } return _context2.abrupt("return"); case 5: _context2.next = 7; return build_module_actions_objectSpread({ type: 'EDIT_ENTITY_RECORD' }, undoEdit, { meta: { isUndo: true } }); case 7: case "end": return _context2.stop(); } } }, _marked2); } /** * Action triggered to redo the last undoed * edit to an entity record, if any. */ function redo() { var redoEdit; return external_this_regeneratorRuntime_default.a.wrap(function redo$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return controls_select('getRedoEdit'); case 2: redoEdit = _context3.sent; if (redoEdit) { _context3.next = 5; break; } return _context3.abrupt("return"); case 5: _context3.next = 7; return build_module_actions_objectSpread({ type: 'EDIT_ENTITY_RECORD' }, redoEdit, { meta: { isRedo: true } }); case 7: case "end": return _context3.stop(); } } }, _marked3); } /** * Forces the creation of a new undo level. * * @return {Object} Action object. */ function __unstableCreateUndoLevel() { return { type: 'CREATE_UNDO_LEVEL' }; } /** * Action triggered to save an entity record. * * @param {string} kind Kind of the received entity. * @param {string} name Name of the received entity. * @param {Object} record Record to be saved. * @param {Object} options Saving options. */ function saveEntityRecord(kind, name, record) { var _ref, _ref$isAutosave, isAutosave, entities, entity, entityIdKey, recordId, _i, _Object$entries, _Object$entries$_i, key, value, evaluatedValue, updatedRecord, error, persistedEntity, currentEdits, path, persistedRecord, currentUser, currentUserId, autosavePost, data, newRecord, _data, _args4 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function saveEntityRecord$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: _ref = _args4.length > 3 && _args4[3] !== undefined ? _args4[3] : { isAutosave: false }, _ref$isAutosave = _ref.isAutosave, isAutosave = _ref$isAutosave === void 0 ? false : _ref$isAutosave; _context4.next = 3; return getKindEntities(kind); case 3: entities = _context4.sent; entity = Object(external_this_lodash_["find"])(entities, { kind: kind, name: name }); if (entity) { _context4.next = 7; break; } return _context4.abrupt("return"); case 7: entityIdKey = entity.key || DEFAULT_ENTITY_KEY; recordId = record[entityIdKey]; // Evaluate optimized edits. // (Function edits that should be evaluated on save to avoid expensive computations on every edit.) _i = 0, _Object$entries = Object.entries(record); case 10: if (!(_i < _Object$entries.length)) { _context4.next = 24; break; } _Object$entries$_i = Object(slicedToArray["a" /* default */])(_Object$entries[_i], 2), key = _Object$entries$_i[0], value = _Object$entries$_i[1]; if (!(typeof value === 'function')) { _context4.next = 21; break; } _context4.t0 = value; _context4.next = 16; return controls_select('getEditedEntityRecord', kind, name, recordId); case 16: _context4.t1 = _context4.sent; evaluatedValue = (0, _context4.t0)(_context4.t1); _context4.next = 20; return actions_editEntityRecord(kind, name, recordId, Object(defineProperty["a" /* default */])({}, key, evaluatedValue), { undoIgnore: true }); case 20: record[key] = evaluatedValue; case 21: _i++; _context4.next = 10; break; case 24: _context4.next = 26; return { type: 'SAVE_ENTITY_RECORD_START', kind: kind, name: name, recordId: recordId, isAutosave: isAutosave }; case 26: _context4.prev = 26; path = "".concat(entity.baseURL).concat(recordId ? '/' + recordId : ''); _context4.next = 30; return controls_select('getRawEntityRecord', kind, name, recordId); case 30: persistedRecord = _context4.sent; if (!isAutosave) { _context4.next = 55; break; } _context4.next = 34; return controls_select('getCurrentUser'); case 34: currentUser = _context4.sent; currentUserId = currentUser ? currentUser.id : undefined; _context4.next = 38; return controls_select('getAutosave', persistedRecord.type, persistedRecord.id, currentUserId); case 38: autosavePost = _context4.sent; // Autosaves need all expected fields to be present. // So we fallback to the previous autosave and then // to the actual persisted entity if the edits don't // have a value. data = build_module_actions_objectSpread({}, persistedRecord, {}, autosavePost, {}, record); data = Object.keys(data).reduce(function (acc, key) { if (['title', 'excerpt', 'content'].includes(key)) { // Edits should be the "raw" attribute values. acc[key] = Object(external_this_lodash_["get"])(data[key], 'raw', data[key]); } return acc; }, { status: data.status === 'auto-draft' ? 'draft' : data.status }); _context4.next = 43; return apiFetch({ path: "".concat(path, "/autosaves"), method: 'POST', data: data }); case 43: updatedRecord = _context4.sent; if (!(persistedRecord.id === updatedRecord.id)) { _context4.next = 51; break; } newRecord = build_module_actions_objectSpread({}, persistedRecord, {}, data, {}, updatedRecord); newRecord = Object.keys(newRecord).reduce(function (acc, key) { // These properties are persisted in autosaves. if (['title', 'excerpt', 'content'].includes(key)) { // Edits should be the "raw" attribute values. acc[key] = Object(external_this_lodash_["get"])(newRecord[key], 'raw', newRecord[key]); } else if (key === 'status') { // Status is only persisted in autosaves when going from // "auto-draft" to "draft". acc[key] = persistedRecord.status === 'auto-draft' && newRecord.status === 'draft' ? newRecord.status : persistedRecord.status; } else { // These properties are not persisted in autosaves. acc[key] = Object(external_this_lodash_["get"])(persistedRecord[key], 'raw', persistedRecord[key]); } return acc; }, {}); _context4.next = 49; return receiveEntityRecords(kind, name, newRecord, undefined, true); case 49: _context4.next = 53; break; case 51: _context4.next = 53; return receiveAutosaves(persistedRecord.id, updatedRecord); case 53: _context4.next = 70; break; case 55: // Auto drafts should be converted to drafts on explicit saves and we should not respect their default title, // but some plugins break with this behavior so we can't filter it on the server. _data = record; if (kind === 'postType' && persistedRecord && persistedRecord.status === 'auto-draft') { if (!_data.status) { _data = build_module_actions_objectSpread({}, _data, { status: 'draft' }); } if (!_data.title || _data.title === 'Auto Draft') { _data = build_module_actions_objectSpread({}, _data, { title: '' }); } } // Get the full local version of the record before the update, // to merge it with the edits and then propagate it to subscribers _context4.next = 59; return controls_select('__experimentalGetEntityRecordNoResolver', kind, name, recordId); case 59: persistedEntity = _context4.sent; _context4.next = 62; return controls_select('getEntityRecordEdits', kind, name, recordId); case 62: currentEdits = _context4.sent; _context4.next = 65; return receiveEntityRecords(kind, name, build_module_actions_objectSpread({}, persistedEntity, {}, _data), undefined, true); case 65: _context4.next = 67; return apiFetch({ path: path, method: recordId ? 'PUT' : 'POST', data: _data }); case 67: updatedRecord = _context4.sent; _context4.next = 70; return receiveEntityRecords(kind, name, updatedRecord, undefined, true); case 70: _context4.next = 93; break; case 72: _context4.prev = 72; _context4.t2 = _context4["catch"](26); error = _context4.t2; // If we got to the point in the try block where we made an optimistic update, // we need to roll it back here. if (!(persistedEntity && currentEdits)) { _context4.next = 93; break; } _context4.next = 78; return receiveEntityRecords(kind, name, persistedEntity, undefined, true); case 78: _context4.t3 = actions_editEntityRecord; _context4.t4 = kind; _context4.t5 = name; _context4.t6 = recordId; _context4.t7 = build_module_actions_objectSpread; _context4.t8 = {}; _context4.t9 = currentEdits; _context4.t10 = {}; _context4.next = 88; return controls_select('getEntityRecordEdits', kind, name, recordId); case 88: _context4.t11 = _context4.sent; _context4.t12 = (0, _context4.t7)(_context4.t8, _context4.t9, _context4.t10, _context4.t11); _context4.t13 = { undoIgnore: true }; _context4.next = 93; return (0, _context4.t3)(_context4.t4, _context4.t5, _context4.t6, _context4.t12, _context4.t13); case 93: _context4.next = 95; return { type: 'SAVE_ENTITY_RECORD_FINISH', kind: kind, name: name, recordId: recordId, error: error, isAutosave: isAutosave }; case 95: return _context4.abrupt("return", updatedRecord); case 96: case "end": return _context4.stop(); } } }, _marked4, null, [[26, 72]]); } /** * Action triggered to save an entity record's edits. * * @param {string} kind Kind of the entity. * @param {string} name Name of the entity. * @param {Object} recordId ID of the record. * @param {Object} options Saving options. */ function saveEditedEntityRecord(kind, name, recordId, options) { var edits, record; return external_this_regeneratorRuntime_default.a.wrap(function saveEditedEntityRecord$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: _context5.next = 2; return controls_select('hasEditsForEntityRecord', kind, name, recordId); case 2: if (_context5.sent) { _context5.next = 4; break; } return _context5.abrupt("return"); case 4: _context5.next = 6; return controls_select('getEntityRecordNonTransientEdits', kind, name, recordId); case 6: edits = _context5.sent; record = build_module_actions_objectSpread({ id: recordId }, edits); return _context5.delegateYield(saveEntityRecord(kind, name, record, options), "t0", 9); case 9: case "end": return _context5.stop(); } } }, _marked5); } /** * Returns an action object used in signalling that Upload permissions have been received. * * @param {boolean} hasUploadPermissions Does the user have permission to upload files? * * @return {Object} Action object. */ function receiveUploadPermissions(hasUploadPermissions) { return { type: 'RECEIVE_USER_PERMISSION', key: 'create/media', isAllowed: hasUploadPermissions }; } /** * Returns an action object used in signalling that the current user has * permission to perform an action on a REST resource. * * @param {string} key A key that represents the action and REST resource. * @param {boolean} isAllowed Whether or not the user can perform the action. * * @return {Object} Action object. */ function receiveUserPermission(key, isAllowed) { return { type: 'RECEIVE_USER_PERMISSION', key: key, isAllowed: isAllowed }; } /** * Returns an action object used in signalling that the autosaves for a * post have been received. * * @param {number} postId The id of the post that is parent to the autosave. * @param {Array|Object} autosaves An array of autosaves or singular autosave object. * * @return {Object} Action object. */ function receiveAutosaves(postId, autosaves) { return { type: 'RECEIVE_AUTOSAVES', postId: postId, autosaves: Object(external_this_lodash_["castArray"])(autosaves) }; } // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/entities.js var entities_marked = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(loadPostTypeEntities), entities_marked2 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(loadTaxonomyEntities), entities_marked3 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(getKindEntities); /** * External dependencies */ /** * Internal dependencies */ var DEFAULT_ENTITY_KEY = 'id'; var defaultEntities = [{ name: 'site', kind: 'root', baseURL: '/wp/v2/settings' }, { name: 'postType', kind: 'root', key: 'slug', baseURL: '/wp/v2/types' }, { name: 'media', kind: 'root', baseURL: '/wp/v2/media', plural: 'mediaItems' }, { name: 'taxonomy', kind: 'root', key: 'slug', baseURL: '/wp/v2/taxonomies', plural: 'taxonomies' }, { name: 'widgetArea', kind: 'root', baseURL: '/__experimental/widget-areas', plural: 'widgetAreas', transientEdits: { blocks: true } }, { name: 'user', kind: 'root', baseURL: '/wp/v2/users', plural: 'users' }]; var kinds = [{ name: 'postType', loadEntities: loadPostTypeEntities }, { name: 'taxonomy', loadEntities: loadTaxonomyEntities }]; /** * Returns the list of post type entities. * * @return {Promise} Entities promise */ function loadPostTypeEntities() { var postTypes; return external_this_regeneratorRuntime_default.a.wrap(function loadPostTypeEntities$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return apiFetch({ path: '/wp/v2/types?context=edit' }); case 2: postTypes = _context.sent; return _context.abrupt("return", Object(external_this_lodash_["map"])(postTypes, function (postType, name) { return { kind: 'postType', baseURL: '/wp/v2/' + postType.rest_base, name: name, transientEdits: { blocks: true, selectionStart: true, selectionEnd: true }, mergedEdits: { meta: true } }; })); case 4: case "end": return _context.stop(); } } }, entities_marked); } /** * Returns the list of the taxonomies entities. * * @return {Promise} Entities promise */ function loadTaxonomyEntities() { var taxonomies; return external_this_regeneratorRuntime_default.a.wrap(function loadTaxonomyEntities$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return apiFetch({ path: '/wp/v2/taxonomies?context=edit' }); case 2: taxonomies = _context2.sent; return _context2.abrupt("return", Object(external_this_lodash_["map"])(taxonomies, function (taxonomy, name) { return { kind: 'taxonomy', baseURL: '/wp/v2/' + taxonomy.rest_base, name: name }; })); case 4: case "end": return _context2.stop(); } } }, entities_marked2); } /** * Returns the entity's getter method name given its kind and name. * * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {string} prefix Function prefix. * @param {boolean} usePlural Whether to use the plural form or not. * * @return {string} Method name */ var entities_getMethodName = function getMethodName(kind, name) { var prefix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'get'; var usePlural = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var entity = Object(external_this_lodash_["find"])(defaultEntities, { kind: kind, name: name }); var kindPrefix = kind === 'root' ? '' : Object(external_this_lodash_["upperFirst"])(Object(external_this_lodash_["camelCase"])(kind)); var nameSuffix = Object(external_this_lodash_["upperFirst"])(Object(external_this_lodash_["camelCase"])(name)) + (usePlural ? 's' : ''); var suffix = usePlural && entity.plural ? Object(external_this_lodash_["upperFirst"])(Object(external_this_lodash_["camelCase"])(entity.plural)) : nameSuffix; return "".concat(prefix).concat(kindPrefix).concat(suffix); }; /** * Loads the kind entities into the store. * * @param {string} kind Kind * * @return {Array} Entities */ function getKindEntities(kind) { var entities, kindConfig; return external_this_regeneratorRuntime_default.a.wrap(function getKindEntities$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return controls_select('getEntitiesByKind', kind); case 2: entities = _context3.sent; if (!(entities && entities.length !== 0)) { _context3.next = 5; break; } return _context3.abrupt("return", entities); case 5: kindConfig = Object(external_this_lodash_["find"])(kinds, { name: kind }); if (kindConfig) { _context3.next = 8; break; } return _context3.abrupt("return", []); case 8: _context3.next = 10; return kindConfig.loadEntities(); case 10: entities = _context3.sent; _context3.next = 13; return addEntities(entities); case 13: return _context3.abrupt("return", entities); case 14: case "end": return _context3.stop(); } } }, entities_marked3); } // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/queried-data/reducer.js function reducer_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function reducer_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { reducer_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { reducer_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Returns a merged array of item IDs, given details of the received paginated * items. The array is sparse-like with `undefined` entries where holes exist. * * @param {?Array} itemIds Original item IDs (default empty array). * @param {number[]} nextItemIds Item IDs to merge. * @param {number} page Page of items merged. * @param {number} perPage Number of items per page. * * @return {number[]} Merged array of item IDs. */ function getMergedItemIds(itemIds, nextItemIds, page, perPage) { var nextItemIdsStartIndex = (page - 1) * perPage; // If later page has already been received, default to the larger known // size of the existing array, else calculate as extending the existing. var size = Math.max(itemIds.length, nextItemIdsStartIndex + nextItemIds.length); // Preallocate array since size is known. var mergedItemIds = new Array(size); for (var i = 0; i < size; i++) { // Preserve existing item ID except for subset of range of next items. var isInNextItemsRange = i >= nextItemIdsStartIndex && i < nextItemIdsStartIndex + nextItemIds.length; mergedItemIds[i] = isInNextItemsRange ? nextItemIds[i - nextItemIdsStartIndex] : itemIds[i]; } return mergedItemIds; } /** * Reducer tracking items state, keyed by ID. Items are assumed to be normal, * where identifiers are common across all queries. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Next state. */ function reducer_items() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_ITEMS': var key = action.key || DEFAULT_ENTITY_KEY; return reducer_objectSpread({}, state, {}, action.items.reduce(function (accumulator, value) { var itemId = value[key]; accumulator[itemId] = conservativeMapItem(state[itemId], value); return accumulator; }, {})); } return state; } /** * Reducer tracking queries state, keyed by stable query key. Each reducer * query object includes `itemIds` and `requestingPageByPerPage`. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Next state. */ var queries = Object(external_this_lodash_["flowRight"])([// Limit to matching action type so we don't attempt to replace action on // an unhandled action. if_matching_action(function (action) { return 'query' in action; }), // Inject query parts into action for use both in `onSubKey` and reducer. replace_action(function (action) { // `ifMatchingAction` still passes on initialization, where state is // undefined and a query is not assigned. Avoid attempting to parse // parts. `onSubKey` will omit by lack of `stableKey`. if (action.query) { return reducer_objectSpread({}, action, {}, get_query_parts(action.query)); } return action; }), // Queries shape is shared, but keyed by query `stableKey` part. Original // reducer tracks only a single query object. on_sub_key('stableKey')])(function () { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null; var action = arguments.length > 1 ? arguments[1] : undefined; var type = action.type, page = action.page, perPage = action.perPage, _action$key = action.key, key = _action$key === void 0 ? DEFAULT_ENTITY_KEY : _action$key; if (type !== 'RECEIVE_ITEMS') { return state; } return getMergedItemIds(state || [], Object(external_this_lodash_["map"])(action.items, key), page, perPage); }); /* harmony default export */ var queried_data_reducer = (Object(external_this_wp_data_["combineReducers"])({ items: reducer_items, queries: queries })); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/queried-data/index.js // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/reducer.js function build_module_reducer_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function build_module_reducer_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { build_module_reducer_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { build_module_reducer_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Reducer managing terms state. Keyed by taxonomy slug, the value is either * undefined (if no request has been made for given taxonomy), null (if a * request is in-flight for given taxonomy), or the array of terms for the * taxonomy. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function terms() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_TERMS': return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.taxonomy, action.terms)); } return state; } /** * Reducer managing authors state. Keyed by id. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer_users() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { byId: {}, queries: {} }; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_USER_QUERY': return { byId: build_module_reducer_objectSpread({}, state.byId, {}, Object(external_this_lodash_["keyBy"])(action.users, 'id')), queries: build_module_reducer_objectSpread({}, state.queries, Object(defineProperty["a" /* default */])({}, action.queryID, Object(external_this_lodash_["map"])(action.users, function (user) { return user.id; }))) }; } return state; } /** * Reducer managing current user state. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer_currentUser() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_CURRENT_USER': return action.currentUser; } return state; } /** * Reducer managing taxonomies. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer_taxonomies() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_TAXONOMIES': return action.taxonomies; } return state; } /** * Reducer managing theme supports data. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function themeSupports() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_THEME_SUPPORTS': return build_module_reducer_objectSpread({}, state, {}, action.themeSupports); } return state; } /** * Higher Order Reducer for a given entity config. It supports: * * - Fetching * - Editing * - Saving * * @param {Object} entityConfig Entity config. * * @return {Function} Reducer. */ function reducer_entity(entityConfig) { return Object(external_this_lodash_["flowRight"])([// Limit to matching action type so we don't attempt to replace action on // an unhandled action. if_matching_action(function (action) { return action.name && action.kind && action.name === entityConfig.name && action.kind === entityConfig.kind; }), // Inject the entity config into the action. replace_action(function (action) { return build_module_reducer_objectSpread({}, action, { key: entityConfig.key || DEFAULT_ENTITY_KEY }); })])(Object(external_this_wp_data_["combineReducers"])({ queriedData: queried_data_reducer, edits: function edits() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_ITEMS': var nextState = build_module_reducer_objectSpread({}, state); var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { var _loop = function _loop() { var record = _step.value; var recordId = record[action.key]; var edits = nextState[recordId]; if (!edits) { return "continue"; } var nextEdits = Object.keys(edits).reduce(function (acc, key) { // If the edited value is still different to the persisted value, // keep the edited value in edits. if ( // Edits are the "raw" attribute values, but records may have // objects with more properties, so we use `get` here for the // comparison. !Object(external_this_lodash_["isEqual"])(edits[key], Object(external_this_lodash_["get"])(record[key], 'raw', record[key]))) { acc[key] = edits[key]; } return acc; }, {}); if (Object.keys(nextEdits).length) { nextState[recordId] = nextEdits; } else { delete nextState[recordId]; } }; for (var _iterator = action.items[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var _ret = _loop(); if (_ret === "continue") continue; } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return != null) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } return nextState; case 'EDIT_ENTITY_RECORD': var nextEdits = build_module_reducer_objectSpread({}, state[action.recordId], {}, action.edits); Object.keys(nextEdits).forEach(function (key) { // Delete cleared edits so that the properties // are not considered dirty. if (nextEdits[key] === undefined) { delete nextEdits[key]; } }); return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.recordId, nextEdits)); } return state; }, saving: function saving() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'SAVE_ENTITY_RECORD_START': case 'SAVE_ENTITY_RECORD_FINISH': return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.recordId, { pending: action.type === 'SAVE_ENTITY_RECORD_START', error: action.error, isAutosave: action.isAutosave })); } return state; } })); } /** * Reducer keeping track of the registered entities. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function entitiesConfig() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultEntities; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'ADD_ENTITIES': return [].concat(Object(toConsumableArray["a" /* default */])(state), Object(toConsumableArray["a" /* default */])(action.entities)); } return state; } /** * Reducer keeping track of the registered entities config and data. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ var reducer_entities = function entities() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; var newConfig = entitiesConfig(state.config, action); // Generates a dynamic reducer for the entities var entitiesDataReducer = state.reducer; if (!entitiesDataReducer || newConfig !== state.config) { var entitiesByKind = Object(external_this_lodash_["groupBy"])(newConfig, 'kind'); entitiesDataReducer = Object(external_this_wp_data_["combineReducers"])(Object.entries(entitiesByKind).reduce(function (memo, _ref) { var _ref2 = Object(slicedToArray["a" /* default */])(_ref, 2), kind = _ref2[0], subEntities = _ref2[1]; var kindReducer = Object(external_this_wp_data_["combineReducers"])(subEntities.reduce(function (kindMemo, entityConfig) { return build_module_reducer_objectSpread({}, kindMemo, Object(defineProperty["a" /* default */])({}, entityConfig.name, reducer_entity(entityConfig))); }, {})); memo[kind] = kindReducer; return memo; }, {})); } var newData = entitiesDataReducer(state.data, action); if (newData === state.data && newConfig === state.config && entitiesDataReducer === state.reducer) { return state; } return { reducer: entitiesDataReducer, data: newData, config: newConfig }; }; /** * Reducer keeping track of entity edit undo history. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ var UNDO_INITIAL_STATE = []; UNDO_INITIAL_STATE.offset = 0; var lastEditAction; function reducer_undo() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : UNDO_INITIAL_STATE; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'EDIT_ENTITY_RECORD': case 'CREATE_UNDO_LEVEL': var isCreateUndoLevel = action.type === 'CREATE_UNDO_LEVEL'; var isUndoOrRedo = !isCreateUndoLevel && (action.meta.isUndo || action.meta.isRedo); if (isCreateUndoLevel) { action = lastEditAction; } else if (!isUndoOrRedo) { // Don't lose the last edit cache if the new one only has transient edits. // Transient edits don't create new levels so updating the cache would make // us skip an edit later when creating levels explicitly. if (Object.keys(action.edits).some(function (key) { return !action.transientEdits[key]; })) { lastEditAction = action; } else { lastEditAction = build_module_reducer_objectSpread({}, action, { edits: build_module_reducer_objectSpread({}, lastEditAction && lastEditAction.edits, {}, action.edits) }); } } var nextState; if (isUndoOrRedo) { nextState = Object(toConsumableArray["a" /* default */])(state); nextState.offset = state.offset + (action.meta.isUndo ? -1 : 1); if (state.flattenedUndo) { // The first undo in a sequence of undos might happen while we have // flattened undos in state. If this is the case, we want execution // to continue as if we were creating an explicit undo level. This // will result in an extra undo level being appended with the flattened // undo values. isCreateUndoLevel = true; action = lastEditAction; } else { return nextState; } } if (!action.meta.undo) { return state; } // Transient edits don't create an undo level, but are // reachable in the next meaningful edit to which they // are merged. They are defined in the entity's config. if (!isCreateUndoLevel && !Object.keys(action.edits).some(function (key) { return !action.transientEdits[key]; })) { nextState = Object(toConsumableArray["a" /* default */])(state); nextState.flattenedUndo = build_module_reducer_objectSpread({}, state.flattenedUndo, {}, action.edits); nextState.offset = state.offset; return nextState; } // Clear potential redos, because this only supports linear history. nextState = nextState || state.slice(0, state.offset || undefined); nextState.offset = nextState.offset || 0; nextState.pop(); if (!isCreateUndoLevel) { nextState.push({ kind: action.meta.undo.kind, name: action.meta.undo.name, recordId: action.meta.undo.recordId, edits: build_module_reducer_objectSpread({}, state.flattenedUndo, {}, action.meta.undo.edits) }); } // When an edit is a function it's an optimization to avoid running some expensive operation. // We can't rely on the function references being the same so we opt out of comparing them here. var comparisonUndoEdits = Object.values(action.meta.undo.edits).filter(function (edit) { return typeof edit !== 'function'; }); var comparisonEdits = Object.values(action.edits).filter(function (edit) { return typeof edit !== 'function'; }); if (!external_this_wp_isShallowEqual_default()(comparisonUndoEdits, comparisonEdits)) { nextState.push({ kind: action.kind, name: action.name, recordId: action.recordId, edits: isCreateUndoLevel ? build_module_reducer_objectSpread({}, state.flattenedUndo, {}, action.edits) : action.edits }); } return nextState; } return state; } /** * Reducer managing embed preview data. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function embedPreviews() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_EMBED_PREVIEW': var url = action.url, preview = action.preview; return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, url, preview)); } return state; } /** * State which tracks whether the user can perform an action on a REST * resource. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function userPermissions() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_USER_PERMISSION': return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, action.key, action.isAllowed)); } return state; } /** * Reducer returning autosaves keyed by their parent's post id. * * @param {Object} state Current state. * @param {Object} action Dispatched action. * * @return {Object} Updated state. */ function reducer_autosaves() { var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var action = arguments.length > 1 ? arguments[1] : undefined; switch (action.type) { case 'RECEIVE_AUTOSAVES': var postId = action.postId, autosavesData = action.autosaves; return build_module_reducer_objectSpread({}, state, Object(defineProperty["a" /* default */])({}, postId, autosavesData)); } return state; } /* harmony default export */ var build_module_reducer = (Object(external_this_wp_data_["combineReducers"])({ terms: terms, users: reducer_users, currentUser: reducer_currentUser, taxonomies: reducer_taxonomies, themeSupports: themeSupports, entities: reducer_entities, undo: reducer_undo, embedPreviews: embedPreviews, userPermissions: userPermissions, autosaves: reducer_autosaves })); // EXTERNAL MODULE: external {"this":["wp","deprecated"]} var external_this_wp_deprecated_ = __webpack_require__("NMb1"); var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/name.js /** * The reducer key used by core data in store registration. * This is defined in a separate file to avoid cycle-dependency * * @type {string} */ var REDUCER_KEY = 'core'; // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/selectors.js function selectors_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function selectors_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { selectors_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { selectors_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Returns true if a request is in progress for embed preview data, or false * otherwise. * * @param {Object} state Data state. * @param {string} url URL the preview would be for. * * @return {boolean} Whether a request is in progress for an embed preview. */ var isRequestingEmbedPreview = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state, url) { return select('core/data').isResolving(REDUCER_KEY, 'getEmbedPreview', [url]); }; }); /** * Returns all available authors. * * @param {Object} state Data state. * * @return {Array} Authors list. */ function getAuthors(state) { return getUserQueryResults(state, 'authors'); } /** * Returns the current user. * * @param {Object} state Data state. * * @return {Object} Current user object. */ function getCurrentUser(state) { return state.currentUser; } /** * Returns all the users returned by a query ID. * * @param {Object} state Data state. * @param {string} queryID Query ID. * * @return {Array} Users list. */ var getUserQueryResults = Object(rememo["a" /* default */])(function (state, queryID) { var queryResults = state.users.queries[queryID]; return Object(external_this_lodash_["map"])(queryResults, function (id) { return state.users.byId[id]; }); }, function (state, queryID) { return [state.users.queries[queryID], state.users.byId]; }); /** * Returns whether the entities for the give kind are loaded. * * @param {Object} state Data state. * @param {string} kind Entity kind. * * @return {boolean} Whether the entities are loaded */ function getEntitiesByKind(state, kind) { return Object(external_this_lodash_["filter"])(state.entities.config, { kind: kind }); } /** * Returns the entity object given its kind and name. * * @param {Object} state Data state. * @param {string} kind Entity kind. * @param {string} name Entity name. * * @return {Object} Entity */ function selectors_getEntity(state, kind, name) { return Object(external_this_lodash_["find"])(state.entities.config, { kind: kind, name: name }); } /** * Returns the Entity's record object by key. * * @param {Object} state State tree * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} key Record's key * * @return {Object?} Record. */ function getEntityRecord(state, kind, name, key) { return Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'queriedData', 'items', key]); } /** * Returns the Entity's record object by key. Doesn't trigger a resolver nor requests the entity from the API if the entity record isn't available in the local state. * * @param {Object} state State tree * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} key Record's key * * @return {Object?} Record. */ function __experimentalGetEntityRecordNoResolver(state, kind, name, key) { return getEntityRecord(state, kind, name, key); } /** * Returns the entity's record object by key, * with its attributes mapped to their raw values. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} key Record's key. * * @return {Object?} Object with the entity's raw attributes. */ var getRawEntityRecord = Object(rememo["a" /* default */])(function (state, kind, name, key) { var record = getEntityRecord(state, kind, name, key); return record && Object.keys(record).reduce(function (accumulator, _key) { // Because edits are the "raw" attribute values, // we return those from record selectors to make rendering, // comparisons, and joins with edits easier. accumulator[_key] = Object(external_this_lodash_["get"])(record[_key], 'raw', record[_key]); return accumulator; }, {}); }, function (state) { return [state.entities.data]; }); /** * Returns the Entity's records. * * @param {Object} state State tree * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {?Object} query Optional terms query. * * @return {Array} Records. */ function getEntityRecords(state, kind, name, query) { var queriedState = Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'queriedData']); if (!queriedState) { return []; } return getQueriedItems(queriedState, query); } /** * Returns a map of objects with each edited * raw entity record and its corresponding edits. * * The map is keyed by entity `kind => name => key => { rawRecord, edits }`. * * @param {Object} state State tree. * * @return {{ [kind: string]: { [name: string]: { [key: string]: { rawRecord: Object, edits: Object } } } }} The map of edited records with their edits. */ var getEntityRecordChangesByRecord = Object(rememo["a" /* default */])(function (state) { var data = state.entities.data; return Object.keys(data).reduce(function (acc, kind) { Object.keys(data[kind]).forEach(function (name) { var editsKeys = Object.keys(data[kind][name].edits).filter(function (editsKey) { return hasEditsForEntityRecord(state, kind, name, editsKey); }); if (editsKeys.length) { if (!acc[kind]) { acc[kind] = {}; } if (!acc[kind][name]) { acc[kind][name] = {}; } editsKeys.forEach(function (editsKey) { return acc[kind][name][editsKey] = { rawRecord: getRawEntityRecord(state, kind, name, editsKey), edits: getEntityRecordNonTransientEdits(state, kind, name, editsKey) }; }); } }); return acc; }, {}); }, function (state) { return [state.entities.data]; }); /** * Returns the specified entity record's edits. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {Object?} The entity record's edits. */ function getEntityRecordEdits(state, kind, name, recordId) { return Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'edits', recordId]); } /** * Returns the specified entity record's non transient edits. * * Transient edits don't create an undo level, and * are not considered for change detection. * They are defined in the entity's config. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {Object?} The entity record's non transient edits. */ var getEntityRecordNonTransientEdits = Object(rememo["a" /* default */])(function (state, kind, name, recordId) { var _ref = selectors_getEntity(state, kind, name) || {}, transientEdits = _ref.transientEdits; var edits = getEntityRecordEdits(state, kind, name, recordId) || {}; if (!transientEdits) { return edits; } return Object.keys(edits).reduce(function (acc, key) { if (!transientEdits[key]) { acc[key] = edits[key]; } return acc; }, {}); }, function (state) { return [state.entities.config, state.entities.data]; }); /** * Returns true if the specified entity record has edits, * and false otherwise. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {boolean} Whether the entity record has edits or not. */ function hasEditsForEntityRecord(state, kind, name, recordId) { return isSavingEntityRecord(state, kind, name, recordId) || Object.keys(getEntityRecordNonTransientEdits(state, kind, name, recordId)).length > 0; } /** * Returns the specified entity record, merged with its edits. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {Object?} The entity record, merged with its edits. */ var getEditedEntityRecord = Object(rememo["a" /* default */])(function (state, kind, name, recordId) { return selectors_objectSpread({}, getRawEntityRecord(state, kind, name, recordId), {}, getEntityRecordEdits(state, kind, name, recordId)); }, function (state) { return [state.entities.data]; }); /** * Returns true if the specified entity record is autosaving, and false otherwise. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {boolean} Whether the entity record is autosaving or not. */ function isAutosavingEntityRecord(state, kind, name, recordId) { var _get = Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'saving', recordId], {}), pending = _get.pending, isAutosave = _get.isAutosave; return Boolean(pending && isAutosave); } /** * Returns true if the specified entity record is saving, and false otherwise. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {boolean} Whether the entity record is saving or not. */ function isSavingEntityRecord(state, kind, name, recordId) { return Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'saving', recordId, 'pending'], false); } /** * Returns the specified entity record's last save error. * * @param {Object} state State tree. * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} recordId Record ID. * * @return {Object?} The entity record's save error. */ function getLastEntitySaveError(state, kind, name, recordId) { return Object(external_this_lodash_["get"])(state.entities.data, [kind, name, 'saving', recordId, 'error']); } /** * Returns the current undo offset for the * entity records edits history. The offset * represents how many items from the end * of the history stack we are at. 0 is the * last edit, -1 is the second last, and so on. * * @param {Object} state State tree. * * @return {number} The current undo offset. */ function getCurrentUndoOffset(state) { return state.undo.offset; } /** * Returns the previous edit from the current undo offset * for the entity records edits history, if any. * * @param {Object} state State tree. * * @return {Object?} The edit. */ function getUndoEdit(state) { return state.undo[state.undo.length - 2 + getCurrentUndoOffset(state)]; } /** * Returns the next edit from the current undo offset * for the entity records edits history, if any. * * @param {Object} state State tree. * * @return {Object?} The edit. */ function getRedoEdit(state) { return state.undo[state.undo.length + getCurrentUndoOffset(state)]; } /** * Returns true if there is a previous edit from the current undo offset * for the entity records edits history, and false otherwise. * * @param {Object} state State tree. * * @return {boolean} Whether there is a previous edit or not. */ function hasUndo(state) { return Boolean(getUndoEdit(state)); } /** * Returns true if there is a next edit from the current undo offset * for the entity records edits history, and false otherwise. * * @param {Object} state State tree. * * @return {boolean} Whether there is a next edit or not. */ function hasRedo(state) { return Boolean(getRedoEdit(state)); } /** * Return theme supports data in the index. * * @param {Object} state Data state. * * @return {*} Index data. */ function getThemeSupports(state) { return state.themeSupports; } /** * Returns the embed preview for the given URL. * * @param {Object} state Data state. * @param {string} url Embedded URL. * * @return {*} Undefined if the preview has not been fetched, otherwise, the preview fetched from the embed preview API. */ function getEmbedPreview(state, url) { return state.embedPreviews[url]; } /** * Determines if the returned preview is an oEmbed link fallback. * * WordPress can be configured to return a simple link to a URL if it is not embeddable. * We need to be able to determine if a URL is embeddable or not, based on what we * get back from the oEmbed preview API. * * @param {Object} state Data state. * @param {string} url Embedded URL. * * @return {boolean} Is the preview for the URL an oEmbed link fallback. */ function isPreviewEmbedFallback(state, url) { var preview = state.embedPreviews[url]; var oEmbedLinkCheck = '' + url + ''; if (!preview) { return false; } return preview.html === oEmbedLinkCheck; } /** * Returns whether the current user can upload media. * * Calling this may trigger an OPTIONS request to the REST API via the * `canUser()` resolver. * * https://developer.wordpress.org/rest-api/reference/ * * @deprecated since 5.0. Callers should use the more generic `canUser()` selector instead of * `hasUploadPermissions()`, e.g. `canUser( 'create', 'media' )`. * * @param {Object} state Data state. * * @return {boolean} Whether or not the user can upload media. Defaults to `true` if the OPTIONS * request is being made. */ function hasUploadPermissions(state) { external_this_wp_deprecated_default()("select( 'core' ).hasUploadPermissions()", { alternative: "select( 'core' ).canUser( 'create', 'media' )" }); return Object(external_this_lodash_["defaultTo"])(canUser(state, 'create', 'media'), true); } /** * Returns whether the current user can perform the given action on the given * REST resource. * * Calling this may trigger an OPTIONS request to the REST API via the * `canUser()` resolver. * * https://developer.wordpress.org/rest-api/reference/ * * @param {Object} state Data state. * @param {string} action Action to check. One of: 'create', 'read', 'update', 'delete'. * @param {string} resource REST resource to check, e.g. 'media' or 'posts'. * @param {string=} id Optional ID of the rest resource to check. * * @return {boolean|undefined} Whether or not the user can perform the action, * or `undefined` if the OPTIONS request is still being made. */ function canUser(state, action, resource, id) { var key = Object(external_this_lodash_["compact"])([action, resource, id]).join('/'); return Object(external_this_lodash_["get"])(state, ['userPermissions', key]); } /** * Returns the latest autosaves for the post. * * May return multiple autosaves since the backend stores one autosave per * author for each post. * * @param {Object} state State tree. * @param {string} postType The type of the parent post. * @param {number} postId The id of the parent post. * * @return {?Array} An array of autosaves for the post, or undefined if there is none. */ function getAutosaves(state, postType, postId) { return state.autosaves[postId]; } /** * Returns the autosave for the post and author. * * @param {Object} state State tree. * @param {string} postType The type of the parent post. * @param {number} postId The id of the parent post. * @param {number} authorId The id of the author. * * @return {?Object} The autosave for the post and author. */ function getAutosave(state, postType, postId, authorId) { if (authorId === undefined) { return; } var autosaves = state.autosaves[postId]; return Object(external_this_lodash_["find"])(autosaves, { author: authorId }); } /** * Returns true if the REST request for autosaves has completed. * * @param {Object} state State tree. * @param {string} postType The type of the parent post. * @param {number} postId The id of the parent post. * * @return {boolean} True if the REST request was completed. False otherwise. */ var hasFetchedAutosaves = Object(external_this_wp_data_["createRegistrySelector"])(function (select) { return function (state, postType, postId) { return select(REDUCER_KEY).hasFinishedResolution('getAutosaves', [postType, postId]); }; }); /** * Returns a new reference when edited values have changed. This is useful in * inferring where an edit has been made between states by comparison of the * return values using strict equality. * * @example * * ``` * const hasEditOccurred = ( * getReferenceByDistinctEdits( beforeState ) !== * getReferenceByDistinctEdits( afterState ) * ); * ``` * * @param {Object} state Editor state. * * @return {*} A value whose reference will change only when an edit occurs. */ var getReferenceByDistinctEdits = Object(rememo["a" /* default */])(function () { return []; }, function (state) { return [state.undo.length, state.undo.offset]; }); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/resolvers.js function resolvers_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function resolvers_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { resolvers_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { resolvers_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } var resolvers_marked = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getAuthors), resolvers_marked2 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getCurrentUser), resolvers_marked3 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getEntityRecord), resolvers_marked4 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getEntityRecords), resolvers_marked5 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getThemeSupports), _marked6 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getEmbedPreview), _marked7 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_hasUploadPermissions), _marked8 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_canUser), _marked9 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getAutosaves), _marked10 = /*#__PURE__*/ external_this_regeneratorRuntime_default.a.mark(resolvers_getAutosave); /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Requests authors from the REST API. */ function resolvers_getAuthors() { var users; return external_this_regeneratorRuntime_default.a.wrap(function getAuthors$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.next = 2; return apiFetch({ path: '/wp/v2/users/?who=authors&per_page=-1' }); case 2: users = _context.sent; _context.next = 5; return receiveUserQuery('authors', users); case 5: case "end": return _context.stop(); } } }, resolvers_marked); } /** * Requests the current user from the REST API. */ function resolvers_getCurrentUser() { var currentUser; return external_this_regeneratorRuntime_default.a.wrap(function getCurrentUser$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return apiFetch({ path: '/wp/v2/users/me' }); case 2: currentUser = _context2.sent; _context2.next = 5; return receiveCurrentUser(currentUser); case 5: case "end": return _context2.stop(); } } }, resolvers_marked2); } /** * Requests an entity's record from the REST API. * * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {number} key Record's key */ function resolvers_getEntityRecord(kind, name) { var key, entities, entity, record, _args3 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function getEntityRecord$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: key = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : ''; _context3.next = 3; return getKindEntities(kind); case 3: entities = _context3.sent; entity = Object(external_this_lodash_["find"])(entities, { kind: kind, name: name }); if (entity) { _context3.next = 7; break; } return _context3.abrupt("return"); case 7: _context3.next = 9; return apiFetch({ path: "".concat(entity.baseURL, "/").concat(key, "?context=edit") }); case 9: record = _context3.sent; _context3.next = 12; return receiveEntityRecords(kind, name, record); case 12: case "end": return _context3.stop(); } } }, resolvers_marked3); } /** * Requests the entity's records from the REST API. * * @param {string} kind Entity kind. * @param {string} name Entity name. * @param {Object?} query Query Object. */ function resolvers_getEntityRecords(kind, name) { var query, entities, entity, path, records, _args4 = arguments; return external_this_regeneratorRuntime_default.a.wrap(function getEntityRecords$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: query = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : {}; _context4.next = 3; return getKindEntities(kind); case 3: entities = _context4.sent; entity = Object(external_this_lodash_["find"])(entities, { kind: kind, name: name }); if (entity) { _context4.next = 7; break; } return _context4.abrupt("return"); case 7: path = Object(external_this_wp_url_["addQueryArgs"])(entity.baseURL, resolvers_objectSpread({}, query, { context: 'edit' })); _context4.next = 10; return apiFetch({ path: path }); case 10: records = _context4.sent; _context4.next = 13; return receiveEntityRecords(kind, name, Object.values(records), query); case 13: case "end": return _context4.stop(); } } }, resolvers_marked4); } resolvers_getEntityRecords.shouldInvalidate = function (action, kind, name) { return action.type === 'RECEIVE_ITEMS' && action.invalidateCache && kind === action.kind && name === action.name; }; /** * Requests theme supports data from the index. */ function resolvers_getThemeSupports() { var activeThemes; return external_this_regeneratorRuntime_default.a.wrap(function getThemeSupports$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: _context5.next = 2; return apiFetch({ path: '/wp/v2/themes?status=active' }); case 2: activeThemes = _context5.sent; _context5.next = 5; return receiveThemeSupports(activeThemes[0].theme_supports); case 5: case "end": return _context5.stop(); } } }, resolvers_marked5); } /** * Requests a preview from the from the Embed API. * * @param {string} url URL to get the preview for. */ function resolvers_getEmbedPreview(url) { var embedProxyResponse; return external_this_regeneratorRuntime_default.a.wrap(function getEmbedPreview$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: _context6.prev = 0; _context6.next = 3; return apiFetch({ path: Object(external_this_wp_url_["addQueryArgs"])('/oembed/1.0/proxy', { url: url }) }); case 3: embedProxyResponse = _context6.sent; _context6.next = 6; return receiveEmbedPreview(url, embedProxyResponse); case 6: _context6.next = 12; break; case 8: _context6.prev = 8; _context6.t0 = _context6["catch"](0); _context6.next = 12; return receiveEmbedPreview(url, false); case 12: case "end": return _context6.stop(); } } }, _marked6, null, [[0, 8]]); } /** * Requests Upload Permissions from the REST API. * * @deprecated since 5.0. Callers should use the more generic `canUser()` selector instead of * `hasUploadPermissions()`, e.g. `canUser( 'create', 'media' )`. */ function resolvers_hasUploadPermissions() { return external_this_regeneratorRuntime_default.a.wrap(function hasUploadPermissions$(_context7) { while (1) { switch (_context7.prev = _context7.next) { case 0: external_this_wp_deprecated_default()("select( 'core' ).hasUploadPermissions()", { alternative: "select( 'core' ).canUser( 'create', 'media' )" }); return _context7.delegateYield(resolvers_canUser('create', 'media'), "t0", 2); case 2: case "end": return _context7.stop(); } } }, _marked7); } /** * Checks whether the current user can perform the given action on the given * REST resource. * * @param {string} action Action to check. One of: 'create', 'read', 'update', * 'delete'. * @param {string} resource REST resource to check, e.g. 'media' or 'posts'. * @param {?string} id ID of the rest resource to check. */ function resolvers_canUser(action, resource, id) { var methods, method, path, response, allowHeader, key, isAllowed; return external_this_regeneratorRuntime_default.a.wrap(function canUser$(_context8) { while (1) { switch (_context8.prev = _context8.next) { case 0: methods = { create: 'POST', read: 'GET', update: 'PUT', delete: 'DELETE' }; method = methods[action]; if (method) { _context8.next = 4; break; } throw new Error("'".concat(action, "' is not a valid action.")); case 4: path = id ? "/wp/v2/".concat(resource, "/").concat(id) : "/wp/v2/".concat(resource); _context8.prev = 5; _context8.next = 8; return apiFetch({ path: path, // Ideally this would always be an OPTIONS request, but unfortunately there's // a bug in the REST API which causes the Allow header to not be sent on // OPTIONS requests to /posts/:id routes. // https://core.trac.wordpress.org/ticket/45753 method: id ? 'GET' : 'OPTIONS', parse: false }); case 8: response = _context8.sent; _context8.next = 14; break; case 11: _context8.prev = 11; _context8.t0 = _context8["catch"](5); return _context8.abrupt("return"); case 14: if (Object(external_this_lodash_["hasIn"])(response, ['headers', 'get'])) { // If the request is fetched using the fetch api, the header can be // retrieved using the 'get' method. allowHeader = response.headers.get('allow'); } else { // If the request was preloaded server-side and is returned by the // preloading middleware, the header will be a simple property. allowHeader = Object(external_this_lodash_["get"])(response, ['headers', 'Allow'], ''); } key = Object(external_this_lodash_["compact"])([action, resource, id]).join('/'); isAllowed = Object(external_this_lodash_["includes"])(allowHeader, method); _context8.next = 19; return receiveUserPermission(key, isAllowed); case 19: case "end": return _context8.stop(); } } }, _marked8, null, [[5, 11]]); } /** * Request autosave data from the REST API. * * @param {string} postType The type of the parent post. * @param {number} postId The id of the parent post. */ function resolvers_getAutosaves(postType, postId) { var _ref, restBase, autosaves; return external_this_regeneratorRuntime_default.a.wrap(function getAutosaves$(_context9) { while (1) { switch (_context9.prev = _context9.next) { case 0: _context9.next = 2; return resolveSelect('getPostType', postType); case 2: _ref = _context9.sent; restBase = _ref.rest_base; _context9.next = 6; return apiFetch({ path: "/wp/v2/".concat(restBase, "/").concat(postId, "/autosaves?context=edit") }); case 6: autosaves = _context9.sent; if (!(autosaves && autosaves.length)) { _context9.next = 10; break; } _context9.next = 10; return receiveAutosaves(postId, autosaves); case 10: case "end": return _context9.stop(); } } }, _marked9); } /** * Request autosave data from the REST API. * * This resolver exists to ensure the underlying autosaves are fetched via * `getAutosaves` when a call to the `getAutosave` selector is made. * * @param {string} postType The type of the parent post. * @param {number} postId The id of the parent post. */ function resolvers_getAutosave(postType, postId) { return external_this_regeneratorRuntime_default.a.wrap(function getAutosave$(_context10) { while (1) { switch (_context10.prev = _context10.next) { case 0: _context10.next = 2; return resolveSelect('getAutosaves', postType, postId); case 2: case "end": return _context10.stop(); } } }, _marked10); } // EXTERNAL MODULE: external {"this":["wp","element"]} var external_this_wp_element_ = __webpack_require__("GRId"); // EXTERNAL MODULE: external {"this":["wp","blocks"]} var external_this_wp_blocks_ = __webpack_require__("HSyU"); // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/entity-provider.js function entity_provider_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function entity_provider_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { entity_provider_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { entity_provider_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ var entity_provider_entities = entity_provider_objectSpread({}, defaultEntities.reduce(function (acc, entity) { if (!acc[entity.kind]) { acc[entity.kind] = {}; } acc[entity.kind][entity.name] = { context: Object(external_this_wp_element_["createContext"])() }; return acc; }, {}), {}, kinds.reduce(function (acc, kind) { acc[kind.name] = {}; return acc; }, {})); var entity_provider_getEntity = function getEntity(kind, type) { if (!entity_provider_entities[kind]) { throw new Error("Missing entity config for kind: ".concat(kind, ".")); } if (!entity_provider_entities[kind][type]) { entity_provider_entities[kind][type] = { context: Object(external_this_wp_element_["createContext"])() }; } return entity_provider_entities[kind][type]; }; /** * Context provider component for providing * an entity for a specific entity type. * * @param {Object} props The component's props. * @param {string} props.kind The entity kind. * @param {string} props.type The entity type. * @param {number} props.id The entity ID. * @param {*} props.children The children to wrap. * * @return {Object} The provided children, wrapped with * the entity's context provider. */ function EntityProvider(_ref) { var kind = _ref.kind, type = _ref.type, id = _ref.id, children = _ref.children; var Provider = entity_provider_getEntity(kind, type).context.Provider; return Object(external_this_wp_element_["createElement"])(Provider, { value: id }, children); } /** * Hook that returns the ID for the nearest * provided entity of the specified type. * * @param {string} kind The entity kind. * @param {string} type The entity type. */ function useEntityId(kind, type) { return Object(external_this_wp_element_["useContext"])(entity_provider_getEntity(kind, type).context); } /** * Hook that returns the value and a setter for the * specified property of the nearest provided * entity of the specified type. * * @param {string} kind The entity kind. * @param {string} type The entity type. * @param {string} prop The property name. * * @return {[*, Function]} A tuple where the first item is the * property value and the second is the * setter. */ function useEntityProp(kind, type, prop) { var id = useEntityId(kind, type); var value = Object(external_this_wp_data_["useSelect"])(function (select) { var _select = select('core'), getEntityRecord = _select.getEntityRecord, getEditedEntityRecord = _select.getEditedEntityRecord; getEntityRecord(kind, type, id); // Trigger resolver. var entity = getEditedEntityRecord(kind, type, id); return entity && entity[prop]; }, [kind, type, id, prop]); var _useDispatch = Object(external_this_wp_data_["useDispatch"])('core'), editEntityRecord = _useDispatch.editEntityRecord; var setValue = Object(external_this_wp_element_["useCallback"])(function (newValue) { editEntityRecord(kind, type, id, Object(defineProperty["a" /* default */])({}, prop, newValue)); }, [kind, type, id, prop]); return [value, setValue]; } /** * Hook that returns block content getters and setters for * the nearest provided entity of the specified type. * * The return value has the shape `[ blocks, onInput, onChange ]`. * `onInput` is for block changes that don't create undo levels * or dirty the post, non-persistent changes, and `onChange` is for * peristent changes. They map directly to the props of a * `BlockEditorProvider` and are intended to be used with it, * or similar components or hooks. * * @param {string} kind The entity kind. * @param {string} type The entity type. * @param {Object} options * @param {Object} [options.initialEdits] Initial edits object for the entity record. * @param {string} [options.blocksProp='blocks'] The name of the entity prop that holds the blocks array. * @param {string} [options.contentProp='content'] The name of the entity prop that holds the serialized blocks. * * @return {[WPBlock[], Function, Function]} The block array and setters. */ function useEntityBlockEditor(kind, type) { var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}, initialEdits = _ref2.initialEdits, _ref2$blocksProp = _ref2.blocksProp, blocksProp = _ref2$blocksProp === void 0 ? 'blocks' : _ref2$blocksProp, _ref2$contentProp = _ref2.contentProp, contentProp = _ref2$contentProp === void 0 ? 'content' : _ref2$contentProp; var _useEntityProp = useEntityProp(kind, type, contentProp), _useEntityProp2 = Object(slicedToArray["a" /* default */])(_useEntityProp, 2), content = _useEntityProp2[0], setContent = _useEntityProp2[1]; var _useDispatch2 = Object(external_this_wp_data_["useDispatch"])('core'), editEntityRecord = _useDispatch2.editEntityRecord; var id = useEntityId(kind, type); var initialBlocks = Object(external_this_wp_element_["useMemo"])(function () { if (initialEdits) { editEntityRecord(kind, type, id, initialEdits, { undoIgnore: true }); } // Guard against other instances that might have // set content to a function already. if (typeof content !== 'function') { var parsedContent = Object(external_this_wp_blocks_["parse"])(content); return parsedContent.length ? parsedContent : []; } }, [id]); // Reset when the provided entity record changes. var _useEntityProp3 = useEntityProp(kind, type, blocksProp), _useEntityProp4 = Object(slicedToArray["a" /* default */])(_useEntityProp3, 2), _useEntityProp4$ = _useEntityProp4[0], blocks = _useEntityProp4$ === void 0 ? initialBlocks : _useEntityProp4$, onInput = _useEntityProp4[1]; var onChange = Object(external_this_wp_element_["useCallback"])(function (nextBlocks) { onInput(nextBlocks); // Use a function edit to avoid serializing often. setContent(function (_ref3) { var blocksToSerialize = _ref3.blocks; return Object(external_this_wp_blocks_["serialize"])(blocksToSerialize); }); }, [onInput, setContent]); return [blocks, onInput, onChange]; } // CONCATENATED MODULE: ./node_modules/@wordpress/core-data/build-module/index.js function build_module_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } function build_module_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { build_module_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { build_module_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } /** * WordPress dependencies */ /** * Internal dependencies */ // The entity selectors/resolvers and actions are shortcuts to their generic equivalents // (getEntityRecord, getEntityRecords, updateEntityRecord, updateEntityRecordss) // Instead of getEntityRecord, the consumer could use more user-frieldly named selector: getPostType, getTaxonomy... // The "kind" and the "name" of the entity are combined to generate these shortcuts. var entitySelectors = defaultEntities.reduce(function (result, entity) { var kind = entity.kind, name = entity.name; result[entities_getMethodName(kind, name)] = function (state, key) { return getEntityRecord(state, kind, name, key); }; result[entities_getMethodName(kind, name, 'get', true)] = function (state) { for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { args[_key - 1] = arguments[_key]; } return getEntityRecords.apply(build_module_selectors_namespaceObject, [state, kind, name].concat(args)); }; return result; }, {}); var entityResolvers = defaultEntities.reduce(function (result, entity) { var kind = entity.kind, name = entity.name; result[entities_getMethodName(kind, name)] = function (key) { return resolvers_getEntityRecord(kind, name, key); }; var pluralMethodName = entities_getMethodName(kind, name, 'get', true); result[pluralMethodName] = function () { for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } return resolvers_getEntityRecords.apply(resolvers_namespaceObject, [kind, name].concat(args)); }; result[pluralMethodName].shouldInvalidate = function (action) { var _resolvers$getEntityR; for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) { args[_key3 - 1] = arguments[_key3]; } return (_resolvers$getEntityR = resolvers_getEntityRecords).shouldInvalidate.apply(_resolvers$getEntityR, [action, kind, name].concat(args)); }; return result; }, {}); var entityActions = defaultEntities.reduce(function (result, entity) { var kind = entity.kind, name = entity.name; result[entities_getMethodName(kind, name, 'save')] = function (key) { return saveEntityRecord(kind, name, key); }; return result; }, {}); Object(external_this_wp_data_["registerStore"])(REDUCER_KEY, { reducer: build_module_reducer, controls: build_module_controls, actions: build_module_objectSpread({}, build_module_actions_namespaceObject, {}, entityActions), selectors: build_module_objectSpread({}, build_module_selectors_namespaceObject, {}, entitySelectors), resolvers: build_module_objectSpread({}, resolvers_namespaceObject, {}, entityResolvers) }); /***/ }), /***/ "dvlR": /***/ (function(module, exports) { (function() { module.exports = this["regeneratorRuntime"]; }()); /***/ }), /***/ "pPDe": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; var LEAF_KEY, hasWeakMap; /** * Arbitrary value used as key for referencing cache object in WeakMap tree. * * @type {Object} */ LEAF_KEY = {}; /** * Whether environment supports WeakMap. * * @type {boolean} */ hasWeakMap = typeof WeakMap !== 'undefined'; /** * Returns the first argument as the sole entry in an array. * * @param {*} value Value to return. * * @return {Array} Value returned as entry in array. */ function arrayOf( value ) { return [ value ]; } /** * Returns true if the value passed is object-like, or false otherwise. A value * is object-like if it can support property assignment, e.g. object or array. * * @param {*} value Value to test. * * @return {boolean} Whether value is object-like. */ function isObjectLike( value ) { return !! value && 'object' === typeof value; } /** * Creates and returns a new cache object. * * @return {Object} Cache object. */ function createCache() { var cache = { clear: function() { cache.head = null; }, }; return cache; } /** * Returns true if entries within the two arrays are strictly equal by * reference from a starting index. * * @param {Array} a First array. * @param {Array} b Second array. * @param {number} fromIndex Index from which to start comparison. * * @return {boolean} Whether arrays are shallowly equal. */ function isShallowEqual( a, b, fromIndex ) { var i; if ( a.length !== b.length ) { return false; } for ( i = fromIndex; i < a.length; i++ ) { if ( a[ i ] !== b[ i ] ) { return false; } } return true; } /** * Returns a memoized selector function. The getDependants function argument is * called before the memoized selector and is expected to return an immutable * reference or array of references on which the selector depends for computing * its own return value. The memoize cache is preserved only as long as those * dependant references remain the same. If getDependants returns a different * reference(s), the cache is cleared and the selector value regenerated. * * @param {Function} selector Selector function. * @param {Function} getDependants Dependant getter returning an immutable * reference or array of reference used in * cache bust consideration. * * @return {Function} Memoized selector. */ /* harmony default export */ __webpack_exports__["a"] = (function( selector, getDependants ) { var rootCache, getCache; // Use object source as dependant if getter not provided if ( ! getDependants ) { getDependants = arrayOf; } /** * Returns the root cache. If WeakMap is supported, this is assigned to the * root WeakMap cache set, otherwise it is a shared instance of the default * cache object. * * @return {(WeakMap|Object)} Root cache object. */ function getRootCache() { return rootCache; } /** * Returns the cache for a given dependants array. When possible, a WeakMap * will be used to create a unique cache for each set of dependants. This * is feasible due to the nature of WeakMap in allowing garbage collection * to occur on entries where the key object is no longer referenced. Since * WeakMap requires the key to be an object, this is only possible when the * dependant is object-like. The root cache is created as a hierarchy where * each top-level key is the first entry in a dependants set, the value a * WeakMap where each key is the next dependant, and so on. This continues * so long as the dependants are object-like. If no dependants are object- * like, then the cache is shared across all invocations. * * @see isObjectLike * * @param {Array} dependants Selector dependants. * * @return {Object} Cache object. */ function getWeakMapCache( dependants ) { var caches = rootCache, isUniqueByDependants = true, i, dependant, map, cache; for ( i = 0; i < dependants.length; i++ ) { dependant = dependants[ i ]; // Can only compose WeakMap from object-like key. if ( ! isObjectLike( dependant ) ) { isUniqueByDependants = false; break; } // Does current segment of cache already have a WeakMap? if ( caches.has( dependant ) ) { // Traverse into nested WeakMap. caches = caches.get( dependant ); } else { // Create, set, and traverse into a new one. map = new WeakMap(); caches.set( dependant, map ); caches = map; } } // We use an arbitrary (but consistent) object as key for the last item // in the WeakMap to serve as our running cache. if ( ! caches.has( LEAF_KEY ) ) { cache = createCache(); cache.isUniqueByDependants = isUniqueByDependants; caches.set( LEAF_KEY, cache ); } return caches.get( LEAF_KEY ); } // Assign cache handler by availability of WeakMap getCache = hasWeakMap ? getWeakMapCache : getRootCache; /** * Resets root memoization cache. */ function clear() { rootCache = hasWeakMap ? new WeakMap() : createCache(); } // eslint-disable-next-line jsdoc/check-param-names /** * The augmented selector call, considering first whether dependants have * changed before passing it to underlying memoize function. * * @param {Object} source Source object for derivation. * @param {...*} extraArgs Additional arguments to pass to selector. * * @return {*} Selector result. */ function callSelector( /* source, ...extraArgs */ ) { var len = arguments.length, cache, node, i, args, dependants; // Create copy of arguments (avoid leaking deoptimization). args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } dependants = getDependants.apply( null, args ); cache = getCache( dependants ); // If not guaranteed uniqueness by dependants (primitive type or lack // of WeakMap support), shallow compare against last dependants and, if // references have changed, destroy cache to recalculate result. if ( ! cache.isUniqueByDependants ) { if ( cache.lastDependants && ! isShallowEqual( dependants, cache.lastDependants, 0 ) ) { cache.clear(); } cache.lastDependants = dependants; } node = cache.head; while ( node ) { // Check whether node arguments match arguments if ( ! isShallowEqual( node.args, args, 1 ) ) { node = node.next; continue; } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== cache.head ) { // Adjust siblings to point to each other. node.prev.next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = cache.head; node.prev = null; cache.head.prev = node; cache.head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: node = { // Generate the result from original function val: selector.apply( null, args ), }; // Avoid including the source object in the cache. args[ 0 ] = null; node.args = args; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( cache.head ) { cache.head.prev = node; node.next = cache.head; } cache.head = node; return node.val; } callSelector.getDependants = getDependants; callSelector.clear = clear; clear(); return callSelector; }); /***/ }), /***/ "rePB": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; }); function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /***/ }), /***/ "rl8x": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["isShallowEqual"]; }()); /***/ }), /***/ "ywyh": /***/ (function(module, exports) { (function() { module.exports = this["wp"]["apiFetch"]; }()); /***/ }) /******/ });PKv\&9dist/is-shallow-equal.jsnuW+Athis["wp"] = this["wp"] || {}; this["wp"]["isShallowEqual"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "mNmh"); /******/ }) /************************************************************************/ /******/ ({ /***/ "1O94": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Returns true if the two arrays are shallow equal, or false otherwise. * * @param {any[]} a First array to compare. * @param {any[]} b Second array to compare. * * @return {boolean} Whether the two arrays are shallow equal. */ function isShallowEqualArrays( a, b ) { var i; if ( a === b ) { return true; } if ( a.length !== b.length ) { return false; } for ( i = 0; i < a.length; i++ ) { if ( a[ i ] !== b[ i ] ) { return false; } } return true; } module.exports = isShallowEqualArrays; /***/ }), /***/ "4UZf": /***/ (function(module, exports, __webpack_require__) { "use strict"; var keys = Object.keys; /** * Returns true if the two objects are shallow equal, or false otherwise. * * @param {import('.').ComparableObject} a First object to compare. * @param {import('.').ComparableObject} b Second object to compare. * * @return {boolean} Whether the two objects are shallow equal. */ function isShallowEqualObjects( a, b ) { var aKeys, bKeys, i, key, aValue; if ( a === b ) { return true; } aKeys = keys( a ); bKeys = keys( b ); if ( aKeys.length !== bKeys.length ) { return false; } i = 0; while ( i < aKeys.length ) { key = aKeys[ i ]; aValue = a[ key ]; if ( // In iterating only the keys of the first object after verifying // equal lengths, account for the case that an explicit `undefined` // value in the first is implicitly undefined in the second. // // Example: isShallowEqualObjects( { a: undefined }, { b: 5 } ) ( aValue === undefined && ! b.hasOwnProperty( key ) ) || aValue !== b[ key ] ) { return false; } i++; } return true; } module.exports = isShallowEqualObjects; /***/ }), /***/ "mNmh": /***/ (function(module, exports, __webpack_require__) { "use strict"; /** * Internal dependencies; */ var isShallowEqualObjects = __webpack_require__( "4UZf" ); var isShallowEqualArrays = __webpack_require__( "1O94" ); var isArray = Array.isArray; /** * @typedef {{[key: string]: any}} ComparableObject */ /** * Returns true if the two arrays or objects are shallow equal, or false * otherwise. * * @param {any[]|ComparableObject} a First object or array to compare. * @param {any[]|ComparableObject} b Second object or array to compare. * * @return {boolean} Whether the two values are shallow equal. */ function isShallowEqual( a, b ) { if ( a && b ) { if ( a.constructor === Object && b.constructor === Object ) { return isShallowEqualObjects( a, b ); } else if ( isArray( a ) && isArray( b ) ) { return isShallowEqualArrays( a, b ); } } return a === b; } module.exports = isShallowEqual; module.exports.isShallowEqualObjects = isShallowEqualObjects; module.exports.isShallowEqualArrays = isShallowEqualArrays; /***/ }) /******/ });PKv\tdist/core-data.min.jsnuW+A/*! This file is auto-generated */ this.wp=this.wp||{},this.wp.coreData=function(e){var t={};function r(n){if(t[n])return t[n].exports;var c=t[n]={i:n,l:!1,exports:{}};return e[n].call(c.exports,c,c.exports,r),c.l=!0,c.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var c in e)r.d(n,c,function(t){return e[t]}.bind(null,c));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s="dsJ0")}({"1ZqX":function(e,t){!function(){e.exports=this.wp.data}()},"25BE":function(e,t,r){"use strict";function n(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}r.d(t,"a",(function(){return n}))},BsWD:function(e,t,r){"use strict";r.d(t,"a",(function(){return c}));var n=r("a3WO");function c(e,t){if(e){if("string"==typeof e)return Object(n.a)(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Object(n.a)(e,t):void 0}}},DSFK:function(e,t,r){"use strict";function n(e){if(Array.isArray(e))return e}r.d(t,"a",(function(){return n}))},FtRg:function(e,t,r){"use strict";function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:this;this._map.forEach((function(c,o){null!==o&&"object"===n(o)&&(c=c[1]),e.call(r,c,o,t)}))}},{key:"clear",value:function(){this._map=new Map,this._arrayTreeMap=new Map,this._objectTreeMap=new Map}},{key:"size",get:function(){return this._map.size}}])&&c(t.prototype,r),a&&c(t,a),e}();e.exports=a},GRId:function(e,t){!function(){e.exports=this.wp.element}()},HSyU:function(e,t){!function(){e.exports=this.wp.blocks}()},KQm4:function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r("a3WO");var c=r("25BE"),o=r("BsWD");function a(e){return function(e){if(Array.isArray(e))return Object(n.a)(e)}(e)||Object(c.a)(e)||Object(o.a)(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}},Mmq9:function(e,t){!function(){e.exports=this.wp.url}()},NMb1:function(e,t){!function(){e.exports=this.wp.deprecated}()},ODXe:function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r("DSFK");var c=r("BsWD"),o=r("PYwp");function a(e,t){return Object(n.a)(e)||function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,c=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(n=(a=u.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){c=!0,o=e}finally{try{n||null==u.return||u.return()}finally{if(c)throw o}}return r}}(e,t)||Object(c.a)(e,t)||Object(o.a)()}},PYwp:function(e,t,r){"use strict";function n(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}r.d(t,"a",(function(){return n}))},YLtl:function(e,t){!function(){e.exports=this.lodash}()},a3WO:function(e,t,r){"use strict";function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0,c=n[e];if(void 0===c)return r;var o=t(r[c],n);return o===r[c]?r:y({},r,Object(a.a)({},c,o))}}},g=function(e){return function(t){return function(r,n){return t(r,e(n))}}};var h=function(e){var t=new WeakMap;return function(r){var n;return t.has(r)?n=t.get(r):(n=e(r),Object(f.isObjectLike)(r)&&t.set(r,n)),n}};function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function j(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};return j({},m(e),{query:t})}var x=r("pPDe"),R=r("FtRg"),k=r.n(R),P=r("Mmq9");var _=h((function(e){for(var t={stableKey:"",page:1,perPage:10},r=Object.keys(e).sort(),n=0;n1&&void 0!==arguments[1]?arguments[1]:{},r=S.get(e);if(r){var n=r.get(t);if(void 0!==n)return n}else r=new k.a,S.set(e,r);var c=I(e,t);return r.set(t,c),c})),D=r("dvlR"),A=r.n(D),U=r("ywyh"),C=r.n(U);function M(e){return{type:"API_FETCH",request:e}}function N(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n1?t-1:0),n=1;n4&&void 0!==arguments[4]&&arguments[4];return"postType"===e&&(r=Object(f.castArray)(r).map((function(e){return"auto-draft"===e.status?Q({},e,{title:""}):e}))),Q({},n?w(r,n):m(r),{kind:e,name:t,invalidateCache:c})}function J(e){return{type:"RECEIVE_THEME_SUPPORTS",themeSupports:e}}function Z(e,t){return{type:"RECEIVE_EMBED_PREVIEW",url:e,preview:t}}function $(e,t,r,n){var c,o,a,u,i,s,d,p,l,b=arguments;return A.a.wrap((function(v){for(;;)switch(v.prev=v.next){case 0:return c=b.length>4&&void 0!==b[4]?b[4]:{},v.next=3,N("getEntity",e,t);case 3:if(o=v.sent){v.next=6;break}throw new Error("The entity being edited (".concat(e,", ").concat(t,") does not have a loaded config."));case 6:return a=o.transientEdits,u=void 0===a?{}:a,i=o.mergedEdits,s=void 0===i?{}:i,v.next=9,N("getRawEntityRecord",e,t,r);case 9:return d=v.sent,v.next=12,N("getEditedEntityRecord",e,t,r);case 12:return p=v.sent,l={kind:e,name:t,recordId:r,edits:Object.keys(n).reduce((function(e,t){var r=d[t],c=p[t],o=s[t]?Q({},c,{},n[t]):n[t];return e[t]=Object(f.isEqual)(r,o)?void 0:o,e}),{}),transientEdits:u},v.abrupt("return",Q({type:"EDIT_ENTITY_RECORD"},l,{meta:{undo:!c.undoIgnore&&Q({},l,{edits:Object.keys(n).reduce((function(e,t){return e[t]=p[t],e}),{})})}}));case 15:case"end":return v.stop()}}),L)}function ee(){var e;return A.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,N("getUndoEdit");case 2:if(e=t.sent){t.next=5;break}return t.abrupt("return");case 5:return t.next=7,Q({type:"EDIT_ENTITY_RECORD"},e,{meta:{isUndo:!0}});case 7:case"end":return t.stop()}}),B)}function te(){var e;return A.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,N("getRedoEdit");case 2:if(e=t.sent){t.next=5;break}return t.abrupt("return");case 5:return t.next=7,Q({type:"EDIT_ENTITY_RECORD"},e,{meta:{isRedo:!0}});case 7:case"end":return t.stop()}}),Y)}function re(){return{type:"CREATE_UNDO_LEVEL"}}function ne(e,t,r){var n,c,o,u,s,d,p,l,b,v,y,O,g,h,E,j,m,w,x,R,k,P,_,S,I,T=arguments;return A.a.wrap((function(D){for(;;)switch(D.prev=D.next){case 0:return n=T.length>3&&void 0!==T[3]?T[3]:{isAutosave:!1},c=n.isAutosave,o=void 0!==c&&c,D.next=3,Oe(e);case 3:if(u=D.sent,s=Object(f.find)(u,{kind:e,name:t})){D.next=7;break}return D.abrupt("return");case 7:d=s.key||de,p=r[d],l=0,b=Object.entries(r);case 10:if(!(l2&&void 0!==arguments[2]?arguments[2]:"get",n=arguments.length>3&&void 0!==arguments[3]&&arguments[3],c=Object(f.find)(pe,{kind:e,name:t}),o="root"===e?"":Object(f.upperFirst)(Object(f.camelCase)(e)),a=Object(f.upperFirst)(Object(f.camelCase)(t))+(n?"s":""),u=n&&c.plural?Object(f.upperFirst)(Object(f.camelCase)(c.plural)):a;return"".concat(r).concat(o).concat(u)};function Oe(e){var t,r;return A.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,N("getEntitiesByKind",e);case 2:if(!(t=n.sent)||0===t.length){n.next=5;break}return n.abrupt("return",t);case 5:if(r=Object(f.find)(le,{name:e})){n.next=8;break}return n.abrupt("return",[]);case 8:return n.next=10,r.loadEntities();case 10:return t=n.sent,n.next=13,X(t);case 13:return n.abrupt("return",t);case 14:case"end":return n.stop()}}),fe)}function ge(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function he(e){for(var t=1;t=c&&u0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1?arguments[1]:void 0,r=t.type,n=t.page,c=t.perPage,o=t.key,a=void 0===o?de:o;return"RECEIVE_ITEMS"!==r?e:Ee(e||[],Object(f.map)(t.items,a),n,c)})),me=Object(u.combineReducers)({items:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_ITEMS":var r=t.key||de;return he({},e,{},t.items.reduce((function(t,n){var c=n[r];return t[c]=l(e[c],n),t}),{}))}return e},queries:je});function we(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xe(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_ITEMS":var r=xe({},e),n=!0,c=!1,o=void 0;try{for(var u,i=function(){var e=u.value,n=e[t.key],c=r[n];if(!c)return"continue";var o=Object.keys(c).reduce((function(t,r){return Object(f.isEqual)(c[r],Object(f.get)(e[r],"raw",e[r]))||(t[r]=c[r]),t}),{});Object.keys(o).length?r[n]=o:delete r[n]},s=t.items[Symbol.iterator]();!(n=(u=s.next()).done);n=!0)i()}catch(e){c=!0,o=e}finally{try{n||null==s.return||s.return()}finally{if(c)throw o}}return r;case"EDIT_ENTITY_RECORD":var d=xe({},e[t.recordId],{},t.edits);return Object.keys(d).forEach((function(e){void 0===d[e]&&delete d[e]})),xe({},e,Object(a.a)({},t.recordId,d))}return e},saving:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SAVE_ENTITY_RECORD_START":case"SAVE_ENTITY_RECORD_FINISH":return xe({},e,Object(a.a)({},t.recordId,{pending:"SAVE_ENTITY_RECORD_START"===t.type,error:t.error,isAutosave:t.isAutosave}))}return e}}))}function ke(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:pe,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_ENTITIES":return[].concat(Object(s.a)(e),Object(s.a)(t.entities))}return e}var Pe,_e=[];_e.offset=0;var Se=Object(u.combineReducers)({terms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_TERMS":return xe({},e,Object(a.a)({},t.taxonomy,t.terms))}return e},users:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{byId:{},queries:{}},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_USER_QUERY":return{byId:xe({},e.byId,{},Object(f.keyBy)(t.users,"id")),queries:xe({},e.queries,Object(a.a)({},t.queryID,Object(f.map)(t.users,(function(e){return e.id}))))}}return e},currentUser:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_CURRENT_USER":return t.currentUser}return e},taxonomies:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_TAXONOMIES":return t.taxonomies}return e},themeSupports:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_THEME_SUPPORTS":return xe({},e,{},t.themeSupports)}return e},entities:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=ke(e.config,t),n=e.reducer;if(!n||r!==e.config){var c=Object(f.groupBy)(r,"kind");n=Object(u.combineReducers)(Object.entries(c).reduce((function(e,t){var r=Object(i.a)(t,2),n=r[0],c=r[1],o=Object(u.combineReducers)(c.reduce((function(e,t){return xe({},e,Object(a.a)({},t.name,Re(t)))}),{}));return e[n]=o,e}),{}))}var o=n(e.data,t);return o===e.data&&r===e.config&&n===e.reducer?e:{reducer:n,data:o,config:r}},undo:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_e,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"EDIT_ENTITY_RECORD":case"CREATE_UNDO_LEVEL":var r,n="CREATE_UNDO_LEVEL"===t.type,c=!n&&(t.meta.isUndo||t.meta.isRedo);if(n?t=Pe:c||(Pe=Object.keys(t.edits).some((function(e){return!t.transientEdits[e]}))?t:xe({},t,{edits:xe({},Pe&&Pe.edits,{},t.edits)})),c){if((r=Object(s.a)(e)).offset=e.offset+(t.meta.isUndo?-1:1),!e.flattenedUndo)return r;n=!0,t=Pe}if(!t.meta.undo)return e;if(!n&&!Object.keys(t.edits).some((function(e){return!t.transientEdits[e]})))return(r=Object(s.a)(e)).flattenedUndo=xe({},e.flattenedUndo,{},t.edits),r.offset=e.offset,r;(r=r||e.slice(0,e.offset||void 0)).offset=r.offset||0,r.pop(),n||r.push({kind:t.meta.undo.kind,name:t.meta.undo.name,recordId:t.meta.undo.recordId,edits:xe({},e.flattenedUndo,{},t.meta.undo.edits)});var o=Object.values(t.meta.undo.edits).filter((function(e){return"function"!=typeof e})),a=Object.values(t.edits).filter((function(e){return"function"!=typeof e}));return p()(o,a)||r.push({kind:t.kind,name:t.name,recordId:t.recordId,edits:n?xe({},e.flattenedUndo,{},t.edits):t.edits}),r}return e},embedPreviews:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_EMBED_PREVIEW":var r=t.url,n=t.preview;return xe({},e,Object(a.a)({},r,n))}return e},userPermissions:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_USER_PERMISSION":return xe({},e,Object(a.a)({},t.key,t.isAllowed))}return e},autosaves:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"RECEIVE_AUTOSAVES":var r=t.postId,n=t.autosaves;return xe({},e,Object(a.a)({},r,n))}return e}}),Ie=r("NMb1"),Te=r.n(Ie);function De(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Ae=Object(u.createRegistrySelector)((function(e){return function(t,r){return e("core/data").isResolving("core","getEmbedPreview",[r])}}));function Ue(e){return Me(e,"authors")}function Ce(e){return e.currentUser}var Me=Object(x.a)((function(e,t){var r=e.users.queries[t];return Object(f.map)(r,(function(t){return e.users.byId[t]}))}),(function(e,t){return[e.users.queries[t],e.users.byId]}));function Ne(e,t){return Object(f.filter)(e.entities.config,{kind:t})}function Ve(e,t,r){return Object(f.find)(e.entities.config,{kind:t,name:r})}function qe(e,t,r,n){return Object(f.get)(e.entities.data,[t,r,"queriedData","items",n])}function Le(e,t,r,n){return qe(e,t,r,n)}var Be=Object(x.a)((function(e,t,r,n){var c=qe(e,t,r,n);return c&&Object.keys(c).reduce((function(e,t){return e[t]=Object(f.get)(c[t],"raw",c[t]),e}),{})}),(function(e){return[e.entities.data]}));function Ye(e,t,r,n){var c=Object(f.get)(e.entities.data,[t,r,"queriedData"]);return c?T(c,n):[]}var Fe=Object(x.a)((function(e){var t=e.entities.data;return Object.keys(t).reduce((function(r,n){return Object.keys(t[n]).forEach((function(c){var o=Object.keys(t[n][c].edits).filter((function(t){return Qe(e,n,c,t)}));o.length&&(r[n]||(r[n]={}),r[n][c]||(r[n][c]={}),o.forEach((function(t){return r[n][c][t]={rawRecord:Be(e,n,c,t),edits:Ke(e,n,c,t)}})))})),r}),{})}),(function(e){return[e.entities.data]}));function We(e,t,r,n){return Object(f.get)(e.entities.data,[t,r,"edits",n])}var Ke=Object(x.a)((function(e,t,r,n){var c=(Ve(e,t,r)||{}).transientEdits,o=We(e,t,r,n)||{};return c?Object.keys(o).reduce((function(e,t){return c[t]||(e[t]=o[t]),e}),{}):o}),(function(e){return[e.entities.config,e.entities.data]}));function Qe(e,t,r,n){return Xe(e,t,r,n)||Object.keys(Ke(e,t,r,n)).length>0}var He=Object(x.a)((function(e,t,r,n){return function(e){for(var t=1;t'+t+"";return!!r&&r.html===n}function ot(e){return Te()("select( 'core' ).hasUploadPermissions()",{alternative:"select( 'core' ).canUser( 'create', 'media' )"}),Object(f.defaultTo)(at(e,"create","media"),!0)}function at(e,t,r,n){var c=Object(f.compact)([t,r,n]).join("/");return Object(f.get)(e,["userPermissions",c])}function ut(e,t,r){return e.autosaves[r]}function it(e,t,r,n){if(void 0!==n){var c=e.autosaves[r];return Object(f.find)(c,{author:n})}}var st=Object(u.createRegistrySelector)((function(e){return function(t,r,n){return e("core").hasFinishedResolution("getAutosaves",[r,n])}})),ft=Object(x.a)((function(){return[]}),(function(e){return[e.undo.length,e.undo.offset]}));function dt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function pt(e){for(var t=1;t2&&void 0!==a[2]?a[2]:"",u.next=3,Oe(e);case 3:if(n=u.sent,c=Object(f.find)(n,{kind:e,name:t})){u.next=7;break}return u.abrupt("return");case 7:return u.next=9,M({path:"".concat(c.baseURL,"/").concat(r,"?context=edit")});case 9:return o=u.sent,u.next=12,z(e,t,o);case 12:case"end":return u.stop()}}),vt)}function kt(e,t){var r,n,c,o,a,u=arguments;return A.a.wrap((function(i){for(;;)switch(i.prev=i.next){case 0:return r=u.length>2&&void 0!==u[2]?u[2]:{},i.next=3,Oe(e);case 3:if(n=i.sent,c=Object(f.find)(n,{kind:e,name:t})){i.next=7;break}return i.abrupt("return");case 7:return o=Object(P.addQueryArgs)(c.baseURL,pt({},r,{context:"edit"})),i.next=10,M({path:o});case 10:return a=i.sent,i.next=13,z(e,t,Object.values(a),r);case 13:case"end":return i.stop()}}),yt)}function Pt(){var e;return A.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,M({path:"/wp/v2/themes?status=active"});case 2:return e=t.sent,t.next=5,J(e[0].theme_supports);case 5:case"end":return t.stop()}}),Ot)}function _t(e){var t;return A.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,M({path:Object(P.addQueryArgs)("/oembed/1.0/proxy",{url:e})});case 3:return t=r.sent,r.next=6,Z(e,t);case 6:r.next=12;break;case 8:return r.prev=8,r.t0=r.catch(0),r.next=12,Z(e,!1);case 12:case"end":return r.stop()}}),gt,null,[[0,8]])}function St(){return A.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Te()("select( 'core' ).hasUploadPermissions()",{alternative:"select( 'core' ).canUser( 'create', 'media' )"}),e.delegateYield(It("create","media"),"t0",2);case 2:case"end":return e.stop()}}),ht)}function It(e,t,r){var n,c,o,a,u,i;return A.a.wrap((function(s){for(;;)switch(s.prev=s.next){case 0:if(n={create:"POST",read:"GET",update:"PUT",delete:"DELETE"}[e]){s.next=4;break}throw new Error("'".concat(e,"' is not a valid action."));case 4:return c=r?"/wp/v2/".concat(t,"/").concat(r):"/wp/v2/".concat(t),s.prev=5,s.next=8,M({path:c,method:r?"GET":"OPTIONS",parse:!1});case 8:o=s.sent,s.next=14;break;case 11:return s.prev=11,s.t0=s.catch(5),s.abrupt("return");case 14:return a=Object(f.hasIn)(o,["headers","get"])?o.headers.get("allow"):Object(f.get)(o,["headers","Allow"],""),u=Object(f.compact)([e,t,r]).join("/"),i=Object(f.includes)(a,n),s.next=19,ae(u,i);case 19:case"end":return s.stop()}}),Et,null,[[5,11]])}function Tt(e,t){var r,n,c;return A.a.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,V("getPostType",e);case 2:return r=o.sent,n=r.rest_base,o.next=6,M({path:"/wp/v2/".concat(n,"/").concat(t,"/autosaves?context=edit")});case 6:if(!(c=o.sent)||!c.length){o.next=10;break}return o.next=10,ue(t,c);case 10:case"end":return o.stop()}}),jt)}function Dt(e,t){return A.a.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,V("getAutosaves",e,t);case 2:case"end":return r.stop()}}),mt)}kt.shouldInvalidate=function(e,t,r){return"RECEIVE_ITEMS"===e.type&&e.invalidateCache&&t===e.kind&&r===e.name};var At=r("GRId"),Ut=r("HSyU");function Ct(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Mt=function(e){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:{},n=r.initialEdits,c=r.blocksProp,o=void 0===c?"blocks":c,a=r.contentProp,s=void 0===a?"content":a,f=Lt(e,t,s),d=Object(i.a)(f,2),p=d[0],l=d[1],b=Object(u.useDispatch)("core"),v=b.editEntityRecord,y=qt(e,t),O=Object(At.useMemo)((function(){if(n&&v(e,t,y,n,{undoIgnore:!0}),"function"!=typeof p){var r=Object(Ut.parse)(p);return r.length?r:[]}}),[y]),g=Lt(e,t,o),h=Object(i.a)(g,2),E=h[0],j=void 0===E?O:E,m=h[1],w=Object(At.useCallback)((function(e){m(e),l((function(e){var t=e.blocks;return Object(Ut.serialize)(t)}))}),[m,l]);return[j,m,w]}function Yt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ft(e){for(var t=1;t1?t-1:0),a=1;a1?c-1:0),a=1;a arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } /***/ }), /***/ "zbAn": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "autop", function() { return autop; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removep", function() { return removep; }); /* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ODXe"); /** * The regular expression for an HTML element. * * @type {string} */ var htmlSplitRegex = function () { /* eslint-disable no-multi-spaces */ var comments = '!' + // Start of comment, after the <. '(?:' + // Unroll the loop: Consume everything until --> is found. '-(?!->)' + // Dash not followed by end of comment. '[^\\-]*' + // Consume non-dashes. ')*' + // Loop possessively. '(?:-->)?'; // End of comment. If not found, match all input. var cdata = '!\\[CDATA\\[' + // Start of comment, after the <. '[^\\]]*' + // Consume non-]. '(?:' + // Unroll the loop: Consume everything until ]]> is found. '](?!]>)' + // One ] not followed by end of comment. '[^\\]]*' + // Consume non-]. ')*?' + // Loop possessively. '(?:]]>)?'; // End of comment. If not found, match all input. var escaped = '(?=' + // Is the element escaped? '!--' + '|' + '!\\[CDATA\\[' + ')' + '((?=!-)' + // If yes, which type? comments + '|' + cdata + ')'; var regex = '(' + // Capture the entire match. '<' + // Find start of element. '(' + // Conditional expression follows. escaped + // Find end of escaped element. '|' + // ... else ... '[^>]*>?' + // Find end of normal element. ')' + ')'; return new RegExp(regex); /* eslint-enable no-multi-spaces */ }(); /** * Separate HTML elements and comments from the text. * * @param {string} input The text which has to be formatted. * @return {Array} The formatted text. */ function htmlSplit(input) { var parts = []; var workingInput = input; var match; while (match = workingInput.match(htmlSplitRegex)) { parts.push(workingInput.slice(0, match.index)); parts.push(match[0]); workingInput = workingInput.slice(match.index + match[0].length); } if (workingInput.length) { parts.push(workingInput); } return parts; } /** * Replace characters or phrases within HTML elements only. * * @param {string} haystack The text which has to be formatted. * @param {Object} replacePairs In the form {from: 'to', ...}. * @return {string} The formatted text. */ function replaceInHtmlTags(haystack, replacePairs) { // Find all elements. var textArr = htmlSplit(haystack); var changed = false; // Extract all needles. var needles = Object.keys(replacePairs); // Loop through delimiters (elements) only. for (var i = 1; i < textArr.length; i += 2) { for (var j = 0; j < needles.length; j++) { var needle = needles[j]; if (-1 !== textArr[i].indexOf(needle)) { textArr[i] = textArr[i].replace(new RegExp(needle, 'g'), replacePairs[needle]); changed = true; // After one strtr() break out of the foreach loop and look at next element. break; } } } if (changed) { haystack = textArr.join(''); } return haystack; } /** * Replaces double line-breaks with paragraph elements. * * A group of regex replaces used to identify text formatted with newlines and * replace double line-breaks with HTML paragraph tags. The remaining line- * breaks after conversion become `
    ` tags, unless br is set to 'false'. * * @param {string} text The text which has to be formatted. * @param {boolean} br Optional. If set, will convert all remaining line- * breaks after paragraphing. Default true. * * @example *```js * import { autop } from '@wordpress/autop'; * autop( 'my text' ); // "

    my text

    " * ``` * * @return {string} Text which has been converted into paragraph tags. */ function autop(text) { var br = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; var preTags = []; if (text.trim() === '') { return ''; } // Just to make things a little easier, pad the end. text = text + '\n'; /* * Pre tags shouldn't be touched by autop. * Replace pre tags with placeholders and bring them back after autop. */ if (text.indexOf(''); var lastText = textParts.pop(); text = ''; for (var i = 0; i < textParts.length; i++) { var textPart = textParts[i]; var start = textPart.indexOf('
    '; preTags.push([name, textPart.substr(start) + '']); text += textPart.substr(0, start) + name; } text += lastText; } // Change multiple
    s into two line breaks, which will turn into paragraphs. text = text.replace(/\s*/g, '\n\n'); var allBlocks = '(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)'; // Add a double line break above block-level opening tags. text = text.replace(new RegExp('(<' + allBlocks + '[\\s/>])', 'g'), '\n\n$1'); // Add a double line break below block-level closing tags. text = text.replace(new RegExp('()', 'g'), '$1\n\n'); // Standardize newline characters to "\n". text = text.replace(/\r\n|\r/g, '\n'); // Find newlines in all elements and add placeholders. text = replaceInHtmlTags(text, { '\n': ' ' }); // Collapse line breaks before and after '); } /* * Collapse line breaks inside elements, before and elements * so they don't get autop'd. */ if (text.indexOf('') !== -1) { text = text.replace(/(]*>)\s*/g, '$1'); text = text.replace(/\s*<\/object>/g, ''); text = text.replace(/\s*(<\/?(?:param|embed)[^>]*>)\s*/g, '$1'); } /* * Collapse line breaks inside